aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorThomas Gubler <thomasgubler@gmail.com>2013-11-03 22:04:32 +0100
committerThomas Gubler <thomasgubler@gmail.com>2013-11-03 22:04:32 +0100
commit89b8acd7a8dd82a7adbd38fb7fea4b422dea64e6 (patch)
tree7afacaa1ba2035a182c124e62cfd9ad2e310331a /src/lib
parent4db049144ff66cdabf9c8cba08cb8200e6a614b5 (diff)
downloadpx4-firmware-89b8acd7a8dd82a7adbd38fb7fea4b422dea64e6.tar.gz
px4-firmware-89b8acd7a8dd82a7adbd38fb7fea4b422dea64e6.tar.bz2
px4-firmware-89b8acd7a8dd82a7adbd38fb7fea4b422dea64e6.zip
fix initialization of attitude controllers
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/ecl/attitude_fw/ecl_pitch_controller.cpp11
-rw-r--r--src/lib/ecl/attitude_fw/ecl_roll_controller.cpp6
-rw-r--r--src/lib/ecl/attitude_fw/ecl_yaw_controller.cpp11
-rw-r--r--src/lib/ecl/attitude_fw/ecl_yaw_controller.h2
4 files changed, 22 insertions, 8 deletions
diff --git a/src/lib/ecl/attitude_fw/ecl_pitch_controller.cpp b/src/lib/ecl/attitude_fw/ecl_pitch_controller.cpp
index 4e27de45c..ccaed14ce 100644
--- a/src/lib/ecl/attitude_fw/ecl_pitch_controller.cpp
+++ b/src/lib/ecl/attitude_fw/ecl_pitch_controller.cpp
@@ -49,10 +49,19 @@
ECL_PitchController::ECL_PitchController() :
_last_run(0),
+ _tc(0.1f),
+ _k_p(0.0f),
+ _k_i(0.0f),
+ _k_d(0.0f),
+ _integrator_max(0.0f),
+ _max_rate_pos(0.0f),
+ _max_rate_neg(0.0f),
+ _roll_ff(0.0f),
_last_output(0.0f),
_integrator(0.0f),
_rate_error(0.0f),
- _rate_setpoint(0.0f)
+ _rate_setpoint(0.0f),
+ _bodyrate_setpoint(0.0f)
{
}
diff --git a/src/lib/ecl/attitude_fw/ecl_roll_controller.cpp b/src/lib/ecl/attitude_fw/ecl_roll_controller.cpp
index 0772f88bc..4b0bfc6c4 100644
--- a/src/lib/ecl/attitude_fw/ecl_roll_controller.cpp
+++ b/src/lib/ecl/attitude_fw/ecl_roll_controller.cpp
@@ -50,13 +50,17 @@
ECL_RollController::ECL_RollController() :
_last_run(0),
_tc(0.1f),
+ _k_p(0.0f),
+ _k_i(0.0f),
+ _k_d(0.0f),
+ _integrator_max(0.0f),
+ _max_rate(0.0f),
_last_output(0.0f),
_integrator(0.0f),
_rate_error(0.0f),
_rate_setpoint(0.0f),
_bodyrate_setpoint(0.0f)
{
-
}
float ECL_RollController::control_attitude(float roll_setpoint, float roll)
diff --git a/src/lib/ecl/attitude_fw/ecl_yaw_controller.cpp b/src/lib/ecl/attitude_fw/ecl_yaw_controller.cpp
index 0de0eb439..013bc191a 100644
--- a/src/lib/ecl/attitude_fw/ecl_yaw_controller.cpp
+++ b/src/lib/ecl/attitude_fw/ecl_yaw_controller.cpp
@@ -48,16 +48,19 @@
ECL_YawController::ECL_YawController() :
_last_run(0),
- _tc(0.1f),
+ _k_p(0.0f),
+ _k_i(0.0f),
+ _k_d(0.0f),
+ _integrator_max(0.0f),
+ _max_rate(0.0f),
+ _roll_ff(0.0f),
_last_output(0.0f),
_integrator(0.0f),
_rate_error(0.0f),
_rate_setpoint(0.0f),
_bodyrate_setpoint(0.0f),
- _coordinated(1.0f)
-
+ _coordinated(0.0f)
{
-
}
float ECL_YawController::control_attitude(float roll, float pitch,
diff --git a/src/lib/ecl/attitude_fw/ecl_yaw_controller.h b/src/lib/ecl/attitude_fw/ecl_yaw_controller.h
index 5c00fa873..154471caf 100644
--- a/src/lib/ecl/attitude_fw/ecl_yaw_controller.h
+++ b/src/lib/ecl/attitude_fw/ecl_yaw_controller.h
@@ -104,8 +104,6 @@ public:
private:
uint64_t _last_run;
-
- float _tc;
float _k_p;
float _k_i;
float _k_d;