mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-05-30 11:37:06 +08:00
Fix for new stabilization (#3274)
This commit is contained in:
committed by
GitHub
parent
48048bdba2
commit
8a9e1411de
@@ -64,7 +64,7 @@
|
|||||||
<block name="Holding point">
|
<block name="Holding point">
|
||||||
<call_once fun="rotwing_request_configuration(ROTWING_CONFIGURATION_HOVER)"/>
|
<call_once fun="rotwing_request_configuration(ROTWING_CONFIGURATION_HOVER)"/>
|
||||||
<call_once fun="NavKillThrottle()"/>
|
<call_once fun="NavKillThrottle()"/>
|
||||||
<set var="stabilization_cmd[COMMAND_THRUST_X]" value="0"/>
|
<set var="stabilization.cmd[COMMAND_THRUST_X]" value="0"/>
|
||||||
<attitude pitch="0" roll="0" throttle="0" until="FALSE" vmode="throttle"/>
|
<attitude pitch="0" roll="0" throttle="0" until="FALSE" vmode="throttle"/>
|
||||||
</block>
|
</block>
|
||||||
<block name="Start Engine" strip_button="Start Engines" strip_icon="on.png">
|
<block name="Start Engine" strip_button="Start Engines" strip_icon="on.png">
|
||||||
|
|||||||
@@ -64,7 +64,7 @@
|
|||||||
<block name="Holding point">
|
<block name="Holding point">
|
||||||
<call_once fun="rotwing_request_configuration(ROTWING_CONFIGURATION_HOVER)"/>
|
<call_once fun="rotwing_request_configuration(ROTWING_CONFIGURATION_HOVER)"/>
|
||||||
<call_once fun="NavKillThrottle()"/>
|
<call_once fun="NavKillThrottle()"/>
|
||||||
<set var="stabilization_cmd[COMMAND_THRUST_X]" value="0"/>
|
<set var="stabilization.cmd[COMMAND_THRUST_X]" value="0"/>
|
||||||
<attitude pitch="0" roll="0" throttle="0" until="FALSE" vmode="throttle"/>
|
<attitude pitch="0" roll="0" throttle="0" until="FALSE" vmode="throttle"/>
|
||||||
</block>
|
</block>
|
||||||
<block name="Start Engine" strip_button="Start Engines" strip_icon="on.png">
|
<block name="Start Engine" strip_button="Start Engines" strip_icon="on.png">
|
||||||
|
|||||||
@@ -64,7 +64,7 @@
|
|||||||
<block name="Holding point">
|
<block name="Holding point">
|
||||||
<call_once fun="rotwing_request_configuration(ROTWING_CONFIGURATION_HOVER)"/>
|
<call_once fun="rotwing_request_configuration(ROTWING_CONFIGURATION_HOVER)"/>
|
||||||
<call_once fun="NavKillThrottle()"/>
|
<call_once fun="NavKillThrottle()"/>
|
||||||
<set var="stabilization_cmd[COMMAND_THRUST_X]" value="0"/>
|
<set var="stabilization.cmd[COMMAND_THRUST_X]" value="0"/>
|
||||||
<attitude pitch="0" roll="0" throttle="0" until="FALSE" vmode="throttle"/>
|
<attitude pitch="0" roll="0" throttle="0" until="FALSE" vmode="throttle"/>
|
||||||
</block>
|
</block>
|
||||||
<block name="Start Engine" strip_button="Start Engines" strip_icon="on.png">
|
<block name="Start Engine" strip_button="Start Engines" strip_icon="on.png">
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
<block name="Holding point">
|
<block name="Holding point">
|
||||||
<call_once fun="rotwing_request_configuration(ROTWING_CONFIGURATION_HOVER)"/>
|
<call_once fun="rotwing_request_configuration(ROTWING_CONFIGURATION_HOVER)"/>
|
||||||
<call_once fun="NavKillThrottle()"/>
|
<call_once fun="NavKillThrottle()"/>
|
||||||
<set var="stabilization_cmd[COMMAND_THRUST_X]" value="0"/>
|
<set var="stabilization.cmd[COMMAND_THRUST_X]" value="0"/>
|
||||||
<attitude pitch="0" roll="0" throttle="0" until="FALSE" vmode="throttle"/>
|
<attitude pitch="0" roll="0" throttle="0" until="FALSE" vmode="throttle"/>
|
||||||
</block>
|
</block>
|
||||||
<block name="Start Engine" strip_button="Start Engines" strip_icon="on.png">
|
<block name="Start Engine" strip_button="Start Engines" strip_icon="on.png">
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ float indi_Wu[INDI_NUM_ACT] = {[0 ... INDI_NUM_ACT - 1] = 1.0};
|
|||||||
* Limit the maximum specific moment that can be compensated (units rad/s^2)
|
* Limit the maximum specific moment that can be compensated (units rad/s^2)
|
||||||
*/
|
*/
|
||||||
#ifdef STABILIZATION_INDI_YAW_DISTURBANCE_LIMIT
|
#ifdef STABILIZATION_INDI_YAW_DISTURBANCE_LIMIT
|
||||||
float stablization_indi_yaw_dist_limit = STABILIZATION_INDI_YAW_DISTURBANCE_LIMIT
|
float stablization_indi_yaw_dist_limit = STABILIZATION_INDI_YAW_DISTURBANCE_LIMIT;
|
||||||
#else // Put a rediculously high limit
|
#else // Put a rediculously high limit
|
||||||
float stablization_indi_yaw_dist_limit = 99999.f;
|
float stablization_indi_yaw_dist_limit = 99999.f;
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -195,10 +195,14 @@ void periodic_rotwing_state(void)
|
|||||||
// Check and update desired state
|
// Check and update desired state
|
||||||
if (guidance_h.mode == GUIDANCE_H_MODE_NAV) {
|
if (guidance_h.mode == GUIDANCE_H_MODE_NAV) {
|
||||||
rotwing_switch_state();
|
rotwing_switch_state();
|
||||||
} else if (guidance_h.mode == GUIDANCE_H_MODE_ATTITUDE) {
|
} else if (guidance_h.mode == GUIDANCE_H_MODE_NONE) {
|
||||||
rotwing_state_set_hover_settings();
|
if (stabilization.mode == STABILIZATION_MODE_ATTITUDE) {
|
||||||
} else if (guidance_h.mode == GUIDANCE_H_MODE_FORWARD) {
|
if (stabilization.att_submode == STABILIZATION_ATT_SUBMODE_FORWARD) {
|
||||||
rotwing_state_set_fw_settings();
|
rotwing_state_set_fw_settings();
|
||||||
|
} else {
|
||||||
|
rotwing_state_set_hover_settings();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Run the wing skewer
|
// Run the wing skewer
|
||||||
@@ -206,9 +210,7 @@ void periodic_rotwing_state(void)
|
|||||||
|
|
||||||
//TODO: incorparate motor active / disbaling depending on called flight state
|
//TODO: incorparate motor active / disbaling depending on called flight state
|
||||||
// Switch on motors if flight mode is attitude
|
// Switch on motors if flight mode is attitude
|
||||||
if (guidance_h.mode == GUIDANCE_H_MODE_ATTITUDE) {
|
if (guidance_h.mode == GUIDANCE_H_MODE_NONE) {
|
||||||
bool_disable_hover_motors = false;
|
|
||||||
} else if (guidance_h.mode == GUIDANCE_H_MODE_FORWARD) {
|
|
||||||
bool_disable_hover_motors = false;
|
bool_disable_hover_motors = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user