BBMagic METEO jest ultra-energooszczędnym modułem pomiarowym z komunikacją Bluetooth Low Energy. Dzięki energooszczędności może miesiącami pracować na małej baterii pastylkowej wykonując pomiary i przesyłając je do systemu nadrzędnego. |
Wyprowadzenia
Numer pinu | Opis |
---|---|
1,8,20,22,23,24 | Masa |
2 | Konfiguracja sygnalizacji wysylania danych:
Należy pamiętać, że włączona sygnalizacja LED powoduje większe zużycie energii. |
3-6 | Cztery aktywne masą wejścia cyfrowe DIN_0-DIN_3 próbkowane każdorazowo tuż przed wysłaniem danych |
7,21 | Napięcie zasilania 2,1V – 3,6V |
21,22 | Pady do wlutowania uchwytu dla baterii pastylkowej CR2032: 21 (+) i 22 (-) |
7,8,9 | Pady do wlutowania stabilizatora w przypadku chęci zasilania z wyższego napięcia. Ten sposób zasilania opisany jest tutaj: Jak zasilić BBMagic METEO moduł z Bluetooth Low Energy |
10 | Wejście napięcia zasilania dla stabilizatora. Ten sposób zasilania jest opisany tutaj: Jak zasilić BBMagic METEO moduł z Bluetooth Low Energy |
11,12 | Pady dla wlutowania fotorezystora 10k |
13,14 | Wejścia przetwornika analogowo-cyfrowego ADC_1 i ADC_2. Zakres dopuszczalnych napięć: 0V-1,8V ; Rozdzeielczość 1mV |
18,19 | Linie UARTa odpowiednio nadawanie i odbiór. Zakres dopuszczalnych napięć: 0V-5V |
Jak działa BBMagic METEO?
BBMagic METEO cyklicznie dokonuje pomiarów i wysyła zebrane dane przez radiowy kanał Bluetooth Low Energy.
Pomiar temperatury
- Dokładność pomiaru: +/-0,3st.C,
- Rozdzielczość pomiaru: 0,04st.C,
- Zakres pomiarowy: -40 st.C do +125 st.C,
- Typowy czas odpowiedzi: 15 sekund,
- Dryft długoterminowy mniejszy niż 0,02 st.C/rok.
Pomiar wilgotności
- Rozdzielczość pomiaru: 1 %RH,
- Zakres pomiarowy: 0 %RH do 100 %RH,
- Typowy czas odpowiedzi: 8 sekund,
- Dryft długoterminowy mniejszy niż 0,25 %RH/rok.
Pomiar poziomu oświetlenia
- Za pomocą fotorezystora 10kR
- Zakres wartości 0 do 255
Dwa kanały ADC o rozdzielczości 1mV
- ADC_1: 0 do 1,8V
- ADC_2: 0 do 1,8V
Cztery wejścia cyfrowe DIN_0 – DIN_3
- Aktywne stanem niskim
- Podciągane do zasilania 25 ms przed samplowaniem
Jak odbieramy dane od BBmagic METEO
Dzięki bibliotece bbmagic_lib odbieranie i przetwarzanie danych przez Raspberry Pi zero W oraz Raspberry Pi 3 jest bardzo proste. Bibliotekę możesz pobrać z działu Download.
Aby odbierać dane od BBMagic METEO:
Tworzymy bufor na dane i zmienne pomocnicze
unsigned char bbm_buf[100] ;
int len, ret ;
Otwieramy komunikację
ret = bbm_bt_open(0) ;
if(ret) exit(1) ;
Sprawdzamy czy nadeszły dane
len = bbm_bt_read(bbm_buf) ;
Jeśli tak to mamy je w buforze
if(len > 0)
if(bbm_buf[BBMAGIC_DEVICE_TYPE] == BBMAGIC_M_METEO)
{
przetwarzaj_dane_meteo(bbm_buf) ;
}
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_METEO |
bbm_buf[BBM_METEO_TEMPER_LSB] bbm_buf[BBM_METEO_TEMPER_MSB] | temperatura, młodszy i starszy bajt. Należy podzielić przez 100 aby otrzymać wartość w stopniach Celsjusza. |
bbm_buf[BBM_METEO_HUM] | wilgotność powietrza w zakresie 0-100 |
bbm_buf[BBM_METEO_LIGHT] | poziom oświetlenia ; zakres 0-255 |
bbm_buf[BBM_METEO_V_SUP] | aktualne napięcie zasilania modułu ; należy podzielic przez 71 (BBMAGIC_VCC_DIVIDER) aby otrzymać napięcie w woltach. |
bbm_buf[BBM_METEO_ADV_TIME] | okres do nadejścia kolejnej wiadomości od modułu ; należy pomnożyć razy dwa aby otrzymać czas w sekundach |
bbm_buf[BBM_METEO_DIN_STATE] | Na czterech młodszych bitach stan wejść cyfrowych DIN_0-DIN_3: 1 oznacza wejśćie w stanie niskim |
bbm_buf[BBM_METEO_ADC_1_MSB] bbm_buf[BBM_METEO_ADC_1_LSB] | poziom napięcia na wejściu ADC_1 w mV |
bbm_buf[BBM_METEO_ADC_2_MSB] bbm_buf[BBM_METEO_ADC_2_LSB] | poziom napięcia na wejściu ADC_2 w mV |
bbm_buf[BBM_METEO_WORKTIME_0] | czas pracy modułu od ostatniego włączenia zasilania w sekundach – najmłodszy bajt 0 |
bbm_buf[BBM_METEO_WORKTIME_1] | czas pracy modułu od ostatniego włączenia zasilania w sekundach – kolejny bajt 1 |
bbm_buf[BBM_METEO_WORKTIME_2] | czas pracy modułu od ostatniego włączenia zasilania w sekundach – kolejny bajt 2 |
bbm_buf[BBM_METEO_WORKTIME_3] | czas pracy modułu od ostatniego włączenia zasilania w sekundach – najstarszy bajt 3 |
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 |
Tryby pracy BBMagic METEO
Tryb pracy | Okres pomiaru |
---|---|
1 | 2 sekundy |
2 | 10 sekund |
3 | 1 minuta |
4 | 5 minut |
Jak ustawić tryb pracy
- wyłącz zasilanie modułu
- naciśnij przycisk
- włącz zasilanie modułu trzymając przycisk wciśniętym
- trzymaj przycisk wciśniętym odliczając błyski diody: 1 błysk – tryb pracy 1, 2 błyski – tryb pracy 2, itd.
- zwolnij przycisk
- dioda zgaśnie na ok. 2 sekundy po czym rozbłyśnie kilkukrotnie, w zależności od ustawionego trybu pracy: 1 błysk – ustawiono tryb 1, 2 błyski – ustawiono tryb 2, itd.
Po każdym włączeniu zasilania dioda modułu rozbłyśnie:
- 1 raz – moduł pracuje w trybie 1 – okres pomiaru wynosi 2 sekundy
- 2 razy – moduł pracuje w trybie 2 – okres pomiaru wynosi 10 sekund
- 3 razy – moduł pracuje w trybie 3 – okres pomiaru wynosi 1 minuta
- 4 razy – moduł pracuje w trybie 4 – okres pomiaru wynosi 5 minut
Komunikacja
- Bluetooth Smart zwany również Bluetooth Low Energy
- Komunikacja szyfrowana i podpisywana cyfrowo AES-128
- Konfigurowalny czas wykonywania pomiarów i przesyłania danych: 2 sekundy, 10 sekund, 1 minuta, 5 minut
- Bezpośrednia komunikacja z Raspberry Pi Zero W i Raspberry Pi 3 poprzez Bluetooth SMART
- Prosta obsługa programowa z wykorzystaniem bibliotek
Zasilanie
- bateria 3V CR2032 – pady do wlutowania uchwytu: 21 (+) i 22 (-)
- 2 x bateria 1,5V AA lub AAA – pady do wlutowania przewodów: 7 (+) and 8 (-)
- 2 x akumulator 1,2V NiCd lub NiMH – pady do wlutowania przewodów: 7 (+) and 8 (-)
- Z jakiegokolwiek źródła o napięciu z przedziału: 2,1V 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