Arduino- ի Iot սարքերի մշակում, օգտագործելով MyDevices Cayenne ծառայությունը: Blynk. Հեշտ վերահսկում ազնվամորի եւ Arduino Cloud Services Control Arduino

Նիստեր - մաքրեք շողշողացողների շարքերը:
Այսօր մենք կկազմակերպենք ESP8266 կառավարումը 5 րոպեի ընթացքում ձեր սմարթֆոնից (iOS կամ Android) `օգտագործելով նոր Blink Cloud Service: Տեսանյութ եւ մանրամասներ կտրվածքի տակ:


Տեղադրեք Blynk ծրագիրը սմարթֆոնի վրա

Գրանցվել Հավելվածում եւ ստեղծել նոր նախագիծ:

Օրինակ, մուտքագրեք նախագծի անվանումը ESP8266:, Դաշտում Ապարատային մոդել Ընտրել ESP8266:, (Հուսով եմ, որ դուք կնկատեք օժանդակ սարքավորումների տպավորիչ ցուցակը) ինքնաբերաբար ստեղծվել է AUTH TOKEN. Ուղարկեք ձեր փոստարկղին:

Կոճակը սեղմելուց հետո Ստեղծեք: Ձեզ հասանելի կլինեն դատարկ դաշտ, ձեր ESP8266 կառավարման վահանակի UI- ն ձեւավորելու համար:

Կտտացրեք PLUS- ին աջ կողմում `գործիքագոտին կհայտնվի Widget տուփ. Ձեր կառավարման վահանակին գործիքներ ավելացնելու համար: Հատկանշական է, որ Widgets- ի ցուցակը դեռ կլրացվի:

Նմուշի համար ընտրեք widget- ի տեսակը Կոճակը: - Այս վիդջեթը անմիջապես ավելացվում է ձեր վահանակին: Խմբագրել այն մեկ հպումով: Անունը չի կարող լրացվել, ճիշտ է, դուք կարող եք ընտրել ցուցիչի գույնը, դաշտում Ելքային քորոց: Ընտրեք ճիշտ Թվային:եւ թողեց ցանկացած անվճար PIN GPIO., Ստորեւ անջատեք կոճակի տեսակը Տեղավորել.

Հաջորդը, սահմանեք Blynk գրադարանը Arduino IDE- ում: Սա կօգնի ձեզ պաշտոնական ցուցումներ: Կարող եք նաեւ գրադարան վերցնել Վերջին տարբերակը RESOUSOUS- ից անմիջապես եւ ձեռքով սահմանված: Հաջորդը, ընտրեք օրինակ ESP8266_StandandoN եւ նշանակեք դրանում AUTH TOKEN.որը մենք ստացել ենք փոստով SSID եւ գաղտնաբառ դու WiFi ցանց, Լրացրեք եւ լցնել ուրվագիծը ESP8266- ում:

Հրաշալի բան - ESP8266: Pretty հզոր պրոցեսոր, շատ հիշողություն, ներկառուցված WiFi վերահսկիչ: ESP32, իհարկե, նույնիսկ ավելի լավը, բայց նաեւ ավելի թանկ է: Բայց հիմա նրանց մասին չէ: Ավելի ճիշտ, ոչ թե նրանց մասին: ESP- ի վրա շատ հեշտ է կառուցել գրեթե ցանկացած տան ավտոմատացում եւ հետ Հեռակառավարման վահանակ եւ վերահսկել սմարթֆոնից կամ համակարգչից: Նման սարքի օրինակ է այս կայքում: Մեկ խնդիր `նման սարքի հետ աշխատել ոչ միայն Տնային ցանց, Եվ մոլորակի ցանկացած վայրից (եթե ինտերնետ մուտք կա, իհարկե, պահանջվում է որոշակի սերվեր, միջնորդ, որը կստանա սարքի հաղորդագրություններ եւ դրանք փոխանցելու համար: Իհարկե, կան տարբերակներ եւ ուղղակի հաղորդակցություն, բայց ես դրանք այստեղ չեմ համարի իրականացման բարդության կամ բարձր ծախսերի պատճառով:

Այս հոդվածում նշված ցուցակը չի հավակնում լիարժեք եւ նույնիսկ ավելի եզակիության, ես պարզապես փորձեցի վերլուծել եւ կառուցել որոշակի անվճար ծառայությունների հնարավորությունները: Նախեւառաջ, ինքներդ ձեզ համար, բայց եթե դա օգտակար կլինի որեւէ մեկի համար `առողջության վրա օգտագործելը: Երբ ես փնտրում էի հանրային MQTT սերվեր ինձ համար, ես զիջեցի շատ ինտերնետային ռեսուրսներ: Ես առաջին հերթին փնտրում էի ESP8266.ru- ում, բայց ավաղ, ծառայությունների կեսն է կամ ոչ մի աշխատող կամ այլեւս հարմար չէ ինձ համար մեկ կամ մեկ այլ պարամետրերի համար: Այն ամենը, ինչ գրված է այստեղ, առաջին հերթին իմ անձնական փորձն է, այս ծառայությունների հետ կապված ձեր փորձը կարող է բոլորովին այլ լինել: Եթե \u200b\u200bդուք գիտեք որեւէ այլ նման ծառայություններ. Գրեք մեկնաբանություններում կամ փոստով (փոստը եւ այլ կոնտակտները գտնվում են կայքի գլխարկների վերին աջ անկյունում), եւ ես կփորձեմ ստուգել եւ ավելացնել ցուցակ:

MQTT բրոքերներ

MQTT արձանագրությունը թերեւս առաջին բանն է, որ դուք գնում եք որոնիչներում, երբ փնտրում եք մի ճանապարհ Հեռակառավարման վահանակ Տարբեր «խելացի կտորներ»: Ես չեմ կարող երաշխավորել, որ սա ամենադյուրին արձանագրությունն է (ես պարզապես ոչինչ չունեմ համեմատելու ինչ-որ բանի հետ, ես անմիջապես կանգ առա նրա վրա), բայց իմ անձի վրա նա ոչ մի դժվարություն չի առաջացրել: Օրինակներ `շատ: Arduino IDE- ի պատրաստի գրադարանները նույնպես միայնակ չեն, քանի որ ասում են «Ընտրեք համը»: Բջջային ծրագրերը բավարար են ինչպես սմարթֆոնի համար, այնպես էլ հին դեղահատից պատրաստված կառավարման վահանակի համար: Այսպիսով, սա, հավանաբար, հեռակառավարման իրականացման ամենատարածված տարբերակն է: Cloud սերվերները նույնպես շատ են, դրանք կոչվում են MQTT բրոքերներ: Ես այստեղ չեմ դիտարկի Արձանագրության եւ սերվերների գործունեության սկզբունքը, այս տեղեկատվությունը բավականին բավարար է այլ վայրերում:

Cloudmqtt.com:

Ես սկսեցի այս ծառայությունից: Պարզապես այն պատճառով, որ դրա վրա հիմնված են MQTT արձանագրության հետ աշխատելու գրեթե բոլոր օրինակները: Ծառայությունը բավականին հարմար է եւ պարզ, ամեն ինչ ինտուիտիվ է: 2018-ին ծառայությունը թույլ տվեց անվճար Սակագնային պլան Միացնելով մինչեւ 10 սարք, որը բավականին բավարարված էր: Այնուամենայնիվ, մինչեւ 2018-ի վերջ, ծառայության տերերը վերանայեցին իրենց քաղաքականությունը եւ ազատ «Cute Cat» սակագնային պլանը այժմ հասանելի է ընդամենը 5 կապ: Ինձ համար անձամբ սա շատ փոքր է: Ես կարող եմ միաժամանակ միացնել երեք «վերահսկող» սարքեր `երկու սմարթֆոն եւ դեղահատ, եւ միայն երկու կապ է մնում ESP- ի համար: Եվ ես արդեն շատ տարբեր ավտոմատ ավտոմեքենաներ ունեմ, եւ այն դեռ պլանավորված է: Իհարկե, դուք կարող եք մոտենալ բրոքերների մի քանի դեպքեր մեկի ներսում ՀաշիվՉնայած նրանք վերջերս են ներկայացրել սահմանափակումներ: Բայց այս դեպքում երեք հսկիչ սարքեր դեռ պետք է «էլփոստի» երեք կապեր ունենան յուրաքանչյուր դեպքի համար, իսկ այդպիսի տնտեսություն, եւ թշնամին չի ցանկանա: «Խոնարհ ոզնի» ամենաէժան վճարված պլանը կազմում է ամսական 5 $ ամսական գրելու պահին: Ոչ, ես մեկ գեղեցիկ հայտնի երկկենցան եմ, որ վճարեն այդպիսի գումար ամեն ամիս, Այո, եւ հնարավորությունները այնքան էլ խելացի չեն `25 կապ: Հետեւաբար ես պետք է փնտրեի այլ տարբերակներ:

կողմնակիցՀարմար եւ հեշտ

ՄինուսներՄիայն 5 միացում անվճար սակագնային պլանի վրա

flespi.io.

Բավականին երկար ժամանակ ես օգտագործեցի mqtt.flespi.io բրոքեր: Նա ինձ գրավեց այն փաստով, որ այն ժամանակ, երբ ես սկսեցի աշխատել նրա հետ, նա ընդունեց նույնքան 100 մրցակցող կապեր միաժամանակ եւ փոխանցված եւ պահպանված հաղորդագրություններ հսկայական քանակությամբ: Հիասքանչ: Այնուամենայնիվ, ծառայությունն այնքան հարմար չէ, որքան CloudMQTT- ն: Կառավարման վահանակը շատ հարմար չէ (չնայած այն բարելավվում է), մուտքի իրավունքների կարգավորումը պարզ չէ առաջին հայացքից, թույլտվություն եւ սարքեր եւ սահմանափակ ժամանակահատվածով սմարթֆոններ: Որոշ գործառույթների գործառույթներ չկան, կամ ես չէի գտել, թե ինչպես օգտագործել: Օրինակ, ինչպես ջնջել պահված (պահպանված) հաղորդագրությունները բազայից. Ես երբեք չեմ գտել: Խստորեն ասած, սա ոչ միայն MQTT բրոքեր է, ուստի միգուցե ես պարզապես չէի հասկանում դրա բոլոր հնարավորությունները: Երբեմն Տարբեր սմարթֆոններ Տեղեկատվությունը մաքրում է որոշ թեմաներով: Մի քանի անգամ `սարքի որոնվածի եւ սերվերի մշտական \u200b\u200bբողոքների սխալների պատճառով ծառայությունը ամբողջությամբ արգելափակել է հաշիվը մի քանի ժամ: Բայց այս ամենը կարող էր ներվել նման հնարավորությունների համար: Բայց ավաղ, եւ այստեղ վաստակելու ցանկությունը 2019 թվականից ստացավ 10 կապի սահմանափակում, անվճար սակագնի վրա: Դրանում որեւէ բան դատապարտելի բան չկա, բայց ես պատրաստ չեմ այդպիսի գումար վճարել հոբբիի համար, եւ նույնիսկ բավականին կասկածելի որակի ծառայությունների համար: Ընդհանրապես, մենք կփնտրենք նույնը, բայց մարգարիտ կոճակներով ...

կողմնակից: Նախքան այն մինչեւ 100 կապը

ՄինուսներԱյն հարմար չէ, որը ծալված է մուտքի տեղադրման մեջ, որը պահվում է վահանակից, մի ջնջեք

Hivemq հանրային բրոքեր:

Լրիվ ազատ հանրային բրոքեր առանց որեւէ սահմանափակումների: Գոնե Հիմնական էջ Բրոքերը գրված չէ դրանց մասին: Բայց կան մեծ «Բայց» - այս միջնորդը չունի թույլտվություն, այսինքն, ոչ: Այսինքն, սարքի միջեւ բոլոր ուղարկվածներն են, եւ դուք ունեք հաղորդագրություն, կարող եք կարդալ որեւէ մեկին: Սա մեծ ողբերգություն չէր լինի, եթե դա միայն ջերմաստիճանի եւ խոնավության ցանկացած ցուցիչ էր, նրանք չեն ներկայացնում գաղտնիքը: Բայց երբ խոսքը վերաբերում է «խելացի տան» հեռավոր կառավարմանը, ապա այդպիսի բրոքեր սկզբունքորեն հարմար չէ: Ի վերջո, ես չէի ցանկանա, որ ինչ-որ մեկը տան ցանկացած սարք հնարավորություն տա կամ անջատեք տագնապը, օրինակ:

կողմնակից

Մինուսներ

ECLIPSE MQTT.

Մեկ այլ հանրային բրոքեր `առանց թույլտվության: Ինչպես գրված է կայքում, այս բրոքերը նախագծված է հիմնականում փորձարկման համար եւ նախատեսված չէ գաղտնի տեղեկատվություն պահելու եւ փոխանցելու համար: Միանալու սերվերին, դուք պետք է օգտագործեք հետեւյալ պարամետրերը, սերվեր iot.eclipse.org, նավահանգիստ 1883; TLS v1.2, v1.1 կամ v1.0 - Port 8883: Միացում եւ ցանցերի միջոցով մատչելի են: Ընդհանրապես, նույնը, ինչ HivemQ- ը, միայն կողային կանխատեսում ...

կողմնակիցԱնվճար, առանց կապի սահմանափակումների

ՄինուսներՀարմար է փորձարկման եւ եղանակային կայանների համար առանց հեռակառավարման

mosquitto.org:

Եւ մեկ այլ հանրային բրոքեր առանց թույլտվության: Դուք չեք կարող կրկնել, բոլորը նույնն են, ինչ Hivemq եւ Eclipse MQTT: Նկատի ունեցեք, որ այս բոլոր սերվերները աջակցում են TLS կոդավորմանը, չի նշանակում, որ ձեր տվյալները պաշտպանված են: Սարքի եւ սերվերի միջեւ փոխանցման ալիքը պաշտպանված է, բայց տվյալներն իրենք գտնվում են բաց հասանելիության մեջ:

կողմնակիցԱնվճար, առանց կապի սահմանափակումների

ՄինուսներՀարմար է փորձարկման եւ եղանակային կայանների համար առանց հեռակառավարման

IBM Cloud (BlueMix)

Սա MQTT բրոքեր չէ, սա մի ամբողջ հարթակ է «Ինտերնետը իրերի պլատֆորմ»: Բայց դրա կազմի մեջ կա MQTT բրոքեր: Ազատ սակագնային պլանի վրա «Lite» - ը թույլատրվում է մինչեւ 500 գրանցված սարք, եւ յուրաքանչյուր մետր ամսվա վերաբերյալ 200 ՄԲ տեղեկատվություն: Այն բավականին էլեգանտ է ոչ միայն տան համար, այլեւ առեւտրային սարքերի համար: Բայց, ինչպես միշտ, ոչ առանց «այլ»: Նախ, այս պլատֆորմը հասկանալը շատ դժվար է: Փաստաթղթեր կան, բայց դա շատ է: Ոչ - շատ! Ես ավելի շատ չեմ ծախսել `ավելի քիչ հասկանալ, թե ինչպես կարգավորել կապը: Երկրորդ, պլատֆորմը թույլ է տալիս խստորեն հրապարակել խիստ ձեւաչափով. «Iot-2 / EVT / Event_ID / FMT / Format_string»: Նմանապես, հրամաններով. «IOT-2 / CMD / COMPRIME_ID / FMT / FIRMENT_STRING»: Եվ բոլորը `ոչ մի ազատություն, այսինքն, միայն հաղորդագրության համարը եւ հաղորդագրությունն ինքնին: Բայց փոխանցվող հաղորդագրությունների ձեւաչափերն արդեն ավելի մեծ են `« JSON »,« XML »,« TXT »եւ« CSV »: Միգուցե ինչ-որ մեկը նման մոտեցումը շատ ճիշտ եւ հարմար կլինի, բայց նա ինձ չէր գրավում: Այո, եւ դժվար է բոլոր մտադրությունների համար `հնարավորություններ, ըստ երեւույթների, շատ բան, բայց այս ամենի հետ պետք է նախեւառաջ ի վիճակի լինեն:

կողմնակիցՇատ մեծ սահմաններ միացումների վրա

ՄինուսներՇատ բարդ է սկսնակների, թեմաների սահմանափակումների համար

mqtt.dioty.co.

Սա բոլորովին անվճար բրոքեր է: Մինչեւ Հետեւյալը գրված է կապի պարամետրերի էջում. «Այս MQTT բրոքերը ներկայումս աշխատում է բետաում: Բետա թեստավորման այս փուլում մենք չենք գանձելու վճարը, եթե ամսական գերազանցեք 50000 հաղորդագրության սահմանը: Այնուամենայնիվ, մենք իրավունք ենք վերապահում ժամանակավորապես կասեցնել ձեր հաշիվը, եթե ազդեն այլ օգտվողների ծառայության վրա: Այս դեպքում մենք միշտ էլ էլ. Փոստով կկապվենք ձեզ հետ `փորձելու հասկանալ ձեր հատուկ կարիքները եւ ինչպես կարող ենք դրանք բավարարել»: Ամսական 50,000 հաղորդագրություն է ժամում մոտ 70 հաղորդագրություն, որն այնքան էլ շատ չէ, եթե հաշվի առնեք, որ մեկ սարքը կարող է հրապարակել ցուցիչներից մինչեւ 50 հաղորդագրություն: Բրոքերն աջակցում է թույլտվության եւ TLS կապի: Գրանցումը կապված է Google հաշվի հետ: Փոքր սահմանափակում կա. Ձեր բոլոր թեմաները պետք է սկսվեն հասցեից ԷլՈրով դուք գրանցվել եք ծառայության մեջ, օրինակ, այսպես. «/ [Email պաշտպանված]/ ... / ... / ... »: Բայց այս խնդիրը քիչ թե շատ նշանակալի է միայն MQTT հաճախորդներին սմարթֆոնի վրա սարքելիս (ավելի շատ տեքստ ձեռք բերել), եւ միշտ չէ: Իմ կարծիքով, այս ծառայությունը հիանալի արժանի է ուշադրության: Ես նրա հետ չեմ ստուգել, \u200b\u200bես պարզապես գրանցվել եմ:

կողմնակից: Ամբողջովին անվճար

ՄինուսներՊարտադիր է թեմաների որոշակի նախածանց, ժամում մոտ 70 հաղորդագրության սահմանափակում

Solace.cloud (Pubsub +)

Սա MQTT բրոքերն այնքան էլ չէ, որքան ամբողջ iot պլատֆորմը: Անվճար սակագնային պլանով մինչեւ 50 միացում թույլատրվում է ամսական մինչեւ 1 ԳԲ փոխանցված տվյալներ, մինչեւ 4 ԳԲ պահված տվյալներ (հաշվարկված հաղորդագրություններ): Վատ չէ: Բայց նույնիսկ Անվճար տարբերակ Շատ պարամետրեր. Դժվար է պարզել «շրջանակի հետ»: Այդ իսկ պատճառով մի ժամանակ ես նրանցից չէի վայելում: Միգուցե կգա ժամանակը, ես կզբաղվեմ եւ կկատարեմ:

կողմնակիցՄինչեւ 50 միացում

Մինուսներ: Գեղեցիկ ծալված է վարպետության մեջ

myQtthub.com:

Ըստ երեւույթին, Էստոնիայի բրոքեր: Ազատ սակագնային պլանի վրա թույլ է տալիս. Մինչեւ 100 օգտվող, բայց մինչեւ 50 միացում; 10MB պահված տվյալներ. Միացման համար մինչեւ 50 բաժանորդագրություն, առավելագույնը 250 բաժանորդագրություններ (եւ պարզ չէ, «Տուն / #» բաժանորդագրությունը մեկ բաժանորդագրություն է, թե շատ :); 300 հաղորդագրություն րոպեում, բայց ոչ ավելի, քան 800 ժամ եւ օրական ավելի քան 10,000: Եթե \u200b\u200bշարունակվում եք կանոնավոր (յուրաքանչյուր հինգ րոպե) հրապարակումներից, միաժամանակ պարզվում է ոչ ավելի, քան 34 հաղորդագրություն: Դեռեւս կան սահմանափակումներ. Ծառայության հիմնական էջում ավելի շատ ավելի շատ նման են: Սահմանափակումները, սակայն, բավականին իրական են թվում Տնային օգտագործման, Չեք փորձել ...

կողմնակիցՄինչեւ 50 միացում

ՄինուսներՀաղորդագրությունների քանակի սահմանափակումներ

mqtt.by.

Հեշտ է օգտագործել բելառուսական միջնորդը: Սահմանափակումների մասին ոչինչ չկա: Աջակցում է թույլտվությանը, բայց հնարավոր է հասարակության հետ որոշ թեմաներ կատարել, այսինքն `բացելու ծառայության բոլոր մյուս օգտագործողների համար: Բայց կապի անվտանգ աջակցություն չկա (TLS), այն կարող է կարեւոր լինել որոշ դիմումների համար: Յուրաքանչյուր հրապարակված թեմա պետք է սկսվի նախածանցով «/ օգտագործող / user_name», որը ինչ-որ չափով բարդացնում է բջջային MQTT հաճախորդների կարգավորումը, բայց ոչ էականորեն: Առավելություններից. Սերվերի վրա կան հանրային թեմաներ ամսաթվով եւ ժամով, ինչը շատ հարմար է կառավարման վահանակի համար, որը հիմնված է դեղահատի վրա, միեւնույն ժամանակ, եւ ժամացույցը դեռեւս աշխատում է (հարյուրը) տասներկու 🙂): Ընդհանրապես, բավականին նորմալ բրոքեր, պարզապես կայուն աշխատելու համար:

կողմնակից: Առանց որեւէ սահմանափակումների, կան հանրային թեմաներ, կարող եք հրապարակել ձեր թեմաները

ՄինուսներՈչ SSL / TLS կապի կոդավորումը

mqtt.4api.ru.

Ռուսական անվճար բրոքեր. «Մենք բոլորի համար տրամադրում ենք անվճար MQTT սերվեր»: Ծառայության թույլտվություն եւ գրանցում սոցիալական ցանցերը, Այն հայտնվեց, ըստ երեւույթին, ոչ շատ վաղուց: Չնայած կայքն ինքնին ունի SSL վկայագիր, տվյալների պարամետրերը նշվում են միայն «առանց SSL» -ի համար, ըստ երեւույթին, SSL կապերը մատչելի չեն: Դեռեւս միացման էջում գրված է հետեւյալը. «Մենք խորհուրդ չենք տալիս օգտագործել Այս սերվերը: Կենսական նախագծերի համար »: Կառավարման վահանակը ունի շատ համեստ ֆունկցիոնալություն, այնպես որ դուք պետք է օգտագործեք երրորդ կողմ

կողմնակից: Առանց որեւէ սահմանափակումների

ՄինուսներNo SSL / TLS կապի գաղտնագրումը, վատ կառավարման վահանակի ֆունկցիան

Այլ ծառայություններ

Մեկ MQTT չի կերակրի: MQTT- ը պարզ եւ հարմար է, բայց թույլ է տալիս դիտել «այստեղ եւ հիմա» տեղեկատվությունը, առանց ժամանակի փոփոխությունների պատմության: Գրաֆիկները դիտելու համար կան այլ ծառայություններ, աշխատանքներ հաստատելու համար, ինչը նույնպես դժվար չէ: Նրանցից ոմանք ներքեւում են:

Բաներ

Բաները մատչելի են որպես Անվճար ծառայություն Ոչ առեւտրային փոքր նախագծերի համար (<3 миллиона сообщений в год или ~ 8 200 сообщений в день). Сервис позволяет накапливать получаемые данные в своих хранилищах, после чего их можно удобно просматривать в виде графиков. В том числе и на сторонних сайтах, .

Ծառայության առանձնահատկություններից. Այն ինտեգրում է Matlab Analytics- ի հետ, բայց որքան չեմ փորձել կարգավորել Մատլաբի գրությունները, այնպես որ ես դուրս չեմ եկել: Դե, ոչ շատ եւ ուզում: Ազատ հաշվին ծառայությունը թույլ է տալիս ստեղծել մինչեւ չորս ալիքներ, հեռուստաալիքներից յուրաքանչյուրը կարող է պահվել մինչեւ 8 դաշտ, տարբեր տվյալներով: Նույնիսկ անվճար հաշվում կա մեկ այլ սահմանափակում. Անհնար է տվյալներ ավելի հաճախ հրապարակել ավելի հաճախ, քան յուրաքանչյուր 15 վայրկյանում մեկ անգամ (առաջարկվում է 20 վայրկյան դադար): Սկզբունքորեն, իմ բոլոր «հրատարակիչները» հեշտությամբ տեղավորվում են այս սահմանի մեջ, ես բավականաչափ ունեմ: Ես օգտագործում եմ ծառայությունը բավականին երկար ժամանակ, դա բավականին հարմար է եւ պարզ, եթե չկատարելով Matlab- ը: Կան մի քանի ծրագրեր `հաճախորդներ Android- ի համար, բայց շատ ավելի քիչ, քան MQTT- ի համար:

կողմնակիցՊարզ օգտագործում ESP, հարմար կայքում

ՄինուսներՇատ սահմանափակումներ անվճար հաշվի վրա

open-monitoring. Առցանց

Այս ծառայությունը նման է բաների խցիկին. Կարող եք նաեւ տվյալներ ուղարկել դրան, այնուհետեւ թերթել սեղանների, գծապատկերների եւ պատմագրության տեսքով: Ինտերֆեյսը ավելի պարզ է, քան բաները, բայց նաեւ հարմարեցնելու համար շատ ավելի հեշտ է:

Սկզբում ստեղծվեց այս ծառայությունը, քանի որ ես դա հասկանում եմ, վերահսկելու անձնական արեւային էլեկտրակայանների պարամետրերը, բայց այն նաեւ հարմար է այլ նպատակների համար: Ծառայությունը հասանելի է բոլորին եւ անվճար, առանց այս պահին նշանակալի սահմանափակումների: Միակ սահմանափակումը, որը ես հասկացել եմ, մեկ վերահսկիչի համար սերվերին մի խումբ արժեքներ ուղարկելն է, այն չի կարող ավելի հաճախ լինել րոպեում մեկ անգամ: Բայց յուրաքանչյուր վերահսկիչի արժեքների քանակի եւ սահմանափակման վերահսկիչների քանակի համար, կարծես, ոչ: Սերվերին տվյալներ ուղարկելը իրականացվում է պարզ ստացման պահանջով, Արդուինինի վրա իրականացումը վերցրել է ոչ ավելի, քան մեկ ժամ: Ի տարբերություն բաների խցիկի, պահպանված տվյալները կարող են դիտվել մեկ աղյուսակի (ծածկով), ինչպես նաեւ հարմարեցնել որոշ վահանակ `վերջին արժեքները արդյունք տալու համար: Կարող եք դիտել նաեւ պահպանված արժեքները պարզ աղյուսակի տեսքով:

կողմնակիցՊարզ օգտագործում ESP, հարմար ինտերֆեյս, գրեթե սահմանափակումներ

Մինուսներ. Երրորդ կողմի կայքերում գրաֆիկները դուրս բերելու հնարավորություն չկա (ի տարբերություն բաների փնթփի), կամ ես դեռ չեմ գտել, թե ինչպես դա անել

բեվոտ

Այս ծառայության հիմնական էջում գրված է հետեւյալը. Անձամբ ես դեռ չեմ օգտագործել այս ծառայությունը: Դատելով այն, ինչ ես հասկացա նկարագրությունից, սա MQTT բրոքերների եւ իրեր կայքէջի վայրի խառնուրդ է: Անվճար ռեժիմում ալիքների եւ ռեսուրսների քանակը սահմանափակ չէ, բայց հաղորդագրությունների քանակը սահմանափակ է. Օրվա 0,05 միլիոն | Ամսական 1,5 միլիոն: Պահպանված հաղորդագրությունների համար սահմանները նույնիսկ ավելի քիչ են, օրական 5 000 | Ամսական 150 000: Բացի այդ, հաղորդագրությունները պահվում են առավելագույնը երեք ամիս, որից հետո դրանք հանվում են: Այսինքն, ամբողջ տարվա ընթացքում եղանակը դուք չեք նայի: Իմ բջջային հաճախորդի մասին սմարթֆոնի համար դեռ հայտնի չէ ինձ: Գրանցվել է: Ես կփորձեմ. Եզրակացություններ դա անելու համար շատ շուտ:

Blynk.

Ակտիվորեն խթանված ծառայություն հեռակառավարման «խելացի սարքեր»: Ես նույնիսկ ագրեսիվ կասեի. Բոլոր ֆորումները գրում են, որտեղ մեզ պետք է եւ որտեղ անհրաժեշտ չէ: Ընդհանրապես, իմ անձի տեսքը, այս պլատֆորմը սիրահարների համար չէ, այլ բիզնեսի: «Ազատ ռեժիմի» վրա տրվում է շատ քիչ ռեսուրսներ, բացառությամբ LED- ին կամ միացնել մեկ ռելե: Ընդհանրապես, ես մեկ անգամ փորձեցի եւ նետեցի, անմիջապես ռեսուրսներ եւ ավարտվեց: Չափազանց ագահ:

կողմնակից: չի գտնվել

Մինուսներ: Գարեգի, բջջային հաճախորդ միայն մեկը

Մինչ այս ամենը է: Եթե \u200b\u200bդուք գիտեք ESP- ի հեռակա կառավարման այլ եղանակներ (պահանջվում է «բջջային») - խնդրում եմ էլ. Փոստով ուղարկել ինձ: Եկեք քննարկենք եւ, հնարավոր է, հոդված ավելացնենք:

Cloud Server- ի Remotexy- ի միջոցով կապը թույլ է տալիս վերահսկել սարքը աշխարհի ցանկացած վայրից, որտեղ կա ինտերնետ:

ESP8266 մոդուլը կազմաձեւվելու է որպես հաճախորդ, WiFi մուտքի կետին միանալու համար: Մուտքի կետը պետք է ունենա մուտք դեպի ինտերնետ: Remotexy գրադարանը սարքը կգրանցի ամպային սերվերի վրա:

Բջջային ծրագիրը միանալու է ամպի սերվերին եւ ոչ ուղղակիորեն սարքին: Այսպիսով, սարքը հասանելի կլինի ինտերնետի ցանկացած վայրից:

Նշում:Մեջ այս պահին Cloud Server- ի միջոցով կապը անցնում է փորձարկման քայլ: Սա սերվերում հնարավոր ընդհատումներ են:

Քայլ 1. Ստեղծեք գրաֆիկական ինտերֆեյսի նախագիծ

Քայլ 5. Կարգավորեք ESP8266- ը

ESP8266 մոդուլը պետք է կազմաձեւի: Գուցե ձեր մոդուլն արդեն ունի անհրաժեշտ լռելյայն պարամետրեր, բայց ավելի լավ է ստուգել այն:

Այն, ինչ ձեզ հարկավոր է ստուգել.

  • Մոդուլն ունի որոնված, V0.40- ից ցածր տարբերակների հրամանների աջակցությամբ.
  • Մոդուլը կազմաձեւված է 115200 արագության համար:

Քայլ 6. ESP8266- ը միացրեք arduino uno- ին

ESP8266- ը միացրեք ARDUINO UNO- ին, ստորեւ նշված սխեմայի համաձայն: Խնդրում ենք նկատի ունենալ, որ RX-TX կոնտակտները կապված են խաչմերուկով:

Քանի որ ESP8266 մոդուլի ազդանշանների մակարդակը 3.3V եւ Arduino- ում դրանք 5V են, անհրաժեշտ է օգտագործել դիմադրողական լարման բաժանմունք `ազդանշանի մակարդակը փոխարկելու համար:


Քայլ 7. Բեռնեք ուրվագիծը Arduino- ում:

Էսքիզը սովորական ձեւով բեռնված է Arduino- ում: Այնուամենայնիվ, այն պատճառով, որ ESP8266 մոդուլը միացված է 0-րդ եւ 1-ի կոնտակտներին, ծրագրավորումը դառնում է անհնար: Կազմիչը սխալ ցույց կտա:

Ծրագրավորումից առաջ միացրեք լարերը, որոնք անցնում են ESP8266- ից `0 եւ 1. Ծրագրավորում: Այնուհետեւ կապերը վերադարձրեք տեղում: Կտտացրեք Arduino Reset կոճակը:

Նշում:Առաջին նշանը այն է, որ ծրագրավորումը հաջողությամբ անցել է, սա է ESP8266 մոդուլում Blual- ի թարթումը `վերականգնելուց անմիջապես հետո: Կապույտ LED- ի թույլատրումը նշանակում է տվյալների փոխանակում Arduino- ի եւ ESP8266- ի միջեւ: Այս 8-ում Arduino- ն կազմաձեւվել է ESP8266 կազմաձեւելու համար `մուտքի կետին միանալու համար: Որոշ ժամանակ անց LED- ը կրկին թարթելու է, ինչը նշանակում է ռեկորդային ամպի սերվերում գրանցվելու փորձ:

Քայլ 8. Միացեք ձեր բջջային հավելվածից:

Ստուգեք Power ESP8266:

Հնարավոր է նաեւ, որ ձեր ESP8266- ը չունի էլեկտրամատակարարման ուժ: Aduino որոշ տախտակներ ունեն թույլ լարման կայունացուցիչ 3.3 V, որը ունակ չէ 200-300 մագ-ն պիկ ռեժիմների տրամադրման մեջ տալ: Այս դեպքում սերիական մոնիտորի մեջ դուք կտեսնեք նաեւ հրամանի հաջորդականության ընդմիջում:

Վադիմ Կոլեսնիկ, Տիրասպոլ

Արդյունինոյում լիարժեք ներկայացված ինտերնետային սարքերի հետաքրքրաշարժ, պարզ եւ արագ զարգացում, օգտագործելով ամպային ծառայություն

Ընդհանուր

myDevices- ը զբաղվում էր ծրագրաշարի եւ ծրագրերի մշակմամբ, իրերի ինտերնետում (iot) եւ Ավանեստի բաժին է: MyDevices Cayenne - առաջին քաշքշուկի կիրառման եւ ամպային ծառայություն `ազնվամորի Pi- ի համար պարզեցված IOT զարգացման ծրագրերի համար:

Վերջերս լույս է տեսել Radiotozman պորտալը, որում ես փորձեցի բացահայտել համակարգի հիմնական առավելություններն ու հնարավորությունները, երբ աշխատում են ազնվամորու PI մեկ տախտակ համակարգչում (RPI): Բայց Cayenne նախագիծը անընդհատ զարգանում է, մշակողները, հիմք ընդունելով օգտվողների ցանկությունները, աստիճանաբար ավելացրեք նոր հնարավորություններ, վերացնում են թերությունները եւ սխալները:

Cayenne- ի հետ աշխատելիս Arduino եւ Raspberry Pi- ում IOT սարքերի զարգացումը սկզբունքորեն տարբերվում է: Ինչ վերաբերում է ազնվամորու Pi- ին, Cayenne պլատֆորմը կարելի է համարել տեսողական զարգացման միջավայր. Մենք ֆիզիկապես տարբեր ծայրամասեր ենք կապում ազնվամորու PI տախտակի վրա, այնուհետեւ մենք աշխատում ենք միայն առցանց Cayenne միջավայրում (տեղադրվում են լուսավորություններ, տվյալների մշակման, գրելու ավտոմատացման ալգորիթմներ):

Ինչ վերաբերում է arduino- ին, Cayenne Dashboard- ը միայն մի շարք գործիքներ եւ հսկողություն է, որոնք պատկերացնում են սենսորներից տվյալները եւ փոխանցում օգտագործողի տվյալները վերահսկելու վերահսկողությունը կամ այլ գործադիր սարքերը վերահսկելու համար: Ուղղակի շահագործում ցուցիչներով, գործադիր սարքերի, լրացուցիչ ծայրամասերի (օրինակ, ցուցադրման, երկրորդ ստեղնաշարի), ավտոմատացման պայմանների վերամշակումը նշանակվում է Microcontroller- ին: Այլ կերպ ասած, ամեն ինչ իջնում \u200b\u200bէ Arduino- ի սարքի ստանդարտ զարգացմանը. Ինքն օգտագործողը գրում է ծրագրի ծածկագիրը, բայց Cayenne- ի ճկուն ֆունկցիաների նախագծի ինտեգրմամբ: Այս կարծիքով, իմ կարծիքով, իմ կարծիքով, Cayenne- ի հիմնական առավելությունն է. Կարող եք համակարգին միացնել ցանկացած սենսոր եւ ակտուատորներ, առանց սահմանափակելու օժանդակ ծայրամասերի ցուցակը:

Օգտագործողի միջերես եւ աշխատանքի պատրաստում

Ինչ վերաբերում է համակարգի ինտերֆեյսին, ապա դրա պարամետրերը, կառավարման մեթոդները եւ վիդջեթները վահանակի վրա, այս ամենը մնում է նմանատիպ համակարգ, իհարկե, վերջինում բնորոշ անհատական \u200b\u200bեզակի տարրերի (օրինակ, ա) Հեռակառավարման աշխատասեղան, հիշողության կարգավիճակը, պրոցեսորի բեռնումը): Հետեւաբար, համակարգի հետ աշխատելու հիմունքները հասկանալու համար խորհուրդ եմ տալիս ծանոթանալ հոդվածներին: Հոդվածում բոլոր տեղեկությունները տեղին են համակարգի վեբ ինտերֆեյսի եւ բջջային հավելվածի միջերեսի համար: Հոդվածում նշվում է աջակցվող ծայրամասերի ցուցակը:

Մշակելու համար Iot սարքեր կամ ծրագրեր, մեզ անհրաժեշտ է.

  • Ունեն իրենց հաշիվը Cayenne ծառայության վրա (կարող եք օգտագործել առկա);
  • Տեղադրեք Arduino IDE- ի զարգացման ինտեգրված միջավայր;
  • Adduo IDE- ում ավելացնել Cayenne գործառույթների գրադարան;
  • Կազմաձեւել Arduino IDE. Ընտրեք վճար եւ COM նավահանգիստ, որին այն կապված է.
  • Միացեք Arduino Ethernet վահան կամ Wi-Fi Shield երկարացման խորհրդի (կամ օգտագործել Arduino խորհրդի հետ միասնական ցանցի ինտերֆեյսի).

Ես կարծում եմ, որ գործընթացը տեղադրելու Arduino IDE զարգացման միջավայր, ինչպես նաեւ ընտրությունը վճարների եւ նավահանգիստների բացատրություններ պետք չեն, եւ մենք պիտի գնանք դեպի հիմնական մեկը.

Arduino- ի Cayenn- ի գրադարանը պարզապես եւ արագ տեղադրված է գրադարանի ղեկավարի միջոցով (Նկար 2):

Հետո տեղադրելու գրադարան, մենք պետք է կարողանանք այն օգտագործել ձեր դիմումները, եւ նոր թղթապանակ անվան հետ Cayenne կհայտնվի ուրվագիծը Օրինակներ բաժնում: Իմ կարծիքով, այս օրինակները թույլ չեն տալիս լիովին հասկանալ, թե ինչպես աշխատել համակարգի հետ, բայց, այնուամենայնիվ, դրանք պետք է ուսումնասիրենք, որ «Cayenne» համակարգում կա փաստաթղթերի հսկայական բաժին: Ընդհանուր դեպքում, այս գրադարանը մի շարք էսքիզները, որոնք թույլ են տալիս Ձեզ պարզեցնել կապի եւ տվյալների փոխանակմանը սենսորների / actuators եւ ամպային ծառայությունում:

Կատարելով նախապատրաստական \u200b\u200bգործողություններ, կազմաձեւելով զարգացման միջավայրը եւ Ethernet Shield Extension Board- ի միացումը, կարող եք սկսել մշակել IOT սարք:

Arduino- ն միացված է USB համակարգչի հետ, Ethernet Shield- ում միացրեք տեղական ցանցի մալուխը: Ինտերնետային զննարկիչում մենք մուտք ենք գործում Cayenne հաշիվ եւ նոր սարք ենք ավելացնում կառավարման վահանակում - Arduino: Հաջորդը, ընտրեք տախտակի տեսակը, ինտերնետին միանալու մեթոդը (բավականին շատ տարբերակ), ուշադրություն դարձրեք մեր սարքի համար եզակի թույլտվության բանալին եւ սպասեք Arduino Board- ին (Նկար 3):

Յուրաքանչյուր նոր սարքի, մի նոր յուրահատուկ բանալին գեներացվել է, որ ապագայում այն \u200b\u200bկարող է հայտնաբերվել սարքի կարգավորումներում (վճարները):

Անցի հետ կապվելու միջոց ընտրելուց հետո կհայտնվի միկրոկոնտրոլերների ծրագրի աղբյուրի կոդով պատուհան: Սա անհրաժեշտ նվազագույնն է `սարքը ամպային ծառայության միացնելու համար: Խնդրում ենք նկատի ունենալ, որ ծրագրի տեքստն արդեն նշել է ձեր թույլտվության բանալին եւ կապել ցանցին միանալու ընտրված մեթոդին համապատասխան գրադարանին (Նկար 4): Պատճենեք այս ծածկագիրը Arduino IDE- ում, վճարման մեջ կազմեք եւ բեռնեք: Եթե \u200b\u200bամեն ինչ պատշաճ կերպով կազմաձեւված լիներ, ապա Cayenne Control Panel- ում հայտնվելու են նոր ակտիվ սարք եւ վահանակ, որտեղ այժմ կարող եք ավելացնել գործիքներ եւ հսկիչ: Ավելին, արդեն այս փուլում կարող եք վերահսկել առկա թվային եւ անալոգային arduino նավահանգիստները, առանց գրելու կոդ կոդ, վահանակի վրա, նշեք նավահանգստի (թվային), իր անունը եւ Պահպանեք widget- ը: Այժմ կտտացնելով զննարկիչում կոճակը, դուք կփոխեք նավահանգստի տրամաբանական վիճակը: Նաեւ պարզապես համապատասխան ֆայլեր ավելացնելով, կարող եք կառավարել PWM ելքերը, ստանալ «հումք» տվյալներ Անալոգային arduino մուտքերից, վերահսկել թվային մուտքերի վիճակը:

Որոշակի օրինակով սարքի մշակում

Այժմ ես ձեզ կասեմ համակարգի լրացուցիչ առանձնահատկությունների եւ գործառույթների մասին: Որպես օրինակ, ես հավաքեցի մի պարզ համակարգ, որն ընդգրկում էր.

  • Arduino UNO խորհուրդը;
  • Ethernet Shield Extension Board- ը Wiznet W5100 վերահսկիչի վրա;
  • DS18B20 ջերմաստիճանի ցուցիչ;
  • Ֆոտոսեսիստոր;
  • Ջերմիստ;
  • Մի քանի LED- ներ;
  • OLED էկրան SSD1306 վերահսկիչում:

Սենսորների եւ ards ards- ի միացման սխեմատիկ դիագրամը ցուցադրվում է Նկար 5-ում:

Թույլ տվեք հիշեցնել ձեզ, որ շատ հարցերի հետ կապված կապի տարբեր տվիչների եւ actuators, դուք կարող եք գտնել պատասխաններ փաստաթղթերի բաժնում:

Կարծում եմ, որ LED- ների միացման մասին, թվային ջերմաստիճանի ցուցիչ եւ հարցերի OLED ցուցադրում չի առաջանա: Անալոգային լուսավորությունը եւ ջերմաստիճանի տվիչները կապված են անալոգային մուտքերի հետ `ըստ դիմադրողական բաժանարար սխեմայի: Միեւնույն ժամանակ, շղթայի թերմիստորային, դա անհրաժեշտ է իմանալ, թե ճշգրիտ դիմադրությունը R6 resistor, այս արժեքը կօգտագործվի կոդով ընթացքում հաշվարկների:

Դիագրամում նշված հոդվածները միացնելուց հետո գրեք ուրվագիծ Arduino- ն, ապա տեղադրեք անհրաժեշտ ֆայլերը Cayenne Dashboard- ում: Այս պահին Արդյունինոյի խորհուրդը արդեն բեռնավորել է նվազագույն ուրվագիծը, եւ տախտակը որոշվում է Cayenne Dashboard- ում: Ինչպես ես ասում էի վերեւում, այս փուլում մենք կարող ենք ավելացնել widgets, LED- ները վերահսկելու համար D1, D2- ը, ինչպես նաեւ «հումք» տվյալները, որոնց միջոցով ջերմաստիճան եւ ֆոտոռեպորտորը կապված են (թվեր 6, 7):

Առանց Arduino կոդի մեկ տող գրելու, մենք արդեն ստացել ենք հեռակառավարման պարզ համակարգ եւ վերահսկողություն (Նկար 8):

Օրինակ, թվային ջերմաստիճանի տվիչները օգտագործելու համար, օրինակ, D2 LED- ին վերահսկելու համար անհրաժեշտ կլինի ավելացնել նվազագույն ուրվագիծը: Սկսելու համար մենք սահմանում ենք անհրաժեշտ գրադարանները:

#Ներառում.< CayenneEthernet.h> // Օգտագործեք Ethernet վահանի երկարացման վճարը
#Ներառում.< CayenneTemperature.h> // տվյալների փոխակերպման գործառույթները ջերմաստիճանի հետ
#Ներառում.< OneWire.h> // Գործառույթներ 1-մետաղալարով ավտոբուսով աշխատելու համար
#Ներառում.< DallasTemperature.h> // գործառույթներ թվային ջերմաստիճանի տվիչների հետ աշխատելու համար
#Ներառում.< Arduino.h> // Ստանդարտ հաստատուններ եւ փոփոխականներ Arduino.
#Ներառում.< U8x8lib.h> // Գրադարան `տեքստի ռեժիմով OLED էկրանով աշխատելու համար
#Ներառում.< Wire.h> // Աջակցություն ապարատային ինտերֆեյսի I 2 C

#Define virtual_pin_1 v0 // Վիրտուալ ալիք DS18B20 ցուցիչի համար
#define virtual_pin_2 v1 // - ջերմաստիճանի համար
#define virtual_pin_3 v2 // - D2 LED- ի համար մենք կստանանք տվյալներ PWM- ի արժեքի վերաբերյալ
#Define LED2_PWM 6 // Իրական Arduino նավահանգիստ, որին կապված է D2 LED- ը

Վիրտուալ ալիքները թվային չեն, եւ ոչ անալոգային մուտքային / ելքային նավահանգիստներ: Անալոգային մուտքերը կարդալիս օգտագործողը տվյալներ է ստանում 10-բիթանոց միկրոկրոլլեր ADC- ից: ADC- ի կողմից վերադարձված արժեքները գտնվում են 0 ... 1023-ի սահմաններում եւ համաչափ են այս ներդրմամբ լարման: Այլ կերպ ասած, եթե ջերմաստիճանի ցուցիչը միացնեք անալոգային arduino ներդրմանը, ապա լարման փոխարկումը կպահանջվի ջերմաստիճանի արժեքը եւ մաթեմատիկական հաշվարկները `ջերմաստիճանը:

Տվյալների վերափոխումը, ձեւաչափումը եւ վերամշակումը պարզեցնելու համար նախագծված են վիրտուալ ալիքներ: Սա բավականին հզոր գործիք է, որն օգտագործվում է Arduino- ի եւ Cayenne- ի միջեւ փոխանակման համար, ինչպես նաեւ տվյալների հեշտ ձեւաչափման համար `վահանակի վրա նրանց հասկանալի պատկերացման նպատակով: Հիշեք, որ վիրտուալ ալիքները չունեն ֆիզիկական պարամետրեր:

Cayenne.virtualwrite (V1, 123) // Ամբողջական արժեքի վիրտուալ ալիքի փոխանցում V1
Cayenne.virtualwrite (v2, 12.34) // Լողացող-ստորակետերի փոխանցում Virtual Channel v2

Օրինակ, կարդալով անալոգային ջերմաստիճանի ցուցիչը, մենք կկարողանանք վերափոխել արժեքը Celsius- ի աստիճանի եւ այս արժեքը փոխանցել վահանակին: Բացի այդ, վիրտուալ ալիքները թույլ են տալիս իրականացնել arduino- ի անալոգային կամ թվային նավահանգիստների հետ կապված ցանկացած ծայրամասային հսկողություն, առանց որեւէ լրացուցիչ կոդ գրել: Այս պահին աջակցվում են տվյալների երկու տեսակ, որոնց միջոցով վիրտուալ ալիքներն են գործում, ամբողջական (ամբողջ թիվ) եւ լողացող կետ (բոց): Ապագայում նախատեսվում է աջակցել խորհրդանշական տեսակներին եւ զանգվածներին: Վիրտուալ ալիքի վրա գտնվող վահանակում կարող եք կապել եւ կարգավորել օգտագործողի վիդջեթի տեսողականացման համար վերցված տվյալների տեսակը:

// Թվային պորտը, որին կմասնակցեն DS18B20 ցուցիչները: Մի օգտագործեք Arduino 0 եւ 1 (RX / TX) նավահանգիստներ:
Const int ds18b20_pin \u003d 2;
// անալոգային նավահանգիստ, որին ջերմիստը միացված է:
Const int thermistorpin \u003d 0;
// Դիմադրություն մշտական \u200b\u200bդիմադրիչին (9 COM), ներառված է սերիալով ջերմաստիճան գետնին:
Cont Float դիմադրություն \u003d 9000;
// CAYENNE- ի թույլտվության բանալին: Այն կարող եք գտնել այն Cayenne վեբ ինտերֆեյսում, սարքի պարամետրերի ներդիրում:
Char token \u003d "640c9odi4";
OneWire Onewire (DS18B20_PIN);
Dallastemperature սենսորներ (& OneWire);
M երմաստիճան ջերմիստ (ջերմային, դիմադրություն);

Իր հայեցողությամբ, գրեթե ցանկացած փուլում, դուք կարող եք ավելացնել կարգաբերվող տեղեկատվության ընտրությունը աղբյուրի կոդին հաջորդական նավահանգիստ:

Նախաձեռնության բաժնում մենք նշելու ենք հետեւյալ գործառույթները.

անվավեր կարգավորում ()
{
Cayenne.begin (նշան); // Միացեք CAYENNE- ին նշված թույլտվության բանալին
Սենսորներ.բեգին (); // թվային ջերմաստիճանի տվիչների նախաստորագրում
u8x8.begin (); // նախաստորագրման եւ տեքստի տեղեկատվության ցուցադրում OLED էկրանին

u8x8.setpowersave (0);
u8x8.setfont (u8x8_font_torussansbold8_r);
u8x8.drawstring (2.0, "Cayenne Test");
u8x8.drawstring (1,2, "համակարգի վազք");
}

Ծրագրի հիմնական ցիկլում մենք կունենանք միայն մեկ գործառույթ.

Անվավեր օղակ ()
{
Cayenne.run ();
}

Cayenne Dashboard- ի հետ տվյալների փոխանակումը կատարվում է մի քանի գործառույթների միջոցով.

Cayenne_in (Virtual_pin) - Նշում է այն գործառույթը, որը կոչվում է թարմացված տվյալների սարքի ստացման միջոցով, «Cayenne սերվերի» վիրտուալ ալիքի միջոցով:

Cayenne_out (Virtual_pin) - որոշում է այն գործառույթը, որը կոչվում է այն ժամանակ, երբ ցանկանում եք սարքից նորացված տվյալները ուղարկել Cayenne սերվերին:

Cayenne_Connected () - Գործառույթը կատարվում է ամեն անգամ, երբ սարքը միացված է Cayenne սերվերին: Ընդհանուր առմամբ, այս հատկությունն օգտագործվում է համաժամացման համար:

Cayenne.Syncall () - Գործառույթ, որն առաջացնում է Cayenne Server- ին խնդրանք `բոլոր գործիքները համաժամեցնելու համար: Կվերականգնվի անալոգային եւ թվային Arduino նավահանգիստների կարգավիճակը, եւ յուրաքանչյուր վիրտուալ ալիք կստեղծի Cayenne_in իրադարձություն:

Cayenne.Syncvirtual (Virtual_pin) - Նշված վիրտուալ ալիքի համաժամացումը: Կատարման արդյունքում կոչվում է համապատասխան CAYENNE_IN Handler- ը:

Իմ դիագրամում D2 LED- ը միացված է D6 Arduino թվային պորտին: Այս նավահանգիստն ունի այլընտրանքային գործառույթ `PWM ելք: PWM ռեժիմում այս LED- ների հեռակառավարումը իրականացնելու համար հարկավոր է տվյալներ ստանալ վահանակից: Դա անելու համար գրեք մի գործառույթ, որը կկատարվի տվյալները V2- ի միջոցով V2- ի միջոցով տվյալները թարմացնելու ժամանակ.

Cayenne_in (v2)
{
// ստացեք տվյալները PWM- ի արժեքի վրա `վահանակից (սլայդ)
int pwmvalue \u003d getvalue.asint (); // արժեքը 0 - 1023 միջակայքում
Անալոգրատ (LED2_PWM, PWMValue / 4); // PWM- ի համար արժեքը պետք է լինի 0 - 255 միջակայքում
}

Այժմ մենք կավելացնենք վահանակի «Սլայդեր» վիդջեթը `LED_2 PWM (PWM) անունով եւ դրա պարամետրերով, մենք նշում ենք, որ այն աշխատում է վիրտուալ ալիքի միջոցով (Նկար 9):

Խորհրդի տախտակում ներբեռնելուց հետո դուք կարող եք օգտագործել սլայդերը Cayenne Dashboard- ի վերահսկում D2 LED- ի լուսավորությունը: Ամեն ինչ շատ արագ եւ հեշտ է ...

Cayenne_out (v0)
{
Սենսորներ .Requesttemperatures (); // Ստացեք տվյալներ թվային ջերմաստիճանի տվիչներից:
// Փոխարկել տվյալները ջերմաստիճանից, ձեւավորել դրանք եւ ուղարկել սերվերին V1 վիրտուալ ալիքով
Cayenne.celsiuswrite (v1, ջերմիստորհրդարան) ());
// ձեւաչափի տվյալները թվային ջերմաստիճանի ցուցիչից եւ ուղարկեք դրանք սերվերի վիրտուալ ալիքով v0
Cayenne.celsiuswrite (v0, sensors.gettempcbyindex (0));
}

Վիրտուալ ալիքներ օգտագործելու միջոցով բացարձակապես տարբեր տվյալներ փոխանցելու ամբողջական գործառույթը բաղկացած է երկու տողից: Վարանում տախտակի վրա, DS18B20 ջերմաստիճանի ցուցիչի եւ ջերմաստիճանի համար ավելացրեք հարմարանքներ (դրանք պատրաստ են կառավարման վահանակում): Անհատականացրեք հարմարանքները, բեռնեք էսքիզը վճարով եւ ... պատրաստ (թվեր 10a, 10b):


Գծապատկեր 10. Arduino- ի վերահսկման համար Cayenne Dashboard- ի դիտումը (ջերմաստիճանի տվիչները,
Թեթեւ, LED հսկողություն D1, PWM LED Control D2):

Մի մոռացեք, որ նույն հսկողության եւ կառավարման գործառույթները մատչելի են Բջջային դիմում, Վեբ ինտերֆեյսում տեղադրված բոլոր գործիքները կտեսնեն բջջային հավելվածում (Նկար 10b):

Արտաքին տեսք Միացված ծայրամասային սարքերով սարքերը ներկայացված են Նկար 11-ում:

Անլար iOT սարքեր զարգացնելու ունակություն

Դուք կարող եք նկատել, որ որոշ սքրինշոթի վրա իմ կառավարման վահանակը տեսանելի է, որտեղ բացի Arduino Uno- ի եւ Raspberry Pi- ի, կա ESP8266-1: Լավ Լրացուցիչ սարք Հայտնի ESP-12 մոդուլում (ESP8266), որը կապված է Cayenne սերվերին Wi-Fi- ի միջոցով եւ ունի իր առանձին վահանակը (թվեր 12 ա, 12 բ): Նման սարքը անլար կառավարման եւ հսկման հանգույց է: Երկու LED- ները միացված են մոդուլի հետ (մեկը միացված է ESP8266 PWM ելքի) եւ DS18B20 թվային ջերմաստիճանի ցուցիչին:


Գծապատկեր 12: Անլար սարքի վահանակ ESP-12 մոդուլում.
ա) վեբ ինտերֆեյս, բ) բջջային ծրագիր:

ESP8266 միջուկի աջակցության շնորհիվ, Arduino IDE միջավայրի, Cayenne- ի անլար iOT սարքերի իրականացումը չի տարբերվում Arduino- ի զարգացումից: Այլ կերպ ասած, ESP8266 Chip- ի ցանկացած մոդուլը Arduino տախտակն է `Wi-Fi ինտերֆեյսով: Այս Wi-Fi մոդուլի համար մենք գրում ենք նմանանշային ուրվագիծ, մենք օգտագործում ենք նույն գրադարանները `սենսորների հետ աշխատելու համար, մեզ համար մատչելի են թվային եւ անալոգային մուտքային / ելքային նավահանգիստները: Այս մոդուլը կուտակել է հսկայական քանակությամբ տեղեկատվություն, տարբեր փաստաթղթեր եւ զարգացումներ:

Periphery կապի դիագրամը ESP8266 մոդուլում ներկայացված է Նկար 13. Ես օգտագործեցի առանձին ESP-12 մոդուլ, առանց անցումային տախտակի ինտեգրված էլեկտրական միացում եւ ծրագրավորման ինտերֆեյս: Օպտիմալ տարբերակը կլինի պատրաստի Nodemcu V3 տիպի մոդուլի օգտագործումը, որն արված է Arduino ձեւի գործոնում եւ ունի ինտերֆեյսի համապատասխան սխեմա: (Բարձր) Կարեւոր պահ Մոդուլը ծրագրավորելիս): Միացված LED- ներով եւ ջերմաստիճանի ցուցիչով մոդուլի տեսքը ցույց է տրված Նկար 14-ում:

Ինչ վերաբերում է Cayenne սերվերի եւ տվյալների փոխանակմանը միանալու համար, ամեն ինչ այստեղ է Arduino- ի համար: Վիրտուալ ալիքների վերաբերյալ բոլոր հասկացությունները պահպանվում են, օգտագործվում են նույն գործառույթները, օգտագործվում է նաեւ եզակի թույլտվության բանալին: Տարբերությունը միայն մոդուլի միացման փուլում ինտերնետին:

Սարքը ESP8266 մոդուլում միացնելու համար մենք գործում ենք նմանատիպ Aduino տախտակի հավելում եւ արձագանքում է սարքը Cayenne- ին միացնելու սպասմանը, որտեղ կստեղծվի նվազագույն ուրվագիծը:

Մենք պետք է փոխենք այս ուրվագիծը: Մենք միացնում ենք հետեւյալ գրադարանները.

#Include «Cayennedefines.h» // Cantivers եւ Variables Cayenne
#include «bllynksimpleesp8266.h/» - ը ESP8266- ի հետ աշխատելու գործառույթների համար
# cellude «cayennewifylient.h» // գործառույթներ Wi-Fi հաճախորդի իրականացման համար

char token \u003d "3yj62u9ogi";
Char ssid \u003d "Network_ssid"; // SSID եւ գաղտնաբառ ձեր Wi-Fi ցանցի համար:
Char գաղտնաբառ \u003d "Network_password";

Նախաձեռնության բաժնում ավելացրեք տող.

Cayenne.begin (նշան, SSID, գաղտնաբառ);

Կազմեք `բեռնելու միջոցով մոդուլի (տեւում է ավելի երկար, քան Arduino տախտակին ներբեռնումը), մենք ակնկալում ենք կապել եւ ակտիվացնել նոր սարքը Cayenne Dashboard- ում: Հաջորդը, ինչպես Արդյունինո. Ավելացնել գործառույթներ `սենսորների եւ I / O- ի հետ աշխատելու համար, ավելացնել վանդակապատերը վահանակին: Պարզապես հաճելի չէ:

Եզրակացություն

Raspberry Pi- ի եւ Arduino- ի Cayenne- ի հետ աշխատելու արդյունքների համաձայն, ես անպայման կարող եմ ասել, որ ազնվամորու Pi- ն չպետք է օգտագործվի իրերի ինտերնետային սարքերը զարգացնելու համար, նույնիսկ Cayenne- ի հետ: Ինչը չի պատմում Arduino- ի մասին, չնայած սահմանափակ ռեսուրսներին, բազմամշակութային, ցածր հաշվարկային ուժի պակասին (չնայած, սա վիճելի պահ է, հաշվի առնելով ARM պրոցեսորների նոր arduino տախտակների բնութագրերը), այն իդեալական է պարզ iot- ի համար Սարքեր եւ տան ավտոմատացման համակարգեր:

Բացի այդ, այս համատեքստում, Արդուինոյի հիմնական առավելությունը, ինչպես ես նկատեցի վերը, սարքը ինքնուրույն զարգացնելու ունակությունն է `սխալի, գրելու կոդ, չնայած մասնագիտական \u200b\u200bծրագրավորողների փաստարկներին, որը չի կարելի սովորել Արդուինոյից: Միգուցե, բայց ... Արդուինոյի հետ կապված, Cayenne պլատֆորմը տրամադրում է միայն գրաֆիկական օգտագործողի ինտերֆեյս Եւ տվյալների որոշ պարզեցված մշակում: Մնացածը դուք պետք է զարգանաք ինքներդ ձեզ, ներառյալ ցուցիչների հիմնական տվյալների մշակումը, իրադարձությունների վերամշակման ենթահամակարգը, ինչպես նաեւ ավտոմատացման ալգորիթմներ: Այժմ Aduino Wi-Fi մոդուլում անլար iOT սարքերի մշակման հեշտությունը եւ արդեն պաշտոնական աջակցությունը (չնայած լրացված չէ) Վերջին ESP32 չիպը, որն ունի հսկայական նորություններ եւ Այս գործընթացը ներգրավելը ոչ միայն սիրահարներ է, այլեւ մասնագետներ:

Պատրաստման պահին Սայանը չի հաղորդվել ESP8266 չիպի մոդուլների պաշտոնական աջակցության վերաբերյալ: Սկզբնապես, սա համայնքի արժանիքն է `սիրողական եւ ինժեներներ, ովքեր աշխատում են կամ օգտագործում են arduino IDE- ն եւ գիտեն ESP8266- ի աջակցության մասին, օգտագործելով Cayenne գրադարանները: Բայց նույնիսկ այդ ժամանակ Քայենի համայնքի ֆորումները կարող էին արդեն ծանոթ լինել մեծ քանակություն Անլար iot սարքերի տարբեր նախագծեր:

Հետո երկար փորձարկման իր սարքերի վրա Arduino եւ ESP8266, ես կարող եմ ասել, որ վերջինս աշխատում է շատ կայուն է: Մի քանի ցածր հուսալիություն Arderoino, Ethernet Shield- ով Հայտնի խնդիր W5100 վերահսկիչ կախեք, այնուամենայնիվ, դրա լուծման մի քանի եղանակներ կան, ինչպես ապարատ, այնպես էլ ծրագրաշար: Կարող եմ ենթադրել, որ սա չի վերաբերում Արդյունինո տախտակներին ինտեգրված Ethernet կամ Wi-Fi:

Raspberry Pi- ի եւ Cayenne- ի հոդվածի նախապատրաստման պահից շատ ժամանակ չկար, բայց նոր հնարավորություններ եւ աջակցվող ծայրամասերը շատ ավելի մեծացան: Բացի տարբեր երկարացման տախտակների, սենսորների եւ գործադիր սարքերի, համապատասխան գրադարանների, համապատասխան գրադարանների, նախագծերի եւ արդյունքների օրինակներից, այժմ CAYENNE- ի օգտագործողները մատչելի են սարքեր, ցանցեր եւ ծառայություններ Լորա, աջակցեք գրադարաններին network անցի արձանագրություն MQTT ARDUINO, C, C ++, MDED, գրադարաններ, MQTT բրոքերային մոծակների հետ աշխատելու համար: Հաստատ, զարգացնել ինտերնետ սարքեր եւ տնային ավտոմատացման համակարգեր Arduino, ես խորհուրդ կտայի կայնեյան ծառայություններ.

Նախկինում ես ներկա էի հեծանիվ, հրդեական սարք ստեղծելու համար `մոնիտորինգի համար:

Հետաքրքիր էր:

/ * - ՆՈՐ Ծրագրի - Այս Source Code գրաֆիկական ինտերֆեյսի գեներացվել Ավտոմատ կողմից Remotexy խմբագիր. Այս ծածկագիրը կազմելու համար Remotexy Library 2.3.5 կամ ավելի ուշ տարբերակի ներբեռնման միջոցով Ներբեռնեք հղումով http://remotexy.com/am/Library/ Հիշեք Remotexy բջջային հավելվածի միջոցով Հղումի http://remotexy.com/endownload/ - համար Android 4.3.1 կամ ավելի ուշ տարբերակ; - iOS 1.3.5 կամ ավելի ուշ տարբերակի համար; Այս աղբյուրի ծածկագիրը անվճար ծրագիր է. Դուք կարող եք վերաբաշխել եւ / կամ ձեւափոխել այն, համաձայն պայմաններով GNU համընդհանուր հանրային արտոնագրի ինչպես հրապարակվել է ազատ ծրագրային ապահովության հիմնադրամում, Կամ լիցենզիայի 2.1 տարբերակ, կամ (ձեր տարբերակով) ցանկացած հետագա տարբերակ: * ///////////////////////////////////// // // Remotexy Ներառել գրադարան // /// ////////////////////////////////////////// // // Սահմանում կապի Remotexy- ի ռեժիմը եւ միացումը #Define remotexy_mode__sp8266_mode__SP8266_Mode__SP8266_HASDERVILE_Cloud #include // Միացման կարգավորումներ #define Remotexy_Serial Serial #define Remotexy_Serial_Speed \u200b\u200b9600 #define Remotexy_Wifi_ssid «***********" #define Remotexy_Wifi_Password »*********« #define Remotexy_Cloud_Server «ամպ. remotexy .com «#define remotexy_cloud_port 6376 #define Remotexy_Cloud_Token« ************************** »#include // Ավելացնել DHT11 DHT11 DHT գրադարան; // Փոփոխական դասի հայտարարություն DHT11 #Define DHT11_PIN 7 // Sensor DHT11- ը միացված է թվային սոճին թիվ 4-ի 4-ին, A3; // Միացրեք անալոգային ազդանշանային PIN Const Int Int Digitalsignal \u003d 8; // թվային ազդանշանային ազդանշան միացնելը Pina Boolean Nogas; // փոփոխական `գազի ներածության առկայության արժեքը պահելու համար \u003d 0; // փոփոխական է գազի լողացող հումքի քանակը պահելու համար \u003d 0; // Փոփոխական խոնավության համար Float Temp- ը պահելու համար \u003d 0; // փոփոխական է ջերմաստիճանը CHK- ի պահելու համար; // փոփոխական է DHT Char Msgbuff- ի սխալը պահելու համար; // Կազմաձեւման միջերես #Pragma փաթեթ (Հրել, 1) uint8_t remotexy_conf \u003d (255,13,4,22,11,7,7, 81,22,11, 2,26,31,31,79,78,79.70,70, 0.66,132,10,13,31,24,7,10,27, 21,2,24, 66,132,56, 13,31,24,4, 41,31,24,2,24,67,4,26,5,20, 5.38,23,20,52,26,11,67, 4, 63,6,20, 5,39,52,20,26, 11); // կառուցվածքը Սահմանում բոլոր փոփոխականները ձեր կառուցվածքին վերահսկողության ինտերֆեյսի (// մուտքագրման փոփոխական uint8_t switch_1; // \u003d 1 Եթե փոխարկիչը միացված է եւ \u003d 0, եթե հաշմանդամ // Արդյունք փոփոխական int8_t level_1; // \u003d 0..100) Int8_T Level_2 մակարդակը պաշտոնը; / / \u003d 0..100 մակարդակը պաշտոնը CHAR text_1; // \u003d Տող UTF8 վերջացրած զրոյական char text_2; // \u003d Տող UTF8 վերջացրած զրոյական // Այլ Փոփոխական UINT8_T Connect_Flag; // \u003d 1, եթե լարի միացված, այլապես \u003d 0) վերամշակում; #Pragma Pack (POP) /////////////////////////////////////// // END REMOTEXY ԸՆԴԳՐԿԵԼ // ///////////////////////////////////// // // /// #define pin_switch_1 13 առոչինչ setup () (remotexy_init (); pinmode (pin_switch_1, արտադրության); // TODO դուք կարգավորեք կոդը) առոչինչ հանգույց () (remotexy_handler (); DigitalWrite (pin_switch_1, (remotexy.switch_1 \u003d\u003d 0) | Low: Բարձր); nogas \u003d DigitalRead (DigitalSignal); // Կարդալ ներկայությունը GAS \u003d Analogread (AnalogSignal); // եւ դրա շարք chk \u003d DHT.READ (DHT11_PIN), Խոնավ \u003d DHT.Humidity, Temp \u003d DHT.temperature. remotexy.level_1 \u003d բզզոց; remotexy.level_2 \u003d Ջերմ, dtostrf (Խոնավ, 6, 2, Remotexy.text_1), dtostrf (Ջերմ, 6, 2, remotexy.text_2); // Todo Դուք Loop օրենսգրքի / / Օգտագործեք Remotexy կառույցը տվյալների փոխանցման )

Մենք տախտակներից սենդվիչ ենք օգտագործում:

Հանկարծ ամեն ինչ անմիջապես վաստակեց.

Ամպային ծառայությունը հայտնաբերելու պահից վերեւում վերոհիշյալ լուսանկարը անցավ մեկ ժամ:

Հեռավորության հետ աշխատելու առանձնահատկությունները:

1. Ամեն ինչ շատ պարզ է: Իր ձեւով դա լավ է: Blynk- ի եւ Cayenne- ի հետ, օրինակ, հազիվ թե զրոյից մեկ ժամվա ընթացքում պարզվում է, որ հասկանում է: Օգտագործել, օրինակ, «kascada cloud» - ը պետք է հատուկ գնել:

2. Սերվերի կողմում տվյալների վերամշակում եւ պահպանում չկա. Խորհրդի հետ կապ չկա. Դիմումը կախված է «Ոչ մի կապ»:

3. Ազատ ընդամենը 5 դիզայնի տարրեր, բայց PRO դիմումը ավելի թանկ չէ ժամանակի կեսից ավելին:

4. Հնարավորություն կա մեկ դիմումից `տախտակի հետ շփվել ինչպես ամպային սերվերի միջոցով, այնպես էլ ուղղակի: True իշտ է, միեւնույն ժամանակ: Իհարկե: Եվ անմիջապես անջատեք անհնարին, դուք պետք է փոխեք ուրվագիծը տախտակում: Գոյություն ունի նաեւ սմարթֆոն, Bluetooth- ի եւ USB տախտակի հետ շփվելու հնարավորություն: