0% encontró este documento útil (0 votos)
153 vistas9 páginas

Proyecto Python y Arduino

Este documento describe cómo conectar Arduino y Python para transmitir datos analógicos de un potenciómetro a una gráfica en Python. Se utilizan librerías como Serial y Matplotlib para la comunicación serial y la generación de gráficos. El código de Arduino envía valores de voltaje mediante comunicación serial, mientras que el código de Python recibe los datos y los grafica en tiempo real, permitiendo visualizar la señal analógica del potenciómetro.

Cargado por

Saray Perez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
153 vistas9 páginas

Proyecto Python y Arduino

Este documento describe cómo conectar Arduino y Python para transmitir datos analógicos de un potenciómetro a una gráfica en Python. Se utilizan librerías como Serial y Matplotlib para la comunicación serial y la generación de gráficos. El código de Arduino envía valores de voltaje mediante comunicación serial, mientras que el código de Python recibe los datos y los grafica en tiempo real, permitiendo visualizar la señal analógica del potenciómetro.

Cargado por

Saray Perez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 9

2022

Arduino y Python

CONEXIÓN ENTRE ARDUINO Y PYTHON


MIRIAM SARAY HERNANDEZ PEREZ Y LUIS OSWALDO GONZALEZ
ROMANO
APRENDIZAJE AUTOMATICO | ing. Enrique Campos
Introducción
Este proyecto tiene como finalidad unir dos lenguajes y poder mandar datos a través de una interfaz
y por medio de una gráfica, vamos a mostrar señales analógicas que serán enviadas por un
potenciómetro, para esto usaremos Python como ejecutador.

El tema principal es lograr la unión entre estos dos sistemas, para ello no fue tan sencillo como se
esperaba, pero utilizando librerías y unos cuantos arreglos por fin logramos esa unión.

Desarrollo:
Para una mejor estructura usaremos el Visual Studio Code, primero iniciaremos con el código de
Visual

Importamos las librerías, entre ellas el MatPlotLib. Iniciamos con una estructura en la cual
vamos a graficar una señal analógica en este caso vamos a usar un potenciómetro que
recibirá de 0 a 5 volts. En este caso usaremos la librería Serial para la comunicación serial
por el tiempo y para hacer una colección de datos.
También usamos animation que se obtiene de MatPlotLib para poder obtener una
animación, en este caso buscamos graficar los datos recibidos de Arduino.
Usaremos figureCanvasTKAgg que nos permite hacer figuras para poder trabajar con ellas.
Se necesita como un llamémosle Hilo ya que necesitamos hacer dos procesos
simultáneamente, la recepción de datos y el otro que sería la gráfica. Para ello usaremos el
Threading.
En esta parte vamos a crear condiciones de verdadero y falso para datos que servirá para poder
indicar el voltaje en nuestra gráfica, también hay una variable muestra, que en este caso nos
entregará 50 muestras para una colección de datos, las variables (xmin, xmax, ymin, ymax) son
para definir el margen de nuestra gráfica, por ejemplo, el xmin es para definir desde donde inicia y
el xmax es para definir hasta donde llega, en este caso a 50 muestras. El eje Y es para definir los
rangos para el voltaje, van de -6 a 6 para que el cero esté en el centro.

}
En esta parte hacemos la comunicación serial entre Arduino y Python, no obstante, si el puerto no
es detectado y se intenta ejecutar el programa mandará una alerta donde nos avise que ha habido
una falla en el puerto.

En esta parte iniciaremos con la programación de los botones, para ello aplicamos el método de
animación y como recibirá los datos.
En la parte de PlotData la usamos para borrar el ruido que pueda existir a la hora de transportar los
datos de Arduino a Python

Aca tenemos la función de salir, que es donde cerramos la comunicación serial, damos un tiempo y
luego cerramos la ventana GUI

En el def Terminar en algo similar solo que aquí no se cierra la GUI


En esta sección se inicia con el TK y empezamos a darle los parámetros al titulo de la gráfica,
también definimos el fondo negro, luego damos la geometría y el tamaño

Usamos el FigureCanvasTKAgg y le damos los parámetros que hemos creado.

Y al final vamos a agregar un mainloop


Código Arduino
En el código de Arduino es mas sencillo de entender, simplemente enviamos una señal tipo float
con el comando Serial.print y le dejamos un delay de 200.

Primero debemos de crear dos variables tipo float, voltaje y lectura. En el Void Setup definimos la
velocidad de comunicación que es de 9600. En el pinMode(A0,INPUT) definimos el puerto que
vamos a usar, que es el A0.

En el voidloop declaramos el tipo de lectura, en este caso que es analógica. Y en el voltaje hacemos
la conversión de 0 a 5 volts

Luego en el Serial.println enviamos el voltaje. Ese sería todo el código.

Ahora pasamos con el diagrama de conexión. Que sería de la siguiente manera

Ya por ultimo corremos el programa y quedaría de la siguiente manera:


Al mover el potenciómetro queda asi:

Conclusión:

Se logro realizar la conexión entre ambos lenguajes por medio de librerías y pudimos graficar los
datos por medio de unos cuantos arreglos mencionados.
Fortalezas Oportunidad Debilidades Amenazas
Nuestras fortalezas Al tener una tarea que Carecemos de un Tuvimos el tiempo
son en la realización consideramos conocimiento extenso encima porque
de diagramas de difícil, tuvimos la en programación ya duramos alrededor de
conexiones en oportunidad de que solo hemos 4 dias en comprender
Arduino y en la aprender a instalar llevado un curso de qué se tenia que
protoboard librerías y hacer solucionar y cual era la
programación en el
arreglos para manera de lograr la
primer semestre, pero
comunicación serial conexión, también el
a pesar de eso hecho de instalar
tuvimos la librerías, vimos videos
información necesaria y seguíamos sin
para poder llevar a comprender como
cabo este trabajo. realizarlo, pero una
vez entendimos todo
se hizo más fácil

Bibliografía
Los datos del código fueron tomados y analizados del siguiente video:
Magno Efrén
Cómo graficar datos de Arduino en Python
https://youtu.be/hHz4XGIUAI4

También podría gustarte