<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
<link rel="self" type="application/atom+xml" href="http://forum.robosavvy.com/feed.php?f=5&amp;t=3363" />

<title>RoboSavvy Forum</title>
<subtitle>Robosavvy Forum: The largest online community of Humanoid Robot Builders</subtitle>
<link href="http://forum.robosavvy.com/index.php" />
<updated>2009-10-27T17:10:53+01:00</updated>

<author><name><![CDATA[RoboSavvy Forum]]></name></author>
<id>http://forum.robosavvy.com/feed.php?f=5&amp;t=3363</id>
<entry>
<author><name><![CDATA[shervin.emami]]></name></author>
<updated>2009-10-27T17:10:53+01:00</updated>
<published>2009-10-27T17:10:53+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=22507#p22507</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=22507#p22507"/>
<title type="html"><![CDATA[AX-12 Measures]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=22507#p22507"><![CDATA[
Those are interesting results, because according to the manufacturer's comment (<a href="http://www.robotis.com/zbxe/28424" class="postlink">http://www.robotis.com/zbxe/28424</a>), the Torque measurement or &quot;Present Load&quot; value is not measured from torque or current, but is simply related to the difference between current position and goal position!<br /><br />Also, according to a research study by Ethan Tira-Thompson (<a href="http://www.shervinemami.co.cc/dynamixel_study_by_ett.pdf" class="postlink">http://www.shervinemami.co.cc/dynamixel_study_by_ett.pdf</a>), Dynamixel motors return the motor position within about half a degree of error and at the full communication speed, but motor speed and &quot;Present Load&quot; torque readings only update every 130ms (just 7 times per second!) and aren't nearly as accurate (roughly 10% error and have dead-zones). Notice that on the final page of the report, Ethan mentions that they have been able to trick the controller into reading 3 sensor values within a single 16ms cycle (therefore running 20 motors at roughly 8 frames per second instead of 3).<br /><br />(I've got a bit more info on my Dynamixels at my website <a href="http://www.shervinemami.co.cc/" class="postlink">http://www.shervinemami.co.cc/</a>)<br /><br />Cheers,<br />Shervin.<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=1733">shervin.emami</a> — Tue Oct 27, 2009 5:10 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[tah1]]></name></author>
<updated>2009-06-17T11:54:44+01:00</updated>
<published>2009-06-17T11:54:44+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=20231#p20231</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=20231#p20231"/>
<title type="html"><![CDATA[Re: Bioloid - Load data reported by servo]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=20231#p20231"><![CDATA[
<blockquote><div><cite>tah1 wrote:</cite><br />in response to quote below from Stuart...<br />Instead you may wish to consider the difference between the goal position and the achieved position.  This is probably a better and more useful start.<br />...<br />t<br /></div></blockquote><br /><br />Lest you think that the simple linear equations given above tell the whole story - they don't! - I include here a couple of graphs of some of the directly measured data - study carefully before using the linearised formulae - reality is quite complicated.<br /><br /><img src="http://robosavvy.com/Builders/tah1/AX12_Dynamic_Torque_vs_Load_and_Current.jpg" alt="Image" /><br /><br /><img src="http://robosavvy.com/Builders/tah1/AX12_Load_vs_Static_Holding_Torque_and_Current.jpg" alt="Image" /><br />t<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=1424">tah1</a> — Wed Jun 17, 2009 11:54 am</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[tah1]]></name></author>
<updated>2009-06-17T12:47:44+01:00</updated>
<published>2009-06-17T10:43:46+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=20230#p20230</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=20230#p20230"/>
<title type="html"><![CDATA[Bioloid - Load data reported by servo]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=20230#p20230"><![CDATA[
<blockquote><div><cite>StuartL wrote:</cite><br />The torque question has definitely come up before... In short: To my knowledge noone has decoded what it means in the real world and the accuracy/quantisation of the torque figures make it almost unusable.<br /><br />Instead you may wish to consider the difference between the goal position and the achieved position.  This is probably a better and more useful start.<br /></div></blockquote><br /><br /><br />We have been doing some tests and measurements on the Bioloid AX12 related to the PRESENT LOAD data it stores in addresses 40-41 ($28-$29).<br /><br />Our findings are as follows:<br /><br />1) There is a threshold of motor current, below which the AX12 reports &quot;Load&quot; as zero. This threshold is ~110 to 120mA (including the static standby current of the servo).<br /><br />2) The &quot;Load&quot; data are highly quantised. Although this is a 10bit number, the 10bit results posted in this  address are always multiples of 32; i.e. the low 5 sig bits are always zero. So the result is really only a 5-bit result.<br /><br />3) The &quot;Load&quot; data are directly related to measurements of motor current, and somewhat indirectly to servo output-torque. In particular, for a given motor current, there is a large difference between:<br />   a) the quasi-static HOLDING torque of the system (i.e. the current needed to approx. maintain an output shaft position against an externally applied torque, or load), and...<br />   b) the DYNAMIC DRIVING torque (i.e. how much torque the servo can apply to an external load to achieve a NEW position against an external load).<br /><br />4)  We have done measurements of both types, using a 0.5% accuracy force meter. <br />For the Static Position tests (holding torques, where we park the servo at a given position and then apply various torque loads by moving the attached force meter)) we measure a (quantised - see above) relation between &quot;Load&quot; value L (i.e. the value in address $28-$29), and static holding torque T [kg.cm] as follows:<br />   L = 35.5T +7<br />and in this same mode, the relationship between the total servo current I [amps] and static holding torque T is:<br />   I = 0.0125T+0.085<br /><br />So for example holding position against an external load of 17N applied to the end of a 52mm servo arm (=&gt; T=  17*5.2/9.81 = 8.98 [kg.cm]) will produce a (measured) Load reading from the servo of <span style="font-weight: bold">320</span>. Similarly, this requires a (measured) holding current of I = 0.2A (the formula above which is also subject to heavy quantisation, gives a result of 0.197)<br /><br />For the Dynamic Torque situation (where we drive the servo towards a desired position in opposition to the load of the stationary force meter), the results are quite different. The quantisation of the Load readings, together with the significant hysteresis of the servo, produce a Torque T [kg.cm] result as follows:<br />   T = 0.0074L + 0.323<br />Here we are <span style="font-weight: bold">setting </span>position, and <span style="font-weight: bold">measuring </span>torque so the equation is expressed differently, but were the servos linear and had zero hysteresis, the slopes in each equation would be the inverse of each other. However 1/0.0074 = 135.1 which is VERY different from the slope of the first equation (35.5). So one needs to use the appropriate formula to match the load/drive situation appropriately. It's likely that gearbox friction, motor-cogging, and backlash in the gear train contribute greatly to these differences, but I believe there is much that could be done with the internal control algorithm of the AX12 to reduce this huge discrepancy).<br />The relation between servo current I [amps] and Load L in the dynamic case is:<br />  I = 0.0007L + 0.027 <br />(the correlation coefficient in this case is ~0.93 so within the limits of quantisation, this is a reasonably linear relationship)<br /><br />5)  What all of this means is:<br />  a)  Load units as reported relate directly to motor current<br />  b) Although the internal ADC in the AX12 is a 10bit device, only 5bits (presumably the MSBs) are reported externally, seriously reducing the usefulness of this data.<br />  c)  Although the Current/Load relationship is linear, the measured current (and thus the Load value reported), bears a complicated relationship to the externally applied load, and is a strong function of the dynamics / statics of the particular situation.<br /><br />6)  Most damning of all, as far as we can tell, during a servo MOVE (i.e. during the time it takes for the servo to implement and complete the execution of a command to move from position P0 to P1), the AX12 reports NO useful Load values at all - one always reads ZERO during the move itself - (barring the very very occasional odd non-zero reading that appears to be spurious). This means that the Load data is completely useless for precision torque control - i.e. where one is trying to move to a target position P1 but subject to the over-riding constraint that the servo must never apply more torque to the load than T1. This simply cannot be done, because a torque reading (proxied by Load) is not given until the position move has completed, by which time it's usually too late.<br /><br />7) Conclusions:<br />   a) The Load data in $28-$29 are directly related to the motor current, WHEN they are valid data.<br />   b) The motor current bears a complex relationship with output load torque.<br />  c) all else being equal, a bigger Load value does mean a bigger torque (but read ALL the caveats above - usually one cannot make a useful inference in practice)<br />  d) NO USEFUL Load (and therefore Torque) information is available from the AX12 during the execution of a position move command.<br /><br />We strongly recommend that Bioloid fix their firmware to tidy up this situation, as presently what is an otherwise very good (precise and strong) servo, is rendered completely useless for precision torque limited applications.<br /><br />t<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=1424">tah1</a> — Wed Jun 17, 2009 10:43 am</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[StuartL]]></name></author>
<updated>2009-02-26T17:14:19+01:00</updated>
<published>2009-02-26T17:14:19+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19270#p19270</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19270#p19270"/>
<title type="html"><![CDATA[AX-12 Measures]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19270#p19270"><![CDATA[
The torque question has definitely come up before.  In short: To my knowledge noone has decoded what it means in the real world and the accuracy/quantisation of the torque figures make it almost unusable.<br /><br />Instead you may wish to consider the difference between the goal position and the achieved position.  This is probably a better and more useful start.<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=645">StuartL</a> — Thu Feb 26, 2009 5:14 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PedroR]]></name></author>
<updated>2009-02-21T15:14:59+01:00</updated>
<published>2009-02-21T15:14:59+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19210#p19210</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19210#p19210"/>
<title type="html"><![CDATA[AX-12 Measures]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19210#p19210"><![CDATA[
Hi darkyomy<br /><br />I'm not a guru of Bioloid but, from what I've heard it is not possible to reliably do current measurement in AX-12.<br /><br />With regards to the center of mass you may want to check the work done here <!-- m --><a class="postlink" href="http://humanoids.dem.ist.utl.pt">http://humanoids.dem.ist.utl.pt</a><!-- m --><br />It was a project supported by Robosavvy and probably Limor may be able to give you some more guidance on that.<br /><br />As for all the other questions, I hope our fellow forum members reply to you.<br />Alternatively you can search the forum as probably these matters were discussed in the past.<br /><br />Pedro.<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=1061">PedroR</a> — Sat Feb 21, 2009 3:14 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[darkyomy]]></name></author>
<updated>2009-02-21T16:00:38+01:00</updated>
<published>2009-02-21T07:06:50+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19207#p19207</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19207#p19207"/>
<title type="html"><![CDATA[AX-12 Measures]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=3363&amp;p=19207#p19207"><![CDATA[
Hello<br /><br />  I'm currently working  trying to figure out a model for bioloid. The problem I'm facing is the lack of information about the feedback from the servo and the relationship with the torque .<br /><br />  First .- What are the units from the load measure?<br /><br />  Second .- What is the formula that relates temperature and torque? I have read that there is a relationship between them.<br /><br />  Third .- I have seen  a formula to calculate the torque using the load  value T = F*i , where T is torque, i is the current (this chould be taken from the load measure) , but F is a constant. Is this formula corrent? does anybody knows what is the constant value?<br /><br />  Fourth .- What are the units for the speed measure?<br /><br />  Fifth .- Does anybody knows a formula to calculate the center of mass in the bioloid using the measures available from the AX-12 servo?<br /><br />  Thanks<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=1361">darkyomy</a> — Sat Feb 21, 2009 7:06 am</p><hr />
]]></content>
</entry>
</feed>