Paparazzi UAS  v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
copilot module

Mission Computer module, interfacing the mission computer (also known as Copilot),

based losely on ISaAC: The Intelligent Safety and Airworthiness Co-Pilot module Based on paper "A Payload Verification and Management Framework for Small UAV-based Personal Remote Sensing Systems" by Cal Coopmans and Chris Coffin. Link: http://ieeexplore.ieee.org/abstract/document/6309316/

More info can be found on http://wiki.paparazziuav.org/wiki/Mission_computer

Copilot is intended mainly for mapping applications.

This module processes messages from Copilot, and either forwards them to the GCS (such as CAMERA_SNAPSHOT or CAMERA_PAYLOAD messages), or responds to them as necessary (such as MOVE_WP).

The module assumes the source of the messages is trusted (i.e. not authentication besides AC_ID check is performed).

Example for airframe file

Add to your firmware section:

<module name="copilot"/>

Module functions

Init Functions

These initialization functions are called once on startup.

Periodic Functions

These functions are called periodically at the specified frequency from the module periodic loop.

  • copilot_periodic()
    • Frequency in Hz: 1.
    • Autorun: TRUE
      Periodic function automatically starts after init.

Datalink Functions

Whenever the specified datalink message is received, the corresponing handler function is called.

  • on message CAMERA_SNAPSHOT_DL call copilot_parse_cam_snapshot_dl(buf)
  • on message CAMERA_PAYLOAD_DL call copilot_parse_cam_payload_dl(buf)
  • on message COPILOT_STATUS_DL call copilot_parse_copilot_status_dl(buf)
  • on message MOVE_WP call copilot_parse_move_wp_dl(buf)
  • on message PAYLOAD_COMMAND call copilot_parse_payload_command_dl(buf)

Files

Header Files

The following headers are automatically included in modules.h

Source Files

Raw copilot.xml file:

<!DOCTYPE module SYSTEM "module.dtd">
<module name="copilot" dir="mission">
<doc>
<description>
Mission Computer module, interfacing the mission computer (also known as Copilot),
based losely on
ISaAC: The Intelligent Safety and Airworthiness Co-Pilot module
Based on paper "A Payload Verification and Management Framework
for Small UAV-based Personal Remote Sensing Systems" by Cal Coopmans
and Chris Coffin. Link: http://ieeexplore.ieee.org/abstract/document/6309316/
More info can be found on http://wiki.paparazziuav.org/wiki/Mission_computer
Copilot is intended mainly for mapping applications.
This module processes messages from Copilot, and either forwards them to the GCS
(such as CAMERA_SNAPSHOT or CAMERA_PAYLOAD messages), or responds to them as necessary
(such as MOVE_WP).
The module assumes the source of the messages is trusted (i.e. not authentication besides
AC_ID check is performed).
</description>
</doc>
<dep>
<depends>extra_dl</depends>
</dep>
<header>
<file name="copilot.h"/>
</header>
<init fun="copilot_init()"/>
<periodic fun="copilot_periodic()" freq="1." autorun="TRUE"/>
<datalink message="CAMERA_SNAPSHOT_DL" fun="copilot_parse_cam_snapshot_dl(buf)"/>
<datalink message="CAMERA_PAYLOAD_DL" fun="copilot_parse_cam_payload_dl(buf)"/>
<datalink message="COPILOT_STATUS_DL" fun="copilot_parse_copilot_status_dl(buf)"/>
<datalink message="MOVE_WP" fun="copilot_parse_move_wp_dl(buf)"/>
<datalink message="PAYLOAD_COMMAND" fun="copilot_parse_payload_command_dl(buf)"/>
<makefile target="ap">
<file name="copilot_common.c"/>
</makefile>
<makefile target="ap" firmware="fixedwing">
<file name="copilot_fixedwing.c"/>
</makefile>
<makefile target="ap" firmware="rotorcraft">
<file name="copilot_rotorcraft.c"/>
</makefile>
</module>