Społeczność entuzjastów szeroko rozumianej nauki i techniki z całego świata tworzą nie tylko osoby zainteresowane tymi dziedzinami w sposób bierny, ale również osoby związane z nimi w sposób czynny, tj. hobbyści zajmujący się majsterkowaniem w domowym zaciszu, a także zawodowi profesjonaliści z wykształceniem technicznym. Wszyscy Ci ludzie w swoich projektach coraz częściej implementują elementy elektroniki i programowania. Do tego celu bardzo często wykorzystywane jest Arduino – osprzęt elektroniczny z oprogramowaniem na licencji open source, który umożliwia prostą realizację rozmaitych aplikacji dla systemów wbudowanych. W tym artykule przedstawiono, w jaki sposób zacząć przygodę z tym niezwykłym środowiskiem o całkiem sporych możliwościach wykorzystania.
Co to jest Arduino?
Arduino jest płytką prototypową na licencji open source, która umożliwia tworzenie projektów o zróżnicowanym stopniu rozbudowy. Płytka jest wyposażona w mikrokontroler, który po zaprogramowaniu może wykonywać instrukcje obejmujące rozmaite procesy fizyczne dzięki systemowi wejść i wyjść. Do płytki można podłączyć takie podzespoły jak diody LED, sterowniki silników elektrycznych, a także czujniki i wyświetlacze. Przystępna cena oraz wysoka uniwersalność Arduino sprawiają, że po tę płytkę sięga sporo osób, które lubią majsterkować w elektronice. Projekt Arduino został zainicjowany w 2005 roku we Włoszech przez Massimo Banziego. Celem projektu było stworzenie narzędzia, które w prosty sposób ma ułatwić ludziom tworzenie programowalnych urządzeń elektronicznych bez konieczności posiadania obszernej wiedzy technicznej i dużych zasobów finansowych. Pełna specyfikacja płytki Arduino jest dostępna na licencji Creative Commons, dzięki czemu każdy może zbudować własną płytkę bazującą na Arduino. W sprzedaży dostępnych jest wiele klonów płytek kompatybilnych z ekosystemem Arduino, ale trzeba uważać na podróbki, które na pierwszy rzut oka mogą przypominać oryginalne modele, choć w rzeczywistości mogą się one okazać fabrycznie źle skonstruowane i uszkodzić osprzęt współpracujący.
Od jakiej płytki Arduino najlepiej zacząć?
Arduino jest bardzo dobrą platformą rozwojową do tworzenia prototypów aplikacji embedded, ale osoby początkujące bez dobrego rozeznania, mogą napotkać problem przy wyborze odpowiedniej płytki na początek. Najlepszym na początek i najczęściej wybieranym produktem jest płytka Arduino Uno. W sieci na forach internetowych oraz stronach poświęconych elektronice i programowaniu dostępna jest ogromna ilość różnorakich projektów urządzeń, które zostały zbudowane z wykorzystanie płytki Arduino Uno. Aby sprawnie posługiwać się tą płytką, niezbędne jest zapoznanie się z jej osprzętem, w którego skład wchodzą następujące złącza i wyprowadzenia o ściśle określonych funkcjach:
- Przycisk RESET – każde naciśnięcie tego przycisku powoduje ponowne uruchomienie programu wgranego do pamięci mikrokontrolera.
- AREF – złącze dla źródła napięcia odniesienia, względem którego mierzone jest napięcie na pinach analogowych.
- GND – złącze dla potencjału masy zasilania.
- I/O – cyfrowe piny wejścia/wyjścia.
- PWM – wyjścia sygnału PWM (ang. Pulse Width Modulation) o zmiennym wypełnieniu.
- USB – złącze do zasilania płytki Arduino i komunikacji z komputerem. Układem pośredniczącym pomiędzy płytką Uno a komputerem jest koprocesor – Atmega 16U2.
- Tx/Rx – złącza komunikacyjne interfejsu UART odpowiadające za wysyłanie i odbiór informacji.
- Mikrokontroler – w płytce Arduino Uno zastosowano 8-bitowy mikrokontroler AVR Atmega 328p, który jest taktowany sygnałem zegarowym o częstotliwości 16MHz. Jest on najważniejszym elementem na płytce i realizuje instrukcje zgodnie z kodem programu przechowywanego w jego pamięci FLASH.
- Dioda LED – sygnalizacja optyczna obecności napięcia zasilania.
- Regulator napięcia – ustala napięcie zasilania płytki na prawidłowym poziomie.
- Gniazdo DC – gniazdo zasilające typu 2,1 x 5,5 mm dla zewnętrznego zasilacza.
- 3.3V – źródło zasilania napięciem 3,3V.
- 5V – źródło zasilania napięciem 5,0V (poziom logiczny TTL).
- ANALOG – piny wejściowe przetwornika analogowo-cyfrowego.
Pomocne akcesoria przy zabawach z płytką Arduino
Tak jak każde urządzenie elektroniczne, tak również Arduino wymaga odpowiedniego źródła zasilania. Napięcie pomocnicze do Arduino można dostarczyć na kilka sposobów. Najprostszym jest podłączenie płytki pod port USB w komputerze. Jeśli natomiast będzie nam zależało na mobilności naszego projektu, wówczas możemy skorzystać ze złącza DC i podłączyć do niego baterię 9V typu 6F22 poprzez klips bateryjny z adapterem. Jeśli nasza płytka jest już zaprogramowana i chcemy ją użyć w projekcie niezależnie od komputera, z którego ją zaprogramowaliśmy, wówczas do złącza DC wystarczy podłączyć zasilacz sieciowy DC o napięciu wyjściowym z przedziału 7V – 12V. Kolejnym, praktycznym akcesorium dla nas jest płytka stykowa, która umożliwia szybkie prototypowanie układów elektronicznych, współpracujących z Arduino, bez konieczności lutowania. Korzystanie z płytki stykowej umożliwia budowanie tymczasowych prototypów, na których możemy eksperymentować przez testowanie działania układu i zmienianie elementów (np. rezystorów o różnych wartościach rezystancji, bądź tranzystorów BJT zróżnicowanych pod kątem wzmocnienia). Pod otworami w płytce stykowej znajdują się metalowe listwy, które są ze sobą odpowiednio połączone w rzędy. Płytka stykowa nie ma swojego własnego źródła zasilania i wymaga podłączenia zewnętrznego zasilacza. Warto zaopatrzyć się także w zestaw zworek i przewodów połączeniowych. Ponadto, bardzo przydatne będą również narzędzia, które powinny się znaleźć na wyposażeniu każdego elektronika, bez względu na poziom doświadczenia. W tym celu warto zaopatrzyć się w multimetr cyfrowy z funkcją pomiaru napięć i prądów o przebiegu stałym i sinusoidalnym, przemiennym, rezystancji, a także mający na pokładzie tester przewodzenia z sygnalizacją akustyczną. Lutownica oporowa lub stacja lutownicza z regulacją temperatury będzie przydatna przy budowaniu zewnętrznych układów elektronicznych. Do lutowania niezbędne jest spoiwo lutownicze w postaci cyny z ołowiem w składzie 60% Sn + 40% Pb. Bardzo przydatny będzie również odsysacz oraz plecionka do odsysania cyny przy wylutowywaniu elementów, a także obcinaczki boczne ze stali chromowano-wanadowej zdolne do łatwego przecinania przewodów minimalnie o średnicy przekroju wynoszącej 1,0 mm. Dodatkowo pomocna będzie pinceta i ściągacz izolacji. Poza multimetrem przydatnym narzędziem pomiarowym przy uruchamianiu projektów na Arduino jest tester stanów logicznych.
Jak zaprogramować Arduino?
Jeżeli poznaliśmy już najważniejsze aspekty dotyczące budowy sprzętowej Arduino, to możemy przystąpić do programowania. Odpowiednio do obwodu zbudowanego na płytce należy napisać kod źródłowy, który będzie realizował zestaw instrukcji dla procesu technologicznego w sposób zgodny z naszymi założeniami projektowymi. Płytka Arduino Uno może wykonywać instrukcje wg kodu programu z pojedynczego pliku. Oprogramowanie umożliwiające napisanie kodu i załadowanie go do pamięci FLASH mikrokontrolera na płytce nosi nazwę “Arduino IDE” i jest to zintegrowane środowisko programistyczne, w którym język programowania jest w dużej mierze oparty na językach C i C++, ale jego składnia została odpowiednio zmodyfikowana i uproszczona. Typowy program w środowisku Arduino składa się z dwóch funkcji, tj.:
void setup() – Funkcja ta zawiera podprogram, którego zestaw instrukcji jest wykonywany jednokrotnie – tylko i wyłącznie przy uruchomieniu programu. Są to np. ustawienie pinów cyfrowych w stan wysoki bądź niski, w tryb wejścia (także z przyciskiem) lub wyjścia, inicjacja zmiennych oraz innych niezbędnych warunków początkowych;
void loop() – Funkcja zawierająca kod programu, który jest wykonywany w pętli
Przykładowym projektem na Arduino, który jest znakomity na początek nauki programowania tej platformy, jest program, którego zadaniem jest zaświecenie i zgaszenie diody LED za pomocą przycisku. W tym celu wystarczy skorzystać z dwóch pinów cyfrowych Arduino – do pierwszego z nich podłączamy przycisk, przy czym jego drugie wyprowadzenie podłączamy do masy układu (GND) – pin dla przycisku należy ustawić w tryb wejścia ze ściągnięciem do masy. Do drugiego pinu – ustawionego jako wyjście – podłączamy anodę diody LED (+), natomiast katodę diody LED (-) podłączamy do masy, ale poprzez rezystor o rezystancji 1kΩ, który ma za zadanie bezpiecznie ograniczyć natężenie prądu.
Rozszerzenia sprzętowe dla Arduino
Jeśli będziemy chcieli wzbogacić naszą płytkę Arduino o specjalny rodzaj funkcjonalności, wówczas warto rozejrzeć się za płytkami Arduino Shield, które stanowią ciekawe moduły rozszerzeniowe, wyposażone w złącza kompatybilne elektrycznie i mechanicznie z płytkami bazowymi Arduino. Wśród takich nakładek znajdziemy m.in. moduły łączności radiowej, Wi-Fi i Bluetooth, wyświetlacze LCD, moduły łączności GPS, czy też sterowniki serwomechanizmów i oświetlenia LED. Ponadto, ciekawa jest oferta praktycznych czujników różnych wielkości fizycznych, takich jak wilgotność, temperatura, natężenie światła, odległość obiektu i wiele innych. Jedynym ograniczeniem przy tworzeniu projektów na płytkach Arduino jest wyobraźnia konstruktora, a niebieskie płytki to znakomite narzędzie do jej rozwijania!
Zobacz również
Jeśli dopiero zaczynasz swoją przygodę z Raspberry Pi, warto na początek zrealizować kilka prostych projektów dla początkujących. Sprawdź, czym kierować…
Pomiary temperatury mają zastosowanie nie tylko w meteorologii, ale także w diagnostyce maszyn i urządzeń - do tego celu również…
Jaki zasilacz do Raspberry Pi wybrać? Jakimi parametrami prądowymi powinien się charakteryzować? Poradnik dla początkujących. Jaki zasilacz do Raspberry Pi…