Բովանդակություն:

ThingSpeak, ESP32 և Long Range Wireless Temp and խոնավություն. 5 քայլ
ThingSpeak, ESP32 և Long Range Wireless Temp and խոնավություն. 5 քայլ

Video: ThingSpeak, ESP32 և Long Range Wireless Temp and խոնավություն. 5 քայլ

Video: ThingSpeak, ESP32 և Long Range Wireless Temp and խոնավություն. 5 քայլ
Video: Proyecto de heliostato Templastat / Templastat Heliostat Project: improvements, updates and test 2024, Նոյեմբեր
Anonim
ThingSpeak, ESP32 և Long Range Wireless Temp and Humidity
ThingSpeak, ESP32 և Long Range Wireless Temp and Humidity

Այս ձեռնարկում մենք չափելու ենք ջերմաստիճանի և խոնավության տարբեր տվյալներ ՝ օգտագործելով Temp և խոնավության տվիչ: Դուք նաև կսովորեք, թե ինչպես ուղարկել այս տվյալները ThingSpeak- ին: Որպեսզի կարողանաք վերլուծել այն ցանկացած վայրից ՝ տարբեր ծրագրերի համար:

Քայլ 1: Պահանջվում է սարքավորում և ծրագրակազմ

Պահանջվում է սարքավորում և ծրագրակազմ
Պահանջվում է սարքավորում և ծրագրակազմ
Պահանջվում է սարքավորում և ծրագրակազմ
Պահանջվում է սարքավորում և ծրագրակազմ

Սարքավորումներ:

  • ESP-32. ESP32- ը հեշտացնում է Arduino IDE- ի և Arduino Wire Language- ի օգտագործումը IoT ծրագրերի համար: Այս ESp32 IoT մոդուլը համատեղում է Wi-Fi- ը, Bluetooth- ը և Bluetooth BLE- ը ՝ տարբեր ծրագրերի համար: Այս մոդուլը լիովին հագեցած է 2 պրոցեսորային միջուկով, որոնք կարող են կառավարվել և սնվել առանձին, և ժամացույցի կարգավորելի հաճախականությամբ `80 ՄՀց մինչև 240 ՄՀց: Այս ESP32 IoT WiFi BLE մոդուլը ինտեգրված USB- ով նախագծված է տեղավորվելու բոլոր ncd.io IoT արտադրանքներում: Վերահսկեք սենսորները և կառավարման ռելեներ, FET- ներ, PWM կարգավորիչներ, էլեկտրամագնիսներ, փականներ, շարժիչներ և շատ ավելին աշխարհի ցանկացած վայրից ՝ օգտագործելով վեբ էջ կամ նվիրված սերվեր: Մենք արտադրեցինք ESP32- ի մեր սեփական տարբերակը `տեղավորվելով NCD IoT սարքերում` առաջարկելով ընդլայնման ավելի շատ տարբերակներ, քան աշխարհի ցանկացած այլ սարք: Ինտեգրված USB պորտը թույլ է տալիս հեշտ ծրագրավորել ESP32- ը: ESP32 IoT WiFi BLE մոդուլը անհավանական հարթակ է IoT հավելվածի զարգացման համար: Այս ESP32 IoT WiFi BLE մոդուլը կարող է ծրագրավորվել ՝ օգտագործելով Arduino IDE- ն:
  • IoT երկար հեռավորության անլար ջերմաստիճանի և խոնավության տվիչ. Արդյունաբերական երկար հեռավորության անլար ջերմաստիճանի խոնավության տվիչ: Դասարան ՝ ± 1.7%RH ± 0.5 ° C սենսորային լուծույթով: Մինչև 500, 000 փոխանցում 2 AA մարտկոցից: Չափում է -40 ° C- ից մինչև 125 ° C մարտկոցներով, որոնք գոյատևում են այս վարկանիշը: Բարձրակարգ 2-մղոն LOS միջակայք և 28 մղոն բարձր եկամուտ ունեցող ալեհավաքներով: Միջերես Raspberry Pi- ին, Microsoft Azure- ին, Arduino- ին և այլն:
  • USB միջերեսով երկարաժամկետ անլար ցանցի մոդեմ

Օգտագործված ծրագրակազմ

  • Arduino IDE
  • ThingSpeak

Օգտագործված գրադարան

  • PubSubClient գրադարան
  • Մետաղալար. Ժ

Arduino հաճախորդ MQTT- ի համար

Այս գրադարանը հաճախորդին տրամադրում է MQTT աջակցող սերվերի հետ պարզ հրապարակման/բաժանորդագրման հաղորդագրություններ կատարելու համար

MQTT- ի մասին լրացուցիչ տեղեկությունների համար այցելեք mqtt.org:

Բեռնել

Գրադարանի վերջին տարբերակը կարելի է ներբեռնել GitHub- ից

Փաստաթղթավորում

Գրադարանը գալիս է մի շարք էսքիզների օրինակով: Տես Ֆայլ> Օրինակներ> PubSubClient Arduino հավելվածի ներսում: Ամբողջ API փաստաթղթերը:

Համատեղելի սարքավորում

Գրադարանը օգտագործում է Arduino Ethernet Client API- ն `հիմքում ընկած ցանցային սարքավորումների հետ փոխգործակցության համար: Սա նշանակում է, որ այն պարզապես աշխատում է աճող թվով տախտակներով և վահաններով, ներառյալ.

  • Arduino Ethernet
  • Arduino Ethernet վահան
  • Arduino YUN - EthernetClient- ի փոխարեն օգտագործեք ներառված YunClient- ը և անպայման կատարեք Bridge.begin ()
  • Arduino WiFi Shield - եթե ցանկանում եք 90 բայթից ավելի փաթեթ ուղարկել այս վահանով, միացրեք MQTT_MAX_TRANSFER_SIZE տարբերակը PubSubClient.h- ում:
  • SparkFun WiFly Shield - երբ օգտագործվում է այս գրադարանի հետ
  • Intel Galileo/Edison
  • ESP8266
  • ESP32 Գրադարանը ներկայումս չի կարող օգտագործվել ENC28J60 չիպի վրա հիմնված սարքավորումներով, ինչպիսիք են Nanode- ը կամ Nuelectronics Ethernet Shield- ը: Նրանց համար կա այլընտրանքային գրադարան:

Մետաղալար գրադարան

Wire գրադարանը թույլ է տալիս շփվել I2C սարքերի հետ, որոնք հաճախ կոչվում են նաև "2 wire" կամ "TWI" (Two Wire Interface), կարող եք ներբեռնել Wire.h- ից

Հիմնական օգտագործումը

  • Wire.begin () Սկսեք օգտագործել Wire- ը վարպետ ռեժիմում, որտեղ դուք կսկսեք և վերահսկելու եք տվյալների փոխանցումները: Սա ամենատարածված օգտագործումն է, երբ միանում ես I2C ծայրամասային չիպերի մեծամասնությանը:
  • Wire.begin (հասցե) Սկսեք օգտագործել Wire- ը ստրուկ ռեժիմում, որտեղ դուք կպատասխանեք «հասցեով», երբ այլ I2C վարպետների չիպերը կսկսեն հաղորդակցությունը: Փոխանցող
  • Wire.beginTransmission (հասցե) Սկսեք նոր փոխանցում սարքին «հասցեով»: Օգտագործվում է վարպետության ռեժիմը:
  • Wire.write (data) Ուղարկել տվյալներ: Վարպետ ռեժիմում սկզբնական startTransmission- ը պետք է կանչվի:
  • Wire.endTransmission () Վարպետ ռեժիմում սա ավարտում է փոխանցումը և առաջացնում բոլոր բուֆերային տվյալների ուղարկումը:

Ստանալով

  • Wire.requestFrom (հասցե, հաշվել) Կարդացեք «հաշվել» բայթ սարքից «հասցեում»: Օգտագործվում է վարպետության ռեժիմը:
  • Wire.available () Վերադարձնում է ստացական զանգելով հասանելի բայթերի քանակը:
  • Wire.read () Ստացեք 1 բայթ:

Քայլ 2: Կոդի վերբեռնում ESP32- ում ՝ օգտագործելով Arduino IDE- ն

  • Նախքան ծածկագիրը վերբեռնելը, կարող եք դիտել այս տվիչի աշխատանքը տվյալ հղումով:
  • Ներբեռնեք և ներառեք PubSubClient Library և Wire.h Library:
  • Դուք պետք է նշանակեք ձեր API բանալին, SSID (WiFi անուն) և առկա ցանցի գաղտնաբառը:
  • Կազմեք և վերբեռնեք Temp-ThinSpeak.ino ծածկագիրը:
  • Սարքի և ուղարկված տվյալների կապը հաստատելու համար բացեք սերիական մոնիտորը: Եթե պատասխանը չի երևում, փորձեք անջատել ձեր ESP32- ը և ապա նորից միացնել այն: Համոզվեք, որ Սերիալային մոնիտորի բաուդ արագությունը դրված է ձեր 115200 ծածկագրում նշված նույն մակարդակի վրա:

Քայլ 3: Սերիայի մոնիտորի ելք

Սերիական մոնիտորի ելք
Սերիական մոնիտորի ելք

Քայլ 4: ThingSpeak- ի աշխատանք դարձնելը

ThingSpeak աշխատանքը դարձնելը
ThingSpeak աշխատանքը դարձնելը
ThingSpeak աշխատանքը դարձնելը
ThingSpeak աշխատանքը դարձնելը
ThingSpeak աշխատանքը դարձնելը
ThingSpeak աշխատանքը դարձնելը
  • Ստեղծեք հաշիվ ThnigSpeak- ում:
  • Ստեղծեք նոր ալիք ՝ կտտացնելով Ալիքներ:
  • Կտտացրեք Իմ ալիքները:
  • Կտտացրեք Նոր ալիք:
  • Նոր ալիքի ներսում, անվանեք ալիքը:
  • Անվանեք դաշտը ալիքի ներսում, դաշտը այն փոփոխականն է, որում տվյալները հրապարակվում են:
  • Այժմ պահպանեք ալիքը:
  • Այժմ դուք կարող եք գտնել ձեր API բանալիները վահանակի վրա: Գնացեք գլխավոր էջի հպումով և գտեք ձեր «Գրեք Api բանալի» -ը, որը պետք է թարմացվի նախքան ծածկագիրը ESP32- ում վերբեռնելը:
  • Ալիքի ստեղծումից հետո դուք կկարողանաք դիտել ձեր ջերմաստիճանը և Խոնավության տվյալները մասնավոր տեսքով ՝ Ալիքի ներսում ստեղծված դաշտերով:
  • Temp և խոնավության տվյալների միջև գրաֆիկ կազմելու համար կարող եք օգտագործել MATLAB Visualization:
  • Դրա համար գնացեք App, կտտացրեք MATLAB Visualization- ին:
  • Ներսում այն ընտրում է Custom, այս դեպքում մենք որպես օրինակ ընտրում ենք հողամասի ջերմաստիճանը և քամու արագությունը երկու տարբեր y առանցքների 8-ի վրա: Այժմ կտտացրեք ստեղծել:
  • MATLAB կոդը ինքնագեներացվելու է, երբ ստեղծում եք վիզուալիզացիա, բայց դուք պետք է խմբագրեք դաշտի ID- ն, կարդացեք ալիքի ID- ն, կարող եք ստուգել հետևյալ պատկերը:
  • Այնուհետև պահեք և գործարկեք ծածկագիրը:
  • Դուք կտեսնեիք սյուժեն:

Խորհուրդ ենք տալիս: