====== Software ======= == General: == * Operating System Ubuntu 14.04 www.ubuntu.com * Robot Software (ROS) http://ros.org * parts of the software are based on [[robotsoftware:frobomind:welcome|FroboMind]] **Visualisation tool (Example):** {{:robots:computer:talos:rviz_visio_5.png|}} **General Programming structure** * Using laserscanner for obstacle avoidance * IMU set orientation angle * Absolute position gets evaluated by the signals of IMU, RTK-GPS and wheel encoders * 3 Layer architecture * Deterministic path planning * Security layer * Obstacle avoidance **Launch files:** as typical in the ROS environment, the whole system parameters can be defined by launch files. At the current status of the TALOS robot every Sensor-System got its own launch file. A launch file defines the running programms (nodes) and the neccessary starting parameters for the device/programm or algorithm. Description of ROS launch files can be found here: [[http://wiki.ros.org/roslaunch/XML|link]] Example for a minimum setup: - Start programm for accessing the motorcontrollers - Start programm to recceive some signals of a joystick - Start programm to send the joystick signals to the motorcontroller In our system system these parts get started by two different launch files: * Motorcontrollers (actor) * Joystick (as command node) In each of this launch files start several programes (nodes) and set the parameters for them: in this example, the joystickdriver gets started (pkg="joy") and the port gets defined. The second node (pkg="talos") is responsible for providing the joystickvalues at defined variables, so that other programmes can use the values later. For autonomous mode there are a lot of more different nodes neccessary. The rough programming structure gets explained here: [[robots:computer:talos:Software:Program structure|Program structure]]