Skip to content

Latest commit

 

History

History
46 lines (29 loc) · 2.86 KB

File metadata and controls

46 lines (29 loc) · 2.86 KB

Handoff — Row follow (bottles as crop) for the farm weeding story

Copy-paste everything under Prompt into a new chat to continue.

Do not resume occupancy mapping as a product. GY-521 is on Marco (robots/so101/docs/IMU.md); the Map tab is still paused. Postmortem: robots/so101/docs/MAPPING_POSTMORTEM.md. Prior art: docs/research/WEEDING_PRIOR_ART.md.


Prompt

You are continuing Marco-Dora on Marco (Pi 5 LeBot @ 192.168.1.140). Dora-first, one OAK-D process, no ROS. Wheels LOCKED (docs/DRIVE_CAL.md) — do not recail. Mapping / named-place go-to from occupancy is out of scope.

Goal

Show the weeding mobility loop LiteWeed/OWL actually use: stay in a row using **what is in the camera now, not a stored map.

Indoor stand-in: two parallel lines of bottles (YOLO bottle is already on the OAK allow-list) as crop rows. Marco drives the furrow. Phone AR shows left-row / right-row / “in row.”

This is the farm story: detect crop plants (later: green-on-green / OWL hybrid), keep the base between them, stop-and-align for an effector later. Stereo is for range to the plants in this frame, not for painting a hallway.

What already exists

  • Heading-balance wall avoid: depth just left vs right of image center (WALL_AVOID.md). Two bottle rows might already center Marco if they show up as near sides — try this first at ~8–10 cm/s before writing a new FSM.
  • Object-cone avoid (AVOID_*): yaws away from COCO objects. Rows need the opposite: stay between two clusters, not flee one bottle.
  • AR detection arrows + OAK JPEG tab.
  • Graph: tank_wall_avoid_local.yml (YOLO on). Hallway marker graph is not this demo.

Do this in order

  1. Rsync robots/so101 to Marco. dora-so101.service inactive. One OAK.
  2. Set two bottle rows on the floor, gap a bit wider than Marco (~40–50 cm furrow to start). 4–6 bottles per side, ~30 cm along-track.
  3. Sit-still: DRY_RUN=1 wall-avoid graph, OAK tab — confirm bottles detect with depth.
  4. Live: slow cruise down the furrow. If heading-balance already stays centered, film that and add AR labels (“left crop / right crop”).
  5. If it hugs one side or sees bottles as obstacles (AVOID_BOTTLE): add a row corridor mode — split detections by image bearing, yaw to equalize left vs right range/bearing; ignore object-cone flee for bottle while in this mode.
  6. Stretch: end of row (no bottles / far depth) → stop. Later: OWL ExHSV on wrist for green plants.

Constraints

  • Browser never writes cmd_vel. STOP is software-only.
  • Do not start a second DepthAI process.
  • Do not treat occupancy /map as part of this demo.
  • Do not recail wheels.

Success

Video: Marco creeps between two bottle rows without knocking them, AR shows the two sides. Pitch line: same loop as a weeder between crop — no map required.