-
Notifications
You must be signed in to change notification settings - Fork 8
Cyphal PX4 VTOL Quadplane
1.1. Software dependency
It is expected that you have the latest version of autopilot-tools python package. You can install it with the following command:
pip install autopilot-tools
1.2. Use the latest version of the repository
It is expected that you clone the latest version of the repository and updated the submodules.
git clone https://github.com/ZilantRobotics/innopolis_vtol_dynamics.git --recursive
If you are not sure that your version is the latest, don't forget to:
git pull
git submodule update --init --recursive
1.3. Build the image
Build the docker image:
./scripts/docker.sh b
1.4. Connect everything together
It is expected that all your hardware are connected together.
An example of a connection of CUAV v5+ autopilot and RL-sniffer is shown in the picture below.
It is expected to use CAN1 on the autopilot side.
./scripts/docker.sh csv --force
It is expected that QGC will not be running at the time of the configuration. During the configuration the autopilot is restarted several times, and QGC will not allow the script to connect to the autopilot.
The --force
option runs the scripts/configure.sh
script that is responsible for autopilot configuration. It uploads the latest suitable PX4-Autopilot firmware, makes reset to default and loads parameters described in the following config files located in this repository:
- configs/px4/v1.14/standard_vtol/airframe.yaml
- configs/px4/v1.14/standard_vtol/cyphal.yaml
- configs/px4/cyphal.yaml
- configs/px4/common.yaml
The autopilot will have the Motors Geometry as shown on the picture below:
The csv
command runs the launch file that brings up all required ROS-nodes and tells to load ROS parameters from the following files located in dynamics repository:
- config/vehicle_params/vtol_7kg/params.yaml
- config/vehicle_params/aerodynamics_coeffs.yaml
- config/vehicle_params/sim_params.yaml
An example of how the script works (speed x4):
Control the vehicle with QGC.