- Requisitos
- Instalación de PyFirmata en Arduino usando Raspberry Pi
- Explicación del código
- LED de desvanecimiento en Arduino usando pyFirmata
Aunque Raspberry Pi y Arduino son dos hardware diferentes en términos de sus aplicaciones y estructura, ambos se consideran dos plataformas de hardware de código abierto en competencia. Ambos tienen una comunidad y un apoyo muy fuertes. Hoy cambiaremos ligeramente las cosas y le mostraremos cómo podemos aprovechar ambas. Si tiene placas Arduino y Raspberry pi, este artículo le mostrará cómo usar Raspberry pi y Python para controlar Arduino.
Vamos a utilizar PyFirmata firmware para dar órdenes a Arduino usando un script en Python Frambuesa Pi. PyFirmata es básicamente un paquete de biblioteca prediseñado del programa Python que se puede instalar en Arduino para permitir la comunicación en serie entre un script Python en cualquier computadora y un Arduino. Este paquete de Python puede dar acceso para leer y escribir cualquier pin en Arduino. Entonces, aquí ejecutaremos el programa Python en Arduino usando Raspberry pi.
Entonces en este tutorial aprovecharemos esta biblioteca y la usaremos en nuestra placa Arduino para controlar Arduino usando Raspberry Pi.
Requisitos
- Raspberry Pi con el sistema operativo Raspbian instalado
- Arduino Uno o cualquier otra placa Arduino
- Cable USB Arduino
- LED
En este tutorial, estoy usando un monitor externo con un cable HDMI para conectarme con Raspberry Pi. Si no tiene monitor, puede usar el cliente SSH (Putty) o el servidor VNC para conectarse a Raspberry pi usando una computadora portátil o computadora. Si encuentra alguna dificultad, siga nuestra Guía de introducción a Raspberry Pi.
Instalación de PyFirmata en Arduino usando Raspberry Pi
Para cargar el firmware de PyFirmata en Arduino, tenemos que instalar Arduino IDE en Raspberry Pi. Siga estos pasos para instalar:
Paso 1: - Conecta la Raspberry Pi a Internet. Abra el terminal de comando y escriba el siguiente comando y presione enter
sudo apt - get - e instalar arduino python - serial mercurial
Espere unos minutos, tomará tiempo. Este comando instalará el IDE de Arduino en su Raspberry Pi.
Paso 2: - Ahora, instalaremos los archivos pyFirmata usando el github dado:
clon de git https://github.com/tino/pyFirmata
Luego ejecute el siguiente comando:
cd pyFirmata sudo python setup.py instalar
Paso 3: - Hemos instalado todos los archivos y configuraciones necesarios.
Ahora, conecte su placa Arduino con Raspberry Pi usando un cable USB e inicie Arduino IDE escribiendo arduino en la ventana del terminal.
Paso 4: - Luego, escriba el comando lsusb para verificar si Arduino está conectado con su raspberry pi.
En Arduino IDE, vaya a herramientas y elija su placa y puerto serie.
Paso 5: - Cargue el firmware PyFirmata en el Arduino haciendo clic en Archivo -> Ejemplos -> Firmata -> Firmata estándar y luego haga clic en el botón Cargar. Como se muestra abajo.
Hemos instalado con éxito el firmware pyFirmata en la placa Arduino. Ahora, podemos controlar nuestro Arduino usando Raspberry Pi.
Para la demostración, parpadearemos y atenuaremos un LED en el Arduino escribiendo códigos Python en Raspberry Pi.
Explicación del código
Para la parte de codificación, debe leer la documentación de pyFirmata para una mejor comprensión. Usaremos funciones de pyFirmata para escribir nuestro código. Puede encontrar la documentación de pyFirmata siguiendo el enlace.
Así que comencemos a escribir el código.
Abra su editor de texto favorito en la Raspberry Pi e importe la biblioteca pyFirmata.
importar pyfirmata
Definir pin en el Arduino para conectar el LED
led_pin = 9
Ahora, tenemos que escribir el nombre del puerto serie en el que se conecta la placa Arduino usando la función pyfirmata.Arduino () y luego hacer una instancia asignando puerto en la variable de la placa .
board = pyfirmata.Arduino ("/ dev / ttyACM0") print "El código se está ejecutando"
En tiempo de bucle, hacen de LED de alta y baja pin usando board.digital.write () la función y proporcionar inmediatamente usando board.pass_time () función.
while True: board.digital.write (0) board.pass_time (1) board.digital.write (1) board.pass_time (1)
Nuestro código está listo, guarde este código poniendo la extensión .py al nombre del archivo.
Abra el terminal de comando y escriba python blink.py para ejecutar el código en la placa Arduino. Asegúrese de que su placa Arduino esté conectada con su placa Raspberry Pi mediante un cable USB.
Ahora, puede ver el LED parpadeante en la placa Arduino.
El código completo para el LED parpadeante usando pyFirmata se proporciona al final.
LED de desvanecimiento en Arduino usando pyFirmata
Ahora, escribiremos código para atenuar el LED para que se familiarice con las funciones de pyFirmata. Este código es tan sencillo como el anterior. Debe usar dos bucles for , uno para aumentar el brillo y otro para disminuirlo.
En este código, hemos definido los pines de diferentes maneras como led = board.get_pin ('d: 9: p') donde d significa pin digital . Esta es una función de la biblioteca pyFirmata. Lea la documentación para obtener más detalles.
El código completo para Fading LED usando pyFirmata se proporciona al final.
Ahora, puede agregar más sensores a su sistema y hacerlo más genial, verifique nuestros otros proyectos de Arduino e intente construirlos usando Raspberry pi y Python.