FW stabalized mode properly initialize att_sp

This commit is contained in:
Daniel Agar
2016-04-22 17:47:22 -04:00
committed by Lorenz Meier
parent f3ec95c3b2
commit 41c1e56075
2 changed files with 13 additions and 3 deletions

View File

@@ -1063,13 +1063,17 @@ FixedwingAttitudeControl::task_main()
* emit the manual setpoint here to allow attitude controller tuning
* in attitude control mode.
*/
struct vehicle_attitude_setpoint_s att_sp;
struct vehicle_attitude_setpoint_s att_sp = {};
att_sp.timestamp = hrt_absolute_time();
att_sp.roll_body = roll_sp;
att_sp.pitch_body = pitch_sp;
att_sp.yaw_body = 0.0f - _parameters.trim_yaw;
att_sp.thrust = throttle_sp;
att_sp.roll_reset_integral = false;
att_sp.pitch_reset_integral = false;
att_sp.yaw_reset_integral = false;
/* lazily publish the setpoint only once available */
if (_attitude_sp_pub != nullptr) {
/* publish the attitude setpoint */

View File

@@ -2203,11 +2203,17 @@ Sensors::task_main()
/* If the secondary failed as well, go to the tertiary, also only if available. */
if (hrt_elapsed_time(&raw.gyro_timestamp[1]) > 20 * 1000 && _gyro_sub[2] >= 0) {
fds[0].fd = _gyro_sub[2];
warnx("failing over to third gyro");
if (!_hil_enabled) {
warnx("failing over to third gyro");
}
} else if (_gyro_sub[1] >= 0) {
fds[0].fd = _gyro_sub[1];
warnx("failing over to second gyro");
if (!_hil_enabled) {
warnx("failing over to second gyro");
}
}
}