User Tools

Site Tools


robots:computer:talos:software:program_structure

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
robots:computer:talos:software:program_structure [2015/01/12 14:40]
david created
robots:computer:talos:software:program_structure [2021/08/14 04:21] (current)
Line 1: Line 1:
 +====== Program structure ======
  
 +To provide a easy and modular programming of the robot, every device can be seperately started by a launch file. 
 +They provide the startup setting whats neccessary
 +
 +Launch files for the actors and sensor devices:
 +  * Laserscanner (start_laserscanner.launch)
 +  * IMU (start_imu.launch)
 +  * Joystick (start_...)
 +  * Motorcontrollers
 +  * GPS
 +
 +Launch Files for setting up the position estimation of the robot (odometry, path estimation, etc.):
 +  * start_local_positioning.launch
 +  * start_global_positioning.launch
 +
 +Launch files for starting the basic control layers for following waypoints and avoid obstacles:
 +  * start_deterministic_control.launch
 +  * start_adaptive_control.launch
 +
 +Launch files for the decision layer, what decides what singals finaly goes to the motorcontrollers and some visualisation:
 +  * start_decision_layer.launch
 +  * start_visualisation.launch
 +
 +Under normal circumstances all launchfiles can be started with one command in a terminal:
 +<note>//roslaunch talos start_navigation.launch//</note>
 +
 +a detailed graph of all programmed nodes can be found in the next picture of the overall node graph...
  
 **Node graph:** **Node graph:**
  
 {{ :robots:computer:talos:node_graph.png|}} {{ :robots:computer:talos:node_graph.png|}}
 +
 +**Mission files**
 +
 +The robot navigation follow a 2D kartesian koordinate system. At outdoor navigation task we can use the 
 +UTM Koordinate System to navigate. So the positions can be set by absolute coordinates in UTM. This is 
 +sufficient for deterministic navigation. 
 +But if we want to perform a special task at a certain point, some more information for success is neccessary!
 +This additional information could be:
 +  * how precice do the robot need to reach the "goal point"
 +  * how long should it stay there 
 +  * does it need to wait for other tasks to accomplish (z.B. picking a fruit)
 +  * what to do if goal is unreachable
 +  * are some special control parameters neccessary 
 +  * etc...
 +  *
 +typically these information can be provided by a .txt or .xml file, because of the easy way of programming and 
 +uncomplicated change for different programmes. 
 +
 +Example mission file:
 +
 +<mission> <route>
 +      <point 
 +      utme="0"
 +      utmn="0"
 +      comment="Point1"
 +    />    
 + <point
 +      utme="7.3103272608"
 +      utmn="-8.2351758052"
 +      speed="0.500"
 +      comment="Point2"
 +    />
 +    <point
 +      utme="9.7020082594"
 +      utmn="-6.5281831669"
 +      wait="5"
 +      comment="Point3"
 +    />
 +    <point
 +      utme="2.4196230196"
 +      utmn="1.5525352387"
 +      comment="Point4"
 +    />
 +    <point
 +      utme="4.51991709"
 +      utmn="3.5841530077"
 +      wait_until_task_ready="true"
 +      comment="Point5"
 +    />
 +</route> </mission>
 +
 +
robots/computer/talos/software/program_structure.1421070027.txt.gz · Last modified: 2021/08/14 04:20 (external edit)