System pozwala na zmianę parametrów sterowania, dzięki czemu można go dostosować do konkretnych potrzeb i preferencji użytkownika. Zapewni kontrolę nad najważniejszymi urządzeniami w domu. Można go rozszerzyć, sterując nim szeroką gamą inteligentnych urządzeń domowych, co uczyni z niego centrum sterowania dla wielu aplikacji.
Prototyp układu z joystickiem pokazano na fotografii.
Układ i działanie
Układ składa się z transformatora sieciowego 230 V na 9 V/500 mA (X1), mostka prostowniczego (BR1), płytki Arduino Uno (Board1), modułu joysticka (podłączonego przez CON6), stabilizatora napięcia 5 V LM7805 (IC1), pięciu układów czasowych (timerów) LM555 (IC2...IC6), pięciu tranzystorów BC547 (T3...T7), pięciu tranzystorów 2N2219 (T1, T2, T8...T10), pięciu przekaźników SPDT 5 V (RL1...RL5) i kilku innych elementów. Sterowaniu podlega pięć urządzeń, przystosowanych do zasilania z sieci 230V (APPL.1...APPL.5).
Joystick jest zasadniczo kombinacją dwóch potencjometrów, obracających się w płaszczyznach X i Y. Napięcia z obu potencjometrów, zmieniające się zgodnie z ruchem wałka joysticka, są mierzone przez Arduino. Ruch joysticka powoduje zapalanie czterech diod LED (LED3...LED6), wskazujących kierunek ruchu wałka. Joystick zawiera przycisk, który aktywuje piątą diodę (LED2). Jeszcze jedna dioda (LED1) sygnalizuje załączone zasilanie systemu.
Joysticki są dostępne w różnych kształtach i rozmiarach. Większość joysticków ma wyjścia analogowe. Składowe wychylenia wałka w osi X i Y są reprezentowane przez stany odpowiednich potencjometrów. Gdy joystick jest przesuwany, napięcie z każdego potencjometru zmienia się w zależności od kierunku przesunięcia. Dwa wejścia przetwornika ADC pozwalają mierzyć napięcia potencjometrów i wykrywać jeden z czterech kierunków ruchu joysticka.
Joystick zastosowany tutaj również ma dwa potencjometry. Są one zasilane napięciem 5 V z Arduino. Gdy ruszamy joystickiem, zmienia się wartość napięcia z potencjometrów, a tym samym wartość analogowa na stykach A0 i A1. Arduino odczytuje te wartości i odpowiednio załącza diody LED3...LED6. Przycisk joysticka steruje diodą LED2.
Jest pięć jednakowych bloków przełączających, zbudowanych na LM555 (IC2...IC6). Przyjrzyjmy się jak działa układ IC2, który steruje przekaźnikiem RL1. Piny 2 i 6 – wejście progowe i wyzwalające – są utrzymywane na poziomie równym połowie napięcia zasilania przez dwa rezystory 1 kΩ (R3 i R4). Kondensator C2 ładuje się przez rezystor 100 kΩ (R11), gdy wyjście LM555 (pin 3) jest w stanie wysokim, i rozładowuje się, gdy wyjście to jest w stanie niskim. Po wykryciu przesunięcia joysticka, napięcie z kondensatora C2 jest podawane na piny 2 i 6 przez tranzystor T3, powodując cykliczną zmianę stanu wyjścia na przeciwny. Po zwolnieniu joysticka aktualny stan wyjścia LM555 jest utrzymywany na stałe, a kondensator jest stale ładowany lub rozładowywany, zależnie od tego stanu.