Files
paparazzi/conf/abi.xml
T
2018-02-08 15:06:49 +01:00

157 lines
6.1 KiB
XML

<?xml version="1.0"?>
<!DOCTYPE protocol SYSTEM "abi.dtd">
<protocol>
<msg_class name="airborne">
<message name="BARO_ABS" id="0">
<field name="pressure" type="float" unit="Pa"/>
</message>
<message name="BARO_DIFF" id="1">
<field name="pressure" type="float" unit="Pa"/>
</message>
<message name="AGL" id="2">
<field name="distance" type="float" unit="m"/>
</message>
<message name="TEMPERATURE" id="3">
<field name="temp" type="float" unit="deg Celcius"/>
</message>
<message name="IMU_GYRO_INT32" id="4">
<field name="stamp" type="uint32_t" unit="us"/>
<field name="gyro" type="struct Int32Rates *"/>
</message>
<message name="IMU_ACCEL_INT32" id="5">
<field name="stamp" type="uint32_t" unit="us"/>
<field name="accel" type="struct Int32Vect3 *"/>
</message>
<message name="IMU_MAG_INT32" id="6">
<field name="stamp" type="uint32_t" unit="us"/>
<field name="mag" type="struct Int32Vect3 *"/>
</message>
<message name="IMU_LOWPASSED" id="7">
<field name="stamp" type="uint32_t" unit="us"/>
<field name="gyro" type="struct Int32Rates *"/>
<field name="accel" type="struct Int32Vect3 *"/>
<field name="mag" type="struct Int32Vect3 *"/>
</message>
<message name="BODY_TO_IMU_QUAT" id="8">
<field name="q_b2i_f" type="struct FloatQuat *"/>
</message>
<message name="GEO_MAG" id="9">
<field name="h" type="struct FloatVect3 *" unit="1.0"/>
</message>
<message name="GPS" id="10">
<field name="stamp" type="uint32_t" unit="us"/>
<field name="gps_s" type="struct GpsState *"/>
</message>
<message name="OPTICAL_FLOW" id="11">
<field name="stamp" type="uint32_t" unit="us"/>
<field name="flow_x" type="int16_t">Flow in x direction from the camera (in subpixels)</field>
<field name="flow_y" type="int16_t">Flow in y direction from the camera (in subpixels)</field>
<field name="flow_der_x" type="int16_t">The derotated flow calculation in the x direction (in subpixels)</field>
<field name="flow_der_y" type="int16_t">The derotated flow calculation in the y direction (in subpixels)</field>
<field name="quality" type="float"/>
<field name="size_divergence" type="float">Divergence as determined with the size method (in 1/seconds) with LK, and Divergence (1/seconds) itself with EF</field>
</message>
<message name="VELOCITY_ESTIMATE" id="12">
<field name="stamp" type="uint32_t" unit="us"/>
<field name="x" type="float" unit="m/s"/>
<field name="y" type="float" unit="m/s"/>
<field name="z" type="float" unit="m/s"/>
<field name="noise_x" type="float">Set negative noise to disable parameter axis</field>
<field name="noise_y" type="float"/>
<field name="noise_z" type="float"/>
</message>
<message name="RSSI" id="13">
<field name="ac_id" type="uint8_t"/>
<field name="source_strength" type="int8_t" unit="dB"/>
<field name="rssi" type="int8_t" unit="dB"/>
</message>
<message name="AIRSPEED" id="14">
<field name="eas" type="float" unit="m/s"/>
</message>
<message name="RPM" id="15">
<field name="rpm" type="uint16_t *" unit="rpm"/>
<field name="num_act" type="uint8_t"/>
</message>
<message name="THRUST" id="16">
<field name="thrust_increment" type="float" unit="m/s^2"/>
</message>
<message name="OBSTACLE_DETECTION" id="17">
<field name="distance" type="float" unit="m"/>
<field name="elevation" type="float" unit="rad"/>
<field name="heading" type="float" unit="rad"/>
</message>
<message name="POSITION_ESTIMATE" id="18">
<field name="stamp" type="uint32_t" unit="us"/>
<field name="x" type="float" unit="m"/>
<field name="y" type="float" unit="m"/>
<field name="z" type="float" unit="m"/>
<field name="noise_x" type="float">Set negative noise to disable parameter axis</field>
<field name="noise_y" type="float"/>
<field name="noise_z" type="float"/>
</message>
<message name="UWB_COMMUNICATION" id="19">
<field name="id" type="uint8_t"/>
<field name="range" type="float" unit="m"/>
<field name="vx" type="float" unit="m/s"/>
<field name="vy" type="float" unit="m/s"/>
<field name="h" type="float" unit="m"/>
</message>
<message name="RANGE_FORCEFIELD" id="20">
<field name="vel_body_x_FF" type="float" unit="m/s"/>
<field name="vel_body_y_FF" type="float" unit="m/s"/>
<field name="vel_body_z_FF" type="float" unit="m/s"/>
</message>
<message name="JEVOIS_MSG" id="21">
<!--description>
Standardized serial messages sent by the Jevois smart camera
http://jevois.org/doc/UserSerialStyle.html
</description-->
<field name="type" type="uint8_t">Standardized message type JEVOIS_MSG_[T1|N1|D1|T2|N2|D2|F2|T3|N3|D3|F3]</field>
<field name="id" type="char *">Text string describing the reported object</field>
<field name="nb" type="uint8_t">Number of elements in the coordinates array</field>
<field name="coord" type="int16_t *">List of coordinates corresponding to 1D, 2D or 3D messages</field>
<field name="dim" type="uint16_t *">1, 2 or 3D dimension</field>
<field name="quat" type="struct FloatQuat">Quaternion that relates the object's frame to the camera's frame, if appropriate</field>
<field name="extra" type="char *">Additional text information</field>
</message>
<message name="FOLLOW_TARGET" id="22">
<field name="id" type="uint32_t">Object ID to track</field>
<field name="frame" type="uint8_t">
bitmask to select relative coordinates (0) or global coordinates (1)
bit 0: bearing
bit 1: height
bit 2: distance
</field>
<field name="bearing" type="float" unit="rad">Direction of object to track</field>
<field name="height" type="float" unit="m">Height of object to track</field>
<field name="distance" type="float" unit="m">Distance of object to track</field>
</message>
</msg_class>
</protocol>