Video available at https://www.youtube.com/watch?v=GrKxC1hDQOI
git clone https://github.com/PX4/PX4-Autopilot.git --recursive
cd ~/PX4-Autopilot
git submodule update
cd ~
bash ./PX4-Autopilot/Tools/setup/ubuntu.sh
cd ~/PX4-Autopilot
make px4_sitl gazebo-classic
If you haven't already created a catkin workspace, create one following these instructions:
cd ~/
mkdir catkin_ws/src
cd catkin_ws
catkin init
Follow the guide at https://docs.px4.io/main/en/ros/mavros_installation.html
cd catkin_ws/src
git clone https://github.com/pal-robotics/gazebo_ros_link_attacher.git
cd ..
catkin build
cd ~/catkin_ws/src
git clone https://github.com/ANCL/double_sls_controller.git --recursive
cd ..
catkin build
sudo cp ~/catkin_ws/src/double_sls_controller/scripts/attach_sls.py ~/catkin_ws/src/gazebo_ros_link_attacher/scripts/attach_sls.py
sudo apt install xmlstarlet
sudo vim ~/.bashrc
add following contents:
# For PX4v1.14
source /opt/ros/noetic/setup.bash
source ~/catkin_ws/devel/setup.bash
source ~/PX4-Autopilot/Tools/simulation/gazebo-classic/setup_gazebo.bash ~/PX4-Autopilot ~/PX4-Autopilot/build/px4_sitl_default
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4-Autopilot
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4-Autopilot/Tools/simulation/gazebo-classic/sitl_gazebo-classic
export GAZEBO_PLUGIN_PATH=$GAZEBO_PLUGIN_PATH:/usr/lib/x86_64-linux-gnu/gazebo-11/plugins
export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:~/catkin_ws/src/double_sls_controller/models
# in a new terminal
roslaunch double_sls_controller double_px4vision_sls_world.launch
# in a new terminal
rosrun gazebo_ros_link_attacher attach_sls.py
# in a new terminal
cd
./QGroundControl.AppImage
# in a new terminal
roslaunch double_sls_controller double_sls_node.launch
# in a new terminal
rosrun rqt_reconfigure rqt_reconfigure
- Move sliders to change gains and references
- Check tick-box "dea_preintegrate_enabled" to let controller states converge
- Check tick-box "dea_enabled" to enable DEA
- Check tick-box "mission_enabled" to start set-point and trajectory tracking mission