final project -- about me -- weekly assignments -- fab academy
How It Will Move
What will move
Moving components from one place to another is mostly a mechanical question. That is the part, though, that I will not tackle here. I will, at a later stage, of course. But the mechanics I want to use are simple, more or less proven and quick to acquire, so I will tackle them when I have brought some more pressing issues on their ways. The electronics need PCBs, and those PCBs will take time to have made even after I have drawn them. So, mechanics get to wait until those PCBs are on the way.
Architecture of a Machine
Most of the work in this project will (hopefully) go into controlling how stuff moves - I don't want to use a simple, readily available stepper system, and I don't want to build anything based on steppers. I do want to work on my own servo drives, though. Mostly because I'm interested in control loops, but also because moving smoothly and quietly is cool.
I built a really tiny motor driver board to go into a cheap RC servo some time ago (in 2015, looking at the design files) and used it in the Output Devices Assignment, but that board had a crippling design flaw limiting motor power to basically nothing. So while it was fun (and not very quiet), I never used it for anything or made any more software for it.
I will re-use that idea for the placer, using small (and a lot smoother running) geared motors instead of the noisy servos. The microcontroller will be the same, but I will use a far smaller and simpler motor driver to save on time since the small motors are rated for far less current than the one in the servos was run at. That "intelligent" motor driver board will talk CAN bus (I want to learn using it for another reverse engineering project, no time like the present...), and they will use a magnetic encoder that seems to currently be used by heaps of mass-produced moving tech and has cool specs.
To switch stuff like vacuum and working lights, I will also need a board that listens to CAN, and has some I/O broken out. That should be easy enough to make, and will probably share a lot of parts (and, more importantly, code for stuff like CAN) with the motor driver board.
To keep everything together (and where I want it) I also need a kind of brain. Since most of this brain's work will be synchronizing stuff I don't want to use any kind of PC-like hardware here, as I/O through
Controlling a Motor
To control a geared DC motor, I don't really need all that much. I need to drive the motor, of course, so there's an H-Bridge. I also need to know how far and how fast it has gone, so there in an Angle Sensor that will be put onto the pulley. I also should have some way to initialize the system, and stop it in case it wants to run where it doesn't belong, so a pair of End Stops can be plugged in. Finally, I need some way to talk to the outside world, to know what to do (and when to do it), so there is a CAN-Interface. I also added a bunch of status LEDs, mainly for debugging code on the boards, but also to see who is complaining when stuff goes wrong.
There is a lot of design notes in the schematic, as well as the BOM for the board. I haven't done the layout yet, I want to finish the other schematics first so I can order parts. I've run into stuff becoming unavailable way too often to really trust in next-day delivery.
final project -- about me -- weekly assignments -- fab academy