Components for ROS2 Sample Project
Documentation is available under doc folder:
- ros2: documentation of components written for ROS2 (humble version)
- usecase: some sequence diagrams to depict the relation of components
- doxygen: components documented using doxygen (https://www.doxygen.nl/).
The doxygen documentation can be compiled in /doc/doxygen folder, using
doxygen doc/Doxyfile
It can be viewed using /doc/doxygen/html/index.html
# in ubuntu, before you should enable multiverse repository
# Build deps
apt install python3-colcon-common-extensions python3-vcstool python3-rosdep ros-humble-irobot-create-msgs
# Cyclone DDS
apt install ros-humble-cyclonedds ros-humble-rmw-cyclonedds-cpp
Add in your .profile or .bashrc:
export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
# ATTENTION: change path according with your OS.
# Substitute $BASE_PATH with the base path of your repository
export CYCLONEDDS_URI=$BASE_PATH/config/cyclone-dds-interface-select-laptop.xml
Follow instructions on fcpp repository
You should now run install script to build all components:
# Remember: you have to insert the password of your sudoers user only the first time you used the script.
./PoC/installer.sh
The script will list the components that need to be compiled to run, enter the folders and follow compilation instructions.
To launch a simulation execute from the root of the repository:
You can use enable or disable automatic dock after reaching goal.
$DOCK
can be 0 (disable), 1 (enable).
./PoC/rumbo_library_run.sh dock_enabled:=$DOCK
To compile and execute the AP engine , you should:
- follow instructions on /PoC/AP_Engine/README.MD
- or run on a new terminal window (but with logs deleted after each round):
cd PoC/AP_Engine
./ap_run.sh
You can also pass as first argument (true
or false
) to clean build directory, as below:
cd PoC/AP_Engine
./ap_run.sh true
To create a new goal with X=$POS_X
, Y=$POS_Y
, YAW=$ORIENT
(all coordinates are float values), you can run:
cd Storage
./create_goal.sh "$POS_X;$POS_Y;$ORIENT"
example:
./create_goal.sh "1.0;2.0;3.14"
To abort a current goal with ID=$GOAL_CODE
, you can run:
cd Storage
./create_abort.sh $GOAL_CODE
example:
./create_abort.sh GOAL-123456789