<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-150791932420013519</id><updated>2012-01-21T16:20:35.074-08:00</updated><title type='text'>TECHNOFREAKS</title><subtitle type='html'>Looking for a hand-on guidance to make a robot?
Want to get your basics on robotics upgraded?
looking for latest development in gizmo world?
READ ON  to find out more.......</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-4606819704420497041</id><published>2007-10-07T00:33:00.000-07:00</published><updated>2007-10-07T00:54:39.850-07:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiMnYuX5vI/AAAAAAAAAFk/niZNTJH7rpU/s1600-h/New+Picture+%284%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiMnYuX5vI/AAAAAAAAAFk/niZNTJH7rpU/s320/New+Picture+%284%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5118495584786310898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;&lt;span style="font-weight: bold;"&gt;Robot Demos:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Interactive control of the DLR hand&lt;br /&gt;Human control of robotic systems with a large number of DOFs is often difficult due to the overwhelming number of variables that need to be specified. We developed a method for controlling such systems using only a small number of input variables. Motivated by prosthetic applications, we applied our method on the control of a robot hand. Come and control the DLR robot hand using the mouse or a wiimote!&lt;br /&gt;&lt;br /&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/moz-screenshot-2.jpg" alt="" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/moz-screenshot.jpg" alt="" /&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/moz-screenshot-1.jpg" alt="" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiO2YuX5wI/AAAAAAAAAFs/ptcDa51WPpw/s1600-h/New+Picture+%285%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiO2YuX5wI/AAAAAAAAAFs/ptcDa51WPpw/s320/New+Picture+%285%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5118498041507604226" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;An insight into R,LAB's latest robotics platform, the SmURV&lt;br /&gt;Robots either cost a lot of money or require hundreds of hours to be built; sometimes even both. The SmURV is a comparatively cheap basic robotics platform that was developed at R,LAB and is made up of off-the-shelf computer components. Come and see how easy it is to build one yourself!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;&lt;span style="font-weight: bold;"&gt;Tactical Teams&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;We present a robotic system that integrates person and gesture recognition with speech recognition and synthesis. This results in a natural, hands-free interactive system.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RwiO2ouX5xI/AAAAAAAAAF0/TKZJ9MVW_KE/s1600-h/New+Picture+%286%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RwiO2ouX5xI/AAAAAAAAAF0/TKZJ9MVW_KE/s320/New+Picture+%286%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5118498045802571538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;                                                                                           &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;&lt;span style="font-weight: bold;"&gt;                                                                                            Robotic Video Games&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;                                                                                           A video &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RwiO2ouX5yI/AAAAAAAAAF8/H_2MxjGcms8/s1600-h/New+Picture+%287%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RwiO2ouX5yI/AAAAAAAAAF8/H_2MxjGcms8/s320/New+Picture+%287%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5118498045802571554" border="0" /&gt;&lt;/a&gt;game using Nintendo Wii Remotes as controllers for Sony AIBO dogs playing soccer. This is an interactive demo, so viewers will be allowed and encouraged to pick up a Wii Remote and join the fun!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-size:180%;" &gt;Robot learning from Demonstration&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/RwiO24uX5zI/AAAAAAAAAGE/9rdQG13sJHY/s1600-h/New+Picture+%288%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/RwiO24uX5zI/AAAAAAAAAGE/9rdQG13sJHY/s320/New+Picture+%288%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5118498050097538866" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Programming a robot to perform a task can be a long, arduous undertaking. We are exploring ways in which users can demonstrate tasks to robots in an intuitive manner and the robot learns to perform the task. Participants can interact with the robots and attempt to teach them new behaviors.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Graphics Demos:&lt;/span&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/RwiO24uX50I/AAAAAAAAAGM/C_VanZCABvs/s1600-h/New+Picture+%289%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/RwiO24uX50I/AAAAAAAAAGM/C_VanZCABvs/s320/New+Picture+%289%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5118498050097538882" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;ChemPad&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Molecules are inherently three-dimensional objects that are represented by chemists on paper and classroom blackboards by a system of two-dimensional notations. ChemPad, a new Tablet PC application with a pedagogical focus, generates 3D molecular structures from hand drawn digital ink rather than from traditional molecule construction interfaces.&lt;br /&gt;ChemPad allows chemists to sketch molecules in a quick and natural fashion to generate 3D models. This capability gives ChemPad pedagogical value as shown by our user study of a hundred organic chemistry students who had difficulty with 3D chemistry thinking and used ChemPad to overcome that hurdle.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiP6YuX51I/AAAAAAAAAGU/Y0Ok448qlRc/s1600-h/New+Picture+%2810%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiP6YuX51I/AAAAAAAAAGU/Y0Ok448qlRc/s320/New+Picture+%2810%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5118499209738708818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;&lt;span style="font-weight: bold;"&gt;Math Recognition &amp;amp; Error Correction&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;The Math Error Correction project is concerned with the user interface aspects of entering mathematical notations on a pen-based computer. The sometimes ambiguous nature of mathematical notation and the irregular, imprecise and ambiguous nature of human handwriting conspire to produce inconsistencies between what the human and the computer perceive. We have developed a sophisticated mathematic handwriting recognizer, and a handful of visualization techniques to aid the user in identifying parsing errors. Our demo also includes techniques for correcting the errors and for incorporating the math into a more general writing environment.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiP6YuX52I/AAAAAAAAAGc/ArtfqJYkSt0/s1600-h/New+Picture+%2811%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiP6YuX52I/AAAAAAAAAGc/ArtfqJYkSt0/s320/New+Picture+%2811%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5118499209738708834" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;&lt;span style="font-weight: bold;"&gt;MathPad&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;MathPad2 is a prototype Tablet PC application that allows users to make dynamic illustrations by combining handwritten mathematical expressions with sketched drawings. This combination allows for animated illustrations that aid users in understanding mathematics, physics and engineering concepts. Users can also graph and solve equations as well as simplify and factor expressions with a simple gestural interface. The prototype makes use of Mas a computational back end and also has a sophisticated, trainable math recognition front endUsers can label their sketched diagrams and the system uses these labels to determine the associated mathematics. Output from Matlabis used to drive simple animations so users can observe diagram behavior.&lt;br /&gt;Unlike other mathematics systems that require typed linear notations, MathPad2 uses natural 2D mathematical notation. In addition, the experience islive and interactive in contrast to a static paper notebook. With MathPad2, we have a powerful electronic problem solving notebook that utilizes pencil-and-paper style input with pen-based computing that can dramatically change how students learn and work.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;&lt;span style="font-weight: bold;"&gt;Diagrammer&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Our goal is to make the process of producing 2D diagrams much easier and more efficient. The observation that most diagrams can be sketched with a pen in a few seconds, while other interfaces (e.g., keyboard and mouse) wouldrequire much more time and seem tedious by comparison is why we believe a pen-based interface is probably the best interface for producing the kinds of diagrams most people need. However, an initial sketch can be many steps away from a completed diagram and what is needed is an end-to-end process that preserves the efficiency and ease with which an initial sketch can be made.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-4606819704420497041?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/4606819704420497041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=4606819704420497041' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/4606819704420497041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/4606819704420497041'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/10/robot-demos-interactive-control-of-dlr.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_2sBjUUt5Y6I/RwiMnYuX5vI/AAAAAAAAAFk/niZNTJH7rpU/s72-c/New+Picture+%284%29.bmp' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-5583808301112907742</id><published>2007-09-20T06:32:00.000-07:00</published><updated>2007-09-20T06:40:19.013-07:00</updated><title type='text'></title><content type='html'>&lt;h3&gt;&lt;a name="Skeletonization-Roadmap-Methods"&gt;&lt;span style="font-size: 18pt; font-family: Verdana; color: red;"&gt;Skeletonization (Roadmap) Methods&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Skeletonization methods collapse the configuration space into a one-dimensional subset, or &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;skeleton&lt;/span&gt;&lt;/em&gt;. They then require that paths lie along the skeleton. If the initial and goal points do not lie on the skeleton, short connecting &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;paths&lt;/a&gt; are added to join them to the nearest points on the skeleton. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;To be complete for motion planning, skeletonization methods must satisfy two properties: &lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;1.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;If &lt;b&gt;S&lt;/b&gt; is a skeleton of &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt; &lt;b&gt;F&lt;/b&gt;, then &lt;b&gt;S&lt;/b&gt; should have a single connected piece within each connected region of &lt;b&gt;F&lt;/b&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;2.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;For any point &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;p&lt;/span&gt;&lt;/em&gt; in &lt;b&gt;F&lt;/b&gt;, it should be "easy" to compute a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; from &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;p&lt;/span&gt;&lt;/em&gt; to the skeleton. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Roadmaps are a &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;global&lt;/span&gt;&lt;/em&gt; approach to motion planning. It consists of modeling the connectivity of the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot's&lt;/a&gt; &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt; as a network of one-dimensional curves, called the &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;roadmap&lt;/span&gt;&lt;/em&gt;, which lies in the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt; or its closure. (&lt;b&gt;NOTE&lt;/b&gt; that weird things happen at the boundaries depending on which option you choose.) &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Once a roadmap &lt;b&gt;R&lt;/b&gt; has been generated, it is used as a set of standardized paths. &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;Path&lt;/a&gt; planning is then reduced to connecting the initial and goal configurations to points in &lt;b&gt;R&lt;/b&gt;, and searching &lt;b&gt;R&lt;/b&gt; for a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; to connect those points. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The kinds of skeletonizations are &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;visibility graphs&lt;/span&gt;&lt;/em&gt;, &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;Voronoi diagrams&lt;/span&gt;&lt;/em&gt; and &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;roadmaps&lt;/span&gt;&lt;/em&gt;, which consist of &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;silhouette curves&lt;/span&gt;&lt;/em&gt; and &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;linking curves&lt;/span&gt;&lt;/em&gt;. (This formulation due to Russell and Norvig; note that Latombe calls all of these things "roadmap methods.") &lt;/span&gt;&lt;/p&gt;  &lt;h4&gt;&lt;a name="Visibility-Graphs"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Visibility Graphs&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The original roadmap method, visibility graphs apply to 2D configuration spaces with polygonal &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacle&lt;/a&gt; regions. The graph is nondirected and the nodes are the initial and goal configurations plus all the vertices of the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacles&lt;/a&gt;. The edges are all the straight line segments connecting two nodes that do not intersect the interior of the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacle&lt;/a&gt; region (all lines that don't go through obstacles). The graph can be searched for the shortest semi-free path; this &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; will always be polygonal. Visibility graphs are complete. &lt;/span&gt;&lt;/p&gt;  &lt;h4&gt;&lt;a name="Voronoi-diagram"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Voronoi diagram&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A roadmap method based on &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;retraction&lt;/span&gt;&lt;/em&gt;. A continuous function of &lt;b&gt;C&lt;sub&gt;free&lt;/sub&gt;&lt;/b&gt; is defined onto a one-dimensional subset of itself. The Voronoi diagram consists of those curves in the space that are equidistant from two or more obstacles; these curves form the skeleton. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Put poorly in another way, he Voronoi diagram is the set of all free configurations whose minimal distance to the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacle&lt;/a&gt; region is achieved with at least two points in the boundary of the region. This method yields free &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;paths&lt;/a&gt; which tend to maximize the clearance between the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; and the obstacles. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;When the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacles&lt;/a&gt; are polygons, the Voronoi diagram consists of straight and &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;parabolic segments&lt;/span&gt;&lt;/em&gt;. The initial and goal configurations are mapped to &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;sub&gt;init&lt;/sub&gt;&lt;/span&gt;&lt;/em&gt; and &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;sub&gt;goal&lt;/sub&gt;&lt;/span&gt;&lt;/em&gt; by drawing the line along which the distance to the boundary of the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacles&lt;/a&gt; increases the fastest. &lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Cell-Decomposition"&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Cell Decomposition&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A global approach to motion planning. The intuitive idea is to break the space down into a finite number of discrete chunks. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Cell decomposition breaks &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt; down into simple regions called &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;cells&lt;/span&gt;&lt;/em&gt; such that any &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; between any two configurations in a cell can easily be generated. A non-directed graph representing the adjacency relations between cells is then constructed and searched. This is called the &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;connectivity graph&lt;/span&gt;&lt;/em&gt; or &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;adjacency graph&lt;/span&gt;&lt;/em&gt;. The outcome of the search is a sequence of cells called a &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;channel&lt;/span&gt;&lt;/em&gt;. There are two cell decomposition methods: &lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;approximate cell decomposition&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; -- Cells have predefined shapes (such as triangles or trapezoids) whose union is strictly included in the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt;. The boundary of a cell does not characterize a discontinuity of some sort and has no physical meaning. The &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;quad-tree&lt;/span&gt;&lt;/em&gt; method recursively decomposes a rectangular cell into four smaller cells until the cells lie entirely in the free space or reach some resolution. These methods are &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;sound&lt;/span&gt;&lt;/em&gt; but not &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;incomplete&lt;/span&gt;&lt;/em&gt;.&lt;br /&gt; &lt;/span&gt; &lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;exact cell decomposition&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; -- The &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt; is decomposed into cells whose union is exactly the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt;; this is a complete method. Cells in this form of decomposition are called &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;cylinders&lt;/span&gt;&lt;/em&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Potential-Fields"&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Potential Fields&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A local approach to motion planning. The goal configuration generates an attractive potential that pulls the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; toward it; C-obstacles generate repulsive potential that pushes the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; away. The negated gradient of the total potential is treated as an artificial force applied to the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt;, considered the most promising direction. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Potential fields are very efficient but suffer from local minima. Two approaches overcome this: &lt;/span&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;design potential functions with no local minima other than the goal configuration&lt;br /&gt; &lt;/span&gt; &lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;complement the basic potential field approach with mechanisms to escape from local minima &lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Landmark-Based_Navigation"&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Landmark-Based Navigation&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Landmark-based navigation assumes that the environment contains easily recognizable, unique &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;landmarks&lt;/span&gt;&lt;/em&gt;. A &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#landmark"&gt;landmark&lt;/a&gt; is modeled as a point surrounded by a &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;field of influence&lt;/span&gt;&lt;/em&gt;. Within this field of influence, the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; knows its position exactly. Outside of all fields of influence, the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; has no direct position information. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Landmarks can be used to deal with uncertainty in motion so, for example, if a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; knows it is apt to move with slight uncertainty as it travels, it can aim for a central point in a field of influence, knowing that the actual cone it maps out will intersect with that field no matter how off its projections it is. &lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Configuration-Space"&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Configuration Space&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;For a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; with &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;k&lt;/span&gt;&lt;/em&gt; degrees of freedom, the state or configuration of the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; can be described by &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;k&lt;/span&gt;&lt;/em&gt; real values. These values can be considered as a point &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;p&lt;/span&gt;&lt;/em&gt; in a &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;k&lt;/span&gt;&lt;/em&gt;-dimensional &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;configuration space&lt;/span&gt;&lt;/em&gt; of the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Configuration space can be used to determine if there is a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; by which a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; can move from one place to another. Real obstacles in the world are mapped to &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;configuration space obstacles&lt;/span&gt;&lt;/em&gt;, and the remaining &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;free space&lt;/span&gt;&lt;/em&gt; is all of configuration space except the part occupied by those obstacles. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Having made this mapping, suppose there are two points in configuration space. The &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; can move between the two corresponding real world points exactly when there is a continuous &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; between them that lies entirely in configuration &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;h4&gt;&lt;a name="Generalized-Configuration-Space"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Generalized Configuration Space&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The term &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;generalized configuration space&lt;/span&gt;&lt;/em&gt; is used to describe systems in which other objects are included as part of the configuration. These may be movable, and their shapes may vary. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;There are several ways of dealing with &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; planning when there are several moving or movable objects. These are: &lt;/span&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;1.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Partition the generalized configuration space into finitely many states. The planning problem then becomes a logical one, like the blocks world. No general method for partitioning space has yet been found. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;2.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Plan object motions first, and then motions for the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;3.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Restrict object motions to simplify planning. &lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Extensions-of-the-Basic-Problem"&gt;&lt;span style="font-size: 18pt; font-family: Verdana; color: red;"&gt;Extensions of the Basic Problem&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;h4&gt;&lt;a name="Multiple-Moving-Objects"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Multiple Moving Objects&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Obstacles may be moving. There may be multiple robots. The &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robots&lt;/a&gt; themselves may be articulated (i.e., made of rigid objects connected by joints). &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The first extension, and possibly the second, requires time to be explicitly considered, which gives rise to &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;configuration-time&lt;/span&gt;&lt;/em&gt; space in which a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; must never go back along the time axis, and some constraints on the slope and curvature of the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; are given due to constraints on velocity and acceleration. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The second and third extensions yield configuration spaces of arbitrarily large dimensions. Planning can be done in a &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;composite configuration space&lt;/span&gt;&lt;/em&gt; which is the cross-product of the individual configuration spaces (this is called &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;centralized planning&lt;/span&gt;&lt;/em&gt;), or another method called &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;decoupled planning&lt;/span&gt;&lt;/em&gt; can be used to plan the motions more or less independently and interactions are only considered in the second phase of planning. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The decoupling method fails when interaction is critical -- in the example of two &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robots&lt;/a&gt; trying to switch places in a narrow corridor, for example. When dealing with articulated &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robots&lt;/a&gt;, the dimension of the configuration space grows as the number of joints. &lt;/span&gt;&lt;/p&gt;  &lt;h4&gt;&lt;a name="Kinematic-Constraints"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Kinematic Constraints&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot's&lt;/a&gt; motions may be restricted by kinematic constraints. There are two kinds: &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="holonomic-constraints"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;holonomic constraints&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A holonomic equality constraint is an equality relation among the parameters of the minimally-represented configuration space that can be solved for one of the parameters. Such a relation reduces the dimension of the actual configuration space of the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; by one. A set of &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;k&lt;/span&gt;&lt;/em&gt; &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#holonomic-constraints"&gt;holonomic constraints&lt;/a&gt; reduces it by &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;k&lt;/span&gt;&lt;/em&gt;. For example, a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; limited to rotating around a fixed axis has a configuration space of dimension 4 instead of 6 (since revolute joints impose 2 &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#holonomic-constraints"&gt;holonomic constraints)&lt;/a&gt;.&lt;br /&gt; &lt;/span&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="nonholonomic-constraints"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;nonholonomic constraints&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A nonholonomic equality constraint is a non-integrable equation involving the configuration parameters and their derivatives (velocity parameters). Such a constraint does not reduce the dimension of the configuration space, but instead reduces the dimension of the space of possible differential motions.&lt;br /&gt;&lt;br /&gt;For example, a car-like &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; has 3 dimensions: two for translation and one for rotation. However, the velocity of &lt;b&gt;R&lt;/b&gt; is required to point along the main axis of &lt;b&gt;A&lt;/b&gt;. (This is written as &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;- sin T dx + cos T dy = 0&lt;/span&gt;&lt;/em&gt;.)&lt;br /&gt;&lt;br /&gt;The instantaneous motion of the car is determined by two parameters: the linear velocity along the main axis, and the steering angle. However, when the steering angle is non-zero, the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; changes orientation, and its linear velocity with it, allowing the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot's&lt;/a&gt; configuration to span a three-dimensional space. Restricting the steering angle to pi/2 restricts the set of possible differential motions without changing its dimension.&lt;br /&gt;&lt;br /&gt;Nonholonomic constraints restrict the geometry of the feasible free paths between two configurations. They are much harder to deal with in a planner than &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#holonomic-constraints"&gt;holonomic constraints&lt;/a&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;In general, a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; with &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#nonholonomic-constraints"&gt;nonholonomic constraints&lt;/a&gt; has fewer &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;controllable&lt;/span&gt;&lt;/em&gt; degrees of freedom than it has actual degrees of freedom; these are equal in a holonomic &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;h4&gt;&lt;a name="Uncertainty"&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Uncertainty&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; may have little or no prior knowledge about its workspace. The more incomplete the knowledge, the less important the role of planning. A more typical situation is when there are errors in &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; control and in the initial models, but these errors are contained within bounded regions.&lt;br /&gt; &lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;a name="Grasp-Planning"&gt;&lt;span style="font-size: 12pt; font-family: Verdana; color: red;"&gt;Grasp Planning&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Many typical robot operations require the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; to grasp an object. The rest of the operation is strongly influenced by choices made during grasping. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Grasping requires positioning the gripper on the object, which requires generating a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; to this position. The grasp position must be accessible, stable, and robust enough to resist some external force. Sometimes a satisfactory position can only be reached by grasping an object, putting it down, and re-grasping it. The grasp planner must choose configurations so that the grasped objects are stable in the gripper, and it should also choose operations that reduce or at least do not increase the level of uncertainty in the configuration of the object. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The object to be grasped is the &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;target object&lt;/span&gt;&lt;/em&gt;. The &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;gripping surfaces&lt;/span&gt;&lt;/em&gt; are the surfaces on the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; used for grasping. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;There are three principal considerations in gripping an object. They are: &lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-size: 10pt; font-family: Verdana; color: red;"&gt;safety&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;-- the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; must be safe in the initial and final configurations &lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-size: 10pt; font-family: Verdana; color: red;"&gt;reachability&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; -- the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; must be able to reach the initial grasping configuration and, with the object in hand, reach the final configuration &lt;/span&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-size: 10pt; font-family: Verdana; color: red;"&gt;stability&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; -- the grasp should be stable in the presence of forces exerted on the grasped object during transfer and parts-mating motions &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Example: peg placement&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;. By tilting a peg the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; can increase the likelihood that the initial approach conditions will have the peg part way in the hole. Other solutions are chamfers (a widening hole, producing the same effect as tilting), search along the edge, and biased search (introduce bias so that search can be done in at most one motion and not two, if the error direction is not known).&lt;br /&gt; &lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;a name="Computational-Complexity"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Computational Complexity&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;These theorems are taken from Latombe's book (see Sources). &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;b&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Theorem 1 (Polyhedral bodies)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;Planning a free &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; for a robot made of an arbitrary number of polyhedral bodies connected together at some joint vertices, among a finite set of polyhedral obstacles, between any two given configurations is a PSPACE-hard problem.&lt;/span&gt;&lt;/em&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Put another way, planning a free &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; in a configuration space of arbitrary dimension among fixed obstacles is PSPACE-hard. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Theorem 2 (Joints)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;In the absence of obstacles, deciding whether a planar linkage in some initial configuration can be moved so that a certain joint reaches a given point in the plane is PSPACE-hard.&lt;/span&gt;&lt;/em&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Theorem 3 (Rectangular &lt;u&gt;robots)&lt;/u&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;Planning a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; in the configuration space of a multi-bodied &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; consisting of all rectangles is PSPACE-hard.&lt;/span&gt;&lt;/em&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Theorem 4 (Planar arm)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;Consider a planar arm consisting of arbitrarily many links serially connected by revolute joints such that all the links are constrained to move in the plane. Planning a free &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; for such an arm among a finite number of polygonal obstacles, between any two given configurations is PSPACE-hard.&lt;/span&gt;&lt;/em&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Theorem 5 (Upper bound for fixed dimension)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;A free &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; in a configuration space of any fixed dimension m, when the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#Free-space"&gt;free space&lt;/a&gt; is a set defined by n polynomial constraints of maximal degree d, can be computed by an algorithm whose time complexity is exponential in m and polynomial in both n and d.&lt;/span&gt;&lt;/em&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;This theorem is based on reducing the planning problem to the problem of deciding the satisfiability of sentences in the first-order theory of the reals. The important observation is that &lt;b&gt;the complexity of &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; planning increases exponentially with the dimension of the configuration space&lt;/b&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Theorem 6 (Velocity-bounding)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Planning the motion of a rigid object translating without rotation in three dimensions among arbitrarily many moving obstacles that may both translate and rotate is a PSPACE-hard problem if the velocity modulus of the object is bounded, and an NP-hard problem otherwise.&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Theorem 7 (Uncertainty)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;Planning &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#compliant-motion"&gt;compliant motions&lt;/a&gt; for a point in the presence of uncertainty, in a three-dimensional polyhedral configuration space with an arbitrarily large number of faces, is an NEXPTIME-hard problem.&lt;/span&gt;&lt;/em&gt; &lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Reducing-Complexity"&gt;&lt;span style="font-size: 12pt; font-family: Verdana; color: red;"&gt;Reducing Complexity&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;It is possible to approximate the real problem before giving it to the motion planner; it is reasonable to trade generality for improved time performance. &lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;One way of reducing complexity is by reducing the dimension of the configuration space. This can be done by replacing the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; by the surface or volume it sweeps out when it moves along &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;r&lt;/span&gt;&lt;/em&gt; independent axes. This corresponds to projecting the &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;m&lt;/span&gt;&lt;/em&gt;-dimensional configuration space along &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;r&lt;/span&gt;&lt;/em&gt; of its dimensions. The projected configuration space has only &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;m - r&lt;/span&gt;&lt;/em&gt; dimensions. (As an example, imagine a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; with an extended arm as a disk; then you don't need to worry about rotations.) &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Simplification heuristics make only local plans, by breaking the problem into subproblems. For example, many localities are stereotyped situations, such as moving through a door or turning in a corridor. &lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;a name="Robot-Architectures"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Robot Architectures&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;h3&gt;&lt;a name="Brooks-Subsumption-Architecture"&gt;&lt;span style="font-size: 12pt; font-family: Verdana; color: red;"&gt;Brooks' Subsumption Architecture&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;This approach breaks the problem down into &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;task-achieving behaviors&lt;/span&gt;&lt;/em&gt; (such as wandering, avoiding obstacles, or making maps) rather than decomposing it functionally (into sensing, planning, acting). &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;In subsumption architectures, &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;levels of competence&lt;/span&gt;&lt;/em&gt; are stacked one on top of another, ranging from the lowest level (object avoidance) to higher levels for planning and map-making. Higher levels may interfere with lower levels, but each level's architecture is built, tested and completed before the next level is added. In this way the system is robust and incrementally more powerful. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Individual levels consist of augmented finite state machines connected by message-passing wires. Higher levels may inhibit signals on these wires, or replace them with their own signals; this is how they exercise control over more basic functions. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;(For more information, see the AI Qual Summary on &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;Agent Architectures&lt;/span&gt;&lt;/em&gt;.) &lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Shakey"&gt;&lt;span style="font-size: 12pt; font-family: Verdana; color: red;"&gt;Shakey&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Shakey was the forerunner of many intelligent &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; projects. The Shakey system was controlled by PLANEX, which accepted goals from the user, called a STRIPS subsystem to generate plans, and then executed them via &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;intermediate-level actions&lt;/span&gt;&lt;/em&gt;. These ILA's were translated into complex routines of &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;low-level actions&lt;/span&gt;&lt;/em&gt; that had some error detection and correction capabilities. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;After each action was executed, PLANES would execute the shortest plan subsequence that led to a goal and whose preconditions were satisfied. In this way, actions that failed would be retried and serendipity would lead to reduced effort. If no subsequence applied, PLANEX called STRIPS to make a new plan. &lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Situated-Automata"&gt;&lt;span style="font-size: 12pt; font-family: Verdana; color: red;"&gt;Situated Automata&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;An approach pioneered by Stan Rosenschein that begins with an explicit representation and reasoning system, but compiles it into a finite-state machine whose inputs come from the environment and whose outputs connect to &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#effector"&gt;effectors&lt;/a&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;This compilation approach distinguishes between the use of explicit knowledge representation by the designers (the "grand strategy") and the use of explicit knowledge within the agent architecture (the "grand tactic"). Rosenschein's compiler generates FSMs that can be &lt;em&gt;&lt;span style="font-family: Verdana;"&gt;proved&lt;/span&gt;&lt;/em&gt; to correspond to logical propositions about the environment, provided the compiler has the correct initial state and physics. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The FLAKEY system at SRI used situated automata to navigate, run errands, and ask questions, and had no explicit representation. &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-5583808301112907742?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/5583808301112907742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=5583808301112907742' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/5583808301112907742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/5583808301112907742'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/09/skeletonization-roadmap-methods.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-640042229972164120</id><published>2007-08-26T07:39:00.000-07:00</published><updated>2007-08-26T07:45:07.250-07:00</updated><title type='text'></title><content type='html'>&lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;In this post we dwell on what are the requisite properties of robot,and the approach to program them accordingly.Also we ponder about some loop holes faced commonly,and about how to avoid them.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;In general, &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robots&lt;/a&gt; should have the following qualities: &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;High reliability &lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;-- if a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; fails, it should be able to recover or to call for help &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;High speed&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;-- a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; should perform its functions as quickly as needed &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Programmability&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; -- the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; should be flexible and easily adaptable to various tasks &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size: 10pt; font-family: Symbol; color: red;"&gt;&lt;span style=""&gt;·&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Low cost &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The ultimate goal is to build &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;autonomous&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robots&lt;/a&gt; that accept commands telling them &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;what&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; to do, without needing to specify exactly &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;how&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;.&lt;br /&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;h2&gt;&lt;a name="Task-Planning"&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Task Planning&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;By virtue of their versatility, &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robots&lt;/a&gt; can be difficult to program, especially for tasks requiring complex motions involving sensory feedback. In order to simplify programming, &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;task-level&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; languages exist that specify actions in terms of their effects on objects. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;Example: pin&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; A programmer should be able to specify that the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; should put a pin in a hole, without telling it what sequence of operators to use, or having to think about its sensory or motor operators. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Task planning is divided into three phases: modeling, task specification, and manipulator program synthesis. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;There are three approaches to specifying the model state: &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;1.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Using a CAD system to draw the positions of the objects in the desired configuration. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;2.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Using the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; itself to specify its configurations and to locate the object features. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;3.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Using symbolic spatial relationships between object features (such as &lt;/span&gt;&lt;tt&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;(face1 against face2)&lt;/span&gt;&lt;/tt&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;. This is the most common method, but must be converted into numerical form to be used. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;One problem is that these configurations may &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;overconstrain&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; the state. Symmetry is an example; it does not matter what the orientation of a peg in a hole is. The final state may also not completely specify the operation; for example, it may not say how hard to tighten a bolt. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The three basic kinds of motions are free motion, &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#guarded-motion"&gt;guarded motion&lt;/a&gt;, and &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#compliant-motion"&gt;compliant motion&lt;/a&gt;. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;An important part of &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; program synthesis should be the inclusion of sensor tests for error detection.&lt;br /&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;h2&gt;&lt;a name="Motion-Planning"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Motion Planning&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;p class="link"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The fundamental problem in &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robotics&lt;/a&gt; is deciding what motions the robot should perform in order to achieve a goal arrangement of physical objects. This turns out to be an extremely hard problem. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;h3&gt;&lt;a name="Motion-Planning-Definitions"&gt;&lt;span style="font-size: 18pt; font-family: Verdana; color: red;"&gt;Motion Planning Definitions&lt;/span&gt;&lt;/a&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="basic-motion-planning-problem"&gt;&lt;b&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;Basic motion planning problem&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Let &lt;b&gt;A&lt;/b&gt; be a single rigid object (the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot)&lt;/a&gt; moving in a Euclidean space &lt;b&gt;W&lt;/b&gt;, called the &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;workspace&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;, represented as &lt;b&gt;R&lt;sup&gt;n&lt;/sup&gt;&lt;/b&gt; (where n = 2 or 3). Let &lt;b&gt;B&lt;sub&gt;1&lt;/sub&gt;&lt;/b&gt;, ..., &lt;b&gt;B&lt;sub&gt;q&lt;/sub&gt;&lt;/b&gt; be fixed rigid objects distributed in &lt;b&gt;W&lt;/b&gt;. These are called &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;obstacles&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;.&lt;br /&gt;&lt;br /&gt;Assume that the geometry of &lt;b&gt;A&lt;/b&gt;, and the geometries and locations of the &lt;b&gt;B&lt;sub&gt;i&lt;/sub&gt;&lt;/b&gt;'s are accurately known. Assume also that no kinematic constraints limit the motions of &lt;b&gt;A&lt;/b&gt; (so that &lt;b&gt;A&lt;/b&gt; is a &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;free-flying object&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;).&lt;br /&gt;&lt;br /&gt;Given an initial position and orientation and a goal position and orientation of &lt;b&gt;A&lt;/b&gt; in &lt;b&gt;W&lt;/b&gt;, the problem is to generate a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; &lt;b&gt;t&lt;/b&gt; specifying a continuous sequence of positions and orientations of &lt;b&gt;A&lt;/b&gt; avoiding contact with the &lt;b&gt;B&lt;sub&gt;i&lt;/sub&gt;&lt;/b&gt;'s.&lt;br /&gt;&lt;br /&gt;(Basically, given a &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt;, a bunch of objects, a start state and a goal state, find a path for the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; to reach the goal state.)&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="configuratio-of-object-A"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;configuration of object A&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A specification of the position of every point in the object, relative to a fixed frame of reference. To specify the configuration of a rigid object &lt;b&gt;A&lt;/b&gt;, it is enough to specify the position and orientation of the frame &lt;b&gt;F&lt;sub&gt;A&lt;/sub&gt;&lt;/b&gt; with respect to &lt;b&gt;F&lt;sub&gt;W&lt;/sub&gt;&lt;/b&gt;. The subset of &lt;b&gt;W&lt;/b&gt; occupied by &lt;b&gt;A&lt;/b&gt; at configuration &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; is denoted by &lt;b&gt;A&lt;/b&gt;(&lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;).&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="configuration-space-of-object-A"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;configuration space of object A&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The space &lt;b&gt;C&lt;/b&gt; of all configurations of &lt;b&gt;A&lt;/b&gt;. The idea is to represent the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; as a point and thus reduce the motion planning problem to planning for a point.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="dimension-of-C"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;dimension of C&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The dimension of a configuration space is the number of independent parameters required to represent it as &lt;b&gt;R&lt;sup&gt;m&lt;/sup&gt;&lt;/b&gt;. This is 3 for 2-D, and 6 for 3-D.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="chart"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;chart&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A representation of a local portion of the configuration space. &lt;b&gt;C&lt;/b&gt; can be decomposed into a finite union of slightly overlapping &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;patches&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; called &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;charts&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;, each represented as a copy of &lt;b&gt;R&lt;sup&gt;m&lt;/sup&gt;&lt;/b&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p class="text" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; &lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-size:100%;" &gt; Distance between configurations&lt;/span&gt;&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 13.5pt; font-family: Verdana; color: red;"&gt;&lt;a name="distance-between-configurations"&gt;&lt;/a&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#distance-between-configurations"&gt;distance between configurations&lt;/a&gt; &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; and &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q'&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; should decrease and tend to zero when the regions &lt;b&gt;A&lt;/b&gt;(&lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;) and &lt;b&gt;A&lt;/b&gt;(&lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q'&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;) get closer and tend to &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;coincide&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;.&lt;br /&gt;  &lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;    &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;&lt;a name="path"&gt;&lt;/a&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-size:100%;" &gt;Path&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;A &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; from a configuration &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;sub&gt;init&lt;/sub&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; to configuration &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;sub&gt;goal&lt;/sub&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; is a continuous map &lt;b&gt;t&lt;/b&gt; : [0,1] -&gt; &lt;b&gt;C&lt;/b&gt; with &lt;b&gt;t&lt;/b&gt;(0) = &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;sub&gt;init&lt;/sub&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; and &lt;b&gt;t&lt;/b&gt;(1) = &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;sub&gt;goal&lt;/sub&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="free-flying-object"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;free-flying object&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;An object for which, in the absence of any obstacles, any &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;path&lt;/a&gt; is feasible.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="C-obstacle"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;C-obstacle&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;An obstacle mapped into configuration space. Every obstacle &lt;b&gt;B&lt;sub&gt;i&lt;/sub&gt;&lt;/b&gt; is mapped to the following region in the workspace called the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacle&lt;/a&gt;: &lt;b&gt;CB&lt;sub&gt;i&lt;/sub&gt;&lt;/b&gt; = { &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; in &lt;b&gt;C&lt;/b&gt; : &lt;b&gt;A&lt;/b&gt;(&lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;q&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;) intersected with &lt;b&gt;B&lt;sub&gt;i&lt;/sub&gt;&lt;/b&gt; != empty set }.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="C-obstacle-region"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;C-obstacle region&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;The union of all the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacles&lt;/a&gt;.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="Free_space"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;Free space&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;All of the configuration space less the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#C-obstacle"&gt;C-obstacle&lt;/a&gt; region, called &lt;b&gt;C&lt;sub&gt;free&lt;/sub&gt;&lt;/b&gt;. A configuration in &lt;b&gt;C&lt;sub&gt;free&lt;/sub&gt;&lt;/b&gt; is called a &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;free configuration&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; and a &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;free &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;&lt;span style="font-size: 10pt;"&gt;path&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; is a path where &lt;b&gt;t&lt;/b&gt; maps to &lt;b&gt;C&lt;sub&gt;free&lt;/sub&gt;&lt;/b&gt; instead of to &lt;b&gt;C&lt;/b&gt;. A &lt;/span&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;semi-free &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#path"&gt;&lt;span style="font-size: 10pt;"&gt;path&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt; maps to the closure of &lt;b&gt;C&lt;sub&gt;free&lt;/sub&gt;&lt;/b&gt;.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="kinematics"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;kinematics&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Motions in the abstract, without reference to force or mass. Russell and Norvig define it as the study of the correspondence between the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#actuator"&gt;actuator&lt;/a&gt; motions in a mechanism and the resulting motion of its parts.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="dynamics"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;dynamics&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Motions of material bodies under the action of forces.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="force-compliant-motion"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;force-compliant motion&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="link" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Motions in which the &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;robot&lt;/a&gt; may touch obstacle surfaces and slide along them. These are more accurate than position-controlled commands.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: Verdana; color: rgb(255, 0, 0); font-weight: bold;"&gt;Rotary  motion&lt;a name="rotary-motion"&gt;&lt;/a&gt; &lt;/span&gt;&lt;b&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Rotation around a fixed hub.&lt;br /&gt; &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a name="prismatic-motion"&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt;prismatic motion&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="font-family: Verdana; color: red;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="text" style="margin-left: 0.5in;"&gt;&lt;span style="font-size: 10pt; font-family: Verdana;"&gt;Linear movement, as with a piston in a cylinder&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-640042229972164120?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/640042229972164120/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=640042229972164120' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/640042229972164120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/640042229972164120'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/08/in-this-post-we-dwell-on-what-are.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-8808707659515633452</id><published>2007-08-13T05:49:00.000-07:00</published><updated>2007-08-13T05:55:07.029-07:00</updated><title type='text'></title><content type='html'>&lt;h2 style="font-weight: normal; color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:180%;"&gt;&lt;a name="Definitions"&gt;                           Definitions&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;           &lt;dl&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="robot"&gt;robot&lt;/a&gt;             &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;A versatile mechanical device              equipped with             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#actuator"&gt;             actuators&lt;/a&gt; and             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#sensors"&gt;             sensors&lt;/a&gt; under the control of a computing system. Russell and              Norvig define it as "an active, artificial agent whose environment              is the physical world."&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="task-planner"&gt;task              planner&lt;/a&gt; &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;A program that converts task-level              specifications into manipulator-level specifications. The             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#task-lanner"&gt;             task planner&lt;/a&gt; must have a description of the objects being              manipulated, the task environment, the             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt;, and the initial and desired final states of the              environment. The output should be a             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt; program that converts the initial state into the desired              final state.&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;             &lt;a name="guarded-motion"&gt;guarded motion&lt;/a&gt; &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="text"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;A motion of the form &lt;b&gt;move along             &lt;em&gt;path&lt;/em&gt; until &lt;em&gt;sensory-condition&lt;/em&gt;&lt;/b&gt;.&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;             &lt;a name="compliant-motion"&gt;compliant motion&lt;/a&gt; &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="text"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;A motion of the form &lt;b&gt;move along              direction &lt;em&gt;d&lt;/em&gt; with force = 0 perpendicularly to &lt;em&gt;d&lt;/em&gt;&lt;/b&gt;.              More intuitively, moving along a surface while maintaining a fixed              pressure, such as when scraping paint off of a window with a razor.&lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt&gt; &lt;/dt&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="effector"&gt;effector&lt;/a&gt;             &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;The bits the             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt; does stuff with. That is, arms, legs, hands, feet. An &lt;em&gt;             end-effector&lt;/em&gt; is a functional device attached to the end of a             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt; arm (e.g., grippers).&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="actuator"&gt;actuator&lt;/a&gt;             &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="text"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;A device that converts software              commands into physical motion, typically electric motors or              hydraulic or pneumatic cylinders.&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;             &lt;a name="degree-of-freedom"&gt;degree of freedom&lt;/a&gt; &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;A dimension along which the             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt; can move itself or some part of itself. Free objects in              3-space have 6 degrees of freedom, three for position and three for              orientation.&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="sensors"&gt;sensors&lt;/a&gt;             &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;Devices that monitor the              environment. There are contact             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#sensors"&gt;             sensors&lt;/a&gt; (touch and force), and non-contact (e.g.,             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#sonar"&gt;             sonar)&lt;/a&gt;.&lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="sonar"&gt;sonar&lt;/a&gt;             &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="text"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;Sensing system that works by              measuring the time of flight of a sound pulse to be generated, reach              an object, and be reflected back to the sensor. Wide angle but              reasonably accurate in depth (the wide angle is the disadvantage).&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="infrared"&gt;infrared&lt;/a&gt;             &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="text"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;Very accurate angular resolution              system but terrible in depth measurement.&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;             &lt;a name="recognizable-set"&gt;recognizable set&lt;/a&gt; &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;An envelope of possible              configurations a             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt; may be in at present;             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#recognizable-set"&gt;             recognizable sets&lt;/a&gt; are to continuous domains what multiple state              sets are to discrete ones. A             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#recognizable-set"&gt;             recognizable set&lt;/a&gt; with respect to a sensor reading is the set of              all world states in which the             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt; might be upon receiving that sensor reading.&lt;br /&gt; &lt;/span&gt;             &lt;/p&gt;&lt;/dd&gt;&lt;dt style="color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="landmark"&gt;landmark&lt;/a&gt;             &lt;/span&gt;&lt;/dt&gt;&lt;dd&gt;             &lt;p class="text"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;An easily recognizable, unique              element of the environment that the robot can use to get its              bearings.&lt;/span&gt;           &lt;/p&gt;&lt;/dd&gt;&lt;/dl&gt;           &lt;h2 style="font-weight: normal; color: rgb(255, 0, 0);" class="text"&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;&lt;a name="Motivations"&gt;Motivations&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;           &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;The important incentives for building           &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;           robots&lt;/a&gt; are social, replacing humans in undesirable or dangerous            jobs, and economic, reducing the cost of manufacturing while improving            its quality. &lt;/span&gt;&lt;/p&gt;           &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;The real world has the following            qualities, that any           &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;           robot&lt;/a&gt; design must take into account: &lt;/span&gt;&lt;/p&gt;           &lt;ul&gt;&lt;li&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;b style="font-weight: bold;"&gt;inaccessible&lt;/b&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;--             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#sensors"&gt;             sensors&lt;/a&gt; are imperfect, and can only perceive local stimuli             &lt;/span&gt;             &lt;/p&gt;&lt;/li&gt;&lt;li&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;nondeterministic&lt;/span&gt; -- the             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt; can never be certain an action will work as expected,              since wheels slip, batteries run down, etc. &lt;/span&gt;             &lt;/p&gt;&lt;/li&gt;&lt;li&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;nonepisodic&lt;/span&gt; -- the effects              of an action change over time, so             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robots&lt;/a&gt; should handle sequential decision problems and learning             &lt;/span&gt;             &lt;/p&gt;&lt;/li&gt;&lt;li&gt;             &lt;p class="link"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;dynamic&lt;/span&gt; -- a             &lt;a href="http://www.electronicsteacher.com/robotics/robotics-planning.php#robot"&gt;             robot&lt;/a&gt; has to know when to think and when to act right away             &lt;/span&gt;             &lt;/p&gt;&lt;/li&gt;&lt;li&gt;             &lt;p class="text"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;continuous&lt;/span&gt; -- states and              actions are drawn from a continuum of physical configurations and              motions &lt;/span&gt;           &lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-8808707659515633452?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/8808707659515633452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=8808707659515633452' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/8808707659515633452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/8808707659515633452'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/08/definitions-robot-versatile-mechanical.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-841333640518414799</id><published>2007-08-03T09:48:00.000-07:00</published><updated>2007-08-03T09:50:25.793-07:00</updated><title type='text'></title><content type='html'>&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;&lt;span style="font-weight: bold;"&gt;                        Robotics - Future of Robotics&lt;/span&gt;&lt;/span&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="text"&gt;    Artificial intelligence and robotics              expert Rod Brooks forecasts major changes in the next 50 years. Much              in the way that computers have revolutionized society, robots may              take on an increasingly significant role in people's lives. As part              of the Gerard Salton Lecture Series, Brooks delivered a talk              yesterday entitled "Flesh and Machines: Robots and People" to              discuss potential applications of intelligent robots.              &lt;/p&gt;             &lt;p class="text"&gt;Brooks, who directs the Computer              Science and Artificial Intelligence Laboratory (CSAIL) at MIT,              asserted that we have more in common with robots, and machines in              general, than we think. &lt;/p&gt;             &lt;p class="text"&gt;"Mankind has had a long history of              retreat from 'special-ness,'" Brooks said. &lt;/p&gt;             &lt;p class="text"&gt;Centuries ago, humans discovered              that Earth was not, in fact, the center of the universe. Later,              humans and animals were found to have common ancestors. DNA as the              fundamental mechanism of life means that humans and yeast are              somewhat similar. &lt;/p&gt;             &lt;p class="text"&gt;"Over time men have become less              special and more like technology," Brooks said. "We only have 25,000              genes -- even potatoes have more than that!" &lt;/p&gt;             &lt;p class="text"&gt;Brooks showed videos of several              robots designed in his lab. In one scene, Brooks's colleague Cynthia              "plays" with a robot she designed, Kismet. &lt;/p&gt;             &lt;p class="text"&gt;"We see her moving that eraser,              then the robot moving it. They're taking turns." At least, Brooks              added, that's what the average observer would think. "But when we              thought about it, she was doing all the work. She was giving the              robot motion cues. That set us off on reading literature on child              development." &lt;/p&gt;             &lt;p class="text"&gt;Like Cynthia, mothers give their              infants motion cues. They engage in activities with their children              that the children cannot do by themselves, but can be trained to do              with their caregiver's help. &lt;/p&gt;             &lt;p class="text"&gt;"What the robot sees drives what it              does," Brooks said. &lt;/p&gt;             &lt;p class="text"&gt;Inside these robots exists a              three-dimensional space; the robot's emotions are a point in that              space. The robot uses its emotional state to generate how it reacts              to certain objects, and can display emotion through facial              expressions. &lt;/p&gt;             &lt;p class="text"&gt;In another experiment suggestive of              robots' similarity to children in their earliest stages of              development, the lab called in various people to speak with the              robot. &lt;/p&gt;             &lt;p class="text"&gt;"When a mother interacts with her              child, she generates messages through her voice: praise, attention,              prohibition,and soothing are the four basic messages," Brooks said.             &lt;/p&gt;             &lt;p class="text"&gt;In the video, when one woman said,              "Good job, Kismet! Look at my smile!" in an encouraging voice, the              robot smiled proudly. When another said, "No, no, that's not              appropriate" in a disparaging tone, Kismet lowered his head, his              large ears drooping. &lt;/p&gt;             &lt;p class="text"&gt;Although robots like Kismet don't              actually understand the meanings of words, they are able to vocally              replicate phonemes. As people teach various words to Kismet and Cog,              another of CSAIL's robots, the robots can repeat them and identify              them with their corresponding objects. &lt;/p&gt;             &lt;p class="text"&gt;Brooks acknowledges that the              development of intelligent robots is still in beginning stages,              although significant progress has been made in areas like              navigation. However, he said, "I think beyond navigation, robots              have new possibilities which will be important." &lt;/p&gt;             &lt;p class="text"&gt;As the world's demographics shift              in the next half century, robots can be useful in fields such as              manufacturing, agriculture and elderly assistance. Brooks imagines              being able to roboticize large agriculture machines for the              maintenance of individual plants. Such robots could do menial and              time-consuming tasks like pruning and picking. &lt;/p&gt;             &lt;p class="text"&gt;"Europe and the U.S. import              low-cost labor now ... But that labor may not be there in 50 years,"              Brooks said. &lt;/p&gt;             &lt;p class="text"&gt;Second, robot arms could be used              for fixed automation, which is particularly useful in manufacturing.              Such robots would require the dexterity of a six-year-old, said              Brooks. Third, he hoped that robots could be developed to provide              in-home care to the elderly, who will soon comprise a much larger              demographic in places like North America, Europe, Korea and Japan.             &lt;/p&gt;             &lt;p class="text"&gt;The future, however, holds many              challenges to realizing certain robotic applications. "Will we              accept robots?" Brooks asked the audience. &lt;/p&gt;             &lt;p class="text"&gt;It may be hard, he explained, for              humans to come to grips with machines that may equal or surpass              their own capabilities. Few people want to admit that their emotions              can exist within a machine. &lt;/p&gt;             &lt;p class="text"&gt;"I'm not saying current robots have              real emotions, but if they did, it would be hard for people to              accept ... and there would certainly be legislation against it!"              Brooks said as the audience laughed. &lt;/p&gt;             &lt;p class="text"&gt;"I liked the lecture very much,"              said Hugo Fierro grad. "I already took some courses on robots, but              never thought about the philosophical aspect of it. I liked his              predictions, although they're very futuristic." &lt;/p&gt;             &lt;p class="text"&gt;"It was a lot of fun. I heard some              very interesting and provocative ideas," said Prof. Graeme Bailey,              computer science. &lt;/p&gt;             &lt;p class="text"&gt;And as for the possibility of              Brooks' vision becoming reality someday? "I hope so," Bailey said.              "If one was to answer no to that, we have a somewhat dismal future              for ourselves." &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-841333640518414799?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/841333640518414799/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=841333640518414799' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/841333640518414799'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/841333640518414799'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/08/robotics-future-of-robotics-artificial.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-5067892506476098071</id><published>2007-07-17T05:55:00.000-07:00</published><updated>2007-07-17T06:03:10.647-07:00</updated><title type='text'></title><content type='html'>&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="chapterhead" align="center"&gt;&lt;span style="font-size:180%;"&gt;Robotics - Current Research&lt;/span&gt;&lt;/p&gt;                                                            &lt;p class="text" align="justify"&gt;The robots of            tomorrow will be the direct result of the robotic research projects of            today. The goals of most robotic research projects is the advancement            of abilities in one or more of the following technological areas: &lt;/p&gt;           &lt;p class="link" align="justify"&gt;           &lt;span style="text-decoration: underline;"&gt;Artificial intelligence&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;effectors and mobility&lt;/span&gt;,sensor detection and especially            robotic vision, and &lt;span style="text-decoration: underline;"&gt;control systems&lt;/span&gt;.&lt;/p&gt;           &lt;p class="text" align="justify"&gt;These            technological advances will lead to improvements and innovations in            the application of robotics to industry, medicine, the military, space            exploration, underwater exploration, and personal service. The            research projects listed below are only a few of many robotic research            projects worldwide.&lt;/p&gt;           &lt;p class="headline" align="center"&gt;           &lt;a name="p1"&gt;&lt;/a&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;Artificial Intelligence&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;           &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header" align="justify"&gt;&lt;span style="font-size:100%;"&gt;Human Behavior and            Emotion&lt;/span&gt;&lt;/p&gt;           &lt;table border="0" height="100%" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td height="1" valign="top" width="20%"&gt;               &lt;table border="0" height="146" width="64%"&gt;                 &lt;tbody&gt;&lt;tr&gt;                   &lt;td height="142" valign="top" width="100%"&gt;                   &lt;p class="text"&gt;                                      &lt;img src="http://www.electronicsteacher.com/robotics/images/big_COG_red.jpg" border="0" height="136" width="136" /&gt;                  &lt;br /&gt;                  Cog, a humanoid robot from MIT.&lt;/p&gt;&lt;/td&gt;                 &lt;/tr&gt;               &lt;/tbody&gt;&lt;/table&gt;               &lt;/td&gt;               &lt;td height="1" valign="top" width="80%"&gt;               &lt;p class="text"&gt;               Two of the many research projects of                the MIT Artificial Intelligence department include an artificial                humanoid called Cog, and his baby brother, Kismet. What the                researchers learn while putting the robots together will be shared                to speed up development.                &lt;/p&gt;               &lt;p class="text"&gt;Once finished, Cog                will have everything except legs, whereas Kismet has only a                3·6-kilogram head that can display a wide variety of emotions. To                do this Kismet has been given movable facial features that can                express basic emotional states that resemble those of a human                infant. Kismet can thus let its "parents" know whether it needs                more or less stimulation--an interactive process that the                researchers hope will produce an intelligent robot that has some                basic "understanding" of the world.&lt;br /&gt; &lt;/p&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;               &lt;td colspan="2" height="100" valign="top" width="100%"&gt;               &lt;p class="text"&gt;               This approach of creating AI by                building on basic behaviors through interactive learning contrasts                with older methods, in which a computer is loaded with lots of                facts about the world in the hope that intelligence will                eventually emerge.                &lt;/p&gt;               &lt;p class="text"&gt;Cog is 2 meters tall, complete                with arms, hands and all three senses--including touch-sensitive                skin. Its makers will eventually try to use the same sort of                social interaction as Kismet to help Cog develop intelligence                equivalent to that of a two-year-old child.&lt;/p&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;table border="0" height="100%" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td height="109" valign="top" width="45%"&gt;               &lt;p class="text"&gt;               Kismet is an autonomous robot                designed for social interactions with humans and is part of the                larger Cog Project. This project focuses not on robot-robot                interactions, but rather on the construction of robots that engage                in meaningful social exchanges with humans. By doing so, it is                possible to have a socially sophisticated human assist the robot                in acquiring more sophisticated communication skills and helping                it learn the meaning these acts have for others.&lt;/p&gt;&lt;/td&gt;               &lt;td height="109" valign="top" width="55%"&gt;               &lt;table border="0" height="131" width="100%"&gt;                 &lt;tbody&gt;&lt;tr&gt;                   &lt;td height="127" width="100%"&gt;                   &lt;img src="http://www.electronicsteacher.com/robotics/images/Big_Kismet.jpg" border="0" height="93" width="128" /&gt;                                      &lt;h5 class="header"&gt;&lt;span style="font-family:Verdana;"&gt;Kismet with its creator, Cybthia                    Breazeal&lt;br /&gt;                  of MIT.  Breazeal also helped create Cog.&lt;/span&gt;&lt;/h5&gt; &lt;span style="font-family:Verdana;"&gt;                  &lt;/span&gt;&lt;/td&gt;                 &lt;/tr&gt;               &lt;/tbody&gt;&lt;/table&gt;               &lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;               &lt;td colspan="2" height="118" width="100%"&gt;               &lt;p class="text"&gt;                              &lt;img src="http://www.electronicsteacher.com/robotics/Kismet.jpg" style="float: left;" border="0" height="164" width="165" /&gt;Kismet has a repertoire of responses driven by emotive and                behavioral systems. The hope is that Kismet will be able to build                upon these basic responses after it is switched on or "born",                learn all about the world and become intelligent.                &lt;/p&gt;               &lt;p class="text"&gt;Crucial to its drives are the                behaviors that Kismet uses to keep its emotional balance. For                example, when there are no visual cues to stimulate it, such as a                face or toy, it will become increasingly sad and lonely and look                for people to play with.&lt;/p&gt;               &lt;p class="text"&gt;Any advances made with Kismet                will be passed on to its big brother Cog, the robot brainchild of                Rodney Brooks, head of MIT's AI department.&lt;/p&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-size:100%;"&gt;Hardware and Software Brains&lt;/span&gt;&lt;/p&gt;           &lt;table border="0" cellpadding="0" height="100%" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td height="247" valign="top"&gt;               &lt;p class="text"&gt;In                mimicking human intelligence, the goal is to make sure robots get                a brain and reasoning. An important pioneer in the field of AI is                Marvin Minsky.                &lt;/p&gt;               &lt;p class="text"&gt;Without a brain capable of                processing input, a robot cannot react to its environment. A brain                can be stimulated in hardware or software. Most robots at present                have software brains, meaning a computer with a program running.                These robots are connected to or equipped with a computer. A                drawback is the limited number of processes that can be run on                today's computers and the single purpose programs running on these                computers. The programs cannot change themselves.  In other words,                learning is not possible.&lt;br /&gt;             &lt;br /&gt;              A brain made out of hardware, or a number of processors will be                closer to reality. The brain will consists of several chips that                act both independently and as a group.  The general belief is that                the real brain works as a neural network of lots of independent                processing units. Every chip in itself has a small program. It                will process information but also pass it on to other chips. The                program changes on a continuous basis. The network of chips is                quick and will adapt, so in contrast with the software brain, it                will learn.&lt;/p&gt;               &lt;p class="text"&gt;An example of a hardware brain                is Robokoneko the robocat from Genobyte. It has a  brain from a                machine, the CAM-machine.&lt;/p&gt;&lt;/td&gt;               &lt;td height="247" valign="top"&gt;                 &lt;img src="http://www.electronicsteacher.com/robotics/images/kittendiagramFromGenobyte.gif" border="0" height="105" width="140" /&gt;&lt;br /&gt;             &lt;br /&gt;              &lt;img src="http://www.electronicsteacher.com/robotics/images/kitten_wired_From_genobyte.gif" border="0" height="90" width="139" /&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;p class="headline" align="center"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;b&gt;&lt;a name="p2"&gt;&lt;/a&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;Effectors            and &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;Mobility&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Autonomous Flying Vehicle Project&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;table border="0" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td valign="top" width="27%"&gt;               &lt;img src="http://www.electronicsteacher.com/robotics/coverpic-USC.gif" style="float: left;" border="0" width="200" /&gt;&lt;/td&gt;               &lt;td valign="top" width="100%"&gt;               &lt;p class="text"&gt;Robot helicopter research began at the University of Southern                California in 1991 with the formation of the Autonomous Flying                Vehicle Project and continues to the present day. The first robot                built was the AFV (Autonomous Flying Vehicle). The AVATAR                (Autonomous Vehicle Aerial Tracking And Retrieval), was created in                1994. The current robot, the second generation AVATAR (Autonomous                Vehicle Aerial Tracking And Reconnaissance), was developed in                1997. The ``R'' in AVATAR changed to reflect a change in robot                capabilities.&lt;/p&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Fish Robot&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;table border="0" height="75%" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td height="71" valign="top" width="65%"&gt;               &lt;p class="text"&gt;               Without question, the fish is the                best swimmer in the world. That is why the Ship Research Institute                of Japan decided to build the Fish Robot. This project hopes to                apply what is learned while building and researching with the Fish                Robot to the design and construction of ships.&lt;/p&gt;&lt;/td&gt;               &lt;td height="71" valign="top" width="36%"&gt;                              &lt;img src="http://www.electronicsteacher.com/robotics/images/pf600_wa-snmot-go-jp.jpg" style="float: left;" border="0" height="114" width="153" /&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Muscles&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;table border="0" cellpadding="0" height="100%" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td height="292" valign="top" width="424"&gt;               &lt;p class="text"&gt;Robots use electro-engines for movement. Engine parts are                relatively cheap and last long. Engines are applied to move arm,                turn wheels or move other parts, for instance camera's. Engines                are less usefull with walking robots. In that particular case                engines prove to be a weak part, a jumping robot is a mayor                challenge to engine parts. Human being use muscle, which contract                and expand, to move around. A muscle receive a signal form the                brain and contracts. Causing a joint, like the knee to move.&lt;/p&gt;&lt;p class="text"&gt;Material to mimic a muscle is still a dream. Nitinol, an alloy                that consist of the metals nickel and titanium will shrink if an                electric current travels through the alloy, it will only contract                8% maximum.&lt;/p&gt;&lt;p class="text"&gt;The downside, nitinol is very expensive en the contraction is                too little to allow it to be used to make walking robots. For the                time being walking robots will not use muscles or engines but                pneumatic of hydrolic technologies.&lt;br /&gt;              &lt;img src="http://www.electronicsteacher.com/robotics/images/sojournerFromRobotstore.gif" align="left" border="0" height="95" width="118" /&gt;&lt;/p&gt;&lt;/td&gt;               &lt;td height="292" valign="top" width="386"&gt;&lt;center&gt;               &lt;p&gt;&lt;br /&gt;              &lt;img src="http://www.electronicsteacher.com/robotics/images/soujournertopdiagramFromRobotstore.gif" align="left" height="241" width="203" /&gt;&lt;/p&gt;               &lt;/center&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Robocup&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;table border="0" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td width="38%"&gt;               &lt;img src="http://www.electronicsteacher.com/robotics/images/robocup1.jpg" border="0" height="195" width="294" /&gt;&lt;/td&gt;               &lt;td width="62%"&gt;               &lt;img src="http://www.electronicsteacher.com/robotics/images/robocup2.jpg" border="0" height="175" width="259" /&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;               &lt;td colspan="2" width="100%"&gt;               &lt;p class="text"&gt;To                demonstrate advances in research and to stimulate scientist to                share progress the Robocup competition is organized a few times a                year. Robocup is a competition of Robot soccer teams. Movement,                pattern recognition, where's the ball, where's the goal, who is in                my team, all this and more is needed to score a goal. A simple                games becomes a challenge for a robot team. Besides moving and                finding the ball and team members the robots needs to define a                strategy and take lots of decisions in a short time frame. Robocup                has produced many advancements in both robotic effectors and                sensors. Who could have imagined that soccer would contribute to                robot research where robots eventually will be smart and capable                of cooperation with other to reach a goal?&lt;/p&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;/span&gt;&lt;p class="headline" align="center"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;a name="p3"&gt;&lt;/a&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;Sensor            Detection&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Robotic Vision&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;table border="0" height="769" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td height="765" width="100%"&gt;               &lt;table border="0" width="100%"&gt;                 &lt;tbody&gt;&lt;tr&gt;                   &lt;td width="100%"&gt;                   &lt;p class="text"&gt;                   &lt;img src="http://www.electronicsteacher.com/robotics/images/family-sm-braunl.jpg" style="float: left;" border="0" /&gt;Machine vision involves devices which sense images and                    processes which interpret the images.  Thomas Braunl of The                    University of Western Australia provides an excellent example                    of robotic vision research in both hardware and software.                                      &lt;/p&gt;                   &lt;p&gt;                   &lt;img src="http://www.electronicsteacher.com/robotics/images/vehicle-eyebot-braunl.jpg" border="0" height="223" width="330" /&gt;&lt;/p&gt;&lt;/td&gt;                 &lt;/tr&gt;               &lt;/tbody&gt;&lt;/table&gt;               &lt;table border="0" width="100%"&gt;                 &lt;tbody&gt;&lt;tr&gt;                   &lt;td colspan="2" valign="top" width="100%"&gt;                   &lt;p class="text"&gt;                   EyeBot is a controller for                    mobile robots with wheels, walking robots or flying robots. It                    consists of a powerful 32-Bit microcontroller board with a                    graphics display and a digital grayscale or color camera. The                    camera is directly connected to the robot board (no frame                    grabber). This allows programmers to write powerful robot                    control programs without a big and heavy computer system and                    without having to sacrifice vision.                    &lt;/p&gt;                   &lt;ul&gt;&lt;li&gt;                     &lt;p class="text"&gt;Ideal basis for                      programming of real time image processing                      &lt;/p&gt;&lt;/li&gt;&lt;li&gt;                     &lt;p class="text"&gt;Integrated digital camera                      (grayscale or color)                      &lt;/p&gt;&lt;/li&gt;&lt;li&gt;                     &lt;p class="text"&gt;Large graphics display                      (LCD)                      &lt;/p&gt;&lt;/li&gt;&lt;li&gt;                     &lt;p class="text"&gt;Can be extended with own                      mechanics and sensors to full mobile robot                      &lt;/p&gt;&lt;/li&gt;&lt;li&gt;                     &lt;p class="text"&gt;Programmed from IBM-PC or                      Unix workstation,&lt;br /&gt;                    programs are downloaded via serial line (RS-232) into RAM or                      Flash-ROM                      &lt;/p&gt;&lt;/li&gt;&lt;li&gt;                     &lt;p class="text"&gt;Programming in C or                      assembly language                    &lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;                   &lt;/td&gt;                 &lt;/tr&gt;                 &lt;tr&gt;                   &lt;td valign="top" width="50%"&gt;                   &lt;img src="http://www.electronicsteacher.com/robotics/images/ebpins-joker.gif" border="0" height="215" width="282" /&gt;&lt;/td&gt;                   &lt;td valign="top" width="68%"&gt;                   &lt;img src="http://www.electronicsteacher.com/robotics/images/ebdescript-joker.gif" border="0" height="202" width="268" /&gt;&lt;/td&gt;                 &lt;/tr&gt;               &lt;/tbody&gt;&lt;/table&gt;               &lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;table border="0" height="100%" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td height="151" valign="top" width="100%"&gt;               &lt;p class="text"&gt;                              &lt;img src="http://www.electronicsteacher.com/robotics/images/improv-s-braunl.gif" style="float: left;" border="0" height="147" width="204" /&gt;&lt;i&gt;Improv&lt;/i&gt; is a tool for basic real time image processing with low                resolution, e.g. suitable for mobile robots. It has been developed                for PCs with &lt;i&gt;Linux&lt;/i&gt; operating system. &lt;i&gt;Improv&lt;/i&gt; works                with a number of inexpensive low-resolution digital cameras (no                framegrabber required), and is available from Joker Robotics.&lt;i&gt;                  Improv&lt;/i&gt; displays the live camera image in the first window,                while subsequent image operations can be applied to this image in                five more windows. For each sub-window, a sequence of image                processing routines may be specified.&lt;/p&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;/span&gt;&lt;p class="header"&gt;&lt;span style="font-family:Verdana;"&gt;                         &lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt; Sensor Based Motion Planning&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;Sensor Based Planning incorporates            sensor information, reflecting the current state of the environment,            into a robot's planning process, as opposed to classical planning ,            where full knowledge of the world's geometry is assumed to be known            prior to the planning event. Sensor based planning is important            because: (1) the robot often has no a priori knowledge of the world;            (2) the robot may have only a coarse knowledge of the world because of            limited memory; (3) the world model is bound to contain inaccuracies            which can be overcome with sensor based planning strategies; and (4)            the world is subject to unexpected occurrences or rapidly changing            situations. &lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;There already exists a large            number of classical path planning methods. However, many of these            techniques are not amenable to sensor based interpretation. It is not            possible to simply add a step to acquire sensory information, and then            construct a plan from the acquired model using a classical technique,            since the robot needs a path planning strategy in the first place to            acquire the world model. &lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;The first principal problem in            sensor based motion planning is the &lt;em&gt;find-goal&lt;/em&gt; problem. In            this problem, the robot seeks to use its on-board sensors to find a            collision free path from its current configuration to a goal            configuration. In the first variation of the find goal problem, which            we term the &lt;em&gt;absolute find-goal &lt;/em&gt;problem, the absolute            coordinates of the goal configuration are assumed to be known. A            second variation on this problem is described below. &lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;The second principal problem in            sensor based motion planning is &lt;em&gt;sensor-based exploration&lt;/em&gt;, in            which a robot is not directed to seek a particular goal in an unknown            environment, but is instead directed to explore the apriori unknown            environment in such a way as to see all potentially important            features. The exploration problem can be motivated by the following            application. Imagine that a robot is to explore the interior of a            collapsed building, which has crumbled due to an earthquake, in order            to search for human survivors. It is clearly impossible to have            knowledge of the building's interior geometry prior to the            exploration. Thus, the robot must be able to see, with its on-board            sensors, all points in the building's interior while following its            exploration path. In this way, no potential survivors will be missed            by the exploring robot. Algorithms that solve the find-goal problem            are not useful for exploration because the location of the ``goal'' (a            human survivor in our example) is not known. A second variation on the            find-goal problem that is motivated by this scenario and which is an            intermediary between the find-goal and exploration problems is the &lt;em&gt;           recognizable &lt;/em&gt;find-goal problem. In this case, the absolute            coordinates of the goal are not known, but it is assumed that the            robot can recognize the goal if it becomes with in line of sight. The            aim of the recognizable find-goal problem is to explore an unknown            environment so as to find a recognizable goal. If the goal is reached            before the entire environment is searched, then the search procedure            is terminated. &lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="headline" align="center"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;a name="p4"&gt;&lt;/a&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;Control            Systems&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Hierarchical Behavior Control&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;table border="0" width="100%"&gt;             &lt;tbody&gt;&lt;tr&gt;               &lt;td valign="top" width="22%"&gt;               &lt;img src="http://www.electronicsteacher.com/robotics/images/mrobots_sm-ace.gif" style="float: left;" border="0" /&gt;&lt;/td&gt;               &lt;td valign="top" width="78%"&gt;               &lt;p class="text"&gt; Development of a hierarchical behavior control scheme for rovers and mobile robots is currently underway. It attempts to model and control mobile systems using distinct rule-based controllers and decision-making subsystems that collectively represent a hierarchical decomposition of autonomous vehicle behavior. This research approach employs fuzzy logic, behavior control, and genetic programming as tools for developing autonomous robots. Complex, multi-variable fuzzy rule-based systems are developed in the framework of behavior-based control for autonomous navigation. Genetic programming methods are used to computationally evolve fuzzy coordination rules for low-level motion behaviors. In addition, embedded control applications are being developed for microrover navigation using conventional microprocessors and specialized fuzzy VLSI chips.&lt;/p&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;           &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Nano Technology and Medical            Applications&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;The movie Innerspace shows a            miniature spaceship travelling through the artery system of a human.            It is a nice illustration of the promise of Nano technology. Nano            Technology is a technique where miniature robots go to places humans            will never be able to travel. Nano technology is a new science where            robotics play a mayor part. Questions that needs to be solved because            of the very tiny mechinical parts: can a robot repair itself, how do            you control a nano robot, how does a nano robot move. Will it be able            to work autonomously. Will it be able so shift in shape. Is a nanan            robot a mechanical device or is it more like a microprocessor. Once            these questions are answered Nano technology will change medical            science for ever. Surgery will be performed in lots of cases by one or            more Nano robots that will travel inside the human body.&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header" align="justify"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Intelligent Systems for            Communication Networks&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;block&gt;Third generation wireless networks like the Universal            Mobile telecommunication System (UMTS) are being developed to support            wide band services. A major scenario is to support such services of a            user roaming between a cellular terrestrial network and a satellite            Personal Communication Network (PCN) while maintaining the quality of            service during the hand-over process. And requiring some degree of            continuity of quality of service guarantees.  This project will focus            on developing new protocols which uses artificial intelligent systems            to support such hand-over process. Further Seamless roaming and user            tracking using intelligent systems will be investigated. &lt;/block&gt;&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Active Vibration Control&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;In recent years, the            reduction of undesirable vibrations in the dynamic systems such as            airplanes, vehicles, tall buildings and off-shore structures has            become a crucial issue due to the increased social awareness of            comfort as well as the ever increasing heights of new inner city            buildings. With the advent of new construction materials and new            construction methods, the buildings and structures are becoming            taller, and more flexible. With a good design and under normal loading            conditions, the response of these structures to vibrations will remain            in the safe and comfortable domain. However, there is no guarantee            that in-service loads experienced by tall buildings and structures            will always be in the allowed range. The undesirable vibration levels            could be reached under large environmental loads such as winds and            earthquakes, and could adversely affect human comfort and even            structural safety. It is becoming critically important to suppress            dynamic responses of tall buildings and structures due to the strong            winds and earthquakes not only for their safety but also their            serviceability. When tall buildings and structures are flexible,            design performances may become impossible to achieve by conventional            design practice. Hence, additional devices are installed in tall            buildings and structures to compensate the dynamic responses caused by            environmental loads. As a result, new concepts and methods of            structural protection have been proposed.&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;Due to recent development of            sensors and digital control techniques, active control methods of            dynamic responses of tall buildings and structures have been            developed, and some of them have been implemented to actual buildings.            The precondition is however that the implementation is simple enough            to be realtime. In engineering applications with rule based systems            providing efficient results, the implementation is often easier than            its complex conventional counterpart. &lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;The active vibration control in            the structural engineering has become known as an area of research in            which the vibrations and motions of the tall buildings and structures            can be controlled or modified by means of the actions of a control            system through some external energy supply. Compared with the passive            vibration control the active vibration control can more effectively            keep the tall buildings and structures safe and comfortable under the            various environmental loads such as strong winds or earthquake            hazards. This implies that the active vibration control can be            effective and adaptive over a much wider frequency range and also for            transient vibration, which is the reason to attract interest of the            researchers not only in structural engineering but also in control            engineering. Among many methods, that have been proposed, are active            mass drivers (AMDs), active tendon systems (ATS), and active variable            stiffness systems (AVSs).&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;Hyper-Redundant Robotics Systems&lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;Robot manipulators which have more            than the minimum number of degrees-of-freedom are termed ``kinematically            redundant,'' or simply ``redundant.'' Redundancy in manipulator design            has been recognized as a means to improve manipulator performance in            complex and unstructured environments. ``Hyper-redundant'' robots have            a very large degree of kinematic redundancy, and are analogous in            morphology and operation to snakes, elephant trunks, and tentacles.            There are a number of very important applications where such robots            would be advantageous. &lt;/span&gt;&lt;/p&gt; &lt;span style="font-family:Verdana;"&gt;          &lt;/span&gt;&lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;While ``snake-like'' robots have been investigated for nearly 25 years, they have remained a laboratory curiousity. There are a number of reasons for this: (1) previous kinematic modeling techniques have not been particularly efficient or well suited to the needs of hyper-redundant robot task modeling; (2) the mechanical design and implementation of hyper-redundant robots has been perceived as unnecessarily complex; and (3) hyper-redundant robots are not anthropomorphic, and therefore pose interesting programming problems. Our research group has undertaken a broadly based program to overcome the obstacles to practical deployment of hyper-redundant robots.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-5067892506476098071?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/5067892506476098071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=5067892506476098071' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/5067892506476098071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/5067892506476098071'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/07/robotics-current-research-robots-of.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-6386494698748804962</id><published>2007-07-08T21:43:00.000-07:00</published><updated>2007-07-08T22:19:42.284-07:00</updated><title type='text'></title><content type='html'>&lt;p class="chapterhead" style="text-align: center; font-weight: bold; color: rgb(255, 0, 0);" align="center"&gt;&lt;span style="font-size:180%;"&gt;Robotics - Interesting points about Robotics&lt;/span&gt;&lt;/p&gt;&lt;p class="chapterhead" style="text-align: center; font-weight: bold; color: rgb(255, 0, 0);" align="center"&gt;&lt;span style="font-size:180%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 100%; border-collapse: collapse;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0in; width: 72%;" valign="top" width="72%"&gt;&lt;span style="font-size:100%;"&gt;This post is in form of trivia.It deals with some commonly associated  questions with robots.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpG-z_8ZFNI/AAAAAAAAAEs/m53s-I5Awjw/s1600-h/New+Picture+%288%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpG-z_8ZFNI/AAAAAAAAAEs/m53s-I5Awjw/s320/New+Picture+%288%29.png" alt="" id="BLOGGER_PHOTO_ID_5085055254825342162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="text" style="text-align: center;" align="center"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="header"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;What are robots?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Nowadays,   the word &lt;i&gt;robot&lt;/i&gt; is often applied to any device that works automatically   or by remote control, especially a machine (&lt;i&gt;automaton&lt;/i&gt;) that can be   programmed to perform tasks normally done by people.&lt;/span&gt;&lt;/p&gt;   &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;    &lt;tbody&gt;&lt;tr style=""&gt;     &lt;td style="padding: 0in; width: 47%;" width="47%"&gt;     &lt;p class="text" style="text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RpG_pf8ZFOI/AAAAAAAAAE0/aYdtAFrW4jU/s1600-h/New+Picture+%289%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RpG_pf8ZFOI/AAAAAAAAAE0/aYdtAFrW4jU/s320/New+Picture+%289%29.png" alt="" id="BLOGGER_PHOTO_ID_5085056173948343522" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0in; width: 53%;" width="53%"&gt;     &lt;p class="text" style="text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpG_5_8ZFPI/AAAAAAAAAE8/GlEOm3bqHRQ/s1600-h/New+Picture+%2810%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpG_5_8ZFPI/AAAAAAAAAE8/GlEOm3bqHRQ/s320/New+Picture+%2810%29.png" alt="" id="BLOGGER_PHOTO_ID_5085056457416185074" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;     &lt;/td&gt;    &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Before the   1960s, &lt;i&gt;robot&lt;/i&gt; usually meant a manlike mechanical device (&lt;i&gt;mechanical   man&lt;/i&gt; or &lt;i&gt;humanoid&lt;/i&gt;) capable of performing human tasks or behaving in   a human manner. Today robots come in all shapes and sizes, including small   robots made of LEGO, and larger wheeled robots that play robot football with   a full-size ball.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;What many   robots have in common is that they perform tasks that are too dull, dirty,   delicate or dangerous for people. Usually, we also expect them to be   autonomous, that is, to work using their own sensors and intelligence,   without the constant need for a human to control them. Looked at this way, a   radio controlled aeroplane is not a robot, nor are the radio controlled   combat robots that appear on television. However, there is no clear dividing   line between fully autonomous robots and human-controlled machines. For   example, the robots that perform space missions on planets like Mars may get   instructions from humans on Earth, but since it can take about ten minutes   for messages to get back and forth, the robot has to be autonomous during   that time.&lt;/span&gt;&lt;/p&gt;   &lt;p class="header"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="header"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;Where did the word &lt;i&gt;robot&lt;/i&gt;   originate?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The word &lt;i&gt;robot&lt;/i&gt;   was introduced in 1920 in a play by Karel Capek called R.U.R. , or Rossum's   Universal Robots. Robot comes from the Czech word &lt;i&gt;robota&lt;/i&gt;, meaning   forced labour or drudgery. In the play, human-like mechanical creatures   produced in Rossum's factory are docile slaves. Since they are just machines,   the robots are badly treated by humans. One day a misguided scientist gives   them emotions, and the robots revolt, kill nearly all humans and take over   the world. However, because they are unable to reproduce themselves, the   robots are doomed to die. However, the sole surviving human creates a male   and a female robot to perpetuate their species.&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;Have people always been   fascinated by human-like machines?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The roots of   robotics can be traced back to Greek mythology and Jewish mysticism. Several   myths from Ancient Greece tell of statues being brought to life. According to   Aristotle, the legendary Greek inventor, Daedalus (whose son Icarus flew too   close to the sun), created animated statues that guarded the entrance to the   Labyrinth in &lt;st1:place st="on"&gt;Crete&lt;/st1:place&gt;. The Jewish Talmud   describes the making of a &lt;i&gt;golem&lt;/i&gt;, a clay model brought to life by the   chanting of magical combinations of letters from the Hebrew alphabet. A   similar idea can be found in medieval alchemy, in which the philosopher's   stone was believed to have a life-giving force. Mary Shelley drew upon such   traditions in her 1818 novel &lt;i&gt;Frankenstein&lt;/i&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="text"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;What are the Laws of   Robotics?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The term &lt;i&gt;robotics&lt;/i&gt;   was coined in the 1940s by science fiction writer Isaac Asimov. In a series   of stories and novels, he imagined a world in which mechanical beings were   mankind's devoted helpmates. They were constrained to obey what have become   known as Asimov's Laws of Robotics:&lt;/span&gt;&lt;/p&gt;   &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:100%;"&gt;1.&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;A robot may not injure a human   being, or, through inaction, allow a human being to come to harm. &lt;/span&gt;&lt;/p&gt;   &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:100%;"&gt;2.&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;A robot must obey the orders   given it by human beings except where such orders would conflict with the   First Law. &lt;/span&gt;&lt;/p&gt;   &lt;p class="text" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:100%;"&gt;3.&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;A robot must protect its own   existence as long as such protection does not conflict with the First or   Second Law. &lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Asimov’s   book of short stories, &lt;i&gt;I, Robot&lt;/i&gt;, investigates the interplay between   these laws. In one of the stories, there is a scandal because a candidate for   mayor is suspected of being a robot – no-one has ever seen him eat, drink, or   sleep.&lt;/span&gt;&lt;/p&gt;   &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;    &lt;tbody&gt;&lt;tr style=""&gt;     &lt;td style="padding: 0in; width: 28%;" width="28%"&gt;     &lt;p class="text" style="text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpG_5_8ZFQI/AAAAAAAAAFE/FJ0r695TpsQ/s1600-h/New+Picture+%2811%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpG_5_8ZFQI/AAAAAAAAAFE/FJ0r695TpsQ/s320/New+Picture+%2811%29.png" alt="" id="BLOGGER_PHOTO_ID_5085056457416185090" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0in; width: 72%;" width="72%"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;However,     the mayor claims he is not a robot, and the story has many twists and turns     before we find out. Is it possible that we would allow robots to run our     lives? After all, if they obey the First Law of Robotics, they will never     harm us. In this respect they could be better than human politicians! This     will not be a practical problem for many years, but who knows what the     future holds?&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;    &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;p class="header"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="header"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;What was the first   practical robot?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;A prototype   industrial robot arm named &lt;i&gt;Unimate&lt;/i&gt; (designed by George Devol and   Joseph Engelberger) was sold to General Motors in 1959. It plucked hot   automobile parts out of a die-casting machine and quenched them in water.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The 1960s   and 1970s saw a revolution in manufacturing as robots replaced humans for   many repetitive jobs. However, these robots were not intelligent by today’s   standards. Usually they were programmed by humans training their movements,   and they had very little decision-making capabilities. There are still many   robots like this in factories today, but the trend is towards more   intelligent general-purpose robots that can do more than just paint a panel   or screw in a bolt.&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;Are space probes robots?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Space probes   hurtling through the solar system may not seem like robots, but they fully   merit that name by performing programmed tasks over long periods without   direct human supervision. Operating in the vacuum of space and withstanding   exposure to radiation and extremes of temperature, they explore places not   yet accessible to humans.&lt;/span&gt;&lt;/p&gt;   &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;    &lt;tbody&gt;&lt;tr style=""&gt;     &lt;td style="padding: 0in; width: 71%;" width="71%"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;On     Christmas Day 2003, the Beagle 2 mission to Mars attempted to land on the     Martian surface. Had the landing gone smoothly, the robotic shell would     have opened and deployed solar panels to collect electricity, as well as a     ‘PAW’ to collect rock and soil samples for a small analytic laboratory. The     lander also had a ‘mole’ that would have burrowed into the surface to     collect samples for analysis. Beagle 2 is shown on the right with its     inventor, Professor Colin Pillinger of the Open University.&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0in; width: 29%;" width="29%"&gt;     &lt;p class="text" style="text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RpHA-v8ZFRI/AAAAAAAAAFM/e6kw4tNrMb4/s1600-h/New+Picture+%2812%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RpHA-v8ZFRI/AAAAAAAAAFM/e6kw4tNrMb4/s320/New+Picture+%2812%29.png" alt="" id="BLOGGER_PHOTO_ID_5085057638532191506" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;     &lt;/td&gt;    &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;p class="header"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="header"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;What can't robots do?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;It is very   difficult to give a robot the ability to perform a wide variety of tasks,   move around in cluttered surroundings, recognise objects in the ‘real world’,   understand normal speech, and think for itself. These are exciting areas of   current research in robotics and artificial intelligence.&lt;/span&gt;&lt;/p&gt;   &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;    &lt;tbody&gt;&lt;tr style=""&gt;     &lt;td style="padding: 0in; width: 40%;" width="40%"&gt;     &lt;p class="text" style="text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RpHA-v8ZFSI/AAAAAAAAAFU/ERM3UCC2AQ0/s1600-h/New+Picture+%2813%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RpHA-v8ZFSI/AAAAAAAAAFU/ERM3UCC2AQ0/s320/New+Picture+%2813%29.png" alt="" id="BLOGGER_PHOTO_ID_5085057638532191522" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0in; width: 60%;" width="60%"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;For     example, the robot shown here has the problem of deciding where to cross     the river. How can it make this decision? How would you do it? Perhaps you     have come across a similar situation before. Perhaps you could look it up     in a guide book. Perhaps you would reason that B is better than C because     the water is likely to be shallower? Perhaps you would choose A, because     you tried it before. All these ways of making decisions come very naturally     to humans, but they are very difficult to program into robots.&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;    &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Another   great problem in robotics is getting them to understand language. This is   very important in problem-solving. For example, the four cards below have a   letter on one side and a number on the other. If a card has a vowel (a, e, i,   o, u) on one side then it has an even number on the other. Which cards do you   have to turn over to see if this is true? Think about your answer, then point   to a card to turn it over.&lt;/span&gt;&lt;/p&gt;   &lt;table class="MsoNormalTable" style="width: 610px; height: 80px;" border="0" cellpadding="0"&gt;    &lt;tbody&gt;&lt;tr style=""&gt;     &lt;td style="padding: 0.75pt; color: rgb(51, 51, 255);"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" alt="letter E with number 6 on reverse" style="'width:37.5pt;height:60pt'"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image010.gif" href="http://www.electronicsteacher.com/robotics/images/letterE.gif"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image010.gif" alt="letter E with number 6 on reverse" shapes="_x0000_i1029" height="80" width="50" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0.75pt; color: rgb(0, 0, 153);"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" alt="letter K with number 1 on back" style="'width:37.5pt;height:60pt'"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image011.gif" href="http://www.electronicsteacher.com/robotics/images/letterK.gif"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image011.gif" alt="letter K with number 1 on back" shapes="_x0000_i1030" height="80" width="50" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0.75pt; color: rgb(0, 0, 153);"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" alt="number 4 with letter U on reverse" style="'width:37.5pt;height:60pt'"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image012.gif" href="http://www.electronicsteacher.com/robotics/images/number4.gif"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image012.gif" alt="number 4 with letter U on reverse" shapes="_x0000_i1031" height="80" width="50" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0.75pt; color: rgb(0, 0, 153);"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1032" type="#_x0000_t75" alt="number 7 with letter A on reverse" style="'width:37.5pt;height:60pt'"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image013.gif" href="http://www.electronicsteacher.com/robotics/images/number7.gif"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image013.gif" alt="number 7 with letter A on reverse" shapes="_x0000_i1032" height="80" width="50" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;    &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Now consider   the following cards where the rule is ‘every time I go to &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Paris&lt;/st1:place&gt;&lt;/st1:city&gt; I go by plane’. Which cards have to   be turned over to test this? Again, think about your answer before turning   the card over.&lt;/span&gt;&lt;/p&gt;   &lt;table class="MsoNormalTable" style="width: 80%;" border="0" cellpadding="0" width="80%"&gt;    &lt;tbody&gt;&lt;tr style=""&gt;     &lt;td style="padding: 0.75pt; color: rgb(0, 0, 153);"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1033" type="#_x0000_t75" alt="Paris card" style="'width:90pt;"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image014.jpg" href="http://www.electronicsteacher.com/robotics/images/paris.jpg"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image014.jpg" alt="Paris card" shapes="_x0000_i1033" height="80" width="120" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0.75pt; color: rgb(0, 0, 153);"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1034" type="#_x0000_t75" alt="Madrid card" style="'width:90pt;"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image015.jpg" href="http://www.electronicsteacher.com/robotics/images/madrid.jpg"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image015.jpg" alt="Madrid card" shapes="_x0000_i1034" height="80" width="120" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0.75pt; color: rgb(0, 0, 153);"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1035" type="#_x0000_t75" alt="Plane card" style="'width:90pt;"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image016.jpg" href="http://www.electronicsteacher.com/robotics/images/plane.jpg"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image016.jpg" alt="Plane card" shapes="_x0000_i1035" height="80" width="120" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;     &lt;td style="padding: 0.75pt; color: rgb(0, 0, 153);"&gt;     &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1036" type="#_x0000_t75" alt="Train card" style="'width:90pt;"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image017.jpg" href="http://www.electronicsteacher.com/robotics/images/train.jpg"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image017.jpg" alt="Train card" shapes="_x0000_i1036" height="80" width="120" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;     &lt;/td&gt;    &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The answer   to the first question is that you have to turn over the E to see if it has an   even number on the back and you have to turn over the 7 to check that it does   not have a vowel on the back. In an experiment, only 12% of people got this   second part right (did you?).&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The answer   to the second question is much easier. Of course you have to turn over the &lt;st1:city st="on"&gt;Paris&lt;/st1:city&gt; card to check that it has the word plane on the back,   but now it’s much more obvious that you have to turn over the train card to   make sure it does not have &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Paris&lt;/st1:place&gt;&lt;/st1:city&gt;   on the back. In the experiment mentioned above, 60% of people got the second   part right.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;These   problems are logically the same, so the experimenters drew the conclusion   that the meaning of the symbols is an important part of problem solving.   Since robots have very poor language capabilities, their ability to use this   kind of reasoning is very limited.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Another of   the great problems in robotics is getting them to ‘see’. Although it is easy   to put a camera on a robot, it is much more difficult to get the robot to   understand what is in an image. Most humans have miraculously good vision. We   are able to resolve great ambiguity in scenes. It has proved much more   difficult to get robots to understand what is in their universe, and machine   vision remains one of the big unsolved problems in robotics research.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text" style="text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpHA-_8ZFTI/AAAAAAAAAFc/LajnE7Cc5ho/s1600-h/New+Picture+%2814%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpHA-_8ZFTI/AAAAAAAAAFc/LajnE7Cc5ho/s320/New+Picture+%2814%29.png" alt="" id="BLOGGER_PHOTO_ID_5085057642827158834" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;There are   other problems in robotics that make progress slow. For example, your body is   covered with skin, and this contains millions of sensors that allow you to do   many fantastically precise things. For example, try typing at a computer with   gloves on. The lack of touch feedback will make it very difficult. Also your   muscles enable you to have very fine control. Even if you are rather clumsy,   you are probably much better at manipulating objects than the average robot.   Most people would not let a robot dust their favourite china.&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;Will robots ever be as good   as humans?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Many   futurists believe that robots will eventually and inevitably become more   capable than humans, but some experts in artificial intelligence assert that   machines will never be able to develop the consciousness and emotions needed   for reasoning and creativity.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Nonetheless,   there are already commercially available robots that can live in our houses   and do basic chores for us. Robots are very good at processing certain kinds   of information, and they are ideally suited to answering the telephone and   being controlled over the Internet.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The   International RoboCup Federation has set itself the challenge of having a   team of humanoid robot football players beat the human world champions by   2050. Can you image that? It means that robots will have to become as nimble   and skilful as Beckham. It will require the invention of many new materials –   for example, a human soccer player could be badly hurt if it clashed with a   robot made of metal. It will also require an enormous improvement in machine   vision. If you play sports such as football, tennis, or even snooker, next   time you play think about the huge amount of information that comes through   your eyes.&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;What is the future for   robots?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Robotic   pets, lawn mowers and vacuum cleaners are already on the market. Following   the success of their Aibo robot dog, Sony have developed a humanoid   entertainment robot named QRIO. Honda's Asimo welcomes customers to their   showrooms in &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;Japan&lt;/st1:place&gt;&lt;/st1:country-region&gt;.   Toshiba have built a robot that can play volleyball. Fujitsu's HOAP-2 can   perform Japanese Sumo wrestling stances, as well as moves from the Chinese   martial art taijiquan.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Rapid   advances are being made in robotic control systems, artificial intelligence,   neural networks, and in the miniaturisation, sophistication and reliability   of electronic circuitry, sensors and actuators. These are all contributing to   a steady increase in the capabilities of robots. Robots currently under   development may become widely used in the food, clothing, nuclear and   offshore industries, healthcare, farming, transportation, mining and defence.&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style=";font-family:Verdana;font-size:130%;"  &gt;Will robots take over from   humans?&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;This is a   popular science fiction theme, and the answer depends on whether robots will   ever attain consciousness and emotions. In stories like &lt;i&gt;2001: A Space   Odyssey&lt;/i&gt; and &lt;i&gt;Terminator&lt;/i&gt;, humans always find a way to outwit   intelligent machines that try to take over control. That's fiction, however,   and fact is often stranger than fiction!&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The   suggestion that robots will take over because they might become more   intelligent than humans overlooks one critical fact: the people who have   power in human societies are usually not the most intelligent in the obvious,   intellectual way. They have different kinds of ‘human intelligence’,   including the ability to understand other people, and to influence their   behaviour.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;The sensible   answer to the question as to whether robots will take over is that they   probably won’t in the near future. There are many reasons for this. The first   is that the robots of today have puny brains compared to humans, and they do   not have the ability to organise in the same way as humans. Our societies are   very complex and allow us to achieve many very advanced things. It is   unlikely that robots could overtake us in the near future. Even so, it is   something that we should keep an eye on, since all scientists have a   responsibility not to do things that damage society.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;However, for   the most part, robots play a very positive role in our societies, and we can   expect them to be used in many ways that make life better for us all.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;If you would   like to, why not try out the quiz associated with this minicourse? Go to quiz   now.&lt;/span&gt;&lt;/p&gt;   &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:100%;"  &gt;Alternatively,   if this minicourse has taken your interest, why not look at the introductory   10 point credit course, T184 - Robotics and the Meaning of Life&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-6386494698748804962?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/6386494698748804962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=6386494698748804962' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/6386494698748804962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/6386494698748804962'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/07/robotics-interesting-points-about.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_2sBjUUt5Y6I/RpG-z_8ZFNI/AAAAAAAAAEs/m53s-I5Awjw/s72-c/New+Picture+%288%29.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-8517279631659040701</id><published>2007-06-30T23:26:00.000-07:00</published><updated>2007-07-01T00:36:02.442-07:00</updated><title type='text'></title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:180%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;.TYPES OF ROBOTS&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;The following article deals with types of robots found in practical applications .It also illustrates how robot should be made inept by giving it the most accurate shape commensurating its operations.&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="text"&gt;Ask a number of people to describe a robot and most of them will answer they look like a human.  Interestingly a robot that looks like a human is probably the most difficult robot to make.  Is is usually a waste of time and not the most sensible thing to model a robot after a human being.  A robot needs to be above all functional and designed with qualities that suits its primary tasks.  It depends on the task at hand whether the robot is big, small, able to move or nailed to the ground.  Each and every task means different qualities, form and function, a robot needs to be designed with the task in mind. &lt;/p&gt;  &lt;p style="color: rgb(204, 0, 0);" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Mobile Robots&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" width="100%"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 26%;" valign="top" width="26%"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;    &lt;v:stroke joinstyle="miter"&gt;    &lt;v:formulas&gt;     &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;     &lt;v:f eqn="sum @0 1 0"&gt;     &lt;v:f eqn="sum 0 0 @1"&gt;     &lt;v:f eqn="prod @2 1 2"&gt;     &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;     &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;     &lt;v:f eqn="sum @0 0 1"&gt;     &lt;v:f eqn="prod @6 1 2"&gt;     &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;     &lt;v:f eqn="sum @8 21600 0"&gt;     &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;     &lt;v:f eqn="sum @10 21600 0"&gt;    &lt;/v:formulas&gt;    &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;    &lt;o:lock ext="edit" aspectratio="t"&gt;   &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" alt="" style="'width:150pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image001.gif" href="http://www.electronicsteacher.com/robotics/images/mars-small.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RodMB_8ZFFI/AAAAAAAAADs/QYa_mDcgiyU/s1600-h/New+Picture+%281%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RodMB_8ZFFI/AAAAAAAAADs/QYa_mDcgiyU/s320/New+Picture+%281%29.png" alt="" id="BLOGGER_PHOTO_ID_5082114301739209810" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;   &lt;p class="text"&gt;Mars Explorer images and other space robot images courtesy of   NASA.&lt;/p&gt;&lt;br /&gt;&lt;p class="text"&gt;&lt;br /&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 74%;" valign="top" width="74%"&gt;   &lt;p class="text"&gt;    Mobile robots are able to move, usually they   perform task such as search areas. A prime example is the Mars Explorer,   specifically designed to roam the mars surface. &lt;/p&gt;   &lt;p class="text"&gt;    Mobile robots are a great help to such   collapsed building for survivors &lt;st1:place st="on"&gt;Mobile&lt;/st1:place&gt;   robots are used for task where people cannot go.  Either because it is   too dangerous of because people cannot reach the area that needs to be   searched.   &lt;/p&gt;   &lt;p&gt; &lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="text"&gt;    Mobile robots can be divided in two categories:   &lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" width="100%"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 68%;" valign="top" width="68%"&gt;   &lt;p style="font-weight: bold; color: rgb(204, 0, 0);" class="text"&gt;&lt;span style="font-size:130%;"&gt;   Rolling Robots:&lt;/span&gt;&lt;/p&gt;&lt;p class="text"&gt;  Rolling robots   have wheels to move around.  These are the type of robots that can   quickly and easily search move around.  However they are only useful in   flat areas, rocky terrains give them a hard time.  Flat terrains are   their territory.  &lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 32%;" valign="top" width="32%"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" alt="" style="'width:226.5pt;height:118.5pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image002.jpg" href="http://www.electronicsteacher.com/robotics/images/mobile-fromUEL.jpg"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RodN0f8ZFGI/AAAAAAAAAD0/1cnovyduJ4o/s1600-h/New+Picture+%282%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RodN0f8ZFGI/AAAAAAAAAD0/1cnovyduJ4o/s320/New+Picture+%282%29.png" alt="" id="BLOGGER_PHOTO_ID_5082116268834231394" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 68%;" valign="top" width="68%"&gt;   &lt;p class="MsoNormal"&gt; &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 32%;" valign="top" width="32%"&gt;   &lt;p class="MsoNormal"&gt; &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" width="100%"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 32%;" valign="top" width="32%"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" alt="" style="'width:150pt;height:150pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image004.jpg" href="http://www.electronicsteacher.com/robotics/images/walking-hannibal-tiny.jpg"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RodOj_8ZFHI/AAAAAAAAAD8/q6jjb8ERZpk/s1600-h/New+Picture+%283%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RodOj_8ZFHI/AAAAAAAAAD8/q6jjb8ERZpk/s320/New+Picture+%283%29.png" alt="" id="BLOGGER_PHOTO_ID_5082117084878017650" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 68%;" valign="top" width="68%"&gt;    &lt;p class="text"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0); font-weight: bold;"&gt;   Walking Robots:&lt;/span&gt;  &lt;/span&gt;Robots on legs   are usually brought in when the terrain is rocky and difficult to enter with   wheels.  Robots have a hard time shifting balance and keep them from   tumbling.  That’s why most robots with have at least 4 of them, usually   they have 6 legs or more.  Even when they lift one or more legs they   still keep their balance.  Development of legged robots is often modeled   after insects or crawfish..  &lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p style="font-weight: bold; color: rgb(204, 0, 0);" class="header"&gt;&lt;span style="font-size:130%;"&gt;Stationary Robots&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" width="100%"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 32%;" valign="top" width="32%"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" alt="" style="'width:150pt;height:97.5pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image006.jpg" href="http://www.electronicsteacher.com/robotics/images/end-effector-ww2-hawaii-edu-knorris.jpg"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RodPU_8ZFII/AAAAAAAAAEE/WEdF8IOArpc/s1600-h/New+Picture+%284%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RodPU_8ZFII/AAAAAAAAAEE/WEdF8IOArpc/s320/New+Picture+%284%29.png" alt="" id="BLOGGER_PHOTO_ID_5082117926691607682" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 68%;" valign="top" width="68%"&gt;    &lt;p class="text"&gt;Robots are not only used to explore areas or imitate a human   being.  Most robots perform repeating tasks without ever moving an   inch.  Most robots are ‘working’ in industry settings.  Especially   dull and repeating tasks are suitable for robots.  A robot never grows   tired, it will perform its duty day and night without ever complaining.    In case the tasks at hand are done, the robots will be reprogrammed to   perform other tasks..   &lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p style="color: rgb(204, 0, 0);" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Autonomous Robots&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" width="100%"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 33%;" valign="top" width="33%"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" alt="" style="'width:150pt;height:158.25pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image008.jpg" href="http://www.electronicsteacher.com/robotics/images/robots_smarty-ucsd-edu.jpg"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/p&gt;&lt;p class="text"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RodRrP8ZFJI/AAAAAAAAAEM/Y2lNWI8GFjc/s1600-h/New+Picture+%285%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RodRrP8ZFJI/AAAAAAAAAEM/Y2lNWI8GFjc/s320/New+Picture+%285%29.png" alt="" id="BLOGGER_PHOTO_ID_5082120507966952594" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 67%;" valign="top" width="67%"&gt;   &lt;p class="text"&gt;   Autonomous robots are self supporting or in other   words self contained.  In a way they rely on their own ‘brains’. &lt;/p&gt;   &lt;p class="text"&gt;    Autonomous robots run a program that give   them the opportunity to decide on the action to perform depending on their   surroundings.  At times these robots even learn new behavior.  They   start out with a short routine and adapt this routine to be more successful   at the task they perform.  The most successful routine will be repeated   as such their behavior is shaped.  Autonomous robots can learn to walk   or avoid obstacles they find in their way.  Think about a six legged   robot, at first the legs move ad random, after a little while the robot   adjust its program and performs a pattern which enables it to move in a   direction.   &lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p style="color: rgb(204, 0, 0);" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Remote-control Robots&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" width="100%"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 100%;" valign="top" width="100%"&gt;   &lt;p class="text"&gt;   An autonomous robot is despite its autonomous not   a very clever or intelligent unit.  The memory and brain capacity is   usually limited, an autonomous robot can be compared to an insect in that   respect. &lt;/p&gt;   &lt;p class="text"&gt;    In case a robot needs to perform more   complicated yet undetermined tasks an autonomous robot is not the right   choice. &lt;/p&gt;   &lt;p class="text"&gt;    Complicated tasks are still best performed   by human beings with real brainpower.  A person can guide a robot by   remote control.  A person can perform difficult and usually dangerous   tasks without being at the spot where the tasks are performed.  To   detonate a bomb it is safer to send the robot to the danger area.   &lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 100%;" valign="top" width="100%"&gt;   &lt;table class="MsoNormalTable" style="width: 55%;" border="0" cellpadding="0" width="55%"&gt;    &lt;tbody&gt;&lt;tr style=""&gt;     &lt;td style="padding: 0.75pt; width: 100%;" valign="top" width="100%"&gt;     &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" alt="" style="'width:142.5pt;height:189pt'"&gt;      &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image009.png" href="http://www.electronicsteacher.com/robotics/images/Dante-remote-NASA.gif"&gt;     &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RodSMf8ZFKI/AAAAAAAAAEU/xK2gh7JBBy0/s1600-h/New+Picture+%286%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RodSMf8ZFKI/AAAAAAAAAEU/xK2gh7JBBy0/s320/New+Picture+%286%29.png" alt="" id="BLOGGER_PHOTO_ID_5082121079197602978" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;     &lt;/td&gt;    &lt;/tr&gt;    &lt;tr style=""&gt;     &lt;td style="padding: 0.75pt; width: 100%;" valign="top" width="100%"&gt;     &lt;h5&gt;&lt;span style="font-weight: normal;font-family:Verdana;" &gt;Dante 2, a NASA robot     designed to explore volcanoes via remote control.&lt;/span&gt;&lt;/h5&gt;     &lt;/td&gt;    &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p style="color: rgb(204, 0, 0); font-weight: bold;" class="header"&gt;&lt;span style=";font-size:130%;" lang="NL" &gt;Virtual Robots&lt;/span&gt;&lt;/p&gt;  &lt;p class="link"&gt;   Virtual robots don’t exits in real life.  Virtual robots are just programs, building blocks of software inside a computer.  A virtual robot can simulate a real robot or just perform a repeating task.  A special kind of robot is a robot that searches the world wide web.  The Internet has countless robots crawling from site to site. These Web Crawler’s collect information on websites and send this information to the search engines.&lt;br /&gt;Another popular virtual robot is the chatter bot.  These robots simulate conversations with users of the Internet.  One of the first chatter bots was ELIZA.  There are many varieties of chatter bots now, including E.L.V.I.S. &lt;/p&gt;  &lt;p style="color: rgb(204, 0, 0);" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;BEAM Robots&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 100%;" border="0" cellpadding="0" width="100%"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 32%;" valign="top" width="32%"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" alt="" style="'width:150pt;height:112.5pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image011.jpg" href="http://www.electronicsteacher.com/robotics/images/BEAM-from-the-nest.jpg"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RodTXf8ZFLI/AAAAAAAAAEc/rERrcie8lVM/s1600-h/New+Picture+%287%29.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/RodTXf8ZFLI/AAAAAAAAAEc/rERrcie8lVM/s320/New+Picture+%287%29.png" alt="" id="BLOGGER_PHOTO_ID_5082122367687791794" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 68%;" valign="top" width="68%"&gt;   &lt;p class="text"&gt;   BEAM is short for &lt;b&gt;B&lt;/b&gt;iology, &lt;b&gt;E&lt;/b&gt;lectronics,   &lt;b&gt;A&lt;/b&gt;esthetics and &lt;b&gt;M&lt;/b&gt;echanics.  BEAM robots are made by   hobbyists. BEAM robots can be simple and very suitable for starters. &lt;/p&gt;   &lt;p&gt; &lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p style="color: rgb(204, 0, 0); font-weight: bold;" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;u&gt;Biology&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;Robots are often modeled after nature.  A lot of BEAM robots look remarkably like insects.  Insects are easy to build in mechanical form.  Not just the mechanics are in inspiration also the limited behavior can easily be programmed in a limited amount of memory and processing power. &lt;/p&gt;  &lt;p style="color: rgb(204, 0, 0); font-weight: bold;" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;u&gt;Electronics&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;Like all robots they also contain electronics.  Without electronic circuits the engines cannot be controlled.  Lots of Beam Robots also use solar power as their main source of energy. &lt;/p&gt;  &lt;p style="color: rgb(204, 0, 0); font-weight: bold;" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;u&gt;Aesthetics&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;A BEAM Robot should look nice and attractive.  BEAM robots have no printed circuits with some parts but an appealing and original appearance. &lt;/p&gt;  &lt;p style="color: rgb(204, 0, 0); font-weight: bold;" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;u&gt;Mechanics&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;In contrast with expensive big robots BEAM robots are cheap, simple, built out of recycled material and running on solar energy.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-8517279631659040701?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/8517279631659040701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=8517279631659040701' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/8517279631659040701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/8517279631659040701'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/06/blog-post.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_2sBjUUt5Y6I/RodMB_8ZFFI/AAAAAAAAADs/QYa_mDcgiyU/s72-c/New+Picture+%281%29.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-6929914447746520361</id><published>2007-06-22T04:15:00.000-07:00</published><updated>2007-06-22T06:19:12.702-07:00</updated><title type='text'>Robotics: FAQ</title><content type='html'>Robotics long has being the subject of fascination and curiosity,for one and all. From the very advert of smallest of automated machine scientists, technologists and  enthusiasts  have been steadily working for creating an artificial intelligent which could get as close as possible to humans.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;                     This idea got realized in form of one word "ROBOT".From  very beginning it has been marketed as solution to all human woes ,be it frivolous computational problems ,or mundane household chores .Robot has not only lived up to its expectations ,but overwhelmed them to show us new frontiers in fields of space,medicine,industries,research and many more.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;                      But before everyone jumps into this robotics bandwagon which is getting hyped exponentially as seen now-a-days , most of us find it tedious and painstaking to acquire even basics knowledge about it at one place.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;                        Hence ,I have tried to compile some such fundamental queries and their answers&lt;br /&gt;in lucid language ,worth  grasping by any lay- man.&lt;br /&gt;&lt;br /&gt;                         Lastly I urge you readers to send comments so that I' m assured of my posts being well- received  and my further efforts are in right directions.&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;br /&gt;&lt;br /&gt;                  &lt;/span&gt;&lt;span style="font-size:180%;"&gt; &lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;font-size:180%;" &gt;1.&lt;span style="font-size:14;"&gt;  What i&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;font-size:180%;" &gt;&lt;span style="font-size:14;"&gt;s robotics?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;                      &lt;span style="font-family:Verdana;"&gt;Roboticists develop man-made mechanical devices that can move by themselves, whose motion must be modelled, planned, sensed, actuated and controlled, and whose motion behaviour can be influenced by “programming”. Robots are called “intelligent” if they succeed in moving in safe interaction with an unstructured environment, while autonomously achieving their specified tasks.&lt;/span&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;                This definition implie&lt;/span&gt;&lt;span style="font-family:Verdana;"&gt;s that a device can only be called a “robot” if it contains a movable mechanism, influenced by sensing, planning, actuation and control components. It does not imply that a minimum number of these components must be implemented in software, or be changeable by the “consumer” who uses the device; for example, the motion behaviour can have been hard-wired into the device by the manufacturer. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;                So, the presented definition, as well as the rest of the material in this part of the post, covers not just “pure” robotics or only “intelligent” robots, but rather the somewhat broader domain of &lt;b&gt;robotics and automation&lt;/b&gt;. This includes “dumb” robots such as:&lt;/span&gt;&lt;span style="font-family:Verdana;"&gt; metal and woodworking machines, “intelligent” washing machines, dish washers and pool cleaning robots, etc. These examples all have sensing, planning and control, but often not in individually separated components. For example, the sensing and planning behaviour of the pool cleaning robot have been integrated into the mechanical design of the device, by the intelligence &lt;/span&gt;&lt;span style="font-family:Verdana;"&gt;of the human developer. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;                Robotics is, to a very large extent, all about system integration, achieving a task by an actuated mechanical device, via an “intelligent” integration of components, many of which it shares with other domains, such as systems and control, computer science, character animation, machine design, computer vision, artificial intelligence, cognitive science, biomechanics, etc. In addition, the boundaries of robotics cannot be clearly defined, since also its “core” ideas, concepts and algorithms are being applied in an ever increasing number of “external” applications, and, vice versa, core technology from other domains (vision, biology, cognitive science or biomechanics, for example) are becoming crucial components in more and more modern robotic systems. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;                This part of the post m&lt;/span&gt;&lt;span style="font-family:Verdana;"&gt;akes an effort to define what exactly is that above-mentioned core material of the robotics domain, and to describe it in a consistent and motivated structure. Nevertheless, this chosen structure is only one of the many possible “views” that one can want to have on the robotics domain. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;                In the same vein, the above-mentioned “definition” of robotics is not meant to be definitive or final, and it is only used as a rough framework to structure the various chapters in following posts.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-family:Verdana;"&gt;Components of robotic systems&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;                This figure depicts the c&lt;/span&gt;&lt;span style="font-family:Verdana;"&gt;omponents that are part of all robotic systems. The purpose of this Section is to describe the semantics of the terminology used to classify the chapters in the post: “sensing”, “planning”, “modelling”, “control”, etc. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;             The real robot is some mechanical device (“mechanism”) that moves around in the environment, and, in doing so, physically interacts with this environment. This interaction involves the exchange of physical energy, in some form or another. Both the robot mechanism and the environment can be the “cause” of the physical interaction through &lt;b&gt;“Actuation”&lt;/b&gt;, or experience the “effect” of the interaction, which can be measured through &lt;b&gt;“Sensing”&lt;/b&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text" style="text-align: center;" align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="text" style="text-align: center;" align="center"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text" style="text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RnvIqbN7nxI/AAAAAAAAADk/3vadcmaOPE0/s1600-h/New+Picture.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RnvIqbN7nxI/AAAAAAAAADk/3vadcmaOPE0/s320/New+Picture.png" alt="" id="BLOGGER_PHOTO_ID_5078873635976617746" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="text" style="text-align: center;" align="center"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text" style="text-align: center;" align="center"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text" style="text-align: center;" align="center"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="text" style="text-align: center;" align="center"&gt;&lt;span style="font-family:Verdana;"&gt; &lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="fig-system" spid="_x0000_i1025" type="#_x0000_t75" alt="Robotics as an integrated system of control interacting with the" style="'width:408.75pt;height:183pt'"&gt;  &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\05\clip_image001.png" href="http://www.electronicsteacher.com/robotics/images/robotics-control-system.png"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///E:/DOCUME%7E1/rakshe/LOCALS%7E1/Temp/msohtml1/05/clip_image002.jpg" alt="Robotics as an integrated system of control interacting with the" shapes="fig-system" height="244" width="545" /&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="header"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="header"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="header"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;Robotics as an integrated system of control interacting with the physical world&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;              Sensing and actuation are the physical ports through which the “Controller” of the robot determines the interaction of its mechanical body with the physical world. As mentioned already before, the controller can, in one extreme, consist of software only, but in the other extreme everything can also be implemented in hardware. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;Within the Controller component, several sub-activities are often identified: &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family:Verdana;"&gt;             Modelling&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Verdana;"&gt;. The input-output relationships of all control components can (but need not) be derived from information that is stored in a model. This model can have many forms: analytical formulas, empirical look-up tables, fuzzy rules, neural networks, etc.&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;               The name “model” often gives rise to heated discussions among different research “schools”, and the post is not interested in taking a stance in this debate: within the post, “model” is to be understood with its minimal semantics: “any information that is used to determine or influence the input-output relationships of components in the Controller.”&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;               The other components discussed below can all have models inside. A “System model” can be used to tie multiple components together, but it is clear that not all robots use a System model. The “Sensing model” and “Actuation model” contain the information with which to transform raw physical data into task-dependent information for the controller, and vice versa. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family:Verdana;"&gt;            Planning&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Verdana;"&gt;. This is the activity that predicts the outcome of potential actions, and selects the “best” one. Almost by definition, planning can only be done on the basis of some sort of model.&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family:Verdana;"&gt;            Regulation&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Verdana;"&gt;. This component processes the outputs of the sensing and planning components, to generate an actuation setpoint. Again, this regulation activity could or could not rely on some sort of (system) model. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;              The term “control” is often used instead of “regulation”, but it is impossible to clearly identify the domains that use one term or the other. The meaning used in the post will be clear from the context. &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-family:Verdana;"&gt;Scales in robotic systems&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;The above-mentioned “components” description of a robotic system is to be complemented by a “scale” description, i.e., the following system scales have a large influence on the specific content of the planning, sensing, modelling and control components at one particular scale, and hence also on the corresponding sections of the post. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family:Verdana;"&gt;            Mechanical scale&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Verdana;"&gt;. The physical volume of the robot determines to a large extent the limites of what can be done with it. Roughly speaking, a &lt;b&gt;large-scale&lt;/b&gt; robot (such as an autonomous container crane or a space shuttle) has different capabilities and control problems than a &lt;b&gt;macro&lt;/b&gt; robot (such as an industrial robot arm), a &lt;b&gt;desktop&lt;/b&gt; robot (such as those “sumo” robots popular with hobbyists), or &lt;b&gt;milli micro&lt;/b&gt; or &lt;b&gt;nano &lt;/b&gt;robots.&lt;br /&gt;Spatial scale. There are large differences between robots that act in 1D, 2D, 3D, or 6D (three positions and three orientations). &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family:Verdana;"&gt;             Time scale&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Verdana;"&gt;. There are large differences between robots that must react within hours, seconds, milliseconds, or microseconds. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family:Verdana;"&gt;              Power density scale&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Verdana;"&gt;. A robot must be actuated in order to move, but actuators need space as well as energy, so the ratio between both determines some capabilities of the robot. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family:Verdana;"&gt;              System complexity scale&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Verdana;"&gt;. The complexity of a robot system increases with the &lt;b&gt;number of interactions&lt;/b&gt; between independent sub-systems, and the control components must adapt to this complexity. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;b&gt;&lt;span style="font-family:Verdana;"&gt;              Computational complexity scale&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Verdana;"&gt;. Robot controllers are inevitably running on real-world computing hardware, so they are constrained by the available &lt;b&gt;number of computations&lt;/b&gt;, the available &lt;b&gt;communication bandwidth&lt;/b&gt;, and the available &lt;b&gt;memory storage&lt;/b&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;              Obviously, these scale parameters never apply completely independently to the same system. For example, a system that must react at microseconds time scale can not be of macro mechanical scale or involve a high number of communication interactions with subsystems. &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-weight: bold; color: rgb(255, 0, 0);" class="header"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-family:Verdana;"&gt;Background sensitivity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;              Finally, no description of even scientific material is ever fully objective or context-free, in the sense that it is very difficult for contributors to the post to “forget” their background when writing their contribution. In this respect, robotics has, roughly speaking, two faces: (i) the mathematical and engineering face, which is quite “standardized” in the sense that a large consensus exists about the tools and theories to use (“systems theory”), and (ii) the AI face, which is rather poorly standardized, not because of a lack of interest or research efforts, but because of the inherent complexity of “intelligent behaviour.” The terminology and systems-thinking of both backgrounds are significantly different, hence the post will accomodate sections on the same material but written from various perspectives. This is not a “bug”, but a &lt;b&gt;“feature”&lt;/b&gt;: having the different views in the context of the same post can only lead to a better mutual understanding and respect. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style="font-family:Verdana;"&gt;             Research in engineering robotics follows the bottom-up approach: existing and working systems are extended and made more versatile. Research in artificial intelligence robotics is top-down: assuming that a set of low-level primitives is available, how could one apply them in order to increase the “intelligence” of a system. The border between both approaches shifts continuously, as more and more “intelligence” is cast into algorithmic, system-theoretic form. For example, the response of a robot to sensor input was considered “intelligent behaviour” in the late seventies and even early eighties. Hence, it belonged to A.I. Later it was shown that many sensor-based tasks such as surface following or visual tracking could be formulated as control problems with algorithmic solutions. From then on, they did not belong to A.I. any more. &lt;/span&gt;&lt;/p&gt;  &lt;p class="text"&gt;&lt;span style=";font-family:Verdana;font-size:14;"  &gt; &lt;/span&gt;&lt;span style="font-size:14;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-6929914447746520361?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/6929914447746520361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=6929914447746520361' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/6929914447746520361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/6929914447746520361'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/06/robotics-faq.html' title='Robotics: FAQ'/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_2sBjUUt5Y6I/RnvIqbN7nxI/AAAAAAAAADk/3vadcmaOPE0/s72-c/New+Picture.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-5871819765418323695</id><published>2007-06-15T06:23:00.000-07:00</published><updated>2007-06-15T07:30:07.274-07:00</updated><title type='text'>AUTONOMOUS ROBOT</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;With obstacle avoidance,Drive wheel synchronization&lt;br /&gt; and line tracking capability&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This article is in continuation with my earlier post.So it is expected that u know the basics of designing robot.It is strongly recomended  that you go through that post for understanding basics.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;   The previous post deals with how we can take into account various parameters affecting the  motion of robot analytically.Once we design a robot (i.e. fix all  dimensions .) , the next question is about powering it .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  One way to do this will be have a wired robot with motors attached to wheels.when we supply electric current ,this DC motor will convert that electric energy into mechanical energy and provide the necessary power to robot.The controls will also be handled through this wires.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  But more and more application now-a-days require robots which are wire free.To accomplish this we need some power source on board.The only question unanswered is about controls for robot.&lt;br /&gt;   This is going to be discussed  in this post thoroughly.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  This project of ours uses a lot of electronics and electronic components.Hence, any knowledge in this field will be of added importance.Also many pictures and schematic diagrams have been shown along side to supplement the notes and for better understanding.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Project Features:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;·  ATMega16 Microcontroller&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;The ATMega16 monitors all robot sensors and&lt;br /&gt;controls motor drive functions.&lt;br /&gt;In system programming is available.&lt;br /&gt;Microcode was developed using the MCS Bascom&lt;br /&gt;AVR compiler.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;·  Obstacle avoidance &lt;/span&gt;&lt;br /&gt;The robot maneuvers around obstacles while&lt;br /&gt;seeking for a black line to track.&lt;br /&gt;Obstacles cause direction reversal when the robot is&lt;br /&gt;in line tracking mode.&lt;br /&gt;The obstacle sensor is a Sharp GP2D15 sensor&lt;br /&gt;connected to INT0 of the ATMega16.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;·  Line tracking &lt;/span&gt;&lt;br /&gt;The robot is designed to search for a black line on&lt;br /&gt;the terrain.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RnKfCrN7nwI/AAAAAAAAADc/71ltCclvROs/s1600-h/New+Picture+%283%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RnKfCrN7nwI/AAAAAAAAADc/71ltCclvROs/s320/New+Picture+%283%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5076294598309682946" border="0" /&gt;&lt;/a&gt;Once the line is found, the robot tracks the line&lt;br /&gt;from end to end and reverses direction when it&lt;br /&gt;encounters an obstacle in the path of the line.&lt;br /&gt;Three infrared sensors mounted under the robot&lt;br /&gt;and connected to port D of the Mega16 do line&lt;br /&gt;sensing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;·  Differential Drive &lt;/span&gt;&lt;br /&gt;Two DC motors provide mechanical propulsion&lt;br /&gt;through friction drive of the drive wheels.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;The motors are electrically driven by two Allegro&lt;br /&gt;3953 full bridge motor drivers connected to port A&lt;br /&gt;of the ATMega16.&lt;br /&gt;&lt;/div&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;                                                                                  Figure 1 - AUTONOMOUS ROBOT  DESIGN&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;·  Drive Wheel Synchronization &lt;/span&gt;&lt;br /&gt;Infrared wheel encoders and a microcode routine&lt;br /&gt;provide wheel synchronization. This allows for&lt;br /&gt;straight-line travel without guidance.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;·  Rechargeable Battery Pack &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Power is provided by a rechargeable 9.6 Volt NiCad&lt;br /&gt;battery pack.&lt;br /&gt;There is a 5 Volt on-board regulator for logic power.&lt;br /&gt;Project Number A3743&lt;br /&gt;Autonomous Robot&lt;br /&gt;With obstacle avoidance, drive wheel&lt;br /&gt;synchronization and line tracking&lt;br /&gt;capability&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;AUTONOMOUS  ROBOT  &lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;BRIEF  DESCRIPTION &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;br /&gt;               This project is an autonomous robot that is capable of obstacle avoidance, drive wheel&lt;br /&gt;synchronization and line tracking. The robot initializes in seek mode, where it avoids obstacles and searches for a black line to track. Wheel synchronization, during seek mode, allows the robot to travel in a straight line without guidance. Once a black line is found, the robot tracks the line and reverses direction when an obstacle is encountered on the line.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;               The electronic control assembly consists of an Atmel ATMega16 MCU operating at 8Mhz with an internal clock. Two Allegro 3953 full-bridge motor drivers are used for motor control. Microcode for the project was written using the MCS Basic-AVR compiler. Microcode can be updated using the on-board ISP connector.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;                The Mechanical assembly uses a differential drive system made from two small DC motors, a friction drive system and two 78mm wheels. There are six on-board sensors that allow the robot to avoid obstacles, synchronize wheel rotation and track lines. Power is provided by a rechargeable 9.6V NiCad battery pack.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/RnKcObN7ntI/AAAAAAAAADE/bHzpJ4XmzDU/s1600-h/New+Picture.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/RnKcObN7ntI/AAAAAAAAADE/bHzpJ4XmzDU/s320/New+Picture.bmp" alt="" id="BLOGGER_PHOTO_ID_5076291501638262482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;          &lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt; Figure 2 – Side View of Robot&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RnKdNrN7nuI/AAAAAAAAADM/_VH5Ju7BC4E/s1600-h/New+Picture+%281%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/RnKdNrN7nuI/AAAAAAAAADM/_VH5Ju7BC4E/s320/New+Picture+%281%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5076292588264988386" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;AUTONOMOUS ROBOT  BLOCK DIAGRAM&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;AUTONOMOUS ROBO&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RnKer7N7nvI/AAAAAAAAADU/kXiy3J3qpx8/s1600-h/New+Picture+%282%29.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/RnKer7N7nvI/AAAAAAAAADU/kXiy3J3qpx8/s320/New+Picture+%282%29.bmp" alt="" id="BLOGGER_PHOTO_ID_5076294207467658994" border="0" /&gt;&lt;/a&gt;T&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;AN OVERALL VIEW OF CIRCUITRY&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CODE SAMPLE&lt;br /&gt;Microcode for this project was written with the MCS Basic-AVR compiler. This code sample shows the&lt;br /&gt;“Seek_line” routine and drive wheel synchronization method. The robot initializes into the Seek_line&lt;br /&gt;routine, where it roams about looking for a black line to track. The robot must synchronize the two&lt;br /&gt;differential drive wheel rotations, in order to travel in a straight line, when in seek mode. Calling the&lt;br /&gt;“Poll_wheels” routine, where the encoder counters are updated at each wheel encoder pulse and&lt;br /&gt;then comparing the left and right wheel counters does this. The wheel drive is altered if there is a&lt;br /&gt;difference of 2 or more between “Leftc” and “Rightc”.&lt;br /&gt;&lt;/div&gt;'* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *&lt;br /&gt;Seek_line: 'Roam around, avoid obstacles, seek the black line&lt;br /&gt;Leftc = 0 'Initialize wheel counters&lt;br /&gt;Rightc = 0&lt;br /&gt;Motor = Forth 'Go forward&lt;br /&gt;Seek_line1:&lt;br /&gt;Op_mode = "seek"&lt;br /&gt;Gosub Poll_wheels&lt;br /&gt;If Csense = 1 Then 'Center line sensor found black line&lt;br /&gt;Motor = Brake 'Stop&lt;br /&gt;Waitms 300 'pause&lt;br /&gt;Goto Track 'Goto track mode&lt;br /&gt;End If&lt;br /&gt;Motor = Forth 'Give both motors a forward pulse&lt;br /&gt;Gp2 = Rightc + 2 'General Purpose reg = right counter + 2&lt;br /&gt;If Leftc &gt; Gp2 Then 'Is the left wheel 2 pulses ahead of the right wheel?&lt;br /&gt;Motor = Turnl 'Adjust&lt;br /&gt;End If&lt;br /&gt;Gp2 = Leftc + 2 'General Purpose reg = left counter + 2&lt;br /&gt;If Rightc &gt; Gp2 Then 'Is the right wheel 2 pulses ahead of the left wheel?&lt;br /&gt;Motor = Turnr 'Adjust&lt;br /&gt;End If&lt;br /&gt;If Leftc &gt; 130 Then 'Clear the wheel counters after 10 wheel revolutions&lt;br /&gt;Rightc = 0&lt;br /&gt;Leftc = 0&lt;br /&gt;End If&lt;br /&gt;Goto Seek_line1&lt;br /&gt;'* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *&lt;br /&gt;'Returns (Leftc) the left wheel encoder count and (Rightc) the Right wheel encoder count.&lt;br /&gt;Poll_wheels: 'Polls the wheel encoder sensors and counts pulses.&lt;br /&gt;If Lwheel = 0 Then 'If left wheel encoder is uncovered&lt;br /&gt;If Left_flag = 1 Then 'Do this once each encoder sensor transition&lt;br /&gt;Incr Leftc 'Increment the wheel counter&lt;br /&gt;Reset Left_flag&lt;br /&gt;End If&lt;br /&gt;End If&lt;br /&gt;If Lwheel = 1 Then Set Left_flag 'Set the flag when the sensor is covered&lt;br /&gt;If Rwheel = 0 Then 'If right wheel encoder is uncovered&lt;br /&gt;If Right_flag = 1 Then 'Do this once each encoder sensor transition&lt;br /&gt;Incr Rightc 'Increment the wheel counter&lt;br /&gt;Reset Right_flag&lt;br /&gt;End If&lt;br /&gt;End If&lt;br /&gt;If Rwheel = 1 Then Set Right_flag 'Set the flag when the sensor is covered&lt;br /&gt;Return&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-5871819765418323695?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/5871819765418323695/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=5871819765418323695' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/5871819765418323695'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/5871819765418323695'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/06/autonomous-robot.html' title='AUTONOMOUS ROBOT'/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_2sBjUUt5Y6I/RnKfCrN7nwI/AAAAAAAAADc/71ltCclvROs/s72-c/New+Picture+%283%29.bmp' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-3291794741632422561</id><published>2007-06-11T07:38:00.000-07:00</published><updated>2007-06-12T07:10:53.853-07:00</updated><title type='text'>Basics of robotics</title><content type='html'>&lt;h1 style="text-align: center;" align="center"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;BASICS ON DEVELOPING &lt;span style=""&gt; &lt;/span&gt;SIMPLE ROBOT&lt;/span&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;  &lt;!--[if !supportLineBreakNewLine]--&gt;  &lt;!--[endif]--&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h1&gt;  &lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;div class="MsoNormal" style="text-align: center;" align="center"&gt;  &lt;hr align="center" size="2" width="100%"&gt;  &lt;/div&gt;  &lt;p class="MsoNormal" style="margin-bottom: 12pt;"&gt;  &lt;!--[if !supportLineBreakNewLine]--&gt;  &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Contents&lt;/span&gt;&lt;/h3&gt;&lt;h3&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h3&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;a href="file:///E:/Documents%20and%20Settings/rakshe/My%20Documents/A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System.htm#d1"&gt;[1.]&lt;/a&gt;  Introduction &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;a href="file:///E:/Documents%20and%20Settings/rakshe/My%20Documents/A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System.htm#d2"&gt;[2.]&lt;/a&gt;  The Differential Steering System &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;a href="file:///E:/Documents%20and%20Settings/rakshe/My%20Documents/A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System.htm#d3"&gt;[3.]&lt;/a&gt;  Rounding a Corner&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;a href="file:///E:/Documents%20and%20Settings/rakshe/My%20Documents/A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System.htm#d4"&gt;[4.]&lt;/a&gt;  Some Preliminaries to Developing a Model &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;a href="file:///E:/Documents%20and%20Settings/rakshe/My%20Documents/A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System.htm#d5"&gt;[5.]&lt;/a&gt;  The Derivation &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;a href="file:///E:/Documents%20and%20Settings/rakshe/My%20Documents/A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System.htm#d6"&gt;[6.]&lt;/a&gt;  Dead Reckoning and Odometry &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;a href="file:///E:/Documents%20and%20Settings/rakshe/My%20Documents/A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System.htm#d7"&gt;[7.]&lt;/a&gt;  A Simpler Formula for Dead Reckoning &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;a href="file:///E:/Documents%20and%20Settings/rakshe/My%20Documents/A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System.htm#d8"&gt;[8.]&lt;/a&gt;  Acceleration&lt;/p&gt; &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;!--[if !supportLineBreakNewLine]--&gt;  &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;div class="MsoNormal" style="text-align: center;" align="center"&gt;  &lt;hr align="center" size="2" width="100%"&gt;  &lt;/div&gt;  &lt;p class="MsoNormal" style="margin-bottom: 12pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;h3&gt;&lt;a name="d1"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Introduction&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/h3&gt;   &lt;p class="MsoNormal"&gt;These notes present equations describing the path of a   robot or vehicle equipped with a &lt;i&gt;differentially steered drive system&lt;/i&gt;.   This simple and reliable wheel-based propulsion system is commonly used in   small&lt;/p&gt; &lt;p class="MsoNormal"&gt;ler robots. It is familiar from ordinary life because it is essentially   the same system that is used in a wheelchair: two wheels mounted on a single   axis are independently powered and controlled,&lt;/p&gt; &lt;p class="MsoNormal"&gt; thus providing both drive and   steering functions. The equations in these notes provide a an elementary   model for the differentially steered drive system (which is often called a differential steering system). This model can be used to predict how a robot   equipped with such a system will respond to changes in its wheel speed and   what path it will follow under various conditions. The model can also be used   to calculate a robot's position in dead-reckoning or &lt;i&gt;localization by   odometry&lt;/i&gt; applications (techniques that estimate a robot's position based   on distances measured with odometer devices mounted on each wheel). &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;     &lt;p&gt;It is worth emphasizing that the equations given here do represent an &lt;i&gt;elementary&lt;/i&gt;   model for the motion of a robot or vehicle. They describe the robot's   position and orientation as a function of the movement of its wheels, but   ignore the underlying physics involved in making that motion happen. Issues   such as torques and forces, friction, energy and inertia will be left for a   more advanced discussion. In technical terms, this method of describing   motion is referred to as a &lt;i&gt;kinematics approach&lt;/i&gt;. It ignores the causes   of motion (which would be studied in a &lt;i&gt;dynamics approach&lt;/i&gt;) and focuses   on the effects. These notes also ignore the many interesting details of   motors, gearing, electromagnetics, power supplies, and other engineering   considerations that make wheel-based actuators possible. As such they provide   a first step to understanding the behavior of robots with differentially   steered drive systems, not a complete description.&lt;/p&gt; &lt;p&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;     &lt;p&gt;The intended audience for this web page includes high school and   undergraduate students who may not be comfortable with the calculus   techniques used to develop the differential steering model. Such students   should be able to "parse out" the relevant information by scanning   the text and paying attention to the results in equations [3] and [5]. To   really take advantage of the model requires understanding something of the   math and kinematics behind it. So the discussion on this page includes a lot   of background information on the problem and a more-than-customary amount of   explanation. By providing so much detail, these notes should help the reader   apply the differential steering model to his or her own robotic applications.&lt;/p&gt; &lt;p&gt;   &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;    &lt;p&gt;The differential steering system is sometimes incorrectly called a   "differential drive system." The term &lt;i&gt;differential drive&lt;/i&gt; is   used in automotive engineering to represent a kind of propulsion system that   transfers power to its drive wheels through a differential gear or related   device (as in the classic rear-wheel drive vehicle). Clearly, it is a   different concept than the system described here. Robotics enthusiasts are   careful to make the distinction. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;a name="d2"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/a&gt;&lt;/p&gt;   &lt;h3&gt;&lt;span style=""&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;The   Differential Steering System&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;     &lt;p class="MsoNormal"&gt;As mentioned above, the differentially steered drive   system used in many robots is essentially the same arrangement as that used   in a wheelchair. So, most of us have an intuitive grasp of the way it   behaves. If both drive wheels turn in tandem, the robot moves in a straight   line. If one wheel rotates faster than the other, the robot follows a curved   path inward toward the slower wheel. If the wheels turn at equal speed, but   in opposite directions, the robot pivots. Thus, steering the robot is just a   matter of varying the speeds of the drive wheels. But how exactly do we   choose the speeds so that the robot will move where we want it to go? In   these notes, we will try to refine this intuitive understanding into   mathematical expressions that can be used for implementing robot control   software. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal" style="margin-bottom: 12pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td rowspan="2" style="padding: 0in; width: 262.5pt;" valign="top" width="350"&gt;    &lt;h3&gt;&lt;a name="d3"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Rounding a Corner&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/h3&gt;   &lt;p class="MsoNormal"&gt;Before tackling the differential steering model, let's   consider the &lt;/p&gt; &lt;p class="MsoNormal"&gt;problem of getting a robot with a to make a 90-degree turn around   a corner in a hallway or a road. A simple approach is to have the robot drive   to the intersection, stop, and pivot. Clearly, though, such an approach is   inefficient and a bit ungainly. A more elegant approach would be for the   robot to &lt;i&gt;round the corner&lt;/i&gt;, following a gradual circular arc through&lt;/p&gt;  &lt;p class="MsoNormal"&gt;   the intersection while maintaining a steady speed. To accomplish this end, we   increase the speed of the outer wheel while slowing that of the inner. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;     &lt;p&gt;Is the path that the robot follows truly circular, or is it some other   kind of curve? Later on, we will show that if both wheels turn at constant,   but different, speeds, the robot does indeed follow a circular path. For now,   just assume that path is circular. With that in mind, we see that wheel   speeds are selected based on how wide a turn we desire the robot to make.&lt;/p&gt; &lt;p&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0in; width: 11.25pt;" width="15"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0in;" valign="top"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;    &lt;v:stroke joinstyle="miter"&gt;    &lt;v:formulas&gt;     &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;     &lt;v:f eqn="sum @0 1 0"&gt;     &lt;v:f eqn="sum 0 0 @1"&gt;     &lt;v:f eqn="prod @2 1 2"&gt;     &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;     &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;     &lt;v:f eqn="sum @0 0 1"&gt;     &lt;v:f eqn="prod @6 1 2"&gt;     &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;     &lt;v:f eqn="sum @8 21600 0"&gt;     &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;     &lt;v:f eqn="sum @10 21600 0"&gt;    &lt;/v:formulas&gt;    &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;    &lt;o:lock ext="edit" aspectratio="t"&gt;   &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" alt="" style="'width:243.75pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image001.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image47.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/Rm1jObN7nWI/AAAAAAAAAAM/PGdMvoRNg6M/s1600-h/Image47.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/Rm1jObN7nWI/AAAAAAAAAAM/PGdMvoRNg6M/s320/Image47.gif" alt="" id="BLOGGER_PHOTO_ID_5074821454591925602" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;"  &gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;/td&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;b&gt;Figure 1. Path   of wheels through a turn.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal" style="margin-bottom: 12pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p class="MsoNormal"&gt;Referring to Figure 1, observe the relationships: &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 262.5pt;" valign="top" width="350"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" alt="" style="'width:81pt;height:51.75pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image002.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image51.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6crbN7nYI/AAAAAAAAAAc/XJplfHd8Hp4/s1600-h/Image51.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6crbN7nYI/AAAAAAAAAAc/XJplfHd8Hp4/s320/Image51.gif" alt="" id="BLOGGER_PHOTO_ID_5075166099947625858" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;&lt;br /&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;  where sR,sL  give the displacement (distance traveled) for the left and right wheels respectively, r is  the turn radius for the inner (left) wheel, b is the distance between wheels (from center-to-center along the length of the axle), and theta is the angle of the turn in radians (&lt;h3&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6hO7N7naI/AAAAAAAAAAs/3hZYLgH8NDc/s1600-h/Image55.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6hO7N7naI/AAAAAAAAAAs/3hZYLgH8NDc/s320/Image55.gif" alt="" id="BLOGGER_PHOTO_ID_5075171107879493026" border="0" /&gt;&lt;/a&gt;&lt;/h3&gt; ).sM  is the speed at the center point on the main axle. In this discussion, we will treat the axle's center point as the origin of the simulated robot's frame of reference.     &lt;p style="margin-bottom: 12pt;"&gt;Once we've established the simple geometry   for the differential steering system, it is easy to develop algorithms for   controlling the robot's path. Note, though, that we did make an important   simplifying assumption: the wheels maintain a steady velocity. We neglected   the effects of acceleration. If the wheels are allowed to accelerate, the   curve which describes the robot's trajectory can become much more   complicated. When working with very light robots, where the mass (and   inertia) of the platform is small, we can often get away with treating   changes in speed as nearly instantaneous. The path that the robot follows   will not be truly circular, but it will be close enough for many   applications. For larger, heavier robots, of course, mass is important and   acceleration must be considered. &lt;a name="d4"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/p&gt;   &lt;h3&gt;&lt;span style=""&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Some   Preliminari&lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;es to Developing a Model&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;    &lt;p class="MsoNormal"&gt;In the discussion above, we considered the problem of   trying to &lt;i&gt;choose&lt;/i&gt; wheel speeds based on a desired path. Now we will   consider the opposite problem: how do we find the trajectory of the robot if   we are &lt;i&gt;told&lt;/i&gt; what speeds the wheels will be turning? The answer to this   question leads to the development of our model and also turns out to be   directly applicable to dead reckoning. Essentially, this is a problem in what   is called &lt;i&gt;forward kinematics,&lt;/i&gt; the technique of predicting a mechanical   system's behavior based on the inputs to that system. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;    &lt;p&gt;Developing a model for the differential steering system is not difficult,   but does require the use of calculus and differential equations. If you are   unfamiliar with calculus, you may prefer to just view the results given in   equations [3] and [5] below. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p&gt;To begin, consider that what we're really interested in is how x and y   coordinates (and orientation) change with respect to time. At any instant,   the x and y coordinates of the robot's center point are changing based on its   speed and orientation. We treat orientation as an angle &lt;span style="font-family:Symbol;"&gt;q&lt;/span&gt; measured in radians, counter-clockwise   from the x-axis. Recall that the vector giving the direction of forward   motion for the robot will be simply &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1035" type="#_x0000_t75" alt="" style="'width:61.5pt;height:15.75pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image011.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image12.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/p&gt;&lt;h1 style="text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ikbN7nbI/AAAAAAAAAA0/4EfJLuB-kVw/s1600-h/Image12.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ikbN7nbI/AAAAAAAAAA0/4EfJLuB-kVw/s320/Image12.gif" alt="" id="BLOGGER_PHOTO_ID_5075172576758308274" border="0" /&gt;&lt;/a&gt;&lt;/h1&gt; &lt;p&gt;&lt;!--[endif]--&gt;. The x and y   coordinates for the robot's center point will change depending on the speed   of its motion along that vector. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p&gt;These observations suggest that, taking &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1036" type="#_x0000_t75" alt="" style="'width:24.75pt;height:15pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image012.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image13.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;m(t) &lt;!--[endif]--&gt;and &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1037" type="#_x0000_t75" alt="" style="'width:22.5pt;height:15.75pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image013.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image14.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;theta(t) &lt;!--[endif]--&gt;as time-dependent   functions for the robot's speed and orientation, our solution is going to be   in the form: &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1038" type="#_x0000_t75" alt="" style="'width:108.75pt;height:15.75pt;mso-wrap-distance-top:.75pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image014.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image15.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ikbN7ncI/AAAAAAAAAA8/q6IC2XMgrE0/s1600-h/Image15.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ikbN7ncI/AAAAAAAAAA8/q6IC2XMgrE0/s320/Image15.gif" alt="" id="BLOGGER_PHOTO_ID_5075172576758308290" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;,&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1039" type="#_x0000_t75" alt="" style="'width:108pt;height:15.75pt;mso-wrap-distance-top:.75pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image015.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image54.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ikrN7ndI/AAAAAAAAABE/E8BUW_X9WNc/s1600-h/Image54.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ikrN7ndI/AAAAAAAAABE/E8BUW_X9WNc/s320/Image54.gif" alt="" id="BLOGGER_PHOTO_ID_5075172581053275602" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;[1]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal" style="margin-bottom: 12pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;h3&gt;&lt;a name="d5"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;The Derivation&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/h3&gt;    &lt;p class="MsoNormal"&gt;Let's derive functions for the robot's trajectory. For   now, it will be easier to defer thinking about acceleration and just assume   that the speeds of the wheels are constant. If both wheels are moving at the   same velocity, the robot travels in a straight line and the equation for its   trajectory is trivial. So, instead, we will consider the case where the   wheels travel at different velocities. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 171.75pt;" valign="top" width="229"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1040" type="#_x0000_t75" alt="" style="'width:171.75pt;height:162.75pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image016.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\wheel2.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/p&gt;&lt;h3&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6bybN7nXI/AAAAAAAAAAU/VY_oXTvYVYg/s1600-h/wheel2.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6bybN7nXI/AAAAAAAAAAU/VY_oXTvYVYg/s320/wheel2.gif" alt="" id="BLOGGER_PHOTO_ID_5075165120695082354" border="0" /&gt;&lt;/a&gt;&lt;/h3&gt; &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 11.25pt;" valign="top" width="15"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 300pt;" valign="top" width="400"&gt;   &lt;p class="MsoNormal"&gt;Referring to figure 2, note that as the robot changes   position, all points on the robot may be in motion. To develop a forward   kinematic equation for the motion of a differential steering system, we start   by specifying a &lt;i&gt;frame of reference&lt;/i&gt; in which an arbitarily chosen point   is treated as stationary. All other points in the system are treated as   moving relative to the reference point. The robot is considered a rigid body.   By approaching the problem in this manner, we will gain insights which can be   applied to the more general problem of modeling the robot's motion in an   absolute frame of reference. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;b&gt;Figure 2. Wheels   at different velocities.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p&gt;The point that we select as our reference is the center point of the left   wheel. This is the point where an idealized wheel makes contact with the   floor. Again, all motion in this frame of reference is treated in relative to   the left-wheel point. Because the right wheel is mounted perpendicular to the   axle, its motion &lt;i&gt;within the frame of reference&lt;/i&gt; follows a circular arc   with a radius corresponding to the length of the axle (from hub center to hub   center). &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p&gt;Now the central point itself may be in motion, so the &lt;i&gt;actual&lt;/i&gt; path   of the right wheel will not necessarily correspond to that particular   circular arc. But the change in orientation &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1041" type="#_x0000_t75" alt="" style="'width:12pt;height:14.25pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image006.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image8.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;theta &lt;!--[endif]--&gt;is &lt;i&gt;not&lt;/i&gt; restricted   to the robot's frame of reference. Because we treat the robot as a rigid body,   all points in the system undergo the same change in orientation. If we pivot   the robot 10 degrees about the left wheel, all points undergo a 10 degree   change in orientation. And any change in orientation in the special frame of   reference is, in fact, equivalent to that of the more general case. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p&gt;Based on these observations, we can derive a differential equation   describing the change in orientation as with respect to time of time. The   definition of an angle given in radians is the length of a circular arc   divided by the radius of that circle. The relative velocity of the right   wheel gives us that length of arc per unit time. The length from the wheel to   the center point gives us the radius. Combining these facts, we have: &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1042" type="#_x0000_t75" alt="" style="'width:101.25pt;height:15.75pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image017.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image19.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6j7bN7neI/AAAAAAAAABM/33yemThlaRM/s1600-h/Image19.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6j7bN7neI/AAAAAAAAABM/33yemThlaRM/s320/Image19.gif" alt="" id="BLOGGER_PHOTO_ID_5075174071406927330" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;[2]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p&gt;Integrating [2] and taking the initial orientation of the robot as &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1043" type="#_x0000_t75" alt="" style="'width:48pt;height:15.75pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image018.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image20.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;,&lt;br /&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6j7bN7nfI/AAAAAAAAABU/wfVAa88wmuc/s1600-h/Image20.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6j7bN7nfI/AAAAAAAAABU/wfVAa88wmuc/s320/Image20.gif" alt="" id="BLOGGER_PHOTO_ID_5075174071406927346" border="0" /&gt;&lt;/a&gt;&lt;p&gt;we find a function for   calculating the robot's orientation as a function of wheel velocity and time:   &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1044" type="#_x0000_t75" alt="" style="'width:115.5pt;height:15.75pt;mso-wrap-distance-top:.75pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image019.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image21.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6j7bN7ngI/AAAAAAAAABc/YhJkDSrA9cg/s1600-h/Image21.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_2sBjUUt5Y6I/Rm6j7bN7ngI/AAAAAAAAABc/YhJkDSrA9cg/s320/Image21.gif" alt="" id="BLOGGER_PHOTO_ID_5075174071406927362" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;[3]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p&gt;As noted above, this change in orientation also applies to the absolute   frame of reference. Shifting our attention back to the absolute frame, we   recall from [1] above that the robot's overall motion depends on the the   velocity its center point (the midpoint of the axle). That velocity is simply   the average of that for the two wheels, or&lt;br /&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ko7N7nhI/AAAAAAAAABk/SBFJoasUCcM/s1600-h/Image22.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ko7N7nhI/AAAAAAAAABk/SBFJoasUCcM/s320/Image22.gif" alt="" id="BLOGGER_PHOTO_ID_5075174853090975250" border="0" /&gt;&lt;/a&gt;&lt;p&gt;. We combine this fact   with what we know the about orientation as a function of time, and get the   following differential equations: &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ko7N7njI/AAAAAAAAAB0/WbuuwP8jaqU/s1600-h/Image24.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ko7N7njI/AAAAAAAAAB0/WbuuwP8jaqU/s320/Image24.gif" alt="" id="BLOGGER_PHOTO_ID_5075174853090975282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;[4]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ko7N7niI/AAAAAAAAABs/Cq7CNM3zkrk/s1600-h/Image23.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6ko7N7niI/AAAAAAAAABs/Cq7CNM3zkrk/s320/Image23.gif" alt="" id="BLOGGER_PHOTO_ID_5075174853090975266" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Note that the equations in [4] are in the same form as that shown in [1].   Integrating and applying the initial position of the robot , we have &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1049" type="#_x0000_t75" alt="" style="'width:256.5pt;height:33pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image021.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image60.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6lj7N7nkI/AAAAAAAAAB8/hzzsIxM5xUs/s1600-h/Image60.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6lj7N7nkI/AAAAAAAAAB8/hzzsIxM5xUs/s320/Image60.gif" alt="" id="BLOGGER_PHOTO_ID_5075175866703257154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1050" type="#_x0000_t75" alt="" style="'width:261.75pt;height:33pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image022.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image61.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;[5]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6lj7N7nlI/AAAAAAAAACE/aSDBfMLCuYI/s1600-h/Image61.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6lj7N7nlI/AAAAAAAAACE/aSDBfMLCuYI/s320/Image61.gif" alt="" id="BLOGGER_PHOTO_ID_5075175866703257170" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Note that the equations given in [5] confirm the earlier assertion that,   when the wheels turn at fixed velocities, the robot follows a circular path.   The term &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1051" type="#_x0000_t75" alt="" style="'width:120pt;height:15.75pt;mso-wrap-distance-top:.75pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image023.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image62.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/Rm6l_rN7nmI/AAAAAAAAACM/ttspEkl6o6I/s1600-h/Image62.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/Rm6l_rN7nmI/AAAAAAAAACM/ttspEkl6o6I/s320/Image62.gif" alt="" id="BLOGGER_PHOTO_ID_5075176343444627042" border="0" /&gt;&lt;/a&gt;&lt;p&gt;is actually the turn   radius for circular trajectory of the robot's center. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="margin-bottom: 12pt;"&gt;When using [5] in a computer application, it   is necessary to implement special handling for cases where the wheel speeds   are nearly equal and&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1052" type="#_x0000_t75" alt="" style="'width:52.5pt;height:12pt;mso-wrap-distance-top:2.25pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image024.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image36.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/p&gt;&lt;p style="margin-bottom: 12pt;"&gt;&lt;!--[endif]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/Rm6l_rN7nnI/AAAAAAAAACU/3LWBmXPAClY/s1600-h/Image36.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/Rm6l_rN7nnI/AAAAAAAAACU/3LWBmXPAClY/s320/Image36.gif" alt="" id="BLOGGER_PHOTO_ID_5075176343444627058" border="0" /&gt;&lt;/a&gt;. In such cases, of   course, the robot travels in a nearly straight line. Using &lt;i&gt;L'Hospital's   rule&lt;/i&gt; from elementary calculus, we can show that the equations do have   limits approaching a straight line in the direction of the initial   orientation &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1053" type="#_x0000_t75" alt="" style="'width:13.5pt;height:13.5pt;mso-wrap-distance-top:3pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image025.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image37.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;(theta) 0&lt;!--[endif]--&gt;. &lt;a name="d6"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/p&gt;   &lt;h3&gt;&lt;span style=""&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Dead Reckoning   and Odometry&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;   &lt;p class="MsoNormal"&gt;Once we have [5], it's a small step to be able to perform   dead reckoning. In traditional aviation or nautical navigation, the term   "dead reckon" means to estimate position without external   references. Position is dead reckoned using knowledge about a vehicle's   course and speed over a period of time. In robotics, the necessary   information is often obtained by measuring wheel revolutions. Devices called encoders   are coupled to a robot's drive wheels and act like digital odometers.   Although things can go wrong (as when the robot "spins out" on a   slippery floor), encoders generally provide a good estimate of displacements &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1054" type="#_x0000_t75" alt="" style="'width:27pt;height:12pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image026.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image38.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;for the right and left   wheels, respectively. These displacement values can, in turn, be used to   determine position based on odometry calculations. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p style="margin-bottom: 12pt;"&gt;The equations given in [5] can be used for   dead reckoning by substituting &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1055" type="#_x0000_t75" alt="" style="'width:27pt;height:12pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image026.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image38.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;for the terms &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1056" type="#_x0000_t75" alt="" style="'width:27pt;height:12pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image027.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image39.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;and dropping the time   value &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1057" type="#_x0000_t75" alt="" style="'width:7.5pt;height:10.5pt;mso-wrap-distance-top:2.25pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image028.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image40.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;t &lt;!--[endif]--&gt;, then solving for the   values x &amp; y&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1058" type="#_x0000_t75" alt="" style="'width:21pt;height:12.75pt;mso-wrap-distance-top:3pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image029.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image41.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;, and theta&lt;!--[endif]--&gt;. When using the   equations, you need to be careful about cases where the robot travels in a   nearly straight-line path and the displacements &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1060" type="#_x0000_t75" alt="" style="'width:27pt;height:12pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image026.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image38.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;sL,sR &lt;!--[endif]--&gt;become nearly equal   resulting in values near zero in the denominators. &lt;a name="d7"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/p&gt;   &lt;h3&gt;&lt;span style=""&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;A Simpler   Formula for Dead Reckoning&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;   &lt;p&gt;Many popular authors on robotics recommend the formulas shown in [6] below   as a way to avoid the complications that we saw in [5].The methods in [6] are   especially well suited to small robot applications where on-board computing   power is limited (and floating-point operations might not be available). &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1061" type="#_x0000_t75" alt="" style="'width:97.5pt;height:73.5pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image030.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image42.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6nG7N7noI/AAAAAAAAACc/E9yICRE49bo/s1600-h/Image42.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6nG7N7noI/AAAAAAAAACc/E9yICRE49bo/s320/Image42.gif" alt="" id="BLOGGER_PHOTO_ID_5075177567510306434" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;[6]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p&gt;The forumulas in [6] are simple and convenient. They work well for   algorithms as long as you remember that they are approximations... a fact   that is sometimes overlooked. Essentially, [6] computes the robot's total   rotation and distance traveled, then treats it as if it had completed the   full rotation as a pivot the very beginning of the maneuver and then traveled   in a straight line. Of course, this kind of "point-and-shoot"   description is an incomplete representation of the reality. But so long as   the robot's actual path doesn't involve too much of a turn, everything is   fine. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p&gt;How much of a turn is &lt;i&gt;too much&lt;/i&gt;? That depends on the geometry of the   particular robot. You can probably use [6] as long as the angle of the turn   does not get larger than 10 degrees. If it does, you should apply the   approximation in stages. That is, if the robot's transit results in a turn of   20 degrees, treat it as two segments of 10 degrees each. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;st1:place st="on"&gt;&lt;st1:placetype st="on"&gt;&lt;/st1:placetype&gt;&lt;st1:placename st="on"&gt;&lt;/st1:placename&gt;&lt;/st1:place&gt;         We proposes a nice little improvement to [6]. Imagine that   the robot is following a circular path curving to the left. It is easy to see   that the point-and-shoot maneuver described above would create a path to the   inside of the curve. Tom suggests that the accuracy of the approximation can   be improved by simply dividing the robot's change in orientation by two. So   the theta term in the equations becomes &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1062" type="#_x0000_t75" alt="" style="'width:105.75pt;height:18pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image031.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\InsetFix.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/p&gt;&lt;p&gt;&lt;!--[endif]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6nG7N7npI/AAAAAAAAACk/RfYpWWAVh8U/s1600-h/InsetFix.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_2sBjUUt5Y6I/Rm6nG7N7npI/AAAAAAAAACk/RfYpWWAVh8U/s320/InsetFix.gif" alt="" id="BLOGGER_PHOTO_ID_5075177567510306450" border="0" /&gt;&lt;/a&gt;. When adjusted this way, the   point-and-shoot path will not be so far inside the curved path and,   eventually, the two may even cross. Tom also generously provided an upgrade   to the &lt;span style="text-decoration: underline;"&gt;motion appalet&lt;/span&gt;   to demonstrate the effect of this improvement.   &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p style="margin-bottom: 12pt;"&gt;     Whether you apply [5] or [6] for your dead   reckoning, remember that the realities of mechanical systems limit the   accuracy of your calculations. If the robot's wheels hit a slippery spot on   the floor and spin wildly, it will degrade the accuracy of the distances   measured by the encoders. Even when your wheels maintain traction, your   position estimates will be vulnerable to backlash (slop) in the robot's   gearing, inaccuracies in the encoders, and small variations in the wheel speed.       &lt;!--[if !supportLineBreakNewLine]--&gt;    &lt;!--[endif]--&gt;&lt;a name="d8"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/p&gt;   &lt;h3&gt;&lt;span style=""&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Acceleration&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;   &lt;p class="MsoNormal"&gt;Adding acceleration to the model is simply a matter of   substituting appropriate time-dependent equations for wheel velocities into   [2] and [4]. Unfortunately, the resulting differential equations are often   not solvable, but must be evaluated using numerical methods. Let's consider a   simple example where the wheels undergo a fixed rate of acceleration. Let &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1063" type="#_x0000_t75" alt="" style="'width:78pt;height:33pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image032.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image56.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_2sBjUUt5Y6I/Rm6nurN7nqI/AAAAAAAAACs/8rDqlqDQjMQ/s1600-h/Image56.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_2sBjUUt5Y6I/Rm6nurN7nqI/AAAAAAAAACs/8rDqlqDQjMQ/s320/Image56.gif" alt="" id="BLOGGER_PHOTO_ID_5075178250410106530" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;[7]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p&gt;give the velocities of the right and left wheels where &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1064" type="#_x0000_t75" alt="" style="'width:28.5pt;height:12pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image033.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image44.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;aR,aL &lt;!--[endif]--&gt;give the values for a   constant acceleration (or deceleration) and &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1065" type="#_x0000_t75" alt="" style="'width:33pt;height:12pt;"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image034.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image45.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;wR,wL &lt;!--[endif]--&gt;give the initial   velocities. Substituting into [2] and [4] we have &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 37.5pt;" width="50"&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td style="padding: 0.75pt; width: 337.5pt;" width="450"&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1066" type="#_x0000_t75" alt="" style="'width:175.5pt;height:129pt'"&gt;    &lt;v:imagedata src="file:///E:\DOCUME~1\rakshe\LOCALS~1\Temp\msohtml1\01\clip_image035.gif" href="file:///E:\Documents%20and%20Settings\rakshe\My%20Documents\A%20Tutorial%20and%20Elementary%20Trajectory%20Model%20for%20The%20Differential%20Steering%20System_files\Image46.gif"&gt;   &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_2sBjUUt5Y6I/Rm6n7LN7nsI/AAAAAAAAAC8/nljtdHYLgfg/s1600-h/Image46.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_2sBjUUt5Y6I/Rm6n7LN7nsI/AAAAAAAAAC8/nljtdHYLgfg/s320/Image46.gif" alt="" id="BLOGGER_PHOTO_ID_5075178465158471362" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0.75pt;"&gt;   &lt;p class="MsoNormal"&gt;[8]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="display: none;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="" border="0" cellpadding="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0.75pt; width: 525pt;" width="700"&gt;   &lt;p&gt;We were able to solve the differential equation for orientation directly.   The equations for position are intractable and must be evaluated numerically.    &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;p&gt;    In the real world, when a robot applies constant power to a wheel, it does   not achieve a constant rate of acceleration. As the parts of the drive system   turns faster, it experiences greater internal friction and requires more and   more power to realize the same increase in speed. Based on your own system   characteristics, you may wish to implement an acceleration model based on a   time-dependent polynomial rather than the linear function used in [7]. An   even more sophisticated analysis might yield better, more complicated   functions for velocity and acceleration. Due to the inaccuracies inherent in   robot mechanical systems, however, you will soon reach a point where   improving the model is worth neither the human effort or extra CPU processing   power needed to do so. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-3291794741632422561?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/3291794741632422561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=3291794741632422561' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/3291794741632422561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/3291794741632422561'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/06/basics-of-robotics.html' title='Basics of robotics'/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_2sBjUUt5Y6I/Rm1jObN7nWI/AAAAAAAAAAM/PGdMvoRNg6M/s72-c/Image47.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-9185137816890973888</id><published>2007-03-12T06:39:00.000-07:00</published><updated>2007-03-12T07:06:19.380-07:00</updated><title type='text'></title><content type='html'>&lt;span style="color: rgb(255, 255, 255);"&gt;This bog is dedicated to all those interested in gizmos ,technical, and sci -fi  stuff..........&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 255, 255);"&gt;        So all interested in this subjects,are more than welcome with all their suggestions...............&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 255, 255);"&gt;             To know more just bookmark this page.....................&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-9185137816890973888?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/9185137816890973888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=9185137816890973888' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/9185137816890973888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/9185137816890973888'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/03/this-bog-is-dedicated-to-all-those.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-150791932420013519.post-4455124169795337314</id><published>2007-03-12T00:46:00.000-07:00</published><updated>2007-03-12T00:47:53.652-07:00</updated><title type='text'></title><content type='html'>&lt;span style="font-size:130%;color:#ff0000;"&gt;hi guys,&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;    this is my first posting. wait and watch for the game!!!!!!!!!!!!!!!!&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/150791932420013519-4455124169795337314?l=mytecho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mytecho.blogspot.com/feeds/4455124169795337314/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=150791932420013519&amp;postID=4455124169795337314' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/4455124169795337314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/150791932420013519/posts/default/4455124169795337314'/><link rel='alternate' type='text/html' href='http://mytecho.blogspot.com/2007/03/hi-guys-this-is-my-first-posting.html' title=''/><author><name>Vaibhav Rakshe</name><uri>http://www.blogger.com/profile/02932764908397645695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_2sBjUUt5Y6I/TAD5FmKRWvI/AAAAAAAAAKY/v5BD_a-IEc0/S220/DSCN0061.JPG'/></author><thr:total>3</thr:total></entry></feed>
