Software Development for Ardupilot Powered Unmanned Systems
Source codes of Software Development for Ardupilot Powered Unmanned Systems course.
Documents and information about this course.
Disclaimer (read this first!)
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
RC override
Request default message streams
Home distance
Set flight speed
Set yaw
Pause/resume an autonomous flight
Reading RC inputs and servo outputs
Terrain checking
Getting and setting the home location of the vehicle
Send message from companion computer to GCS
Logging data to on-board data flash logs
Interprocess communication with MAVLink
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
Reading attitude of the vehicle
Reading location of the vehicle
Getting and setting vehicle flight mode
Take off and land the vehicle
Flying to a location
Location object examples
Multi location mission
Getting and setting vehicle parameters
Create and use a parameter
File read/write operations
Logging system
Read auxiliary channel switch
Multi location mission continued
Reading RC inputs
Set servo and relay
Protected function calls
Get and set home location
Read battery level
Get GPS time (get_time.py )
Get firmware version