Due schede microcontrollore a basso costo con fattore di forma ridotto si danno battaglia.
Nell'entusiasmante mondo dei microcontrollori, trovare il giusto equilibrio tra dimensioni e potenza di elaborazione per il tuo progetto di elettronica embedded è una priorità assoluta. Quando si cerca questa corrispondenza, Arduino Nano e Raspberry Pi Pico sono due scelte popolari che vengono spesso in mente.
Sfortunatamente, le esigenze specifiche del tuo progetto potrebbero non essere evidenti finché non sei immerso nel processo di implementazione. Esaminiamo alcune delle principali differenze e caratteristiche da cercare tra queste due schede rivali per aiutarti a scegliere il microcontrollore giusto per il tuo progetto.
Confronto hardware
In primo luogo, vale la pena notare che ci sono diverse opzioni tra cui scegliere nelle gamme Arduino Nano e Pico, non solo nei loro modelli base. Alcuni sono aggiornamenti al modello base mentre altri hanno funzionalità dedicate per adattarsi a determinate applicazioni. Ma questo dovrebbe rimanere: non esiste una scheda "migliore" per il tuo progetto di per sé, solo compromessi.
Arduino Nano
L'Arduino Nano, alimentato dall'ATmega328, è una scheda compatta e compatibile con la breadboard che offre funzionalità simili all'Arduino Duemilanove, ma con un fattore di forma diverso. Non ha un jack di alimentazione CC e utilizza un cavo USB Mini-B invece di uno standard.
Caratteristica |
Specifica |
---|---|
Microcontrollore |
ATmega328 |
Velocità dell'orologio |
16MHz |
Sram |
2KB |
Memoria flash |
32KB |
EEPROM |
1KB |
pin GPIO |
22 |
Pin analogici |
8 |
Pin PWM |
6 |
Tensione dei pin I/O |
5V |
Corrente del pin I/O |
40 mA |
Corrente pin 3,3 V |
50mA |
Tensione di alimentazione |
7-12V |
Dimensioni |
18 x 45 mm |
Lampone Pi Pico
Sebbene il Raspberry Pi Pico sia stato lanciato solo nel 2021, è già una scelta popolare nel mondo di MCU. Il cuore del Pico è un microcontrollore RP2040 basato su un Arm Cortex-M0+ dual-core processore.
Caratteristica |
Specifica |
---|---|
Microcontrollore |
SoC RP2040 con Arm Cortex-M0+ dual-core |
Velocità dell'orologio |
133 Mhz |
RAM su chip |
264KB |
Memoria flash su chip |
2MB |
Memoria flash off-chip |
Fino a 16 MB tramite bus QSPI dedicato |
pin GPIO |
26 |
Analogico nei canali |
3 |
Canali PWM |
16 |
Tensione dei pin I/O |
3,3 V |
Termometro |
Incluso |
Tensione di alimentazione |
5V |
Dimensioni |
51,3 x 21 mm |
In termini di capacità hardware, Raspberry Pi Pico ha chiaramente un vantaggio rispetto allo standard Arduino Nano, con un processore più veloce, più memoria flash, più pin GPIO e un controllo esteso su PWM segnali. Inoltre, il processore dual-core presente sul Pico va bene per i programmi multithread.
Tuttavia, il Raspberry Pi Pico manca di EEPROM, spesso essenziale per i progetti basati su microcontrollore. Inoltre, non sarai in grado di eseguire il tuo progetto con una batteria da 9 V senza un regolatore di tensione.
Applicazioni IoT
Mentre i modelli base mancano di connettività wireless, le gamme Raspberry Pi Pico e Arduino Nano offrono una selezione di schede speciali con connettività wireless per applicazioni IoT. Alcune popolari schede IoT della serie Nano includono il Arduino Nano 33 IoT e il Arduino Nano RP2040 Connetti (che utilizza lo stesso SoC del Raspberry Pi Pico).
Nel caso delle schede Raspberry Pi Pico IoT, hai l'opzione di Pico W e Pico WH. Entrambi hanno connettività Wi-Fi e Bluetooth, ma il Pico WH viene fornito con le intestazioni dei pin già collegate, quindi non è necessario saldarle sulla scheda.
Canali di comunicazione
Sia Raspberry Pi Pico che Arduino Nano offrono più canali di comunicazione per l'interfacciamento con altri dispositivi. Il Raspberry Pi Pico ha 2 UART (Universal Asynchronous Receiver/Transmitter), due I2C (Inter-Integrated Circuit) e due interfacce SPI (Serial Peripheral Interface), che forniscono opzioni per la comunicazione con altri dispositivi.
Se non sai già cosa sono, dai un'occhiata come funzionano le comunicazioni seriali UART, SPI e I2C e perché le usiamo ancora.
Il modello Arduino Nano standard ha solo uno di ciascuno dei canali di comunicazione: UART, I2C e SPI. Tuttavia, a meno che non si tratti di un progetto di grandi dimensioni, non avrai bisogno di tutti i canali di comunicazione disponibili su Pi Pico contemporaneamente, probabilmente nemmeno quando si utilizza la sua funzionalità PIO (vedi sotto). E nemmeno avere più interfacce suggerisce che sia automaticamente migliore poiché sappiamo che anche altri fattori giocano un ruolo.
Potenza di calcolo
I chip del microcontrollore utilizzati nelle schede Raspberry Pi Pico e Arduino Nano hanno i loro punti di forza e di debolezza. Ed è qui che dovrai fare il massimo compromesso.
processore
Nella maggior parte dei progetti Arduino, è probabile che la CPU trascorra il 99,9% del suo tempo in modalità di sospensione. Ciò suggerisce che la velocità della CPU non è così importante come si potrebbe immaginare, ad eccezione di scenari speciali come l'elaborazione dei dati in tempo reale. Il chip RP2040 utilizzato nel Raspberry Pi Pico è un processore dual-core a 32 bit che offre una maggiore elaborazione potenza e prestazioni rispetto al chip ATmega328P utilizzato nel modello base Arduino Nano, che è un chip a 8 bit processore.
Il chip RP2040 è inoltre dotato di una caratteristica unica: macchine a stati PIO (Input/Output programmabili), che consentono trasferimenti paralleli di dati ad alta velocità e interfacce periferiche personalizzate. Ciò lo rende adatto ad applicazioni che richiedono l'elaborazione dei dati in tempo reale, come la robotica e l'automazione.
RAM
Come con la CPU, la maggior parte delle applicazioni del microcontrollore utilizza solo una piccola quantità di RAM. Tuttavia, se stai svolgendo attività che richiedono più RAM, come i progetti IoT, dovresti optare per la scheda con più RAM integrata: il Raspberry Pi Pico.
Ecosistemi di programmazione
Anche gli ecosistemi di programmazione di Raspberry Pi Pico e Arduino sono fattori importanti da considerare quando si sceglie tra le due schede. Raspberry Pi Pico utilizza MicroPython e C/C++ come linguaggi di programmazione principali.
Arduino utilizza l'IDE di Arduino come ambiente di programmazione principale, basato su C/C++. L'IDE di Arduino è noto per la sua semplicità e facilità d'uso, con un'interfaccia intuitiva e un'ampia raccolta di librerie ed esempi. Ha anche una vasta e attiva comunità di utenti, fornendo ampio supporto e risorse per principianti e sviluppatori esperti.
C/C++ è un linguaggio potente e versatile che fornisce un accesso di basso livello all'hardware, consentendo applicazioni più complesse e critiche per le prestazioni.
MicroPython è un linguaggio di programmazione basato su Python che offre un modo semplice e intuitivo per programmare la scheda, rendendolo ideale se hai già familiarità con Python o preferisci un linguaggio di livello superiore. Se preferisci ancora l'ambiente Arduino ma vuoi lavorare con MicroPython, abbiamo coperto cos'è l'IDE Arduino MicroPython in dettaglio.
Costo
Ignorando tutte le schede clone di produttori di terze parti, Raspberry Pi Pico è molto più economico di tutti i modelli Arduino Nano autentici, inclusi quello che esegue lo stesso processore RP2040 da Raspberry Pi. Ad esempio, il Pico standard costa solo $ 4, rispetto ai $ 25 per il modello base Arduino Nano.
Per funzionalità aggiuntive, dovresti essere disposto a scavare più a fondo nelle tue tasche, qualunque piattaforma tu scelga.
Compatibilità con altro hardware e librerie esistenti
Sia Pico che Arduino hanno una vasta gamma di moduli hardware compatibili e shield che possono essere estesi la loro funzionalità e consentono una facile integrazione con sensori, attuatori, display e altro dispositivi.
Arduino esiste da molto tempo e ha una vasta collezione di scudi ampiamente utilizzati e ben documentati. La comunità di Arduino ha sviluppato innumerevoli librerie di codice per diverse funzionalità, semplificando la ricerca di codice già scritto per un'ampia gamma di applicazioni. Inoltre, anche le schede di terze parti sono compatibili con Arduino, il che semplifica la scalabilità del progetto.
Il Raspberry Pi Pico è migliore?
Il concetto di una scheda "migliore" è soggettivo e dipende dai requisiti e dai compromessi dei singoli progetti. Mentre il Raspberry Pi Pico eccelle nella potenza di elaborazione e nelle funzionalità avanzate come PIO, la più ampia community e la libreria software di Arduino lo rendono una scelta eccellente per molti progetti.