<p>You need to be specific about what IMU hardware you are using, like a general purpose IC like MPU6050 (gyro + accelerometer), or flight controllers like  Pixhawk, pixRacer, etc ..</p>
<p>In Order for you to achieve a fine tuned, linear input-output response, you need to take care of few things firsts and accept some constraints :</p>
<ol>
<li>you cannot fully get rid of vibrations, but hopefully you can reduce it to an extent by using  anti-vibration absorber like this</li>
</ol>
<p><a href="https://i.sstatic.net/gaASum.jpg" rel="nofollow noreferrer"><img src="https://i.sstatic.net/gaASum.jpg" alt="absorber" /></a></p>
<ol start="2">
<li><p>You cannot achieve a linear relationship between input and output signals. This is mainly due to limitations of The flight hardware you are using</p>
<p>In the end, <strong>the goal is get proper output signals rather than reduce vibrations</strong>. this can be achieved  by</p>
</li>
</ol>
<p>1)Research more about your IMU hardware, like manufacturers Datasheet, or asking with the community</p>
<ol start="2">
<li><p>The reason why you are getting a change in pitch angle is due to its internal offset of various parameters associated with its IC manufacturing.</p>
</li>
<li><p>Coming to UAVs, you need to implement your own PID algorithms by using digital filters like Kalman Filter, or you can choose Open Source flight firmwares for your IMU hardware.</p>
</li>
<li><p>After implementing and testing your filter, you need to fine tune it by hooking the output to a DSO and modifying the filter coefficients to suit your needs. A lot of trial and error goes into finding the tuning parameters like Kp, Ki, and Kd.</p>
</li>
</ol>

CC BY-SA 4.0
2020-12-24T11:58:10.233Z
2020-12-26T02:41:30.740Z
2020-12-26T02:41:30.740Z
user1355
<p>I am testing pitch orientation correction of Quadcopter and ended up in a issue.</p>
<p>I have a test setup with one degree of freedom to test orientation correction. I have fixed the drone to the setup and basically trying to test pitch correction by feeding a desired pitch angle and current pitch angle from IMU. The AHRS code uses Mahony filter to fuse the sensor data from Accelerometer, Gyroscope and Magnetometer. When I start my testing and spin the motors, can see the current pitch angle varying (or Oscillating). When I test without spinning the motors, the pitch angle is much precise. I observed that when the motors spin, a lot of vibration is generated and i doubt this is affecting the sensor to result in inaccurate output.</p>
<p>My question is</p>
<ol>
<li>How can the vibration effect be nullified on the IMU sensor? By using some hardware component?</li>
<li>If it can be handled using Software, please let me know.</li>
</ol>
<p>Thanks</p>

CC BY-SA 4.0
2020-12-04T20:11:13.047Z
Physically soft-mounting the IMU, with say rubber or similar, would likely help significantly. Further filtering could also help.
ifconfig
CC BY-SA 4.0
2020-12-16T05:59:11.447Z
@ifconfig, I used a soft mount but I don't see much effective results using a soft mount. I used complementary filter for filtering the accel data inorder to reduce the orientation output fluctuations due to vibrations. It has been effective upto certain extent, but the effect is not nullified to max extent. Do you have any other suggestions?
TheLazy
<propellers><motor><imu><raspberry-pi><filters>
Eliminate effect of Vibrations on IMU
TheLazy
# Eliminate effect of Vibrations on IMU

(Asked by: username_0 on 2020-12-04)

I am testing pitch orientation correction of Quadcopter and ended up in a issue.

I have a test setup with one degree of freedom to test orientation correction. I have fixed the drone to the setup and basically trying to test pitch correction by feeding a desired pitch angle and current pitch angle from IMU. The AHRS code uses Mahony filter to fuse the sensor data from Accelerometer, Gyroscope and Magnetometer. When I start my testing and spin the motors, can see the current pitch angle varying (or Oscillating). When I test without spinning the motors, the pitch angle is much precise. I observed that when the motors spin, a lot of vibration is generated and i doubt this is affecting the sensor to result in inaccurate output.

My question is

1. How can the vibration effect be nullified on the IMU sensor? By using some hardware component?
2. If it can be handled using Software, please let me know.

Thanks

**Tags:** propellers, motor, imu, raspberry-pi, filters

> **Comments:**
> **username_1**: Physically soft-mounting the IMU, with say rubber or similar, would likely help significantly. Further filtering could also help.  
> **username_0**: @username_1, I used a soft mount but I don't see much effective results using a soft mount. I used complementary filter for filtering the accel data inorder to reduce the orientation output fluctuations due to vibrations. It has been effective upto certain extent, but the effect is not nullified to max extent. Do you have any other suggestions?  

---

## 1 answers

### Answer by username_2 on 2020-12-24. Score: 2

You need to be specific about what IMU hardware you are using, like a general purpose IC like MPU6050 (gyro + accelerometer), or flight controllers like Pixhawk, pixRacer, etc ..

In Order for you to achieve a fine tuned, linear input-output response, you need to take care of few things firsts and accept some constraints :

1. you cannot fully get rid of vibrations, but hopefully you can reduce it to an extent by using anti-vibration absorber like this

[![absorber](https://i.sstatic.net/gaASum.jpg)](https://i.sstatic.net/gaASum.jpg)

2. You cannot achieve a linear relationship between input and output signals. This is mainly due to limitations of The flight hardware you are using

   In the end, **the goal is get proper output signals rather than reduce vibrations**. this can be achieved by

1)Research more about your IMU hardware, like manufacturers Datasheet, or asking with the community

2. The reason why you are getting a change in pitch angle is due to its internal offset of various parameters associated with its IC manufacturing.
3. Coming to UAVs, you need to implement your own PID algorithms by using digital filters like Kalman Filter, or you can choose Open Source flight firmwares for your IMU hardware.
4. After implementing and testing your filter, you need to fine tune it by hooking the output to a DSO and modifying the filter coefficients to suit your needs. A lot of trial and error goes into finding the tuning parameters like Kp, Ki, and Kd.


---

