Բովանդակություն:
- Քայլ 1: BoM - նյութի հաշիվ
- Քայլ 2. Անալոգային ուլտրամանուշակագույն ցուցիչ
- Քայլ 3: Displayուցադրման տեղադրում. OLED
- Քայլ 4: Տեղական ուլտրամանուշակագույն հաշվիչ
- Քայլ 5. Օդի ջերմաստիճանի և խոնավության չափումների համար DHT22- ի տեղադրում
- Քայլ 6. Տվյալների ուղարկում ThingSpeak.com
- Քայլ 7: Եզրակացություն
Video: IoT- ը դյուրին դարձավ. Հեռակա եղանակի տվյալների գրավում. Ուլտրամանուշակագույն և օդի ջերմաստիճան և խոնավություն ՝ 7 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-02-01 14:40
Այս ձեռնարկի վրա մենք կլսենք հեռավոր տվյալները որպես ուլտրամանուշակագույն (ուլտրամանուշակագույն ճառագայթում), օդի ջերմաստիճանը և խոնավությունը: Այդ տվյալները շատ կարևոր կլինեն և կօգտագործվեն ապագա ամբողջական Եղանակային կայանում:
Բլոկային դիագրամը ցույց է տալիս, թե ինչ կստանանք վերջում:
Քայլ 1: BoM - նյութի հաշիվ
NodeMCU (ESP8266-12E) - 9.00 ԱՄՆ դոլար
Խոնավության և ջերմաստիճանի տվիչ (DHT22) - 10,00 ԱՄՆ դոլար
Ուլտրամանուշակագույն ցուցիչ - 4.00 ԱՄՆ դոլար
OLED ԱՄՆ դոլար 12.00
Հացաթուղթ - 1,00 ԱՄՆ դոլար
Քայլ 2. Անալոգային ուլտրամանուշակագույն ցուցիչ
Այս ուլտրամանուշակագույն սենսորն առաջացնում է անալոգային ելք `համաչափ ուլտրամանուշակագույն ճառագայթման, որը գտնվում է լուսազգայուն սպեկտրում: Այն օգտագործում է ուլտրամանուշակագույն ֆոտոդիոդ (հիմնված է Գալիումի նիտրիդի վրա), որը կարող է հայտնաբերել 240-370 նմ լույսի տիրույթը (որը ծածկում է UVB և UVA սպեկտրի մեծ մասը): Ֆոտոդիոդից ազդանշանի մակարդակը շատ փոքր է `նանո-ամպերի մակարդակում, ուստի մոդուլը ներկառուցել է գործառնական ուժեղացուցիչ` ազդանշանը ավելի ընթեռնելի վոլտ մակարդակի (0-ից 1 Վ) հզորացնելու համար:
Սենսորը և op-amp- ը կարող են սնուցվել ՝ VCC- ն միացնելով 3.3VDC (կամ 5VDC), իսկ GND- ին ՝ հոսանքի գրունտին: Անալոգային ազդանշանը կարելի է ստանալ OUT կապից:
Դրա ելքը կլինի միլիվոլտ և կարդացվելու է մեր NodeMCU- ի անալոգային մուտքի միջոցով: Կարդալուց հետո մենք պետք է այն «փոխարկենք» (կամ «քարտեզագրենք»), որպեսզի արժեքները ավելի լավ մշակվեն ծածկագրով: Մենք կարող ենք դա անել readSensorUV () գործառույթով:
/ * Կարդացեք ուլտրամանուշակագույն սենսոր mV- ով և զանգահարեք ուլտրամանուշակագույն ինդեքսի հաշվարկ */
void readSensorUV () {բայթ numOfReadings = 5; dataSensorUV = 0; համար (int i = 0; i <numOfReadings; i ++) {dataSensorUV+= analogRead (sensorUVPin); ուշացում (200); } dataSensorUV /= numOfReadings; dataSensorUV = (dataSensorUV * (3.3 / 1023.0)) * 1000; Serial.println (dataSensorUV); indexCalculate (); }
Ուլտրամանուշակագույն ճառագայթման տվյալները ստանալուց հետո մենք կարող ենք հեշտությամբ հաշվարկել ուլտրամանուշակագույն ճառագայթման ինդեքսը, ինչպես սահմանված է վերը նշված աղյուսակում: IndexCalculate () գործառույթը դա կանի մեզ համար.
/ * Ուլտրամանուշակագույն ինդեքսի հաշվարկ */
դատարկ indexCalculate () {if (dataSensorUV <227) indexUV = 0; այլապես, եթե (227 <= dataSensorUV && dataSensorUV <318) indexUV = 1; այլապես, եթե (318 <= dataSensorUV && dataSensorUV <408) indexUV = 2; այլապես, եթե (408 <= dataSensorUV && dataSensorUV <503) indexUV = 3; այլապես, եթե (503 <= dataSensorUV && dataSensorUV <606) indexUV = 4; այլապես, եթե (606 <= dataSensorUV && dataSensorUV <696) indexUV = 5; այլապես, եթե (696 <= dataSensorUV && dataSensorUV <795) indexUV = 6; այլապես, եթե (795 <= dataSensorUV && dataSensorUV <881) indexUV = 7; այլապես, եթե (881 <= dataSensorUV && dataSensorUV <976) indexUV = 8; այլապես, եթե (976 <= dataSensorUV && dataSensorUV <1079) indexUV = 9; այլապես, եթե (1079 <= dataSensorUV && dataSensorUV <1170) indexUV = 10; այլ ցուցանիշ UV = 11; }
Քայլ 3: Displayուցադրման տեղադրում. OLED
Փորձարկման նպատակով մենք մեր ուլտրամանուշակագույն հաշվիչի վրա կներառենք OLED (այս քայլը լրիվ պարտադիր չէ):
Թեստերի ընթացքում Սերիական մոնիտոր օգտագործելը լավ է, բայց ի՞նչ է տեղի ունենում, երբ դուք օգտագործում եք ձեր նախատիպերը ձեր համակարգչից հեռու `առանձին ռեժիմում: Դրա համար եկեք տեղադրենք OLED էկրան ՝ SSD1306, որի հիմնական բնութագրերն են.
- Displayուցասարքի չափը `0.96"
- I2C IIC SPI Սերիա
- 128X64
- Սպիտակ OLED LCD լուսադիոդ
Հետևեք էլեկտրական գծապատկերին և միացրեք մեր OLED- ի 4 կապում.
- VCC- ն անցնում է 3.3V- ի
- GND- ն անցնում է գետնին
- SCL- ն անցնում է NodeMCU (GPIO 2) ==> D4
- SDA- ն գնում է NodeMCU (GPIO 0) ==> D3
Էկրանը միացնելուց հետո ներբեռնենք և տեղադրենք դրա գրադարանը մեր Arduino IDE- ում ՝ «ESP8266 OLED վարորդը SSD1306 ցուցադրման համար», որը մշակվել է Դանիել Էյխհորնի կողմից (համոզվեք, որ օգտագործում եք 3.0.0 կամ ավելի մեծ տարբերակ):
Տեղադրեք գրադարանը ձեր Arduino IDE- ում, որը կարելի է գտնել SSD1306Wire.h- ում
IDE- ն վերագործարկելուց հետո գրադարանը պետք է արդեն տեղադրված լինի:
Գրադարանը աջակցում է I2C արձանագրությանը `OLED էկրանին մուտք գործելու համար` օգտագործելով ներկառուցված Wire.h գրադարանը.
/ * OLED */
#ներառել «SSD1306Wire.h» #ներառել «Wire.h» const int I2C_DISPLAY_ADDRESS = 0x3c; const int SDA_PIN = 0; const int SCL_PIN = 2; SSD1306 Լարային էկրան (I2C_DISPLAY_ADDRESS, SDA_PIN, SCL_PIN);
Թվարկենք մի քանի կարևոր API, որոնք կօգտագործվեն մեր OLED էկրանով: Ամբողջական ցանկը կարելի է գտնել վերը նշված GITHub- ում:
A. Displayուցադրման հսկողություն.
void init (); // Նախագծեք էկրանը
void displayOn (դատարկ); // Միացնել ցուցադրումը void displayOff (անվավեր); // Անջատել ցուցադրման անջատումները void clear (void); // Մաքրել տեղական պիքսելային բուֆերի անվավեր flipScreenVertically (); // Էկրանը գլխիվայր շրջել
B. Տեքստային գործառնություններ.
void drawString (int16_t x, int16_t y, լարային տեքստ); // (xpos, ypos, "Text")
անվավեր setFont (const char* fontData); // Սահմանում է ընթացիկ տառատեսակը:
Մատչելի լռելյայն տառատեսակներ.
- ArialMT_Plain_10,
-
ArialMT_Plain_16,
- ArialMT_Plain_24
Երբ տեղադրվի ինչպես OLED- ն, այնպես էլ նրա Գրադարանը, եկեք գրենք մի պարզ ծրագիր `այն փորձարկելու համար: Մուտքագրեք ստորև նշված կոդը ձեր IDE- ում, արդյունքը պետք է լինի ցուցադրում, ինչպես ցույց է տրված վերը նշված լուսանկարում.
* OLED */
#ներառել «SSD1306Wire.h» #ներառել «Wire.h» const int I2C_DISPLAY_ADDRESS = 0x3c; const int SDA_PIN = 0; const int SCL_PIN = 2; SSD1306 Լարային էկրան (I2C_DISPLAY_ADDRESS, SDA_PIN, SCL_PIN); void setup () {Serial.begin (115200); displaySetup (); } void loop () {} / * Նախաձեռնել և ցուցադրել կարգավորումների տվյալները OLED * / void displaySetup () {display.init (); // սկզբնականացնել ցուցադրման էկրանը: clear (); // Մաքրել ցուցադրման էկրանը. FlipScreenVertically (); // Էկրանը գլխիվայր շրջել display.display (); // Տեղադրեք տվյալները ցուցադրման Serial.println («Displayուցադրման թեստի մեկնարկ»); display.setFont (ArialMT_Plain_24); display.drawString (30, 0, «OLED»); // (xpos, ypos, "Text") display.setFont (ArialMT_Plain_16); display.drawString (18, 29, «Փորձարկումն սկսված է»); display.setFont (ArialMT_Plain_10); display.drawString (10, 52, "Serial BaudRate:"); display.drawString (90, 52, լարային (11500)); display.display (); // Տեղադրեք տվյալները ցուցադրման հետաձգման վրա (3000); }
Վերոնշյալ ծրագիրը կարելի է ներբեռնել իմ GitHub- ից.
NodeMCU_OLED_Test
Քայլ 4: Տեղական ուլտրամանուշակագույն հաշվիչ
Այժմ, տեղադրված OLED էկրանով, մենք կարող ենք միացնել մարտկոցը և մի քանի հեռակա փորձարկումներ կատարել ՝ օգտագործելով մեր «ուլտրամանուշակագույն հաշվիչը»
#սահմանեք SW_VERSION "UV_Sensor_V.1"
/ * Ուլտրամանուշակագույն տվիչ */ #սահմանել տվիչ UVPin A0 int dataSensorUV = 0; int indexUV = 0; / * OLED */ #ներառել «SSD1306Wire.h» #ներառել «Wire.h» const int I2C_DISPLAY_ADDRESS = 0x3c; const int SDA_PIN = 0; const int SCL_PIN = 2; SSD1306 Լարային էկրան (I2C_DISPLAY_ADDRESS, SDA_PIN, SCL_PIN); void setup () {Serial.begin (115200); displaySetup (); } void loop () {readSensorUV (); displayUV (); ուշացում (1000); } / * Գործարկել և ցուցադրել կարգավորումների տվյալները OLED * / void displaySetup () {display.init (); // սկզբնականացնել ցուցադրման էկրանը. clear (); // Մաքրել ցուցադրման էկրանը. FlipScreenVertically (); // Էկրանը գլխիվայր շրջել display.display (); // Տեղադրեք տվյալները ցուցադրման Serial.println («Ուլտրամանուշակագույն սենսորային թեստի մեկնարկ»); display.setFont (ArialMT_Plain_24); display.drawString (10, 0, «MJRoBot»); display.setFont (ArialMT_Plain_16); display.drawString (0, 29, «Ուլտրամանուշակագույն սենսորների թեստ»); display.setFont (ArialMT_Plain_10); display.drawString (0, 52, «SW Ver.:»); display.drawString (45, 52, SW_VERSION); display.display (); ուշացում (3000); } / * Կարդացեք ուլտրամանուշակագույն սենսոր mV- ով և կանչեք ուլտրամանուշակագույն ինդեքսի հաշվարկ * / void readSensorUV () {բայթ numOfReadings = 5; dataSensorUV = 0; համար (int i = 0; i <numOfReadings; i ++) {dataSensorUV+= analogRead (sensorUVPin); ուշացում (200); } dataSensorUV /= numOfReadings; dataSensorUV = (dataSensorUV * (3.3 / 1023.0)) * 1000; Serial.println (dataSensorUV); indexCalculate (); } / * UV ինդեքսի հաշվարկ * / void indexCalculate () {if (dataSensorUV <227) indexUV = 0; այլապես, եթե (227 <= dataSensorUV && dataSensorUV <318) indexUV = 1; այլապես, եթե (318 <= dataSensorUV && dataSensorUV <408) indexUV = 2; այլապես, եթե (408 <= dataSensorUV && dataSensorUV <503) indexUV = 3; այլապես, եթե (503 <= dataSensorUV && dataSensorUV <606) indexUV = 4; այլապես, եթե (606 <= dataSensorUV && dataSensorUV <696) indexUV = 5; այլապես, եթե (696 <= dataSensorUV && dataSensorUV <795) indexUV = 6; այլապես, եթե (795 <= dataSensorUV && dataSensorUV <881) indexUV = 7; այլապես, եթե (881 <= dataSensorUV && dataSensorUV <976) indexUV = 8; այլապես, եթե (976 <= dataSensorUV && dataSensorUV <1079) indexUV = 9; այլապես, եթե (1079 <= dataSensorUV && dataSensorUV <1170) indexUV = 10; այլ ցուցանիշ UV = 11; } /* UVուցադրել ուլտրամանուշակագույն արժեքները տեղական OLED* / void displayUV () {display.clear (); display.setFont (ArialMT_Plain_16); display.drawString (20, 0, «Ուլտրամանուշակագույն ցուցիչ»); display.drawString (0, 23, "UV (mV):"); display.drawString (80, 23, լարային (dataSensorUV)); display.drawString (0, 48, «Ուլտրամանուշակագույն ինդեքս.»); display.setFont (ArialMT_Plain_24); display.drawString (82, 42, Լար (indexUV)); display.display (); }
Վերոնշյալ կոդը կարելի է ներբեռնել իմ GitHun- ից ՝ NodeMCU_UV_Sensor_OLED.ino
Քայլ 5. Օդի ջերմաստիճանի և խոնավության չափումների համար DHT22- ի տեղադրում
Եղանակի տվյալները գրավելու համար ամենաօգտագործվող սենսորներից է DHT22- ը (կամ դա DHT11 եղբայրն է), թվային հարաբերական խոնավության և ջերմաստիճանի տվիչ: Այն օգտագործում է խոնավության տարողունակության տվիչ և թերմիստոր `շրջապատող օդը չափելու համար և թվային ազդանշան է դուրս հանում տվյալների քորոցի վրա (անալոգային մուտքային կապեր անհրաժեշտ չեն):
Սենսորը պետք է սնուցվի 3.3 Վ-ից մինչև 5 Վ լարման սահմաններում և կաշխատի -40oC- ից +80oC ջերմաստիճանի դեպքում +/- 0.5oC և հարաբերական խոնավության համար +/- 2% ճշգրտությամբ: Կարևոր է նաև հաշվի առնել, որ դրա զգայունության ժամանակահատվածը միջինում 2 վայրկյան է (ընթերցումների միջև նվազագույն ժամանակը): Adafruit- ի կայքը շատ տեղեկություններ է տրամադրում երկուսի, DHT22- ի և նրա եղբոր DHT11- ի մասին: Լրացուցիչ մանրամասների համար այցելեք DHT22/11 ձեռնարկի էջ:
DHT22- ն ունի 4 կապում (սենսորի առջև, 1 -ը ամենից ձախն է).
- VCC (մենք կկապվենք 3.3 Վ -ին NodeMCU- ից);
- Տվյալների արտահոսք;
- Միացված չէ և
- Գետնին
Սովորաբար, երբ սենսորը կօգտագործեք 20 մ -ից պակաս հեռավորության վրա, 10K դիմադրություն պետք է միացված լինի տվյալների և VCC կապերի միջև: Ելքային քորոցը միացված կլինի NodeMCU կապ D3- ին (տե՛ս դիագրամը վերևում): Երբ սենսորը տեղադրվի մեր մոդուլում, ներբեռնեք DHT գրադարանը Adafruit GitHub պահոցից և տեղադրեք այն ձեր Arduino- ի գրադարանի ֆայլում: Ձեր Arduino IDE- ն վերաբեռնելուց հետո պետք է տեղադրվի «DHT տվիչների գրադարանը»:
Կոդի սկզբում մենք պետք է ներառենք տողերը.
/* DHT22*/
#ներառել «DHT.h» #սահմանել DHTPIN D2 #սահմանել DHTTYPE DHT22 DHT dht (DHTPIN, DHTTYPE); բոց բզզոց = 0; բոց ջերմաստիճան = 0;
Սենսորը կարդալու համար կստեղծվի նոր գործառույթ.
/ * Ստացեք DHT տվյալներ */
դատարկ getDhtData (անվավեր) {float tempIni = temp; float humIni = բզզոց; temp = dht.readTemperature (); hum = dht.readHumidity (); if (isnan (hum) || isnan (temp)) // Ստուգեք, թե որևէ ընթերցում ձախողվեց և շուտ դուրս եկեք (նորից փորձելու համար): {Serial.println ("Չհաջողվեց կարդալ DHT սենսորից"); temp = tempIni; հում = հումանի; վերադարձ; }}
Ամբողջական ծածկագիրը, ներառյալ ուլտրամանուշակագույն և DHT սենսորները, կարելի է ներբեռնել իմ GitHub- ից ՝ NodeMCU_UV_DHT_Sensor_OLED
Քայլ 6. Տվյալների ուղարկում ThingSpeak.com
Մինչ այժմ մենք օգտագործել ենք միայն NodeMCU ESP12-E- ն որպես սովորական և սովորական Arduino տախտակ: Իհարկե, մենք միայն «քերծեցինք» այս դիտարժան փոքրիկ չիպի իրական ներուժը, և այժմ ժամանակն է երկինք թռչելու: Կամ ավելի լավ աստղերին: Ահ… դեպի ամպ:;-)
Եկեք սկսենք!
- Նախ, դուք պետք է հաշիվ ունենաք ThinkSpeak.com կայքում
- Հետևեք ալիք ստեղծելու հրահանգներին և ուշադրություն դարձրեք ձեր ալիքի ID- ին և գրեք API բանալիին
- Թարմացրեք ստորև նշված կոդը ձեր WiFi ցանցի և Thinkspeak- ի հավատարմագրերի միջոցով
- Գործարկեք ծրագիրը IDE- ով
Եկեք մեկնաբանենք ծածկագրի ամենակարևոր մասերը.
Նախ, եկեք զանգահարենք ESP8266 գրադարան, սահմանենք WiFi հաճախորդը և սահմանենք ձեր տեղական Router- ի և Thinkspeak- ի հավատարմագրերը.
/* ESP12-E & Thinkspeak*/
#ներառել WiFiClient հաճախորդը; const char* MY_SSID = "ՔՈ SSD ID- ն ԱՅՍՏԵ"; const char* MY_PWD = "ՔՈ ԱASSՅՈՍՏԱԳՈՐԸ"; const char* TS_SERVER = "api.thingspeak.com"; Լարային TS_API_KEY = "ՔՈ ԱԼԻՔԸ ԳՐԵԼ API- ի Բանալին";
Երկրորդ, եկեք ներառենք IoT նախագծերի համար շատ կարևոր գրադարան ՝ SimpleTimer.h:
/ * IMԱՄԱՆԱԿԸ */
#ներառել SimpleTimer ժամաչափ;
Երրորդ, setup () - ի ընթացքում մենք կսկսենք սերիական հաղորդակցումը, կանչենք connectWiFi () գործառույթը և կսահմանենք ժամաչափերը: Նշենք, որ կոդի տողը ՝ timer.setInterval (60000L, sendDataTS); յուրաքանչյուր 60 վայրկյանը մեկ կանչում է sendDataTS () գործառույթը ՝ տվյալները ThinkSpeak ալիքում վերբեռնելու համար:
դատարկ կարգավորում ()
{… Serial.begin (115200); ուշացում (10); … ConnectWifi (); timer.setInterval (60000L, sendDataTS); …}
Վերջապես, բայց ոչ պակաս կարևոր, օղակի ընթացքում (), միակ հրամանը, որն անհրաժեշտ է, ժամանակաչափի գործարկումն է և վերջ:
դատարկ շրջան ()
{… Timer.run (); // նախաձեռնում է SimpleTimer}
Ստորև կարող եք տեսնել երկու կարևոր գործառույթներ, որոնք օգտագործվում են Thinkspeak հաղորդակցությունը կարգավորելու համար.
ESP12-E կապ ձեր WiFi ցանցի հետ.
/***************************************************
*Միացնել WiFi ********************************************* ***/ void connectWifi () {Serial.print ("Միացում"+*MY_SSID); WiFi.begin (MY_SSID, MY_PWD); while (WiFi.status ()! = WL_CONNECTED) {ուշացում (1000); Serial.print ("."); } Serial.println (""); Serial.println («WiFi միացված է»); Serial.println (""); }
ESP12-E- ն տվյալներ է ուղարկում ThinkSpeak.
/***************************************************
*Տվյալների ուղարկում Thinkspeak ալիքին **************************************** ******/ void sendDataTS (void) {if (client.connect (TS_SERVER, 80)) {String postStr = TS_API_KEY; postStr += "& դաշտ 1 ="; postStr += Լար (dataSensorUV); postStr += "& դաշտ 2 ="; postStr += Լար (indexUV); postStr += "& field3 ="; postStr += Լար (ջերմաստիճան); postStr += "& դաշտ 4 ="; postStr += Լար (բզզոց); postStr += "\ r / n / r / n"; client.print ("POST /update HTTP /1.1 / n"); client.print ("Հաղորդավար` api.thingspeak.com / n "); client.print ("Միացում. փակել / n"); client.print ("X-THINGSPEAKAPIKEY:" + TS_API_KEY + "\ n"); client.print ("Content-Type: application/x-www-form-urlencoded / n"); client.print ("Բովանդակություն-երկարություն."); client.print (postStr.length ()); client.print ("\ n / n"); client.print (postStr); ուշացում (1000); } ուղարկված ++; client.stop (); }
Ամբողջական կոդը կարելի է գտնել իմ GitHub- ում ՝ NodeMCU_UV_DHT_Sensor_OLED_TS_EXT
Երբ ձեր ծածկագիրը վերբեռնվի ձեր NodeMCU- ում: Եկեք միացնենք արտաքին մարտկոցը և որոշ չափումներ կատարենք արևի տակ: Ես դնում եմ Հեռակառավարման կայանը տանիքին և սկսում տվյալների հավաքումը ThingSpeak.com- ում, ինչպես ցույց է տրված վերը նշված լուսանկարներում:
Քայլ 7: Եզրակացություն
Ինչպես միշտ, ես հույս ունեմ, որ այս նախագիծը կարող է օգնել ուրիշներին գտնել իրենց ճանապարհը դեպի էլեկտրոնիկայի հետաքրքիր աշխարհ:
Մանրամասների և վերջնական ծածկագրի համար այցելեք իմ GitHub դեպոզիտարիան ՝ RPi-NodeMCU-Weather-Station
Լրացուցիչ նախագծերի համար այցելեք իմ բլոգը ՝ MJRoBot.org
Մնացեք մեզ հետ! Հաջորդ ձեռնարկը մենք հեռավոր եղանակային կայանից տվյալներ կուղարկենք կենտրոնական ՝ Raspberry Pi վեբ սերվերի հիման վրա.
Սալուդոս աշխարհի հարավից:
Կհանդիպենք իմ հաջորդ հրահանգի մեջ:
Շնորհակալություն, Մարսելո
Խորհուրդ ենք տալիս:
LCDուցադրել խոնավություն և ջերմաստիճան LCD- ով ARDUINO NANO- ով. 5 քայլ
ARDUINO NANO- ով ցուցադրել խոնավություն և ջերմաստիճան LCD- ում. Հետևյալ հրահանգավոր գործարքները վերաբերում են arduino nano- ի հետ պարզ LCD ինտերֆեյսի ստեղծմանը:
LoRa- ով ջերմոցի ավտոմատացում: (Մաս 1) -- Սենսորներ (ջերմաստիճան, խոնավություն, հողի խոնավություն) ՝ 5 քայլ
LoRa- ով ջերմոցի ավտոմատացում: (Մաս 1) || Սենսորներ (ջերմաստիճան, խոնավություն, հողի խոնավություն). Այս նախագծում ես ձեզ ցույց կտամ, թե ինչպես եմ ավտոմատացրել ջերմոցը: Դա նշանակում է, որ ես ձեզ ցույց կտամ, թե ինչպես եմ կառուցել ջերմոցը և ինչպես եմ միացրել էներգիայի և ավտոմատացման էլեկտրոնիկան: Նաև ձեզ ցույց կտամ, թե ինչպես ծրագրավորել Arduino տախտակ, որն օգտագործում է L
IoT- ը դյուրին դարձավ. ESP-MicroPython-MQTT-Thing Խոսել ՝ 12 քայլ
IoT Made Ease: ESP-MicroPython-MQTT-ThingSpeak. Իմ նախորդ ձեռնարկում `MicroPython- ը ESP- ում Jupyter- ի միջոցով, մենք սովորեցինք, թե ինչպես տեղադրել և գործարկել MicroPython- ը ESP սարքի վրա: Օգտագործելով Jupyter Notebook- ը ՝ որպես մեր զարգացման միջավայր, մենք սովորեցինք նաև կարդալ սենսորներից (ջերմաստիճան, խոնավություն և
WEMOS D1 ջերմաստիճան/Խոնավություն IoT ՝ 6 քայլ
WEMOS D1 pերմաստիճան/Խոնավություն IoT. Սա պարզ հավաքում, միացում, կազմում է նախագիծ, որը հնարավորություն կտա ձեզ գնալ IoT ջերմաստիճանի և խոնավության սենսորով, որը միանում է WiFi- ին և ձեր տվյալները «հաղորդում» Blynk IoT հարթակին: Ձեր սմարթֆոնից մոնիտորինգը դյուրին դարձնելով: Բացի այդ
Կասեցրեք շարժումը, որը դյուրին դարձավ. 5 քայլ
Հեշտությամբ դադարեցրեք շարժման շարժումը. Հուսով եմ, որ այս ուսուցանվողը սովորական մարդուն կօգնի ծանոթանալ stop motion անիմացիայի հիմունքներին և թույլ կտա նրանց ստեղծել ինքնուրույն անվճար անիմացիաներ: Քանի որ սա իմ առաջին հրահանգն է, խնդրում եմ ողջամիտ լինել: կառուցողական քննադատությունը շատ ողջունելի է