
PID motor control with an Arduino
3 years ago
I took apart a bunch of ink jet printers to experiment with. This is my first attempt at doing PID motor control using an Arduino and the Adafruit motor controller.
FLV
00:03:42
1 Related collection
| Date | Plays | Likes | Comments |
|---|---|---|---|
| Totals | 23.4K | 11 | 10 |
| Feb 15th | 5 | 0 | 0 |
| Feb 14th | 7 | 0 | 0 |
| Feb 13th | 13 | 0 | 0 |
| Feb 12th | 15 | 0 | 0 |
| Feb 11th | 22 | 0 | 0 |
| Feb 10th | 14 | 0 | 0 |
| Feb 9th | 27 | 0 | 0 |
Check out these lessons to learn more about how you can make videos like this one!
-
Vimeo: About / Blog / Developers / Jobs /
Community Guidelines /
Help Center / Video School / Music Store / Site Map
/ Vimeo
or
-
Legal: TM + ©2012 Vimeo, LLC. All rights reserved. / Terms of Service / Privacy Statement / Copyright

Prev week
Dan.
I have discovered that (at least in my neighborhood) printers happen. I see them on the side of the road constantly. If you have a good use for the parts they are like found money.
Besides, taking things apart is fun in and of its self.
Very cool. Are you thinking miniature CNC? How much bandwidth do you have left in the Arduino, could you watch 2 more encoders and control 2 more motors???
Bill
I am working on some basic stuff to teach in my upcoming Arduino class. As for future plans I think we will just have to wait and see...
This looks pretty awesome. I've often taken these printers apart and fantasized about using the steppers in them. This looks like you've gotten out of using steppers by using the optical encoders.
As for CNC, why not try something like a CNC laser burner using a dvd burner diode. You could control the laser back and forth, and then move a table or tray using the radial wheel. That would allow you to do etching on a variety of materials, and you wouldn't have to worry about being able to exert force with the motors which you would have to with a mechanical cnc.
The steppers are pretty easy to control with an Arduino as well.
I don't have a video of it here, but there is one in my flickr stream (flickr.com/photos/mrigneous/2958308791/).
I have been thinking about CNC for a while, but as you say, I doubt these motors would give me enough torque to do much.
I like the idea of DIY laser etching, but I will hold out until I can afford a CO2 machine. Even the blue-ray diodes don't really have enough power output to do much, and they are fairly difficult to drive at high outputs without destroying them.
cheers
a
this is great fun!
i know its a while since you posted this but i have a question if you dont mind.
would this work out of the box or did you do any programming?
thanks
simon
thanks
The short answer is that this uses a quadrature encoded for sensing the wheel position. The pot is just for input to indicate a relative amount to turn.
I have a pretty complete write up on my blog here abigmagnet.blogspot.com/search/label/PID
Things have progressed in the 2 years since I did this, and there are probably better Arduino PID libraries now. You should look into those instead of the code I hacked together.