Spisu treści:
- Krok 1: Wymagane części
- Krok 2: Schematyczne zasady
- Krok 3: Kod Arduino
- Krok 4: Test w świecie rzeczywistym
Wideo: Kompaktowy czujnik pogody z łączem danych GPRS (karta SIM): 4 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Podsumowanie projektu
Jest to zasilany bateryjnie czujnik pogodowy oparty na czujniku temperatury/ciśnienia/wilgotności BME280 i mikrokontrolerze ATMega328P. Zasilany jest dwiema bateriami 3,6 V litowo-tionylowymi AA. Ma bardzo niskie zużycie snu na poziomie 6 µA. Wysyła dane co pół godziny przez GPRS (za pomocą modułu GSM SIM800L) do ThingSpeak, sterowanego zegarem czasu rzeczywistego DS3231. Szacowany okres użytkowania jednego zestawu baterii wynosi >6 miesięcy.
Używam karty SIM ASDA pay-as-you-go, która oferuje bardzo dobre warunki dla celów tego projektu, ponieważ ma bardzo długi czas wygaśnięcia kredytu (180 dni) i pobiera tylko 5p/MB danych.
Motywacja: Opracowanie ekonomicznego, bezobsługowego, autonomicznego, zasilanego bateryjnie czujnika środowiskowego, który można umieścić w środowisku naturalnym w celu gromadzenia danych pogodowych lub innych i przesyłać za pośrednictwem sieci GSM/GPRS do serwera IoT.
Wymiary fizyczne: 109 x 55 x 39 mm (w tym kołnierze obudowy). Waga 133g. Ocena IP 54 (szacunkowa).
Koszt materiału: Ok. 20 GBP za sztukę.
Czas montażu: 2 godziny na sztukę (lutowanie ręczne)
Źródło zasilania: Dwie baterie litowo-tionylowe AA, nieładowalne (3,6 V, 2,6 Ah).
Protokół sieciowy: GSM GPRS (2G)
Potencjalne zastosowania: Dowolna zdalna lokalizacja z zasięgiem sygnału GSM. Lasy, latarnie morskie, boje, prywatne jachty, przyczepy kempingowe, pola namiotowe, schroniska górskie, niezamieszkane budynki
Test niezawodności: Jedna jednostka była poddawana długotrwałym testom bez nadzoru od 30.8.20. Oprócz jednej awarii oprogramowania, niezawodnie wysyła dane co 30 minut.
Krok 1: Wymagane części
- PCB na zamówienie. Spakowane pliki Gerber tutaj (instructables.com wydaje się blokować przesyłanie plików ZIP). Gorąco polecam jlcpcb.com do produkcji PCB. Osobom mieszkającym w Wielkiej Brytanii z przyjemnością wyślę zapasową płytkę PCB za minimalny wkład w koszty materiałów i wysyłki - napisz do mnie.
- ATMega328P-AU
- Zmodyfikowany zegar czasu rzeczywistego DS3231 (patrz akapit poniżej)
- Tablica zaciskowa BME280, taka jak ta
- Moduł SIM800L GSM GPRS
- Różne części SMD zgodnie ze szczegółową listą.
- Hammond 1591, czarna obudowa ABS, IP54, z kołnierzem, 85 x 56 x 35mm, od RS Components UK
Modyfikacja DS3231
Sieć poczwórnych rezystorów zakreślona na czerwono wymaga odlutowania. Inne, bardziej destrukcyjne metody są również w porządku, ale unikaj mostkowania elektrod w wewnętrznym rzędzie 4 elektrod (w kierunku boku MCU). Pozostałe 4 pady i tak są połączone ścieżkami PCB. Ta modyfikacja jest niezbędna, aby pin SQW działał jako alarm. Bez usunięcia rezystorów nie będzie działać, dopóki nie podłączysz zasilania VCC do modułu, co jest sprzeczne z celem posiadania zegara czasu rzeczywistego o bardzo małej mocy.
Krok 2: Schematyczne zasady
Najważniejszymi priorytetami przy projektowaniu były:
- Zasilanie bateryjne przy niskim poborze prądu uśpienia
- Kompaktowa konstrukcja
Zasilacz
Dwie baterie litowo-tionylowe AA 3,6 V Saft. MOSFET z kanałem P do ochrony przed odwrotną polaryzacją.
W obwodzie znajdują się dwa regulatory napięcia:
- Regulator step-down Texas Instruments TPS562208 2 A do zasilania SIM800L przy około 4,1 V. Jest to przełączane z ATMega i przez większość czasu jest przełączane w tryb wyłączania za pomocą pinu Enable 5.
- Regulator MCP1700 3.3V dla ATMega i BME280. Jest to niezwykle wydajny regulator niskiego spadku o prądzie spoczynkowym wynoszącym tylko około 1 µA. Ponieważ jest tolerancyjny tylko do wejścia 6V, dodałem dwie diody prostownicze (D1, D2) szeregowo, aby obniżyć zasilanie 7,2V do akceptowalnego poziomu około 6V. Zapomniałem dodać zwykły kondensator odsprzęgający 10 µF na płytce drukowanej do zasilania w ATMega. Dlatego zmodernizowałem zwykły kondensator wyjściowy w MCP1700 z 1 do 10 µF i działa dobrze.
- Monitorowanie napięcia baterii przez ADC0 na ATMega (poprzez dzielnik napięcia)
Zegar czasu rzeczywistego
Zmodyfikowany DS3231, który wybudza ATMegę w określonych odstępach czasu, aby rozpocząć cykl pomiarów i transmisji danych. Sam DS3231 zasilany jest ogniwem litowym CR2032.
BME280
Próbowałem użyć samego oryginalnego modułu Bosch BME280, który jest prawie niemożliwy do lutowania ze względu na jego niewielkie rozmiary. Dlatego korzystam z powszechnie dostępnej tablicy breakout. Ponieważ ma zbędny regulator napięcia, który pobiera energię, włączam go N-kanałowym MOSFET-em tuż przed pomiarami.
SIM800L
Ten moduł jest niezawodny, ale wydaje się być dość temperamentny, jeśli zasilacz nie jest solidny. Odkryłem, że najlepiej działa napięcie zasilania 4,1V. Zrobiłem ścieżki PCB dla VCC i GND do bardzo grubego SIM800L (20 mil).
Schemat/komentarze do PCB
- Etykieta sieci „1” – wymieniona jako „SINGLEPIN” na liście części odnosi się po prostu do męskiego pinu nagłówka.
- Dwa piny sąsiadujące z przełącznikiem suwakowym muszą być zmostkowane zworką do normalnej pracy, w przeciwnym razie linia VCC jest tutaj otwarta. W razie potrzeby są przeznaczone do pomiarów prądu.
- Kondensator 100 µF (C12) dla modułu SIM800L nie jest konieczny. Został dodany jako środek zapobiegawczy (desperacki) na wypadek spodziewanych problemów ze stabilnością
Zalecane etapy montażu
- Zmontuj wszystkie elementy zasilacza w lewej dolnej części płytki drukowanej. Pin Enable (pin 5) TPS562208 musi być na logicznym wysokim poziomie do testowania, w przeciwnym razie moduł jest w trybie wyłączenia i będziesz miał wyjście 0V. Aby wyciągnąć pin Enable w górę do testowania, tymczasowy przewód z podkładki 9 ATMega (który na płytce drukowanej jest podłączony do PIN 5 regulatora napięcia) może być podłączony do punktu VCC; najbliższy punkt byłby do dolnego pinu R3, który leży na linii VCC.
- Testuj wyjście z TPS562208 między dolnymi pinami C2, C3 lub C4 i GND. Powinieneś mieć około 4.1V.
- Wyjście testowe z MCP1700, między prawym górnym pinem U6 a GND. Powinieneś mieć 3,3V.
- Lutowane ATMega328P; obserwuj znacznik pin 1 w lewym górnym rogu. Wymagana pewna praktyka, ale niezbyt trudna.
- Nagraj bootloader na ATMega328 - samouczki na ten temat gdzie indziej. Nie musisz koniecznie używać nagłówków pinów, aby połączyć się z MOSI, MISO, SCK i RST. Przez kilka sekund, które zajmuje wypalenie bootloadera, możesz użyć przewodów Dupont i użyć trochę kątowania, aby uzyskać dobry kontakt.
- Podłącz 5x żeńskie złącze pinowe dla DS3231.
- Przylutuj SIM800L za pomocą męskich listew pinowych
- Lutowane BME280
- Prześlij kod w Arduino IDE za pomocą adaptera USB2TTL (wybierz Arduino Uno/Genuino jako cel).
Krok 3: Kod Arduino
Zobacz kod źródłowy Arduino w załączniku.
Krok 4: Test w świecie rzeczywistym
Wywierciłem dwa małe otwory po prawej stronie obudowy, głęboko do przodu. Pokryłem je od wewnątrz łatami Goretex, aby umożliwić wymianę powietrza, ale wykluczyć wodę. Dodałem dodatkową ochronę przed deszczem z małymi plastikowymi daszkami. Następnie wsuwam cały zespół do obudowy z elementami skierowanymi do przodu i baterią skierowaną w stronę pokrywy. Do obudowy dodaję trochę smaru silikonowego, aby zapewnić ochronę przed wnikaniem wody.
Jednostka jest obecnie „zainstalowana” przy małej rzece. Oto strumień danych na żywo.
Zalecana:
Jak zrobić rejestrator danych wilgotności i temperatury w czasie rzeczywistym za pomocą Arduino UNO i karty SD - Symulacja rejestratora danych DHT11 w Proteus: 5 kroków
Jak zrobić rejestrator danych wilgotności i temperatury w czasie rzeczywistym za pomocą Arduino UNO i karty SD | Symulacja rejestratora danych DHT11 w Proteus: Wstęp: cześć, tu Liono Maker, tutaj link do YouTube. Tworzymy kreatywne projekty z Arduino i pracujemy na systemach wbudowanych.Data-Logger: Rejestrator danych (również rejestrator danych lub rejestrator danych) to urządzenie elektroniczne, które rejestruje dane w czasie w
DIY kompaktowy wzmacniacz stereo: 11 kroków (ze zdjęciami)
Kompaktowy wzmacniacz stereofoniczny DIY: Hej! każdy Nazywam się Steve. Dzisiaj pokażę Ci, jak w bardzo prosty sposób zrobić przenośny wzmacniacz 60 W przy użyciu układu TDA2050. Jest to bardzo popularny układ, który można znaleźć w wielu systemach kina domowego. 30 watów przy 4
UChip - czujnik sonaru BEEP z transmisją danych Bluetooth: 4 kroki
UChip - BEEP Sonar Sensor z transmisją danych Bluetooth: Ostatnio opracowałem BEEP jak sonar samochodowy i szeregowy adapter Bluetooth na USB za pomocą uChip. Każdy projekt sam w sobie był dość ciekawy, ale… czy dałoby się je połączyć i stworzyć czujnik „BT zdalna transmisja BEEP jak samochód”?!?T
Zrób to sam: Kompaktowy głośnik Bluetooth: 11 kroków
Zrób to sam: Kompaktowy głośnik Bluetooth: Sprawdź powyższy film, aby zobaczyć, jak odtwarza. Domowy głośnik Bluetooth o smukłej konstrukcji, lista części: Moduł Bluetooth: http://bit.ly/2YEpMgF Głośniki: http://bit.ly/2FOXCZ5 Pasywny radiator: http://bit.ly/2FOXCZ5 Ochrona
Czujnik mgły - Particle Photon - Zapisywanie danych online: 5 kroków (ze zdjęciami)
Czujnik mgły - foton cząstek - zapisywanie danych online: Aby zmierzyć ilość mgły lub dymu w powietrzu, stworzyliśmy ten czujnik mgły. Mierzy ilość światła odbieranego przez LDR z lasera i porównuje ją z ilością światła otoczenia. Publikuje dane w arkuszu Google w czasie rzeczywistym za pośrednictwem IFTTT