- Tested with Ubuntu 20.04.
- Uses ros2 galactic
- Install ros2 galactic, see galactic_installation_documentation
- Clone this repository, inclusive recursive submodules
$ git clone git@github.com:AlboAlby00/CrazyflieControllers.git
$ git submodule update --init --recursive
- Install the dependencies listed in apt_dependencies
- Install pip requirements
- launch the pid attitude controller:
ros2 launch crazyflie_controllers attitude_pid_controller.launch.py
- launch the pid position controller:
ros2 launch crazyflie_controllers position_pid_controller.launch.py
(it launches both attitude and position controller) - launch just drone with still-standing proppellers:
ros2 launch crazyflie_ros2_driver crazyflie_ros2_driver.launch.py
ros2 launch crazyflie_detectors sim_target_publisher.launch.py
- build and install the original Orbslam3 and its dependency: https://github.com/UZ-SLAMLab/ORB_SLAM3
- clone the ROS2 Orbslam3 wrapper on your ros2 workspace and follow the instructions on the Readme https://github.com/AlboAlby00/ORB_SLAM3_ROS2
Build via
$ colcon build
This will create an install
folder. Make sure to source the install:
$ source ./install/setup.bash
Launch via
ros2 launch <crazyflie_<package_name>> <launch_script_name>
To start plotjuggler, run
ros2 run plotjuggler plotjuggler
For explanations on how to use plotjuggler, see plotjuggler.io
To start rqt, run
rqt
With rqt, values to topics can be published.