The project's goal is to connect the Webots simulator to the ROS2-BDI framework. The proposed scenario consists of a robot in a world containing obstacles and objects to pick up and place somewhere else.
- To begin with, follow the guide from the ROS2-BDI framework to make sure every necessary component is installed properly.
- Clone the repository and launch the command
colcon buildto build the packages. - Source with
source ~/.bashrcif your.bashrcalready contains this project's path,source ~/litter/install/local_setup.bashto do it manually.
Three different scenario are available, six if we differentiate between online and offline planner. For each scenario two launchers have to be executed (from different terminals), one for ROS2-BDI and the other for Webots.
- Offline and basic sim:
ros2 launch bdi_spazza offline_launcher.launch.pyandros2 launch spazza launcher.launch.py. - Online and basic sim:
ros2 launch online_bdi_spazza online_launcher.launch.pyandros2 launch spazza launcher.launch.py - Offline and timer:
ros2 launch bdi_spazza offline_launcher_time.launch.pyandros2 launch spawn_spazza launcher_time.launch.py - Online and timer:
ros2 launch online_bdi_spazza online_launcher_time.launch.pyandros2 launch spawn_spazza launcher_time.launch.py - Offline and unlimited space:
ros2 launch bdi_spazza offline_launcher_time.launch.pyandros2 launch moving_spazza launcher.launch.py - Online and unlimited space:
ros2 launch moving_bdi_spazza online_launcher_time_bag.launch.pyandros2 launch moving_spazza launcher.launch.py