Come programmare un Arduino con un Raspberry Pi

Arduino E Rpi

Eseguire un programma su un Arduino è facile, ma hai già provato a farlo con un Pi? Il Raspberry Pi è abbastanza potente da essere un computer autonomo ed è anche abbastanza buono per programmare un microcontrollore.

Qui utilizziamo un Raspberry Pi 3 Model B+ per far lampeggiare un LED su un Arduino Uno!

Indice

  • Perché vuoi usare un Raspberry Pi per programmare Arduino
  • Le cose di cui avrai bisogno
  • Installazione dell’Arduino IDE
  • Programmazione con l’Arduino IDE
  • Etichetta Arduino
  • Domande frequenti

Divideremo questo in due parti: come installare l’Arduino IDE e come utilizzare l’IDE su Raspberry Pi. Sebbene sia possibile programmare l’Arduino tramite Platformio, farlo in questo modo dovrebbe essere molto più semplice per chi è nuovo.

Perché vuoi usare un Raspberry Pi per programmare Arduino

Tipicamente, vorresti farlo perché:

  1. Non puoi usare un PC normale.
  2. Sei interessato all’esperienza di apprendimento.

Ma c’è di più. In effetti, c’è un buon compromesso tra l’uso di un PC autonomo e l’uso del tuo Raspberry Pi!

Vantaggi

  1. Il Raspberry Pi consuma molto meno energia di un laptop.
  2. Puoi usarlo con una power bank quando non hai elettricità.
  3. Risparmia tempo quando lo stai già usando come terminale IoT.

Svantaggi

  1. Il surriscaldamento potrebbe diventare un problema per il Raspberry Pi se non hai ventilazione.

Così com’è, il Raspberry Pi è abbastanza buono se stai facendo un progetto IoT veloce, da completare in un fine settimana. Collega i tuoi sensori, periferiche e Arduino, quindi digita il tuo codice per vedere come funziona insieme al resto del tuo sistema.

Ma se sei ancora nella fase di “devo capire come funziona questo circuito”, allora ti prego di usare un PC desktop appropriato. Ti aiuterà a evitare mal di testa.

Le cose di cui avrai bisogno

  1. Un Raspberry Pi con Raspberrry Pi OS e porte USB
  2. Un Arduino
  3. Un connettore USB di tipo A a USB di tipo B
  4. Periferiche del computer (monitor, tastiera e mouse)
  5. Resistenza da 250Ω (opzionale)
  6. Bulbo LED piccolo (di qualsiasi colore, opzionale)
  7. Breadboard e fili jumper (opzionali)

Installazione dell’Arduino IDE

  1. Apri Chromium (o qualsiasi browser) e vai su https://www.arduino.cc/en/software.

  2. Seleziona “Linux ARM 32 bit.”

Pagina iniziale di Chromium Arduino con freccia

  1. Questo ti porterà a una pagina che ti consente di scaricare e/o donare. Puoi cliccare su “JUST DOWNLOAD” se non vuoi fare una donazione.

Pagina di download e donazione di Chromium Arduino

  1. Questo dovrebbe aprire una nuova finestra. Puoi cambiare il nome del file nella parte superiore e la posizione di download a sinistra. Il pulsante “Salva” si trova nell’angolo in basso a destra.

Cartella di download di Chromium Arduino

  1. Lo troverai nella cartella Download (o nella cartella che hai scelto) quando il download sarà completato. Fai doppio clic su di esso per avviare l’app Archiver. Potrebbe volerci un paio di minuti prima che si apra.

Archiver Raspberry Pi Arduino in apertura

  1. Archiver aprirà il tuo file, ma ci vorrà un po ‘per terminare la lettura. C’è un cerchio in basso a sinistra che lampeggia di rosso e verde. Aspetta che termini prima di fare qualsiasi altra cosa. Puoi anche prendere un bicchiere d’acqua a questo punto.

Archiver Raspberry Pi estraendo file

  1. Clicca su “Estrai file.” Questo è il riquadro aperto, marrone, con una freccia arancione che punta a destra.

Pulsante Archiver Raspberry Pi Estrai file

  1. Questo apre una nuova finestra che ti consente di scegliere alcune impostazioni. Puoi cambiare il valore nella casella di testo in alto per puntare alla cartella “Download”. In caso contrario, dovrebbe puntare alla cartella “tmp” per impostazione predefinita. Clicca su “Estrai” verso il basso a destra per completare il download.

Finestra di estrazione Archiver Raspberry Pi

  1. Chiudi Archiver, quindi vai alla nuova cartella e fai doppio clic sul file “install.sh”.

Esplora file Raspberry Pi Install Sh

  1. Clicca su “Esegui” nella nuova finestra.

  2. L’Arduino IDE dovrebbe essere disponibile in “Logo Pi -> Elettronica -> Arduino IDE.”

Vassoio icone Raspberry Pi

Programmazione con l’Arduino IDE

  1. Esegui l’Arduino IDE dal logo Pi. Troverai una finestra verde in cui puoi scrivere il tuo codice.

Arduino Ide Raspberry Pi

  1. Copia e incolla il seguente codice:
void setup(){  
// inserisci qui il tuo codice di configurazione, da eseguire una sola volta:  
  Serial.begin(9600);  
  pinMode(LED_BUILTIN, OUTPUT);  
}  
  
void loop(){  
// inserisci qui il tuo codice principale, da eseguire ripetutamente:  
  digitalWrite(LED_BUILTIN, HIGH);  
  delay(500);  
  Serial.println("LED acceso");  
  digitalWrite(LED_BUILTIN, LOW);  
  delay(500);  
  Serial.println("LED spento");  
}

Il codice fa accendere il LED e stampare “LED acceso” sul Monitor Seriale per 0,5 secondi, quindi fa l’opposto, spegnendo il LED e stampando “LED spento” per lo stesso intervallo di tempo.

  1. Per salvare, clicca su “File -> Salva” o premi Ctrl + S sulla tastiera.

  2. Collega i cavi. L’Arduino Uno utilizza un connettore USB di tipo A a USB di tipo B. Il lato quadrato va all’Arduino, mentre il lato rettangolare va al Raspberry Pi.

Connettore USB di tipo A a tipo B 2

  1. Per caricare su Arduino, clicca su “Sketch -> Carica” o premi Ctrl + U sulla tastiera.

Pulsante di caricamento Arduino Ide

  1. Durante il caricamento, i LED TX e RX lampeggiano rapidamente, quindi eseguono il tuo programma, che fa accendere o spegnere il LED ogni 0,5 secondi.

Arduino Raspberry Pi Led Interno 3

  1. Per rendere le cose un po’ più facili da vedere, puoi provare a collegare un bulbo LED e una resistenza da 250Ω tra D13 e GND. Fai questo su una breadboard per rendere più semplice e assicurati di disconnettere l’Arduino dal Raspberry Pi prima di fare qualsiasi cosa con i pin.

Schema Ltspice Arduino LED esterno

  1. Se hai fatto tutto bene, il bulbo LED dovrebbe accendersi e spegnersi a intervalli regolari di 0,5 secondi.

Arduino Blink Esterno

  1. Per accedere al Monitor Seriale, clicca su “Strumenti -> Monitor Seriale” o premi Ctrl + Maiusc + M sulla tastiera.

Monitor Seriale Arduino Ide

Etichetta Arduino

Detto questo, dovresti essere in grado di iniziare a realizzare qualsiasi cosa con Raspberry Pi e Arduino. Per tornare indietro un po’, se hai intenzione di farlo spesso, devi imparare un po’ a semplificare le cose con l’Arduino.

Ricorda sempre la frase: pin spenti, codice su, alimentazione spenta.

Pin Spenti

Iniziamo rimuovendo tutti i cavi dai pin. Se impieghi molto tempo su un nuovo progetto, c’è la possibilità che tu abbia già dimenticato le designazioni dei pin. Potresti, ad esempio, collegare un pin di uscita su “HIGH” insieme a un altro pin di uscita su “LOW.” Questo è un modo semplice per danneggiare un pin GPIO su un chip microcontrollore!

Codice Su

Codice su è semplice: carica il tuo codice. Tieni sempre presente che l’Arduino è sempre alimentato mentre è connesso alla porta USB.

Alimentazione Spenta

Infine, quando devi aggiornare i tuoi circuiti, spegni sempre l’alimentazione rimuovendo l’Arduino da tutte le fonti di alimentazione. L’ultima cosa che vorresti è inserire il cavo sbagliato nel posto sbagliato al momento peggiore per far uscire del fumo da quello che stai facendo. Ricorda, i cortocircuiti possono rovinare il tuo progetto all’istante.

Domande Frequenti

Puoi programmare anche l’Arduino Uno su Raspberry Pi?

Qualsiasi scheda, purché sia supportata dall’Arduino IDE, funzionerebbe con Raspberry Pi. È fondamentalmente la stessa cosa che programmare su un normale PC con una distribuzione Linux.

Quali schede Raspberry Pi funzioneranno con questo metodo?

La capacità di programmare Arduino dovrebbe funzionare con tutte le schede microprocessore Raspberry Pi tranne lo Zero, che non ha porte USB integrate. Questo non funzionerà nemmeno con il Nano, che non può eseguire Raspbery Pi OS.

Posso eseguire più schede Arduino su Raspberry Pi contemporaneamente?

Sì, puoi, ma c’è un’eccezione: l’uscita USB del Raspberry Pi è limitata a circa 1,2A di corrente. Se stai usando più servo, farli muovere tutti contemporaneamente potrebbe causare il riavvio di alcune schede dopo aver subito una brusca caduta di corrente.