Driver taśm LED RGBCCT 12 V z interfejsem I²C

Driver taśm LED RGBCCT 12 V z interfejsem I²C

Zaprezentowany moduł umożliwia rozszerzenie możliwości płytek uruchomieniowych, o sterowanie taśmami LED RGB 12 V z dodatkowymi diodami CCT (W/WW) w kolorze białym z odcieniem ciepłym i zimnym, poprzez interfejs I²C. Dodatkowe diody umożliwiają uzyskanie nie tylko szerszej palety kolorów, ale też światła białego o zmienianej płynnie temperaturze barwowej – co daje dodatkowe możliwości w aranżacji oświetlenia.

Podstawowe parametry:
  • sterowanie jest poprzez magistralę I²C,
  • 5 wyjść – RGB + CCT (W/WW) o napięciu 12 V i prądzie do 2 A,
  • każdy kolor ma możliwość regulacji PWM o rozdzielczości 8-bitów,
  • moduł wymaga zasilania 3,3...5 V doprowadzonego przez złącze I²C.

Driver sterowany jest poprzez magistralę I²C, pozwala obciążyć każdy z pięciu kanałów prądem do 2 A. Pozwala to na podłączenie do kilku metrów taśmy LED (w zależności od znamionowej mocy taśmy). Każdy kolor ma możliwość regulacji PWM o rozdzielczości 8-bitów, co pozwala na dosyć swobodne regulowanie barwą i jasnością świecenia taśmy.

Moduł jest aplikacją układu PCA9634 (U1), którego strukturę wewnętrzną pokazano na rysunku 1. PCA9634 wchodzi w skład rodziny kontrolerów LED I²C firmy NXP. Jest to konfigurowany ośmiokanałowy generator PWM z możliwością indywidualnej i grupowej regulacji PWM.

Rysunek 1. Struktura wewnętrzna układu PCA9634 (za notą NXP)

Budowa i działanie

Schemat drivera został pokazany na rysunku 2. Sygnały wyjściowe LRGBWP buforowane są tranzystorami Q1, Q2, Q3 zwiększając wydajność prądową układu U1. Moduł wyposażony jest w złącze I²C zgodne ze standardem Grove oraz listwę szpilkową SIP 2,54 mm. Moduł pozwala na wybór jednego z czterech adresów bazowych (0x5C...0x5F) przy pomocy zwór A0, A1, dzięki czemu możliwe jest niezależne sterowanie czterema taśmami LED RGBCCT z jednego portu I²C. Jeżeli musimy sterować większą ilością niezależnych taśm, można użyć translatora adresów I²C typu LTC4316.

Rysunek 2. Schemat ideowy drivera taśm LED

Dioda VCC sygnalizuje obecność zasilania U1, rezystory R1, R2 polaryzują magistralę I²C. Taśmę łączymy z modułami poprzez złącze LED. W module zastosowano precyzyjne złącze kielichowe o rozstawie 2 mm. Niestety taśmy RGBCCT nie mają określonego standardu złącza (są różne w zależności od szerokości taśmy) oraz różnią się przypisaniem wyprowadzeń LED. Przed podłączeniem taśmy należy zweryfikować kolejność sygnałów i w razie potrzeby zastosować odpowiednią przejściówkę.

Zasilanie taśmy 12 V (VLED) doprowadzone jest do złącza PWR, należy pamiętać o odpowiedniej wydajności zasilacza dobranej do długości taśmy. Sam moduł wymaga zasilania 3,3...5 V doprowadzonego przez złącze I²C.

Montaż i uruchomienie

Schemat płytki PCB został pokazany na rysunku 3. Montaż modułu nie wymaga szczegółowego opisu, ale ze względu na zastosowanie elementów SMD potrzebne są precyzyjne narzędzia.

Rysunek 3. Schemat płytki PCB

Poprawnie zmontowany moduł nie wymaga uruchamiania, lecz konieczne jest skonfigurowanie układu PCA9634. Przykładowy skrypt testowy rgbcct.sh dla Raspberry Pi pokazano na listingu 1. Dokładny opis rejestrów układu opisany jest w nocie katalogowej. Wyjścia układu skonfigurowane są jako totem-pole ze względu na współpracę z tranzystorami buforującymi. Po włączeniu zasilania do czasu konfiguracji PCA9634 wszystkie LED są wysterowane.

Listing 1. Przykładowy skrypt testowy rgbcct.sh

#!/bin/bash
echo "RGBCCT LED PCA9634 Driver ADR:0x5E"

i2ctransfer -y 1 w17@0x5E 0x80 0x80 0x15 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x80 0x00 0xff 0xe2 0xe4 0xe8

echo "Led OFF"
i2cset -y 1 0x5E 0x02 0x00
i2cset -y 1 0x5E 0x03 0x00
i2cset -y 1 0x5E 0x04 0x00
i2cset -y 1 0x5E 0x05 0x00
i2cset -y 1 0x5E 0x06 0x00
sleep 2

echo "Led Green 50%"
i2cset -y 1 0x5E 0x02 0x7F
sleep 2
i2cset -y 1 0x5E 0x02 0x00

echo "Led Red 50%"
i2cset -y 1 0x5E 0x03 0x7F
sleep 2
i2cset -y 1 0x5E 0x03 0x00

echo "Led Blue 50%"
i2cset -y 1 0x5E 0x04 0x7F
sleep 2
i2cset -y 1 0x5E 0x04 0x00

echo "Led White 50%"
i2cset -y 1 0x5E 0x05 0x7F
sleep 2
i2cset -y 1 0x5E 0x05 0x00

echo "Led White Warm 50%"
i2cset -y 1 0x5E 0x06 0x7F
sleep 2
i2cset -y 1 0x5E 0x06 0x00

echo "All Off"

Po podłączeniu modułu do Raspberry Pi i uruchomieniu skryptu, kolejno zgodnie z opisem zaświecone zostaną na taśmie kolory G, R, B, W, WW. Jasność LED można ustawić zmieniając wartość 0x7F na mniejszą lub większą niezależnie dla każdego koloru. Wartość 0x00 wygasza LED.

Adam Tatuś, EP

Wykaz elementów:
Rezystory: (SMD0603, 5%)
  • R1, R2: 10 kΩ
  • R3: 2,2 kΩ
  • R4, R5, R6, R7, R8: 100 kΩ
Kondensatory: (SMD0603, 10 V)
  • C1: 0,1 μF 
  • C2: 10 μF
Półprzewodniki:
  • LD: dioda LED (SMD0603)
  • Q1, Q2, Q3: tranzystor podwójny MOSFET AO4800B (SO8)
  • U1: PCA9634PW (SSOP20)
Pozostałe:
  • CCT: złącze kielichowe żeńskie 6 pinów 2 mm
  • I²CB: złącze SIP4, 2,54 mm
  • PWR: złącze DG 2 piny 3,5 mm
Artykuł ukazał się w
Elektronika Praktyczna
lipiec 2023
DO POBRANIA
Materiały dodatkowe
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik listopad 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 październik 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna listopad 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich listopad 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów