Afternoon Folks,
I’d appreciate some help with taming an airframe vibration problem. I’m hoping that the answer will lie with notch filters, but I’ve tried that and not had any success. I suspect I cocked it up somewhere.
The airframe is a 2kg, 2m span flying wing tailsitter. Hover control comes from a combination of differential thrust (roll control in ground frame), differential motor pitch (yaw in ground frame) and complementary motor pitch (pitch in ground frame). An airframe this size is always going to have some flex and this one wobbles its wing tips at about 7Hz when excited. This wobble feeds into the motor pitch control and the whole caboodle ends up in a hovering resonating frenzy. The FC (Matek H743 wing V3) is mounted close to the airframe CoG and is mounted using foam earplugs to damp vibration.
The linked video shows the problem build up at around the 1 minute mark. The bin file from the same flight shows the issue from about 10:40:39.5. Once the vibration sets in, it does not damp out until I can pluck the machine out of the air. I’ve linked to the param file here.
I’ve tried notch filters with the following settings:
INS_HNTCH_ENABLE = 1
INS_HNTCH_MODE = 0
INS_HNTCH_REF = 0
INS_HNTCH_FREQ = 7Hz
INS_HNTCH_BW = 1Hz (also tried expanding this up to 5Hz)
INS_HNTCH_HMNCS = 3
I also tried a dynamic FFT notch with the following setting:-
FFT_ENABLE = 1
INS_HNTC2_ENABLE = 1
INS_HNTC2_MODE = 4
INS_HNTC2_HMNCS = 3
INS_HNTC2_OPTS =2
INS_HNTC2_REF = 1
I’ve had limited success by dropping the INS gyro filter to below the wobble frequency. Dropping the accel filter down made no difference.
INS_ACCEL_FILTER = 20Hz
INS_GYRO_FILTER = 6Hz
I’ve also tried change the Q_A_RAT_xxx_FLTT and Q_A_RAT_xxx_FLTD rate below the resonant frequency but that didn’t have any noticeable effect.
Any suggestions? It did dawn on me that the 7Hz might be natural frequency of servo response and that the whole problem is caused by this, but I don’t know how to alter the servo response. Or perhaps I just need to apply the notch filters properly? All help appreciated as I’m thoroughly confused.
Cheers,
Alan.