Vollstaendig parametrisches CAD-Modell eines Hochleistungs-Handstaubsaugers, konstruiert mit build123d (Python). Alle Bauteile sind fuer die Fertigung im 3D-Druckverfahren (FDM/FFF) ausgelegt.
- 20+ parametrische Bauteile — vollstaendig in Python definiert, keine GUI noetig
- Stroemungsoptimiertes Laufrad — 14 Schaufeln (7 Haupt + 7 Splitter), berechnet aus Meridional-Stroemungsanalyse
- Zyklon-Staubabscheider — Spiralmantel mit linearem Radiusverlauf
- Schraubverbindungen — 3-gaengiges Trapezgewinde (parametrisch, mit Schrumpfkorrektur fuer 3D-Druck)
- Interaktive 3D-Viewer — WebGL-basiert (Three.js), direkt im Browser
- STEP + STL Export — jedes Skript erzeugt druckfertige Ausgabedateien
StaubsaugerCAD/
├── src/ # CAD-Quellcode (build123d)
│ ├── Laufrad.py
│ ├── Geblaesegehause.py
│ ├── staubbehaelter2.py
│ ├── laufrad_v3_data.json # Stroemungsdaten
│ └── ...
├── step/ # Generierte STL- und STEP-Dateien
│ ├── *.stl # 3D-Druck / Viewer
│ └── *.step # CAD-Austauschformat
├── viewer*.html # Interaktive 3D-Viewer (WebGL/Three.js)
├── requirements.txt
├── LICENSE
└── README.md
| Bauteil | Datei | Beschreibung |
|---|---|---|
| Mittelteil | src/main_body.py |
Zentrales Gehaeuse mit Motoraufnahme |
| Geblaesegehaeuse | src/Geblaesegehause.py |
Oberteil + Unterteil (Schneckengehaeuse) |
| Staubbehaelter V2 | src/staubbehaelter2.py |
Zyklon-Staubbehaelter mit 3-gaengigem Innengewinde |
| Staubbehaelter (Schrumpfkorr.) | src/staubbehaelter2_schrumpfkorrektur.py |
Korrigiert fuer 3D-Druck-Schrumpfung (+0.8mm) |
| Handgriff | src/Handgriff.py |
Ergonomischer Griff mit integriertem Abluftkanal |
| Rueckplatte | src/rueckplatte.py |
Motorabdeckung / Rueckwand |
| Griff + Rueckplatte | src/Griff_mit_Rueckplatte.py |
Kombiniertes Bauteil |
| Trichter | src/Trichter.py |
Uebergangsstueck Zyklon - Gehaeuse |
| Luftfilter | src/luftfilter.py |
HEPA-Filterhalter |
| Passfeder | src/Passfeder.py |
Zentrierring zwischen Gehaeuseteilen |
| Bauteil | Datei | Beschreibung |
|---|---|---|
| Zyklon | src/zyklon.py |
Zyklon-Abscheider (Spiralwand) |
| Zyklon-Einlauf | src/zyklon_einlauf.py |
Spiralmantel + Verbindungsstueck |
| Zyklon-Einlauf (Schrumpfkorr.) | src/zyklon_einlauf_schrumpfkorrektur.py |
Korrigiert (R=65.8mm) |
| Bauteil | Datei | Beschreibung |
|---|---|---|
| Laufrad | src/Laufrad.py |
14-Schaufel Radialrad mit 3D-gekruemmten Schaufeln |
| Laufrad-Berechnung | src/calc_laufrad_v3.py |
Meridionale Stroemungsberechnung |
| Laufrad Luftvolumen | src/Laufrad_Luftvolumen.py |
Inverser Stroemungskoerper (Visualisierung) |
| Schnecke | src/Schnecke.py |
Spiralgehaeuse-Innenprofil (Luftpfad) |
| Abluftkanal | src/Abluftkanal.py |
Luftfuehrung zum Griff |
# Repository klonen
git clone https://github.com/Andy1977D/Staubsauger.git
cd Staubsauger
# Virtuelle Umgebung (empfohlen)
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # Linux/macOS
# Abhaengigkeiten installieren
pip install -r requirements.txtJedes Bauteil ist ein eigenstaendiges Python-Skript, das beim Ausfuehren
die .stl- und .step-Dateien automatisch in step/ erzeugt:
python src/Laufrad.py
python src/Geblaesegehause.py
python src/staubbehaelter2.pyInteraktive Browser-Ansichten aller Bauteile:
# HTTP-Server starten
python -m http.server 8083
# Im Browser oeffnen:
# http://localhost:8083/viewer_assembly.html ← Gesamtansicht
# http://localhost:8083/viewer_laufrad.html ← Laufrad-Detail
# http://localhost:8083/viewer_airpath.html ← LuftpfadHinweis: Die Viewer laden
.stl-Dateien aus demstep/-Ordner. Falls diese fehlen, muessen die Python-Skripte zuerst ausgefuehrt werden.
| Parameter | Wert |
|---|---|
| Laufrad-Drehzahl | 45.000 1/min |
| Laufrad-Aussendurchmesser | 65 mm |
| Schaufeln | 7 Haupt + 7 Splitter |
| Schaufelwinkel | 30 Eintritt - 60 Grad Austritt (rueckwaertsgekruemmt) |
| Staubbehaelter-Durchmesser | 130mm - 131.6 mm (Schrumpfkorrektur) |
| Gewinde | 3-gaengig, Trapez, P=3mm |
| Material | Staubbehaelter PETG / Laufrad PET-CF / Gehaeuse ASA / Griff PLA oder ASA |
| Helmholtz-Resonator | 5kHz bis 9 kHz im Griff integriert |
- 3660-Motor ~3500kV 4S 80A
- LiPo Akku 4S 3000-6000mAh
- 4S 80A BMS
- Motorcontroller 4S >=60A
Siehe requirements.txt.
| Paket | Zweck |
|---|---|
| build123d | Parametrisches CAD (basiert auf OpenCascade) |
| numpy | Numerische Berechnungen |
| scipy | Interpolation (Laufrad-Stroemungsprofil) |
Beitraege sind willkommen! Bitte erstelle einen Fork und sende einen Pull Request.
- Fork erstellen
- Feature-Branch anlegen (
git checkout -b feature/mein-feature) - Aenderungen committen (
git commit -m 'Beschreibung') - Branch pushen (
git push origin feature/mein-feature) - Pull Request erstellen
Dieses Projekt steht unter der MIT-Lizenz.

