Razvoj IoT uređaja na Arduinu pomoću usluge myDevices Cayenne. Blynk: jednostavna kontrola Raspberry i Arduino Cloud usluga za kontrolu arduina

Posebno - pridružite se Blinkerima!
Danas ćemo postaviti kontrolu nad ESP8266 sa vašeg pametnog telefona (iOS ili Android) za 5 minuta pomoću nove Blink cloud usluge. Video i detalji ispod reza.


Instalirajte aplikaciju Blynk na svoj pametni telefon

Registrirajte se u aplikaciji i kreirajte novi projekt.

Unesite naziv projekta, na primjer ESP8266... Na terenu Model hardvera izabrati ESP8266... (nadam se da ćete primijetiti impresivnu listu podržanog hardvera) Automatski generirano Auth Token poslati u svoje poštansko sanduče.

Nakon pritiska na dugme Stvoriti prikazat će vam se prazno polje za dizajniranje korisničkog sučelja vašeg upravljačkog panela ESP8266.

Kliknite na znak plus u gornjem desnom kutu - pojavit će se alatna traka Widget Box za dodavanje widgeta na vašu nadzornu ploču. Treba napomenuti da će se lista widgeta nastaviti povećavati.

Za probu odaberite vrstu widgeta Dugme- ovaj widget će odmah biti dodan na vašu ploču. Uredite ga jednim dodirom. Ime se može ostaviti prazno, malo desno možete odabrati boju indikatora, u polju OUTPUT PIN odaberite desno Digitalno, a s lijeve strane je bilo koji slobodni pin GPIO... Ispod prebacite tipku na Switch.

Zatim instalirajte Blynk biblioteku u Arduino IDE. Službene upute pomoći će vam u tome. Takođe možete najviše uzeti biblioteku najnoviju verziju direktno iz spremišta i instalirajte ručno. Zatim odaberite primjer ESP8266_Standalone i upišite u nju Auth Token koje smo dobili poštom, SSID i lozinka tvoje WiFi mreže... Sastavite i otpremite skicu na ESP8266.

Divna stvar je ESP8266. Prilično moćan procesor, puno memorije, ugrađen WiFi kontroler. ESP32 je, naravno, još bolji, ali košta i mnogo više. Ali sada ne govorimo o njima. Tačnije, ne baš o njima. Vrlo je lako izgraditi gotovo svaku kućnu automatizaciju na ESP -u, i sa daljinski upravljač i upravljanje sa pametnog telefona ili računara. Primjer takvog uređaja nalazi se na ovoj web stranici. Jedan problem - raditi s takvim uređajem, ne samo iz kućnu mrežu, a bilo gdje u svijetu (gdje naravno postoji pristup internetu) trebat će vam određeni server - posrednik koji će primati poruke s uređaja i prenositi vam ih, i obrnuto. Naravno, postoje opcije i izravna komunikacija, ali ih ovdje neću razmatrati zbog složenosti implementacije ili visokih troškova.

Lista navedena u ovom članku ne tvrdi da je potpuna, a još manje jedinstvena, samo sam pokušao analizirati i strukturirati mogućnosti određenih besplatnih usluga. Prije svega za sebe, ali ako se pokaže da je nekome korisno, upotrijebite ga za svoje zdravlje. Kada sam tražio javni MQTT server za sebe, pretraživao sam mnoge internetske resurse. Tražio sam prije svega na esp8266.ru, ali nažalost, polovica tamošnjih servisa ili više ne radi, ili mi lično ne odgovaraju iz ovih ili onih razloga. Sve što je ovdje napisano je prije svega moje lično iskustvo, Vaše iskustvo s ovim uslugama može biti vrlo različito. Ako znate još neke slične usluge - pišite u komentarima ili poštom (pošta i drugi kontakti nalaze se u gornjem desnom kutu zaglavlja web stranice), a ja ću pokušati provjeriti i nadopuniti popis.

MQTT brokeri

MQTT protokol je možda prva stvar na koju naiđete u tražilicama kada tražite način daljinski upravljač razne "pametne stvari". Ne mogu jamčiti da je ovo najjednostavniji protokol (jednostavno nemam s čim porediti, nekako sam se odmah zaustavio na tome), ali osobno mi nije pravio poteškoće. Mnogo je primjera. Postoji više od jedne gotove biblioteke za Arduino IDE, kako kažu, "odaberite ukus". Postoji dovoljno mobilnih aplikacija za odabir i za pametni telefon i za upravljačku ploču napravljenu od drevnog tableta. Dakle, ovo je vjerojatno najpopularnija opcija za implementaciju daljinskog upravljanja. Postoji i mnogo cloud servera, koji se zovu MQTT brokeri. Ovdje neću razmatrati princip rada protokola i servera, ove su informacije sasvim dovoljne na drugim web stranicama.

CloudMQTT.com

Počeo sam s ovom uslugom. Jednostavno zato što se gotovo svi primjeri rada s MQTT protokolom temelje na njemu. Usluga je prilično zgodna i jednostavna, sve je intuitivno. 2018. usluga je dozvoljena besplatno tarifni plan povezivanje do 10 uređaja, što je za mene bilo u redu. Međutim, do kraja 2018. vlasnici usluge revidirali su svoju politiku i sada je na besplatnom tarifnom planu "Cute Cat" dostupno samo 5 veza. Za mene lično, ovo je vrlo malo. Mogu imati tri povezana "kontrolna" uređaja istovremeno - dva pametna telefona i tablet, a za sam ESP preostale su samo dvije veze. I već imam mnogo različite „automatizacije“, a planira se još više. Naravno, unutar jednog možete stvoriti nekoliko instanci posrednika račun, iako su nedavno podvrgnute ograničenjima. Ali u ovom slučaju tri kontrolna uređaja će i dalje "proždirati" tri veze za svaku instancu, a nećete htjeti da neprijatelj uspostavi takvu ekonomiju. Najjeftiniji plaćeni tarifni plan „Skromni jež“ košta 5 USD mjesečno u vrijeme pisanja ovog teksta. Ne, jedan prilično poznati vodozemac me zadavio da platim toliki novac svaki mjesec... A mogućnosti nisu tako velike - 25 veza. Stoga sam morao potražiti druge mogućnosti.

pros: zgodan i jednostavan

Minusi: samo 5 priključaka na besplatnom tarifnom planu

flespi.io

Koristim brokera mqtt.flespi.io već neko vrijeme. Privukao me činjenicom da je u vrijeme kad sam počeo raditi s njim, dopuštao čak 100 konkurentnih veza istovremeno i ogromne količine prenesenih i pohranjenih poruka. Predivno! Međutim, usluga nije prilagođena korisnicima kao CloudMQTT. Upravljačka ploča nije baš zgodna (iako se poboljšava), postavljanje prava pristupa na prvi pogled nije jasno, autorizacija i uređaja i pametnih telefona pomoću tokena s ograničenim rokom valjanosti. Neke od funkcija koje su mi potrebne nedostaju ili nisam našao kako ih koristiti. Na primjer, nisam pronašao kako ukloniti zadržane poruke iz baze podataka. Strogo govoreći, ovo nije samo MQTT posrednik, pa možda jednostavno nisam razumio sve njegove mogućnosti. Ponekad na različitih pametnih telefona informacije u nekim temama prestaju se ažurirati. Nekoliko puta, zbog grešaka u firmveru i stalnih zahtjeva uređaja prema poslužitelju, usluga je potpuno blokirala račun na nekoliko sati. Ali sve bi se takve mogućnosti mogle oprostiti. Ali nažalost, i ovdje je prevladala želja za zarađivanjem novca - od 2019. do besplatna tarifa uvedeno je ograničenje od 10 veza. U ovome nema ništa za zamjeriti, ali još nisam spreman platiti takvu vrstu novca za hobi, pa čak ni za usluge prilično sumnjivog kvaliteta. Općenito, tražit ćemo istu, ali sa sedefnim gumbima ...

pros: nekada je bilo do 100 veza

Minusi: nije prikladno, teško konfigurirati pristup, zadržano se ne može ukloniti s ploče

HiveMQ javni posrednik

Potpuno besplatni javni posrednik bez ograničenja. Bar za početnu stranicu posrednik o njima nije napisan. Ali postoje velika "ALI" - ovaj posrednik nema nikakvo ovlaštenje, odnosno nema ga uopće. Odnosno, sve poruke poslane između uređaja i vas može čitati bilo ko. Ovo ne bi bila velika tragedija, ako je samo neki pokazatelj temperature i vlažnosti, ne predstavljaju tajnu. Ali što se tiče daljinskog upravljanja “ pametna kuća”, Onda takav posrednik više nije prikladan. Uostalom, ne biste željeli da bilo tko može uključiti bilo koji uređaj u kući ili isključiti alarm, na primjer.

pros

Minusi

Eclipse MQTT

Još jedan javni posrednik bez ovlaštenja. Kako je napisano na web mjestu, ovaj je posrednik prvenstveno namijenjen testiranju i nije namijenjen za pohranu ili prijenos povjerljiva informacija... Da biste se povezali sa serverom, morate koristiti sljedeće parametre: iot.eclipse.org server, port 1883; za TLS v1.2, v1.1 ili v1.0 - port 8883. Dostupna je i veza putem WebSockets. Općenito, isto što i HiveMQ, samo u bočnoj projekciji ...

pros: besplatno, bez ograničenja veze

Minusi: samo za testiranje i meteorološke stanice bez daljinskog upravljača

mosquitto.org

I još jedan javni posrednik bez ovlaštenja. Ne morate ponavljati, sve je isto kao za HiveMQ i Eclipse MQTT. Imajte na umu - činjenica da svi ovi poslužitelji podržavaju TLS šifriranje ne znači da su vaši podaci zaštićeni. Prijenosni kanal između uređaja i poslužitelja je zaštićen, ali su sami podaci u javnoj domeni.

pros: besplatno, bez ograničenja veze

Minusi: samo za testiranje i meteorološke stanice bez daljinskog upravljača

IBM Cloud (Bluemix)

Ovo nije mqtt posrednik, to je cijela platforma "Internet of Things Platform". Ali također uključuje i brokera mqtt. Na besplatnom tarifnom planu "Lite" dozvoljeno je do 500 registriranih uređaja i 200 MB informacija za svaku metriku. Prilično šik ne samo za dom, već i za komercijalne uređaje. Ali, kao i uvijek, ne bez "ALI". Prvo, ovu platformu je vrlo teško razumjeti. Dokumentacija postoji, ali ima je puno. Ne - MNOGO! Potrošio sam više od jednog sata da bih manje -više razumio kako uspostaviti vezu. Drugo, platforma omogućava objavljivanje tema u strogo definisanom formatu: „iot-2 / evt / event_id / fmt / format_string“. Slično i sa naredbama: „iot-2 / cmd / command_id / fmt / format_string“. I to je sve - nema slobode - odnosno samo broj poruke i sama poruka. No, već postoji više formata za prenesene poruke - “json”, “xml”, “txt” i “csv”. Možda će se nekome ovaj pristup činiti vrlo ispravnim i zgodnim, ali me nije privukao. Da, i sve je komplicirano - očigledno je da postoji mnogo mogućnosti, ali svi će se prvo morati pozabaviti ovim.

pros: vrlo visoka ograničenja veze

Minusi: vrlo teško za početnika, ograničenja teme

mqtt.dioty.co

Ovo je potpuno besplatan posrednik. Bye. Stranica sa postavkama veze kaže: „Ovaj MQTT posrednik je trenutno u beta verziji. U ovoj fazi beta testiranja nećemo vam naplatiti ako pređete ograničenje od 50.000 poruka mjesečno. Međutim, zadržavamo pravo privremene obustave vašeg računa u slučaju da ometate uslugu drugim korisnicima. U ovom slučaju uvijek ćemo vas kontaktirati putem e -pošte kako bismo pokušali razumjeti vaše specifične potrebe i kako ih možemo zadovoljiti. ” 50.000 poruka mjesečno je oko 70 poruka na sat, što nije previše, s obzirom na to da jedan uređaj može objaviti do 50 poruka po sesiji slanja podataka sa senzora. Posrednik podržava autorizaciju i TLS vezu. Registracija je povezana s Google računom. Postoji malo ograničenje - sve vaše teme moraju započeti adresom Email, putem kojeg ste se registrirali u servisu, na primjer: “/ [zaštićena e -pošta]/… /… /… ”. Ali ovaj problem je manje -više značajan samo pri postavljanju MQTT klijenata na pametnom telefonu (upisivanje više teksta), pa čak ni tada ne uvijek. Po mom mišljenju, ova usluga zaslužuje pažnju. Nisam provjerio rad kod njega, samo sam se registrirao.

pros: potpuno besplatno

Minusi: zahtijeva određeni prefiks za teme, ograničenje je oko 70 poruka na sat

Solace.Cloud (PubSub +)

To nije toliko MQTT broker koliko cijela IoT platforma. Besplatni tarifni plan dopušta do 50 veza, do 1 GB prenesenih podataka mjesečno, do 4 GB pohranjenih podataka (poruke u izmjeni). Nije loše. Ali čak i unutra besplatna verzija postoji mnogo postavki - teško je to shvatiti "na prvi pogled". Zato ga jedno vrijeme nisam koristio. Možda će doći trenutak, shvatit ću to i postaviti raspoloženje.

pros: do 50 veza

Minusi: prilično teško naučiti

myqtthub.com

Najvjerojatnije estonski posrednik. Na besplatnom tarifnom planu omogućava: do 100 korisnika, ali do 50 veza; 10 MB memorisanih podataka; do 50 pretplata po vezi, maksimalno 250 pretplata (i nije jasno je li pretplata “home / #” jedna ili više pretplata?); 300 poruka u minuti, ali ne više od 800 na sat i ne više od 10.000 dnevno. Na osnovu redovnih (svakih pet minuta) publikacija, ne primamo više od 34 poruke odjednom. Postoje i ograničenja - za više detalja pogledajte glavnu stranicu usluge. Ograničenja, međutim, izgledaju sasvim realno kućnu upotrebu... Nisam probao ...

pros: do 50 veza

Minusi: ograničenje broja poruka

mqtt.by

Bjeloruski posrednik jednostavan za korištenje. O ograničenjima se ništa ne govori. Podržava autorizaciju, ali je moguće neke teme učiniti javnim, odnosno otvorenim za sve ostale korisnike usluge. No, nema podrške za sigurnu vezu (TLS), to može biti kritično za neke aplikacije. Svaka objavljena tema mora započeti prefiksom “ / user / username”, što donekle komplicira konfiguraciju mobilnih mqtt klijenata, ali nije bitno. Pozitivna strana je što server ima javno dostupne teme s datumom i vremenom, što je vrlo zgodno za kontrolnu ploču zasnovanu na tabletu koja radi 24 sata dnevno - u isto vrijeme, postoji još jedan sat (sto dvanaest 🙂 ). Općenito, to je sasvim normalan posrednik, samo ako radi stabilno.

pros: bez ikakvih ograničenja, postoje javne teme, možete objaviti svoje teme

Minusi: nema SSL / TLS šifriranih veza

mqtt.4api.ru

Ruski besplatni posrednik - "pružamo pristup besplatnom mqtt serveru za sve." Autorizacija i registracija na usluzi putem društvenim medijima... Pojavio se, očigledno, ne tako davno. Iako sama web lokacija ima SSL certifikat, parametri veze očito sadrže podatke samo za "Bez SSL -a" SSL veza nije dostupno za uređaje. Stranica za povezivanje također kaže sljedeće: „Ne preporučujemo upotrebu ovaj server za vitalne projekte ”. Upravljačka ploča ima vrlo skromnu funkcionalnost, pa morate koristiti softver treće strane

pros: bez ikakvih ograničenja

Minusi: nema SSL / TLS šifriranja veza, loša funkcionalnost upravljačke ploče

Ostale usluge

Nećete biti puni samo MQTT -a. MQTT je jednostavan i zgodan, ali vam omogućuje pregled informacija "ovdje i sada", bez povijesti promjena tokom vremena. Postoje i druge usluge za pregled grafikona, koje je također lako postaviti. Neki od njih su predstavljeni u nastavku.

ThingSpeak

ThingSpeak je dostupan kao besplatna usluga za nekomercijalne male projekte (<3 миллиона сообщений в год или ~ 8 200 сообщений в день). Сервис позволяет накапливать получаемые данные в своих хранилищах, после чего их можно удобно просматривать в виде графиков. В том числе и на сторонних сайтах, .

Od značajki usluge - ima integraciju s MatLab Analytics, ali koliko sam puta pokušao konfigurirati MatLab skripte, ništa nije bilo od toga. Pa, nisam baš htjela. U besplatnom računu usluga vam omogućuje stvaranje do četiri kanala, svaki kanal može pohraniti do 8 polja s različitim podacima. Postoji i drugo ograničenje u besplatnom računu - ne možete objavljivati ​​podatke više od jednom svakih 15 sekundi (preporučuje se pauza od 20 sekundi), to je, kao, "zaštita" od prekoračenja ograničenja od 8.200 poruka dnevno. U principu, svi moji „izdavači“ lako se uklapaju u ovu granicu, to mi je dovoljno. Uslugu koristim već duže vrijeme, prilično je zgodna i jednostavna, osim MatLaba. Postoji nekoliko klijentskih programa za android, ali mnogo manje nego za MQTT.

pros: jednostavna upotreba na ESP-u, web stranica prilagođena korisnicima

Minusi: mnoga ograničenja besplatnog računa

open-monitoring.online

Ova je usluga donekle slična ThingSpeaku - možete joj poslati podatke na isti način, a zatim ih pregledati u obliku tablica, grafikona i histograma. Sučelje je jednostavnije od ThingSpeaka, ali ga je i mnogo lakše prilagoditi.

U početku je ova usluga, kako sam shvatio, stvorena za praćenje parametara osobnih solarnih elektrana, ali je sasvim prikladna za druge svrhe. Usluga je dostupna svima i besplatna, bez značajnih ograničenja u ovom trenutku. Jedino ograničenje koje sam do sada otkrio je da slanje grupe vrijednosti za jedan kontroler na poslužitelj ne može biti više od jednom u minuti. No čini se da nema ograničenja u broju vrijednosti za svaki kontroler i u broju kontrolera. Slanje podataka na poslužitelj provodi se jednostavnim get-zahtjevom, implementacija na ArduinoIDE-u mi je oduzela ne više od sat vremena. Za razliku od ThingSpeaka, spremljeni podaci mogu se vidjeti na jednom grafikonu (prekriveni), a nadzorna ploča se može konfigurirati za prikaz najnovijih vrijednosti. Pohranjene vrijednosti možete vidjeti i u jednostavnoj tablici.

pros: jednostavna upotreba na ESP-u, korisničko sučelje, gotovo bez ograničenja

Minusi: ne postoji način prikazivanja grafikona na web lokacijama trećih strana (za razliku od ThingSpeak-a), ili još nisam pronašao kako to učiniti

beebotte

Glavna stranica ove usluge kaže: „Povežite sve i svakoga u stvarnom vremenu koristeći bogati API koji podržava REST, WebSockets i MQTT“. Osobno još nisam koristio ovu uslugu. Sudeći prema onome što sam shvatio iz opisa, ovo je divlja mješavina mqtt brokera i thingspeak.com. U besplatnom načinu rada broj kanala i resursa nije ograničen, ali je broj poruka ograničen: 0,05 miliona dnevno | 1,5 miliona mesečno. Za pohranjene poruke ograničenja su još niža: 5.000 dnevno | 150.000 mesečno. Osim toga, poruke se čuvaju najviše tri mjeseca, nakon čega se brišu. Odnosno, ne možete vidjeti vrijeme tokom cijele godine. Ne znam još ništa o mobilnom klijentu za pametni telefon. Registered. Pokušat ću. Još je rano za donošenje zaključaka.

Blynk

Aktivno promovirana usluga za daljinsko upravljanje "pametnim uređajima". Čak bih rekao agresivno - pišu na sve forume gdje je potrebno, a gdje ne. Općenito, po mom osobnom mišljenju, ova platforma nije za hobiste, već za posao. U "slobodnom načinu rada" daje se vrlo malo resursa, osim možda za treptanje LED -a ili uključivanje jednog releja. Općenito, jednom sam pokušao - i napustio ga, resursi su odmah nestali. Previše pohlepno.

pros: Nisam našao

Minusi: pohlepno, postoji samo jedan mobilni klijent

To je sve za sada. Ako znate druge načine za daljinsko upravljanje ESP -om (nužno s "mobilnog") - pišite mi. Raspravljat ćemo i, možda, dopuniti članak.

Povezivanje putem cloud servera RemoteXY vam omogućava kontrolu uređaja s bilo kojeg mjesta na svijetu gdje postoji Internet.

ESP8266 će biti konfiguriran kao klijent za povezivanje s WiFi hotspotom. Pristupna tačka mora imati pristup Internetu. Biblioteka RemoteXY omogućit će registraciju uređaja na cloud serveru.

Mobilna aplikacija će se povezati s cloud serverom, a ne direktno s uređajem. Tako će uređaju biti pristupačno s bilo kojeg mjesta na Internetu.

Bilješka: IN ovaj trenutak veza putem cloud servera je u fazi testiranja. Stoga su mogući prekidi poslužitelja.

Korak 1. Kreirajte GUI projekt

Korak 5. Konfigurirajte ESP8266

Modul ESP8266 treba konfigurirati. Vaš modul možda već ima potrebne zadane postavke, ali najbolje je provjeriti.

Šta trebate provjeriti:

  • Modul ima firmver s podrškom za AT naredbe verzije koja nije niža od v0.40;
  • Modul je konfiguriran za brzinu od 115200.

Korak 6. Povežite ESP8266 na Arduino Uno

Spojite ESP8266 na Arduino Uno kao što je prikazano ispod. Imajte na umu da su pinovi RX-TX međusobno povezani.

Budući da su nivoi signala modula ESP8266 3,3 V, a Arduino 5 V, potrebno je koristiti otpornički razdjelnik napona za pretvaranje nivoa signala.


Korak 7. Prenesite skicu na Arduino.

Skica se postavlja na Arduino na uobičajen način. Međutim, zbog činjenice da je modul ESP8266 spojen na pinove 0 i 1, programiranje postaje nemoguće. Kompajler će prikazati grešku.

Prije programiranja, odvojite žice koje vode do ESP8266 sa pinova 0 i 1. Izvedite programiranje. Zatim vratite kontakte na mjesto. Pritisnite dugme za resetiranje Arduina.

Bilješka: Prvi znak da je programiranje bilo uspješno je treptanje plave LED diode na modulu ESP8266 odmah nakon resetiranja. Trepćuća plava LED označava razmjenu podataka između Arduina i ESP8266. U ovih pola sekunde, Arduino konfigurira ESP8266 za povezivanje s pristupnom točkom. Nakon nekog vremena LED dioda će ponovo zatreperiti, što znači pokušaj registracije na RemoteXY cloud serveru.

Korak 8. Povežite se s mobilne aplikacije.

Provjerite napajanje ESP8266

Moguće je i da vaš ESP8266 nema dovoljno napajanja iz izvora napajanja. Neke Arduino ploče imaju slab regulator napona od 3,3 V koji nije sposoban isporučiti 200-300 mA u vršnim uvjetima. U ovom slučaju, također ćete vidjeti prekid u naredbenom nizu u serijskom monitoru.

Vadim Kolesnik, Tiraspol

Uzbudljiv, jednostavan i brz razvoj potpuno opremljenih IoT uređaja na Arduinu koristeći uslugu oblaka

Opće informacije

myDevices razvija softver i aplikacije za Internet stvari (IoT) i dio je Avanquest -a. myDevices Cayenne je prva aplikacija za povlačenje i ispuštanje i usluga u oblaku za pojednostavljeni razvoj IoT projekata na Raspberry Pi.

Nedavno sam objavio portal Radiolotsman u kojem sam pokušao otkriti glavne prednosti i mogućnosti sistema pri radu na jedno-matičnom računaru Raspberry Pi (RPi). No, projekt Cayenne se stalno razvija, programeri, oslanjajući se na želje korisnika, postupno dodaju nove funkcije, uklanjajući nedostatke i greške.

Razvoj IoT uređaja na Arduinu i Raspberry Pi bitno se razlikuje u radu s Cayenneom. S obzirom na Raspberry Pi, Cayenne platformu možemo smatrati vizualnim razvojnim okruženjem: fizički povezujemo razne periferne uređaje na ploču Raspberry Pi, a zatim radimo samo u Cayenne mrežnom okruženju (postavljanje widgeta, obrada podataka, pisanje algoritama za automatizaciju).

Što se tiče Arduina, Cayenne nadzorna ploča (nadzorna ploča) samo je skup widgeta i kontrola koje vizualiziraju primljene podatke sa senzora i prenose korisničke podatke za upravljanje jednim ili drugim aktuatorom. Direktan rad sa senzorima, aktuatorima, dodatnim perifernim uređajima (na primjer, displej, druga tastatura), obrada uslova automatizacije dodjeljuje se mikrokontroleru. Drugim riječima, sve se svodi na razvoj standardnih Arduino uređaja; korisnik sam piše programski kod, ali uz integraciju fleksibilnih IoT funkcija Cayennea u projekt. Ovo je, po mom mišljenju, glavna prednost Cayenne -a: možete povezati bilo koji senzor i aktuator na sistem, ne ograničavajući se na listu podržanih perifernih uređaja.

Korisničko sučelje i priprema za rad

Što se tiče korisničkog sučelja sistema, njegovih postavki, metoda upravljanja i widgeta na nadzornoj ploči, sve ovo ostaje slično sistemu na Raspberry Pi -u, naravno, s izuzetkom nekih jedinstvenih elemenata koji su svojstveni potonjem (na primjer, udaljena radna površina , status memorije, opterećenje procesora). Stoga, da biste razumjeli osnove rada sa sistemom, preporučujem čitanje članaka. Sve informacije u članku relevantne su i za web sučelje sistema i za sučelje mobilne aplikacije. Članak također sadrži popis podržanih perifernih uređaja.

Za razvoj IoT uređaja ili aplikacije potrebno nam je:

  • Imajte vlastiti račun na usluzi Cayenne (možete koristiti postojeći);
  • Instalirajte integrirano razvojno okruženje Arduino IDE;
  • Dodajte biblioteku funkcija Cayenne u Arduino IDE;
  • Konfigurirajte Arduino IDE: odaberite ploču i COM port na koji je spojen;
  • Spojite Ethernet Shield ili Wi-Fi Shield ploču za proširenje na Arduino (ili upotrijebite Arduino ploču s integriranim mrežnim sučeljem).

Mislim da je proces instaliranja Arduino IDE-a, kao i izbor ploče i porta, sam po sebi razumljiv, pa ćemo prijeći na glavni.

Cayenneova biblioteka za Arduino može se jednostavno i brzo instalirati pomoću upravitelja biblioteke (slika 2).

Nakon instaliranja biblioteke, možemo je koristiti u našim aplikacijama, a nova mapa pod imenom Cayenne pojavit će se u odjeljku primjera skica. Po mom mišljenju, ovi primjeri ne razumiju u potpunosti kako se radi sa sistemom, ali ih ipak vrijedi proučiti, a također zapamtite da postoji veliki dio dokumentacije o Cayenne sistemu. Općenito, ova biblioteka je skup skica koje pojednostavljuju povezivanje i razmjenu podataka između senzora / pokretača i usluge u oblaku.

Nakon završetka pripremnih radnji, postavljanja razvojnog okruženja i povezivanja ploče za proširenje Ethernet Shield, možete započeti razvoj IoT uređaja.

Povezujemo Arduino ploču s računarom putem USB -a, LAN kabel priključujemo na Ethernet štit. U internetskom pregledniku prijavljujemo se na Cayenne račun, a na upravljačkoj ploči dodajemo novi uređaj - Arduino. Zatim odabiremo vrstu ploče, način povezivanja s internetom (postoji dosta opcija), pazimo na jedinstveni ključ za autorizaciju našeg uređaja i čekamo da se Arduino ploča spoji na Cayenne (slika 3 ).

Za svaki novi uređaj generira se novi jedinstveni ključ; kasnije se može pronaći u postavkama uređaja (ploče).

Čim odaberete način povezivanja na mrežu, pojavit će se prozor s izvornim kodom programa mikrokontrolera. Ovo je minimum potreban za povezivanje uređaja s uslugom u oblaku. Imajte na umu da je vaš autorizacijski ključ već naznačen u tekstu programa i da je povezana biblioteka koja odgovara odabranom načinu povezivanja na mrežu (slika 4). Kopirajte ovaj kod u Arduino IDE, kompajlirajte i prenesite na ploču. Ako je sve ispravno konfigurirano, novi aktivni uređaj i nadzorna ploča pojavit će se na kontrolnoj ploči Cayennea, gdje sada možete dodati widgete i kontrole. Štoviše, već u ovoj fazi možete daljinski kontrolirati dostupne digitalne i analogne portove Arduina bez pisanja jedne linije koda - dodajte gumb widgeta na nadzornu ploču, navedite vrstu porta (digitalni), njegovo ime na ploči i sačuvajte widget. Sada ćete klikom na gumb u pregledniku promijeniti logičko stanje porta. Također je jednostavno, dodavanjem odgovarajućih widgeta možete kontrolirati PWM izlaze, primati "sirove" podatke s analognih ulaza Arduina i pratiti status digitalnih ulaza.

Razvoj uređaja pomoću specifičnog primjera

Sada ću govoriti o dodatnim karakteristikama i funkcijama sistema. Kao primjer, sastavio sam jednostavan sistem koji je uključivao:

  • Arduino Uno ploča;
  • Ethernet štit za proširenje na kontroleru WIZnet W5100;
  • Senzor temperature DS18B20;
  • Fotootpornik;
  • Termistor;
  • Nekoliko LED dioda;
  • OLED ekran na SSD1306 kontroleru.

Shematski dijagram povezivanja senzora i LED dioda na Arduino prikazan je na slici 5.

Podsjećam vas da se većina pitanja vezanih za povezivanje različitih senzora i aktuatora može pronaći u odjeljku dokumentacije.

Mislim da neće biti pitanja o povezivanju LED dioda, digitalnog senzora temperature i OLED ekrana. Analogni svjetlosni i temperaturni senzori povezani su na analogne ulaze prema otporničkom krugu razdjelnika. U ovom slučaju, za krug termistora, potrebno je znati tačan otpor otpornika R6, ova vrijednost će se koristiti u izvornom kodu u proračunima.

Nakon povezivanja elemenata navedenih na dijagramu, napisat ćemo Arduino skicu, a zatim instalirati potrebne widgete na Cayenne nadzornu ploču. Trenutno je minimalna skica već učitana na Arduino ploču, a ploča je definirana na Cayenne nadzornoj ploči. Kao što sam već rekao, u ovoj fazi možemo dodati widgete za upravljanje LED diodama D1, D2, kao i za primanje "sirovih" podataka s analognih ulaza na koje su spojeni termistor i fotootpornik (slike 6, 7).

Bez pisanja jedne linije Arduino koda, već imamo jednostavan sistem daljinskog upravljanja i nadzora (slika 8).

Za korištenje digitalnih temperaturnih senzora, termistora, PWM -a, na primjer, za kontrolu D2 LED, morat ćete dodati minimalnu skicu. Prvo, definirajmo potrebne biblioteke.

#include< CayenneEthernet.h>// koristite ploču za proširenje Ethernet Shield
#include< CayenneTemperature.h>// funkcije za pretvaranje podataka s termistora
#include< OneWire.h>// funkcije za rad sa 1-Wire sabirnicom
#include< DallasTemperature.h>// funkcije za rad s digitalnim senzorima temperature
#include< Arduino.h>// standardne konstante i jezičke promenljive Arduino
#include< U8x8lib.h>// biblioteka za rad sa OLED ekranom u tekstualnom modu
#include< Wire.h>// podrška za hardversko sučelje I 2 C

#define VIRTUAL_PIN_1 V0 // virtualni kanal za senzor DS18B20
#define VIRTUAL_PIN_2 V1 // - za termistor
#define VIRTUAL_PIN_3 V2 // - za LED D2, putem ovog kanala ćemo primati podatke o PWM vrijednosti
#define LED2_PWM 6 // pravi Arduino port na koji je spojen LED D2

Virtualna kola nisu digitalni ili analogni I / O portovi. Prilikom direktnog čitanja analognih ulaza, korisnik prima podatke iz 10-bitnog ADC-a mikrokontrolera. Vrijednosti koje ADC vraća su u rasponu 0 ... 1023 i proporcionalne su naponu na ovom ulazu. Drugim riječima, ako spojite temperaturni senzor na analogni ulaz Arduina, nećete dobiti vrijednost temperature, potrebne su dodatne konverzije i matematički proračuni za pretvaranje napona - temperature.

Virtualni kanali su dizajnirani da pojednostave pretvaranje, oblikovanje i obradu podataka. To je prilično moćan alat koji se koristi za komunikaciju između Arduina i Cayennea i za jednostavno oblikovanje podataka tako da se mogu lako vizualizirati na nadzornoj ploči. Zapamtite, virtualne veze nemaju fizičke parametre.

Cayenne.virtualWrite (V1, 123) // prijenos cjelobrojne vrijednosti preko virtualne veze V1
Cayenne.virtualWrite (V2, 12.34) // prenosi vrijednosti s pomičnim zarezom preko virtualnog kanala V2

Na primjer, nakon čitanja analognog senzora temperature, možemo pretvoriti vrijednost u stupnjeve Celzijusa s jednim redom koda i prenijeti tu vrijednost na nadzornu ploču. Osim toga, virtualni kanali omogućuju vam kontrolu svih perifernih uređaja povezanih na analogne ili digitalne portove Arduina, bez potrebe za pisanjem dodatnog koda. Trenutno su podržane dvije vrste podataka s kojima virtualni kanali rade: cijeli broj (cijeli broj) i s pomičnim zarezom (s plutanjem). U budućnosti se planira podrška za tipove znakova i nizove. Na nadzornoj ploči, putem virtualnog kanala, možete se povezati i konfigurirati prilagođeni widget za vizualizaciju prema vrsti primljenih podataka.

// Digitalni port na koji će biti spojeni senzori DS18B20. Ne koristite Arduino portove 0 i 1 (Rx / Tx).
const int ds18b20_Pin = 2;
// Analogni port na koji je priključen termistor.
const int termistorPin = 0;
// Otpor fiksnog otpornika (9 kOhm), serijski spojenog s termistorima na masu.
otpor plutanja const = 9000;
// Cayenneov autorizacijski ključ. Možete ga pronaći na Cayenne web sučelju na kartici postavki uređaja.
char token = "640c9oedi4";
OneWire oneWire (ds18b20_Pin);
Senzori temperature u Dallasu (& oneWire);
Termistor termistor (termistorPin, otpor);

Po vašem nahođenju, u gotovo svakoj fazi, izvornom kodu možete dodati izlaz za otklanjanje grešaka putem serijskog porta.

U odjeljku inicijalizacije navest ćemo sljedeće funkcije:

void setup ()
{
Cayenne.begin (token); // povezivanje na Cayenne sa navedenim ključem za autorizaciju
sensors.begin (); // inicijalizacija digitalnih senzora temperature
u8x8.begin (); // inicijalizacija i izlaz tekstualnih informacija na OLED ekran

u8x8.setPowerSave (0);
u8x8.setFont (u8x8_font_torussansbold8_r);
u8x8.drawString (2.0, "Cayenneov test");
u8x8.drawString (1,2, "Sistem radi");
}

U glavnoj petlji programa imat ćemo samo jednu funkciju:

void loop ()
{
Cayenne.run ();
}

Sva komunikacija s nadzornom pločom Cayenne odvija se pomoću nekoliko funkcija:

CAYENNE_IN (Virtual_Pin) - definira funkciju koja se poziva kada uređaj primi ažurirane podatke putem virtualne veze sa servera Cayenne.

CAYENNE_OUT (Virtual_Pin) - definira funkciju koja se poziva kada je potrebno poslati ažurirane podatke s uređaja na Cayenne server.

CAYENNE_CONNECTED () - funkcija se izvršava svaki put kada se uređaj poveže sa serverom Cayenne. Općenito, ova funkcija se koristi za sinkronizaciju.

Cayenne.syncAll () - funkcija koja generira zahtjev Cayenne serveru za sinhronizaciju svih widgeta. Analogni i digitalni portovi Arduina bit će obnovljeni i svaki virtualni kanal generirat će CAYENNE_IN događaj.

Cayenne.syncVirtual (Virtual_Pin) - sinhronizacija na navedenom virtualnom kanalu. Kao rezultat izvršavanja, poziva se odgovarajući CAYENNE_IN rukovatelj.

U mom krugu LED D2 je spojen na digitalni port D6 na Arduinu. Ovaj port ima alternativnu funkciju - PWM izlaz. Da bismo implementirali daljinsko upravljanje ovim LED diodama u PWM načinu rada, moramo primati podatke s nadzorne ploče. Da bismo to učinili, napisat ćemo funkciju koja će se izvršiti prilikom ažuriranja podataka putem V2 virtualnog kanala:

CAYENNE_IN (V2)
{
// dobivamo podatke o PWM vrijednosti s nadzorne ploče (klizač)
int PWMValue = getValue.asInt (); // vrijednost u rasponu 0 - 1023
analogWrite (LED2_PWM, PWMValue / 4); // za PWM, vrijednost mora biti u rasponu 0 - 255
}

Sada na nadzornoj ploči dodajte widget "Slider" s imenom LED_2 PWM (PWM), a u njegovim postavkama naznačit ćemo da radi putem virtualnog kanala 2 (slika 9).

Nakon što skicirate skicu na ploču, pomoću klizača na Cayenne nadzornoj ploči možete kontrolirati svjetlinu D2 LED diode. Sve je vrlo brzo i jednostavno ...

CAYENNE_OUT (V0)
{
sensors.requestTemperatures (); // dobivanje podataka iz digitalnih temperaturnih senzora.
// transformiramo podatke s termistora, formatiramo ih i šaljemo na server putem virtualnog kanala V1
Cayenne.celsiusWrite (V1, thermistor.getCelsius ());
// formatiramo podatke s digitalnog senzora temperature i šaljemo ih na server putem virtualnog kanala V0
Cayenne.celsiusWrite (V0, sensors.getTempCByIndex (0));
}

Zbog korištenja virtualnih kanala, cijeli kod funkcije za prijenos potpuno različitih podataka sastoji se od dva retka. Na nadzornoj ploči dodajte widgete za senzor temperature i termistor DS18B20 (oni su gotovi na upravljačkoj ploči). Postavljamo widgete, učitavamo skicu na ploču i ... gotovi ste (slike 10a, 10b)!


Slika 10. Pogled s Cayenne armaturne ploče za Arduino kontrolu (senzori temperature,
osvjetljenje, LED kontrola D1, PWM kontrolna LED D2):

Upamtite da su te iste funkcije kontrole i nadzora dostupne u mobilnu aplikaciju... Svi widgeti instalirani u web sučelju mogu se vidjeti u mobilnoj aplikaciji (slika 10b).

Izgled uređaj sa povezanim perifernim uređajima prikazan je na slici 11.

Sposobnost razvoja bežičnih IoT uređaja

Možda ste primijetili da na nekim snimkama zaslona možete vidjeti moju kontrolnu ploču, gdje se pored Arduino Uno i Raspberry Pi nalazi i uređaj po imenu ESP8266-1. Tačno je dodatni uređaj na dobro poznatom modulu ESP-12 (ESP8266), koji je povezan s Cayenne serverom putem Wi-Fi-ja i ima svoju zasebnu nadzornu ploču (slike 12a, 12b). Takav uređaj je bežična jedinica za nadzor i upravljanje. Modul je spojen na dvije LED diode (jedna je spojena na PWM izlaz ESP8266) i digitalni senzor temperature DS18B20.


Slika 12. Kontrolna ploča za bežični uređaj na modulu ESP-12:
a) web sučelje, b) mobilna aplikacija.

Uz podršku jezgre ESP8266 u Arduino IDE -u, implementacija bežičnih IoT uređaja s Cayenneom se ne razlikuje od razvoja s Arduinom. Drugim riječima, bilo koji modul na čipu ESP8266 je Arduino ploča s Wi-Fi sučeljem. Za ovaj Wi-Fi modul pišemo sličnu skicu, koristimo iste biblioteke za rad sa senzorima, dostupni su nam digitalni i analogni ulazno / izlazni portovi. Ovaj modul je prikupio ogromnu količinu informacija, različite dokumentacije i razvoja.

Dijagram povezivanja perifernih uređaja s modulom ESP8266 prikazan je na slici 13. Koristio sam zasebni modul ESP-12 bez uspona s integriranim krugom napajanja i programskim sučeljem, što je uvelike kompliciralo rad u fazi preuzimanja skice. Najbolja opcija koristit će gotov modul poput nodeMCU v3, koji je izrađen u Arduino faktoru i ima sklop za podudaranje sučelja. (Veoma važna tačka prilikom programiranja modula). Vanjski izgled modula sa spojenim LED diodama i senzorom temperature prikazan je na slici 14.

Što se tiče povezivanja na Cayenne server i razmjene podataka, ovdje je sve kao za Arduino. Svi koncepti virtualnih kola su sačuvani, koriste se iste funkcije, a koristi se i jedinstveni ključ za autorizaciju. Jedina razlika je u fazi povezivanja modula s internetom.

Za povezivanje uređaja na ESP8266 modul postupimo na isti način kao i dodavanje bilo koje Arduino ploče i dolazimo do faze čekanja da se uređaj spoji na Cayenne, gdje će se generirati minimalna skica.

Moramo promijeniti ovu skicu. Povezujemo sljedeće biblioteke:

#include "CayenneDefines.h" // Cayenneove konstante i varijable
#include "BlynkSimpleEsp8266.h" // funkcije za rad s ESP8266
#include "CayenneWiFiClient.h" // funkcije za implementaciju Wi-Fi klijenta

char token = "3yj62u9ogi";
char ssid = "Network_SSID"; // SSID i lozinka za vašu Wi-Fi mrežu.
char password = "Lozinka za mrežu";

U odjeljak inicijalizacije dodajte redak:

Cayenne.begin (token, ssid, lozinka);

Kompiliramo, učitavamo u modul (traje duže od postavljanja na Arduino ploču), čekamo povezivanje i aktivaciju novog uređaja na nadzornoj ploči Cayenne. Zatim, sve je kao za Arduino: dodajemo funkcije za rad sa senzorima i I / O portovima, dodajemo widgete na nadzornu ploču. Jednostavno nevjerovatno, zar ne ?!

Zaključak

Na osnovu rezultata rada sa Cayenneom na Raspberry Pi i Arduinu, definitivno mogu reći da se Raspberry Pi ne bi trebao koristiti za razvoj IoT uređaja, čak ni sa Cayenneom. Ono što se ne može reći o Arduinu - unatoč ograničenim resursima, nedostatku više zadataka, niskoj procesorskoj snazi ​​(iako je ovo kontroverzna točka, s obzirom na karakteristike novih Arduino ploča na ARM procesorima), idealan je za razvoj jednostavnih IoT uređaja i sistemi kućne automatizacije.

Osim toga, u ovom kontekstu, glavna prednost Arduina, kao što sam gore napomenuo, je sposobnost samostalnog razvoja uređaja, proučavanje sklopova, pisanje koda, razvoj vještina programiranja, unatoč argumentima profesionalnih programera koje ne možete naučiti programirati s Arduinom. Možda, ali ... U odnosu na Arduino, Cayenne platforma nudi samo grafički prikaz korisnički interfejs i neka pojednostavljenja u obradi podataka. Sve ostalo morate sami razviti, uključujući primarnu obradu podataka sa senzora, podsistem za obradu događaja, kao i uslove i algoritme za automatizaciju. A sada dodajte Arduinu jednostavnost razvoja bežičnih IoT uređaja na ESP8266 Wi-Fi modulu i već službenu podršku (iako nije potpunu) najnovijeg čipa ESP32, koji ima bogatu periferiju i imate velike mogućnosti za razvoj fundamentalno novih uređaja i privlačenje ovog procesa nije samo za amatere, već i za profesionalce.

U vrijeme pisanja ovog teksta, Cayenne nije najavio službenu podršku za module zasnovane na čipu ESP8266. U početku je to zasluga zajednice - amateri i inženjeri koji rade ili koriste Arduino IDE i znaju za podršku za ESP8266, uz pomoć Cayenne biblioteka uspjeli su se povezati i koristiti ESP8266. Ali čak i u to vrijeme već je bilo moguće upoznati se sa forumima zajednice Cayenne. veliki iznos razne projekte bežičnih IoT uređaja.

Nakon dužeg vremena testiranja mojih uređaja na Arduinu i ESP8266, mogu reći da potonji radi vrlo stabilno. Nešto niska pouzdanost Arduina s Ethernet Shieldom je posljedica poznati problem zamrzavanje kontrolera W5100, međutim, postoji nekoliko načina da se to riješi, hardverski i softverski. Mogu pretpostaviti da se to ne odnosi na Arduino ploče s integriranim Ethernet ili Wi-Fi.

Nije prošlo mnogo vremena od kada su napisani članci o Raspberry Pi -u i Cayenneu, ali postoji mnogo više novih funkcija i podržanih perifernih uređaja. Osim što imaju veliki izbor različitih ploča za proširenje, senzora i aktuatora, odgovarajućih biblioteka, projekata i primjera za Arduino, sada korisnici Cayennea imaju pristup LoRa uređajima, mrežama i uslugama, bibliotekama za podršku mrežni protokol MQTT za Arduino, C, C ++, mBed, biblioteke za rad sa posrednikom protiv komaraca MQTT. Definitivno, za razvoj IoT uređaja i sistema kućne automatizacije na Arduinu, preporučio bih Cayenne usluge.

Prethodno je izumio kotač za izradu Arduino uređaja za nadzor.

Bilo je zanimljivo.

/ * - Novi projekat - Ovaj izvorni kod grafičkog korisničkog interfejsa automatski je generisao RemoteXY editor. Za sastavljanje ovog koda pomoću biblioteke RemoteXY 2.3.5 ili novije verzije preuzmite putem veze http://remotexy.com/en/library/ Za povezivanje pomoću mobilne aplikacije RemoteXY putem veze http://remotexy.com/en/download/ - za ANDROID 4.3.1 ili novija verzija; - za iOS 1.3.5 ili noviju verziju; Ovaj izvorni kod je besplatni softver; možete ga dalje distribuirati i / ili modifikovati pod uslovima GNU -ove manje opšte javne licence koju je objavila Fondacija za slobodni softver; bilo verzije 2.1 licence, ili (po vašem izboru) bilo koje kasnije verzije. *///////////////////////////////////////////////// // RemoteXY uključuje biblioteka // /////////////////////////////////////////////// // // utvrđivanje način povezivanja i povezivanje biblioteke RemoteXY #define REMOTEXY_MODE__ESP8266_HARDSERIAL_CLOUD #include // postavke veze #define REMOTEXY_SERIAL Serijski #define REMOTEXY_SERIAL_SPEED 9600 #define REMOTEXY_WIFI_SSID "***********" #define REMOTEXY_WIFI_PASSWORD "***********" #define REMOTEXY .com #define REMOTEXY_CLOUD_PORT 6376 #define REMOTEXY_CLOUD_TOKEN "*************************" #include // Dodavanje biblioteke DHT11 dht11 DHT; // Deklariranje varijable klase dht11 #define DHT11_PIN 7 // DHT11 senzor je spojen na digitalni pin broj 4 const int analogSignal = A3; // povezivanje pin analognog signala const int digitalSignal = 8; // povezivanje pin -a digitalnog signala boolean noGas; // varijabla za pohranjivanje vrijednosti prisutnosti plina int gas = 0; // varijabla za spremanje količine plovnog plivanja hum = 0; // varijabla za skladištenje vlažnosti float temp = 0; // varijabla za pohranu temperature int chk; // varijabla za spremanje DHT greške char msgBuffer; // konfiguracija sučelja #pragma pack (push, 1) uint8_t RemoteXY_CONF = (255,1,0,24,0,74,0,8,13,2, 2,0,38,44,22,11,7, 81,22,11, 2,26,31,31,79,78,0,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,16,5,20,5,38,23,20,5,2,26,11,67, 4, 63, 6, 20, 5, 39, 52, 20, 5, 2, 26, 11); // struktura definira sve varijable vaše strukture upravljačkog sučelja (// ulazna varijabla uint8_t switch_1; // = 1 ako je prekidač omogućen i = 0 ako je onemogućen // izlazna varijabla int8_t level_1; // = 0..100 level position int8_t level_2; / / = 0..100 level position char text_1; // = niz null-terminiran niz UTF8 char text_2; // = niz null-terminiran niz UTF8 // druga varijabla uint8_t connect_flag; // = 1 ako je žica spojena, else = 0) RemoteXY; #pragma pack (pop) //////////////////////////////////////////////// /END RemoteXY include // ////////////////////////////////////////// /// # define PIN_SWITCH_1 13 void setup () (RemoteXY_Init (); pinMode (PIN_SWITCH_1, OUTPUT); // TODO postavljate kôd) void loop () (RemoteXY_Handler (); digitalWrite (PIN_SWITCH_1, (RemoteXY.switch_1 == 0)? HIGH); noGas = digitalRead (digitalSignal); // očitavanje vrijednosti prisutnosti plinskog plina = analogRead (analogSignal); // i njegova količina chk = DHT.read (DHT11_PIN); hum = DHT.humidity; temp = DHT .temperature; RemoteXY.level_1 = hum; RemoteXY.level_2 = temp; dtostrf (hum, 6, 2, RemoteXY.text_1); dtostrf (temp, 6, 2, RemoteXY.text_2); // TODO kôd petlje / / koristite struktura RemoteXY za prijenos podataka)

Koristimo sendvič od dasaka.

Odjednom je sve odmah upalilo:

Prošao je sat vremena od trenutka kada je otkrivena usluga RemoteXY oblaka do gornje fotografije.

Karakteristike rada sa RemoteXY -om.

1. Sve je vrlo jednostavno. Dobro je na svoj način. Blynk i Cayenne, na primjer, vjerojatno neće biti shvaćeni od nule za sat vremena. Da biste koristili, na primjer, "KaScada Cloud", morate kupiti poseban.

2. Nema obrade i skladištenja podataka na strani servera: nema veze sa pločom - aplikacija visi "Nema veze".

3. Samo 5 elemenata dizajna je besplatno, ali PRO aplikacija ne košta više od pola dana provedenog vremena.

4. Moguće je iz jedne aplikacije komunicirati sa pločom i putem cloud servera i direktno. Istina nije u isto vrijeme, naravno. Nemoguće je brzo prebacivanje - morate promijeniti skicu na ploči. Također je moguće komunicirati između pametnog telefona i ploče putem Bluetootha i USB -a.