PX4 Firmware
PX4 Autopilot Software http://px4.io
ECL_WheelController Class Reference

#include <ecl_wheel_controller.h>

Inheritance diagram for ECL_WheelController:
Collaboration diagram for ECL_WheelController:

Public Member Functions

 ECL_WheelController ()=default
 
 ~ECL_WheelController ()=default
 
float control_attitude (const struct ECL_ControlData &ctl_data) override
 
float control_bodyrate (const struct ECL_ControlData &ctl_data) override
 
float control_euler_rate (const struct ECL_ControlData &ctl_data) override
 
- Public Member Functions inherited from ECL_Controller
 ECL_Controller ()
 
virtual ~ECL_Controller ()=default
 
void set_time_constant (float time_constant)
 
void set_k_p (float k_p)
 
void set_k_i (float k_i)
 
void set_k_ff (float k_ff)
 
void set_integrator_max (float max)
 
void set_max_rate (float max_rate)
 
void set_bodyrate_setpoint (float rate)
 
float get_rate_error ()
 
float get_desired_rate ()
 
float get_desired_bodyrate ()
 
float get_integrator ()
 
void reset_integrator ()
 

Additional Inherited Members

- Protected Member Functions inherited from ECL_Controller
float constrain_airspeed (float airspeed, float minspeed, float maxspeed)
 
- Protected Attributes inherited from ECL_Controller
uint64_t _last_run
 
float _tc
 
float _k_p
 
float _k_i
 
float _k_ff
 
float _integrator_max
 
float _max_rate
 
float _last_output
 
float _integrator
 
float _rate_error
 
float _rate_setpoint
 
float _bodyrate_setpoint
 

Detailed Description

Definition at line 54 of file ecl_wheel_controller.h.

Constructor & Destructor Documentation

◆ ECL_WheelController()

ECL_WheelController::ECL_WheelController ( )
default

◆ ~ECL_WheelController()

ECL_WheelController::~ECL_WheelController ( )
default

Member Function Documentation

◆ control_attitude()

float ECL_WheelController::control_attitude ( const struct ECL_ControlData ctl_data)
overridevirtual

Implements ECL_Controller.

Definition at line 104 of file ecl_wheel_controller.cpp.

References ECL_Controller::_max_rate, ECL_Controller::_rate_setpoint, ECL_Controller::_tc, f(), ISFINITE, matrix::wrap_pi(), ECL_ControlData::yaw, and ECL_ControlData::yaw_setpoint.

Referenced by FixedwingAttitudeControl::Run().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ control_bodyrate()

float ECL_WheelController::control_bodyrate ( const struct ECL_ControlData ctl_data)
overridevirtual

Implements ECL_Controller.

Definition at line 49 of file ecl_wheel_controller.cpp.

References ECL_Controller::_integrator, ECL_Controller::_integrator_max, ECL_Controller::_k_ff, ECL_Controller::_k_i, ECL_Controller::_k_p, ECL_Controller::_last_output, ECL_Controller::_last_run, ECL_Controller::_rate_error, ECL_Controller::_rate_setpoint, ECL_ControlData::body_z_rate, math::constrain(), dt, ecl_absolute_time, ecl_elapsed_time, f(), ECL_ControlData::groundspeed, ECL_ControlData::groundspeed_scaler, ISFINITE, ECL_ControlData::lock_integrator, math::max(), and math::min().

Referenced by FixedwingAttitudeControl::Run().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ control_euler_rate()

float ECL_WheelController::control_euler_rate ( const struct ECL_ControlData ctl_data)
inlineoverridevirtual

Implements ECL_Controller.

Definition at line 65 of file ecl_wheel_controller.h.


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