O sile platformy Arduino stanowi wiele cech, które odróżniają to środowisko od innych „ekosystemów” inżynierskich – także tych o dłuższej rynkowej historii. Do niewątpliwych zalet płytek głównych Arduino, np. Arduino Uno, Mega czy Nano, zaliczyć powinniśmy stosunkowo prostą, ale bardzo dobrze przemyślaną konstrukcję, w której wszystkie niezbędne elementy i obwody są dostępne od razu po wyjęciu modułu z pudełka. Wymienić należy wbudowane konwertery USB-UART, niezawodne systemy zasilania z automatycznym przełączaniem źródła napięcia czy wreszcie znane z łatwości programowania i dobrego wyposażenia peryferyjnego mikrokontrolery z rodziny Atmel AVR (od kilku lat produkowane pod marką innego potentata w świecie półprzewodników – firmy Microchip). Kolejną bardzo istotną zaletą platformy jest świetnie opracowane, zintegrowane środowisko programistyczne – Arduino IDE, które niejako „w komplecie” dostarcza programiście wszystkie niezbędne biblioteki, przykładowe kody prezentujące sposób użycia poszczególnych funkcji bibliotecznych, czy wreszcie zintegrowane narzędzia do wizualizacji danych w czasie rzeczywistym (słynna Kreślarka) i komunikacji z płytką (Monitor portu szeregowego). Nie do przecenienia jest jednak także dostępność nakładek, zwanych z języka angielskiego Arduino Shield. To one właśnie, w połączeniu z wybranym modułem głównym (np. Arduino Uno, Mega czy też Leoonardo) pozwalają sprzętowo rozszerzyć funkcjonalność Arduino o możliwość sterowania elementami wykonawczymi, komunikacji z użytkownikiem, czy też prowadzenia pomiarów z użyciem różnego rodzaju czujników, a nawet… obserwacji otoczenia za pomocą kamer!
Podstawowe grupy nakładek Arduino Shield
Aby móc w pełni wykorzystać możliwości Arduino, warto dowiedzieć się, jakie funkcje można zrealizować z ich pomocą. Nie sposób wymienić w krótkim artykule nawet znaczącej części dostępnych na rynku nakładek, gdyż ich produkcją zajmują się obecnie dziesiątki, jeżeli nie setki firm na całym świecie. Dlatego w pierwszej kolejności postaramy się wskazać główne grupy nakładek o podobnym rodzaju funkcjonalności, a następnie przyjrzymy się najciekawszym członkom poszczególnych grup – tak, aby dać Ci możliwie szeroki obraz sprawy i ułatwić wybór rozszerzeń do dowolnego projektu, jakim zechcesz się zająć.
Nakładki prototypowe
Najprostszą, ale bardzo przydatną grupą nakładek Arduino Shield, pozwalającą na praktycznie dowolną rozbudowę urządzenia, bazującego na module głównym Arduino, są nakładki prototypowe. W tym obszarze znajdziesz przede wszystkim proste płytki uniwersalne, które – oprócz pól i/lub ścieżek lutowniczych, znanych z klasycznych uniwersalnych płytek lutowniczych, zawierają także pady (lub fabrycznie wlutowane złącza goldpin) pasujące rozstawem i ułożeniem do złączy systemowych platformy Arduino. Do tej grupy należą wszelkiej maści płytki Proto Shield, które – oprócz złączy i pól lutowniczych – często obejmują inne elementy, np. dodatkowe przyciski czy też wskaźniki zasilania w postaci diod LED. Ciekawą alternatywę stanową także nakładki typu ScrewShield – te proste w konstrukcji płytki pozwalają na bardzo wygodne i – co chyba najważniejsze – niezawodne łączenie przewodów (np. od wielu czujników lub innych modułów) ze złączami systemowymi Arduino.
Ekspandery wyprowadzeń
Jeżeli w Twoim urządzeniu brakuje linii wolnych GPIO, z pomocą przyjdą nakładki zawierające ekspandery wyprowadzeń. Dobrym przykładem jest DFRobot Gravity GPIO Shield – nakładka ta, oprócz natywnych wyprowadzeń procesora Arduino, udostępnia także szesnaście dodatkowych linii cyfrowych GPIO, sterowanych jedynie za pomocą dwóch pinów (przy użyciu interfejsu I2C). Inna płytka – Mux Shield II – ułatwia korzystanie z aż 48 linii wejścia/wyjścia – a to wszystko dzięki wbudowanym multiplekserom, które – co bardzo ważne – pozwalają także na wykorzystanie wejść analogowych Arduino. Niektóre nakładki są przystosowane do współpracy z modułami Arduino Nano czy Arduino Mega. Przykładem jest nakładka Grove Mega Shield v1.2, zapewniająca łatwe rozszerzenie urządzenia bazującego na Arduino Mega o możliwość obsługi modułów systemu Grove. Jeżeli oczekujesz możliwości wygodnej pracy z wieloma modułami (nie tylko czujnikami) Grove przy użyciu mniejszych wersji Arduino, wybierz nakładkę Grove Base Shield.
Płytki do sterowania elementami wykonawczymi
Kolejną bardzo ważną i chętnie wykorzystywaną grupą nakładek dla Arduino są wszelkiego rodzaju sterowniki silników i płytki przekaźnikowe. W tym obszarze można znaleźć zarówno proste kontrolery napędów DC małej mocy, oparte na układach typu L293 (np. Iduino ST1138), jak i płytki z nowoczesnymi, scalonymi driverami dużej mocy. Przykładowo – niepozorna płytka Pololu z układami VNH5019 jest w stanie wysterować naprawdę imponujące obciążenia, gdyż może pracować z napięciami od 5,5 V do 24 V i z ciągłym prądem obciążenia aż 12 A (chwilowe przetężenie może osiągnąć nawet wartość 30 A)! Niektóre nakładki są dedykowane do obsługi drukarek 3D lub bardziej złożonych robotów – jako przykład niech posłuży tutaj Ramps 1.4 RepRap, przystosowany do współpracy z modułem Arduino Mega.
Jeżeli Twój projekt wymaga sterowania obciążeniem odizolowanym galwanicznie od obwodów mikrokontrolera i/lub sterowania większymi napięciami oraz prądami, zapewne wybierzesz jedną z nakładek z przekaźnikami elektromagnetycznymi. Doskonałym przykładem będzie DFRobot Relay Shield z czterema przekaźnikami 240 V (AC) / 5 A lub Relay Shield 3.0 z przekaźnikami o obciążalności do 15 A (AC) / 7 A (DC).
Nakładki pomiarowe
Obecność wejść analogowych we wszystkich modułach głównych Arduino gwarantuje łatwą realizację prostych systemów pomiarowych – także tych wielokanałowych – wykorzystujących czujniki analogowe. Jedną z płytek dostosowanych właśnie do realizacji pomiarów jest nakładka Sensor Measurement FSR Shield, zawierająca sześć niezależnych wejść pomiarowych z solidnymi złączami wejściowymi i regulowanymi rezystorami, pozwalającymi na kalibrację każdego z kanałów. Znacznym ułatwieniem w realizacji projektów wymagających np. ustawiania punktu pracy wzmacniacza czy napięcia polaryzacji czujnika będzie płytka Analog Test ADC/DAC Shield dla Arduino, zawierająca 12-bitowy przetwornik DAC, dwa potencjometry oraz miniaturowy głośnik. Ciekawą propozycją dla osób zainteresowanych meteorologią będzie z pewnością Weather Shield – nakładka przeznaczona specjalnie do prowadzenia obserwacji aury.
Nakładki komunikacyjne
Obszerną grupę nakładek stanowią także shieldy przeznaczone do komunikacji drogą radiową lub przewodową. Warto zacząć od nakładek przewodowych – tutaj do wyboru masz interfejsy takie jak Ethernet (np. Ethernet Shield W5100, Iduino ST1044), chętnie stosowany w motoryzacji i przemyśle CAN (CAN-Bus Shield v2.0 czy CAN-Bus Shield v2.0 firmy DFRobot), stary i lubiany RS232 (DFRobot RS232 Shield) czy odporną na zakłócenia szynę różnicową dalekiego zasięgu RS485 (DFRobot Gravity RS485 IO Expansion Shield), a nawet… port USB (SparkFun USB Host Shield). Możliwości włączenia Arduino do pracy w eterze są jeszcze większe, jeśli wykorzystasz jeden z shieldów z łączem WiFi (np. Sparkfun ESP8266 WiFi Shield), Bluetooth (Seeed BLE Shield Bluetooth 4.0), LoRa (IoT LoRa Node Shield 868MHz/915MHz), GSM (np. A-GSM II Shield), a nawet GPS (SparkFun GPS Logger Shield).
Nakładki audio/wideo
Dla zestawów Arduino powstał także szereg nakładek, pozwalających poszerzyć funkcjonalność płytek o możliwość odtwarzania i/lub nagrywania dźwięku, a nawet… obróbki obrazu. Aby zbudować prosty dyktafon lub odtwarzacz muzyczny, możesz wykorzystać jedną z nakładek ze wzmacniaczami i interfejsami karty microSD – np. Waveshare Music Shield VS1053B czy DFRobot Audio Shield. Obsługę kamer z serii ArduCAM umożliwi Ci doskonały moduł ArduCAM Shield V2 oraz rozbudowana nakładka ArduCam ESP8266-12E WiFi IoT. Warto dodać, że wiele modułów kamer można podłączyć do Arduino za pomocą przewodów, pozostawiając tym samym możliwość wykorzystania slotów systemowych Arduino do innych celów.
Nakładki z wyświetlaczami i klawiaturami
W naszym opisie nie możemy pominąć rozbudowanej oferty nakładek, służących do komunikacji z użytkownikiem – poczynając od prostych nakładek z klasycznym wyświetlaczem alfanumerycznym LCD i prostą klawiaturą (np. DFRobot LCD Keypad Shield v2.0), poprzez płytki z wyświetlaczem graficznym (DFRobot LCD12864 Shield), a kończąc na przystosowanych do współpracy z Arduino wyświetlaczach graficznych, wyposażonych w panele dotykowe (np. Iduino TF028 o rozdzielczości 320 x 240 px i przekątnej równej 2,8”). W wielu projektach sprawdzą się też złożone shieldy, oferujące dostęp nie tylko do wyświetlacza i elementów obsługowych, ale także dodatkowych czujników czy diod LED – świetnym przykładem niech będzie tutaj Waveshare Accessory Shield dla Arduino, wyposażony w wyświetlacz OLED 0,96”, czujnik temperatury, akcelerometr, joystick, zegar RTC, a nawet buzzer i… złącza dla modułów radiowych XBee.
Podsumowanie
Temat nakładek Arduino Shield zdaje się niewyczerpany – przedstawiony przez nas podział funkcjonalny nie obejmuje wielu ciekawych nakładek, tkwiących niejako na styku różnych wymienionych grup. Nietrudno bowiem znaleźć nakładki komunikacyjne pracujące w wielu różnych pasmach i protokołach transmisji jednocześnie (należy tu wymienić np. niezwykle złożoną płytkę DFRobot Shield NB-IoT/LTE/GPRS/GPS SIM7000E) czy… kompletne ramię miniaturowego robota Braccio TinkerKit, w którego zestawie – oprócz samej mechaniki – znajduje się dedykowana nakładka sterująca dla Arduino. Inną ciekawą propozycję stanowi Pololu Zumo Shield v1.2 – płyta główna, przygotowana do budowy robota mobilnego klasy minisumo czy linefollower. Reasumując, możemy bez większej przesady stwierdzić, że naprawdę trudno jest dziś znaleźć taką funkcjonalność, która nie została już zrealizowana za pomocą choć jednej z nakładek Arduino Shield. Budowa wielu projektów sprowadza się dziś do złożenia ze sobą dwóch lub trzech niewielkich płytek drukowanych i wgrania gotowego lub własnego programu – a największym ograniczeniem staje się już tylko wyobraźnia konstruktora.
Leave a Reply