- Requisiti
- Installazione di PyFirmata in Arduino utilizzando Raspberry Pi
- Spiegazione del codice
- LED in dissolvenza su Arduino utilizzando pyFirmata
Sebbene Raspberry Pi e Arduino siano due hardware diversi in termini di applicazioni e struttura, entrambi sono considerati due piattaforme hardware open source concorrenti. Entrambi hanno una comunità e un sostegno molto forti. Oggi cambieremo leggermente le cose e ti mostreremo come trarne vantaggio entrambi. Se hai entrambe le schede Arduino e Raspberry pi, questo articolo ti mostrerà come utilizzare Raspberry pi e Python per controllare Arduino.
Useremo PyFirmata firmware per dare comandi al Arduino utilizzando script python Raspberry Pi. PyFirmata è fondamentalmente un pacchetto di libreria precostruito di un programma python che può essere installato in Arduino per consentire la comunicazione seriale tra uno script python su qualsiasi computer e un Arduino. Questo pacchetto python può dare accesso per leggere e scrivere qualsiasi pin su Arduino. Quindi qui eseguiremo il programma python su Arduino usando Raspberry pi.
Quindi in questo tutorial trarremo vantaggio da questa libreria e la useremo nella nostra scheda Arduino per controllare Arduino usando Raspberry Pi.
Requisiti
- Raspberry Pi con Raspbian OS installato al suo interno
- Arduino Uno o qualsiasi altra scheda Arduino
- Cavo USB Arduino
- GUIDATO
In questo tutorial utilizzo un monitor esterno utilizzando il cavo HDMI per connettermi a Raspberry Pi. Se non disponi di un monitor, puoi utilizzare il client SSH (Putty) o il server VNC per connetterti a Raspberry pi utilizzando laptop o computer. Se trovi qualche difficoltà, segui la nostra Guida introduttiva a Raspberry Pi.
Installazione di PyFirmata in Arduino utilizzando Raspberry Pi
Per caricare il firmware PyFirmata in Arduino, dobbiamo installare Arduino IDE in Raspberry Pi. Segui questi passaggi per l'installazione:
Passaggio 1: - Collega il Raspberry Pi a Internet. Apri il terminale di comando e digita il seguente comando e premi invio
sudo apt - get - y installa arduino python - serial mercurial
Aspetta qualche minuto, ci vorrà del tempo. Questo comando installerà l'IDE di Arduino nel tuo Raspberry Pi.
Passaggio 2: - Ora installeremo i file pyFirmata utilizzando il github fornito:
git clone https://github.com/tino/pyFirmata
Quindi esegui il seguente comando:
cd pyFirmata sudo python setup.py install
Passaggio 3: - Abbiamo installato tutti i file e le impostazioni richiesti.
Ora collega la tua scheda Arduino con Raspberry Pi usando il cavo USB e avvia Arduino IDE digitando arduino nella finestra del terminale.
Passaggio 4: - Quindi digita il comando lsusb per verificare se Arduino è connesso al tuo raspberry pi.
In Arduino IDE, vai su strumenti e scegli la tua scheda e la porta seriale.
Passaggio 5: - Carica il firmware PyFirmata su Arduino facendo clic su File -> Esempi -> Firmata -> Firmata standard e quindi fai clic sul pulsante di caricamento. Come mostrato di seguito.
Abbiamo installato con successo il firmware pyFirmata nella scheda Arduino. Ora possiamo controllare il nostro Arduino usando Raspberry Pi.
Per dimostrazione lampeggeremo e spegneremo un LED su Arduino scrivendo codici Python in Raspberry Pi.
Spiegazione del codice
Per la parte di codifica, dovresti leggere la documentazione di pyFirmata per una migliore comprensione. Useremo le funzioni pyFirmata per scrivere il nostro codice. Puoi trovare la documentazione di pyFirmata seguendo il link.
Quindi iniziamo a scrivere il codice
Apri il tuo editor di testo preferito sul Raspberry Pi e importa la libreria pyFirmata.
import pyfirmata
Definisci il pin su Arduino per collegare il LED
led_pin = 9
Ora dobbiamo scrivere il nome della porta seriale su cui è collegata la scheda Arduino utilizzando la funzione pyfirmata.Arduino () e quindi creare un'istanza assegnando la variabile port in board .
board = pyfirmata.Arduino ("/ dev / ttyACM0") print "Code is running"
Nel ciclo while , rendi il pin del led ALTO e basso usando la funzione board.digital.write () e dai il ritardo usando la funzione board.pass_time () .
mentre True: board.digital.write (0) board.pass_time (1) board.digital.write (1) board.pass_time (1)
Il nostro codice è pronto, salva questo codice inserendo l' estensione .py nel nome del file.
Apri il terminale di comando e digita python blink.py per eseguire il codice sulla scheda Arduino. Assicurati che la tua scheda Arduino sia collegata alla scheda Raspberry Pi tramite cavo USB.
Ora puoi vedere il LED lampeggiante sulla scheda Arduino.
Alla fine viene fornito il codice completo per il lampeggio del LED utilizzando pyFirmata.
LED in dissolvenza su Arduino utilizzando pyFirmata
Ora scriveremo il codice per la dissolvenza del LED per familiarizzare con le funzioni di pyFirmata. Questo codice è facile come quello precedente. Devi usare due cicli per , uno per aumentare la luminosità e l'altro per diminuire la luminosità.
In questo codice, abbiamo definito i pin in modo diverso come led = board.get_pin ('d: 9: p') dove d significa pin digitale . Questa è una funzione della libreria pyFirmata. Leggi la documentazione per maggiori dettagli.
Alla fine viene fornito il codice completo per Fading LED utilizzando pyFirmata.
Ora puoi aggiungere più sensori al tuo sistema e renderlo più interessante, controlla i nostri altri progetti Arduino e prova a costruirli usando Raspberry pi e script python.