aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Oes <julian@oes.ch>2013-06-17 21:03:55 +0200
committerJulian Oes <julian@oes.ch>2013-06-17 21:10:38 +0200
commitc874f681080e0e68d62a31e88c80240350f8a595 (patch)
treef6f2180e67857eba17170c88828249ecb6a234d0
parente8dbc1fadaf6340d8c9f414ba0402eefd9af2420 (diff)
downloadpx4-firmware-c874f681080e0e68d62a31e88c80240350f8a595.tar.gz
px4-firmware-c874f681080e0e68d62a31e88c80240350f8a595.tar.bz2
px4-firmware-c874f681080e0e68d62a31e88c80240350f8a595.zip
Checkpoint: Quad is flying after PID lib changes
Conflicts: src/modules/multirotor_att_control/multirotor_attitude_control.c
-rw-r--r--src/modules/multirotor_att_control/multirotor_attitude_control.c2
-rw-r--r--src/modules/multirotor_att_control/multirotor_rate_control.c10
2 files changed, 5 insertions, 7 deletions
diff --git a/src/modules/multirotor_att_control/multirotor_attitude_control.c b/src/modules/multirotor_att_control/multirotor_attitude_control.c
index 51faaa8c0..0dad10316 100644
--- a/src/modules/multirotor_att_control/multirotor_attitude_control.c
+++ b/src/modules/multirotor_att_control/multirotor_attitude_control.c
@@ -187,7 +187,7 @@ void multirotor_control_attitude(const struct vehicle_attitude_setpoint_s *att_s
/* control roll (left/right) output */
rates_sp->roll = pid_calculate(&roll_controller, att_sp->roll_body ,
att->roll, att->rollspeed, deltaT, NULL, NULL, NULL);
-
+
// printf("rates_sp: %4.4f, att setpoint: %4.4f\n, pitch: %4.4f, pitchspeed: %4.4f, dT: %4.4f", rates_sp->pitch, att_sp->pitch_body, att->pitch, att->pitchspeed, deltaT);
if (control_yaw_position) {
diff --git a/src/modules/multirotor_att_control/multirotor_rate_control.c b/src/modules/multirotor_att_control/multirotor_rate_control.c
index 01bf383e2..9135a9351 100644
--- a/src/modules/multirotor_att_control/multirotor_rate_control.c
+++ b/src/modules/multirotor_att_control/multirotor_rate_control.c
@@ -189,10 +189,8 @@ void multirotor_control_rates(const struct vehicle_rates_setpoint_s *rate_sp,
parameters_update(&h, &p);
initialized = true;
- pid_init(&pitch_rate_controller, p.attrate_p, p.attrate_i, p.attrate_d, 1000.0f,
- 1000.0f, 0.2f, PID_MODE_DERIVATIV_CALC);
- pid_init(&roll_rate_controller, p.attrate_p, p.attrate_i, p.attrate_d, 1000.0f,
- 1000.0f, 0.2f, PID_MODE_DERIVATIV_CALC);
+ pid_init(&pitch_rate_controller, p.attrate_p, p.attrate_i, p.attrate_d, 1.0f, 1.0f, 0.2f, PID_MODE_DERIVATIV_CALC);
+ pid_init(&roll_rate_controller, p.attrate_p, p.attrate_i, p.attrate_d, 1.0f, 1.0f, 0.2f, PID_MODE_DERIVATIV_CALC);
control_debug_pub = orb_advertise(ORB_ID(vehicle_control_debug), &control_debug);
}
@@ -201,8 +199,8 @@ void multirotor_control_rates(const struct vehicle_rates_setpoint_s *rate_sp,
if (motor_skip_counter % 2500 == 0) {
/* update parameters from storage */
parameters_update(&h, &p);
- pid_set_parameters(&pitch_rate_controller, p.attrate_p, p.attrate_i, p.attrate_d, 1000.0f, 1000.0f, 0.2f);
- pid_set_parameters(&roll_rate_controller, p.attrate_p, p.attrate_i, p.attrate_d, 1000.0f, 1000.0f, 0.2f);
+ pid_set_parameters(&pitch_rate_controller, p.attrate_p, p.attrate_i, p.attrate_d, 1.0f, 1.0f, 0.2f);
+ pid_set_parameters(&roll_rate_controller, p.attrate_p, p.attrate_i, p.attrate_d, 1.0f, 1.0f, 0.2f);
}
/* control pitch (forward) output */