26 lines
601 B
C
26 lines
601 B
C
#ifndef ATTITUDE_H
|
|
#define ATTITUDE_H
|
|
|
|
#include "quaternion.h"
|
|
#include "vector.h"
|
|
#include "pid.h"
|
|
#include "radio_receiver.h"
|
|
#include "imu_processing.h"
|
|
#include "IRS.h"
|
|
|
|
typedef struct
|
|
{
|
|
Vector3 gyro;
|
|
} attitude_t;
|
|
|
|
void attitude_init(attitude_t* att);
|
|
|
|
void attitude_controller_update(control_channels_t* control,
|
|
const rc_channels* rx,
|
|
const Quaternion* current_q,
|
|
const Vector3* gyro);
|
|
|
|
Quaternion rx_to_quaternion(const rc_channels* rx);
|
|
float constrain(float x, float min, float max);
|
|
|
|
#endif |