Do czego można wykorzystać minikomputery?

0

Mikrokontroler jako bardziej kompaktowa forma procesora znanego z komputerów klasy PC, stał się kamieniem węgielnym pod wiele aplikacji użytkowych przeznaczenia konsumenckiego, hobbystycznego i profesjonalnego. Choć mikrokontrolery i mikroprocesory można kupić jako oddzielne układy elektronicznego, to bardzo ciekawą opcją jest także zakup platformy do prototypowania, która ma fabrycznie wbudowany mikrokontroler. W tym artykule przedstawiamy kilka przykładowych aplikacji, które możemy zaprojektować i zbudować, wykorzystując popularne platformy dla systemów wbudowanych, dostępne na polskim rynku. Zapraszamy do lektury!

Monitoring warunków środowiskowych

Onion Omega to niewielki minikomputer, który możemy programować w kilku najbardziej popularnych językach wysokiego poziomu dla systemów wbudowanych takich jak np. Python czy Javascript. Komunikacja “Cebulki” może być realizowana poprzez Ethernet, WiFi, UART  jak i I2C, a listwa pinów GPIO umożliwia podłączenie wielu różnych modułów peryferyjnych, dzięki czemu możemy zbudować i zaprogramować ciekawe projekty takie jak np. mała stacja pogodowa, dzięki której na bieżąco możemy monitorować wartości parametrów środowiska. Do tego celu, potrzebne będzie użycie przewodów połączeniowych, przejściówki I2C oraz modułu pomiarowego – znakomitą rolę będzie w tym miejscu spełniała przystawka czujnikowa HIH7130 z wyjściem cyfrowym, która umożliwia wykonywanie pomiarów względnych wartości temperatury i wilgotności środowiska z zachowaniem dokładności pomiaru na poziomie ±3% RH (wilgotności względnej). 

Specjalnie zaprojektowana konstrukcja czujnika, jest wyposażona w układ kompensacji temperaturowej, który zapewnia utrzymanie stabilności pomiaru na bardzo dobrym poziomie, umożliwiając zastosowanie modułu HIH7130 w aplikacjach o charakterze przemysłowym w problematycznych warunkach środowiskowych. Osprzęt i oprogramowanie minikomputera Onion Omega wspiera również komunikację z chmurą, dzięki czemu wszystkie urządzenia współpracujące, mogą być sterowane przez internet z każdego miejsca na Świecie! Połączenie osprzętu ze sobą jest bardzo proste. Wystarczy połączyć płytkę Onion Omega z modułem czujnikowym HIH7130 za pośrednictwem przejściówki I2C, co jest szczególnie wygodną opcją w przypadku, gdy nie chcemy sięgać po lutownicę. Użycie takiej dedykowanej przejściówki oszczędza sporo czasu związanego z podłączaniem i jest zdecydowanie bardziej bezpiecznym rozwiązaniem, zwłaszcza dla początkujących elektroników o mniejszym doświadczeniu, ponieważ niweluje ryzyko wykonania błędnego połączenia, które mogłoby doprowadzić do uszkodzenia osprzętu. 

Sterowanie silnikami elektrycznymi

Jedną z wielu praktycznych aplikacji, która pojawia się zarówno w pojazdach elektrycznych, obrabiarkach sterowanych numerycznie, zabawkach zdalnie sterowanych czy szeroko rozumianej robotyce, jest użycie silników elektrycznych i serwomechanizmów, w których regulacja parametrów pracy jest najczęściej realizowana za pomocą odpowiedniego sterownika, którego rolę może pełnić np. płytka Arduino UNO. Korzystając z kanałów PWM, możemy zrealizować sterowanie pracą silników elektrycznych, dostosowując ich prędkość obrotową w zależności od potrzeb aplikacji. Przebieg typu PWM charakteryzuje się możliwością regulacji współczynnika wypełnienia sygnału prostokątnego, tzn. stosunku czasu trwania stanu logicznego wysokiego (np. napięcia 5V) do czasu pełnego pojedynczego okresu tego sygnału. Oznacza to przykładowo, że gdy podczas sygnału prostokątnego o częstotliwości 1kHz i amplitudzie 5V współczynnik wypełnienia wynosi 50%, to w ciągu pojedynczego okresu sygnału trwającego 1,0ms czas trwania stanu wysokiego wynosi 0,5ms. Wówczas w celu realizacji sterowania prędkością obrotową wału silnika, do wyjścia PWM w Arduino podłączamy bramkę tranzystora MOSFET, którego kanał jest częścią obwodu prądowego silnika elektrycznego. W ten sposób tranzystor jest odpowiednio załączany i wyłączany, umożliwiając szeroki zakres regulacji prędkości obrotowej wału silnika. 

W celu zapewnienia prawidłowego działania masa Arduino (GND) musi być zwarta z masą źródła napięcia zasilającego silnik. Kiedy nasza aplikacja jest bardziej wymagająca – np. jest to robot jeżdżący do przodu i do tyłu, wówczas do sterowania jego napędem najlepiej będzie skorzystać dodatkowo z mostka typu H – specjalnego układu scalonego, którego konstrukcja umożliwia zmianę biegunowości napięcia zasilającego silnik, poprzez zmianę połączenia wewnętrznych tranzystorów pełniących rolę przełączników. Najbardziej popularnym układem tego typu jest L298N, którego konstrukcja pozwala na podłączenie i sterowanie dwoma silnikami jednocześnie. Zakres napięć roboczych obejmuje przedział od 5V do 35V, a dopuszczalny prąd roboczy wynosi 2A. Łącząc razem regulację prędkości obrotowej za pomocą MOSFETa oraz przełączanie kierunku obrotów za pomocą mostka typu H, uzyskujemy elastyczny układ sterowania dla napędów elektrycznych uniwersalnego przeznaczenia.

Fotografia poklatkowa dla każdego

Jedną z najbardziej popularnych technik montażowych podczas tworzenia specjalnych filmów jest time-lapse, czyli fotografia poklatkowa. Zasadniczo proces ten polega na łączeniu fotografii w film. Wówczas kamera nagrywa obraz z mniejszą prędkością klatkowania niż przy tradycyjnym nagrywaniu filmu, którego obraz dla ludzkiego oka jest widoczny jako zmieniający się w sposób ciągły. Dzięki temu możemy zobaczyć, jak w przyspieszeniu wyglądają rozmaite zjawiska występujące w naturze, które w czasie rzeczywistym zachodzą bardzo powoli – np. rozwój kwiatów, czy zachód Słońca, a także inne wydarzenia – takie jak np. budowanie wieżowców, które może potrwać od kilku tygodni do nawet kilku lat, czy przechodzenie ludzi i zwierząt w konkretnym miejscu w mieście w ciągu pojedynczej doby. Takie zadanie możemy zrealizować za pomocą popularnego minikomputera Raspberry Pi 3A+ i dedykowanego modułu kamery, który należy podłączyć do złącza CSI na płytce PCB “Malinki”. Po zakończeniu nagrywania obraz możemy zgrać na dysk komputera zewnętrznego w celu ich dalszego przetwarzania. Do tego celu poza płytką bazową Raspberry Pi oraz modułem kamery potrzebna będzie karta microSD z wgranym systemem operacyjnym Raspbian OS, zasilacz z wtykiem microUSB o napięciu wyjściowym 5V i minimalnej wydajności prądowej wynoszącej 2,5A, mysz, klawiatura, konwerter HDMI na VGA, a także monitor komputerowy lub wyświetlacz TFT-LCD.

Gry zręcznościowe

Systemy wbudowane można wykorzystać także do celów rozrywkowych takich jak np. gry zręcznościowe – również te znane z automatów do gier wideo, które zaczęły być popularne już w latach 70. XX wieku, np. “Whac-A-Mole”, gdzie głównym zadaniem gracza jest wyłapywanie gryzoni wychodzących ze swoich kryjówek, przy czym czas przeznaczony na pojedyncze złapanie intruza jest ograniczony i odwrotnie proporcjonalny do poziomu trudności dobranego przez gracza. W celu zbudowania warstwy interfejsu komunikacyjnego gry wzorowanej na “Whac-A-Mole” w oparciu o płytkę Pocket Beagle niezbędne będzie użycie kilku przycisków współpracujących z diodami LED, potencjometru, poczwórnego wyświetlacza siedmiosegmentowego, brzęczyka – sygnalizatora akustycznego, a także płytki stykowej. Wówczas brzęczyk wraz z diodami LED, sygnalizują odliczanie do rozpoczęcia tury, a pozostałe diody LED (których liczba jest taka sama jak liczba przycisków) zaświecają się pojedynczo w sposób losowy, co jest dokładną analogią do gryzoni wychodzących z kryjówek, tak jak ma to miejsce w oryginale gry “Whac-A-Mole”. Im więcej razy gracz trafi w każdy przycisk, dla którego przyporządkowana dioda się świeci, tym większą liczbę punktów uzyska. Za pomocą potencjometru jest regulowany stopień trudności określany przez czas pojedynczego świecenia się diod LED skorelowanych z poszczególnymi przyciskami, a wyświetlacz wskazuje liczbę zdobytych punktów.

Jak oceniasz ten wpis blogowy?

Kliknij gwiazdkę, aby go ocenić!

Średnia ocena: 5 / 5. Liczba głosów: 1

Jak dotąd brak głosów! Bądź pierwszą osobą, która oceni ten wpis.

Zobacz również