RoPod/Tutorials/Simulation: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
No edit summary
No edit summary
 
(3 intermediate revisions by 2 users not shown)
Line 10: Line 10:
In order to do this at once, e.g. after making a small change in the software, you can use the alias "buildit" as well instead of these commands. Do you want to remove the old software and re-build because there are some problems? Just run the "clean_build" command. More handy commands can be found in the [[ RoPod/Tutorials/Commands cheat sheet | cheat sheet]].
In order to do this at once, e.g. after making a small change in the software, you can use the alias "buildit" as well instead of these commands. Do you want to remove the old software and re-build because there are some problems? Just run the "clean_build" command. More handy commands can be found in the [[ RoPod/Tutorials/Commands cheat sheet | cheat sheet]].


Basically, you are good to go now! How? Well, lets first simulate the sensor data. There is a very handy command for that (again :)), namely pstart. So open a terminal and
Basically, you are good to go now! How? Well, lets first simulate the sensor data. There is a very handy command for that (again :)), namely r2start. So open a terminal and
<pre>
<pre>
rstart
r2start
</pre>
</pre>


From another terminal you can check which topics are active (using rostopic list). What happened here? Well, we started the "start.launch"-file in the ropod_tue_1_bringup folder (you can roscd to it). Here, all the parameters of the sensors can be found, both for the real robot and the simulation environment. Remember, this is robot-specific, so that is why the p is there before the start command. If you run this from your own pc, the Gazebo simulator environment will start up, as well as rviz. This last program visualizes the relevant data. At the moment however, it will probably not visualize any data. Why? Because the robot has no knowledge about its environment! We can achieve this by launching the localization-package, as well as the navigation package. Both depend on the worldmodel, the [https://github.com/tue-robotics/ed Environment Descriptor (ED)], so we launch all at once. We can find the configurations in the applications-folder. The command to get this up-and-running for the first demonstrations are as follows:
From another terminal you can check which topics are active (using rostopic list). What happened here? Well, we started the "start.launch"-file in the ropod_tue_2_bringup folder (you can roscd to it). Here, all the parameters of the sensors can be found, both for the real robot and the simulation environment. Remember, this is robot-specific, so that is why the r2 is there before the start command. If you run this from your own pc, the Gazebo simulator environment will start up, as well as rviz. This last program visualizes the relevant data. At the moment however, it will probably not visualize any data. Why? Because the robot has no knowledge about its environment! We can achieve this by launching the localization-package, as well as the navigation package. The command to get this up-and-running for the first demonstrations are as follows:
<pre>
<pre>
roslaunch ....launch (fix)
roslaunch maneuver_navigation maneuver_navigation.launch
</pre>
</pre>


Now, you will see the environment showing up and the costmaps of the navigation package. If you want more information about this, e.g. how to set up this description and how the world-model is used for localization and navigation purposes? Check out the [https://github.com/tue-robotics/ed_tutorials ED-tutorials]. In order to navigate around with the robot, you can give it a navigation goal with the "2D Nav Goal"-command. On the real-robot, you probably have to give an initial location as well. You can do this with the "2d Pose Estimate"-button.
Run this command in a new terminal, while the r2start command is still running in the old terminal. Now, you will see the environment showing up and the costmaps of the navigation package. In order to navigate around with the robot, you can give it a navigation goal with the "2D Nav Goal"-command. On the real-robot, you probably have to give an initial location as well. You can do this with the "2d Pose Estimate"-button.


</div>
</div>

Latest revision as of 10:51, 30 January 2020

The software can be build by navigating to the catkin_workspace of the project executing the catkin_make command:

cd ~/ropod-project-software/catkin_workspace
catkin_make

In order to do this at once, e.g. after making a small change in the software, you can use the alias "buildit" as well instead of these commands. Do you want to remove the old software and re-build because there are some problems? Just run the "clean_build" command. More handy commands can be found in the cheat sheet.

Basically, you are good to go now! How? Well, lets first simulate the sensor data. There is a very handy command for that (again :)), namely r2start. So open a terminal and

r2start

From another terminal you can check which topics are active (using rostopic list). What happened here? Well, we started the "start.launch"-file in the ropod_tue_2_bringup folder (you can roscd to it). Here, all the parameters of the sensors can be found, both for the real robot and the simulation environment. Remember, this is robot-specific, so that is why the r2 is there before the start command. If you run this from your own pc, the Gazebo simulator environment will start up, as well as rviz. This last program visualizes the relevant data. At the moment however, it will probably not visualize any data. Why? Because the robot has no knowledge about its environment! We can achieve this by launching the localization-package, as well as the navigation package. The command to get this up-and-running for the first demonstrations are as follows:

roslaunch maneuver_navigation maneuver_navigation.launch

Run this command in a new terminal, while the r2start command is still running in the old terminal. Now, you will see the environment showing up and the costmaps of the navigation package. In order to navigate around with the robot, you can give it a navigation goal with the "2D Nav Goal"-command. On the real-robot, you probably have to give an initial location as well. You can do this with the "2d Pose Estimate"-button.