mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2025-02-27 16:54:15 +01:00
Re-enabled yaw stabilization after SystemSettings changed. There might be a lingering issue when the
yaw angle crosses the zero-360 mark, beware. You can disable yaw stabilization by setting all PID gains to zero for yaw. git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1828 ebee16cc-31ac-478f-84a7-5cbb03baadba
This commit is contained in:
parent
8161d25774
commit
d2c1014e29
@ -108,6 +108,7 @@ static void stabilizationTask(void* parameters)
|
||||
pitchErrorLast = 0.0;
|
||||
rollErrorLast = 0.0;
|
||||
yawErrorLast = 0.0;
|
||||
yawPrevious = 0.0;
|
||||
|
||||
// Main task loop
|
||||
lastSysTime = xTaskGetTickCount();
|
||||
@ -149,7 +150,12 @@ static void stabilizationTask(void* parameters)
|
||||
rollErrorLast = rollError;
|
||||
|
||||
// Yaw stabilization control loop (only enabled on VTOL airframes)
|
||||
if (( systemSettings.AirframeType == SYSTEMSETTINGS_AIRFRAMETYPE_VTOL )||( systemSettings.AirframeType == SYSTEMSETTINGS_AIRFRAMETYPE_HELICP))
|
||||
if (( systemSettings.AirframeType == SYSTEMSETTINGS_AIRFRAMETYPE_VTOL )||
|
||||
( systemSettings.AirframeType == SYSTEMSETTINGS_AIRFRAMETYPE_QUADX)||
|
||||
( systemSettings.AirframeType == SYSTEMSETTINGS_AIRFRAMETYPE_QUADP)||
|
||||
( systemSettings.AirframeType == SYSTEMSETTINGS_AIRFRAMETYPE_HEXA) ||
|
||||
( systemSettings.AirframeType == SYSTEMSETTINGS_AIRFRAMETYPE_OCTO) ||
|
||||
( systemSettings.AirframeType == SYSTEMSETTINGS_AIRFRAMETYPE_HELICP))
|
||||
{
|
||||
if(stabSettings.YawMode == STABILIZATIONSETTINGS_YAWMODE_RATE) { // rate stabilization on yaw
|
||||
yawChange = (attitudeActual.Yaw - yawPrevious) / dT;
|
||||
|
Loading…
x
Reference in New Issue
Block a user