Raspberry Pi Picon ja Arduino Nanon erot pienissä laitteissa

Pienen laitteen aivoiksi valitaan nykyään usein joko Raspberry Pi Pico tai Arduino Nano, ja valinta ratkaisee yllättävän paljon virransyötöstä anturien kytkentään. Tämä artikkeli on kirjoitettu harrastajalle, opiskelijalle tai makerille, joka suunnittelee kompaktia laitetta, kuten akkukäyttöistä lämpötilaloggeria, LED-ohjainta tai pientä robottia. Raspberry Pi Pico ja Arduino Nano ovat suunnilleen yhtä kokoisia ja maksavat vähän. Sisältä ne ovat silti hyvin erilaiset, ja erot kannattaa tietää ennen kuin juotat ensimmäisen piikkirimankaan.

Raspberry Pi Pico ja Arduino Nano lyhyesti

Arduino Nano perustuu ATmega328P-mikrokontrolleriin, jossa on sama piiri kuin Arduino Unossa. Kellotaajuus on 16 MHz, flash-muistia on 32 kt ja RAM-muistia vain 2 kt. Logiikkajännite on 5 V, mikä on Nanon suurin käytännön etu, koska suuri osa vanhemmista antureista, releistä ja moduuleista on suunniteltu juuri 5 voltille.

Raspberry Pi Pico on pieni mikrokontrollerikortti, ei Raspberry Pi 5:n kaltainen Linux-tietokone. Alkuperäisessä Picossa on RP2040-piiri, jossa on kaksi ARM Cortex-M0+ -ydintä, 264 kt RAM-muistia ja 2 Mt flash-muistia. Uudemmassa Pico 2:ssa on RP2350, jossa on enemmän muistia ja nopeammat ytimet. Picon logiikkajännite on 3,3 V, ja sitä ohjelmoidaan MicroPythonilla, C/C++:lla tai Arduino IDE:llä, kun asentaa siihen RP2040-tuen.

Hinnat ovat lähellä toisiaan, mutta haarukat vaihtelevat myyjän ja kampanjoiden mukaan. Pico maksaa yleensä 5-8 € ja langattomalla yhteydellä varustettu Pico W 7-10 €. Alkuperäinen Arduino Nano maksaa 20-28 €, ja CH340-USB-piirillä varustetun kloonin saa Kaukoidästä 3-6 eurolla.

Laskentateho ja muisti – milloin sillä on väliä

Paperilla Pico on moninkertaisesti tehokkaampi. Ero tuntuu käytännössä, kun laite käsittelee ääntä, ohjaa satoja osoitettavia LEDejä, piirtää graafista näyttöä tai pitää muistissa suurta mittausdataa. Nanon 2 kt RAM-muisti loppuu yllättävän nopeasti, jos ohjelmassa on pitkiä merkkijonoja tai OLED-näytön kuvapuskuri. 128×64-pikselin näytön puskuri vie yksinään 1 kt.

Picon erikoisuus on PIO eli ohjelmoitavat I/O-tilakoneet. Niillä voi toteuttaa omia sarjaprotokollia, kuten WS2812-LEDien ohjauksen tai lisä-UART-väyliä, kuormittamatta varsinaisia ytimiä. Nanossa sama tehdään ohjelmallisesti, ja se syö prosessoriaikaa.

Myytti: tehokkaampi mikrokontrolleri on aina parempi valinta. Ei ole. Jos laite lukee yhden lämpötila-anturin ja kytkee releen kerran minuutissa, Nanon 16 MHz riittää moninkertaisesti. Silloin ratkaisevat kytkentöjen yksinkertaisuus, jännitetasojen yhteensopivuus ja valmiiden kirjastojen määrä, eikä megahertseillä ole merkitystä.

Jännitetasot ja anturien yhteensopivuus

Tässä kohdassa aloittelija polttaa useimmiten ensimmäisen korttinsa. RP2040:n GPIO-pinnit eivät kestä 5 voltin signaalia. Jos 5 V:n ultraäänianturin HC-SR04 echo-lähtö kytketään suoraan Picoon, pinni voi vaurioitua. Ratkaisuksi käy jännitteenjakaja, jossa on kaksi vastusta (esimerkiksi 1 kΩ ja 2 kΩ), tai kaksisuuntainen tasonmuunnin, jonka saa muutamalla eurolla. Pico 2:n RP2350:n pinnien sietokyky on eri, mutta sen ehdot kannattaa tarkistaa datalehdestä ennen kuin niihin luottaa.

Nano toimii suoraan klassisten 5 V:n moduulien kanssa. Toisaalta uudemmat anturit, kuten BME280, monet näyttömoduulit ja SD-korttilukijat ilman omaa säädintä, ovat 3,3 V:n laitteita. Niiden kanssa Pico on luontevampi pari.

Kuorman kytkemisessä logiikkajännite vaikuttaa myös transistorin valintaan. Kaikki MOSFETit eivät aukea kunnolla 3,3 voltin hilajännitteellä, joten Picon kanssa tarvitaan logiikkatason MOSFET. Aiheesta on oma artikkelinsa: transistori vai MOSFET kuorman kytkemiseen mikrokontrollerilla.

Virransyöttö ja akkukäyttö pienissä laitteissa

Pienessä laitteessa virransyöttö ratkaisee usein enemmän kuin prosessori. Picon VSYS-pinniin voi syöttää noin 1,8-5,5 V, koska kortilla on buck-boost-säädin. Siksi Pico toimii suoraan yhdellä litiumkennolla tai kolmella AA-paristolla ilman erillistä säädintä.

Nanon VIN-pinni haluaa 7-12 V, ja kortin lineaarisäädin muuttaa ylijäämän lämmöksi. Toinen vaihtoehto on syöttää tasainen 5 V suoraan 5V-pinniin. Kahdella AA-paristolla Nano ei siis käynnisty luotettavasti.

Esimerkki: sähkö- ja automaatioalan opiskelija rakentaa kasvihuoneeseen lämpötilaloggerin, jossa on DHT22-anturi. Nanolla kokonaisuus tarvitsee 9 voltin pariston tai 5 V:n virtapankin, ja kortin virta-LED ja säädin kuluttavat virtaa jatkuvasti, vaikka ohjelma nukkuisi. Picolla ja kolmella AA-paristolla rakenne on yksinkertaisempi. Kumpikaan kortti ei silti sellaisenaan ole erityisen virtapihi. Kuukausia kestävään akkukäyttöön kokenut rakentaja valitsee usein paljaan mikrokontrollerin tai erikseen vähävirtaiseksi suunnitellun kortin.

Litiumkennon kanssa tarvitaan suojapiirillä varustettu latausmoduuli. Kennoa ei saa oikosulkea, eikä turvonnutta tai kolhiintunutta akkua saa ladata.

Ohjelmointi, kirjastot ja opiskelu

Nanon suurin vahvuus on kypsä ekosysteemi. Lähes jokaiselle harrastusanturille löytyy Arduino-kirjasto ja esimerkkikoodi, ja ammatillisten oppilaitosten sähkö- ja automaatioalan kurssimateriaali rakentuu usein Arduinon ympärille. Peruskoulussa alkuun pääsee yleensä Micro:bitillä, ja Arduinoon siirtyminen on siitä luonteva askel.

Picon kanssa MicroPython on erinomainen oppimisympäristö: koodia voi kokeilla rivi kerrallaan ilman käännösvaihetta. Ohjelmointi on yksinkertaista, sillä BOOTSEL-napin pohjassa pitäminen tuo kortin tietokoneelle USB-levynä, jolle tiedosto vedetään. Kaikki Arduino-kirjastot eivät toimi RP2040:llä, varsinkaan ne, jotka käyttävät suoraan AVR-piirin rekistereitä. Jos olet vasta valitsemassa koko alustaperhettä, lue myös Arduino vai Raspberry Pi ensimmäiseen elektroniikkaprojektiin.

Yleisimmät virheet korttia valittaessa

Nämä kolme virhettä toistuvat makerspaceissa ja hacklabeissa, kuten Oodin Kaupunkiverstaalla Helsingissä, viikosta toiseen:

– 5 V:n signaali suoraan Picoon. Kortti voi toimia hetken ja vaurioitua myöhemmin. Tarkista jokaisen moduulin lähtöjännite.
– Servo tai moottori kortin omasta 5V- tai 3V3-pinnistä. Virtapiikki nollaa mikrokontrollerin tai rikkoo säätimen. Anna moottorille oma syöttö ja kytke maat yhteen.
– Nanon A6- ja A7-pinnien käyttö digitaalisina. Ne ovat ATmega328P:ssä pelkkiä analogiatuloja. Picossa taas on vain kolme käyttäjän ADC-kanavaa, mikä yllättää monta.

Kloonin kanssa törmätään myös ajuriongelmaan: CH340-piiri vaatii joissain käyttöjärjestelmissä erillisen ajurin, ja vanha bootloader vaatii IDE:ssä valinnan ”ATmega328P (Old Bootloader)”. Halpojen kopioiden laatu vaihtelee, ja tilattaessa EU:n ulkopuolelta kannattaa huomioida arvonlisävero ja toimitusaika. Niistä on kerrottu tarkemmin artikkelissa komponentit Kaukoidästä – tulli, arvonlisävero ja aitous.

UKK

Voiko Raspberry Pi Picoa ohjelmoida Arduino IDE:llä?
Voi. Arduino IDE:hen asennetaan RP2040- tai RP2350-korttituki, minkä jälkeen useimmat yleiset kirjastot toimivat. AVR-piirin rekistereitä suoraan käyttävät kirjastot eivät toimi.

Kumpi sopii paremmin akkukäyttöiseen laitteeseen?
Pico on yleensä helpompi, koska se hyväksyy laajan syöttöjännitealueen (noin 1,8-5,5 V) ilman erillistä säädintä. Hyvin pitkään akkukäyttöön kumpikaan kehityskortti ei ole optimaalinen ilman muutoksia tai nukkumistilan huolellista ohjelmointia.

Toimivatko 5 V:n anturit Picon kanssa?
Toimivat, kun anturin syöttö on 5 V ja sen lähtösignaali sovitetaan 3,3 volttiin jännitteenjakajalla tai tasonmuuntimella. I²C-väylässä on lisäksi tarkistettava, mihin jännitteeseen ylösvetovastukset on kytketty.

Näin valitset sopivan kortin

Valitse Arduino Nano, kun laite käyttää 5 V:n moduuleja, saat virran valmiista 5 V:n lähteestä ja haluat valtavan määrän valmiita esimerkkejä. Valitse Raspberry Pi Pico, kun tarvitset laskentatehoa, muistia, paljon osoitettavia LEDejä, MicroPythonia tai joustavaa paristosyöttöä. Pico W lisää mukaan WLANin muutamalla eurolla. Kokenut rakentaja tekee valinnan anturilistan ja virtalähteen perusteella, ei prosessorin kellotaajuuden. Kirjoita siis ennen tilausta paperille jokaisen moduulin jännite.

Anna pisteet

(ei vielä ääniä)

Arvostele, kommentoi tai kerro kokemuksista