Go to the source code of this file.
Defines | |
#define | HLI_COMM_ACK 0x01 |
defines that a packet has to be acknowledged when received | |
#define | HLI_COMMUNICATION_TIMEOUT 3 |
#define | HLI_DEFAULT_BAUDRATE 57600 |
#define | HLI_DEFAULT_PERIOD_EKF_STATE 0 |
#define | HLI_DEFAULT_PERIOD_GPS 200 |
#define | HLI_DEFAULT_PERIOD_IMU 20 |
#define | HLI_DEFAULT_PERIOD_RCDATA 100 |
#define | HLI_DEFAULT_PERIOD_SSDK_DEBUG 200 |
#define | HLI_EKF_STATE_CURRENT_STATE 1 |
#define | HLI_EKF_STATE_INITIALIZATION 2 |
#define | HLI_EKF_STATE_SIZE 16 |
#define | HLI_EKF_STATE_STATE_CORRECTION 3 |
#define | HLI_FLIGHTMODE_ACC 0x01 |
#define | HLI_FLIGHTMODE_GPS 0x07 |
#define | HLI_FLIGHTMODE_HEIGHT 0x03 |
#define | HLI_GPS_BIT 0x20 |
#define | HLI_HEIGHT_BIT 0x10 |
#define | HLI_MODE_POSCTRL_HL 0x40 |
use position controller on the HL based on state estimation on the HL or external state estimation | |
#define | HLI_MODE_POSCTRL_LL 0x20 |
position control in performed on the LL controller. This just works if GPS is available | |
#define | HLI_MODE_POSCTRL_OFF 0x10 |
position control switched off | |
#define | HLI_MODE_STATE_ESTIMATION_EXT 0x08 |
state estimation is performed externally, e.g. on the host computer | |
#define | HLI_MODE_STATE_ESTIMATION_HL_EKF 0x04 |
state estimation is performed on the HL based on the state prediction of an EKF | |
#define | HLI_MODE_STATE_ESTIMATION_HL_SSDK 0x02 |
state estimation is performed on the HL in the SSDK based on positions that are sent to it | |
#define | HLI_MODE_STATE_ESTIMATION_OFF 0x01 |
switches state estimation on the HL off | |
#define | HLI_NUMBER_RC_CHANNELS 8 |
#define | HLI_PACKET_ID_ACK 0x11 |
Acknowledge packet. | |
#define | HLI_PACKET_ID_BAUDRATE 0x0a |
set baudrate | |
#define | HLI_PACKET_ID_CONFIG 0x12 |
Acknowledge packet. | |
#define | HLI_PACKET_ID_CONTROL_ENABLE 0x0d |
packet to enable single axis for control | |
#define | HLI_PACKET_ID_CONTROL_HL 0x07 |
commands for control by the HL | |
#define | HLI_PACKET_ID_CONTROL_LL 0x06 |
this is for commands that get forwarded to the LL processor i.e. acceleration/attitude and gps velocities | |
#define | HLI_PACKET_ID_EKF_STATE 0x0e |
packet to exchange the state of the position/attitude ekf | |
#define | HLI_PACKET_ID_GPS 0x03 |
gps | |
#define | HLI_PACKET_ID_IMU 0x01 |
imu packet | |
#define | HLI_PACKET_ID_MAG 0x13 |
Magnetic compass data packet. | |
#define | HLI_PACKET_ID_MOTORS 0x09 |
motor on/off commands | |
#define | HLI_PACKET_ID_POSITION_UPDATE 0x08 |
(absolute) position update from external reference | |
#define | HLI_PACKET_ID_RC 0x04 |
rc data | |
#define | HLI_PACKET_ID_SSDK_DEBUG 0x05 |
debug data from datafusion/position controller | |
#define | HLI_PACKET_ID_SSDK_PARAMETERS 0x0b |
set params for matlab onboard controller | |
#define | HLI_PACKET_ID_SSDK_STATUS 0x10 |
SSDK status packet. | |
#define | HLI_PACKET_ID_STATUS 0x02 |
status packet | |
#define | HLI_PACKET_ID_SUBSCRIPTION 0x0f |
packet to define the periods the packets are sent with | |
#define | HLI_PACKET_ID_TIMESYNC 0x0c |
timesync packet indentifier | |
#define | HLI_PITCH_BIT 0x01 |
#define | HLI_ROLL_BIT 0x02 |
#define | HLI_SERIALINTERFACE_ACTIVE_BIT 0x40 |
#define | HLI_SERIALINTERFACE_ENABLED_BIT 0x20 |
#define | HLI_THRUST_BIT 0x08 |
#define | HLI_YAW_BIT 0x04 |
Typedefs | |
typedef struct EXT_POSITION_CMD | HLI_CMD_HL |
from included file provided by asctec, defines position/velocity commands | |
typedef struct EXT_POSITION | HLI_EXT_POSITION |
from included file provided by asctec, defines position updates from an external reference | |
Functions | |
struct | __attribute__ ((packed)) |
imu packet | |
Variables | |
HLI_ACK | |
HLI_BAUDRATE | |
HLI_CMD_LL | |
HLI_CONFIG | |
HLI_EKF_STATE | |
HLI_GPS | |
HLI_IMU | |
HLI_MAG | |
HLI_MOTORS | |
HLI_RCDATA | |
HLI_SSDK_STATUS | |
HLI_STATUS | |
HLI_SUBSCRIPTION | |
HLI_TIMESYNC |
#define HLI_COMM_ACK 0x01 |
defines that a packet has to be acknowledged when received
Definition at line 95 of file HL_interface.h.
#define HLI_COMMUNICATION_TIMEOUT 3 |
Definition at line 77 of file HL_interface.h.
#define HLI_DEFAULT_BAUDRATE 57600 |
Definition at line 78 of file HL_interface.h.
#define HLI_DEFAULT_PERIOD_EKF_STATE 0 |
Definition at line 83 of file HL_interface.h.
#define HLI_DEFAULT_PERIOD_GPS 200 |
Definition at line 80 of file HL_interface.h.
#define HLI_DEFAULT_PERIOD_IMU 20 |
Definition at line 79 of file HL_interface.h.
#define HLI_DEFAULT_PERIOD_RCDATA 100 |
Definition at line 82 of file HL_interface.h.
#define HLI_DEFAULT_PERIOD_SSDK_DEBUG 200 |
Definition at line 81 of file HL_interface.h.
#define HLI_EKF_STATE_CURRENT_STATE 1 |
Definition at line 295 of file HL_interface.h.
#define HLI_EKF_STATE_INITIALIZATION 2 |
Definition at line 296 of file HL_interface.h.
#define HLI_EKF_STATE_SIZE 16 |
Definition at line 294 of file HL_interface.h.
#define HLI_EKF_STATE_STATE_CORRECTION 3 |
Definition at line 297 of file HL_interface.h.
#define HLI_FLIGHTMODE_ACC 0x01 |
Definition at line 64 of file HL_interface.h.
#define HLI_FLIGHTMODE_GPS 0x07 |
Definition at line 66 of file HL_interface.h.
#define HLI_FLIGHTMODE_HEIGHT 0x03 |
Definition at line 65 of file HL_interface.h.
#define HLI_GPS_BIT 0x20 |
Definition at line 74 of file HL_interface.h.
#define HLI_HEIGHT_BIT 0x10 |
Definition at line 73 of file HL_interface.h.
#define HLI_MODE_POSCTRL_HL 0x40 |
use position controller on the HL based on state estimation on the HL or external state estimation
Definition at line 92 of file HL_interface.h.
#define HLI_MODE_POSCTRL_LL 0x20 |
position control in performed on the LL controller. This just works if GPS is available
Definition at line 91 of file HL_interface.h.
#define HLI_MODE_POSCTRL_OFF 0x10 |
position control switched off
Definition at line 90 of file HL_interface.h.
#define HLI_MODE_STATE_ESTIMATION_EXT 0x08 |
state estimation is performed externally, e.g. on the host computer
Definition at line 89 of file HL_interface.h.
#define HLI_MODE_STATE_ESTIMATION_HL_EKF 0x04 |
state estimation is performed on the HL based on the state prediction of an EKF
Definition at line 88 of file HL_interface.h.
#define HLI_MODE_STATE_ESTIMATION_HL_SSDK 0x02 |
state estimation is performed on the HL in the SSDK based on positions that are sent to it
Definition at line 87 of file HL_interface.h.
#define HLI_MODE_STATE_ESTIMATION_OFF 0x01 |
switches state estimation on the HL off
Definition at line 86 of file HL_interface.h.
#define HLI_NUMBER_RC_CHANNELS 8 |
Definition at line 221 of file HL_interface.h.
#define HLI_PACKET_ID_ACK 0x11 |
Acknowledge packet.
Definition at line 58 of file HL_interface.h.
#define HLI_PACKET_ID_BAUDRATE 0x0a |
set baudrate
Definition at line 51 of file HL_interface.h.
#define HLI_PACKET_ID_CONFIG 0x12 |
Acknowledge packet.
Definition at line 59 of file HL_interface.h.
#define HLI_PACKET_ID_CONTROL_ENABLE 0x0d |
packet to enable single axis for control
Definition at line 54 of file HL_interface.h.
#define HLI_PACKET_ID_CONTROL_HL 0x07 |
commands for control by the HL
Definition at line 48 of file HL_interface.h.
#define HLI_PACKET_ID_CONTROL_LL 0x06 |
this is for commands that get forwarded to the LL processor i.e. acceleration/attitude and gps velocities
Definition at line 47 of file HL_interface.h.
#define HLI_PACKET_ID_EKF_STATE 0x0e |
packet to exchange the state of the position/attitude ekf
Definition at line 55 of file HL_interface.h.
#define HLI_PACKET_ID_GPS 0x03 |
gps
Definition at line 44 of file HL_interface.h.
#define HLI_PACKET_ID_IMU 0x01 |
imu packet
Definition at line 42 of file HL_interface.h.
#define HLI_PACKET_ID_MAG 0x13 |
Magnetic compass data packet.
Definition at line 60 of file HL_interface.h.
#define HLI_PACKET_ID_MOTORS 0x09 |
motor on/off commands
Definition at line 50 of file HL_interface.h.
#define HLI_PACKET_ID_POSITION_UPDATE 0x08 |
(absolute) position update from external reference
Definition at line 49 of file HL_interface.h.
#define HLI_PACKET_ID_RC 0x04 |
rc data
Definition at line 45 of file HL_interface.h.
#define HLI_PACKET_ID_SSDK_DEBUG 0x05 |
debug data from datafusion/position controller
Definition at line 46 of file HL_interface.h.
#define HLI_PACKET_ID_SSDK_PARAMETERS 0x0b |
set params for matlab onboard controller
Definition at line 52 of file HL_interface.h.
#define HLI_PACKET_ID_SSDK_STATUS 0x10 |
SSDK status packet.
Definition at line 57 of file HL_interface.h.
#define HLI_PACKET_ID_STATUS 0x02 |
status packet
Definition at line 43 of file HL_interface.h.
#define HLI_PACKET_ID_SUBSCRIPTION 0x0f |
packet to define the periods the packets are sent with
Definition at line 56 of file HL_interface.h.
#define HLI_PACKET_ID_TIMESYNC 0x0c |
timesync packet indentifier
Definition at line 53 of file HL_interface.h.
#define HLI_PITCH_BIT 0x01 |
Definition at line 69 of file HL_interface.h.
#define HLI_ROLL_BIT 0x02 |
Definition at line 70 of file HL_interface.h.
#define HLI_SERIALINTERFACE_ACTIVE_BIT 0x40 |
Definition at line 68 of file HL_interface.h.
#define HLI_SERIALINTERFACE_ENABLED_BIT 0x20 |
Definition at line 67 of file HL_interface.h.
#define HLI_THRUST_BIT 0x08 |
Definition at line 72 of file HL_interface.h.
#define HLI_YAW_BIT 0x04 |
Definition at line 71 of file HL_interface.h.
typedef struct EXT_POSITION_CMD HLI_CMD_HL |
from included file provided by asctec, defines position/velocity commands
Definition at line 274 of file HL_interface.h.
typedef struct EXT_POSITION HLI_EXT_POSITION |
from included file provided by asctec, defines position updates from an external reference
Definition at line 271 of file HL_interface.h.
struct __attribute__ | ( | (packed) | ) | [read] |
imu packet
packet with magnetic compass readings
acknowledge packet with message type that has been acknowledged
packet for SSDK status
configuration packet for HL processor
define at which frequencies data should be sent
packet for time synchronization between HL processor and PC
struct for LL control commands
contains rc data that was transmitted to the helicopter
status of the helicopter
gps packet
Client | | Server | | tc1 |--------| ts1 | | tc2 |--------| ts2 | |
ts1=ts2; tc2 is measured on the arrival of the packet
timestamp in us; synchronized to host pc
accelerations [mg]
angular velocities; bias-free in units of 0.015deg/s
angles [deg*100]
yaw from 0...360 [deg*100]
height from pressure sensor [mm]
differentiated height [mm/s]
motor speeds
GPS data fused with all other sensors
timestamp in us; synchronized to host pc
latitude/longitude in deg * 10^7
height [mm]
pressure height [mm]
speed in x (E/W) and y(N/S) in mm/s
heading from 0...360 [deg*100]
accuracy estimates [mm] / [mm/s]
GPS status information;
Bit7...Bit3: 0 Bit 2: longitude direction Bit1: latitude direction Bit 0: GPS lock
number of satellite vehicles used in NAV solution
timestamp in us; synchronized to host pc
battery voltage [mv]
Flight time [s]
cpu load in % of the time of one sdk loop
Motor Status:
-1: motors off 0: stop motors 1: start motors 2: motors on
total received packets
total received good packets
indicates if parameters for onboard filters/controller are available
timestamp in us; synchronized to host pc
channel[0]: Pitch channel[1]: Roll channel[2]: Thrust channel[3]: Yaw channel[4]: Serial interface enable/disable channel[5]: manual / height control / GPS + height control
range of each channel: 0..4095
pitch angle / velocity x
roll angle / velocity y
yaw angular velocity
thrust(=acceleration z) / climbrate
0: stop motors, 1: start motors
accelerations [mg]
angular velocities; bias-free in units of 0.015deg/s
state in SI units
< imu packet, 20 ms
< rc channels, 50 ms
< debug channels from the ssdk, 200 ms
< gps data, 200 ms
< pose ekf state, 0 --> set to zero if you don't want to have it
< magnetic compass packet
Definition at line 99 of file HL_interface.h.
Definition at line 354 of file HL_interface.h.
Definition at line 268 of file HL_interface.h.
Definition at line 254 of file HL_interface.h.
Definition at line 340 of file HL_interface.h.
Definition at line 318 of file HL_interface.h.
Definition at line 174 of file HL_interface.h.
Definition at line 130 of file HL_interface.h.
Definition at line 365 of file HL_interface.h.
Definition at line 261 of file HL_interface.h.
Definition at line 240 of file HL_interface.h.
Definition at line 347 of file HL_interface.h.
Definition at line 219 of file HL_interface.h.
Definition at line 330 of file HL_interface.h.
Definition at line 292 of file HL_interface.h.