Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision |
ros [2018/08/03 09:59] – old revision restored (2018/05/22 10:33) damien | ros [2019/09/27 11:17] – [Overview] apeeters |
---|
===== ROS Configuration ===== | ===== ROS Configuration ===== |
| |
Once you have install ROS, you need [[http://wiki.ros.org/ROS/Tutorials/InstallingandConfiguringROSEnvironment|to create a caktin work space and to build it]]. After that you should setup you terminal to access all ROS features, so add this few lines to your bashrc. | Once you have install ROS, you need [[http://wiki.ros.org/ROS/Tutorials/InstallingandConfiguringROSEnvironment|to create a caktin work space and to build it]]. After that you should setup you terminal to access all ROS features, so add these few lines to your bashrc. |
<code bash> | <code bash> |
# ROS Config | # ROS Config |
| |
==== Overview ==== | ==== Overview ==== |
According to its creator, ROS_Control allows you to lower the ROS entry barrier to the driver level. It allow you to focus only on drivers and high level application. ROS_Control is make up by two elements, **controllers** and **a robot hardware abstraction**. They are link by **hardware interface**. There is a picture. | According to its creator, ROS_Control allows you to lower the ROS entry barrier to the driver level. It allow you to focus only on drivers and high level application. ROS_Control is made up by two elements, **controllers** and **a robot hardware abstraction**. They are linked by **hardware interface**. There is a picture. |
| |
{{roscontrol.png}} | {{roscontrol.png}} |
| |
This image is from the follow presentation. | This image is from the following presentation. |
| |
* [[http://roscon.ros.org/2014/wp-content/uploads/2014/07/ros_control_an_overview.pdf|Slides ros_control_an_overview]] | * [[http://roscon.ros.org/2014/wp-content/uploads/2014/07/ros_control_an_overview.pdf|Slides ros_control_an_overview]] |
</code> | </code> |
| |
There are several things to care in this file. First in the MYROBOT Constructor, you can notice the **"MYJOINT"**, it's there that we point out witch joint is connect to witch hardware interfaces. Furthermore, always in the MYROBOT Constructor, you have **jnt_state_interface** and **jnt_vel_interface**. The first one is there to give to controllers the states of MYJOINT. The Second one is there to get back the velocity command send by the controller. One should note that the joint name and the hardware interface type should be the same as describe in your transmission element in MYROBOT.xacro. [[https://github.com/ros-controls/ros_control/wiki|For more informations]]. | There are several things to care in this file. First in the MYROBOT Constructor, you can notice the **"MYJOINT"**, it's there that we point out witch joint is connected to witch hardware interfaces. Furthermore, always in the MYROBOT Constructor, you have **jnt_state_interface** and **jnt_vel_interface**. The first one is there to give to controllers the states of MYJOINT. The Second one is there to get back the velocity command send by the controller. One should note that the joint name and the hardware interface type should be the same as describe in your transmission element in MYROBOT.xacro. [[https://github.com/ros-controls/ros_control/wiki|For more informations]]. |
| |
==== Choose a controller ==== | ==== Choose a controller ==== |