Quando si tratta di scegliere un computer a scheda singola, Arduino e Raspberry Pi sono i grandi nomi che prenderete in considerazione. Ma quale scegliere? Per cosa viene utilizzato al meglio Arduino? Quali sono gli svantaggi dell'utilizzo di un Raspberry Pi? E come decidi tra i due? Può essere una decisione difficile, quindi lo analizzeremo qui per te.
Ai fini di questo articolo, parlerò di Arduino Uno R3 e Raspberry Pi 2 Model B. Esistono molte versioni di entrambe le schede e ci sono molte alternative a Pi e Arduino che forniscono specifiche e capacità diverse , ma questi due sono i pilastri di ogni linea al momento.
Arduino Vs Raspberry Pi
Scopo generale
Sebbene sia Arduino che Raspberry Pi siano piccole macchine molto versatili, entrambi hanno cose specifiche in cui sono bravi.
Arduino, ad esempio, è un microcontrollore, il che significa che eccelle nel controllo di piccoli dispositivi come sensori, motori e luci. Questo è il motivo per cui Arduino è utilizzato al meglio per progetti come la costruzione di una luce di sveglia, di un rilevatore di movimento o anche di un piccolo robot. Sentirai anche parlare di "prototipazione" con un Arduino, che è il processo di creazione rapida di un prototipo di dispositivo elettronico. Se il prototipo ha successo e il dispositivo funziona, può essere realizzato su scala maggiore con circuiti stampati.
Il Raspberry Pi, d'altra parte, non è un microcontrollore e non è fatto per controllare sensori e altre cose del genere. È un intero computer, con il proprio sistema operativo, ed è concepito per essere utilizzato come uno solo. Il sistema operativo è piuttosto minimale, quindi avrai bisogno di alcune conoscenze di programmazione per ottenerne il massimo, ma questa è una delle cose in cui Raspberry Pi è eccezionale: aiutare le persone a imparare a programmare. È anche molto bravo a fungere da server: può comunicare con altri computer, fungere da alternativa a un Chromecast, fornire informazioni e registrare dati.
Un redditor lo ha detto perfettamente: “Il mio Pi è più bravo a parlare con le persone (eseguendo un server web). Il mio Arduino è più bravo a parlare con le parti della macchina (motori in movimento). "
Hardware
Quando guardi un Arduino accanto a un Raspberry Pi, è molto chiaro che l'hardware differisce un po 'tra i due. Analizziamolo.
Energia
I requisiti di alimentazione di Arduino sono molto semplici; puoi collegarlo al tuo computer o a una batteria e inizierà immediatamente a eseguire il codice. Se l'alimentazione è scollegata, si fermerà; non è necessario eseguire un processo di arresto. Il Raspberry Pi, d'altra parte, poiché ha un sistema informatico più completo, dovrebbe essere spento come un normale computer e può essere danneggiato da interruzioni di corrente.
Sia l'Arduino che il Raspberry Pi hanno un assorbimento di potenza molto basso e possono essere eseguiti per un tempo molto lungo senza utilizzare molta elettricità.
Connettività
Il Raspberry Pi è pronto per essere connesso a Internet; ha una porta ethernet integrata ed è molto facile ottenere un dongle wifi USB per fornirgli anche la connettività wireless (puoi vederne uno molto piccolo nell'immagine sotto). Questo è uno dei motivi per cui il Pi è il dispositivo preferito per cose come server Web personali, server di stampa e VPN.
L'Arduino, d'altra parte, non ha alcuna capacità integrata per la connettività. Se desideri collegarlo a Internet, dovrai aggiungere un ulteriore componente hardware che includa una porta Ethernet. Se desideri la connettività Wi-Fi, avrai di nuovo bisogno di un altro componente hardware. Poiché Arduino è pensato per progetti hardware anziché software, ha bisogno di un po 'di armeggiare per collegarlo.
Pin I / O
I pin di input / output sono ciò che consente al computer a scheda singola di comunicare con le cose ad esso collegate. Ad esempio, il tuo Raspberry Pi potrebbe accendere un LED. Oppure il tuo Arduino potrebbe attivare un motore. Se stai cercando connessioni hardware, questi pin sono ciò di cui hai bisogno. Il Raspberry Pi 2 racchiude 17 di questi pin, mentre Arduino Uno ne offre 20; puoi vederne alcuni usati nell'immagine qui sotto.
Un'altra differenza significativa nei pin I / O tra le due schede è la risoluzione temporale alla quale è possibile controllarle. Poiché il Raspberry Pi è un computer completo, ha una serie di cose che competono per il tempo della CPU, il che significa che può avere qualche difficoltà a ridurre i tempi a piccole frazioni di secondo. E ha bisogno di software per interfacciarsi correttamente con sensori e altri dispositivi. L'Arduino, d'altra parte, può cambiare l'uscita e monitorare l'ingresso sui suoi pin fino a un tempo molto ridotto.
Conservazione
Arduino viene fornito con 32 KB di memoria integrata, che è appena sufficiente per memorizzare il codice che fornisce le istruzioni per il suo programma corrente. Non puoi utilizzare questo spazio di archiviazione per app, video, foto o qualsiasi altra cosa. Il Raspberry Pi, d'altra parte, non viene fornito con alcuna memoria integrata, ma ha una porta micro SD, quindi puoi aggiungere tutto lo spazio di archiviazione che desideri. L'aggiunta di 32 GB di spazio di archiviazione ti costerà solo circa $ 12 con una scheda micro SD SanDisk e puoi facilmente aggiungere fino a 128 o 256 GB se ne hai bisogno.
USB
Poiché Arduino non è progettato per comunicare con i computer, non viene fornito di serie con alcuna porta USB che puoi utilizzare per questo tipo di comunicazione. Una singola porta può essere utilizzata per collegare Arduino al tuo computer tramite la porta USB del tuo computer, ma questo è tutto. Il Raspberry Pi, d'altra parte, ha quattro porte USB che puoi utilizzare per collegarlo a un router, una stampante, un disco rigido esterno o un'ampia varietà di altri dispositivi.
Software
Ora che abbiamo delineato le differenze tra l'hardware di Arduino e Raspberry Pi, possiamo parlare di software. Per capire davvero quando vorresti usare una tavola o l'altra, devi sapere cosa può fare ciascuna di esse fare, e molto dipende dal software.
Per complicare il problema, Arduino non viene fornito con alcun software di per sé. Ha capacità molto basilari per interpretare il codice che riceve e alterare le funzioni dell'hardware a cui è collegata, ma la scheda non ha un sistema operativo o alcun tipo di interfaccia oltre all'ambiente di sviluppo integrato (IDE) di Arduino.
Ciò significa in pratica che è necessario creare il software che gira su Arduino. Usando l'IDE, creerai una serie di comandi che Arduino interpreterà ed eseguirà. Una semplice serie di istruzioni potrebbe dire qualcosa come "accendi la luce rossa per tre secondi, spegnila, accendi la luce verde per tre secondi, spegnila, ripeti". Ovviamente puoi fare cose molto più complicate, ma dovrai comunque creare il programma da solo.
Fortunatamente, esiste un'enorme comunità Arduino che abbraccia il mondo intero, il che significa che se c'è qualcosa che vuoi fare con un Arduino, probabilmente qualcuno l'ha fatto. Puoi guardare il loro codice, modificarlo e fare in modo che il tuo Arduino faccia esattamente quello che vuoi. Questo è anche un ottimo modo per apprendere i principi della codifica e della prototipazione, motivo per cui Arduino è un'ottima scelta per chiunque sia interessato all'elettronica.
Al contrario, il Raspberry Pi viene fornito con un sistema operativo completamente funzionante chiamato Raspbian. Questo sistema operativo è basato su Debian Linux ed è stato creato appositamente per Pi. Esistono numerosi altri sistemi operativi che è possibile utilizzare con la scheda, la maggior parte dei quali sono basati su Linux, ma è anche possibile installare Android.
I sistemi operativi non sono gli unici software che il Pi esegue, però; ci sono anche una serie di app utili che puoi usare per svolgere diverse attività. Uno degli usi più comuni di un Raspberry Pi è come server multimediale, per il quale sia Kodi che Plex sono app popolari. Puoi scaricare giochi, applicazioni server, calcolatrici e persino la suite per ufficio LibreOffice.
Naturalmente, puoi anche scrivere i tuoi programmi per Raspberry Pi, e questo è uno dei migliori motivi per ottenerne uno: imparare a programmare. Python è il linguaggio consigliato per Pi, ma C, C ++, Java e Ruby sono tutti preinstallati sulla scheda. Mentre Arduino può essere ottimizzato per supportare altre lingue, la lingua nativa di Arduino è la scelta migliore; se stai cercando di imparare una lingua più utile, il Pi ti darà più opzioni.
In espansione
Sia Arduino che Raspberry Pi sono piccole macchine molto capaci che possono aiutarti a imparare e fare molte cose, ma a un certo punto, probabilmente vorrai andare oltre le basi e provare qualcosa di un po 'più avanzato.
Questo è uno dei luoghi in cui l'Arduino brilla. Ci sono centinaia di chip che ti consentono di espandere le capacità della scheda di serie con cose come connettività ethernet e wifi, un migliore controllo del motore, funzionalità di altoparlanti e microfono, un touchscreen, telecamere, trasmettitori radio, elaborazione grafica e quasi qualsiasi altra cosa tu possa pensare di. Per $ 20 a $ 40, puoi trasformare il tuo Arduino in qualcos'altro completamente (come questo scudo GPS Adafruit).
Questi chip sono chiamati scudi e sono molto facili da installare; tutto ciò che devi fare è posizionarli sopra il tuo Arduino e, in alcuni casi, saldarli in posizione. Molti possono semplicemente sedersi sopra, rendendo l'installazione un gioco da ragazzi.
Il Raspberry Pi è una scheda più autonoma e non ha le stesse capacità di espansione di Arduino. Ci sono un certo numero di "cappelli" disponibili che aggiungono hardware aggiuntivo al Pi, tuttavia, che ti danno alcune possibilità molto interessanti. Ad esempio, puoi aggiungere sensori capacitivi, GPS, un touchscreen, pannelli RGB e persino un sensore di gesti 3D.
Le porte USB consentono anche di aggiungere funzionalità con i dongle; ad esempio, per ottenere la connettività wifi, tutto ciò che devi fare è collegare il dongle wifi. Tuttavia, anche con queste opzioni, il Raspberry Pi non ha tante opzioni per aggiungere funzionalità. Per non dire che il Pi non è in grado; puoi ancora fare quasi tutto ciò che vuoi con esso, potresti aver bisogno di essere un po 'più creativo (o collegarlo a un Arduino!).
Come decidere tra Arduino e Raspberry Pi
Ora che hai visto esattamente come sono diversi Arduino e Raspberry Pi, dovresti avere un'idea abbastanza chiara di come decidere tra i due se vuoi averne uno. Se vuoi creare dispositivi, come robot, timer e sensori, Arduino è la strada da percorrere; la sua interfaccia di basso livello e le facili connessioni I / O lo rendono il modo migliore per costruire qualcosa. Il Raspberry Pi, d'altra parte, è un fantastico server o sistema di archiviazione dati ed è ottimo per imparare a programmare nelle lingue tradizionali. Se vuoi comunicare con altri computer, il Pi è la tua scheda.
Ma perché limitarti a uno? Perché non prenderli entrambi? Sono entrambi molto convenienti e puoi ottenere kit per principianti per meno di $ 100 che includono tutto il necessario per iniziare a lavorare sui progetti. Da un semplice robot a un server web completo, puoi ottenere un semplice kit per aiutarti durante il processo di configurazione.
E quando inizi a diventare ancora più avanzato, puoi utilizzare sia Arduino che Pi insieme per azionare sensori e servi con istruzioni o feedback online! Le opzioni sono infinite.
Raspberry Pi vs. Arduino: tabella di confronto
Arduino Uno | Raspberry Pi 2 Modello B | |
---|---|---|
Costo (modello base) | 20 | 39 |
Processore | AVR da 16 MHz ATmega328P | 900 MHz Broadcom ARM Cortex-A7 |
Conservazione | 32 KB | n / A |
RAM | 2 KB | 1 GB |
Pin di I / O | 20 | 17 |
OS | n / A | Raspbian, altre varietà di Linux, Android |
Le lingue | Arduino, | Python, C, C ++, Java, Ruby |
Meglio per | Hardware / prototipazione | Software / server |
Alimentazione elettrica | Presa USB o CC da 5 V | 5V USB |
VEDERE ANCHE: 8 migliori PC Stick
Questa guida è stata utile? Hai altre domande sul fatto che dovresti ottenere Arduino o Pi? Lascia le tue domande e pensieri qui sotto!
Crediti immagine: Sho Hashimoto tramite flickr, Manoel Lamos tramite flickr, Simon Monk tramite raspberrypi.org.