
2008-01-26 05:05:00
I just want to add in case it was missed, although the previous official response is recommending using a series of command updates to produce smooth motion, the AX-12 does have a "move at speed" function as requested by the original poster — just set both the position and max speed registers.
It simply means you need to supply the speed (= abs(tgtPos-curPos) / timeToMove ) as opposed to providing the timeToMove directly.
However, as for the official response, I'm not sure why Robotis prefers using max speed (speed=0)... won't this result in jerky motion if the control program misses sending an update or sends them irregularly? (for instance is trying to calculate something else while in motion). Why not supply both a series of position commands as well as an expected speed value so it stays smooth if there's irregularity in updates?
I'm guessing the speed parameter is implemented by controlling a maximum motor voltage rather than having the dynamixel compute a series of target positions over time internally (otherwise there wouldn't be any advantage to having the control program send updated positions to handle varying loads during motion). If true, this has implications regarding use of speed control (e.g. resulting physical speeds will vary with input voltage...)
-ethan