by Fritzoid » Wed Mar 31, 2010 2:24 pm
by Fritzoid
Wed Mar 31, 2010 2:24 pm
I'm trying to extract position feedback data from the 18 dynamixels connected to my CM-510 (Bioloid Premium kit).
At 1Mb, you can clock out the 8 bytes of a read packet in 72us and receive 8 bytes back in another 72us. However, the typical dynamixel is setup to pause for 500us between receiving the packet and transmitting the response. Robotis says that the return delay time can be set as low as 1us. A setting this low could easily improve throughput by a factor of 4. Thus the controller could read the position data from 50 or more servos within the firmware heartbeat of 7.8125 ms.
Presumably some delay is necessary to assure that the controller firmware can turn the line around after transmission completes, but 1/2 millisecond just seems excessive to me.
I'm wondering if anybody in this forum has experience running AX-12's with a smaller delay time setting. Is there a reason why the default delay time is set so ridiculously high?
I'm trying to extract position feedback data from the 18 dynamixels connected to my CM-510 (Bioloid Premium kit).
At 1Mb, you can clock out the 8 bytes of a read packet in 72us and receive 8 bytes back in another 72us. However, the typical dynamixel is setup to pause for 500us between receiving the packet and transmitting the response. Robotis says that the return delay time can be set as low as 1us. A setting this low could easily improve throughput by a factor of 4. Thus the controller could read the position data from 50 or more servos within the firmware heartbeat of 7.8125 ms.
Presumably some delay is necessary to assure that the controller firmware can turn the line around after transmission completes, but 1/2 millisecond just seems excessive to me.
I'm wondering if anybody in this forum has experience running AX-12's with a smaller delay time setting. Is there a reason why the default delay time is set so ridiculously high?