Перейти к содержимому

A Line Follower That Can See — minirobo #10

onshoulders

0:00 / 0:00

A Line Follower That Can See — minirobo #10

54 просмотра · 17 часов назад
onshoulders
12,3 тыс. подписчиков
54 просмотра · 17 часов назад
I wanted a project that needed a camera, and following a line felt just realistic enough that it might actually work. This is Blaze: an ESP32-S3 with an OV3660 camera for eyes, a minicore for a brain, and treads instead of wheels. The camera board has two cores, so one of them looks at the floor and works out where the line is, and the other streams that analysis out to a recorder. That is why you can watch what the robot sees — the scan rows, the confidence number, the moment it decides it is in a corner — instead of just watching a robot drive. Following a line is easy when the line is straight. So I taped a course with corners as sharp as 131 degrees and pointed him at it. What's in this episode Starting from prior art — the minicore gives you a brain, a driver and motors, so the only new problem is the camera Why the ESP32-S3 CAM, and what having two cores actually buys you What the robot sees: the detector's own view, live Why UART between the two boards, and not something cleverer Why treads Three courses, hardest last: an oval, a figure-8 that crosses its own line, and a zigzag with four sharp corners Why a robot like this can be simulated at all — and why roughly a thousand simulated runs happened for every real one Everything is free and open — the OpenSCAD for every printed part, the firmware for both boards, and the course sheets you can tape out on your own floor. https://minirobo.io --------------------------- Chapters 0:00 A line follower, and why 0:26 Design decisions — start from prior art 0:43 The new bit: an ESP32-S3 camera 1:08 How the two boards talk 1:22 Why treads 1:33 A course with extreme angles 1:46 Meet Blaze 1:57 Assembly 2:12 Oval 2:47 Infinity 3:26 Zigzag, and the 131 degree corner 4:07 Why this robot can be simulated 4:36 A full run, in simulation 5:19 See you next time --------------------------- Parts used (affiliate) ESP32-S3 CAM Dev Kit with OV3660 camera — https://amzn.to/469SPgb Jumper wires (the UART pair plus a shared ground) — https://amzn.to/4gD4JoV ESP32-C3 SuperMini (14-pin) — https://amzn.to/3RYS9qi DRV8833 motor driver — https://amzn.to/4uWoZXt Boost Converter Module (set to 5V) — https://amzn.to/4gLbt3X 470µF electrolytic capacitor, 10V or higher — https://amzn.to/4bW3EFW 2.54mm female header strips (for the module sockets) — https://amzn.to/4bpj7y7 N20 gear motors ×2 (pick your RPM) — https://amzn.to/3QqAYNN 1S LiPo cell with protection, 300-500mAh + JST — https://amzn.to/4pUDMQx SS12D00G slide switch, 3mm handle (inline in the battery lead) — https://amzn.to/3RNRx7e M2 self-tapping screws (6mm) — https://amzn.to/4xpkNQR Soldering iron + solder — https://amzn.to/4pUFwt3 The 3D printer I use — Original Prusa MK4S — https://amzn.to/4wRBe8m (As an affiliate I earn from qualifying purchases — costs you nothing, supports the channel) Printed parts The chassis, the treads, the sprockets, the idlers, the axle pins, the lid and the camera mast are all OpenSCAD, and all free. The tread band prints as a plain 240mm circle rather than flat — TPU remembers the shape it was printed in, so uniform curvature rolls, and a remembered straight fights the wrap. The sprocket teeth are radial slabs running the full width of the groove. The course The zigzag is six legs and four sharp corners in a 55 × 36 inch tape envelope, every vertex lands on a whole inch, so you measure X across and Y up from one datum corner rather than chaining protractor angles round a loop. The sheet is on the site. The sharpest corner is 131 degrees, at vertex F. https://minirobo.io — every design in this build, free.