Skip to content

Docencia-fmrico/patrolling-nocompila

Repository files navigation

Patrolling Behavior - NocomPila

INDEX


Practice description

The developed application contains the necessary for the Tiago robot to patrol along 5 waypoints in simulation


Installation

To obtain this code package and be able to test it, the following steps must be followed:

First of all, make sure you also have a clone of the ir_robots and book_ros2 packages. If not, check out the links below and follow the steps to get them:

Create a clone of this GitHub repository in the src directory of the workspace you are going to work with

cd ~/<workspace>/src
git clone <url>

Compile the workspace

cd ..
colcon build

In case you have already compiled recently and only need to do it with this new package:

colcon build --packages-select nc_bt_patrolling

Testing the code operation

Before launching the simulator we must make sure to configure the tiago_nav_params.yaml file of the br2_navigation package so the Tiago is correctly configured to be using the home map we've previously made. Also, we need to ensure the world used by the ir_robots package, defined in the params.yaml file. The world must be 'aws_house'

Once this is done, to run the code we will follow the steps defined below, on the start-up section

Start-up

First of all we execute in a terminal the command to launch the Gazebo simulation

ros2 launch ir_robots simulation.launch.py

When Gazebo has opened completely, we launch from another terminal the navigation

ros2 launch br2_navigation tiago_navigation.launch.py

Finally, we launch our package with the following command:

ros2 launch nc_bt_patrolling patrolling.launch.py

Package tests performed

To verify that the code passes the roslint and other tests correctly, if modifications have been made, the following commands should be executed from the workspace

colcon build --packages-select nc_bt_patrolling
colcon test --packages-select nc_bt_patrolling

During the practice we have been making sure that all the code periodically passed the tests, if we execute both commands mentioned above immediately after having made the clone of the repository we will see that all the tests pass successfully


Developed using

All the software used to carry out this project is mentioned below:

  • ROS2 Humble - Middleware for robot programming
  • ir_robots - Used to run the Gazebo simulation
  • book_ros2 - Used to navigate properly with the br2_navigation package

Technical aspects

__

As a curiosity, our package is also parameterized so the waypoints can be easily changed if wanted as well as the names of the different locations through thew file params.yaml Tiago, by means of the implementing code, checks five points that it receives as parameters one by one. First the gym area, then the bed, the pilates area, the area around the sofa and finally the kitchen. Once it has patrolled all of them, it returns to the first one and repeats the sequence The implementation is dome with continuous integration

Here is a schematic image of the behavior tree used for the implementation of the code:

In addition, we also have a video of how our package works:


Contribution

Please read the CONTRIBUTING.md for details of our code of conduct, and the collaboration process


Authors

Practice carried out by URJC students and members of the NocomPila team:

You can also find more information about all our projects in our GitHub

Also you can go to our youtube channel to watch more videos


About license

This project is under license, for more details see the file LICENSE


About

patrolling-nocompila created by GitHub Classroom

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •