Está en la página 1de 16

Universidad Autónoma de Nuevo León

Facultad de Ingeniería Mecánica y Eléctrica

LABORATORIO DE DISEÑO DE SISTEMAS MECATRONICOS


Práctica #3
Calibración del MPU6050

Nombre Matricula Carrera

Alexandro Toledo Olvera 1816378 IMTC

Brigada:306
Periodo: Agosto – Diciembre 2021

Profesor: Dante Ferreyra Méndez

Práctica #3
Calibración del MPU6050
Introducción
En este reporte veremos el funcionamiento de un acelerómetro con giroscopio para
comprobar su correcto funcionamiento y el poder calibrarlo correctamente para la
programación que se quiera cargar.

Calibrando el MPU
Muchos de los ejemplos que podemos encontrar, tienen un problema y es que presentan
muchas vibraciones y ruido en las medidas, además cuando tengamos instalado el
módulo MPU6050 en el proyecto, siempre puede haber un desnivel en sus componentes,
motivo por el cual debemos calibrar el módulo, asegurándonos de que no haya un error
de desnivel agregado en cada componente.

Durante la calibración deberemos mantener el sensor sin moverlo en la posición de


trabajo habitual, entonces el programa empieza por leer los offsets y nos pide que
enviemos un carácter por el puerto serie. El programa trata de corregir los errores de las
medidas, para ello modifica constantemente el offest, usando un filtro y cada 100 lecturas
comprueba los valores si se acercan a los que deseamos leer, aumentando o
disminuyendo los offsets. Esto hará que las lecturas filtradas se acerquen a:
-aceleración: p_ax=0 , p_ay=0 , p_az=+16384
-velocidad angular: p_gx=0 , p_gy=0 , p_gz=0
Especificaciones

 Sensor: MPU6050
 Voltaje de operación: 3V/3.3V~5V DC
 Regulador de voltaje en placa
 Grados de libertad (DoF): 6
 Rango Acelerómetro: 2g/4g/8g/16g
 Rango Giroscopio: 250Grad/Seg, 500Grad/Seg, 1000Grad/Seg, 2000Grad/Seg
 Sensibilidad Giroscopio: 131 LSBs/dps
 Interfaz: I2C
 Conversor AD: 16 Bits (salida digital)
 Tamaño: 2.0cm x 1.6cm x 0.3cm

Objetivo
Comprobar resultados obtenidos en nuestra pantalla serial para verificar hemos calibrado
correctamente nuestro MPU6050.

Métodos y materiales
Materiales

Componente imágenes

Atmega328

Resistencias

7805

Leds

capacitores

diodos
MPU6050

Cristal de cuarzo

transistor 2n2222 NPN

Métodos
En esta práctica nuestro método de elaboración consto en utilizar el mismo circuito de
control que se creó en la práctica anterior, agregando ahora el módulo MPU6050 al
circuito, con una conexión I2C en los pines analógicos A4 y A5 del microcontrolador. Para
esta práctica solo se tomarán las mediciones que hará el módulo para observar si
podemos obtenerlas sin ninguna complejidad, en este caso estas mediciones se
visualizaron en el puerto serial.
Una vez implementado el módulo al circuito de control se procedió a instalar las librerías
correspondientes para el funcionamiento del módulo, para después poder analizar y
cargar el programa que se nos dio para hacer las mediciones del mismo.

Programación
Aquí podemos observar cómo nuestro programa de calibración en pocas palabras
para no explicar la forma para que nuestras mediciones sean más exactas, ya que
en la práctica anterior hicimos mediciones, pero como explica la practica el
MPU6050 no está totalmente bien posicionado, aunque nosotros lo veamos bien,
así que con este programa vamos a calibrar nuestro MPU6050.

Cuando tengamos estos valores debemos reiniciar el Arduino o simplemente


cerrar y abrir el monitor serial. Posteriormente podemos volver a cargar el primer
ejemplo para probar las lecturas con los nuevos offsets.
Por último, nuestro programa para que nos muestre nuestras medidas, pero ya
más exacto.
Diagrama del procedimiento utilizado en la práctica

Calibración del MPU

Análisis de lo que es
un MPU

Construcción del
circuito arduino

Acoplamiento del
MPU

Añadir librerías del


MPU al programa

Variables RAW sin


procesar

Valor de los offsets

Iniciar puerto serial e


iniciar sensor
Leer offsets anteriores

Leer aceleraciones y
velocidades angulares

Filtrar lecturas

Calibrar acelerómetro
y giroscopio en todos
los ejes

Fin de la práctica
Evidencia
Resultados
Para entender mejor los resultados debemos entender que para que todo sea más
exacto. la calibración, asi que el programa básicamente está modificando
constantemente los offset intentando eliminar el error con la medida real que
deseamos, en esta caso ax=0,ay=0,az=1g y gx=0,gy=0,gz=0.
Después de enviar el carácter el programa realiza las lecturas tanto del
acelerómetro como del giroscopio, usando un filtro estabilizamos un poco las
lecturas y cada 100 lecturas comprobamos si los valores son cercanos a los
valores que deseamos leer, dependiendo de esto se aumenta o disminuye los
offsets. Esto
hará que las lecturas filtradas converjan a:
-aceleración: p_ax=0 , p_ay=0 , p_az=+16384
-Velocidad angular: p_gx=0 , p_gy=0 , p_gz=0

Ahora veremos cada paso pero con los resultados ya mostrados en nuestra
aplicacion de arduino.

Primer paso: se abre el monitor serial y aparece ese mensaje


Segundo paso: se agrega cualquier carácter (letra o número) para poder iniciar la
calibración

Ahora si empezamos la calibración y con ello sus resultados.


Por último, la medición después de que hicimos la calibración
Discusión de resultados
Los resultados fueron satisfactorios, ya que todo salió como se entendió el problema que
íbamos a solucionar de la práctica, así que ya teníamos planteado que íbamos a utilizar
nuestro código de calibración, entendimos lo que iba hacer y porque lo iba hacer, los
resultados obtenidos fueron los deseados, logramos calibrar el MPU6050, después de ello
solo empezamos a analizar que todo estuviera correcto y por último, ya con nuestro
componente calibrado fue sencillo solo aplicar lo visto en la clase pasada para tener
mediciones más exactas.

Conclusiones
Para esta práctica ya no fue tan difícil el armado por el motivo que ya teníamos una parte
en nuestro proto y por parte de la programación todo fue un éxito comprobando en
nuestro dispositivo los resultados que se nos iban mostrando en la pantalla, todos fueron
correctamente, nos llevamos un aprendizaje para seguir con nuestras futuras prácticas.
Además, podemos entender que lo visto en la práctica anterior aún se podía mejorar más
y fue muy satisfactorio poder aplicar los dos conocimientos vistos en una sola práctica,

Cuestionario
1. ¿Qué detecta el módulo MPU?
2. ¿En cuantos ejes?
3. ¿Qué significan las siglas DMP?
4. ¿Formula de la velocidad angular?
5. ¿Ejes del acelerómetro y del giroscopio?
6. ¿Por cuales medios puede realizarse la comunicación?
7. ¿A cuántos volts permite alimentar el regulador de voltaje?
8. ¿Qué es la velocidad angular?
9. ¿Grados de libertad del MPU?
10. ¿Cuál es la corriente de operación del acelerómetro?

Bibliografías
 Módulo MPU9250, Acelerómetro, Giroscopio, Magnetómetro I2C. (2016).

Naylamp Mechatronics - Perú. https://naylampmechatronics.com/sensores-posicion-

inerciales-gps/214-modulo-mpu9250-acelerometro-giroscopio-magnetometro-

i2c.html
 Geek Factory. (2021, 26 agosto). MPU-9250 Acelerómetro giroscopio y

magnetómetro IMU 9DOF. https://www.geekfactory.mx/tienda/sensores/mpu-9250-

acelerometro-giroscopio-y-magnetometro-imu-9dof/

 García, V. (2018, 2 marzo). Configurar el MPU6050. – Electrónica Práctica

Aplicada. DiarioElectronico.

https://www.diarioelectronicohoy.com/blog/configurar-el-mpu6050

Cuestionario (Respuestas)

1. Movimientos

2. 9 ejes

3. Procesador Digital de Movimientos

d∅
4. w=
dt

5. 3 ejes cada uno

6. puede realizarse tanto por bus SPI cómo por bus I2C

7. 5v

8. Es la tasa de cambio del desplazamiento angular por unidad de tiempo, es

decir que tan rápido gira un cuerpo alrededor de su eje

9. 6 grados de libertad

10 450 uA

También podría gustarte