CassetteRXTX - karta przekaźników sterowanych radiowo z pilota

CassetteRXTX - karta przekaźników sterowanych radiowo z pilota

Prezentowany projekt to karta przekaźników sterowana drogą radiową w paśmie 433 MHz za pomocą pilota. Urządzenie zostało opracowane na potrzeby zdalnego ręcznego sterowania nawadnianiem w ogródku. Co prawda do tego celu były mi potrzebne tylko trzy wyjścia przekaźnikowe, ale postanowiłem od razu zwiększyć ilość wyjść, aby projekt w przyszłości mógł być zastosowany do innych celów.

Podstawowe parametry:
  • urządzenie składa się z dwóch części – karty przekaźników i pilota zdalnego sterowania,
  • karta przekaźników ma 7 wyjść,
  • pilot ma 6 przycisków do załączania 6 wyjść i dodatkowy przycisk awaryjny, który rozłącza 7 wyjście,
  • karta może być zasilana napięciem z zakresu 24...42 V AC/DC,
  • pilot wymaga zasilania w postaci dwóch baterii 1,5 V.

Urządzenie składa się z dwóch części – karty przekaźników i pilota zdalnego sterowania. Karta może być zasilana napięciem z zakresu 24...42 V AC/DC, natomiast pilot należy zasilać z dwóch baterii 1,5 V połączonych szeregowo. Do wyjść przekaźnikowych mogą zostać podłączone napięcia 230 V AC, przy czym należy pamiętać, aby zastosować przekaźniki z cewką na 12 V, które mają wystarczającą zdolność łączeniową, odpowiednią do podłączonych obciążeń.

Budowa i działanie

Schemat ideowy karty wykonawczej, która ma wyjścia przekaźnikowe, został pokazany na rysunku 1. Jest to układ, który odbiera sygnał z pilota zdalnego sterowania a następnie załącza określony przekaźnik, dlatego płytka została nazwana CassetteRX. Na wejściu zasilania karty znajduje się bezpiecznik zwłoczny T1 o prądzie znamionowym 1 A, a za nim mostek prostowniczy B1. Za mostkiem znajduje się rezystor R19 o odpowiedniej mocy, który wraz z kondensatorem C6 tworzy filtr dolnoprzepustowy dla przetwornicy IC1.

Rysunek 1. Schemat ideowy odbiornika

Za rezystorem znajduje się także dioda TRAN zabezpieczająca przed przepięciami, której napięcie przebicia wynosi 58 V. Jako przetwornicę obniżającą napięcie zasilania do wartości 12 V wybrano układ LM2575HV-12V, która ma maksymalne napięcie wejściowe wynoszące 63 V. Układ IC1 wraz z dławikiem L1, diodą D1 kondensatorem C7 tworzy typowy układ BUCK. Przetwornica ma na stałe ustawioną wartość napięcia wyjściowego na 12 V. Z tego napięcia, za pomocą stabilizatora LM1117-3.3, jest uzyskiwane napięcie 3,3 V niezbędne do zasilania mikrokontrolera oraz transceivera HC-12.

Złącze HC-12 służy do podłączenia modułu radiowego. Kondensatory C12, C13 filtrują zasilanie modułu HC-12. Do modułu należy podłączyć antenę, aby zwiększyć zasięg ponieważ bez dodatkowej anteny układ ma niewielki zasięg – tylko kilka metrów. Za pomocą tranzystora T1, wraz z rezystorami R8, R9, R10, mikrokontroler może sterować wejściem SET ustawiając na nim stan wysoki lub niski. W zależności od stanu na wyprowadzeniu SET, mikrokontroler znajduje się w stanie, w którym może zmieniać ustawienia modułu lub jest w stanie nadawania i odbierania. Za pomocą przełącznika S1 możemy zmieniać ustawienia odbiornika.

Karta przekaźników ma siedem wyjść. Każdy tor wyjściowy ma taką samą budowę, dlatego dalej opisana zostanie budowa tylko jednego toru. Przekaźnik R1 typu RM84 z cewką na 12 V jest sterowany za pomocą tranzystora T7. Rezystor R17 ogranicza prąd płynący na bazę tranzystora natomiast rezystor R18 uodparnia układ na zakłócenia. Dioda D2 zabezpiecza tranzystor T7 przed uszkodzeniem związanym z przełączaniem przekaźnika. Rezystor R23 wraz z diodą LED1 sygnalizuje o załączeniu przekaźnika.

Jako mikrokontroler sterujący został wybrany STM32F103C8T6, który jest taktowany za pomocą zewnętrznego rezonatora kwarcowego. Diody LED LL1, LL2, INFOLED są diodami sygnalizacyjnymi. Rezystor R5 oraz kondensator C22, tworzą sprzętowy układ resetu. Kondensatory C5, C19, C1, C2 filtrują zasilanie układu. Złącze PROGRAMATOR służy do programowania oraz debugowania mikrokontrolera za pomocą interfejsu SWD.

Rysunek 2. Schemat ideowy nadajnika

Na rysunku 2 zaprezentowano schemat pilota, który nosi nazwę CassetteTX. Do padów BAT+ oraz BAT– należy dołączyć dwie baterie 1,5 V połączone szeregowo. Na samym wejściu znajduje się bezpiecznik resetowalny F1 o prądzie znamionowym 250 mA. Bezpośrednio za bezpiecznikiem umieszczono diodę Schottky’ego, która zabezpiecza cały układ przed podłączeniem zasilania o odwróconej polaryzacji. Dioda D1 zapewnia także mały spadek napięcia. Przetwornica IC2 wraz z dławikiem L1, kondensatorami C6, C7, C8, C9, C10 oraz dzielnikiem rezystancyjnym R1, R2 tworzy układ podwyższający. Dzielnik został tak dobrany aby za przetwornicą otrzymać napięcie 3,3 V, z którego jest zasilany mikrokontroler oraz moduł HC-12.

Przełącznik typu dipswitch S1 służy do zmiany ustawień tzn. ustawienia adresu oraz kanału nadawania. Ustawienia tego przełącznika muszą być zgodne z ustawieniami przełącznika odbiornika – CassetteRX. Kondensatory C12, C13, C14 filtrują zasilanie do transceivera HC-12, natomiast poprzez tranzystor T1 mikrokontroler steruje czy do modułu są wprowadzane nowe ustawienia czy po prostu znajduje się on w trybie nadawania oraz odbierania danych.

Do padów SB1, SB2 można podłączyć wyłącznik awaryjny (tzw. Grzybek), który jest normalnie zwarty i działa na ostatni przekaźnik płytki PCB odbiornika. Przekaźnik ten w normalnym trybie pracy jest wysterowany. W momencie wciśnięcia przycisku bezpieczeństwa, następuje wyłączenie przekaźnika.

Jako mikrokontroler sterujący na płytce nadajnika został wybrany STM32F103C8T6, który ma obudowę LQFP48. Procesor jest taktowany z zewnętrznego rezonatora kwarcowego 8 MHz. Kondensatory C1, C2, C5, C19 są kondensatorami filtrującym zasilanie mikrokontrolera. Rezystor R4 zapewnia prawidłowe bootowanie mikrokontrolera. Układ RC tworzony przez R5, C22 zapewnia sprzętowy reset procesora. Złącze PROGRAMATOR służy do programowania oraz debugowania mikrokontrolera za pomocą interfejsu SWD.

Elementy BT1...BT6 są przyciskami typu microswitch. Naciśnięcie przycisku jest sygnalizowane zaświeceniem diody LEDPUSH. Za pomocą diody INFOLED jest sygnalizowane potwierdzenie załączenia danego wyjścia.

Montaż i uruchomienie

Płytka PCB odbiornika CassetteRX jest dwuwarstwowa. Na warstwie TOP oraz BOTTOM zostały wylane obszary masy, z wyjątkiem obszaru zawierającego styki wykonawcze przekaźników. Obszar masy został oddzielony od styków wykonawczych aby w momencie sterowania napięciem 230 V AC nie nastąpiło jego przebicie na masę oraz żeby odseparować masę od zakłóceń pochodzących z linii, która jest sterowana. Na całej płytce zostały rozmieszone przelotki łączące ze sobą obszary masy po obu stronach i wyrównujące tym samym ich potencjał. Płytka zawiera trzy otwory montażowe 3 mm umożliwiające przykręcenie jej do obudowy. Schemat płytki PCB został pokazany na rysunku 3.

Rysunek 3. Schemat płytki PCB odbiornika

Płytka PCB nadajnika także jest dwuwarstwowa. Na warstwie BOTTOM zostały umieszczone przyciski typu SMD (microswitch) oraz dwie diody sygnalizacyjne. Na stronie TOP zostały rozmieszczone wszystkie pozostałe elementy elektroniczne. Obie warstwy zawierają wylewki masy, które połączono licznymi przelotkami wyrównującymi potencjał. Płytka nie ma otworów montażowych dlatego do obudowy należy ją przytwierdzić za pomocą kleju. Schemat płytki PCB pilota został pokazany na rysunku 4.

Rysunek 4. Schemat płytki PCB nadajnika

Montaż należy rozpocząć od przylutowania wszystkich elementów zasilania na obu płytkach. Po tej czynności należy podłączyć odpowiednie wartości napięcia zasilania dla obu płytek, np. 30 V DC dla płytki odbiornika oraz np. 2 V do płytki nadajnika, a następnie należy sprawdzić czy na wyjściu przetwornicy nadajnika uzyskujemy 3,3 V, natomiast na wyjściu przetwornicy odbiornika 12 V. W odbiorniku trzeba także sprawdzić czy stabilizator LDO poprawnie stabilizuje napięcie do wartości 3,3 V. Jeżeli napięcia są prawidłowe można przystąpić do przylutowania wszystkich pozostałych elementów zaczynając od elementów SMD. Elementy przewlekane należy przylutować na samym końcu.

Następnie, za pomocą przełączników dipswitch, należy ustawić taki sam kanał dla odbiornika oraz nadajnika. Kanał jest ustawiany za pomocą przełączników S1...S4. Kanał można ustawiać tylko przed podłączeniem zasilania do nadajnika oraz odbiornika.
Po wykonaniu powyższych czynności można podłączyć programator np. ST LINK V2 i załadować programy do nadajnika oraz odbiornika. Do tego zadania można użyć programu STM32 ST-LINK Utility. Po zaprogramowaniu procesorów należy podłączyć antenki do gniazd IPEX modułów HC-12, a następnie podłączyć powtórnie odpowiednie zasilanie do odbiornika oraz nadajnika.

Za pomocą pinow A1...A4 od przełącznika dipswitch należy ustawić taki sam adres dla nadajnika oraz odbiornika (Uwaga adres musi być różny od zera). Po naciśnięciu przycisku na pilocie powinien się zmienić stan danego przekaźnika, który jest przypisany do tego przycisku. Jeśli wszystko działa prawidłowo można przystąpić do zamontowania odbiornika oraz nadajnika w obudowie. Zmontowane płytki nadajnika oraz odbiornika zostały pokazane na fotografii 1.

Fotografia 1. Zmontowane płytki urządzenia

Plik główny programu nadajnika CasseteTX – main.c zawiera definicje pokazane na listingu 1.

Listing 1. Definicje określające przypisanie przycisku pilota do danego wyjścia

#define wPB1 !((GPIOA->IDR) & GPIO_Pin_0)
#define wPB2 !((GPIOA->IDR) & GPIO_Pin_1)
#define wPB3 !((GPIOA->IDR) & GPIO_Pin_2)
#define wPB4 !((GPIOA->IDR) & GPIO_Pin_3)
#define wPB5 !((GPIOA->IDR) & GPIO_Pin_4)
#define wPB6 !((GPIOA->IDR) & GPIO_Pin_5)
#define wPBsafe ((GPIOA->IDR) & GPIO_Pin_6)

Zamieniając numery wyprowadzeń można zmienić przypisanie przycisku do danego wyjścia. W programie odbiornika CassetteRX, także w pliku głównym programu – main.c, znajdują się definicje przyporządkowania przekaźników do danego przycisku. Zmieniając numery portów także tutaj mamy możliwość łatwej zmiany przydzielonych przycisków do przekaźników. Definicje w programie odbiornika zostały pokazane na listingu 2.

Listing 2. Definicje wyjść w programie odbiornika

#define R1off GPIOA->BRR = GPIO_Pin_0
#define R1on GPIOA->BSRR = GPIO_Pin_0
#define R2off GPIOA->BRR = GPIO_Pin_1
#define R2on GPIOA->BSRR = GPIO_Pin_1
#define R3off GPIOA->BRR = GPIO_Pin_2
#define R3on GPIOA->BSRR = GPIO_Pin_2
#define R4off GPIOA->BRR = GPIO_Pin_3
#define R4on GPIOA->BSRR = GPIO_Pin_3
#define R5off GPIOA->BRR = GPIO_Pin_4
#define R5on GPIOA->BSRR = GPIO_Pin_4
#define R6off GPIOA->BRR = GPIO_Pin_5
#define R6on GPIOA->BSRR = GPIO_Pin_5

Obudowy

Obudowy nadajnika oraz odbiornika zostały wykonane w technice druku 3D. Obudowa odbiornika składa się z dwóch części: podstawy głównej oraz pokrywki. Część główna zawiera wypusty z otworami na śrubki 3 mm służące do przymocowania płytki PCB.

Po przymocowaniu płytki PCB pokrywkę należy przykręcić używając śrubek 3 mm. Model obudowy odbiornika został pokazany na rysunku 5.

Rysunek 5. Projekt obudowy odbiornika

Obudowa nadajnika składa się z trzech części – frontowej, do której należy przymocować płytkę PCB nadajnika, tylnej oraz klapki na baterie. Część tylną oraz frontową należy podłączyć za pomocą śrubek 3 mm. Część frontowa ma z przodu otwór prostokątny, aby można było zobaczyć stan diod sygnalizacyjnych. W projekcie w to miejsce został przyklejony prostokąt z białego filamentu o grubości 1 mm. Nieduża grubość tego elementu zapewnia prześwit światła diod LED. Model obudowy nadajnika został pokazany na rysunku 6.

Rysunek 6. Projekt obudowy pilota

Obsługa

Tak jak wcześniej wspomniano, kanał pracy nadajnika oraz odbiornika musi być ustawiony przed podaniem napięcia zasilania. Mikrokontroler odbiornika podczas uruchamiania sprawdza aktualnie ustawiony kanał pracy i jeżeli jest inny niż był przy poprzednim uruchomieniu wtedy przepisuje nowy kanał do pamięci flash oraz uruchamia procedurę zmiany ustawienia kanału w module HC-12. W momencie trwania powyższej procedury diody LL1, LL2 migają naprzemiennie, natomiast po jej zakończeniu zaczynają migać razem przez około 2 s.

W nadajniku zmiana kanału także jest sygnalizowana miganiem diody INFOLED. Kanał w odbiorniku musi być zgodny z kanałem nadajnika aby urządzenia mogły się ze sobą komunikować. Adresy nadajnika oraz odbiornika, także muszą być takie same, przy czym ich wartość musi być różna od zera (przynajmniej jeden wybrany przełącznik każdego DIPSWITCH). Po naciśnięciu przycisku na pilocie następuje wysterowanie danego przekaźnika.

Odbiornik, po wysterowaniu wyjścia, wysyła potwierdzenie do nadajnika, wtedy ten miga diodą INFOLED jeden raz w przypadku załączenia danego wyjścia lub dwa razy w przypadku jego wyłączenia. Po wciśnięciu przycisku awaryjnego następuje zamiganie diody INFOLED trzy razy oraz wyłączenie ostatniego przekaźnika bezpieczeństwa. Po odblokowaniu przycisku awaryjnego następuje ponowne wysterowanie przekaźnika bezpieczeństwa oraz zamiganie diody INFOLED dwa razy na pilocie.

Urządzenia nie należy stosować w celu zastąpienia fabrycznych profesjonalnych kaset sterowniczych lub urządzeń radiowych, służących np. do sterowania suwnicami.

Należy także pamiętać, że nie należy za pomocą prezentowanego projektu sterować rzeczami, które mogłyby zagrażać życiu ludzkiemu, mieniu lub zwierzętom.

Krzysztof Miękus
lordwest1989@tlen.pl

Wykaz elementów: Karta przekaźników CassetteRX
Rezystory: (SMD0805)
  • R1, R3, R7, R12, R15, R17, R20: 4,7 kΩ
  • R2, R6, R10, R11, R14, R16, R18, R21: 100 kΩ
  • R4: 510 Ω
  • R5, R8, R9: 10 kΩ
  • R13, R22, R30, R31: 680 Ω
  • R19: 1 Ω/0,75 W SMD2010
  • R23, R24, R25, R26, R27, R28, R29: 2,2 kΩ
Kondensatory:
  • C1, C2, C5, C8, C9, C13, C19, C22: 100 nF SMD0805
  • C3, C4: 22 pF SMD0805
  • C6: 1 mF/63 V
  • C7: 330 μF/25 V
  • C10, C11: 1 μF SMD0805
  • C12: 22 μF/25 V
Półprzewodniki:
  • D1: dioda 2 A/60 V SMB
  • TRAN: transil 58 V/600 W DO214AC
  • D2…D8: 4148 MINIMELF
  • B1: mostek prostowniczy MDB6S
  • INFOLED, LED1...LED7, LL1, LL2, SUP: dioda LED SMD0805
  • T1…T8: BC847 (SOT23)
  • IC1: LM2575HV-12V (TO263-5)
  • IC2: REG1117 – 3,3 V (SOT223)
  • U2: moduł radiowy HC12
  • STM32F103: mikrokontroler STM32F103C8T6 (LQFP48)
Pozostałe:
  • F1: bezpiecznik 1 A
  • L1: dławik 330 μH/1,4 A/550 mΩ THT
  • Q1: rezonator kwarcowy 8 MHz HC49/S-THT
  • PROGRAMATOR: szpilki goldpin
  • S1: dipswitch8
  • O1…O6, SAFE: złącza AK500/3
  • SUPPLY: złącze AK500/2
  • R1-RM84...R6-RM84, RSAFE-RM84 RM84: przekaźnik RM84 12 V
Pilot zdalnego sterowania CassetteTX
Rezystory: (SMD0805)
  • R1: 20 kΩ
  • R2: 12 kΩ
  • R3: 0 Ω
  • R4: 510 Ω
  • R5, R8, R9: 10 kΩ
  • R6, R10: 100 kΩ
  • R7: 1 kΩ
  • R13: 680 Ω
Kondensatory:
  • C1, C2, C5, C11, C13, C19, C22: 100 nF SMD0805
  • C3, C4: 22 pF SMD0805
  • C6…C10, C12, C14: 10 μF/10 V SMD0805
Półprzewodniki:
  • D1: dioda schottky SMB
  • D2…D7: 4148 MINIMELF
  • INFOLED, LEDPUSH: dioda LED SMD0805
  • T1: BC847 (SOT23)
  • IC2: AP1603-ADJ (SOT26)
  • U2: moduł radiowy HC12
  • STM32F103: mikrokontroler STM32F103C8T6 (LQFP48)
Inne:
  • F1: bezpiecznik 250 mA SMD
  • L1: dławik 22 μH/300 mA/SMD1210
  • PROGRAMATOR: szpilki goldpin
  • Q1: rezonator kwarcowy 8 MHz HC49/S-THT
  • S1: dipswitch8
  • BT1...BT6: mikroswitch SMD
Artykuł ukazał się w
Elektronika Praktyczna
grudzień 2021
DO POBRANIA
Materiały dodatkowe

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik kwiecień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio marzec - kwiecień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje marzec 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich kwiecień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów