reading angle from mpu6050

Hey;
I have hard time in order to get the roll, pitch, yaw from the mpu6050 sensor and I hope someone can help me:
port='COM5';
board = 'Mega2560';
a = arduino(port,board,'Libraries','I2C');
fprintf("connected")
imu= mpu6050(a);
i=0;
while(1)
V = readAngularVelocity(imu);
x=V(1);
y=V(2);
z=V(3);
pitch = atan(x/sqrt((y*y) + (z*z)));
roll = atan(y/sqrt((x*x) + (z*z)));
yaw = atan(sqrt((x*x) + (y*y))/z);
pitch = pitch * (180/pi);
roll = roll * (180/pi);
yaw = yaw * (180/pi);
end

Answers (1)

Hadi
Hadi on 30 Sep 2023
Hi You should use readAcceleration instead of readAngularVelocity.

Categories

Find more on MATLAB Support Package for Arduino Hardware in Help Center and File Exchange

Asked:

on 23 May 2022

Answered:

on 30 Sep 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!