https://lettucemeet.com/l/DZdno
CV Requirements (jetson)
ZP-Jetson communication is over UART. ZP initiates the following communication and Jetson responds if required.
Jetson receives:
Position Data (GPS/IMU → SF Struct): Contains location + height and orientation. No need for faster than 10 Hz.
Request for relative movement command (System Manager).
Jetson sends:
Movement command.
Landing initiation command.
Jetson initiates and sends the following:
High-priority live messages (e.g. failure state such as process dying and not being able to be restarted).
Low-bandwidth/small-size - We have limited communication resources!
PM Requirements
Waypoints (SM)
InitiateLanding Bool (Jetson)
AM → PM Struct:
Code Block |
---|
typedef struct CommandsFromAM{ bool armed; } CommandsFromAM; |
...
Code Block |
---|
struct TelemWaypointData {
double longitude; //
double lattiude;
uint8_t waypoint_id;
};
typedef struct CommandsFromTM{
bool start_landing;
uint8_t num_waypoints; // number of waypoints in the list
TelemWaypointData waypoints[num_waypoints];
} CommandsFromTM; |
PM → AM Struct:
Code Block |
---|
typedef struct CommandsForAM_t{
WaypointType waypoint_type; // not necessary
// heading unit vector and magnitude
float dist_x;
float dist_y;
float dist_z;
float magnitude; // Magnitude distance to waypoint target
float heading; // heading at target waypoint
double speed_target; // Target velocity of drone approaching target
} CommandsForAM; |
Jetson → PM Struct:
(or is this AM)
relative to drone (drone-centered)
Directions: Bow/stern, port/starboard, ventral/dorsal.
maximum size of x,y, z: 150 meters positive or negative, accurate to cm
max size of heading: 360 accurate to degree
Code Block |
---|
struct JetsonToZpMovementCommand { float x; float y; float z; float heading; } |
SM Stuff
System Manager Data Structs and Flow
Software ARM/DISARM (GSPC)
PID Values (GSPC)
WayPoints (GSPC)
FlightMode Request (GSPC)
Jetson → PM Struct (Jetson)
AM Requirements
PID Values (SM)
unknown number of controllers
For each controller 6 sets of P I and D values
Send them up one controller at a time
Ground Station Requirements
Motor Outputs (SM)
PID Controllers and Values
Sensors
sensor fusion output [look at sf_pos interface in LOS]
All of them (SM)
GPS
IMU
airspeed
rate of climb
ALTITUDE
airspeed sensor information
Battery Voltages (SM)
Controller Values (SM)
Attitude (Sensor Fusion or SM)