I made a little quad from scratch. From scratch as in from PCB design.

After assembling, testing, some coding, it turns out my accelerometers get WAY TOO MUCH vibrations and I can't detect orientation using Kalman filter... Bump!

Has anyone encountered this kind of problem before? How would you solve it?

Image of Quad: photo of a small quadcopter

Image of tester I used to visualize orientation: enter image description here

Any helps much appreciated will be :) I already ordered Moongel but not counting it'll filter out much vibration in my case.

  • 3
    \$\begingroup\$ There are lots of open source firmware for these you can learn from, but my suspicion (especially looking at RC helicopter history) is that you want to use your gyros to damp rotation about all three axis before you look at any accelerometers that may be present. If you can get the machine to have no change in orientation absent control input, it may well by flyable by a skilled pilot. Your accelerometers are then what give you the "hands-off" hover capability basically unknown in rotary wing craft until quite recent times. \$\endgroup\$ – Chris Stratton Jul 5 '15 at 1:11
  • 1
    \$\begingroup\$ Awesome project! What are you hoping to achieve with accelerometers? Quadcopters run primarily on gyros. Also, can't you filter the accelerometers to remove everything above 1 Hz? \$\endgroup\$ – tomnexus Jul 5 '15 at 10:15
  • 1
    \$\begingroup\$ A few details may shed some light on this. Namely: - Does the output of the Kalman filter make sense when you're just holding the quad in your hand? - Many accelerometer parts have built-in low-pass filters. Have you tried using these? One way to do this may be to reduce the output data rate (some parts scale the LP filter by data rate). - What was happening when you took the last screenshot of the accelerometer readings? Was the quad sitting still (at least for the first part of the readout?) If so, that's very noisy data. \$\endgroup\$ – PKL Jul 8 '15 at 1:36

Awesome little quadcopter there. A few things to think about before using the more interesting filters:

  1. Check that the desired acceleration signal isn't swamped by power supply noise or vibration. This will show up easily in a high rate capture of raw values. Try to get a capture with the motors on, off, and at low PWM where the noise can be particularly bad. Even better would be pushing the values out a DAC to a scope while ramping the motor up, but work with what you have.
  2. Watch out for power supply noise! This has caused me a great deal of frustration, MEMS devices use switched capacitor techniques and can be very sensitive to supply noise that lands on the internal clock or a harmonic thereof. Excerpt from ADXL323 datasheet below. ADXL323 datasheet pg 12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.