Când vine vorba de alegerea unui calculator cu o singură bord, Arduino și Raspberry Pi sunt numele pe care îl vei lua în considerare. Dar cine ar trebui să alegeți? Pentru ce este cel mai bine folosit Arduino? Care sunt dezavantajele utilizării unui Raspberry Pi? Și cum decideți între cei doi? Poate fi o decizie dificilă, așa că o vom rupe aici pentru tine.
În scopul acestui articol, voi discuta Arduino Uno R3 și Raspberry Pi 2 Model B. Există multe versiuni ale ambelor placi și există o mulțime de alternative la Pi și Arduino care oferă diferite specificații și capabilități, dar acestea sunt în acest moment principalitățile fiecărei linii.
Arduino vs Raspberry Pi
Scop general
În timp ce atât Arduino, cât și Raspberry Pi sunt mașini foarte versatile, ambele au lucruri specifice pe care le sunt bune.
Arduino, de exemplu, este un microcontroler, ceea ce înseamnă că el excelează în controlul dispozitivelor mici precum senzorii, motoarele și luminile. Acesta este motivul pentru care Arduino este cel mai bine folosit pentru proiecte cum ar fi construirea unei lumini trezite, alarma detectorului de mișcare sau chiar un mic robot. Veți auzi, de asemenea, oamenii vorbesc despre "prototip" cu un Arduino, care este procesul de creare rapidă a unui prototip de dispozitiv electronic. Dacă prototipul are succes și dispozitivul funcționează, acesta poate fi realizat pe scară mai largă cu plăci de circuite imprimate.
Zmeura Pi, pe de altă parte, nu este un microcontroler și nu este făcută pentru controlul senzorilor și a altor lucruri de genul asta. Este un computer întreg, cu propriul său sistem de operare, și este destinat să fie folosit ca unul. Sistemul de operare este destul de minim, deci veți avea nevoie de câteva cunoștințe de codificare pentru a profita la maximum de el, dar acesta este unul dintre lucrurile pe care Raspberry Pi le face minunate: ajuta oamenii să învețe să codifice. Este, de asemenea, foarte bun la a acționa ca un server: poate comunica cu alte computere, poate servi ca alternativă la un Chromecast, să furnizeze informații și date din jurnal.
Un redditor a pus-o perfect: "Pi este mai bine să vorbești cu oamenii (care rulează un server web). Arduino mea este mai bine să vorbească cu piese de mașini (motoare în mișcare). "
Hardware
Când vă uitați la un Arduino de lângă un Raspberry Pi, este foarte clar că hardware-ul diferă destul de puțin între cele două. Haideți să-l distrugem.
Putere
Cerințele pentru alimentarea cu energie ale lui Arduino sunt foarte simple; îl puteți conecta la computer sau la un acumulator și va începe imediat să ruleze codul. Dacă alimentarea este deconectată, se va opri; nu este nevoie să executați un proces de închidere. Raspberry Pi, pe de alta parte, pentru ca are un sistem de calcul cu mai multa performanta, ar trebui sa fie inchis ca un computer obisnuit si poate fi distrus de taieturi de curent.
Atât Arduino, cât și Raspberry Pi au o remiză foarte mică de putere și pot fi rulate de foarte mult timp fără a folosi multă energie electrică.
Conectivitate
Raspberry Pi vine gata sa fie conectat la internet; are un port Ethernet încorporat și este foarte ușor să obțineți un dongle USB wifi pentru a oferi conectivitate wireless (puteți vedea o imagine foarte mică în imaginea de mai jos). Acesta este unul dintre motivele pentru care Pi este dispozitivul de alegere pentru lucruri precum servere personale de web, servere de imprimante și VPN-uri.
Arduino, pe de altă parte, nu are nici o capacitate integrată pentru conectivitate. Dacă doriți să-l conectați la internet, va trebui să adăugați o bucată suplimentară de hardware care include un port ethernet. Dacă doriți conectivitate Wi-Fi, veți avea nevoie de o altă bucată de hardware din nou. Deoarece Arduino este destinat proiectelor hardware în loc de cele software, este nevoie de un pic de tinkering pentru al conecta.
Intrări / ieșiri
Inelele de intrare / ieșire sunt ceea ce permite computerului dvs. cu o singură bord să vorbească cu lucruri care sunt conectate la acesta. De exemplu, zmeura dvs. Pi ar putea aprinde un LED. Sau Arduino ar putea activa un motor. Dacă sunteți în căutarea unor conexiuni hardware, acești ace sunt ceea ce aveți nevoie. Zmeura Pi 2 împachetează 17 din aceste pini, în timp ce Arduino Uno oferă 20; puteți vedea o serie dintre ele fiind utilizate în imaginea de mai jos.
O altă diferență semnificativă între pinii I / O dintre cele două placi este rezoluția temporală la care le puteți controla. Deoarece Raspberry Pi este un calculator complet, are o serie de lucruri care se luptă pentru timpul CPU, ceea ce înseamnă că poate avea unele dificultăți în a obține timing până la fracțiuni mici de o secundă. Și are nevoie de software pentru interfața corectă cu senzorii și alte dispozitive. Arduino, pe de altă parte, poate schimba ieșirea și poate monitoriza intrarea pe pinii acesteia într-o perioadă foarte scurtă de timp.
Depozitare
Arduino vine cu 32 KB de stocare la bord, care este suficient pentru a stoca codul care oferă instrucțiuni pentru programul său curent. Nu puteți utiliza acest spațiu de stocare pentru aplicații, videoclipuri, fotografii sau orice altceva. Pe de altă parte, zmeura Pi nu vine cu niciun depozit la bord, dar are un port microSD, astfel încât să puteți adăuga cât mai mult spațiu de stocare pe cât doriți. Adăugând 32 GB de spațiu de stocare va costa doar aproximativ 12 dolari cu un card SanDisk micro SD, și puteți adăuga cu ușurință până la 128 sau 256 GB dacă aveți nevoie de ea.
USB
Deoarece Arduino nu este destinat să comunice cu calculatoarele, nu este standard cu niciun port USB pe care îl puteți utiliza pentru acest tip de comunicare. Un singur port poate fi utilizat pentru a conecta dispozitivul Arduino la computer prin portul USB al computerului dvs., dar asta este. Raspberry Pi, pe de alta parte, are patru porturi USB pe care le puteti folosi pentru conectarea acestuia la un router, o imprimanta, o unitate hard disk externa sau o mare varietate de alte dispozitive.
Software-ul
Acum, că am stabilit diferențele dintre hardware-ul Arduino și Raspberry Pi, putem vorbi despre software. Pentru a înțelege cu adevărat când doriți să utilizați o placă sau cealaltă, va trebui să știți ce poate face fiecare și multe dintre acestea depind de software.
Pentru a complica problema, Arduino nu vine cu nici un software în sine. Acesta are capabilități foarte simple de a interpreta codul pe care îl primește și modifică funcțiile hardware-ului la care este conectat, dar placa nu are un sistem de operare sau niciun fel de interfață, în afară de mediul de dezvoltare integrat Arduino (IDE).
Ce înseamnă asta în practică este că trebuie să creați software-ul care rulează pe Arduino. Folosind IDE-ul, vei crea un set de comenzi pe care Arduino le va interpreta și va aplica. Un set simplu de instrucțiuni ar putea spune ceva de genul "aprindeți lumina roșie timp de trei secunde, opriți-o, aprindeți lumina verde timp de trei secunde, opriți-o, repetați." Evident, puteți face lucruri mult mai complicate, dar va trebui să creați singur programul.
Din fericire, există o mare comunitate Arduino care se întinde pe întreaga lume, ceea ce înseamnă că, dacă există ceva ce vrei să faci cu un Arduino, probabil că cineva a făcut-o. Puteți să vă uitați la codul lor, să îl modificați și să faceți ca Arduino să facă exact ceea ce doriți. Acesta este un mod excelent de a învăța principiile de codificare și de prototipuri, de asemenea, de aceea Arduino este o alegere excelentă pentru oricine interesat de electronică.
În schimb, Raspberry Pi vine cu un sistem de operare pe deplin funcțional numit Raspbian. Acest sistem de operare se bazează pe Debian Linux și a fost creat special pentru Pi. Există o serie de alte sisteme de operare pe care le puteți utiliza cu placa, cele mai multe fiind bazate pe Linux, dar Android poate fi, de asemenea, instalat.
Sistemele de operare nu sunt singurele piese de software pe care rulează Pi, deși; există, de asemenea, o serie de aplicații utile pe care le puteți utiliza pentru a îndeplini diferite sarcini. Una dintre cele mai comune utilizări ale unui Raspberry Pi este ca server media, pentru care atât Kodi, cât și Plex sunt aplicații populare. Puteți descărca jocuri, aplicații server, calculatoare și chiar suita de birou LibreOffice.
Desigur, puteți scrie propriile programe pentru Raspberry Pi, de asemenea, și acesta este unul dintre motivele cele mai bune pentru a obține una: de a învăța să cod. Python este limba recomandată pentru Pi, dar C, C ++, Java și Ruby sunt toate pre-instalate pe placă. În timp ce Arduino poate fi optimizat pentru a sprijini alte limbi, limbajul nativ Arduino este cea mai bună alegere; dacă doriți să învățați un limbaj mai util, Pi vă va oferi mai multe opțiuni.
Extinderea în continuare
Atât Arduino cât și Raspberry Pi sunt mașini foarte capabile care vă pot ajuta să învățați și să faceți multe lucruri, dar într-un anumit moment probabil că veți dori să vă deplasați dincolo de elementele de bază și să încercați ceva mai avansat.
Acesta este unul dintre locurile unde Arduino strălucește. Există sute de jetoane care vă permit să extindeți capacitățile bordului de stoc cu lucruri precum conexiunea Ethernet și WiFi, un control mai bun al motorului, capacitatea difuzorului și a microfonului, o touchscreen, camerele, transmițătoarele radio, prelucrarea grafică și aproape orice altceva puteți gândi de. Pentru $ 20 - $ 40, puteți transforma Arduino în altceva în întregime (cum ar fi acest scut GPS Adafruit).
Aceste cipuri se numesc scuturi și sunt foarte ușor instalate; tot ce faceți este să le puneți pe arduinul dvs. și, în unele cazuri, să le lipiți. Mulți pot doar să stea pe partea de sus, făcând instalarea o briză.
Raspberry Pi este o placă mai autonomă și nu are aceleași capacități de expansiune ca Arduino. Există un număr de "pălării" disponibile care adaugă hardware suplimentar la Pi, cu toate acestea, care vă oferă câteva posibilități foarte interesante. De exemplu, puteți adăuga senzori capacitivi, GPS, touchscreen, panouri RGB și chiar și un senzor de gest 3D.
Porturile USB vă permit, de asemenea, să adăugați funcții cu dongle; de exemplu, pentru a obține conectivitate WiFi, tot ce trebuie să faceți este să conectați dongle-ul Wi-Fi. Totuși, chiar și cu aceste opțiuni, Raspberry Pi nu are la fel de multe opțiuni pentru adăugarea de funcționalități. Să nu spun că Pi nu este capabil; poți să faci aproape tot ce vrei cu ea, poate ai nevoie de un pic mai creativ (sau să-l atașezi unui Arduino!).
Cum să decidă între Arduino și Zmeura Pi
Acum că ați văzut exact cum sunt Arduino și Raspberry Pi diferite, ar trebui să aveți o idee bună despre cum să decideți între cei doi dacă vreți să obțineți una. Dacă doriți să creați dispozitive, cum ar fi roboți, cronometre și senzori, Arduino este calea de parcurs; interfața la nivel scăzut și conexiunile simple de I / O fac ca acesta să fie cel mai bun mod de a merge dacă doriți să construiți ceva. Raspberry Pi, pe de alta parte, realizeaza un sistem fantastic de stocare a serverului sau a datelor si este minunat sa invete sa programeze in limbi traditionale. Dacă doriți să comunicați cu alte calculatoare, Pi este bordul dvs.
Dar de ce să vă limitați la una? De ce să nu obțineți amândouă? Ambele sunt foarte accesibile și puteți obține seturi de pornire pentru mai puțin de 100 de dolari care includ tot ce aveți nevoie pentru a începe să lucrați la proiecte. De la un robot simplu la un server web complet, puteți obține un kit simplu care să vă ajute prin procesul de configurare.
Și când începeți să deveniți și mai avansați, puteți folosi atât Arduino cât și Pi împreună pentru a opera senzori și servoare cu instrucțiuni online sau feedback! Opțiunile sunt nelimitate.
Zmeură Pi vs. Arduino: Tabelul de comparație
Arduino Uno | Raspberry Pi 2 Model B | |
---|---|---|
Cost (model de bază) | 20 | 39 |
Procesor | 16MHz AVR ATmega328P | 900 MHz Broadcom ARM Cortex-A7 |
Depozitare | 32 KB | n / A |
Berbec | 2 KB | 1 GB |
I / O știfturi | 20 | 17 |
OS | n / A | Raspbian, alte soiuri de Linux, Android |
Limbile | Arduino, | Python, C, C ++, Java, Ruby |
Cel mai bun pentru | Hardware / prototipuri | Software / server |
Alimentare electrică | 5V cască USB sau DC | 5V USB |
A fost acest ghid util? Aveți mai multe întrebări dacă ar trebui să luați Arduino sau Pi? Lăsați-vă întrebările și gândurile de mai jos!
Credite de imagine: Sho Hashimoto prin flickr, Manoel Lamos prin flickr, Simon Monk prin raspberrypi.org.