paparazzi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Paparazzi-devel] eliminate ATT steady-state error


From: Sergey Krukowski
Subject: Re: [Paparazzi-devel] eliminate ATT steady-state error
Date: Fri, 22 May 2015 08:00:55 +0200
User-agent: Opera Mail/11.61 (Win32)

I found that there is any improvement at all is increasing igain to about 2000-8000. (I'm using euler stabilization however). The probable reason for that in quat stabilization is that the IERROR_SCALE value is too high:
https://github.com/paparazzi/paparazzi/blob/master/sw/airborne/firmwares/rotorcraft/stabilization/stabilization_attitude_quat_int.c#L255-L257

Best regards,
Sergey

Hi Eduardo.

I have already tried to increase i term to 800 but found no improvement

quadrotor_wecam.xml
<http://lists.paparazziuav.org/file/n17022/quadrotor_wecam.xml>

<airframe name="Quadrotor XYZ pwm">

  <modules main_freq="512">
    <load name="send_imu_mag_current.xml"/>
    <load name="openlog.xml"/>
    <load name="gps_ubx_ucenter.xml"/>
    <load name="sys_mon.xml"/>
    <load name="bat_checker.xml"/>
    <load name="geo_mag.xml"/>
 </modules>

  <firmware name="rotorcraft">
    <target name="ap" board="krooz_sd">
      <subsystem name="radio_control" type="datalink">
        <define name="RADIO_MODE" value="RADIO_AUX1"/>
        <configure name="USE_SECONDARY_SPEKTRUM_RECEIVER" value="0"/>
      </subsystem>
   </target>

    <target name="nps" board="pc">
      <subsystem name="fdm" type="jsbsim"/>
      <subsystem name="radio_control" type="ppm"/>
    </target>

    <subsystem name="motor_mixing"/>
    <subsystem name="actuators"     type="pwm">
      <define name="SERVO_HZ" value="400"/>
   </subsystem>

    <subsystem name="telemetry"     type="transparent"/>
    <subsystem name="imu"           type="krooz_sd"/>
    <subsystem name="gps"           type="ublox"/>
    <subsystem name="stabilization" type="int_quat"/>
    <subsystem name="ahrs"          type="int_cmpl_quat">
      <define name="AHRS_GRAVITY_HEURISTIC_FACTOR" value="30"/>
    </subsystem>
    <subsystem name="ins"           type="hff"/>

   <define name="USE_GPS_ACC4R" value="1"/>
    <define name="HFF_R_POS_MIN" value="2.5"/>
    <define name="HFF_R_SPEED_MIN" value="0.5"/>
    <define name="HFF_ACCEL_NOISE" value="1."/>
   <define name="VF_FLOAT_MEAS_NOISE" value="1."/>
  </firmware>

  <servos driver="Pwm">
    <servo name="NE"   no="0" min="1000" neutral="1150" max="1900"/>
    <servo name="SE"    no="1" min="1000" neutral="1150" max="1900"/>
    <servo name="SW"   no="2" min="1000" neutral="1150" max="1900"/>
    <servo name="NW"    no="3" min="1000" neutral="1150" max="1900"/>
  </servos>

  <commands>
    <axis name="ROLL"   failsafe_value="0"/>
    <axis name="PITCH"  failsafe_value="0"/>
    <axis name="YAW"    failsafe_value="0"/>
    <axis name="THRUST" failsafe_value="0"/>
  </commands>

  <command_laws>
    <call fun="motor_mixing_run(autopilot_motors_on,FALSE,values)"/>
    <set servo="NE" value="motor_mixing.commands[0]"/>
    <set servo="SE" value="motor_mixing.commands[1]"/>
    <set servo="SW" value="motor_mixing.commands[2]"/>
    <set servo="NW" value="motor_mixing.commands[3]"/>
  </command_laws>

  <section name="MIXING" prefix="MOTOR_MIXING_">
    <define name="TRIM_ROLL" value="0"/>
    <define name="TRIM_PITCH" value="0"/>
    <define name="TRIM_YAW" value="0"/>
    <define name="NB_MOTOR" value="4"/>
    <define name="SCALE" value="256"/>

    <define name="ROLL_COEF"   value="{ -MOTOR_MIXING_SCALE,
-MOTOR_MIXING_SCALE,  MOTOR_MIXING_SCALE,  MOTOR_MIXING_SCALE }"/>
    <define name="PITCH_COEF"  value="{  MOTOR_MIXING_SCALE,
-MOTOR_MIXING_SCALE, -MOTOR_MIXING_SCALE,  MOTOR_MIXING_SCALE }"/>
    <define name="YAW_COEF"    value="{  MOTOR_MIXING_SCALE,
-MOTOR_MIXING_SCALE,  MOTOR_MIXING_SCALE, -MOTOR_MIXING_SCALE }"/>
    <define name="THRUST_COEF" value="{  MOTOR_MIXING_SCALE,
MOTOR_MIXING_SCALE,  MOTOR_MIXING_SCALE,  MOTOR_MIXING_SCALE }"/>
  </section>

  <section name="IMU" prefix="IMU_">





--
Erstellt mit Operas revolutionärem E-Mail-Modul: http://www.opera.com/mail/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]