sl-mechanical 914afbc1ca feat: vertical stem architecture — compact baseplate + battery carousel
ARCHITECTURE CHANGE: batteries no longer sit flat on the base plate.
They mount VERTICALLY on a central mast via a height-adjustable carousel.
CG is tuned by sliding the carousel up/down the stem.

Part A — prototype_baseplate.scad (Rev C):
- PLATE_DEPTH: 210mm → 130mm (no battery footprint constraint)
- Removed all battery tray geometry (holes, strap slots, expansion mounts)
- Added central stem socket: Ø38.6mm bore + 4x M5 flange bolt holes on Ø66mm BC
- Added stem_flange() module: laser-cut ring (qty 2, one each side of plate)
- Wiring pass-through slots flanking stem centre
- FC mount relocated to FC_X_OFFSET = -40mm (front of plate, clear of stem)
- New RENDER="stem_flange_2d" DXF export option

Part B — stem_battery_clamp.scad (new):
- Collar: two 3D-printed D-shaped halves, split at Y=0
  - Ø38.6mm bore (1.5" EMT / 6061-T6 tube)
  - 4x M6 clamping bolts + hex nut pockets
  - 1x M6 set screw per half for height/rotation lock
  - Arm attachment pads with M4 through-holes + nut pockets
- Arms: flat bars, laser-cut or printed, ARM_REACH=55mm
- Battery cradles: U-channel, open top, Velcro strap slots at 30% + 65% height
- BATT_COUNT param: 2 (180°), 3 (120°), or 4 (90°) radial batteries
- ARM_START_ANGLE chosen per BATT_COUNT to keep all arms clear of Y=0 split
- Battery ghosts in assembly for visualisation
- Full RENDER control: assembly / collar_half / arm / arm_2d / cradle
- Assembly sequence + CG tuning notes in file footer

BOM.md → Rev C:
- Part A table updated (5 laser-cut parts + stem tube)
- Part B table added (collar halves, arms, cradles, fasteners)
- Battery section: flat-deck layout replaced with vertical stem guide
- Fastener table updated to match new architecture

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-28 14:57:30 -05:00

177 lines
8.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# SaltyBot Chassis — Bill of Materials
**Task:** bd-1iy5 / prototype-baseplate
**Rev:** C — 2026-02-28 (vertical stem architecture; batteries on mast carousel)
**Agent:** sl-mechanical
---
## ⚠ Axle Measurement Update (Rev B)
PR #7 (`chassis_frame.scad`) used placeholder values. The table below records the
**caliper-verified** hub motor axle dimensions. All new designs must use these.
| Feature | Measured | PR #7 placeholder | Delta |
|---------|----------|-------------------|-------|
| Axle base diameter (round, near hub) | **16.11 mm** | 14 mm | +2.11 mm |
| D-cut shaft OD | **15.95 mm** | — (not modelled) | new |
| D-cut flat chord | **13.00 mm** | — | new |
| Total axle protrusion | **65.5 mm** | ~60 mm est. | +5.5 mm |
| Base section length | **15.0 mm** | — | new |
| D-cut section length | **43.35 mm** | — | new |
| Tip / shoulder | **3.0 mm** | — | new |
| Bearing seat collar OD | **37.8 mm** | — | new |
| Tire OD | **254 mm** (10×2.125") | 170 mm motor OD only | — |
| Axle CL height above ground | **127 mm** | 310 mm (wrong) | 183 mm |
`chassis_frame.scad` should be updated in a follow-on task to match Rev B values.
---
## Structural / Fabricated Parts
### Prototype Base Plate (`prototype_baseplate.scad`) — Rev C
> Batteries are removed from the base plate. Plate is now compact (680×130mm).
> Stem socket replaces battery tray. See Part B (stem clamp) below.
| # | Part | Qty | Material | Cut size | Notes |
|---|------|-----|----------|----------|-------|
| 1 | Base plate | 1 | 6mm 5052-H32 Al **or** 8mm acrylic | 680×130mm blank | `RENDER="plate_2d"` → DXF |
| 2 | Dropout clamp — lower | 2 | 8mm 6061-T6 Al | 90×70mm blank | Round bore Ø16.51mm; `RENDER="clamp_lower_2d"` |
| 3 | Dropout clamp — upper | 2 | 8mm 6061-T6 Al | 90×70mm blank | D-cut bore; `RENDER="clamp_upper_2d"` |
| 4 | Stem flange ring | 2 | 6mm Al or acrylic | Ø82mm disc | One above + one below plate; `RENDER="stem_flange_2d"` |
| 5 | Vertical stem tube | 1 | 38.1mm OD × 1.5mm wall 6061-T6 Al | 1050mm length | 1.5" EMT conduit is a drop-in alternative |
| 6 | FC standoff M3×6mm nylon | 4 | Nylon | — | MAMBA F722S vibration isolation |
| 7 | Ø4mm × 16mm alignment pin | 8 | Steel dowel | — | Dropout clamp-to-plate alignment |
### Battery Stem Clamp (`stem_battery_clamp.scad`) — Part B
| # | Part | Qty | Material | Notes |
|---|------|-----|----------|-------|
| 8 | Collar half | 2 | PETG FDM (5 perimeters, 40% infill) | Print flat-side-down; mirror 2nd in slicer. Bore Ø38.6mm |
| 9 | Radial arm | 4 | 4mm 5052-H32 Al (laser-cut) **or** PETG FDM | `RENDER="arm_2d"` for DXF with `ARM_THICK=4`; or print at 8mm |
| 10 | Battery cradle | 4 | PETG FDM (4 perimeters, 30% infill) | U-channel, open top; holds 1 pack per cradle |
| 11 | M6×60 SHCS | 4 | SS | 2 collar clamping bolts × 2 sides |
| 12 | M6 hex nut | 4 | SS | Captured in collar nut pockets |
| 13 | M6×12 set screw | 2 | SS, cup-point | 1 per collar half for height lock |
| 14 | M4×20 SHCS | 8 (16 for 4) | SS | Arm-to-collar bolts (2 per arm) |
| 15 | M4×16 SHCS | 8 (16 for 4) | SS | Cradle-to-arm bolts (2 per cradle) |
| 16 | M4 hex nut | 16 (32 for 4) | SS | Nuts for items 14 + 15 |
| 17 | Velcro strap 25mm × 600mm | 48 | — | 12 per battery pack through cradle slots |
### Full Chassis (`chassis_frame.scad`) — Rev A (placeholder values — pending Rev B update)
| # | Part | Qty | Material | Notes |
|---|------|-----|----------|-------|
| 6 | Main deck plate | 1 | 6mm 5052 aluminium plate, 640×220mm | CNC router or waterjet; all holes per `chassis_frame.scad` |
| 7 | Longitudinal rib (front) | 1 | 4mm 5052 aluminium, 600×40mm | Laser-cut; press-fit into deck slots |
| 8 | Longitudinal rib (rear) | 1 | 4mm 5052 aluminium, 600×40mm | Same file, symmetric |
| 9 | Motor fork bracket (L) | 1 | 8mm 6061 aluminium | **Update fork slot to Ø16.51mm before cutting** |
| 10 | Motor fork bracket (R) | 1 | 8mm 6061 aluminium | Mirror of item 9 |
| 11 | Battery tray | 1 | 3mm PETG FDM or 3mm aluminium fold | `chassis_frame.scad``battery_tray()` module |
| 12 | FC mount plate / standoffs | 1 set | PETG or nylon FDM | Includes 4× M3 nylon standoffs, 6mm height |
| 13 | Jetson Nano mount plate | 1 | 4mm 5052 aluminium or 4mm PETG FDM | B01 58×58mm hole pattern |
| 14 | Front bumper bracket | 1 | 5mm PETG FDM | Saddle clamps for 22mm EMT conduit |
| 15 | Rear bumper bracket | 1 | 5mm PETG FDM | Mirror of item 14 |
---
## Motors
| # | Part | Qty | Source / Spec | Notes |
|---|------|-----|---------------|-------|
| 16 | Hoverboard hub motor | 2 | 10×2.125" pneumatic tire, 36V nominal, ~350W | Axle: Ø16.11mm base / Ø15.95mm D-cut / 13mm flat; bearing seat Ø37.8mm — **all caliper-verified** |
| 17 | Motor hall-sensor cable extension | 2 | 6-pin JST-PH 300mm | Route through deck cable slot |
| 18 | Axle lock nut | 4 | M16×1.5 or thread-matched to actual axle tip | Confirm thread at tip before ordering; calipers show Ø≈10mm at tip |
---
## Electronics Mounts
| # | Part | Qty | Spec | Notes |
|---|------|-----|------|-------|
| 13 | STM32 MAMBA F722S FC | 1 | 36×36mm PCB, 30.5×30.5mm M3 mount | Oriented USB-C port toward front |
| 14 | Nylon M3 standoff 6mm | 4 | F/F nylon | FC vibration isolation |
| 15 | Anti-vibration grommet M3 | 4 | Ø6mm silicone | Under FC mount pads |
| 16 | Jetson Nano B01 module | 1 | 69.6×45mm module + carrier | 58×58mm M3 carrier hole pattern |
| 17 | Nylon M3 standoff 8mm | 4 | F/F nylon | Jetson board standoffs |
---
## Battery (Vertical Stem Mount — Rev C)
> Batteries mount VERTICALLY on the stem carousel, **not** on the base plate.
> Each pack stands upright (420mm tall) in a cradle at the end of a radial arm.
| # | Part | Qty | Spec | Notes |
|---|------|-----|------|-------|
| 18 | Battery pack | 24 | 24V, **420×88×56 mm** each (caliper-verified) | Snap into battery cradle from above |
| 19 | BMS board | 1 | Matched to cell chemistry | Mount to stem or base plate underside; run wiring down stem |
### Battery stem clamp — configuration guide
| Config | Arm count | Carousel weight | Balance | Notes |
|--------|-----------|-----------------|---------|-------|
| 2-pack | 2 arms, 180° apart | ~1.4 kg | ✅ Symmetric | Minimum configuration |
| 4-pack | 4 arms, 90° apart | ~2.8 kg | ✅ Symmetric | Maximum practical config |
| 3-pack | 3 arms, 120° apart | ~2.1 kg | ⚠ Asymmetric mass | Needs counter-balance or avoid |
### CG height tuning
Slide entire carousel up/down the stem with M6 collar bolts loosened. Tighten at desired height. Typical balance point (initial estimate): batteries centred at 450600 mm above base plate. Adjust in ≈50 mm increments during commissioning.
---
## Bumper Rail
| # | Part | Qty | Spec | Notes |
|---|------|-----|------|-------|
| 21 | 3/4" EMT conduit | 2 | 22mm OD, 660mm length | Front and rear bumper rail; bent or straight |
| 22 | Conduit saddle clamp M4 | 6 | 3D-printed integral to bracket (items 9/10) | Back-up: standard pipe clamp 22mm |
---
## Fasteners
| # | Part | Qty | Spec | Use |
|---|------|-----|------|-----|
| 20 | M5×16 SHCS | 16 | ISO 4762, SS | Dropout clamp bolts (4 per clamp × 4) |
| 21 | M5×20 SHCS | 8 | ISO 4762, SS | Stem flange bolts (4 per flange × 2) |
| 22 | M5 hex nut | 24 | ISO 4032, SS | |
| 23 | M4×20 SHCS | 16 | ISO 4762, SS | Arm-to-collar (2 per arm × 4 arms × 2) |
| 24 | M4×16 SHCS | 16 | ISO 4762, SS | Cradle-to-arm (2 per cradle × 4 arms × 2) |
| 25 | M4 hex nut | 32 | ISO 4032, SS | |
| 26 | M6×60 SHCS | 4 | ISO 4762, SS | Collar clamping bolts |
| 27 | M6 hex nut | 4 | ISO 4032, SS | Captured in collar pockets |
| 28 | M6×12 set screw | 2 | ISO 4026, SS cup-point | Stem height lock (1 per collar half) |
| 29 | M3×10 SHCS | 12 | ISO 4762, SS | FC mount + miscellaneous |
| 30 | M3×6 BHCS | 4 | ISO 4762, SS | FC board bolts |
| 31 | Axle lock nut (match axle tip thread) | 4 | Flanged, confirm thread | 2 per motor |
| 32 | Flat washer M5 | 32 | SS | |
| 33 | Flat washer M4 | 32 | SS | |
| 34 | Ø4×16 dowel pin | 8 | Steel | Dropout clamp alignment |
---
## Tools Required for Assembly
- Torque wrench (M14 axle nuts: 3540 N·m; M5: 4 N·m)
- M2.5 / M3 / M4 / M5 hex drivers
- Thread locker (Loctite 243 blue for all structural fasteners)
- Dial caliper — verify motor OD, axle flat before machining fork slot
---
## Estimated Masses
| Assembly | Est. mass |
|----------|-----------|
| Aluminium deck + ribs | ~1.1 kg |
| Motor forks (×2 Al) | ~0.4 kg |
| Motors (×2) | ~3.6 kg |
| Battery (6S 4Ah LiPo) | ~0.7 kg |
| Electronics (FC + Jetson + wiring) | ~0.5 kg |
| Bumpers + brackets | ~0.3 kg |
| Fasteners | ~0.2 kg |
| **Total estimate** | **~6.8 kg** |