Difference between revisions of "Explorer/RaspberryPi/Autopilot"
Jump to navigation
Jump to search
(9 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
The RaspberryPi Zero is connected to the Apogee autopilot board using an UART. | The RaspberryPi Zero is connected to the Apogee autopilot board using an UART.<br /> | ||
The bi-directional telemetry is send to the GCS using the wifi | The bi-directional telemetry is send to the GCS using the wifi | ||
Line 7: | Line 7: | ||
</gallery> | </gallery> | ||
* On the RaspberryPi: | |||
sudo apt-get install socat | sudo apt-get install socat | ||
update GCS_IP | |||
export GCS_IP=192.168.1.234 | |||
socat -u udp-listen:4243,reuseaddr,fork /dev/ttyAMA0,raw,echo=0,b115200 & | socat -u udp-listen:4243,reuseaddr,fork /dev/ttyAMA0,raw,echo=0,b115200 & | ||
socat -u /dev/ttyAMA0,raw,echo=0,b115200 udp-sendto:GCS_IP:4242 & | socat -u /dev/ttyAMA0,raw,echo=0,b115200 udp-sendto:$GCS_IP:4242 & | ||
* On the GCS: | |||
airframe file: | |||
<module name="telemetry" type="transparent"> | <module name="telemetry" type="transparent"> | ||
<configure name="MODEM_PORT" value="UART1"/> | <configure name="MODEM_PORT" value="UART1"/> | ||
<configure name="MODEM_BAUD" value="B115200"/> | <configure name="MODEM_BAUD" value="B115200"/> | ||
</module> | </module> | ||
telemetry file: | |||
<?xml version="1.0"?> | |||
<!DOCTYPE telemetry SYSTEM "../telemetry.dtd"> | |||
<telemetry> | |||
<process name="Main"> | |||
<mode name="default" key_press="d"> | |||
<message name="AUTOPILOT_VERSION" period="11.1"/> | |||
<message name="DL_VALUE" period="1.1"/> | |||
<message name="ROTORCRAFT_STATUS" period="1.2"/> | |||
<message name="ROTORCRAFT_FP" period="0.25"/> | |||
<message name="ALIVE" period="2.1"/> | |||
<message name="INS_REF" period="5.1"/> | |||
<message name="ROTORCRAFT_NAV_STATUS" period="1.6"/> | |||
<message name="WP_MOVED" period="1.3"/> | |||
<message name="GPS_INT" period=".25"/> | |||
<message name="INS" period=".25"/> | |||
<message name="ENERGY" period="2.5"/> | |||
<message name="DATALINK_REPORT" period="5.1"/> | |||
<message name="STATE_FILTER_STATUS" period="3.2"/> | |||
<message name="AIR_DATA" period="1.3"/> | |||
</mode> | |||
</process> | |||
<process name="FlightRecorder"> | |||
<mode name="default"> | |||
<message name="ATTITUDE" period="0.05"/> | |||
<message name="GPS" period="0.5"/> | |||
<message name="PPRZ_MODE" period="0.1"/> | |||
<message name="DESIRED" period="0.1"/> | |||
<message name="COMMANDS" period="0.10"/> | |||
<message name="ACTUATORS" period="0.10"/> | |||
<message name="IMU_GYRO" period="0.01"/> | |||
<message name="IMU_MAG" period="0.01"/> | |||
<message name="IMU_ACCEL" period="0.01"/> | |||
</mode> | |||
</process> | |||
<process name="Extra"> | |||
<mode name="default"> | |||
<message name="AUTOPILOT_VERSION" period="11.1"/> | |||
<message name="DL_VALUE" period="1.1"/> | |||
<message name="ROTORCRAFT_STATUS" period="1.2"/> | |||
<message name="ROTORCRAFT_FP" period="0.25"/> | |||
<message name="ALIVE" period="2.1"/> | |||
<message name="INS_REF" period="5.1"/> | |||
<message name="ROTORCRAFT_NAV_STATUS" period="1.6"/> | |||
<message name="WP_MOVED" period="1.3"/> | |||
<message name="GPS_INT" period=".25"/> | |||
<message name="INS" period=".25"/> | |||
<message name="ENERGY" period="2.5"/> | |||
<message name="DATALINK_REPORT" period="5.1"/> | |||
<message name="STATE_FILTER_STATUS" period="3.2"/> | |||
<message name="AIR_DATA" period="1.3"/> | |||
</mode> | |||
<mode name="empty"> | |||
</mode> | |||
<mode name="mcu"> | |||
<message name="ATTITUDE" period="0.05"/> | |||
<message name="GPS" period="0.5"/> | |||
<message name="PPRZ_MODE" period="0.1"/> | |||
<message name="DESIRED" period="0.1"/> | |||
<message name="COMMANDS" period="0.10"/> | |||
<message name="ACTUATORS" period="0.10"/> | |||
<message name="IMU_GYRO" period="0.01"/> | |||
<message name="IMU_MAG" period="0.01"/> | |||
<message name="IMU_ACCEL" period="0.01"/> | |||
</mode> | |||
</process> | |||
</telemetry> | |||
paparazzi/sw/ground_segment/tmtc/server | paparazzi/sw/ground_segment/tmtc/server | ||
Line 22: | Line 105: | ||
To confirm bidirectional connection, change a setting and check the updated value in the GCS | To confirm bidirectional connection, change a setting and check the updated value in the GCS | ||
[[Explorer/RaspberryPi/Autopilot/Proxy]] |
Latest revision as of 06:08, 31 July 2020
The RaspberryPi Zero is connected to the Apogee autopilot board using an UART.
The bi-directional telemetry is send to the GCS using the wifi
- On the RaspberryPi:
sudo apt-get install socat
update GCS_IP
export GCS_IP=192.168.1.234 socat -u udp-listen:4243,reuseaddr,fork /dev/ttyAMA0,raw,echo=0,b115200 & socat -u /dev/ttyAMA0,raw,echo=0,b115200 udp-sendto:$GCS_IP:4242 &
- On the GCS:
airframe file:
<module name="telemetry" type="transparent"> <configure name="MODEM_PORT" value="UART1"/> <configure name="MODEM_BAUD" value="B115200"/> </module>
telemetry file:
<?xml version="1.0"?> <!DOCTYPE telemetry SYSTEM "../telemetry.dtd"> <telemetry> <process name="Main"> <mode name="default" key_press="d"> <message name="AUTOPILOT_VERSION" period="11.1"/> <message name="DL_VALUE" period="1.1"/> <message name="ROTORCRAFT_STATUS" period="1.2"/> <message name="ROTORCRAFT_FP" period="0.25"/> <message name="ALIVE" period="2.1"/> <message name="INS_REF" period="5.1"/> <message name="ROTORCRAFT_NAV_STATUS" period="1.6"/> <message name="WP_MOVED" period="1.3"/> <message name="GPS_INT" period=".25"/> <message name="INS" period=".25"/> <message name="ENERGY" period="2.5"/> <message name="DATALINK_REPORT" period="5.1"/> <message name="STATE_FILTER_STATUS" period="3.2"/> <message name="AIR_DATA" period="1.3"/> </mode> </process> <process name="FlightRecorder"> <mode name="default"> <message name="ATTITUDE" period="0.05"/> <message name="GPS" period="0.5"/> <message name="PPRZ_MODE" period="0.1"/> <message name="DESIRED" period="0.1"/> <message name="COMMANDS" period="0.10"/> <message name="ACTUATORS" period="0.10"/> <message name="IMU_GYRO" period="0.01"/> <message name="IMU_MAG" period="0.01"/> <message name="IMU_ACCEL" period="0.01"/> </mode> </process> <process name="Extra"> <mode name="default"> <message name="AUTOPILOT_VERSION" period="11.1"/> <message name="DL_VALUE" period="1.1"/> <message name="ROTORCRAFT_STATUS" period="1.2"/> <message name="ROTORCRAFT_FP" period="0.25"/> <message name="ALIVE" period="2.1"/> <message name="INS_REF" period="5.1"/> <message name="ROTORCRAFT_NAV_STATUS" period="1.6"/> <message name="WP_MOVED" period="1.3"/> <message name="GPS_INT" period=".25"/> <message name="INS" period=".25"/> <message name="ENERGY" period="2.5"/> <message name="DATALINK_REPORT" period="5.1"/> <message name="STATE_FILTER_STATUS" period="3.2"/> <message name="AIR_DATA" period="1.3"/> </mode> <mode name="empty"> </mode> <mode name="mcu"> <message name="ATTITUDE" period="0.05"/> <message name="GPS" period="0.5"/> <message name="PPRZ_MODE" period="0.1"/> <message name="DESIRED" period="0.1"/> <message name="COMMANDS" period="0.10"/> <message name="ACTUATORS" period="0.10"/> <message name="IMU_GYRO" period="0.01"/> <message name="IMU_MAG" period="0.01"/> <message name="IMU_ACCEL" period="0.01"/> </mode> </process> </telemetry>
paparazzi/sw/ground_segment/tmtc/server paparazzi/sw/ground_segment/cockpit/gcs paparazzi/sw/ground_segment/tmtc/link -udp
To confirm bidirectional connection, change a setting and check the updated value in the GCS