Sterownik silników z interfejsem DMX

Sterownik silników z interfejsem DMX
Pobierz PDF Download icon
W Elektronice Praktycznej opublikowano wiele projektów urządzeń wyposażonych w interfejs DMX. Były to głównie urządzenia przetwarzające sygnał DMX lub manipulatory. Tym razem zostanie opisany układ wykonawczy, który może sterować silnikami poruszającymi elementami sceny (zasłony, postacie, ustawienia świateł itp.). W wersji bazowej ma możliwość zasilania 3 silników, ale łatwo urządzenie można rozbudować, tak aby można było zasilać ich aż 6. Dzięki zastosowaniu sterownika można zdalnie, np. za pośrednictwem konsoli DMX, sterować prędkością obrotową oraz kierunkiem obrotów. Rekomendacje: sterownik przyda się osobom zajmującym się techniczną oprawą imprez.

Rysunek 1. Schemat ideowy sterownika silników z interfejsem DMX

Schemat ideowy sterownika silników z interfejsem DMX pokazano na rysunku 1. Jest on zasilany z tego samego napięcia doprowadzonego do złącza J6, co silniki. Napięcie zasilające musi zawierać się w granicach 7...40 V. W zasilaczu zastosowano układ scalony przetwornicy MC34063 (U1) w typowym układzie aplikacyjnym.

Dzięki jego użyciu nie jest wymagane użycie radiatora, nawet wtedy, gdy urządzenie jest zasilanie napięciem maksymalnym (+40 V). Dioda D1 zabezpiecza stabilizator przed skutkami zamiany polaryzacji zapięcia zasilającego.

Dane DMX są odbierane za pomocą typowego drivera interfejsu R485 - układu scalonego MAX485 (U6). Można zastosować tańsze odpowiedniki np. AD485, ST485. Autor artykułu ma natomiast złe doświadczenia z SN75176, których prędkość transmisji była niewystarczająca.

Zwora JP3 umożliwia załączenie rezystora-terminatora linii. Mikrokontroler ATmega128 (U4) dekoduje dane DMX i odpowiednio steruje stopnie mocy za pomocą przebiegu PWM. Wykorzystano trzy sprzętowe generatory PWM, których to ATmega128 zawiera aż sześć.

Rysunek 2. Schemat montażowy sterownika silników z interfejsem DMX

Dzięki temu jest łatwo rozbudować sterownik o kolejne trzy kanały. Mikrokontroler kontroluje pobór prądu przez silniki. W razie przekroczenia dopuszczalnego zakresu wybrany kanał zostaje zablokowany, nie dopuszczając do uszkodzenia stopnia mocy.

Bufory sterujące silnikami zbudowano na układach L6202 w obudowie DIP18. Bez stosowania radiatorów mogą one dostarczać do 1,5 A ciągłego prądu obciążenia i do 5 A w impulsie. Wszystko to za sprawą zastosowania tranzystorów MOS o małej rezystancji kanału.

Układ ma wbudowane diody tłumiące przepięcia powstające w momencie wyłączania indukcyjności i - w przeciwieństwie do L298 - nie trzeba dodawać ich na zewnątrz. Ponadto, L6202 ma wbudowane zabezpieczenie przed przegrzaniem. Ze względu na to, że w mostku układu drivera wszystkie tranzystory mają kanał N, stało się konieczne wytworzenie napięcia wyższego od napięcia zasilania, aby wysterować tranzystory w górnej gałęzi mostka.

Problem rozwiązuje obwód bootstrap (znany z dawnych wzmacniaczy audio, np. UL1480), który wymaga dołączenia kondensatorów do wyprowadzeń 11 i 17 układu. Obwód RC na wyjściu bufora stanowi dodatkowe zabezpieczenie (sztuczne obciążenie), jak ma to miejsce w układach wzmacniaczy audio.

Montaż i uruchomienie

Rysunek 3. Ustawienie fusebitów mikrokontrolera ATmega128

Schemat montażowy sterownika zamieszczono na rysunku 2. Montaż jest typowy i nie wymaga szczegółowego omawiania. Na początek nie zalecam montowania mikrokontrolera i układu MAX485, pod który warto zastosować podstawkę precyzyjną.

Układy L6202 należy wlutować bezpośrednio w płytkę, bez podstawek. Spowodowane jest to tym, że nóżki 4...6 i 13...15 odprowadzają ciepło z układu. Dlatego ścieżki doprowadzone do tych nóżek są takie grube, a nie z powodu płynących tam prądów.

W pierwszej kolejności uruchamiamy zasilacz. Jeśli napięcie jest poprawne (+5 V), można wlutować mikrokontroler i umieścić MAX485 w podstawce. Mikrokontroler dostarczany w zestawie jest już zaprogramowany. Jeśli chcemy zrobić to samodzielnie, należy ustawić fuses zgodnie z rysunkiem 3. Szesnastkowo:

Extended = 0xFE,
High = 0x99,
Low = 0x7F.

Następnie doprowadzamy sygnał DMX do złącza J4. Wcześniej zworkami na JP1 należy ustalić adres urządzenia (opis w tabelce w dalszej części artykułu). Obserwując diody LedDMX i LedST (opis w dalszej części artykułu) wnioskujemy czy urządzenie odbiera sygnał DMX. Jeśli nie, to najprawdopodobniej zamienione są wyprowadzenia na złączu XRL. Jeśli odbiór jest poprawny, to przyłączamy silniki do złącz J1... J3.

Sterownik zajmuje sześć adresów, kolejno:

  1. prędkość obrotowa silnika nr 1,
  2. kierunek obrotów silnika nr 1,
  3. prędkość obrotowa silnika nr 2,
  4. kierunek obrotów silnika nr 2,
  5. prędkość obrotowa silnika nr 3
  6. kierunek obrotów silnika nr 3.

Tabela 1. Opis znaczenia diod LED

Zmieniając nastawy kanału nr 1 powinniśmy zmieniać prędkość obrotową silnika nr 1. Należy pamiętać, że przy małym wypełnieniu silnik nie będzie pracował (słychać charakterystyczne buczenie). Problem można rozwiązać przypisując minimalnemu ustawieniu obrotów wartość większą niż jeden (w praktyce 5...20).

Niestety, różne silniki pozwalają się uruchomić dla różnych wartości tego parametru i nie da się tego ustandaryzować. Gdy silnik pracuje, należy zrobić zwarcie na jego zaciskach. Po 50 ms bufor zostanie wyłączony i zaświecą się diody informujące o błędzie. Błąd kasuje się zmniejszając prędkość do zera.

Obsługa

Tabela 2. Funkcje zworek

Pierwszy kanał DMX steruje prędkością obrotową silnika nr 1. Zmianę kierunku realizuje kolejny kanał DMX. Do połowy silnik obraca się w (umownie) prawo, ponad połowę w lewo, przy czym zachowano histerezę ±20, a więc w zakresie 0...148 silnik obraca się w prawo, a 255...108 w lewo.

Dzięki temu nie ma problemu z niekontrolowanymi zmianami rejestru kierunku na granicy połowy zakresu zwłaszcza, gdy silniki są sterowane za pomocą konsoli z potencjometrami. Aby nie uszkodzić silnika i mechanizmów z nim współpracujących, zmiana kierunku możliwa jest tylko wtedy, gdy silnik jest zatrzymany (kanał nr 1 w zakresie 0...7). Jeśli nastąpi przeciążenie silnika zaświecają się diody błędu. Błąd kasuje się zmniejszając prędkość silnika do zera (kanał nr 1 w zakresie 0...5). Pozostałe kanały działają identycznie.

Status sterownika jest sygnalizowany za pomocą diod LED - ich funkcje opisano za pomocą tabeli 1, a sposób ustawienia adresu - tabeli 2.

Wykaz elementów

Rezystory: (SMD 1206)
R1: 0 Ω
R2: 0,22 Ω
R3: 1,5 kΩ/1%
R4: 4,7 kΩ/1%
R6, R14, R18, R19: 10 Ω
R7, R8, R10...R12, R15, R16, R22...R26: 1 kΩ
R21, R27...R29: 10 kΩ
R20: 120 Ω
R5, R13, R17: 0,22 Ω/2 W (THT)
R9 (nie montować): pot. montażowy 10 kΩ

Kondensatory: (SMD 1206)
C2: 470 pF
C4, C7, C8, C14, C15, C19: 100 nF
C5, C6, C9...C11, C16...C18, C20: 15 nF
C12, C13: 22 pF
C1, C3: 470 µF/25 V (elektrolit. THT)

Półprzewodniki:
U1: MC34063ACD (SO8)
U2, U3, U5: L6202
U4: ATmega128-16AU (PQFP64)
U6: MAX485 (DIP8)
D1, D2: SS14
D15: SB560-DIO (Schottky 5 A)
D5...D7, D9, D11, D12, D14: dioda LED zielona, 5 mm
D4: dioda LED żółta, 5 mm
D3, D8, D10, D13: dioda LED czerwona 5 mm

Inne:
Q1: 8 MHz (rezonator kwarcowy)
L1: dławik 22 mH np. DL22-100
J1...J3, J6: TB-5.0-PP-2P, TB-5.0-PIN (złącze TB z listwą kołkową)
J4: NS25-W3 (gniazdo NS25 3 pin), NS25-G3 (wtyk NS25 3 pin), NS25-T - 3 szt. terminali do wtyku NS25, XLR-3G-C (wtyk XRL-3 do obudowy)
J7: IDC16 (wtyk do druku)
J8, JP2: IDC10 (wtyk do druku)
JP1: listwa kątowa goldpin 2×12
JP3: listwa kątowa goldpin 2×1
JP4: IDC14 (wtyk do druku)
PPIN8: podstawka precyzyjna

Uwagi

Generator przebiegu PWM w ATmega128 ma tę właściwość, że przy nastawie 0 generuje impuls o czasie trwania 1/256 okresu. Powoduje to ciche "bzyczenie" silnika. Aby wyeliminować ten efekt, przy nastawie 0 jest dezaktywowany sygnał Enable doprowadzony do stopnia mocy.

Podobnego "zabiegu" wymagała zmiana kierunku obrotów, która - jak pamiętamy - jest możliwa tylko po zatrzymaniu silnika. Przeciążenie jest wykrywane i sygnalizowane przez mikrokontroler za pomocą przerwania. Dociekliwych zachęcam do zajrzenia do kodu źródłowego programu, który jest dostępny w materiałach źródłowych udostępnionych dla projektu.

Sławomir Skrzyński, EP

Artykuł ukazał się w
Elektronika Praktyczna
listopad 2015
DO POBRANIA
Pobierz PDF Download icon
Materiały dodatkowe
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik grudzień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje listopad - grudzień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna grudzień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich grudzień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów