BBMagic PWM 3-kanałowy bezprzewodowy regulator


BBMagic PWM to moduł zdalnego regulatora z komunikacją Bluetooth Low Energy (BLE), Bluetooth Smart.

Funkcje BBMagic PWM

  • Trzy kanały PWM z korekcją gamma ; idealne do sterowania LEDami
  • Możliwość wyłączenia korekcji gamma (pinem 14 (GAMMA CORR)) ; idealne do sterowania silnikami DC
  • Faza sygnału PWM konfigurowana pinem 6 (INV_CONF). Dzięki tej funkcji BBMagic PWM może sterować tranzystorem PNP jak również NPN
  • Funkcja automatycznego włączenia odbiornika po uruchomieniu modułu ; konfigurowana pinem 17
  • Monitorowanie stanu napięcia zasilania
  • Detektor światła ; pady do wlutowania fotorezystora 10k ; zakres wartości 0 do 255
  • Wejście przetwornika ADC o zakresie napięć od 0 do 1,8V i rozdzielczości 1mV
  • Pomiar temperatury chipu, który po skalibrowaniu może być interpretowany jako temperatura otoczenia
  • Sygnalizacja komunikacji radiowej diodą LED ; konfigurowana pinem 2
  • Komunikacja: szyfrowane i podpisane cyfrowo wiadomości Bluetooth Smart
  • Proste sterowanie z Raspberry Pi 3 lub zero W przy użyciu biblioteki bbmagic_lib od wersji 2.0

Wyprowadzenia

BBMagic PWM pinout

Numer pinu Opis
1,8,20,22,23,24 Masa
2 Konfiguracja sygnalizacji transmisji radiowej:

  • podłączenie do masy: Czerwona dioda LED będąca na pokładzie BBMagic PWM sygnalizuje transmisję radiową
  • niepodłączony: Czerwona LED wyłączona. Impulsy sygnalizujące pojawiają się na pinie numer 15. Możliwe podłączenie alternatywnej diody LED wraz z szeregowym rezystorem do pinów 15 i 16. Proponowana wartość rezystora: 1k – 4k7
3-5 Wyjścia PWM
6 Wejście konfiguracyjne INV_CONF:

  • niepodłączony – tryb normal PWM
  • podłączony do masy – tryb invert PWM
7,21 Napięcie zasilania 1,8V – 3,6V
7,8,9 Pady dla wlutowania stabilizatora w przypadku chęci zasilania z wyższego napięcia. Ten sposób zasilania jest identyczny jak dla BBMagic METEO opisany tutaj: Jak zasilić BBMagic METEO moduł z Bluetooth Low Energy
10 Wejście napięcia zasilania dla stabilizatora z zabezpieczeniem przed odwrotną polaryzacją. Ten sposób zasilania jest identyczny jak dla BBMagic METEO opisany tutaj: Jak zasilić BBMagic METEO moduł z Bluetooth Low Energy
11,12 Pady dla wlutowania fotorezystora 10k
13 Wejście przetwornika analogowo-cyfrowego ADC_1. Zakres dopuszczalnych napięć od 0V do 1.8V. Rozdzielczość 1mV
14 Wejście konfiguracyjne GAMMA CORR

  • niepodłączony – korekcja gamma włączona
  • podłączony do GND (20,22,23,24) – korekcja gamma wyłączona
15,16 Pady do podłączenia alternatywnej diody LED wraz z szeregowym rezystorem. Pad 15 – anoda LED z rezystorem. Pad 16 – katoda LED
17 Wejście konfiguracyjne START CONF

  • podłączony do masy (piny 20,22,23,24) lub pinu 16 – po włączeniu zasilania modułu przez 15 minut wszystkie wyjścia CHANNEL_0..CHANNEL_2 są włączone
  • niepodłączony – po włączeniu zasilania wyjścia CHANNEL_0..CHANNEL_2 są wyłączone
18,19 Linie UARTa odpowiednio nadawanie i odbiór. Zakres dopuszczalnych napięć od 0V do 5V

Tryby pracy

BBMagic PWM inv PWM
BBMagic PWM normal PWM

Tryb pracy BBMagic PWM Stan pinu 6 (INV_CONF) Stan pinu 14 (GAMMA CORR)
1 tryb PWM z korekcją gamma niepodłączony niepodłączony
2 tryb PWM bez korekcji gamma niepodłączony do GND (20,22,23,24)
3 tryb PWM_INVERT z korekcją gamma do GND (20,22,23,24) niepodłączony
4 tryb PWM_INVERT bez korekcji gamma do GND (20,22,23,24) do GND (20,22,23,24)
Jeśli chcemy aby po każdym włączeniu zasilania moduł BBMagic PWM włączył na 15 minut sterowane urządzenie to podłączamy pin 17 (START CONF) do masy lub do pinu 16.

BBMagic PWM start on schemat

Jak działa BBMagic PWM

Po włączeniu zasilania co 60 sekund BBMagic PWM wysyła informację ‚ALIVE’.
Jeśli odbierze wiadomość z żądaniem zmiany nastaw to po dokonaniu regulacji niezwłocznie nada wiadomość ‚ALIVE’ potwierdzając tym wykonanie zadania.

Jakie dane zawiera wiadomość ‚ALIVE’?

Zawartość bufora zdefiniowano w pliku bbmagic_lib.h biblioteki w wersji 2.0

bbm_buf[BBMAGIC_DEVICE_TYPE] typ modułu, który nadesłał dane ; w tym przypadku będzie to BBMAGIC_M_PWM
bbm_buf[BBM_PWM_V_SUP] aktualne napięcie zasilania modułu ; należy podzielic przez 71 (BBMAGIC_VCC_DIVIDER) aby otrzymać napięcie w woltach.
bbm_buf[BBMAGIC_PWM_ADV_TIME] czas po jakim wysłana zostanie kolejna wiadomość ‚ALIVE’. Należy pomnożyć przez dwa aby otrzymać czas w sekundach.
bbm_buf[BBM_PWM_CHIP_TEMP] temperatura chipu w stopniach Celsjusza (kodowanie U2). Po skalibrowaniu wartość ta może być interpretowana jako temperatura otoczenia.
bbm_buf[BBM_PWM_LIGHT] poziom oświetlenia ; zakres 0-255
bbm_buf[BBM_PWM_CH0] aktualna wartość wypełnienia PWM na wyjściu CHANNEL_0 ; zakres 0-100
bbm_buf[BBM_PWM_CH1] aktualna wartość wypełnienia PWM na wyjściu CHANNEL_1 ; zakres 0-100
bbm_buf[BBM_PWM_CH2] aktualna wartość wypełnienia PWM na wyjściu CHANNEL_2 ; zakres 0-100
bbm_buf[BBM_PWM_ADC_1_MSB] i bbm_buf[BBM_PWM_ADC_1_LSB] poziom napięcia na wejściu ADC_1 w mV ; starszy i młodszy bajt
bbm_buf[BBM_PWM_WORKTIME_0] czas pracy modułu od ostatniego włączenia zasilania w sekundach – najmłodszy bajt 0
bbm_buf[BBM_PWM_WORKTIME_1] czas pracy modułu od ostatniego włączenia zasilania w sekundach – kolejny bajt 1
bbm_buf[BBM_PWM_WORKTIME_2] czas pracy modułu od ostatniego włączenia zasilania w sekundach – kolejny bajt 2
bbm_buf[BBM_PWM_WORKTIME_3] czas pracy modułu od ostatniego włączenia zasilania w sekundach – najstarszy bajt 3
bbm_buf[BBM_PWM_FIRM_0] numer wersji firmwareu modułu, młodszy bajt
bbm_buf[BBM_PWM_FIRM_1] numer wersji firmwareu modułu, starszy bajt
bbm_buf[BBMAGIC_DEVICE_ADDR_0] adres modułu najmłodszy bajt 0 – LSB
bbm_buf[BBMAGIC_DEVICE_ADDR_1] adres modułu bajt 1
bbm_buf[BBMAGIC_DEVICE_ADDR_2] adres modułu bajt 2
bbm_buf[BBMAGIC_DEVICE_ADDR_3] adres modułu bajt 3
bbm_buf[BBMAGIC_DEVICE_ADDR_4] adres modułu bajt 4
bbm_buf[BBMAGIC_DEVICE_ADDR_5] adres modułu najstarszy bajt 5 – MSB
bbm_buf[BBMAGIC_DEVICE_RSSI] moc odbieranego sygnału radiowego w dBm

Komunikacja

  • Bluetooth Smart – Bluetooth Low Energy
  • Komunikacja szyfrowana i podpisywana cyfrowo AES-128
  • Bezpośrednia komunikacja z Raspberry Pi Zero W i Raspberry Pi 3 poprzez Bluetooth Smart
  • Prosta obsługa programowa z wykorzystaniem biblioteki bbmagic_lib od wersji 2.0

Zasilanie

Moduł BBMagic PWM pobiera prąd o natężeniu ok. 12mA. Możliwe sposoby zasilania:

  • Z jakiegokolwiek źródła o napięciu z przedziału: 1,8V do 3,6V – pady do wlutowania przewodów: 7 (+) i 8 (-)
  • Poprzez stabilizator – Podłącz ‘+’ do 10, a ‘-‘ do 22, 23 lub 24. Pady do wlutowania stabilizatora w obudowie TO-92 – 7,8,9 (np.:L78L33, TS2950CT-3.3, LP2950CZ-3.3RAG, MCP1702-3302E, LM2936Z-3.3, LT1121CZ-3.3). Jak dobrać stabilizator: Jak zasilić BBMagic METEO moduł z Bluetooth Low Energy

Aby wysterować BBMagic PWM

Wystarczy dodać moduł do bazy aktorów:
bbm_pwm_add("moj_mod_pwm", "CBFD786BAA68", "2DFDA5070CD284A107A24F7e53572A7B38") ;
…i użyć funkcji ‚bbm_pwm_set’:
bbm_pwm_set("moj_mod_pwm",10,20,50) ;
A na wyjściach CHANNEL_0, CHANNEL_1 i CHANNEL_2 pojawia się sygnały o wypełnieniu odpowiednio: 10%, 20% i 50%.

Tagi , , , .Dodaj do zakładek Link.

Komentarze są wyłączone.