Autor: Rishabh Jain
compilación Tony
Aunque los términos de su aplicación y estructura, Frambuesa Pi y Arduino son dos equipos diferentes, pero se considera que son dos compitiendo plataforma de hardware libre. Ambos tienen una comunidad muy fuerte y apoyo. Hoy vamos a hacer algunos cambios, y le mostrará cómo usarlos. Si tiene tanto bordo pi Arduino y frambuesa, entonces este artículo le mostrará cómo utilizar la frambuesa pi y Python control de Arduino .
Vamos a utilizar PyFirmata firmware envía comandos a Arduino mediante script en Python Frambuesa Pi. PyFirmata esencialmente, las construcciones de programa de Python paquete de biblioteca, que pueden ser montados en Arduino para permitir la comunicación serie entre el pitón y la secuencia de comandos Arduino en cualquier ordenador. El paquete python puede acceder a cualquiera de los pines en la Arduino. Así pues, aquí vamos a utilizar el programa PI pitón frambuesa que se ejecuta en el Arduino.
Por lo tanto, en este tutorial, vamos a utilizar la biblioteca, y utilizarlo para controlar el desarrollo Arduino Arduino Pi de la frambuesa .
reclamación
- Raspbian sistema operativo instalado Frambuesa Pi
- Arduino Uno o cualquier otra tarjeta de desarrollo Arduino
- Arduino USB Line
- LED
En este tutorial, voy a conectar con Frambuesa Pi utilizando un monitor externo a través del cable HDMI. Si no hay un monitor, puede utilizar el cliente SSH (como masilla) o un servidor VNC es conectado a frambuesa pi o un ordenador portátil.
Frambuesa Pi PyFirmata montado en uso en Arduino
Para cargar el firmware PyFirmata Arduino, hay que instalar Arduino IDE en el Raspberry Pi. La instalación de acuerdo con los siguientes pasos:
- * Paso 1: Conectar a Internet ** Frambuesa Pi. Terminal y abierto escriba el comando siguiente y, a continuación, pulse Intro
sudo apt-get -y install arduino python-serial mercurial
Espere unos minutos, tomará algún tiempo. Este comando instalará Arduino IDE en su Frambuesa Pi.
- ** Paso 2: ** Ahora, vamos a utilizar el archivo de instalación pyFirmata github se especifica:
git clone https://github.com/tino/pyFirmata
A continuación, ejecute el siguiente comando:
cd pyFirmata
sudo python setup.py install
- Paso 3: Hemos instalado todos los archivos y configuraciones necesarias.
Ahora, con el cable USB Arduino Frambuesa Pi Juntas y conectada, a continuación, escriba en el IDE de Arduino Arduino inicia ventana de terminal.
- ** Paso 4: - ** y el comando lsusb tipo para comprobar si la conexión con Arduino Frambuesa Pi.
En el IDE de Arduino, vaya a Herramientas, a continuación, seleccione la tabla y puerto serie.
- Paso 5 **: ** haciendo clic en Archivo -> Ejemplo -> Firmware -> firmware estándar, y luego haga clic en el botón de carga para cargar el firmware en el Arduino PyFirmata, como se muestra a continuación.
Tenemos pyFirmata firmware de la tarjeta Arduino instalado correctamente. Ahora, podemos utilizar el control Frambuesa Pi Arduino.
Para demostrarlo, vamos a hacer LED parpadeante en el Arduino y calificado por la escritura de código Python en Raspberry Pi.
código Descripción
Para la sección de codificación, debe leer la documentación pyFirmata para comprender mejor, vamos a utilizar el código de función pyFirmata.
Abra su editor de texto favorito en su Frambuesa Pi, y luego importar la biblioteca pyFirmata.
import pyfirmata
Arduino se define en la clavija para conectar el LED
led_pin = 9
Ahora, tenemos que utilizar pyfirmata.Arduino () la función de conexión a bordo de escritura Arduino nombre de puerto serie , a continuación, crear una instancia de la asignación del puerto por la variable bordo.
board = pyfirmata.Arduino("/dev/ttyACM0")
print "Code is running”
En el bucle while, utilizando board.digital []. Write () la función LED PIN es alta y baja, utilizando board.pass_time función para proporcionar retardo.
while True:
board.digital[led_pin].write(0)
board.pass_time(1)
board.digital[led_pin].write(1)
board.pass_time(1)
Nuestro código está listo para guardar el archivo en el código por la extensión .py.
Abrir un terminal de comandos, y el tipo blink.py Python para ejecutar el código placa Arduino. Asegúrese de utilizar un cable USB está conectado con el desarrollo de juntas de las placas Arduino Frambuesa Pi.
Ahora se puede ver el LED parpadea Arduino bordo.
PyFirmata calificó mediante el LED en el Arduino
Ahora, vamos a escribir el código para el gradiente de LED para que esté más familiarizado con la función pyFirmata. Este código es el mismo que con un simple código. Debe utilizar dos bucles, uno para aumentar el brillo y el otro para el menor brillo.
En este código, definimos los pasadores de diferentes maneras, tales como LED = board.get_pin ( 'd :. 9: P') , en el que d representa los pines digitales. Se trata de una biblioteca funcional pyFirmata, parte del código de la siguiente manera:
led = board.get_pin('d:9:p')
while True:
# increase
for i in range(0, 10):
brightness = brightness + 0.1
print "Setting brightness to %s" % brightness
led.write(brightness)
board.pass_time(delay)
Ahora puede agregar más sensores en el sistema, intenta utilizar los scripts pi y Python frambuesa para construirlas.
Coloque el código completo:
#Python code for LED blink:
import pyfirmata
led_pin = 9
board = pyfirmata.Arduino("/dev/ttyACM0")
while True:
board.digital[led_pin].write(0)
board.pass_time(1)
board.digital[led_pin].write(1)
board.pass_time(1)
#Python code for Fading LED:
import time
import pyfirmata
delay = 0.3
brightness = 0
board = pyfirmata.Arduino("/dev/ttyACM0")
led = board.get_pin('d:9:p')
while True:
# increase
for i in range(0, 10):
brightness = brightness + 0.1
print "Setting brightness to %s" % brightness
led.write(brightness)
board.pass_time(delay)
# decrease
for i in range(0, 10):
print "Setting brightness to %s" % brightness
led.write(brightness)
brightness = brightness - 0.1
board.pass_time(delay)
Enfoque en número público de micro-canales: TonyCode
el grupo de intercambio de aprendizaje de Arduino: 868 283 450
Más, celebro la atención del número público. Barra el micro-canal para seguir el código Fanger Wei: