
Set up and run Linux simulation software for copter, plane, rover, submarine, and antenna tracker by navigating to each vehicle's directory, loading parameters, building, and starting the simulation.
Arm and disarm the vehicle via my proxy, adjust the disarm_delay parameter, and verify the armed state in the console and map modules.
Explore geofencing controls in drone autopilot. Learn how to enable fences, set max and min altitudes, define radii and fence types, and observe breach behavior returning the drone home.
Explore using the command_int command to send position updates via a proxy, detailing frame types, lat/lon scaling, and guided takeoff to 10 meters.
Explore link management in the drone programming proxy, connect to a vehicle via the master connection address, and manage links, statistics, and telemetry streams.
Learn to control and monitor vehicle state in Python with the Drunket library, including installation, connection, state reading, parameter access, and autonomous missions such as takeoff, waypoint flights, and calibration.
Create vehicle observers with drum kit listeners to monitor mode and parameter changes, triggering callbacks; add and remove attribute, parameter, and message listeners to track heartbeat and vehicle state.
This lecture demonstrates how to take off and land a drone using guided mode, including connecting to the vehicle, calibrating parameters, arming, takeoff to about 20 meters, and landing.
Learn to control and monitor vehicle states with Python using the Pymol Link Library, covering installation, connecting to the vehicle, streaming messages, arming, and flight control.
Install the pie modeling Python module on a Linux computer using pip via terminal, then periodically update to use the latest version in your Python scripts.
Learn how to request all onboard vehicle parameters and fetch a specific parameter using prom request list and parameter read messages. Then set parameters with a parameter set message.
Learn to arm and disarm a simulated drone via pi link, monitor arm status with heartbeat and command acknowledgment, and verify onboard control sensors health before arming.
Learn to update targeted mission waypoints using a partial mission list message, sending start index 3 and index 4, handling mission requests and acknowledgments with a map proxy.
learn to upload a fence item list to a vehicle using python with map proxy, by disabling, clearing, setting fence total to list length, sending fence points, and re-enabling.
Learn to request and fetch rally point items from a vehicle using param requests and rally fetch, and guide a drone to the nearest rally point when RTL is active.
Learn to request default message streams from a vehicle using the pi map link, connecting to simulated or real autopilot hardware and configuring data streams and rates.
Set the yaw to a target heading in guided or auto mode using map cmd condition, adjusting target angle, angular speed, turn direction, and absolute or relative target angle.
Capture RC channels and server output raw messages from a simulated vehicle using pi mail link. Override channel values to trigger tasks and observe motor outputs.
Verify terrain data for a location using pilot terrain generator, download and copy terrain data to the terrain directory, then use terrain check messages and reports to confirm loaded grids.
Explore sending Mavlink status text messages from a companion computer to the ground control station via a master device over UDP, encoded as UTF-8, demonstrated in a simulated vehicle.
Create and run on-board scripts on the flight controller to boost autonomy without a companion computer. Place scripts on the sd card and relay text to the gcs.
Learn to create a simple Lua loop by defining a function, scheduling self-call every 0.5 seconds, and sending loop counter updates as a named float to the ground control station.
Learn to read the vehicle's attitude with a Lua script, converting roll, pitch, and yaw from radians to degrees and sending them to the ground control station in real time.
Explore location objects in Lua, including copy, origin and terrain ELT, altitude frames, and bearing with distances. Create new locations via offset bearing and offset to enable autonomous drone missions.
Master Lua scripting to create parameter tables, add vehicle parameters, and get or set values with defaults, ending with a scripting engine restart.
Learn how to read and write location data to a CSV file with Lua scripting, including append mode, parsing lines, and converting strings to numbers for latitude, longitude, and altitude.
Learn to log flight data with ArduPilot’s onboard binary logs using Lua scripting. Define a log name, labels, format, and data fields to capture latitude, longitude, and altitude.
Learn to get the vehicle firmware version with Lua using the version class, retrieving major, minor, patch, and version string, plus vehicle type and hash checks.
Disclaimer
Unmanned systems of any size have the potential to endanger the safety and violate national laws.
All kinds of security and safety measures should be taken while developing unmanned systems.
All lectures in this course are for informational purposes only.
It is the user's sole responsibility to use the information described in the course in real-life unmanned systems and take safety and security measures.
The lessons in the course are for educational purposes only and the instructor of the course cannot be held responsible for the information and its usage in real-world applications.
By taking and continuing this course, it is committed that the course instructor will not be held responsible in any undesired situation and the person who took the course will be held responsible for all the negativities and undesired circumstances that may arise.
Fully autonomous unmanned systems are important technological and engineering wonders of today's world. All autonomous unmanned systems need an autopilot that controls the behaviors and working mechanism of the unmanned platform and controls the platform by semi-autonomous or fully autonomous.
The ArduPilot project provides an advanced, full-featured, and reliable open source autopilot software system. The Ardupilot software system is capable of controlling almost any vehicle system imaginable: conventional and VTOL airplanes, gliders, multi-rotors, helicopters, sailboats, powered boats, submarines, ground vehicles, and even balance robots. The supported vehicle types frequently expand as use cases emerge for new and novel platforms.
This course covers some of the most important aspects of software development for controlling and monitoring Ardupilot autopilot software system-powered unmanned autonomous systems.
In this course, you are going to learn the following:
Ability to setup and run Ardupilot autopilot simulation environment.
Developing Python programming language scripts that communicate with Ardupilot software system using Dronekit library.
Understanding MAVLink messages and creating custom scripts using Python programming language and PyMAVLink library.
Learn how to use the MAVProxy Command Line Ground Control Station and what it does.
Autopilot onboard software development using LUA programming language.
Custom embedded software development with Ardupilot autopilot software system.
In this course, there are also supplementary sample projects, assignments, and resources to gain hands-on experience to work with the Ardupilot autopilot software system.