
Prispevki
Arduino shieldi: kako delujejo in kateri izbrati

Arduino shieldi: kako delujejo in kateri izbrati
Uvod
Arduino shield je razširitvena plošča, ki jo preprosto nataknete na Arduino in mu s tem dodate novo funkcijo — krmiljenje motorjev, povezavo v omrežje, zaslon, rele ali branje kartice SD. Namesto da s posameznimi moduli in kupom povezovalnih žic sestavljate vezje na protoploščici, shield poravnate z glavo pinov, pritisnete navzdol in ste v nekaj sekundah pripravljeni na programiranje.
Prav ta preprostost je razlog, da se je okoli Arduina razvil cel ekosistem shieldov. Vsak arduino shield sledi isti postavitvi pinov kot osnovna ploščica, zato se sklada mehansko in električno, pogosto pa ga lahko z drugimi shieldi zložite v več nadstropij. V tem vodiču pojasnimo, kako je shield zgrajen, kako deluje sklad več shieldov, katere tipe boste najpogosteje srečali in — najpomembnejše — kako izbrati pravega za svojo ploščico in svoj projekt.

Kaj je arduino shield in kako deluje
Arduino shield je tiskano vezje z natanko takšno razporeditvijo pinov, kot jih ima matična Arduino ploščica. Na spodnji strani ima moške ali ženske glave pinov, ki se zataknejo v konektorje Arduina; na njih so nato nameščene komponente, ki opravljajo želeno funkcijo. Ko shield naložite, se povežejo napajanje (5 V, 3,3 V, GND), digitalni in analogni pini ter komunikacijska vodila, prek katerih shield govori s procesorjem.
Ključna lastnost je, da shield ne prekine dostopa do pinov. Večina shieldov ima na vrhu podaljšane (stacking) glave pinov, ki signal iz Arduina prenesejo navzgor. Tako lahko na en shield naložite naslednjega, do pinov spodaj pa še vedno pridete z merilno konico ali povezovalno žico. Prav zaradi tega je arduino shield tako priročen za hitro sestavljanje in razstavljanje prototipa.
Anatomija shielda
Ne glede na funkcijo ima skoraj vsak shield iste sestavne dele. Glave pinov na spodnji strani poskrbijo za mehansko in električno povezavo z Arduinom. Namenski čip ali gonilnik (na primer gonilnik motorja, krmilnik Ethernet ali pretvornik ravni) opravlja glavno delo. Priključne sponke, konektorji ali reže (za kartico SD, za motorje, za omrežni kabel) povezujejo shield z zunanjim svetom. Pogosto so tu še kratkostične mostičke (jumperji) ali stikala, s katerimi izberete naslov, komunikacijsko vodilo ali napajanje.
Dober arduino shield ima jasno označene pine in dokumentacijo, iz katere je razvidno, katere pine Arduina zaseda. To je pomembno, ker vsak zasedeni pin pomeni, da ga druga komponenta ali drug shield ne more več uporabljati.
Zakaj se pini "podaljšajo" navzgor
Podaljšane glave pinov niso samo estetika. Omogočajo skladanje (angl. stacking), pri katerem več shieldov deluje hkrati na isti ploščici. Signali gredo skozi vsak nivo naprej, tako da je vsak pin dostopen na vrhu sklada. Pri tem velja preprosto pravilo: dokler si dva shielda ne delita istih pinov, lahko delujeta skupaj. Ko pa oba želita isti digitalni pin ali isto prekinitev, nastane spor, ki ga je treba razrešiti — o tem več v poglavju o skladanju.

Prednosti in slabosti shieldov v primerjavi z ločenimi moduli
Glavna prednost shielda je hitrost. Ni spajkanja, ni desetin povezovalnih žic, ni negotovosti, ali ste pin GND priključili na pravo mesto. Shield je zasnovan točno za določeno ploščico, zato so povezave preverjene, pogosto pa dobite še knjižnico, ki strojno opremo požene z nekaj vrsticami kode. Za šole, delavnice in hitre prototipe je to ogromen prihranek časa.
Slabosti so predvsem tri. Prvič, shield zasede veliko pinov naenkrat, tudi tiste, ki jih morda ne potrebujete. Drugič, manj je prilagodljiv od ločenih modulov — komponente so na fiksnih mestih in jih ne morete prestaviti. Tretjič, cena na funkcijo je pogosto višja kot pri golem modulu z nekaj žicami. Zato je arduino shield odlična izbira za prototip in izobraževanje, medtem ko za končni izdelek v seriji pogosto preidete na lastno vezje z le potrebnimi komponentami.
V praksi se odločitev pogosto glasi takole: če gradite en projekt ali učite skupino, je arduino shield skoraj vedno prava izbira, saj se posvetite delovanju in ne odpravljanju napak v ožičenju. Če načrtujete deset ali sto enakih naprav, se splača vložiti čas v lastno vezje, ki vsebuje le komponente, ki jih res potrebujete, in nima cene celotnega shielda v vsakem kosu.
Kot vmesno pot mnogi izberejo senzorski shield: ta ne doda posebne funkcije, ampak vsak pin Arduina razbije na trojico (signal, napajanje, masa), da lahko module in senzorje priključite s tremi žicami brez protoploščice. Tako ohranite prilagodljivost modulov in pridobite urejenost shielda.
Oblike in združljivost: UNO, MEGA, NANO in Pro Mini
Beseda shield sama po sebi ne pove, na katero ploščico se prilega. Postavitev pinov se med družinami Arduino razlikuje, zato je združljivost prva stvar, ki jo morate preveriti pred nakupom.
Najbolj razširjena je oblika UNO. Shieldi za UNO se prilegajo tudi na ploščice Leonardo, Uno WiFi in večino klonov z enako razporeditvijo, imajo pa značilen zamik med dvema skupinama digitalnih pinov, zaradi katerega jih ne morete napačno vstaviti. Ker je UNO najbolj razširjena ploščica, je tudi izbira shieldov za UNO daleč največja.
Arduino MEGA ima vse pine kot UNO in še dodatne vrste, zato se večina UNO shieldov nanj prilega, obratno pa ne velja — shield, ki potrebuje dodatne pine MEGA, na UNO ne bo deloval. Namenski shieldi za MEGA izkoristijo prav te dodatne pine, na primer za več serijskih vrat ali za obsežnejše zaslone.
Manjši ploščici NANO in Pro Mini imata drugačno, ožjo obliko in svoje razširitvene plošče. Tu shield ni polica nad ploščico, ampak najpogosteje osnovna plošča (breakout), na katero NANO ali Pro Mini vstavite in dobite dostopne priključke, napajanje ter včasih dodatna vodila. Če gradite kompaktno, si oglejte shielde za NANO in shielde za Pro Mini.
Pravilo je preprosto: najprej določite ploščico, nato izberite shield za to obliko. Arduino shield napačne oblike se fizično ne bo prilegal ali pa bo signale pripeljal na napačne pine.

Najpogostejši tipi arduino shieldov
Shieldov je na desetine, a v praksi jih boste večino potreb pokrili z nekaj družinami. Spodaj so tipi, ki jih boste najpogosteje srečali, s tem kaj počnejo in kdaj jih izberete.
Motor shield krmili enosmerne motorje, koračne motorje in servo pogone prek gonilnika, kot sta L293D ali TB6612. Prevzame tokovno breme, ki ga Arduino sam ne zmore, in doda zaščito. Če delate z motorji in pogoni, je motor shield najhitrejša pot do vrtenja.
CNC shield je posebna vrsta motorskega shielda za UNO, ki sprejme do štiri module gonilnikov (na primer A4988 ali DRV8825) in poganja koračne motorje rezkalnika, laserskega gravirja ali risalnika. V paru s strojno programsko opremo GRBL je osnova večine domačih CNC in 3D naprav.
Senzorski shield vsak pin razbije na trojico signal-napajanje-masa, da module priključite brez protoploščice. Ne doda funkcije, doda pa red in hitrost povezovanja.
Ethernet in WiFi shield dodata omrežno povezljivost. Ethernet shield s čipom W5100 ali W5500 prek RJ45 poveže Arduino v žično omrežje in pogosto vključuje režo za kartico SD; WiFi shield doda brezžično povezavo. Danes za povezljivost pogosto raje sežemo po ploščici ESP32, a za obstoječe UNO projekte je omrežni shield še vedno najpreprostejša rešitev.
Shield z zaslonom in tipkami (LCD Keypad) na eno ploščo združi znakovni zaslon 16×2 in nekaj tipk. Uporaben je za menije in prikaz vrednosti brez dodatnih žic — pogost je v merilnikih in preprostih napravah z uporabniškim vmesnikom.
Rele shield doda enega ali več relejev za preklapljanje večjih bremen, na primer luči ali črpalke, galvansko ločenih od logike Arduina. Za varno delo z omrežno napetostjo je to pravi pristop.
Podatkovni shield (data logging) združi režo za kartico SD in uro realnega časa (RTC), da lahko meritve z zapisom časa shranjujete na kartico — osnova vsakega beležnika podatkov.
Prototipni shield je prazna plošča z luknjicami in majhno protoploščico, na katero prispajkate ali sestavite svoje vezje in ga uredite v obliko shielda.
| Tip shielda | Kaj počne | Tipična uporaba | Najpogostejša oblika |
|---|---|---|---|
| Motor shield | Krmili DC, koračne in servo motorje | Roboti, vozila, premikanje | UNO |
| CNC shield | Do 4 gonilniki koračnih motorjev, GRBL | CNC, laser, risalnik, 3D | UNO |
| Senzorski shield | Pini razbiti na signal-napajanje-masa | Hitro priključevanje modulov | UNO, MEGA |
| Ethernet / WiFi shield | Žična ali brezžična povezljivost | Spletni strežnik, IoT | UNO |
| LCD Keypad shield | Zaslon 16×2 s tipkami | Meniji, prikaz vrednosti | UNO |
| Rele shield | Preklaplja večja bremena | Krmiljenje luči, črpalk | UNO |
| Podatkovni shield | Kartica SD in ura RTC | Beleženje meritev | UNO |
| Prototipni shield | Prazna plošča za lastno vezje | Trajni prototipi | UNO, MEGA |

Priljubljeni shieldi, ki jih srečate po imenih
Ko brskate po ponudbi, se nekaj shieldov pojavlja pogosteje od drugih. Poznavanje njihovih imen vam olajša izbiro in iskanje dokumentacije.
Ethernet shield W5100 in W5500 sta najbolj razširjena omrežna shielda za UNO. Starejši W5100 zadošča za preprost spletni strežnik ali oddajanje meritev, novejši W5500 je hitrejši in porabi manj pomnilnika. Oba imata običajno režo za kartico SD, zato ju pogosto srečamo tudi v beležnikih podatkov.
Motor shield L293D je klasika za začetnike: poganja dva koračna motorja ali štiri enosmerne in dva servo pogona. Za zahtevnejše projekte je boljši motor shield s čipom TB6612 ali z ločenimi gonilniki, ki zmorejo večji tok in manj grejejo.
CNC shield V3 je za UNO tako rekoč standard. Sprejme do štiri module gonilnikov (A4988 ali DRV8825), ima kratkostične mostičke za nastavitev mikrokorakov in priključke za končna stikala. V povezavi z GRBL požene rezkalnik, laserski gravir ali risalnik.
LCD Keypad shield združi zaslon 16×2 in pet tipk, ki jih Arduino bere prek enega samega analognega pina. Idealen je za preproste menije, saj zasede malo pinov.
Senzorski shield V5 za UNO vsak pin razbije na trojico signal-napajanje-masa in doda priključke za pogosta vodila (I2C, serijska vrata, servo). Med gradnjo prototipa prihrani ogromno žic in napak.
Imena kot W5500, L293D ali A4988 se nanašajo na osrednji čip na shieldu. Ko poznate čip, hitro najdete pravo knjižnico in primere kode — to je pogosto hitrejša pot kot iskanje po imenu izdelka.
Kako zložiti več shieldov hkrati
Skladanje je ena največjih prednosti shieldov, a zahteva nekaj načrtovanja. Pravilo je eno samo: dva shielda lahko delujeta skupaj le, dokler si ne delita istih pinov. Ko oba potrebujeta isti digitalni pin, isto prekinitev ali isti signal za izbiro naprave, nastane spor.
Pri načrtovanju sklada najprej pri vsakem shieldu preverite, katere pine zaseda. To najdete v dokumentaciji ali na tiskovini. Nato pine primerjajte in poiščite prekrivanja. Komunikacijski vodili I2C in SPI sta izjema — po njiju lahko deluje več naprav hkrati, če ima vsaka svoj naslov (I2C) oziroma svoj signal za izbiro naprave, imenovan CS (SPI). Prav zato je I2C tako priljubljen za skladanje: dva shielda na I2C se odlično razumeta, dokler imata različna naslova.
Pozorni bodite tudi na napajanje. Če vsak shield porablja precej toka (na primer motor shield in Ethernet shield hkrati), regulator na Arduinu morda ne bo zmogel; takrat je pametno napajanje pripeljati zunanje. In fizika: visok shield na dnu lahko z visokimi komponentami ovira shield nad njim, zato pri skladanju upoštevajte tudi višino. Za povezavo med nivoji potrebujete podaljšane (stacking) glave pinov — brez njih do zgornjega shielda signali ne pridejo.
Poglejmo konkreten primer. Recimo, da želite beležiti temperaturo na spletni strežnik: potrebujete Ethernet shield in senzor temperature. Ethernet shield komunicira prek vodila SPI (pini 10, 11, 12, 13) in za kartico SD uporablja pin 4. Če senzor priključite na I2C (pina A4 in A5), spora ni — SPI in I2C sta ločeni vodili. Če pa dodate še motor shield, ki si lasti pin 11 ali 13, se ta prekriva s SPI Ethernet shielda in eden od njiju ne bo deloval. Rešitev je izbrati motor shield, ki uporablja druge pine, ali pa krmiljenje motorja prestaviti na ločen modul zunaj sklada. Prav tak premislek pred nakupom prihrani največ težav.

Kako izbrati pravi arduino shield
Izbira shielda je manj zapletena, kot se zdi, če jo razdelite na tri vprašanja: katero ploščico imate, kaj naj shield počne in kakšne so električne zahteve.
Prvič, ploščica. Določite obliko — UNO, MEGA, NANO ali Pro Mini — in izbirajte samo med shieldi za to obliko. To je odločitev, ki jo naredite najprej, saj napačna oblika izniči vse ostalo.
Drugič, funkcija. Poimenujte, kaj naj shield reši: gibanje (motor ali CNC shield), povezljivost (Ethernet ali WiFi shield), preklapljanje bremen (rele shield), uporabniški vmesnik (LCD Keypad), shranjevanje (podatkovni shield) ali urejeno povezovanje senzorjev (senzorski shield). En jasen namen na shield vam prihrani kasnejše spore pri skladanju.
Tretjič, elektrika. Preverite napetost logike (5 V pri UNO in MEGA, 3,3 V pri nekaterih ploščicah), tokovne zahteve bremena in pri motorjih ali relejih poskrbite za zunanje napajanje. Shield, ki na papirju ustreza, lahko v praksi ne deluje, če ga napajate iz vrat USB in mu zmanjka toka.
Korak za korakom
Postopek, ki deluje skoraj vedno: izberite ploščico, izberite arduino shield za njeno obliko, preverite katere pine zaseda, potrdite napajanje in šele nato razmislite, ali boste kdaj dodali še kak shield v sklad. Če načrtujete sklad, že pri prvem shieldu pustite proste tiste pine, ki jih bo potreboval naslednji. Tako se izognete temu, da bi drugi shield spremenil delovanje prvega.
Pogoste napake pri uporabi shieldov
Najpogostejša napaka je napačna oblika: shield za MEGA na UNO ali obratno. Vedno najprej uskladite obliko s ploščico.
Druga pogosta napaka je spor pinov pri skladanju. Dva shielda naložite drug na drugega, oba pa pričakujeta isti pin — na primer motor shield in Ethernet shield, ki si oba lastita določene digitalne pine. Rešitev je preveriti zasedene pine, preden shielda kupite, ne šele ko ne delujeta.
Tretja napaka je napajanje. Motorji in releji potegnejo več toka, kot ga zmore regulator Arduina, zato ju napajajte iz zunanjega vira, logiko pa ločite. Če se Arduino ob zagonu motorja ponastavi, je skoraj vedno kriv padec napetosti.
Zadnja pogosta napaka je manjkajoča knjižnica ali napačen naslov. Marsikateri shield potrebuje določeno knjižnico ali nastavljen naslov I2C; brez tega strojna oprema molči, čeprav je vse pravilno povezano.
Pogosta vprašanja o arduino shieldih
Za kaj se uporablja arduino shield? Shield doda Arduinu funkcijo brez spajkanja in žic — na primer krmiljenje motorjev, povezavo v omrežje, zaslon ali branje kartice SD. Nataknete ga na ploščico in je pripravljen za programiranje.
Kako namestim shield na Arduino? Poravnate glave pinov shielda s konektorji Arduina in ga nežno, a odločno pritisnete navzdol, da se pini do konca zaskočijo. Pomembno je, da se ne zamaknete za en pin — zamik pomeni napačne povezave.
Ali lahko zložim več shieldov hkrati? Da, dokler si ne delijo istih pinov in imajo podaljšane glave pinov. Vodili I2C in SPI omogočata več naprav hkrati, če ima vsaka svoj naslov oziroma svoj signal CS.
Kaj počne CNC shield? CNC shield na UNO sprejme do štiri module gonilnikov koračnih motorjev in v povezavi z GRBL poganja osi rezkalnika, laserskega gravirja, risalnika ali 3D naprave.
Je shield boljši od ločenih modulov? Za prototip in učenje praviloma da, ker prihrani čas in odpravi napake povezovanja. Za serijski izdelek pogosto preidete na lastno vezje z le potrebnimi komponentami.
Ali shieldi delujejo tudi na ploščicah ESP32? Redko neposredno. Postavitev pinov in napetost logike (3,3 V) se razlikujeta od UNO, zato je večina UNO shieldov namenjena Arduinu s 5 V logiko. Za ESP32 obstajajo namenske razširitvene plošče, ne pa klasični UNO shieldi.
Kako vem, katere pine shield zaseda? Podatek je v dokumentaciji izdelka ali na oznakah tiskovine, pogosto pa tudi v primeru kode pripadajoče knjižnice. Zasedene pine si zapišite, preden dodate drugi shield v sklad.
Zakaj se Arduino ponastavi, ko zaženem motor prek shielda? Skoraj vedno gre za padec napetosti: motor potegne več toka, kot ga zmore napajanje prek USB. Motorje napajajte iz zunanjega vira in ločite napajanje logike od napajanja bremena.
Kaj potrebujete za začetek s shieldi
Za prve korake z arduino shieldi ne potrebujete veliko. Poleg matične ploščice (najpogosteje UNO) in kabla USB je dobro imeti zunanji vir napajanja, kadar shield poganja motorje, releje ali zaslon z osvetlitvijo — napajanje prek USB pri večjih bremenih hitro ne zadošča. Za shielde s podaljšanimi glavami pinov pridejo prav še rezervne stacking glave, če bi kdaj želeli graditi sklad.
Na programski strani skoraj vsak shield spremlja knjižnica. Namestite jo prek upravitelja knjižnic v Arduino IDE, nato pa začnite z enim od priloženih primerov — ti so narejeni tako, da shield takoj oživijo in pokažejo, kateri pini so v uporabi. Šele ko primer deluje, ga začnite prilagajati svojemu projektu. Takšen pristop hitro razkrije, ali je težava v strojni opremi ali v kodi.
Priporočljivo je tudi, da si za vsak shield shranite kratko beležko o tem, katere pine zaseda in katero knjižnico uporablja. Ko boste čez nekaj mesecev gradili nov projekt ali skladali dva shielda, vam bo ta beležka prihranila ponovno branje dokumentacije in večino sporov rešila že na papirju.
Zaključek
Arduino shield je najhitrejša pot od ideje do delujočega prototipa: nataknete ga, naložite knjižnico in se posvetite kodi namesto povezovanju žic. Ključ do dobre izbire so tri odločitve po vrsti — oblika ploščice, želena funkcija in električne zahteve — ter, če načrtujete sklad, pregled zasedenih pinov, da se shieldi med seboj ne motijo.
Ko veste, kaj potrebujete, si oglejte celotno ponudbo shieldov in nadgradenj v kategoriji Arduino shieldi in nadgradnje na 3DSVET.eu, kjer najdete shielde za UNO, MEGA, NANO in Pro Mini z dostavo po EU.
Iščete pravi shield za svoj Arduino projekt?
V trgovini 3DSVET najdete motorske, senzorske, CNC, mrežne in prototipne shielde za UNO, MEGA, NANO in Pro Mini — vse z dostavo po EU.

