[Ardrone][Raw] More general airframe

This commit is contained in:
Christophe De Wagter
2013-09-26 09:05:01 +02:00
parent e84e292f3e
commit 9add5d1c31
+32 -30
View File
@@ -5,7 +5,6 @@
<firmware name="rotorcraft">
<target name="ap" board="ardrone2_raw">
<define name="USE_INS_NAV_INIT"/>
<!--configure name="USE_NEW_I2C_DRIVER" value="1"/ -->
<configure name="AHRS_PROPAGATE_FREQUENCY" value="200"/>
<define name="AHRS_PROPAGATE_FREQUENCY" value="200"/>
<define name="INS_PROPAGATE_FREQUENCY" value="200"/>
@@ -20,15 +19,14 @@
<subsystem name="radio_control" type="ppm"/>
</target>
<!-- Subsystem section -->
<subsystem name="motor_mixing"/>
<subsystem name="actuators" type="ardrone2"/>
<subsystem name="imu" type="ardrone2"/>
<subsystem name="gps" type="ublox"/>
<subsystem name="stabilization" type="int_quat"/>
<subsystem name="ahrs" type="int_cmpl_quat"/>
<subsystem name="ins" type="extended"/>
</firmware>
<modules main_freq="512">
@@ -39,7 +37,7 @@
<axis name="PITCH" failsafe_value="0"/>
<axis name="ROLL" failsafe_value="0"/>
<axis name="YAW" failsafe_value="0"/>
<axis name="THRUST" failsafe_value="0"/>
<axis name="THRUST" failsafe_value="3000"/>
</commands>
<servos driver="Default">
@@ -55,6 +53,7 @@
<define name="TRIM_YAW" value="0"/>
<define name="NB_MOTOR" value="4"/>
<define name="SCALE" value="255"/>
<!-- Time cross layout (X), as documented in paparazzi -->
<define name="ROLL_COEF" value="{ 256, -256, -256, 256 }"/>
<define name="PITCH_COEF" value="{ 256, 256, -256, -256 }"/>
@@ -71,36 +70,42 @@
</command_laws>
<section name="IMU" prefix="IMU_">
<define name="ACCEL_X_NEUTRAL" value="2056"/>
<define name="ACCEL_Y_NEUTRAL" value="2060"/>
<define name="ACCEL_Z_NEUTRAL" value="2052"/>
<!-- Accelero -->
<define name="ACCEL_X_NEUTRAL" value="2048"/>
<define name="ACCEL_Y_NEUTRAL" value="2048"/>
<define name="ACCEL_Z_NEUTRAL" value="2048"/>
<define name="MAG_X_NEUTRAL" value="99"/>
<define name="MAG_Y_NEUTRAL" value="59"/>
<define name="MAG_Z_NEUTRAL" value="-65"/>
<define name="MAG_X_SENS" value="14.8494072406" integer="16"/>
<define name="MAG_Y_SENS" value="14.4187929352" integer="16"/>
<define name="MAG_Z_SENS" value="15.4390790318" integer="16"/>
<define name="MAG_X_CURRENT_COEF" value="0.00175105205138"/>
<define name="MAG_Y_CURRENT_COEF" value="0.000172518663485"/>
<define name="MAG_Z_CURRENT_COEF" value="0.00022802329524"/>
<!-- Magneto calibration -->
<define name="MAG_X_NEUTRAL" value="0"/>
<define name="MAG_Y_NEUTRAL" value="0"/>
<define name="MAG_Z_NEUTRAL" value="-180"/>
<define name="MAG_X_SENS" value="16." integer="16"/>
<define name="MAG_Y_SENS" value="16." integer="16"/>
<define name="MAG_Z_SENS" value="16." integer="16"/>
<!-- Magneto current calibration -->
<define name="MAG_X_CURRENT_COEF" value="0.0"/>
<define name="MAG_Y_CURRENT_COEF" value="0.0"/>
<define name="MAG_Z_CURRENT_COEF" value="0.0"/>
</section>
<!-- roll -->
<section name="IMU" prefix="IMU_">
<define name="BODY_TO_IMU_PHI" value="0." unit="deg"/>
<!-- pitch -->
<define name="BODY_TO_IMU_THETA" value="0." unit="deg"/>
<!-- yaw -->
<define name="BODY_TO_IMU_PSI" value="0." unit="deg"/>
</section>
<!-- local magnetic field, calculated for: 52°3'56", 4°31'24" -->
<!-- local magnetic field -->
<!-- http://paparazzi.enac.fr/wiki/Subsystem/ahrs#Local_Magnetic_Field -->
<section name="AHRS" prefix="AHRS_">
<define name="H_X" value="0.3892503"/>
<!-- Toulouse -->
<define name="H_X" value="0.513081"/>
<define name="H_Y" value="-0.00242783"/>
<define name="H_Z" value="0.858336"/>
<!-- Delft -->
<!--define name="H_X" value="0.3892503"/>
<define name="H_Y" value="0.0017972"/>
<define name="H_Z" value="0.9211303"/>
<define name="H_Z" value="0.9211303"/ -->
</section>
<section name="INS" prefix="INS_">
@@ -132,7 +137,6 @@
<define name="DDGAIN_R" value="300"/>
</section>
<section name="STABILIZATION_ATTITUDE" prefix="STABILIZATION_ATTITUDE_">
<!-- setpoints -->
<define name="SP_MAX_PHI" value="45" unit="deg"/>
@@ -186,19 +190,18 @@
<define name="HOVER_KP" value="283"/>
<define name="HOVER_KD" value="82"/>
<define name="HOVER_KI" value="13"/>
<!-- 1.5m/s for full stick : BOOZ_SPEED_I_OF_F(1.5) / (MAX_PPRZ/2) -->
<define name="RC_CLIMB_COEF" value="163"/>
<!-- BOOZ_SPEED_I_OF_F(1.5) * 20% -->
<define name="RC_CLIMB_DEAD_BAND" value="160000"/>
<define name="NOMINAL_HOVER_THROTTLE" value="0.655"/>
<define name="ADAPT_THROTTLE_ENABLED" value="FALSE"/>
</section>
<section name="GUIDANCE_H" prefix="GUIDANCE_H_">
<!-- Good weather -->
<define name="MAX_BANK" value="20" unit="deg"/>
<!-- Bad weather -->
<!-- define name="MAX_BANK" value="32" unit="deg"/ -->
<define name="PGAIN" value="79"/>
<define name="DGAIN" value="100"/>
<define name="IGAIN" value="26"/>
<define name="IGAIN" value="60"/>
</section>
<section name="SIMULATOR" prefix="NPS_">
@@ -221,5 +224,4 @@
<define name="LOW_BAT_LEVEL" value="9.7" unit="V"/>
<define name="MAX_BAT_LEVEL" value="12.4" unit="V"/>
</section>
</airframe>