[Top][All Lists]

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

Re: [Paparazzi-devel] Tiltrotor-Project

From: notoriou5
Subject: Re: [Paparazzi-devel] Tiltrotor-Project
Date: Wed, 22 Jun 2016 08:03:03 -0700 (MST)

Hi Sergey, 

I really do have issues with vibration. I already balanced my propellers but
it did not change much. I think my frame is just not stiff enough. This
could be a reason for some of the unstable behavior. Maybe I put a metal
sheet under it, need it later anyway to simulate some kind of wing for the
aerodynamic forces. 

Besides the vibration I still do not get rid of the rotation completely.
These are the steps I did to reduce it: 
 1) Activate my MAG: 
         <subsystem name="ahrs"       type="int_cmpl_quat"/>
         <configure name="USE_MAGNETOMETER" value="TRUE"/>

 2) Changed the values of the Motor Matrix to reduce the effect of different
momentum in the front engine: 
          motor_mixing.roll_coef[0] = 0;
          motor_mixing.roll_coef[1] = 0;
          motor_mixing.roll_coef[2] = 80;
          motor_mixing.roll_coef[3] = -80;

          motor_mixing.pitch_coef[0] = 70;
          motor_mixing.pitch_coef[1] = 70;
          motor_mixing.pitch_coef[2] = -70;
          motor_mixing.pitch_coef[3] = -70;

          motor_mixing.yaw_coef[0] = -150;        
          motor_mixing.yaw_coef[1] = 150;
          motor_mixing.yaw_coef[2] = 0;
          motor_mixing.yaw_coef[3] = 0;

          motor_mixing.thrust_coef[0] = 140;
          motor_mixing.thrust_coef[1] = 170;
          motor_mixing.thrust_coef[2] = 250;
          motor_mixing.thrust_coef[3] = 250;

3) Put an extra line into the motor_mixing.c to compensate the YAW momentum
during a ROLL movement:
    for (i = 0; i < MOTOR_MIXING_NB_MOTOR; i++) {
      motor_mixing.commands[i] = motor_mixing.trim[i] +
        motor_mixing.roll_coef[i] * in_cmd[COMMAND_ROLL] +
        motor_mixing.pitch_coef[i] * in_cmd[COMMAND_PITCH] +
        motor_mixing.thrust_coef[i] * in_cmd[COMMAND_THRUST];
        /*yaw combensation (tiltrotor) from a roll-command */
        if ( i <= 1) {
          motor_mixing.commands[i] += 2.5*motor_mixing.roll_coef[i+2] *
        } [...] }

I know that I hard programmed these files. I still need to make it
compatible with all the other modells, but that is not priority number one
for now. 

I adjusted the PID Values and he is flying "okay" for now. It still shows
the vibrations I mentioned at first and the YAW movement is still there. Not
as bad as in the beginning but not completely gone either. This is the
output of a telemetry file: 


He is not really reaching the value.  Any tips what else could help? Maybe
some more settings in the AHRS section?

Thanks to everyone. 


View this message in context:
Sent from the paparazzi-devel mailing list archive at

reply via email to

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