Home · Projects · Sand Separator V2

Sand Separator V2 — RUBISCO2 Hub

Project hub for the RUBISCO2 team. Home of the 3D visualizations, decisions made and the reasoning behind each, fabrication deliverables, customer constraints, and open items. Everything that doesn't appear in the PDF or in SolidWorks lives here.

📌 Current Spec Snapshot — auto-synced with spec.py

These are the canonical current values. If anything in the historical narrative below disagrees, these win (they come straight from the parametric source of truth).

Springs k = 75.4 N/mm × 4 in parallel = 301.6 N/mm system rate. Ø100 mm, wire d=12 mm, free height 200 mm, 4 active turns.
Vibration Drive 25 Hz · natural 4.66 Hz · ratio 5.36 · isolation 96.4%.
Load envelope mvib = 350 kg structure · slug 1.01.5 t (bucket 1.021.365 m³ × 10001200 kg/m³) · worst-case 800 kg/spring (asym DAF=2) → 104.0 mm = end of linear range.
Frame Front legs 799 mm · rear legs 904 mm (Δ 3° tilt).
Deflector 2300×1500 mm 304 SS · tilt 20° (Fork C lateral-fall).
Bump stops Ø80×50 mm, 60 ShA · gap 40 mm at rest.
Drum (V2 spec) Ø1100 mm × 4000 mm · max 24 rpm.

Sources: projects/feeder-plan-d-gpt5-5-v2/spec.py · RUBISCO2_Full_Updated_Final_Bible_v3_0.md §2.2, §3, §11.4. Regenerated by scripts/build_hub.py.

⚠️ Snapshot card above is the current spec. The decision-history sections below describe past forks and revisions (Fork B/δ/η, RevN/Q/U). Many of those numbers were superseded by Fork C (2026-05-13) — deflector tilt 13°/15°→20° about X axis, trompa 4-wall→3-wall U, spacer 23.8→75→71.2 mm, bump bracket 295→291.2 mm, deflector hanger row 2×→1× at Y=15 (331 mm each). Read the snapshot card for current state; treat the narrative below as "how we got here".

Fork η + RevQ SUPERSEDED 2026-05-13

Fork η (2026-05-12 PM): reducción de altura total de la máquina 2,363 → 2,004 mm AABB (1,954 mm instalada, bajo el techo del cargador 2,240 mm y el target ≤ 2,000 mm del bible §12.3). Tres palancas aplicadas: (A) paredes del bin 650→450 mm; (C) patas del bastidor cortadas 110 mm (delanteras 909→799, traseras 1014→904); (D) tornillos niveladores LSCB-20-150 → LSCB-20-100. Cascada de geometría: el deflector se reafinó a 15° tilt + 100 mm paredes laterales (Fork η reduce iter-5 17°/130 — la ventana geométrica con patas más cortas no permitía 17°/130). Lengüetas recomputadas: 611/530/450/369/289 mm (eran 666/574/482/390/299). 99/99 tests pasando.

RevQ (PDF, 56 pp): incorpora Fork η + (4) etiquetas WI 1-6 sobre la vista isométrica del ensamble completo (Marco "got lost" feedback cerrado) + (5) Anexo B verificación de fuerzas bajo 3 casos de carga (estático nominal, volcado nominal DAF=2.5, volcado fuera de regla DAF=3) — todos los componentes ≥ SF 1.0 + (6) Anexo A comparativo de motores (4 opciones, justificación de la prima OLI MVE 800/3).

Decisiones de la junta RESUELTAS 2026-05-12 PM · propagadas a CAD + bible + PDF

4 items de la junta resueltos por Pablo el 2026-05-12 PM. Decisiones propagadas a spec.py, cadquery_part.py, tests (99/99 verde), part_specs.py, body texts, bible §11.4 + §12.1.1. PDF RevR/RevS al cierre.

A1 — DECIDIDO ✓ Lateral-fall toward -Y

Pablo decisión 2026-05-12 PM: revertir a lateral-fall MODIFICADO — placa 13° tilt about X axis, drena hacia -Y (opuesto al panel HMI). Plate INTENCIONALMENTE más ancho que el frame (1500 mm vs 1080 mm) — arena cae lateralmente pasando las patas y X-braces. Una sola pared lateral en +Y (panel side), vertical en world Z (NO rotada con la placa) — ángulo interior 103° obtuso sella el wedge. Borde -Y abierto. Soporte: option B (cantilever puro) — 2 filas de hangers (Y=985 corta 161 mm + Y=15 larga 384 mm × 5 travesaños). El extremo -Y cuelga ~480 mm como cantilever; deflexión estática ~8 mm, aceptable para deflector estático. Option C (riel + brazos) queda como retrofit V2.1 si tests muestran sag progresivo. 4 rendijas piercing: front-left leg + left-face X-braces combined + 2× front-face X-brace diagonals. Cortar en montaje. Tests 99/99 verde con el nuevo CAD.

A2 — DECIDIDO ✓ Trompa 3-wall (top abierto)

Pablo decisión 2026-05-12 PM: quitar la pared superior. Boot ahora U-channel de 3 paredes (izquierdo + fondo + derecho; parte superior abierta). Elimina riesgo de jam de sargazo. La banda de sujeción TR-PRT-30075 cambia de rectángulo cerrado (1920 mm, 19 pernos) a U-shape (3 lados: 1210 mm, 12 pernos). Propagado a spec, cadquery, part_specs, OEM_BOM, body_kw, bible §11.4 + §12.1.1.

A3 — DECIDIDO ✓ 2 motores OLI + justificación reforzada

Pablo decisión 2026-05-12 PM: mantener 2× OLI MVE 800/3 contra-rotatorios (A3.1). Anexo A re-escrito y ampliado a 2 pp con la justificación: (i) stroke lineal vs circular — un motor único produce movimiento orbital circular (velocidad neta de transporte ≈ 0); dos motores contra-rotatorios sincronizados producen stroke lineal con velocidad neta > 0 (principio operativo de cualquier linear vibrating feeder). (ii) Sincronización confiable — 3 mecanismos en serie: (a) efecto Sommerfeld auto-sync pasiva (1902/Blekhman); (b) master-slave VFD (Yaskawa V1000) control activo; (c) detección de desbalance + E-stop.

A4 — DECIDIDO ✓ PTRs bajos más chicos (50×50×3, pendiente de propagar)

Pablo decisión 2026-05-12 PM: A4.2 — reducir los PTRs bajos a 50×50×3 mm. Pendiente de implementar tras estabilizar A1 (lateral-fall) — los anchor points del deflector cambian con la nueva geometría, así que el sizing real depende de dónde queden los travesaños bajos en la versión final. Se propaga al siguiente PDF cuando A1 esté congelado.

Cuando confirmes, propago las decisiones a spec.py + body texts + bible + hub, regenero la siguiente revisión, y queda listo para enviar a Pedro post-NDA.

RevN changes SUPERSEDED — see snapshot card

RevN (2026-05-12 early hours, Pablo audit iter 5-6) incorporates 9 changes vs RevM + 6 iterations of audit fixes after the 3D viewer visual review (deflector tilt 25→17°, side walls 200→130mm, trompa lifted + sleeve_back 25→0, clamp band visualized, perforation Ø4→Ø10, X-brace slots recomputed for tilt+bake-in geometry, dedicated WI 8 for bump stops, annotation overlap fixes). Total clash audit: 113k → 2.4k mm³ (98% reduction). PDF 54 pp · 3.6 MB · zip 6.0 MB. Download RevN zip → · Open the full feeder in 3D →

⚠ Deferred to V2.1 (NOT in this pack) — listed explicitly so the team is on the same page:
  • Guards / covers / enclosures (Andi item · bible §13.2): the full plan includes metal enclosures over the vibration motors, tool-only removal, warning labels, LOTO-compatible hardware. Not modeled in CAD or in the fab PDF because adding opaque geometry around the motor would block visibility of the other components during review. If modeled for V2.1, it must use high transparency so the rest stays visible. June 2026 demo = project staff only.
  • V2.1 acoustic enclosure (item 16): scoped but not fabricated. Required if the hotel site can't accommodate the 20 m buffer or needs night operation.
  • Machine-Skid V1 (items 8/14): common base for drum + feeder. Spec at /projects/skid but not fabricated yet; separate WI pre-Annex-B.
  • Hardox wear plate in the loader impact zone: deferred — CaCO₃ Mohs 3-4 doesn't abrade A36 quickly. Add post-demo if field testing shows wear.
Source: Pablo voice note 2026-05-12 04:47. Bible v3.0 §13.2 + §11.4 items 15, 16, 8, 14.
Master cover RevN — notas generales de fabricación
RevN cover sheet — updated General Notes: Q23 Option C deflector, trompa Q22 Option C 4-wall, noise envelope 82 dBA Fork C / Fork δ-revised, AWS weld sizes per joint, C5-M coating, loader rule (centered dump + bucket ≤ 0.5 m), datum convention for holes, 7 WIs (NEW: WI 7 trompa clamp band).
Isometric view of the complete feeder
Full assembly view (RevQ, Fork η) — 7 components: frame (legs 799/904 mm), sub-frame, bin (450 mm walls + Ø 10 mm perforated floor + diagonal funnel), 2 counter-rotating OLI MVE 800/3 motors, 4 springs k=75.4, 4 × 295 mm bump stops, 15° inclined deflector with 100 mm side walls, 4-wall hollow trompa flexible + clamp band, X-bracing on all 4 frame faces. Machine height instalada ≈ 1,954 mm (bajo el techo del cargador 2,240 mm).

1 · Q23 Option C — deflector tilted around Y axis, discharge to -X (loader side)

Tilt axis rotated X → Y, discharge now toward -X
item 10 (Q23) · 2026-05-11 afternoon
We picked Option C (not Option B/B''/D). The deflector plate tilts 15° about the Y axis (Fork η 2026-05-12: 17°→15° because the Fork η leg shortening narrowed the geometric window between the new base plate top and the rail bottom): +X edge high, -X edge low, so sand drains toward the loader-side exit (-X end), not laterally. 2 × 100 mm × 3 mm × 2300 mm 304 SS side walls (DEF-PRT-30072; Fork η reduced 130→100 mm).
Symmetric hanger tabs: 5 X positions (crossmembers at 650/950/1250/1550/1850) × 2 sides (Y=15 and Y=985) = 10 tabs. Lengths (Fork η values): 611/530/450/369/289 mm from low-X to high-X end of the plate.
X-brace clearance slots (4 total): the 15° tilt + Fork η geometry still requires slots on both faces. 2 rear (world X=250, pre-bake-in (288.6, 195/805, -1259)) + 2 front (X=2250, 754/248, -660). Slot dims 60×150 mm. Cut in assembly with plasma/shears — do NOT pre-cut.
Closes: item 10 (Q23) · iter 5 final
Deflector Q23 Option C — body sheet
Deflector Q23 Option C despiece (Fork η) — 2300 × 1000 × 3 mm 304 SS plate, 15° Y-axis tilt. Lengüetas 611/530/450/369/289 mm at travesaño X = 650/950/1250/1550/1850, 100 mm side walls, 4 X-brace slots (2 traseras + 2 delanteras), cortar en montaje.

2 · Q22 Option C — 4-wall flexible trompa, final geometry

Hollow 4-wall neoprene boot, Pedro-fab clamp band
item 1 · 2026-05-11 afternoon
The final trompa is 4 hollow walls (closed tube, open ends) — previously modeled as a solid bounding-volume block. Outer dimensions 200 × 710 × 250 mm; inner opening 700 × 240 mm = exact match with the Q17 chute (the 240 mm inner height was corrected from the 300 mm we previously assumed — real Q17 chute is 240). Neoprene wall thickness ~5 mm in general, ~10 mm at the clamp band region.
Boot procurement (OEM-TRP-001): industria del plástico, custom fab to drawing (not Pedro). Pedro fabs only: clamp band TR-PRT-30075 = A36 flat bar 25×3 mm × 1920 mm perimeter bent to the chute outline, with 19 × M8 zinc Ø9 clearance holes at ~100 mm pitch (was 21 when we assumed 310 mm; with the real 240 mm it drops to 19). Hot-dip galvanized. Maintenance: re-torque at 50 h commissioning + 500 h intervals.
Closes: item 1 (Q22 chute → drum)
Trompa flexible body sheet
Trompa body — OEM-TRP-001 boot + TR-PRT-30075 clamp band.
Trompa clamp band despiece
Clamp band — A36 flat bar 25×3, 1920 mm perimeter, 19× M8.

3 · Pablo N audit (Fork ε) — sub-frame lifted 51.2 mm

Spacer plate 23.8 → 75 mm, sub-frame rises 51.2 mm
item T (motor↔frame collision) + item U (leveling-foot access) · Pablo Navarro audit 2026-05-11
Pablo N reviewed the assembly in SW and emailed 5 screenshots flagging two issues. Issue T (motor↔frame collision): with the sub-frame at z=-60 and the motors in their cradles, the motors sat ~10 mm from the frame-top-rail crossmember — too little clearance to dampen during slug+DAF=2. Issue U (leveling foot access): the jack-screw socket pointed upward, inaccessible once the frame was assembled.
Fix T (spacer-lift, not frame-lower): rather than lowering the frame top rail (which cascades into the legs, motor bolt lengths, deflector hanger tabs, etc.), we thickened the spacer plate from 23.8 → 75 mm under each lower spring cup. The sub-frame rises 51.2 mm (from z=-60 → z=-8.8); motor-frame clearance goes from ~10 → 61 mm at rest / 21 mm at bump-stop max engagement. Bump stop bracket returns to 295 mm (Fork δ had cut it to 244 mm because the sub-frame was un-lifted; with the lift restored, the original 295 mm again gives the correct 40 mm rest gap).
Fix U (hex side-wrench): leveling feet now use a lateral M20 + 30 mm AF (across-flats) — horizontal wrench instead of vertical socket. Install procedural rule: when installing the machine, retract the leveling feet 51 mm to keep the specced chute-to-cone height; the spacer-lift must not propagate to the installed assembly.
Closes: item T (motor-frame clash) + item U (foot access)
Sub-frame body sheet
Sub-frame body — PTR 60×60×4, +2 crossmembers at X=810/1690, 75 mm spacer plate under each lower spring cup, 4 × 295 mm bump stop brackets.

4 · PRT-30043 Fork B — solid bar 150×76 → PTR 80×80×4 + reinforcement blocks

Short transverse rail switches from a solid bar to PTR + 150×120×25 blocks
item 5 (mass + cost) · 2026-05-11 morning
The frame's short transverse rail that carries the 4 lower spring cups was a 150 × 76.2 mm A36 solid bar — heavy (~125 kg each, ×1 per unit). Switched to Fork B: 1 A36 PTR 80 × 80 × 4 mm × 1160 mm + 2 A36 plate reinforcement blocks 150 × 120 × 25 mm welded on the top face of the PTR, centered at the spring positions (Y=180 and Y=820). Each block carries 4 × M10 PCD-115 holes (the lower spring cup pattern). Critical QC: PCD-115 alignment with template, tolerance ±0.3 mm.
Welding: continuous 6 mm perimetral fillet from the PTR to the frame + continuous 6 mm fillet on all 4 faces of each block to the PTR. Mass saving: 208 → 83 kg per unit ≈ −125 kg/machine. At fleet scale (100 units), 12.5 tonnes.
Closes: item 5 (mass / cost optim) · PRT-30043 SLDPRT regen
PRT-30043 Fork B despiece
PRT-30043 Fork B despiece — PTR 80×80×4 + 2 reinforcement blocks with M10 PCD-115 holes + 6 mm fillet callouts.

5 · Item 2 — Ø 10 mm staggered 60° perforated bin floor (iter 5)

Hexagonal close-pack pattern, open area 46.2% · clear zones under doublers
item 2 · iter 3-5 (2026-05-12: was Ø 4 / pitch 6 in iter 1)
Ø 10 mm pattern at 14 mm pitch staggered 60° (Pablo audit iter 3-5: upsized from Ø 4 / pitch 6 because the feeder has NO anti-blinding brushes like the drum — Ø 10 reduces blinding with wet sargasso). Open area 46.2%, edge distance ≥ 12 mm, 1 mm wear allowance. Perforated zone: the entire floor except a 100 mm perimeter border + 4 × 260 × 220 mm clear zones under each underside doubler. Drum screen stays Ø 4 mm (it has the brush).
Fab: stock A36 perforated sheet (Cablofil MX or equivalent) — standardize-buy. Alternative: plasma CNC from DXF if stock doesn't arrive in time. The RevN PDF reflects this in the BIN body + BIN-PRT-30060 despiece annotations.
Closes: item 2 (perforated floor pattern) · iter 5 final
Bin floor perforation pattern
BIN-PRT-30060 despiece — 2500 × 1000 × 5 floor with Ø 10 mm × pitch 14 mm staggered perforation pattern + 4 × 260 × 220 mm clear zones under doublers.

6 · Items 18 + 19 (Andru R2) — AWS graphical closure

AWS weld callouts on ALL welded parts · per-hole X-Y dims on the despiece
items 18 + 19 (Andru) · Fork ζ-β audit 2026-05-11 late-night
The cover sheet "General Notes" already declared fillet sizes and the datum convention in RevM. But the individual despieces didn't carry graphical callouts — the fabricator had to cross-reference the general note against the part, which is easy to miss. Fork ζ-β closes both visually:
(18) AWS-style weld callouts with an arrow + bbox-framed label at each joint: symbol ▲ (fillet) / size / side (B = both / I = inside) / finish (G = ground / TIG). Example: ▲6 / B / G = 6 mm fillet both sides, grind toe. Applied to the 22 welded parts (frame 6, sub-frame 4, bin 6, deflector 3, X-bracing 2). Bolted parts (bin gussets, panel brackets, trompa clamp band) have no callout by design — they are bolted, not welded.
(19) Per-hole X-Y dims on every despiece: each hole now shows its "(X, Y)" coordinate next to the circle, in mm from the lower-left datum corner. Before there was only a global "datum = lower-left corner" note — now there's no ambiguity about which corner or which hole is which.
Closes: item 18 (AWS weld symbols) + item 19 (hole dims) — graphical closure

7 · Item 16 — Fork δ-revised noise envelope

Target adjusted 75 → 82 dBA @ 1 m · daytime ops + 20 m buffer · NOM-081 daytime with 9 dB margin
item 16 (hotel noise) · Fork C → Fork δ-revised 2026-05-11
Engineering-driven decision (hotels don't have their own authoritative dB limits). OLI MVE 800/3 motor raw ~85-92 dBA @ 1 m; VFD low-frequency tuning + sub-frame vibration damping realistically deliver ~5-9 dB of reduction → we design to 82 dBA @ 1 m (the original Fork C 75 dBA required a 13 dB reduction, not achievable with the available mitigations without a dedicated enclosure).
NOM-081-SEMARNAT compliance (Mexico): 82 dBA @ 1 m + 20 m buffer → ~56 dBA at the residential boundary. Daytime (65 dBA limit) → 9 dB margin. Night (55 dBA) closed by the daytime-only ops rule (07:00-18:00). V2.1 acoustic enclosure stays scoped but NOT in this pack — applies only if the site can't accommodate the 20 m buffer or needs night operation.
Closes: item 16 (hotel noise envelope)

8 · Tests + audit — post-package drift fixes

95/95 cadquery tests green · 4 drift fixes after the package
post-RevN audit pass · 2026-05-11 night
After generating the zip, a rigorous audit pass caught 4 minor inconsistencies:
LEEME bolt count: said "21× M8" on the trompa clamp band; canonical spec.py is 19 (was 21 when we assumed a 310 mm tall boot; with the real 240 mm it's 19). The PDF + Anexo B already had 19; only the LEEME drifted.
03_STEPs/feeder_assembly_combined.step was timestamped 13:15 — predating the PRT-30043 Fork B / Q23 Option C / Pablo N spacer-lift / bump stops. Replaced with a fresh assembly_full.step (21:45).
Bible §11.4 + LEEME + Anexo B §11.2 still said "75 dBA" in some places while §13.6 was already 82. Propagated the Fork δ revision to the 3 remaining locations.
Acceptance criterion Anexo B: "≤ 78 dBA" (3 dB above 75 target) rescaled to ≤ 85 dBA (3 dB above 82 target).
Corrected zip shipped to Pablo (Telegram msg 778). Commit 5795751 in the rubisco2 repo.
Map vs Territory — zip first, audit second

RevM changes (historical) 2026-05-09 · superseded by RevN

Exact list of what changed relative to RevL. To see the changes in 3D: open the feeder viewer → (hard-refresh the browser with Ctrl+Shift+R if you still see the old version).

Sub-frame PTR 50×50×3 → 60×60×4
Item 11 (fatigue)
Bigger tube and thicker wall. Section modulus doubles (8326 → 17500 mm³). Visible in the viewer: the sub-frame rails are noticeably thicker and the sub-frame depth went from 50 → 60 mm. View in 3D →
+2 new crossmembers at X=810 and X=1690
Item 3 (floor under load)
Two new sub-frame crossmembers right beneath where the motors sit above. Reduce the maximum bin-floor span from 620 → 310 mm under a 1-t loader dump. Safety factor against yield 1.10 → 4.4. Visible from underneath the sub-frame.
Bump stops (4× new)
Item 6 (mechanical limit)
4 × 295 mm brackets hanging from the sub-frame underside (one under each spring), ending in Ø80×50 mm 60 ShA polyurethane stops. Nominal gap to the frame top rail = 40 mm at rest. Engages when the sub-frame drops Δ=40 mm (asymmetric slug+DAF=2 case). Does NOT engage in nominal slug. Now visible in the viewer in red, coaxial with each spring.
Flexible trompa (Q22 Option C, neoprene boot)
Item 1 (chute → drum)
Shore 60-70 neoprene extension that reaches 130 mm into the drum cone, with 200 mm walls (not the chute's 300 mm). Closes the gap where Andi warned sargasso could fall through. Fail-safe on contact: the neoprene flexes, it doesn't grind against the cone. Visible in the viewer as the orange piece coming out of the front of the bin toward the Q17 cone reference ring.
Springs k=50.27 → k=75.4 N/mm
Item 4 (asymmetric slug)
Same Ø100, same wire d=12, same 200 mm free length, but n_active drops from 6 → 4. Result: spring rate ~50% stiffer. f_n=4.66 Hz (was 3.81), isolation 96.4% (was 97.6%). Defense-in-depth against asymmetric slug+DAF=2. Visually the spring coils look less tightly wound (fewer active turns).
Spacer plate 33.8 → 23.8 mm
Cascade from deeper sub-frame
Geometric compensation: the 10 mm deeper sub-frame ate 10 mm of spring-stack space. Spacer trimmed by 10 mm so the isolator still seats against the sub-frame underside.
Long rail Y centers 25/975 → 30/970
Cascade from wider tube
The 60×60 tube (not 50×50) was protruding 5 mm outside the bin. Long-rail centers shifted 5 mm inward.
M16 motor bolts 62 → 72 mm
Cascade from deeper sub-frame
So the bolt reaches all the way through the mount plate (12 mm) + sub-frame (60 mm).
Cover sheet: new "General Fabrication Notes" block
Items 17, 18, 19 (Andru R2)
The master cover sheet now declares globally: fillet sizes per joint (sub-frame + motor cradle = 6 mm fillet BOTH sides + grind the toe → FAT 90+), hole convention from the lower-left datum corner, the C5-M coastal coating system, and the loader operational rule (centered dump + bucket height ≤ 0.5 m). See the first page of the PDF.
PRT-30044 base plate reconciled
Item 17 (Andru R2)
The BOM and the step text in wi_parts_data.py said "PRT-30010-P 200×120×10" — disagreed with part_specs.py (PRT-30044 180×180×10). Reconciled to the canonical PRT-30044 180×180×10 A36.

Bump stop WI — DONE 2026-05-12 iter 6: dedicated WI 8 added to the RevN PDF (body + BOM + safety notes + despiece). Previously buried inside the sub-frame WI; now standalone for Pedro.

Project status

Hotels demo
2026-06-09
32 days
Annex B
2026-05-31
23 days
Fab pack
RevN
2026-05-12 iter 6 · 9 changes vs RevM + iter 2-6 audit fixes (Q23 17° + Q22 final + Pablo N lift + Fork B + Item 2 Ø10 + 18/19 + 82 dBA + WI 8 bump stops + annotation fixes)
Test rig
cancelled
going straight to full scale

3D visualizations interactive · phone-first

Each one has a 3D viewer with click-to-isolate parts, a technical card per sub-part (material, fabrication, fasteners, tolerances, mass), and an "Ask Spark" chat dock alongside.

Feeder (Plan D)

1000 × 2500 mm vibrating bin with integrated side funnel. Springs + cups + jack screws + sand deflector + X-bracing.

Open viewer → Design review Motion-control gate

Drum V2

Production design. Drum + frame + drive + rollers + brushes + sand deflector + HMI + guards. Bible v3.0 §3-§10.

Open viewer →

Full machine

Drum + feeder + common base. Integrated assembly view. Useful for seeing the material flow in context.

Open viewer → Open alignment page

Drum V1 (reference)

Historic V1 (700 OD × 2500 mm). Reference only — not the production design.

Open viewer →

Have a design question?

For general project questions, use the "Ask Spark" chat at the bottom-right — Spark reads bible v3.0 and the project documents and answers. For questions about specific parts (material, fasteners, tolerances), open the component's 3D viewer; each has its own chat with additional CAD context.

Decisions made & why

The big design decisions live in the v3.0 bible and the Q documents. This table summarizes the most-asked-about ones with the reasoning behind them.

Plan D for the feeder
2026-04-22 · bible §11.3-§11.4
Vibrating bin + lateral static chute that enters the drum cone. Plan D avoids the most dangerous geometry: a converging conical hopper full of wet fibrous sargasso. Variants A/B/C had critical tapers. Full review →
Vibration (not a conveyor belt)
~2026-04-21 · in-person meeting
The "guider ramp" concept was rejected because of jam risk. The Mar 6 toy-car test failed because the motor was too weak — not the idea. The original plan was to validate on a test rig before committing, but we decided to skip the rig and go straight to full scale. If vibration doesn't work in production, the fallback is a conveyor belt — buyable, no fab.
2 counter-rotating motors (Q1)
2026-04-23 · Feeder Q1
Q1 evaluated 5 options (A-E). Recommended A: counter-rotating pair, gives linear stroke → pushes material toward the cascade. Option E (1 motor) explicitly rejected because it gives a circular stroke → slower transport of fibrous material. Marco proposed going back to 1 motor because of sync risk; resolution: we start with 2, the sub-frame already supports both configurations, fallback is to remove 1 motor at commissioning if sync fails.
Drum 1100 × 4000 (not V1)
bible v3.0 §3
V2 = 1100 OD × 4000 mm (V1 was 700 × 2500). Target capacity 3,000-6,000 kg/h, RPM ceiling 24. V1's gasoline motor and chain are dead — V2 uses an electric gearmotor + VFD + belt.
316L screen panels, 4 mm baseline
bible §4
Modular 316L, 4 mm round holes. PU/rubber would be V3, not V2 — out of scope for June. Reason is timeline + cost.
Raceway band in 1045 + hardfacing
PRT-80001
120 mm × 720 OD / 700 ID, NOT a flat A36 bar. The hardfacing is because the band runs continuously against the rollers — A36 would wear too fast.
Lifters: A36 + bolted Hardox 450 bar
bible §6
Body in economical A36, but the face that touches the sargasso carries a removable Hardox 450 bar. When it wears you only swap the bar, not the whole lifter. Designed for a 100-unit fleet.
Caribbean = corrosion, not abrasion
bible §4 · Apr 7 field trip
The sand is CaCO₃ (Mohs 3-4), not SiO₂ (Mohs 7). This re-orients the whole material strategy: the #1 risk is salt corrosion, not wear. That's why the screen is 316L and why all exposed A36 carbon steel needs coating.
Drum↔feeder interface (Q17)
2026-04-26 · Q17
No intermediate ramp. The feeder's rectangular exit (700×300) enters 25 mm into the drum cone (Ø 900 ID), with an EPDM bristle skirt closing the 15 mm radial gap. This decouples the feeder vibration from the drum (which is rigidly aligned with the raceway band). The skirt is consumable, 1500 h life.
Common base for drum + feeder
2026-05-08 · Pablo voice
The feeder legs don't sit directly on sand. Drum frame and feeder frame both bolt to a common plate, the plate sits on the sand. Distributes load, solves the bearing capacity issue (loose sand 50-100 kPa), and solves tipping stability under asymmetric loader loads.

Customer constraints hotel requirements

No gasoline engines
Hotels · explicit
The hotels said unambiguously: no gasoline engines. Hence the electric drive + VFD. This also rules out diesel generators directly beside the equipment.
Quiet operation (to verify)
Hotels · implicit
"Ideally fairly quiet." We don't have a dB number yet. Pending: investigate the OLI vibration motors' noise level (typically 85-95 dBA @ 1 m) vs hotel limits (NOM-081 daytime 65 dBA, nighttime 55 dBA at the property line). If the hotels run the machine early (04:00-07:00 before guests), 55 dBA is a real constraint. Mitigations: enclosure (10-15 dBA reduction), distance, operating window.
Sargasso = regulated fishing resource in MX
SAGARPA · regulation
Sargasso is classified as a fishing resource. That regulates its handling: it can't be dumped freely, it requires reports and coordination with local authorities. The machine separates sand from the sargasso; the sand is clean residue that can return to the beach, the processed sargasso goes to its regulated destination.
No process water
Hotels · explicit
No water sprays — hotels don't want wastewater issues. Separation is 100% mechanical.

What's coated / protected

Information that doesn't always come through clearly in the fab-pack PDF or in SolidWorks.

Anti-corrosion coating
A36 exposed to salt
Typical marine C5-M system: SA 2.5 abrasive blast → 2 coats zinc-rich epoxy primer (~75 µm) → 2 coats polyurethane topcoat (~75 µm). Total ~150 µm, 7-10 year service life in coastal environment. Applied to all exposed A36: frame, bin walls, doublers, base plates.
Springs in 51CrV4 + zinc-rich epoxy
PRT-70003-S
Chrome-vanadium spring steel, shot-peened, coated with zinc-rich epoxy or HDG galvanized. Fatigue life 10⁷ cycles at 5-15% deflection.
Sand deflector in 304 SS
PRT-30070
304 stainless, 3 mm. No coating needed — CaCO₃ sand slides off without sticking and SS resists the salty environment.
316L drum screen panels
bible §4
Modular, bolted, interchangeable. 316L resists salts and chlorides better than 304. When a panel wears, only that one gets swapped — not the whole screen.
Guards / safety covers
bible §13.2 · deferred to V2.1
The full plan always included complete guards (metal enclosure over the vibration motors, tool-only removal, warning labels, LOTO-compatible hardware). For the June demo they are deferred to V2.1 — the demo unit operates with project staff only. Before external hotel deployment, guards become mandatory.

Open items before fabrication

Items needing a decision or analysis before Pedro cuts metal. Full prioritized list → · Engineering analysis for items 3, 4, 6, 11 →

Item 1 (feeder) · Q22 Option C — CLOSED 2026-05-11
Flexible neoprene trompa, 4 hollow walls, 200 × 710 × 250 mm outer with 700 × 240 mm inner opening (= Q17 chute). Boot procurement OEM-TRP-001 (industria del plástico, custom fab). Pedro only fabs the TR-PRT-30075 clamp band (A36 25×3 × 1920 mm + 19× M8 zinc). NO weld (neoprene can't be welded to steel). In RevN despiece + SLDPRT/STEP. Detail in RevN changes §2 →
Item 2 · Perforated bin floor — DECIDED 2026-05-11
Ø 10 mm staggered 60° (hexagonal close-pack), 14 mm pitch, 46.2% open area, edge distance ≥ 12 mm, 1 mm wear allowance (Pablo audit iter 3-5: was Ø 4 / pitch 6 in iter 1, upsized for anti-blinding — no brushes in the feeder). The drum screen stays Ø 4 (it has the brush). Perforated zone: the whole floor except a 100 mm perimeter border + 4 × 260×220 mm clear zones under each doubler. Fab: stock A36 perforated sheet (Cablofil MX or equiv) or plasma CNC. Specced in spec.py['bin']['perforated_floor'].
Items 3 + 4 · DECIDED 2026-05-09
Item 3: 2 extra crossmembers added to the sub-frame at x=810 and 1690 (floor_support_crossmember_x_centers_mm in spec.py). Reduces span 620 → 310 mm, SF 1.10 → 4.4. Clash check with motors pending in SW. Item 4: springs upgraded from k=50.27 → k=75.4 N/mm (spring_active_turns 6 → 4). Bump stops are now safety redundancy, not the first line. Cover-sheet rule pending (centered dump, bucket ≤ 0.5 m). Calculations →
Item 6 · Bump stops — CLOSED 2026-05-12 (WI 8 + dedicated despiece shipped)
SUB-PRT-30053 (bump stop bracket PTR 60×60×4 × 295 mm) now has its own dedicated WI 8 (Pablo audit iter 6, 2026-05-12 04:49). Doc WI-SAND02-12700-01-RevA. WI 8 covers 4 brackets fab + 40 mm gap verification + OEM poly stop spec (Misumi/Vibracon). Δ engagement = 40 mm; static clearance 53 mm; residual margin at engage = 13 mm. Bump stop does NOT engage in nominal slug (Δ=27.6 mm); DOES engage in asymmetric slug+DAF=2 (Δ=92.6 mm). Total cost ~MXN $5,600. Calculations →
Items 8 + 14 · Machine-Skid WI — DRAFT 2026-05-10 ready for review
Common lattice frame feeder + drum: 2 long rails A36 RHS 200×100×6 + 5 crossmembers 100×100×4 + 8 anchor pads 200×200×12. Footprint 6.5 × 1.6 m, mass ~480 kg. Static bearing pressure 57 kPa (vs sand allowable 50-100 kPa, vs the current feeder Ø115 pads at 360 kPa = 6× over allowable). Closes item 8 (feet on sand) and item 14 (tipping); the open lattice architecture also closes item 10 Q23 Option D (sand discharge with no plate slot). Full spec: Machine-Skid V1 (draft) →. 4 small decisions still pending from you (drum leg X positions, gussets, lifting, stake-downs).
Item 10 (feeder) · Q23 Option C — CLOSED 2026-05-11 (supersedes the Machine-Skid path)
Decision 2026-05-11 + iter 5 audit 2026-05-12: discharge direction change (not mechanism change). The deflector itself routes sand toward -X (loader side) via 15° Y-axis tilt + 100 mm side walls (Fork η final; iter 1 had 25°/200 mm, iter 5 had 17°/130 mm, Fork η further reduced to fit under the shortened legs). No longer depends on the Machine-Skid lattice. Machine-Skid V1 stays scoped for items 8/14 (foot bearing + tipping) but not for item 10. Detail in RevN changes §1 →
Item 10 (feeder) · Q23 Option C — CLOSED 2026-05-11
Tilt axis rotated X → Y. 2300 × 1000 × 3 mm 304 SS plate tilted 15° (+X up, -X down; Fork η 2026-05-12, was 17° pre-Fork-η) → sand drains toward the loader exit. 2 × 100 × 3 × 2300 mm 304 SS side walls (DEF-PRT-30072) contain the sand laterally → single pile at -X. 10 symmetric hanger tabs (lengths 611/530/450/369/289 mm) + 4 X-brace slots (2 rear + 2 front) cut in assembly. Replaces the Options A/B/B'/B''/D debate. Detail in RevN changes §1 →
Item 11 · DECIDED 2026-05-09 — upgrade PTR 50×50×3 → 60×60×4
Sub-frame tube spec updated in spec.py: "material": "A36 RHS, 60 × 60 × 4 mm". Section modulus doubles (8326 → 17,500 mm³), σ_range drops ~180 → ~85 MPa, FAT 71-90 with toe-grinding falls into multi-year life regime. FEA pending on the first built unit (not before fab) — required before the 100-unit fleet rollout. Calculations →
Item 12 · Weld nuts under vibration — CLOSED 2026-05-11
Fastener block declared in the RevN cover sheet + bible §11.4: Nord-Lock + Loctite 243 mandatory on critical weld nuts (4× M12 springs + 4× M16 motors + 19× M8 trompa clamp band). Re-torque schedule: 50 h commissioning + every 500 h. Continuous circumferential TIG on weld nuts. Same regime applies to the trompa (vibrating joint 25 Hz × 1.8e8 cycles/year, fatigue site). Anexo B §11.2 acceptance criterion: torque ≥ 90% of initial value at 50 h. Fork δ audit: prior criterion "≥ 80% after 1 hour" replaced with 50 h, which captures the critical settling period (1 hr = 90,000 cycles, not representative).
Item 13 · Feeder coating — DECIDED 2026-05-09
Full system declared in the master cover sheet (build_master_fab_pack_v7.py "General Notes"): for all exposed A36, coastal C5-M category (Playa del Carmen, Caribbean = CaCO₃ Mohs 3-4 → corrosion is threat #1, not abrasion) — SA 2.5 abrasive blast → 2 coats zinc-rich epoxy primer (~75 µm) → 2 coats polyurethane topcoat (~75 µm). Total ~150 µm, 7-10 year life. Hardox/AR400 wear plate in the loader impact zone: deferred to V2.1 (CaCO₃ Mohs 3-4 doesn't abrade A36 fast; add if field shows wear). Bin-floor corner drainage holes pending — add at the same time as the items 17-19 fix.
Item 16 · Hotel noise — CLOSED 2026-05-11 (Fork C → Fork δ-revised)
Engineering-driven decision: design target 82 dBA @ 1 m (Fork δ revised from 75 — the 75 required a 13 dB reduction that isn't achievable with VFD low-frequency + sub-frame damping without a dedicated enclosure; the realistic range is 5-9 dB reduction from the raw 88 dBA of the OLI MVE 800/3 motor). 20 m buffer + daytime ops 07:00-18:00 → NOM-081-SEMARNAT daytime compliance with a 9 dB margin (56 dBA estimated at the boundary vs the 65 dBA day limit). Night closed by daytime-only ops rule. V2.1 acoustic enclosure stays scoped but NOT in this pack — applies only if the site can't accommodate the 20 m buffer or needs night operation. No hotel outreach — the hotels don't have their own authoritative dB limits, NOM-081 is the reference. Detail in RevN changes §7 → · Original technical brief:

What the numbers are:
Tier 2 OLI MVE 800/3 motors at 25 Hz drive: typical sound level ~85-92 dBA @ 1 m (OLI datasheet ~88 dBA; the metal sub-frame slightly amplifies to 90-92).
Tier 1 NOM-081-SEMARNAT-1994 Mexico, residential-zone property-line limits:
  • Daytime (06:00-22:00): 55 dBA
  • Nighttime (22:00-06:00): 50 dBA
Hotels are typically stricter than NOM (paying customers, noise-sensitive).

Distance matters: noise drops 6 dB per doubling of distance. If the machine operates 50 m from the boundary (typical hotel back-of-house), the level at the boundary is ~88 − 6×log₂(50) = 88 − 34 = 54 dBA. RIGHT AT the daytime limit.

Available mitigations (each is a fork):
Sheet metal enclosure (with interior acoustic foam): −10 to −15 dBA. Cost MXN $20-40k/machine, +60 kg. Reduces to ~75-78 dBA @ 1 m. Compatible with §13.2 guards — same enclosure. Preferred fork if dB < 80.
Daytime-only operating window: limit operation to 06:00-22:00 (daytime only). Cost $0. Relaxes the constraint from 50 dBA to 55 dBA. But hotels operationally prefer cleaning at dawn (04:00-07:00).
Minimum distance to property line: ask the hotel to reserve 50 m (or more) of buffer between the machine and the boundary. Cost $0 but needs space.
VFD low-frequency mode: drop the drive from 25 Hz → 18 Hz, reducing the centrifugal force and noise. Cost $0 but throughput drops ~25%.

What to ask the hotels BEFORE June 9:
1. Specific dB limit at their property line (some hotels have limits < NOM, others follow NOM).
2. Permitted operating window for heavy equipment (can they operate 04:00-06:00 if needed?).
3. Available distance between the back-of-house (where the machine would sit) and the property line / guest areas.

If the answer is:
• Hotel accepts > 75 dBA + 06:00-22:00 window + 50 m distance → current V2 without enclosure.
• Hotel requires < 75 dBA → metal enclosure is a hard requirement (budget +MXN $30k/machine).
• Hotel requires 04:00-06:00 operation → enclosure mandatory + possibly VFD low-freq.

No hotel was contacted. Outreach is customer comms — goes through the draft → show → "send it" → send flow. Technical brief above exists so your message to the hotel has the correct framing.
Item 9 · Jack screws — CLOSED 2026-05-09
PRT-70015 is already specced in COMPONENT_INVENTORY.md: M20 jack screw + foot pad + spherical pivot OTS (MISUMI LSCB). The spherical pivot decouples lateral load → axial; M20 grade 8.8 axial yield ~207 kN vs ~3.7 kN actual per foot → SF >50×. Sinking in sand (50-100 kPa capacity vs Ø115 contact pressure 360 kPa) is solved by the common base (item 8) — with a 2 m² skid the pressure drops to ~7.5 kPa. No upsize needed. Doc-tightening pending: render the spherical pivot in the WI assembly view (Andru didn't see it in the original despiece).
Items 17-19 (Andru R2) — CLOSED · graphical closure 2026-05-11 (Fork ζ-β)
(17) PRT-30044 ↔ PRT-30010-P reconciled to PRT-30044 = 180×180×10 A36 in wi_parts_data.py + master cover (2026-05-08). (18) AWS weld callouts now graphical on ALL welded parts in the RevN despiece: ▲ symbol + size + side (B/I) + finish (G/TIG) with leader + bbox-framed label at each joint. 22 parts covered (frame 6, sub-frame 4, bin 6, deflector 3, X-bracing 2). Bolted parts (gussets, panel brackets, trompa clamp band) have no callout by design. (19) Per-hole X-Y dims now graphical: each hole shows its "(X, Y)" coordinate next to the circle, datum = lower-left corner. Full closure of Andru's observation that the cover-sheet general notes weren't enough — each despiece is now self-contained. Detail in RevN changes §6 →
Items T + U (Pablo Navarro audit) — CLOSED 2026-05-11 (Fork ε)
(T) Motor↔frame collision: sub-frame lifted 51.2 mm via 23.8 → 75 mm spacer plate under each lower spring cup. Motor-frame clearance goes from ~10 → 61 mm at rest / 21 mm at bump-stop max engagement. Bump stop bracket returns to the correct 295 mm (Fork δ had cut it to 244 mm because the sub-frame was un-lifted). (U) Leveling foot access: M20 + lateral 30 mm AF (across-flats) — horizontal wrench instead of inaccessible vertical socket. Install procedural rule: when installing the machine, retract the leveling feet 51 mm to keep the chute-cone height — the spacer-lift is geometric assembly only, must not propagate to the installed assembly. Detail in RevN changes §3 →

Downloads SAND02-V2-FEEDER-FAB-PACK-RevN (UPDATED 2026-05-12 iter 6)

RevN incorporates all 9 changes listed above + the iter 2-6 audit fixes: Q23 Option C deflector (17° Y-tilt, 130 mm side walls) + Q22 Option C 4-wall trompa + Pablo N Fork ε (sub-frame +51.2 mm) + PRT-30043 Fork B + Item 2 Ø10 perforated floor + items 18+19 AWS weld callouts + Item 16 82 dBA noise envelope + WI 8 dedicated bump stop instructions + post-package drift fixes + annotation overlap fixes.

SAND02-V2-FEEDER-FAB-PACK-RevN.zip
6.0 MB · PDF 54 pp / 3.6 MB (RevN cover + 8 WIs incl. WI 7 trompa clamp band + WI 8 bump stops + 22 despiece pieces with AWS weld callouts + per-hole X-Y dims) + 9 SLDPRTs (deflector, trompa, bin, sub-frame, bump stops, spring stack regenerated 2026-05-12) + 9 STEPs (incl. refreshed feeder_assembly_combined) + full SLDASM (7 components) + LEEME · Generated 2026-05-12
shipped to Pablo (Telegram msg 817) · vendor review pending
SAND02-V2-FEEDER-FAB-PACK-RevM.zip
5.19 MB · historical · superseded by RevN
superseded
SAND02-V2-FEEDER-FAB-PACK-RevL.zip
5.4 MB · historical · superseded by RevM/RevN
superseded
Bible v3.0 — authoritative source
RUBISCO2_Full_Updated_Final_Bible_v3_0.md · any conflict between PDF / SW / memory, the bible wins
private repo
Q-Drum Design Space Map
Q1-Q21 with the reasoning behind each decision
docs/v2/Q_DRUM_DESIGN_SPACE_MAP.md
Q22 — Chute Extension into Drum
5 options for item 1 (chute → drum). Recommendation: Option C (flexible trompa).
PDF →
Q23 — Sand Discharge Geometry
5 options for item 10 (sand discharge). Decision: Option C (15° Y-tilt + 100 mm side walls + 4 brace slots, Fork η 2026-05-12 final).
PDF →

For access to repository files or Drive direct links, contact Pablo (pablo.gonzalez@spark-automations.com).

Team

Pablo González Acosta
design lead
Project lead. Spark Automations is the design contract. pablo.gonzalez@spark-automations.com
Pedro
fabrication · Lab Co. Tlaquepaque, GDL
Rig fabricator. NDA signed. Receives the RevN fab pack.
Marco
mechanical input
Brings the fabrication perspective. Recent flag: prefers 1 motor because of sync risk (item 7 — Fork C resolves).
Andi (Andru)
design review
19-point design review (Doc + WhatsApp R2). See the review page.
Eduardo Mon
motors
OLI MVE 800/3 quoted USD $4,870/motor.
Catalina
coordination
Mentioned in the intro video.

Timeline & milestones

2026-03-06
toy-car test
First vibration-as-transport test. Failed because of a weak motor — not because of the concept.
2026-04-06/07
PdC field trip
V1 tested in Playa del Carmen. Confirmed: the sand is CaCO₃ (not SiO₂). Re-orients the material strategy.
2026-04-21
test rig spec
Test bench design to validate scaled vibration (OLI MVE, 54 data points). Later cancelled — decision to go straight to full scale.
2026-04-22
bible v3.0
Plan D becomes canonical for the feeder. V2 specs locked: 1100×4000 drum, 24 RPM hard limit, 3-6 t/h.
2026-04-26
Q17 locked
Drum↔feeder interface: EPDM bristle skirt. No intermediate ramp.
2026-05-07
RevL delivered
SAND02-V2-FEEDER-FAB-PACK-RevL.zip to Pedro and Marco. PDF 46 pp + SLDPRTs + STEPs + assembly.
2026-05-08
team review
Andi, Marco and Andru review. 19 items enter the pre-fab gate. See the full review →
2026-05-09
RevM
Sub-frame PTR 60×60×4 + extra crossmembers + springs k=75.4 + bump stops + Plan D cascades. PDF 48 pp.
2026-05-11
RevN evening · zip to Pablo
8 changes vs RevM: Q23 Option C deflector + Q22 Option C final trompa + Pablo N Fork ε spacer-lift + PRT-30043 Fork B + Item 2 perforated floor + items 18+19 weld callouts + Item 16 82 dBA envelope + audit drift fixes. PDF 51 pp / 3.5 MB. Tests 95/95 green. Telegram msg 778.
2026-05-12 iter 2-6
audit fixes + WI 8 + hub English
Visual + cadquery solid-intersect audit drives 5 iterations of geometry refinements (deflector tilt 25→17°, side walls 200→130, trompa lifted + sleeve_back removed, clamp band visualized, perforation Ø4→Ø10, X-brace slots recomputed). WI 8 dedicated to bump stops added. Annotation overlap fixes. Hub translated to English. PDF 54 pp / 3.6 MB. Tests 99/99 green. Total clash audit 113k → 2.4k mm³.
2026-05-31
Annex B
Acceptance criteria signed. Physical prototype acceptance.
2026-06-09
hotels demo
Hotels presentation. Hard deadline.
Ask Spark read only
Leyendo la biblia…
0s