Difference between revisions of "Module/collective tracking control"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
== Introduction == | == Introduction == | ||
Revision as of 03:05, 29 October 2019
Introduction
This module/algorithm allows a team of aircraft (they can fly at different speeds) to track a (possibly moving) target. In particular, the centroid of the team converges to the target as it is shown in the following screenshots
Custom messages
The module needs all-to-all communication (including the target). The following messages need to be included in your messages.xml.
These messages go in the telemetry section of messages.xml. The CTC_CONTROL message is just for telemetry porpuses.
<message name="CTC" id="37">
<field name="table" type="int16[]"/>
</message>
<message name="CTC_INFO_FROM_TARGET" id="40">
<field name="px" type="float"/>
<field name="py" type="float"/>
<field name="vx" type="float"/>
<field name="vy" type="float"/>
</message>
<message name="CTC_CONTROL" id="211">
<field name="v_centroid_x" type="float" unit="m"/>
<field name="v_centroid_y" type="float" unit="m"/>
<field name="target_vx" type="float" unit="m/s"/>
<field name="target_vy" type="float" unit="m/s"/>
<field name="target_px" type="float" unit="m"/>
<field name="target_py" type="float" unit="m"/>
<field name="ref_px" type="float" unit="m"/>
<field name="ref_py" type="float" unit="m"/>
</message>
<message name="CTC_INFO_TO_NEI" id="255">
<field name="vx" type="float"/>
<field name="vy" type="float"/>
<field name="px" type="float"/>
<field name="py" type="float"/>
</message>
These messages go in the datalink section of messages.xml. They are necessary to init the algorithm from the ground control station.
<message name="CTC_REG_TABLE" id="160" link="forwarded">
<field name="ac_id" type="uint8"/>
<field name="nei_id" type="uint8"/>
</message>
<message name="CTC_CLEAN_TABLE" id="161" link="forwarded">
<field name="ac_id" type="uint8"/>
</message>
Python Simulation
One can run a Python simulation in ./paparazzi/sw/ground_segment/python/collective_tracking_control/ctc_simulation.py