Mpu6050 for Respiration Patterns


I’m using the the Mpu6050 connected to an Arduino UNO, so that i can get the X and Y axis values.
One thing that i notice is that it reacts to angular movements and not to displacement.
I would like to place it on the belly (and eventually another on the chest), and based on the displacement of it as the subjetc inhales and exhales, get the a respiration pattern.


MPU Arduino
Vcc 3.3 V

How can i either edit the code or better position the sensor, so that i can get the data i need?

I appreciate your help.


Respiration_Gyr_Acc.ino (2.01 KB)

You can't. Get a ads1292r, it gives you respiro from ecg - which works quite well.


Thanks for replying.
Yes i see that one works for respiration.

But it requires to use electrodes.
I would like to use a method based on displacement (no invasive).


I've been in that biosensor business since 2006. It simply does not work that way. Neither does strain gage (witch is better than acc, but anyway ...). And Electrodes are non-invasive - as long as you do not use needles for improving signal quality (which does not work ... but don't ask ...)

Keep in mind an acceleration sensor reports...... acceleration not displacement.

You might try to integrate the acceleration to "estimate" displacement but it will only be an estimate. I expect it will eventually drift to the point you no longer know where the origin was.

The MPU6050 reports sensor rate of rotation and sensor acceleration along each of the X, Y, Z axes, six values in all.

If you study and think hard about the patterns in a time series of data points taken from people with the sensor strapped to their chests, you can probably figure out some way of detecting the motions of interest. But don't think for a moment that it will be a simple task.

hi Zwieblum!

I'm doing home made projects focused on health and I was interested what sensors exists for that purpose..

from your post, I'm now aware that it is called biosensors..

but do you have maybe some list of sensors which are used in medicine? I'm not a doctor and not a electronic so I have no idea what even exists and maybe something interesting is flying under my radar..

carloszoom3000 - there is possibility to measure it - try to focus not on the amplitude but on the delta between new and old acceleration and use sqrt((axax)+(ayay)+(az*az)) to consider all 3 directions..

this way, I'm measuring something similar successfully, but there should be no other movement, just breathing and when very sensitive, it could "hears" your heart pumping...

If you do not want to use ecg, there's not much you can do. A custumer once tried IR and ultrasonic distance sensors for breath detection. This works, but the sensor needs to be mounted on a fixed arm (heavy, =so it's vibration damped) in front of the chest (or at least aimed at the front of the chest). Spatial resolution of the distance sensor is important, you need ~ 1mm. giving 8 bit usable data the sensor should not be more than ~ 25 cm from the chest. Noise is a problem, you need oversampling, so in the end you might get round with 10 samples per second - which should do.