Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
rosflight_firmware::Controller Class Reference

#include <controller.h>

Inheritance diagram for rosflight_firmware::Controller:
Inheritance graph
[legend]

Classes

struct  Output
 
class  PID
 

Public Member Functions

void calculate_equilbrium_torque_from_rc ()
 
 Controller (ROSflight &rf)
 
void init ()
 
const Outputoutput () const
 
void param_change_callback (uint16_t param_id) override
 
void run ()
 

Private Member Functions

turbomath::Vector run_pid_loops (uint32_t dt, const Estimator::State &state, const control_t &command, bool update_integrators)
 

Private Attributes

Output output_
 
PID pitch_
 
PID pitch_rate_
 
uint64_t prev_time_us_
 
ROSflightRF_
 
PID roll_
 
PID roll_rate_
 
PID yaw_rate_
 

Detailed Description

Definition at line 49 of file controller.h.

Constructor & Destructor Documentation

rosflight_firmware::Controller::Controller ( ROSflight rf)

Definition at line 44 of file controller.cpp.

Member Function Documentation

void rosflight_firmware::Controller::calculate_equilbrium_torque_from_rc ( )

Definition at line 102 of file controller.cpp.

void rosflight_firmware::Controller::init ( )

Definition at line 46 of file controller.cpp.

const Output& rosflight_firmware::Controller::output ( ) const
inline

Definition at line 62 of file controller.h.

void rosflight_firmware::Controller::param_change_callback ( uint16_t  param_id)
overridevirtual

Implements rosflight_firmware::ParamListenerInterface.

Definition at line 147 of file controller.cpp.

void rosflight_firmware::Controller::run ( )
Todo:
better way to figure out if throttle is high

Definition at line 69 of file controller.cpp.

turbomath::Vector rosflight_firmware::Controller::run_pid_loops ( uint32_t  dt,
const Estimator::State state,
const control_t command,
bool  update_integrators 
)
private

Definition at line 176 of file controller.cpp.

Member Data Documentation

Output rosflight_firmware::Controller::output_
private

Definition at line 100 of file controller.h.

PID rosflight_firmware::Controller::pitch_
private

Definition at line 104 of file controller.h.

PID rosflight_firmware::Controller::pitch_rate_
private

Definition at line 105 of file controller.h.

uint64_t rosflight_firmware::Controller::prev_time_us_
private

Definition at line 108 of file controller.h.

ROSflight& rosflight_firmware::Controller::RF_
private

Definition at line 93 of file controller.h.

PID rosflight_firmware::Controller::roll_
private

Definition at line 102 of file controller.h.

PID rosflight_firmware::Controller::roll_rate_
private

Definition at line 103 of file controller.h.

PID rosflight_firmware::Controller::yaw_rate_
private

Definition at line 106 of file controller.h.


The documentation for this class was generated from the following files:


rosflight_firmware
Author(s): Daniel Koch , James Jackson
autogenerated on Thu Apr 15 2021 05:07:58