mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-02-06 18:23:30 +08:00
The command is sent by a dedicated mavlink command and forwarded to the fixed wing position controller. The pattern is defined by the radius of the major axis, the radius of the minor axis and the orientation. The pattern is then defined by: The upper part of the pattern consist of a clockwise circle with radius defined by the minor axis. The center of the circle is defined by the major axis minus the minor axis away from the pattern center. The lower part of the pattern consist of a counter-clockwise circle with the same definitions as above. In between, the circles are connected with straight lines in a cross configuration. The lines are always tangetial to the circles. The orientation rotates the major axis around the NED down axis. The loitering logic is defined inside its own class used by the fixed wing position control module. It defines which segment (one of the circles or lines) is active and uses the path controller (npfg or l1-control) to determine the desired roll angle. A feedback mavlink message is send with the executed pattern parameters.
9 lines
824 B
Plaintext
9 lines
824 B
Plaintext
uint64 timestamp # time since system start (microseconds)
|
|
float32 major_radius # Major axis radius of the figure eight [m]. Positive values orbit clockwise, negative values orbit counter-clockwise.
|
|
float32 minor_radius # Minor axis radius of the figure eight [m].
|
|
float32 orientation # Orientation of the major axis of the figure eight [rad].
|
|
uint8 frame # The coordinate system of the fields: x, y, z.
|
|
int32 x # X coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7.
|
|
int32 y # Y coordinate of center point. Coordinate system depends on frame field: local = y position in meters * 1e4, global = latitude in degrees * 1e7.
|
|
float32 z # Altitude of center point. Coordinate system depends on frame field.
|