Fast drone with Gazebo simulator - cvar-upm/aerostack GitHub Wiki
This project uses a motion controller that provides high speed. The motion controller is based on Model Prediction Control (MPC). In this project, two different missions are included:
- Basic mission: A basic mission (formulated in a Python file) that executes simple movements.
- Teleoperation: An execution where the user teleoperates the drone using the keyboard.
1. Basic mission
To execute this mission, perform the following steps:
-
Change directory to this project:
$ cd $AEROSTACK_STACK/projects/fast_drone_gazebo -
Execute the script that launches Gazebo:
$ ./launcher_gazebo.sh -
Wait until the following window is presented:
-
Open a new terminal and change directory to the project:
$ cd $AEROSTACK_STACK/projects/fast_drone_gazebo -
Execute the script that launches the Aerostack components for this project:
$ ./main_launcher_mission.sh -
Execute the following command to run the mission (this command executes the mission defined in
configs/mission/mission.py):$ rosservice call /drone111/python_based_mission_interpreter_process/start
The following video illustrates how to launch the project:
The following video shows the mission execution:
2. Teleoperation
Perform the following steps:
-
Change directory to this project:
$ cd $AEROSTACK_STACK/projects/fast_drone_gazebo -
Execute the script that launches Gazebo:
$ ./launcher_gazebo.sh -
Wait until the Gazebo window is presented.
-
Open a new terminal and change directory to the project:
$ cd $AEROSTACK_STACK/projects/fast_drone_gazebo -
Execute the script that launches the Aerostack components for this project:
$ ./main_launcher_teleoperation.sh -
Click on the window corresponding to the keyboard teleoperation interface and teleoperate the drone using the appropriate keys.
This interface is shown below.
Files/KeyboardTeleoperationMPC.png
-
To stop the processes execute the following script:
$ ./stop.sh -
To close the inactive terminals:
$ killall bash

