Software Development for Ardupilot Powered Unmanned Systems
Source codes of Software Development for Ardupilot Powered Unmanned Systems course.
Setting up the build and simulation environment
This section includes how to install the build environment and simulation software from Ardupilot source code and running the simulation with different vehicles for software development.
Introduction
Quickstart
Setting up the build environment
Setting up the simulation software
Starting the simulation software individually
Creating simulation environment starter shell script
MAVProxy command line ground control station
This section includes use cases of MAVProxy command line ground control station and shell scripting.
Introduction
Installing instructions
Quickstart
Startup options
Telemetry forwarding
Creating MAVProxy shell scripts for automated proxy and forwarding services
Arming and disarming the vehicle
Mission editing
Geofencing
Rally point operations
Changing the flight mode of the vehicle
"command_int" Command
System commands
Log management
Graphing live data from the vehicle
Horizon module
Link management
"long" command
Map module
"position" command
Polygon fence
Set servo
Set relay
Sensor reporting
Text-to-speech module
Time sync
Terrain data handling
Software development with Python using Dronekit library
This section includes how to control and monitor the vehicle states in Python programming language using Dronekit library
Introduction
Installing instructions
Connecting to the vehicle
Getting the vehicle states
Setting the vehicle states
Creating vehicle state observers
Getting and setting vehicle parameters
Taking off and landing the vehicle
Flying the vehicle to a location
Dealing with the autonomous missions
Calibrating the vehicle
Software development with Python using PyMAVLink library
This section includes how to control and monitor the vehicle states in Python programming language using PyMAVLink library.
MAVLink messaging protocol basics
Introduction
Installing instructions
Connecting to the vehicle
Receiving messages from vehicle
Sending messages to vehicle
Sending message stream requests to vehicle
Getting and setting vehicle parameters
Sending message requests to vehicle
Arming and disarming the vehicle
Changing the flight mode of the vehicle
Taking off and landing the vehicle
Flying the vehicle to a location
Change current mission in auto flight mode
Set servo
Set relay
Request and receive auto mode flight plan from vehicle
Create and send auto mode flight plan to vehicle
Sending partial mission item list to vehicle
Clear mission item list on vehicle
Request and receive fence from vehicle
Create and send fence to vehicle
Enable and disable fence
Request and receive rally points from vehicle
Create and send rally points to vehicle
Enable, disable, clear rally
Reading servo output channel values
Changing and reading current mission item
Reading terrain data from vehicle
Reading the autopilot version message
Reading wind estimating messages from vehicle
Dealing with the high latency messages
Getting the vibration data from vehicle
Getting and setting the home location of the vehicle
Playing tunes from buzzer
Reading distance sensor messages
Sending and receiving status texts
On-board software development with LUA programing language
This section includes how to control and monitor the vehicle states of the vehicle by on-board using LUA programing language.
Introduction
Sample script
Arming and disarming the vehicle
Vector data type
Getting attitude and position data of the vehicle
Location data type
Getting battery data of the vehicle
Getting GPS data of the vehicle
Send text message to ground control station
Controlling serial LEDs
Playing tunes from buzzer
Getting and setting vehicle flight mode
Getting flying information from vehicle
Taking off and landing the vehicle
Flying the vehicle to a location
Getting terrain data from vehicle
Relay operations
Servo channel operations
Getting RC input PWM values
Serial communications
Getting barometer data
Getting and setting vehicle parameters
Getting button state
Documents and information about this course.
Disclaimer