[conf] testing gen_autopilot stuff

This commit is contained in:
Felix Ruess
2014-06-11 21:17:43 +02:00
parent def4d8cdae
commit 048c137b34
2 changed files with 26 additions and 20 deletions
@@ -51,6 +51,8 @@
</target> </target>
</firmware> </firmware>
<autopilot name="rotorcraft_autopilot.xml" freq="512"/>
<modules> <modules>
<load name="adc_generic.xml"> <load name="adc_generic.xml">
<configure name="ADC_CHANNEL_GENERIC1" value="ADC_1"/> <configure name="ADC_CHANNEL_GENERIC1" value="ADC_1"/>
+24 -20
View File
@@ -1,17 +1,22 @@
<!DOCTYPE autopilot SYSTEM "autopilot.dtd"> <!DOCTYPE autopilot SYSTEM "autopilot.dtd">
<autopilot name="Booz Quadrotor Autopilot (Basic version)"> <autopilot name="Quadrotor Autopilot (Basic version)">
<control_block name="set_actuators">
<call fun="SetRotorcraftCommands(stabilization_cmd, autopilot_in_flight, autopilot_motors_on)"/>
<call fun="SetActuatorsFromCommands(commands, autopilot_mode)"/>
</control_block>
<control_block name="attitude_loop"> <control_block name="attitude_loop">
<call fun="SetAttitudeFromRC(rc_values)"/> <call fun="SetAttitudeFromRC(rc_values)"/>
<call fun="AddAttitudeFromFMS()" cond="fms.enabled"/> <call fun="AddAttitudeFromFMS()" cond="fms.enabled"/>
<call fun="booz_stabilization_attitude_run(booz2_autopilot_in_flight)"/> <call fun="stabilization_attitude_run(autopilot_in_flight)"/>
</control_block> </control_block>
<control_block name="altitude_loop"> <control_block name="altitude_loop">
<call fun="SetAltitudeFromFMS()" cond="fms.enabled"/> <call fun="SetAltitudeFromFMS()" cond="fms.enabled"/>
<call fun="b2_gv_update_ref_from_z_sp(booz2_guidance_v_z_sp)"/> <call fun="gv_update_ref_from_z_sp(guidance_v_z_sp)"/>
<call fun="run_hover_loop(booz2_autopilot_in_flight)"/> <call fun="run_hover_loop(autopilot_in_flight)"/>
<call fun="SaturateThrottle(rc_values)"/> <call fun="SaturateThrottle(rc_values)"/>
</control_block> </control_block>
@@ -19,28 +24,28 @@
<exception cond="too_far_from_home" deroute="HOME"/> <exception cond="too_far_from_home" deroute="HOME"/>
</exceptions> </exceptions>
<mode name="ATTITUDE" start="booz_stabilization_attitude_enter()"> <mode name="ATTITUDE" start="stabilization_attitude_enter()">
<select cond="$DEFAULT_MODE"/> <select cond="$DEFAULT_MODE"/>
<select cond="RCMode0()"/> <select cond="RCMode0()"/>
<control freq="512"> <control freq="512">
<call_block name="attitude_loop"/> <call_block name="attitude_loop"/>
<call fun="SetThrottleFromRC(rc_values)"/> <call fun="SetThrottleFromRC(rc_values)"/>
<call fun="actuators_set(booz2_autopilot_motors_on)"/> <call_block name="set_actuators"/>
</control> </control>
<exception cond="RCLost()" deroute="FAILSAFE"/> <exception cond="RCLost()" deroute="FAILSAFE"/>
</mode> </mode>
<mode name="VERTICAL" start="booz_stabilization_attitude_enter()|booz_guidance_v_enter()"> <mode name="VERTICAL" start="stabilization_attitude_enter()|guidance_v_enter()">
<select cond="RCMode1()"/> <select cond="RCMode1()"/>
<control freq="512"> <control freq="512">
<call_block name="attitude_loop"/> <call_block name="attitude_loop"/>
<call_block name="altitude_loop"/> <call_block name="altitude_loop"/>
<call fun="actuators_set(booz2_autopilot_motors_on)"/> <call_block name="set_actuators"/>
</control> </control>
<exception cond="RCLost()" deroute="FAILSAFE"/> <exception cond="RCLost()" deroute="FAILSAFE"/>
</mode> </mode>
<mode name="NAV" start="booz_guidance_h_nav_enter()|booz_guidance_v_enter()"> <mode name="NAV" start="guidance_h_nav_enter()|guidance_v_enter()">
<select cond="RCMode2()" exception="HOME"/> <select cond="RCMode2()" exception="HOME"/>
<select cond="RCMode2() && DLModeNav()"/> <select cond="RCMode2() && DLModeNav()"/>
<control freq="32"> <control freq="32">
@@ -51,15 +56,14 @@
<call fun="GuidanceNavHorizontal()"/> <call fun="GuidanceNavHorizontal()"/>
<call fun="GuidanceNavVertical()"/> <call fun="GuidanceNavVertical()"/>
<call fun="AddAttitudeFromRC(rc_values)" cond="!RCLost()"/> <call fun="AddAttitudeFromRC(rc_values)" cond="!RCLost()"/>
<call fun="booz_stabilization_attitude_run(booz2_autopilot_in_flight)"/> <call fun="stabilization_attitude_run(autopilot_in_flight)"/>
<call fun="SaturateThrottle(rc_values)" cond="!RCLost()"/> <call fun="SaturateThrottle(rc_values)" cond="!RCLost()"/>
<call fun="actuators_set(booz2_autopilot_motors_on)"/> <call_block name="set_actuators"/>
<call_block name="actuators_ap"/>
</control> </control>
<exception cond="GPSLost()" deroute="FAILSAFE"/> <exception cond="GPSLost()" deroute="FAILSAFE"/>
</mode> </mode>
<mode name="HOME" start="booz_guidance_h_nav_enter()|booz_guidance_v_enter()"> <mode name="HOME" start="guidance_h_nav_enter()|guidance_v_enter()">
<control freq="32"> <control freq="32">
<call fun="nav_home()"/> <call fun="nav_home()"/>
</control> </control>
@@ -67,20 +71,20 @@
<call fun="SetCommandFromAP()"/> <call fun="SetCommandFromAP()"/>
<call fun="GuidanceNavHorizontal()"/> <call fun="GuidanceNavHorizontal()"/>
<call fun="GuidanceNavVertical()"/> <call fun="GuidanceNavVertical()"/>
<call fun="booz_stabilization_attitude_run(booz2_autopilot_in_flight)"/> <call fun="stabilization_attitude_run(autopilot_in_flight)"/>
<call fun="actuators_set(booz2_autopilot_motors_on)"/> <call_block name="set_actuators"/>
</control> </control>
<exception cond="GPSLost()" deroute="FAILSAFE"/> <exception cond="GPSLost()" deroute="FAILSAFE"/>
</mode> </mode>
<!-- Safe landing --> <!-- Safe landing -->
<mode name="FAILSAFE" start="failsafe_enter()|booz_stabilization_attitude_enter()|booz_guidance_v_enter()" stop="failsafe_exit()"> <mode name="FAILSAFE" start="stabilization_attitude_set_failsafe_setpoint()|guidance_v_mode_changed(GUIDANCE_V_MODE_CLIMB)|guidance_v_zd_sp = SPEED_BFP_OF_REAL(FAILSAFE_DESCENT_SPEED)">
<control freq="512"> <control freq="512">
<call fun="SetFailsafeCommand()"/> <call fun="SetFailsafeCommand()"/>
<call fun="booz_stabilization_attitude_run(booz2_autopilot_in_flight)"/> <call fun="stabilization_attitude_run(autopilot_in_flight)"/>
<call fun="b2_gv_update_ref_from_zd_sp(booz2_guidance_v_zd_sp)"/> <call fun="gv_update_ref_from_zd_sp(guidance_v_zd_sp)"/>
<call fun="run_hover_loop(booz2_autopilot_in_flight)"/> <call fun="run_hover_loop(autopilot_in_flight)"/>
<call fun="actuators_set(booz2_autopilot_motors_on)"/> <call fun="actuators_set(autopilot_motors_on)"/>
</control> </control>
<exception cond="!GPSLost()" deroute="$LAST_MODE"/> <exception cond="!GPSLost()" deroute="$LAST_MODE"/>
</mode> </mode>