Design und CAD-Pipeline
Maßgebliche Quelle
Die Upstream-Yertle-STEP-Baugruppe (upstream/yertle/design/CAD/Yertle_Single_v2.step) und die veröffentlichten Druck-STLs (upstream/yertle/design/STL/) definieren die Mechanik. Nichts wird von Hand nachmodelliert: Die Pipeline liest die STEP-Datei, registriert jede STL auf ihren STEP-Körper, misst die Kinematik und baut die Strido-Teile als CadQuery-Boolesche Operationen auf der Upstream-Geometrie auf.
Koordinatensysteme: Das STEP-System hat +x = Roboter links, +y = Roboter hinten, +z = oben (mm). assembly.step_to_base() bildet es auf das REP-103-System base_link ab (x vorwärts, y links, z oben; Ursprung zwischen den Hüftachsen).
Änderungen gegenüber dem Upstream-Yertle
| Modul | Teil | Änderung und Begründung |
|---|---|---|
| Frontdisplay | front_shell_display | Upstream-Frontschale + Fenster 43 × 33 mm und zwei M3-Dome für das Waveshare-2"-LCD; Schlitz für das Kamera-Flachbandkabel |
display_bracket | Klemmt das LCD auf seinen M2-Sechskant-Abstandsbolzen an die Dome der Schale | |
| Frontkamera | camera_mount_base, camera_tilt_plate | Neigbare Halterung auf der flachen Oberseite der Frontschale; nutzt die beiden Upstream-Schalenschrauben mit (M3 × 12 statt × 8); Drehachse M3 × 40 mit Sicherungsmutter ergibt eine Reibungsneigung. Von der Oberschale hierher verlegt, weil in der ersten Position die Nase des Roboters 42 % des Bildes einnahm (Raycast-Prüfung); jetzt 0 % |
| Obere Sensoren | top_shell_sensor, lidar_pedestal | 14-mm-Sockel mit Tasche für den C1-USB-Adapter hebt die Scanebene über jede Beinpose und die Kamera; Kabelschlitz zum Innenraum |
| Rückwand | back_shell_button, arming_port_bezel, arming_port_ring | Bohrung Ø 12,2 mm für den Einschalttaster; XT60-Arming-Port in der vorhandenen Bohrung Ø 20 mm |
| Elektronik | electronics_deck | Upstream-Platte + IMU-Tasche und Bohrungen für Abstandsbolzen für Spannungsregler und INA260; mit der Oberseite nach unten ohne Stützstrukturen druckbar |
| Hohlräume | lower_shoulder_frame_front/_rear, servo_bus_holder_front/_rear | WAGO-Servostrombus pro Hohlraum, eine zusätzliche Vorbohrung im Upstream-Rahmen |
| Zukaufteile | — | Pi 5 (war Pi 4), XIAO ESP32-S3 (war ESP32 DevKit), 2 × UBEC-10A (war ein SBEC), LiDAR, Kamera, LCD, INA260, LSM6DSOX, Pololu-Schalter und -Spannungsregler |
Der Upstream-Körper „servo holder3“ in der STEP-Datei ist ein veraltetes Duplikat, das den echten Halter um 2860 mm³ überlappt; er wird ignoriert. Der Fuß-Distanzring und der Hüftlagerbolzen existieren nur in der STEP-Datei und werden als druckbare STLs exportiert.
Kinematik
Jedes Bein: Hüftabduktion (Servo im Körper), Oberschenkel (Servo im Beinmodul, Direktantrieb) und Knie. Der Knieservo treibt eine Kurbel an; ein Parallelogramm und ein Viergelenk übertragen sie auf die Tibia, sodass der Unterschenkelwinkel eine nichtlineare Funktion des Kurbelwinkels und des Oberschenkelwinkels ist. packages/strido-core/src/strido/leg.py und das servo_map der Firmware lösen dieses Koppelgetriebe exakt aus den im CAD gemessenen Koppellängen (hardware/kinematics.yaml). Die Upstream-STEP-Datei hat eine Koppellängen-Abweichung von 1,02 mm (gezeichnetes Knie −98,8°, geschlossenes Koppelgetriebe −101,2°); verwendet werden die gemessenen Längen.
Die Gelenkgrenzen stammen aus einer Kollisionsanalyse der gesamten Baugruppe (alle Teile und die Strido-Befestigungselemente; Upstream-Gelenkbefestigungen, deren Kopfseite und Mutterausrichtung angenähert sind, gehen nur in die statische Durchdringungsprüfung ein): Oberschenkel × Unterschenkel in einem 5°-Raster bei null Abduktion mit einem minimalen Übertragungswinkel von 25°, dann der Hüftbereich in der Stand- und Mittelpose mit dem gespiegelten Partnerbein und 0,3 mm Abstand (hardware/joint_limits.yaml, MECH-005). Die Codegenerierung hält zusätzlich jedes Gelenk innerhalb von ±85° Servoweg um seine Montage-Neutralstellung:
| Gelenk | Grenze |
|---|---|
| Hüfte (Abduktion) | FL −17,5…50°, FR −50…17,5°, RL −17,5…45°, RR −45…17,5° |
| Oberschenkel | −40…125° (vorne; Analyse −45°, durch den Servoweg um die 45°-Neutralstellung begrenzt), −15…125° (hinten) |
| Unterschenkel | −150…−45° |
| Kniekurbel | −2,5…75° |
Montagereferenz (alle Servos bei 1500 µs): Beine in der Abduktion senkrecht, Femur 45° nach hinten, Kniekurbel 35°.
Masseeigenschaften
Die Massen ergeben sich aus den Teilevolumina (Druckteile: PETG/PLA-Dichte mit der effektiven Füllung der Druckeinstellungen) und aus Datenblattmassen für Zukaufteile (hardware/mass_properties.yaml); Trägheiten aus den Netzen, die verlegten Kabel nach Länge. Gesamt 3,07 kg; Werte pro Glied in ros2/strido_description/config/mass_report.yaml.