Sterowanie diod WS2812 poprzez DMX

Sterowanie diod WS2812 poprzez DMX
Pobierz PDF Download icon

Sterowanie diodami WS2812 za pośrednictwem DMX nie jest pomysłem wyjątkowym, jednak zrealizowanie tego zadania z użyciem interfejsu UART i systemu przerwań na bazie mikrokontrolera AVR nie jest zadaniem łatwym. Natomiast praca w w tym samym czasie jako urządzenie DMX oraz odbiór sygnału z USB z prędkością 1Mb/s wydaje się niemożliwe. Opracowanie takiego systemu wymagało zastosowania nieszablonowych rozwiązań.

Spis treści

Komendy sterujące

Komendy są interpretowane gdy nie trwa transmisja DMX po RS485/422 lub USB. Transmisja jest sygnalizowana cykliczną zmianą stanu sygnału CD (Carier Detect) w terminalu. Komendy można wydawać z terminala przez USB (wirtualny port COM dla FT221). Parametry transmisji (prędkość, format ramki) nie są istotne. Komendę rozpoczyna znak „:” kończy CR lub CR+LF. Każda komenda jest potwierdzana komunikatem na ekranie (najczęściej wyświetlenie wprowadzonych parametrów). W tabeli 5 znajduje się spis komend (komendy wprowadzamy bez spacji, dodane je dla lepszej czytelności).

Możliwość zmian

W urządzeniu nie przewidziano możliwości wyboru adresu bazowego, który aktualnie jest ustawiony na pierwszy kanał DMX. Jeśli zajdzie taka potrzeba można zmodyfikować kody źródłowe celem wprowadzenia takiej funkcjonalności. Istnieje także możliwość udostępnienia konfigurowania urządzenia przez RS485/422. Niestety w takiej sytuacji nie ma informacji zwrotnej ponieważ DMX512 w podstawowej wersji jest jednokierunkowy.

Można zastanowić się nad konfigurowaniem niektórych parametrów takich jak timeout rozpoznający koniec ramki DMX przy dekodowaniu jej przez USB. Podobnie z reakcja na nadawanie DMX w przypadku zaniku sygnału z komputera. Tych funkcji nie wprowadzono uznając je za mało przydatne, a przedłużyłyby znacznie prace nad projektem. W przypadku dużego zainteresowania takimi funkcjonalnościami autor wprowadzi stosowne modyfikacje. Proszę też pisać o innych pomysłach związanych z konwerterem czy zastosowanie diod WS2812.

W materiałach dodatkowych, poza kodami źródłowymi, znajdują się oscylogramy i logi z SaleAE robione na różnych etapach pracy urządzenia.

Sas
sas@elportal.pl

Wykaz elementów:
Rezystory: (SMD1206, o ile nie zaznaczono inaczej)
  • R1, R21, R22, R23: 10 kΩ
  • R2, R3, R8, R10, R11, R17…R19: 1 kΩ
  • R4, R5, R20: 4,7 kΩ
  • R6: nie montować/1 kΩ 1%, opis w tekście
  • R7: 0 Ω/3,3 kΩ 1%, opis w tekście
  • R9, R13: 100 kΩ
  • R12, R14…R16: 120 Ω
  • R27…R29: 27 Ω
  • RP1: 8×0 Ω opis w tekście
  • RP2: 8×1 kΩ
  • ZW1: 0 Ω
  • P2, P3: joystick typu JV1603-B10K/SW11 + gałka
Kondensatory: (SMD1206, o ile nie zaznaczono inaczej)
  • C1, C2, C5, C6, C8, C9, C15, C16, C19, C22…C24: 100 nF
  • C3, C4: 22 pF
  • C10: 1000 µF/25 V (lub 63 V) opis w tekście
  • C11, C12, C13, C14: 220 µF/16 V
  • C17, C18: 22 pF opis w tekście
  • C20 C21: 47 pF
  • C23, C26: 10 µF/16 V
Półprzewodniki:
  • D1 (Run): dioda LED SMD1206 niebieska
  • D2 (DMX): dioda LED SMD1206 zielona
  • D3 (Power): dioda LED SMD1206 zielona
  • D4: SS24
  • D5 (DMXin): dioda LED SMD1206 zielona
  • D6 (DMXout): dioda LED SMD1206 żółta
  • D7 (Run): dioda LED SMD1206 niebieska
  • D8 (HOST): dioda LED SMD1206 niebieska
  • D9 (RXusb): dioda LED SMD1206 zielona
  • D10 (RXuart): dioda LED SMD1206 zielona
  • D12 (SC16SI): dioda LED SMD1206 żółta
  • D11 (ST3): dioda LED SMD1206 żółta
  • D13 (ST1): dioda LED SMD1206 czerwona
  • D14 (OVRdmx): dioda LED SMD1206 czerwona
  • D16 (WS): dioda LED SMD1206 zielona
  • M1: mostek prostowniczy S4VB
  • U1: ATMEGA1284 (TQFP44)
  • U2: 74HC00D (SO-14)
  • U3: LM2576T-5/-ADJG (TO-220V)
  • U4, U5: MAX485 (SO-08)
  • U6: SC16IS760IPW (SSOP-24)
  • U7: 74LVC125AD (SO-14)
  • U8: FT221XS (SSOP-20)
  • U9, U10: 4053 (SO-16)
  • U11: SPX1117MP-3.3 (SOT-223)
Inne:
  • Q2: rezonator kwarcowy SMD 16 MHz
  • Q1: rezonator kwarcowy SMD 20 MHz
  • L1: 100 µH 3 A SMD DPT100A3
  • L2: 68 µH SMD1210 DL1210-68
  • TR1: TSZZ 20/005M (12 V, 1,67 A)
  • F1: bezpiecznik 630 mA + GN BEZP PTF
  • J5 (230V): ARK2
  • J7 (DMX IN): XRL3 wtyk
  • J9: (DMX OUT): XRL3 gniazdo
  • J13: (DMXin): goldpin 1×2
  • J11: (DMXbypass): goldpin 1×2
  • J8 (DMXout): goldpin 1×3
  • J2 (IIC): goldpin 1×4
  • J3 (ISP): T821-1-06-S1
  • J1 (JTAG): WS10
  • J14 (SCK): goldpin 1×3
  • JP4 (SEL): goldpin 2×2
  • JP3 (SPI): goldpin 1×2
  • J4 (Txm): ARK3
  • J10 (Term): goldpin 1×2
  • J12 (USBB-BV): gniazdo USB
  • JP2 (Vcc): goldpin 1×2
Artykuł ukazał się w
Elektronika Praktyczna
kwiecień 2021
DO POBRANIA
Pobierz PDF Download icon
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

Automatyka, Podzespoły, Aplikacje kwiecień 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 maj 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów