Мазмұны:
Бейне: DHT11, BMP180, Nodemcu көмегімен Blynk серверінде Arduino IDE қолданатын DIY ауа райы станциясы: 4 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
Github: DIY_Weather_Station
Hackster.io: метеостанция
Сіз ауа райы туралы қосымшаны көрер едіңіз бе? Мысалы, сіз оны ашқан кезде сіз температура, ылғалдылық сияқты ауа райы жағдайын білесіз. Бұл көрсеткіштер үлкен аумақтың орташа мәні болып табылады, сондықтан сіз өзіңіздің бөлмеңізге қатысты нақты параметрлерді білгіңіз келсе, Ауа райы қосымшасына сүйеніңіз. Ол үшін метеостанция жасауға көшейік, ол үнемді, сонымен қатар сенімді және бізге дәл баға береді.
Метеостанция - бұл ауа райы болжамын алуға, ауа райы мен климатты зерттеуге арналған атмосфералық жағдайды өлшеуге арналған аспаптар мен қондырғылары бар қондырғы. Қосу және кодтау үшін аз күш қажет. Ендеше бастайық.
Нодемку туралы:
NodeMCU - бұл ашық IoT платформасы.
Ол Espressif Systems ESP8266 Wi-Fi SoC жүйесінде жұмыс істейтін микробағдарламаны және ESP-12 модуліне негізделген жабдықты қамтиды.
«NodeMCU» термині әдепкі бойынша, жинақтарға емес, микробағдарламаға жатады. Микробағдарлама Lua сценарий тілін қолданады. Ол eLua жобасына негізделген және ESP8266 үшін Espressif OS емес SDK-де салынған. Ол lua-cjson және spiffs сияқты көптеген ашық бастапқы жобаларды қолданады.
Датчиктер мен бағдарламалық қамтамасыз етуге қойылатын талаптар:
1. Nodemcu (esp8266-12e v1.0)
2. DHT11
3. BMP180
4. Arduino IDE
1 -қадам: сенсорларды біліңіз
BMP180:
Сипаттама:
BMP180 пьезо-резистивті сенсордан, аналогты цифрлық түрлендіргіштен және E2PROM басқару блогынан және I2C сериялық интерфейсінен тұрады. BMP180 қысым мен температураның өтелмейтін мәнін береді. E2PROM 176 биттік жеке калибрлеу деректерін сақтады. Бұл сенсордың ығысуын, температураға тәуелділігін және басқа параметрлерін өтеу үшін қолданылады.
- UP = қысым туралы деректер (16-19 бит)
- UT = температура деректері (16 биттік)
Техникалық ерекшеліктері:
- Вин: 3 -тен 5 вольтке дейін
- Логика: 3-5 В сәйкес
- Қысымды сезу диапазоны: 300-1100 гПа (теңіз деңгейінен 9000м -500м биіктікте)
- 0,03гПа / 0,25м ажыратымдылыққа дейін-40-тан +85 ° C дейін жұмыс диапазоны, +-2 ° С температураның дәлдігі
- Бұл тақтада/чипте I2C 7-биттік 0x77 адресі қолданылады.
DHT11:
Сипаттама:
- DHT11-бұл цифрлық температура мен ылғалдылықтың қарапайым, өте арзан бағасы.
- Ол сыйымдылықтағы ылғалдылық сенсоры мен термисторды қолданып, айналадағы ауаны өлшейді және деректер түйреуішіне цифрлық сигналды шығарады (аналогтық кіріс түйреуіштері қажет емес). Оны пайдалану өте қарапайым, бірақ деректерді алу үшін мұқият уақытты қажет етеді.
- Бұл сенсордың бірден -бір кемшілігі - сіз жаңа деректерді әр 2 секунд сайын ғана ала аласыз, сондықтан біздің кітапхананы пайдаланған кезде сенсордың көрсеткіштері 2 секундқа дейін болуы мүмкін.
Техникалық ерекшеліктері:
- 3 -тен 5В -қа дейінгі қуат және енгізу -шығару
- 0-50 ° C температура көрсеткіштері үшін ± 2 ° C дәлдік үшін жақсы
- 5% дәлдікпен 20-80% ылғалдылық көрсеткіштері үшін жақсы
- Конверсия кезінде 2,5 мА токты максималды пайдалану (деректерді сұрау кезінде)
2 -қадам: байланыс
Nodemcu бар DHT11:
Ілмекші - 3.3В
2 -түйреуіш - D4
3 -түйреуіш - NC
4 түйреуіш - Gnd
Nodemcu бар BMP180:
Вин - 3.3В
Gnd - Gnd
SCL - D6
SDA - D7
3 -қадам: Blynk орнатыңыз
Блинк дегеніміз не?
Blynk - бұл Arduino, Raspberry Pi және интернеттегі ұнатуларды басқаруға арналған iOS және Android қосымшалары бар платформа.
Бұл виджеттерді апарып тастау арқылы жобаңызға графикалық интерфейс құруға болатын сандық бақылау тақтасы. Барлығын орнату өте қарапайым, және сіз 5 минуттан аз уақыт ішінде ойнай бастайсыз. Блинк белгілі бір тақтаға немесе қалқанға байланған жоқ. Оның орнына, бұл сіз таңдаған аппараттық құрал. Сіздің Arduino немесе Raspberry Pi Wi-Fi, Ethernet немесе осы жаңа ESP8266 чипі арқылы Интернетке қосылғанына қарамастан, Blynk сізді Интернетке қосады және сіздің заттарыңыздың Интернетіне дайын болады.
Blynk: егжей -тегжейлі Blynk орнату туралы қосымша ақпарат алу үшін
4 -қадам: код
// Әр жолға түсініктеме төмендегі.ino файлында берілген
#қосу #анықтау BLYNK_PRINT сериясы #қосу #қосу #қосу #қосу #қосу Adafruit_BMP085 bmp; #анықтау I2C_SCL 12 #анықтау I2C_SDA 13 float dst, bt, bp, ba; char dstmp [20], btmp [20], bprs [20], balt [20]; bool bmp085_present = ақиқат; char auth = «Blynk қосымшасынан аутентификация кілтін осында қойыңыз»; char ssid = «Сіздің WiFi SSID»; char pass = «Сіздің құпия сөзіңіз»; #DHTPIN 2 анықтау #DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE); // PIN және dhttype BlynkTimer таймерін анықтау; void sendSensor () {if (! bmp.begin ()) {Serial.println («Жарамды BMP085 сенсоры табылмады, сымды тексеріңіз!»); while (1) {}} float h = dht.readHumidity (); float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println («DHT сенсорынан оқу мүмкін болмады!»); қайтару; } қос гамма = журнал (с / 100) + ((17,62*т) / (243,5 + т)); қос dp = 243,5*гамма / (17,62-гамма); float bp = bmp.readPressure ()/100; float ba = bmp.readAltitude (); float bt = bmp.readTemperature (); float dst = bmp.readSealevelPressure ()/100; Blynk.virtualWrite (V5, h); Blynk.virtualWrite (V6, t); Blynk.virtualWrite (V10, bp); Blynk.virtualWrite (V11, ba); Blynk.virtualWrite (V12, bt); Blynk.virtualWrite (V13, dst); Blynk.virtualWrite (V14, dp); } void setup () {Serial.begin (9600); Blynk.begin (auth, ssid, pass); dht.begin (); Wire.begin (I2C_SDA, I2C_SCL); кешіктіру (10); timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }
Ұсынылған:
Arduino мен ThingSpeak қолданатын шағын ауа райы станциясы: 4 қадам
Arduino мен ThingSpeak қолданатын шағын ауа райы станциясы: бәріне сәлем. Бұл нұсқаулықта мен сізге жеке метеостанция жасау бойынша қадамдар бойынша нұсқаулық беремін. Сонымен қатар, біз ThingSpeak API көмегімен ауа райы туралы мәліметтерді олардың серверлеріне жүктеу үшін қолданамыз, әйтпесе ауа райы жағдайының мақсаты қандай
DIY ауа райы станциясы мен WiFi сенсорлық станциясы: 7 қадам (суреттермен)
DIY ауа райы станциясы мен WiFi сенсорлық станциясы: Бұл жобада мен сізге WiFi сенсор станциясымен бірге ауа райы станциясын қалай жасау керектігін көрсетемін. Сенсорлық станция жергілікті температура мен ылғалдылық деректерін өлшейді және WiFi арқылы метеостанцияға жібереді. Содан кейін метеостанция мыналарды көрсетеді
Arduino & BME280 қолданатын бөлмедегі ауа райы станциясы: 4 қадам
Arduino & BME280 қолданатын бөлмедегі ауа райы станциясы: Бұрын мен жергілікті жердің температурасы мен ылғалдылығын көрсететін қарапайым метеостанциямен бөлісетінмін. Мәселе жаңартуға уақыт қажет болатындығында болды және деректер дәл емес. Бұл оқулықта біз ауа -райының мониторын жасаймыз
Arduino UNO қолданатын ауа райы станциясы: 7 қадам
Arduino UNO қолданатын ауа райы станциясы: Жасаған: Hazel YangБұл жоба - бұл деректер ағынын басқаруға арналған Arduino UNO тақтасын, деректерді жинауға арналған DHT22 сенсоры мен деректерді көрсету үшін OLED экранын қолданатын ауа райы станциясы
Ауа райы шамы - Ауа райы мен температура бір қарағанда: 8 қадам
Ауа райы шамы - Ауа райы мен температура бір қарағанда: Бұл сиқырлы шамды қолдана отырып, сіз ағымдағы температура мен жағдайды бірден біле аласыз