You can find how to build it on the RepRap wiki here.
Its bad point is:
- It overshoots and oscillates about the final set position when set to move at high speeds. Though this settles quickly.
Its good points are:
- It's cheap,
- It gives high torque for low (100mA) current, and
- It's accurate (256 steps per revolution).
I don't think it's quite ready yet to take the position of a stepper motor, but it may well be possible to make it good enough just by improving the control algorithm in the PIC - that is, with no hardware modifications.
It is certainly a good way of driving general devices with rotary feedback, and (I have yet to try this) it should allow rotation speeds to be precisely set and not to change with load.
Wow! You timed that perfectly! My DC motors and encoders both are due to arrive today! :-D
ReplyDeleteLooks like running two of these in tandem is going to be tricky! :-)
ReplyDeleteI'm beginning to think that using a PIC to control two of these via one of the ports rather than the serial loop is going to be the way to go.
Yes - I seem to remember we had a debate about this a while ago: whether to drive all three axes with one PIC, or to have one PIC per axis. But I also seem to remember Simon got the latter working with steppers nicely at 19200 baud, so there's no reason in principle why one couldn't do the same with this servo.
ReplyDeleteThis comment has been removed by a blog administrator.
ReplyDeleteWe've allowed for a sync line to make life easier.
ReplyDeleteVik :v)
Um... actually, I am looking to use one PIC to drive each motor/encoder ensemble and then use a pic to manage the two of those that power one axis.
ReplyDeleteGodzilla's z-axis (horizontal) and y-axis (vertical) use two motors while its x-axis uses one. The pic that manages the two PIC/motor/encoders that drive one axis would be hooked to the token ring.
I suspect that keeping two motors moving at very much the same speed and clicking through the same positional milestones within spec is going to be a bit trickier than a serial loop will allow for. Could be wrong, mind. :-)