<?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=4&amp;t=897" />

<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>2006-12-31T09:41:33+01:00</updated>

<author><name><![CDATA[RoboSavvy Forum]]></name></author>
<id>http://forum.robosavvy.com/feed.php?f=4&amp;t=897</id>
<entry>
<author><name><![CDATA[Humanoido]]></name></author>
<updated>2006-12-31T09:41:33+01:00</updated>
<published>2006-12-31T09:41:33+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5627#p5627</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5627#p5627"/>
<title type="html"><![CDATA[Stock RN1 Standup with no Sensors]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5627#p5627"><![CDATA[
Marcus, this is a very good and efficient way to test if RN has fallen over front or backwards (no sensors are required). I commend you on your ingenuity.<br /><br />Mark, I also like your idea of developing a virtual gyro. I have yet to explore the servo position reporting and additional features, but do believe all the tools are present to accomplish this goal.<br /><br />Humanoido<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=416">Humanoido</a> — Sun Dec 31, 2006 9:41 am</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[DirtyRoboto]]></name></author>
<updated>2006-12-31T01:06:34+01:00</updated>
<published>2006-12-31T01:06:34+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5615#p5615</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5615#p5615"/>
<title type="html"><![CDATA[Stock RN1 Standup with no Sensors]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5615#p5615"><![CDATA[
Cheerz Bru.<br /><br />The test bed that I am working on involves checking particular servos for sudden changes in the set position and the actual position. In effect I can make my RN1 detect and discriminate severe changes to its FOM (field of motion).<br />Due to the very slow speed that the code is executed on this platform, it makes this sort of code unreal for normal usage. This does not mean that it cannot be explored, only that the results need to be examined in context to the limits of the platform, namely RN1.<br /><br />Your idea of increasing the speed of the test period, while good, is flawed by the nature of the problem. The bot has fallen and any increase in the decision process would be minor and could be tweaked out in the self right moves. Also the Bot needs to make a definate decision. the accuracy of this decision depends on a greater period of sampling the position of the servos.<br /><br />The code I have on the testbed is quite clunky but does sense a fall and will examine its position using the methods above to execute the aproptiate move.<br /><br />The code is at the stage where I can start the routine, and then push the RN1 over in any fashion and get it to trigger due to the fall. It then goes onto the front/back/sides check before executing the required moves.<br /><br />Marcus.<br />(90% drunk ATM)<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=312">DirtyRoboto</a> — Sun Dec 31, 2006 1:06 am</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[TheGuru]]></name></author>
<updated>2006-12-30T22:47:38+01:00</updated>
<published>2006-12-30T22:47:38+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5610#p5610</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5610#p5610"/>
<title type="html"><![CDATA[RE:Stock RN1 Standup with no Sensors]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5610#p5610"><![CDATA[
First of all, may I introduce myself as a new RN-1 owner as of mid December  <img src="http://forum.robosavvy.com/images/smilies/icon_biggrin.gif" alt=":D" title="Very Happy" /> .<br />Marcus, I like where you're going with this code. Although I haven't uploaded/tested it yet I can see where you are going with it. Just one question springs to mind and that is:<br />If you make the move at high speed and over say only 5 or 10 degrees this would greatly reduce the test period, but have you discovered how tightly it could be reduced and still remain effective? e.g. 10 degrees, 100ms.<br />In theory this routine would need to be called regularly throughout a routine or at least whenever a fallover was predicted.<br /><br />Just my thoughts. I'd like to put together the algorithm that calculates a virtual CofG for RN-1 that would result in code to represent the Gyro sensor, but I think thats gonna be a lot of maths.<br /><br />Regards<br /><br />Mark<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=434">TheGuru</a> — Sat Dec 30, 2006 10:47 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[DirtyRoboto]]></name></author>
<updated>2006-12-30T16:38:53+01:00</updated>
<published>2006-12-30T16:38:53+01:00</published>
<id>http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5602#p5602</id>
<link href="http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5602#p5602"/>
<title type="html"><![CDATA[Stock RN1 Standup with no Sensors]]></title>

<content type="html" xml:base="http://forum.robosavvy.com/viewtopic.php?t=897&amp;p=5602#p5602"><![CDATA[
Here is some code that I am playing with (so it is still quite basic) that will test to see if the RN1 has fallen then to trigger the appropriate response of getting up.<br />This is done without additional sensors, just the basic RN1.<br /><br />Instructions...<br />After uploading then press button '1' on your remote. this will start the checks. Next, place your robot face down and see if he triggers the standup pose.<br />Remember to do this with plenty of space.<br /><br />Please note: This code is only for falling forward and was taken from a larger instruction set of which other fall checks are being tested.<br />This is just an example to get your creative juices flowing.<br /><br />Here is the link to my upload. <br /><!-- m --><a class="postlink" href="http://robosavvy.com/Builders/DirtyRoboto/Fall%20Fwd%20Check.bas">http://robosavvy.com/Builders/DirtyRobo ... 0Check.bas</a><!-- m --><br /><br /><br />And here is the code for visual inspection or copy and paste.<br />Enjoy.<br /><br />Marcus.<br /><br />' === DirtyRoboto December 30 2006 ===============<br />' === <!-- e --><a href="mailto:DirtyRoboto@btinternet.com">DirtyRoboto@btinternet.com</a><!-- e -->   ===============<br />'== Servo check for forward standup   ============<br />'== Remote key number 1 triggers this routine ====<br /><br />DIM A AS BYTE<br />DIM A16 AS BYTE<br />DIM srv6 AS BYTE<br />DIM srv12 AS BYTE<br />DIM count AS INTEGER<br /><br />count = 1<br /><br /><br />PTP SETON <br />PTP ALLON<br /><br />'== motor diretion setting ======================<br />DIR G6A,1,0,0,1,0,0<br />DIR G6B,1,1,1,1,1,1<br />DIR G6C,0,0,0,0,0,0<br />DIR G6D,0,1,1,0,1,0<br /><br />'== motor start position read ===================<br />GETMOTORSET G6A,1,1,1,1,1,0<br />GETMOTORSET G6B,1,1,1,0,0,0<br />GETMOTORSET G6C,1,1,1,0,0,0<br />GETMOTORSET G6D,1,1,1,1,1,0<br /><br />SPEED 5<br /><br />'== motor power on  =============================<br />MOTOR G24<br /><br />GOSUB standard_pose<br /><br />'================================================<br />MAIN:    <br /><br />A = REMOCON(1)<br />IF A &lt;&gt; 1 THEN GOTO main<br /><br />GOSUB standard_pose<br />GOTO MAIN<br /><br />'================================================<br />standard_pose:<br />MOVE G6A,100,  76, 145,  93, 100, 100 <br />MOVE G6D,100,  76, 145,  93, 100, 100  <br />MOVE G6B,100,  30,  80, 100, 100, 100<br />MOVE G6C,100,  30,  80, 100, 100, 100<br />WAIT<br />counter:<br />count = count + 1<br />IF count = 300 THEN GOTO fall_fwd_chk<br />GOTO counter<br />'================================================<br />forward_standup:<br /><br />SPEED 10<br /><br />MOVE G6A,100, 130, 120,  80, 110, 100<br />MOVE G6D,100, 130, 120,  80, 110, 100<br />MOVE G6B,150, 160,  10, 100, 100, 100<br />MOVE G6C,150, 160,  10, 100, 100, 100<br />WAIT<br /><br />MOVE G6A, 80, 155,  85, 150, 150, 100<br />MOVE G6D, 80, 155,  85, 150, 150, 100<br />MOVE G6B,185,  40, 60,  100, 100, 100<br />MOVE G6C,185,  40, 60,  100, 100, 100<br />WAIT<br /><br />MOVE G6A, 75, 165,  55, 165, 155, 100<br />MOVE G6D, 75, 165,  55, 165, 155, 100<br />MOVE G6B,185,  10, 100, 100, 100, 100<br />MOVE G6C,185,  10, 100, 100, 100, 100<br />WAIT<br /><br />MOVE G6A, 60, 165,  30, 165, 155, 100<br />MOVE G6D, 60, 165,  30, 165, 155, 100<br />MOVE G6B,170,  10, 100, 100, 100, 100<br />MOVE G6C,170,  10, 100, 100, 100, 100<br />WAIT<br /><br />MOVE G6A, 60, 165,  25, 160, 145, 100<br />MOVE G6D, 60, 165,  25, 160, 145, 100<br />MOVE G6B,150,  60,  90, 100, 100, 100<br />MOVE G6C,150,  60,  90, 100, 100, 100<br />WAIT<br /><br />MOVE G6A,100, 155,  25, 140, 100, 100<br />MOVE G6D,100, 155,  25, 140, 100, 100<br />MOVE G6B,130,  50,  85, 100, 100, 100<br />MOVE G6C,130,  50,  85, 100, 100, 100<br />WAIT<br />'standard_pose<br />MOVE G6A,100,  76, 145,  93, 100, 100 <br />MOVE G6D,100,  76, 145,  93, 100, 100  <br />MOVE G6B,100,  30,  80, 100, 100, 100<br />MOVE G6C,100,  30,  80, 100, 100, 100<br />count = 1<br />GOTO main<br />'================================================<br />fall_fwd_chk:<br /><br />count = 1<br />'standard_pose<br />MOVE G6A,100,  76, 145,  93, 100, 100 <br />MOVE G6D,100,  76, 145,  93, 100, 100  <br />MOVE G6B,100,  30,  80, 100, 100, 100<br />MOVE G6C,100,  30,  80, 100, 100, 100<br />WAIT<br />MOVE G6B,120,  ,  , , , <br />MOVE G6C,120,  ,  , , , <br />DELAY 300<br />WAIT<br />srv6 = MOTORIN(6)<br />srv12 = MOTORIN(12)<br />DELAY 300<br />WAIT<br />IF srv6 &lt; 120 AND srv12 &lt; 120 THEN GOTO forward_standup<br />GOTO standard_pose<br />'=================================================<p>Statistics: Posted by <a href="http://forum.robosavvy.com/memberlist.php?mode=viewprofile&amp;u=312">DirtyRoboto</a> — Sat Dec 30, 2006 4:38 pm</p><hr />
]]></content>
</entry>
</feed>