Świat elektroniki potrafi być świetną zabawą i dostarczać emocji, ale często bywa też onieśmielający, gdy patrzysz na schemat połączeń i nie wiesz, od czego zacząć. Co więcej, zrozumienie kodu wgrywanego na mikrokontroler może być trudne, jeśli dopiero zaczynasz. Na szczęście jesteśmy tutaj, aby dać Ci informacje potrzebne do rozpoczęcia nauki!
W tym artykule wyjaśnimy, czym jest mikrokontroler, omawiając jego zalety i funkcje. Następnie pokażemy prosty projekt uruchomienia siłownika liniowego z mikrokontrolera, zaczynając od jego wysuwania/chowania. Niezależnie od tego, czy dopiero zaczynasz przygodę z mikrokontrolerami, czy jesteś doświadczonym hobbystą i chcesz sobie odświeżyć wiedzę — ten artykuł jest dla Ciebie. To jeden z wielu, które nadchodzą, w których przyjrzymy się bliżej shieldom do mikrokontrolerów, modułom czujników i sterownikom silników. Zacznijmy jednak od podstaw!
Czym jest mikrokontroler: zalety i funkcje?

Spójrz w lewo, potem w prawo. Prawdopodobnie zobaczysz wokół siebie w domu lub biurze wiele rzeczy z układem scalonym (IC) w środku — te niewielkie, krzemowe układy to mózgi Twoich urządzeń elektronicznych. Płytki mikrokontrolerów mają jeden lub więcej takich układów oraz zestaw peryferiów.
Mikrokontrolery to małe, wszechstronne i niedrogie urządzenia, które z powodzeniem mogą wykorzystywać i programować nie tylko doświadczeni elektronicy, ale też hobbyści, studenci i specjaliści z innych dziedzin.
Mikrokontroler zazwyczaj zawiera następujące elementy:
- Central Processing Unit (CPU): Wykonuje operacje arytmetyczne, zarządza przepływem danych i generuje sygnały sterujące na podstawie zestawu instrukcji (tj. kodu).
- Pamięć nieulotna: Przechowuje program mikrokontrolera, który dokładnie określa, co ma robić CPU.
- Pamięć ulotna (RAM): Służy do tymczasowego przechowywania danych. Po odłączeniu zasilania mikrokontrolera te dane są tracone.
-
Peryferia: Moduły sprzętowe, które umożliwiają mikrokontrolerowi interakcję ze światem zewnętrznym.
- Przetworniki (AC-DC, DC-AC oraz generatory napięcia odniesienia).
- Generowanie sygnału zegarowego.
- Timery.
- Wejścia i wyjścia.
- Komunikacja szeregowa.
Mikrokontroler jest bardzo opłacalnym rozwiązaniem, ponieważ można go produkować taniej niż jego elektromechanicznych poprzedników. Co więcej, płytki deweloperskie, takie jak Arduino, umożliwiają szybkie programowanie i są idealne do tworzenia prototypów. Ponieważ większość układu stanowią układy scalone, zużycie energii przy użyciu mikrokontrolera jest znacznie mniejsze niż w przypadku pojedynczych elementów w układach logiki przekaźnikowej. Na koniec, typowy mikrokontroler jest programowalny, więc w razie potrzeby możesz użyć go ponownie w innym projekcie.
Jak użyć mikrokontrolera z siłownikiem liniowym do jego wysuwania/chowania

To czas, aby przetestować siłownik liniowy Progressive Automations z mikrokontrolerem i go wysuwać/chować! Przeprowadzimy Cię przez okablowanie oraz sposób działania kodu, aby móc dowolnie modyfikować sterowanie siłownikiem liniowym.
Czego będziesz potrzebować
Oto, czego potrzebujesz, aby sparować mikrokontroler z siłownikiem liniowym. Wszystkie komponenty kupisz na stronie Progressive Automations:
- Zasilacz 12 V DC
- Arduino Mega
- LCD z przyciskami
- Przekaźnik 2-kanałowy
- Siłownik (12 V DC o maks. poborze prądu 10 A)
- Przewód USB typu A/B, przewody połączeniowe (jumpery)
Okablowanie i wgrywanie kodu
Na szczęście dzięki shieldom okablowania jest niewiele. Proste połączenia sprawiają, że to idealny projekt dla początkujących, by nauczyć się pracy z mikrokontrolerem. Gdy masz już wymagane elementy, wykonaj poniższe połączenia krok po kroku. Jako odniesienia użyj grafiki z pinami Arduino.
- LCD nałożony na Arduino Pin 26
- IN1 przekaźnika do Arduino Pin 30
- IN2 przekaźnika do Arduino 5V
- VCC przekaźnika do Arduino GND
- GND przekaźnika do NO2 przekaźnika
- 12 V DC do NC2 przekaźnika
- 12 V DC do NC1 przekaźnika
- NC2 przekaźnika do NO1 przekaźnika
- NO2 przekaźnika do plusa siłownika
- COM1 przekaźnika do minusa siłownika
- Przekaźnik COM2

Omówienie kodu
Pełny kod tego projektu znajdziesz tutaj.
Kod zrozumiały dla płytki mikrokontrolera Arduino jest napisany w języku C. Powstało wiele bibliotek, które ułatwiają obsługę różnych peryferiów — w tym przypadku LCD (#include <LiquidCrystal.h>).
Pierwsza część kodu to konfiguracja pinów. Numery pinów odpowiadają połączeniom przekaźników z pinami Arduino. Jeśli zdecydujesz się użyć innej płytki mikrokontrolera Arduino, upewnij się, że zmienisz te numery tak, by odpowiadały pinom, do których podłączysz przekaźniki.
W funkcji setup piny przekaźników są ustawiane jako OUTPUT i ustawiane na LOW. Dodatkowo do LCD wysyłane są polecenia wyświetlenia tekstu i skonfigurowania strzałek kursora. W pętli głównej kod stale sprawdza, czy któryś z przycisków na płytce LCD został naciśnięty. W tym przypadku przyciski są podłączone do pinu A0 Arduino. Po wciśnięciu przycisku odczytana przez Arduino wartość będzie albo bliska 100, albo bliska 255, w zależności od tego, które przyciski naciśnięto. Wartości te nie zawsze są dokładne, zwłaszcza jeśli do Arduino podłączona jest dodatkowa elektronika mogąca zakłócać sygnał. Dlatego uwzględniono wartość progową, którą można dostosować, jeśli przyciski są zbyt czułe na zakłócenia.
Jeśli masz Arduino podłączone do komputera przez USB, możesz użyć monitora portu szeregowego w Arduino IDE, aby zobaczyć sygnał wyjściowy z pinu A0. Wystarczy dodać poniższą linię kodu do pętli głównej:
Serial.println(A0);
Na podstawie odczytu wykonywana jest prosta logika określająca, czy wciśnięto przycisk góra czy dół. Gdy wciśnięto przycisk góra, jeden przekaźnik zostaje ustawiony na HIGH, a drugi na LOW. Gdy wciśnięto przycisk dół, logika jest odwrócona. Aktywacja i dezaktywacja przekaźników powoduje wysuwanie/chowanie siłownika.
Skoro wiesz już, jak działa kod, możesz się nim pobawić, dodając dodatkową logikę, np. włączać diodę LED, gdy siłownik się wysuwa, i wyłączać ją, gdy się chowa. To dość proste: wystarczy zdefiniować numer pinu, ustawić go jako OUTPUT, a następnie w instrukcji if lub else if ustawić ten pin na HIGH (polecenie digitalWrite).
Podsumowanie
Praca z mikrokontrolerem Arduino i siłownikiem może być naprawdę przyjemna i satysfakcjonująca. Nauka programowania prostego mikrokontrolera do sterowania siłownikiem, zwłaszcza w języku C, to świetny sposób na poszerzenie wiedzy i być może przekucie umiejętności programistycznych w karierę. Zacznij od podstaw i stopniowo przechodź do bardziej złożonych projektów.
W kolejnych artykułach omówimy różne shieldy, które można stosować z Arduino, i pokażemy nieco bardziej złożone fragmenty kodu. Ponadto zbadamy użycie czujników do sterowania fragmentami Twojego kodu sterującego siłownikiem liniowym. Jeśli masz dodatkowe pytania dotyczące mikrokontrolerów lub podłączania siłownika liniowego do mikrokontrolera, prosimy, nie wahaj się skontaktować z nami!