La combinación de Python con Arduino puede sonar complicada al inicio, especialmente cuando se trabaja con sensores que generan múltiples variables en tiempo real.
Sin embargo, integrar ambas tecnologías permite aprovechar lo mejor de cada una como la capacidad de adquisición de datos de Arduino y la potencia de procesamiento, visualización y análisis de Python.
En este desarrollo, el objetivo principal fue controlar dispositivos utilizando el sensor IMU-6050, el cual ofrece mediciones de aceleración, giroscopio y orientación espacial.
![]() |
| IMU MPU-6050 |

![]() |
Diagrama de conexión y sensor MPU6050 |
![]() |
| Blink de Arduino UNO |
Lo primero es descargar el código al Arduino de este sensor, este código envía por medio de la terminal serial los diferentes datos como aceleración en los ejes XYZ y de giroscopio también en XYZ, adicionalmente nos da una variable con la información de la temperatura.
![]() |
| Proyectos con Arduino y Python |
Descargamos al Arduino el código para que envíe los datos del sensor vía serial.
![]() |
| ¿Que es la Comunicación Serial? |
https://github.com/iarobotixyz/Arduino/blob/master/Sensores/IMU%20MPU-6050/Inclinometro.ino
![]() |
Variables del IMU6050 vía Serial |
![]() |
| Introducción a Python con PyDroid |
Arduino ==> USB Serial ==> Python
El código que vamos a correr en python para la lectura serial es el siguiente:
Teniendo como resultado:
Lo primero que notamos es que el envío de esta información no esta organizada, esto es funcional pero para que se nos facilite la lectura de datos desde python vamos a modificar la estructura de la cadena desde Arduino:
- 1a modificación es para la prueba en python y lograr reducir el tamaño de la cadena
- 2a modificación es para ajustar la cadena y poder manipular las variables para la gráfica con python.
https://github.com/iarobotixyz/Arduino/blob/master/Sensores/IMU%20MPU-6050/GraficaSensorIMU2.ino
En este punto ya contamos con la comunicación estable entre Arduino y Python, por lo que ahora procederemos a organizar y visualizar las variables directamente desde Python utilizando el siguiente código:
![]() |
Código: |
Volvemos a conectar el Arduino y al ejecutar el programa tenemos como resultado las variables del Acelerómetro y del Giroscopio ya organizadas en XYZ:
Una vez establecida la conexión entre Arduino y Python, y con todas las variables correctamente organizadas, el siguiente paso consiste en generar la gráfica de los datos del sensor.
Para ello utilizaremos distintas librerías de Python que permiten visualizar la información de forma dinámica y detallada.
GRÁFICA 1
GRÁFICA 2
GRÁFICA 3
Links:

















Comentarios
Publicar un comentario