Come programmare un Arduino con un Raspberry Pi

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é:
- Non puoi usare un PC normale.
- 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
- Il Raspberry Pi consuma molto meno energia di un laptop.
- Puoi usarlo con una power bank quando non hai elettricità.
- Risparmia tempo quando lo stai già usando come terminale IoT.
Svantaggi
- 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
- Un Raspberry Pi con Raspberrry Pi OS e porte USB
- Un Arduino
- Un connettore USB di tipo A a USB di tipo B
- Periferiche del computer (monitor, tastiera e mouse)
- Resistenza da 250Ω (opzionale)
- Bulbo LED piccolo (di qualsiasi colore, opzionale)
- Breadboard e fili jumper (opzionali)
Installazione dell’Arduino IDE
Apri Chromium (o qualsiasi browser) e vai su https://www.arduino.cc/en/software.
Seleziona “Linux ARM 32 bit.”

- 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.

- 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.

- 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 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.

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

- 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.

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

Clicca su “Esegui” nella nuova finestra.
L’Arduino IDE dovrebbe essere disponibile in “Logo Pi -> Elettronica -> Arduino IDE.”

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

- 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.
Per salvare, clicca su “File -> Salva” o premi Ctrl + S sulla tastiera.
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.

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

- 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.

- 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.

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

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

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.