BBMagic DIMMER to moduł zdalnego regulatora mocy z komunikacją Bluetooth Low Energy (BLE), Bluetooth Smart.
Funkcje BBMagic DIMMER
- Sterowanie mocą urządzenia 230VAC poprzez regulację fazy
- Funkcja automatycznego włączenia odbiornika na 15 minut 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
- 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
Jak działa BBMagic DIMMER
Jeśli chcemy aby po każdym włączeniu zasilania moduł BBMagic DIMMER włączył na 15 minut sterowane urządzenie to podłączamy pin 17 (START CONF) do masy lub do pinu 16.
Co 60 sekund BBMagic DIMMER 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
bbm_buf[BBMAGIC_DEVICE_TYPE] | typ modułu, który nadesłał dane ; w tym przypadku będzie to BBMAGIC_M_DIMMER |
bbm_buf[BBM_DIMMER_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_DIMMER_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_DIMMER_CHIP_TEMP] | temperatura chipu w stopniach Celsjusza (kodowanie U2). Po skalibrowaniu wartość ta może być interpretowana jako temperatura otoczenia. |
bbm_buf[BBM_DIMMER_LIGHT] | poziom oświetlenia ; zakres 0-255 |
bbm_buf[BBM_DIMMER_VAL] | aktualna wartość nastawy ; zakres 0-100 |
bbm_buf[BBM_DIMMER_ADC_1_MSB] i bbm_buf[BBM_DIMMER_ADC_1_LSB] | poziom napięcia na wejściu ADC_1 w mV ; starszy i młodszy bajt |
bbm_buf[BBM_DIMMER_WORKTIME_0] | czas pracy modułu od ostatniego włączenia zasilania w sekundach – najmłodszy bajt 0 |
bbm_buf[BBM_DIMMER_WORKTIME_1] | czas pracy modułu od ostatniego włączenia zasilania w sekundach – kolejny bajt 1 |
bbm_buf[BBM_DIMMER_WORKTIME_2] | czas pracy modułu od ostatniego włączenia zasilania w sekundach – kolejny bajt 2 |
bbm_buf[BBM_DIMMER_WORKTIME_3] | czas pracy modułu od ostatniego włączenia zasilania w sekundach – najstarszy bajt 3 |
bbm_buf[BBM_DIMMER_FIRM_0] | numer wersji firmwareu modułu, młodszy bajt |
bbm_buf[BBM_DIMMER_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 |
Wyprowadzenia
Numer pinu | Opis |
---|---|
1,8,20,22,23,24 | Masa |
2 | Konfiguracja sygnalizacji transmisji radiowej:
|
3 | DIMM OUT – wyjście sterujące triakiem. |
6 | ZERO CROSS DET – wejście detekcji przejścia napięcia przez zero |
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 |
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
|
18,19 | Linie UARTa odpowiednio nadawanie i odbiór. Zakres dopuszczalnych napięć od 0V do 5V |
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 DIMMER 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 DIMMER
Wystarczy znając jego adres i klucz dodać moduł do bazy aktorów:
bbm_dimmer_add("moj_dimmer", "AB2D7366A5CB", "2DFDA5070CD284A107A24F7e53572A7B38") ;
…i użyć funkcji 'bbm_dimmer_set’:
bbm_dimmer_set("moj_dimmer",50) ;
A na wyjściu DIMM OUT pojawi się sygnał sterujący odbiornikiem na 50% jego mocy.