Analysis of Robotis Dynamixel AX-12+ Actuator Latencies
By: James Andrew Smith and Jamil Jivraj
Abstract The Dynamixel series of actuators is popular in the development of robots around the world. Their popularity is due to wide availability, modularity, small size, light weight, generally good performance and simple communication standard (approximately RS485). While the manufacturer provides a number of important specifications for these motors, latency is not one of them. It was found that the minimum latency inherent in these actuators is 17.4 ms and the highest value was
50.2 ms. This document provides the first extensive examination of latency inherent in the Dynamixel motors that the authors are aware of.
As part of the design of a variable pedality quadruped robot, GARP-4, (see Fig. 1) Dynamixel AX-12+ actuators were chosen to drive the hip joints due to their wide availability, modularity, small size, light weight, generally good performance and simple communication standard (approximately RS485). While the Dynamixel motors are used in many general robotics as well as legged locomotion projects (e.g. , , ) many of their basic characteristics are unpublished. At Ryerson University, we have been engaged in determining latency characteristics of these motors in a bid to determine if they are suitable for medium to high performance legged locomotion research. The tests performed were on the Dynamixel AX-12+ servo motors, included in the Robotis Bioloid Beginner Robot Kit.
James Andrew Smith
Ryerson University, Toronto, Canada, e-mail: firstname.lastname@example.org
Ryerson University, Toronto, Canada, e-mail: email@example.com
James Andrew Smith and Jamil Jivraj
The Dynamixel actuator receives digital commands of a serial nature. When the mo- tor receives a command signal it processes it and sends a status signal back to the device which commanded it. The TTL-approximation of RS485 requires the use of hardware capable of voltage level conversion between the command unit (usually a PC equipped with a USB port and USB-RS232 converter) and the AX-12+ motor. In initial tests, the response of the AX-12+ motor was qualitatively described as “slug- gish”. This led to questions regarding the latency between the reception of a motor movement command and the actual actuation at the output shaft of the AX-12+ (in- troduction of additional latency by the host computer’s operating system and the USB communication system would also have to be examined or eliminated). This document provides the first extensive examination of latency inherent in the AX- 12+ motors that the authors are aware of. With further tests of the other Dynamixel products, better designs specifications will result.
Two types of latency were observed over the course of the experiments: electri- cal and mechanical latencies. The methodology for determining both of these is described below. In both sets of trials, a set of commanded desired velocities and positions (GO [POSITION] [SPEED]) are sent to the Robotis Dynamixel AX-12+ motors via the Robotis CM-5 controller. The commands are generated by an oper- ator using a terminal program on a personal computer host, which send the signals over Universal Serial Bus (USB) to a USB-to-RS232 converter. The RS232 signal is interpreted by the CM-5 and subsequently transmitted to the Dynamixel AX-12+ motor at a baud rate of 1 Mbps and 5v TTL voltage levels.
The first signal monitored was the communication packets between the CM5 con- troller and the motor This signal, which ignores any latencies in the operators com- puter, the USB signal generation or the processing by the CM-5, was monitored with a digital Tektronix oscilloscope. The combined command, wait and status packets last approximately 0.12 ms. The second monitored signal involved a shunt resistor connected to the power input of the motor, combined with a differential amplifier.
Fig. 1 The GARP-4 robot. Its hips are driven by Robotis Dynamixel AX-12+ actuators (photo credit: Luis Fernan- des).
Analysis of Robotis Dynamixel AX-12+ Actuator Latencies 3
The differential amplifier was configured across the resistor to monitor (using the oscilloscope) the current into the AX-12+ motor.
The last signal monitored by the oscilloscope was a switchable 10volt contact made by a mechanical arm attached to the motor and an aluminum bar below it.To determine the “electrical latency” of the motor, tests were performed in which the timing between the end of the command packet and the increase in motor current was determined. In the “electrical latency” set of trials, the time between the end of the combined serial communication packets (command, pause and status packets, between the CM5 and Dynamixel AX-12+) and the initial inrush of current into the motor was then timed.
To determine “mechanical latency”, the motor was commanded to turn such that contact between these two conductors would be broken. The time between the end of the command packet and the loss of contact in the switch formed at the end of the motors arm was recorded. This second “mechanical latency” test is preferred over the electrical latency test since it represents the true time taken to get the motor to move noticeably. This is an important factor when using the motor to drive a limb on a robot, for instance.
The electrical latency result for the Dynamixel AX-12+ motor was found to be con- sistently 8ms. This corresponds to the end of the command packet and the beginning of current inrush to the AX-12+ motor. The “mechanical latency” results for the 187 trials of the Dynamixel motor are displayed below, in Fig. 2. This corresponds to the time between the end of the command packet from the CM-5 and the loss of contact of the switch at the end of the motor arm. It includes the 8ms latency between the end of the data packet and the beginning of the current inrush. The smallest mechan- ical latency value found was 17.4 ms. The highest value was 50.2 ms. In general, for all but the smallest position commands, the smallest latency values were found when speed commands were the highest. This is illustrated in Fig. 2.
Fig. 2 Mechanical Latency of the Dynamixel AX-12+ for various speed and position commands.
4 James Andrew Smith and Jamil Jivraj
The results of these experiments indicate that the motor has a relatively high latency. Ignoring any latency in the issuing of the original command packet from a PC or em- bedded system on board a robot, it will take at least 17ms from command reception to initial motion of the motor shaft. Importantly, depending on which speed and position command is given the latency will vary from 17.4ms up to 50.2ms.
An important question remains as to why the latency results are so variable. As- suming that the motor uses a PD controller for regulating position, low desired an- gles and angular velocity commands would result in low desired shaft torque. In turn, this reduces the desired shaft acceleration, increasing the amount of time for the shaft to turn an appreciable amount. Perhaps this, coupled with nonlinearities like stiction is what causes the rapid increase in measurable mechanical latency. It should be noted that the initial rise in current (8ms) was the same for all trials, except when the current was so low that it was buried in the noise floor of the voltage across the shunt resistor. It is the opinion of the authors that the actuators are useable at the latency levels described above, but only in lower-speed walking gaits (perhaps un- der 0.5 m/s) where quick reactions are unnecessary. Testing other Dynamixel series motors is necessary to determine if they display the same latencies.
From these results it is clear that there is non-negligible latency in the Dynamixel AX-12+ actuators. In robot walking applications 17 ms is acceptable but the latency may not be sufficient at higher locomotion rates.
Acknowledgements The authors would like to thank Murtaza Dohadwala and Timothy Dalan for their contributions to gathering of data related to this work. Also, the research leading to these results was conducted with financial support from Ryerson University and was pursued in the context of the European Community’s Seventh Framework Programme FP7/2007-2013 - Future Emerging Technologies, Embodied Intelligence, under grant agrement no. 231688.
Ward, J. (2010) The Loneliest Humanoid in America. Popular Science August:38-45.
Anonymous (2010) Learning to Walk for the Sake of Science: Humanoid research robot Myon unveiled for the first time. In RoboticsTrends.com (Article Promo test - Robotics Business Review learning_to_walk_for_the_sake_of_science Cited 30 July, 2010)
Kang, X. and Shen, W. and Chen, W. and Wang, J. (2009) The control of Dynamixel RX-28
based on VC++ for locomotion of cockroach robot. In: Proceedings of the 4th IEEE Confer- ence on Industrial Electronics and Applications, Xi’an China, May 2009, pp 495-9.
*ALL CREDIT AND PUBLICATION IS PROVIDED BY JAMIL JIVRAJ and JAMES ANDREW SMITH