Google API hívás - táblázat, grafikon, online adatgyűjtés
Google API hívás - táblázat, grafikon, online adatgyűjtés
Sikerült Google táblázat cellájába írnom ESP-vel.
Naplózás, Adatbázis kezelés, grafikonok, naptár, űrlapok stb.
Amire nálam használva lesz, ezután nem kell külön külön megnyitni az ESP-k config oldalát és ott összehangolgatni őket hanem így remélhetőleg elég csak egy táblázatban rendezgetni. Valamint ha már lesz 3 ESP hőmérő itthon szépen összegyűjtöm a mért adatokat egy grafikonba.
Kis bökkenő hogy csak Google Scripteken keresztül tud az ESP a Google dokumentumokkal kommunikálni, így annak ismerete és használata elkerülhetetlen, de szerencsére az sincs túlbonyolítva, alap szintet ,sikereket gyorsan el lehet érni.
Ha valakinek felcsillanna a szeme, és gyorsan írni kezdené hogy mintakódot küldjek ne tegye, egyenlőre nem így megy sajnos.
Honnan indultam ki:
https://www.youtube.com/watch?v=fVBqUeksR1I
Aztán aminek mennie kellene: (de hibákkal tele a fordító szerint, ugyanakkor a google script-jéből lehet csemegézni )
https://github.com/electronicsguy/ESP82 ... PSRedirect
Aztán ami bevált:
https://github.com/esp8266/Arduino/blob ... equest.ino
Persze nem így, nem ezekkel a paraméterekkel mert ez nem script.google.com HTTPS példa, de az előtte lévő hibásból áttettem bele a csatlakozási adatokat és már ment is.
Szóval ebből is lehet egy szép nagy kibeszélős téma.
Naplózás, Adatbázis kezelés, grafikonok, naptár, űrlapok stb.
Amire nálam használva lesz, ezután nem kell külön külön megnyitni az ESP-k config oldalát és ott összehangolgatni őket hanem így remélhetőleg elég csak egy táblázatban rendezgetni. Valamint ha már lesz 3 ESP hőmérő itthon szépen összegyűjtöm a mért adatokat egy grafikonba.
Kis bökkenő hogy csak Google Scripteken keresztül tud az ESP a Google dokumentumokkal kommunikálni, így annak ismerete és használata elkerülhetetlen, de szerencsére az sincs túlbonyolítva, alap szintet ,sikereket gyorsan el lehet érni.
Ha valakinek felcsillanna a szeme, és gyorsan írni kezdené hogy mintakódot küldjek ne tegye, egyenlőre nem így megy sajnos.
Honnan indultam ki:
https://www.youtube.com/watch?v=fVBqUeksR1I
Aztán aminek mennie kellene: (de hibákkal tele a fordító szerint, ugyanakkor a google script-jéből lehet csemegézni )
https://github.com/electronicsguy/ESP82 ... PSRedirect
Aztán ami bevált:
https://github.com/esp8266/Arduino/blob ... equest.ino
Persze nem így, nem ezekkel a paraméterekkel mert ez nem script.google.com HTTPS példa, de az előtte lévő hibásból áttettem bele a csatlakozási adatokat és már ment is.
Szóval ebből is lehet egy szép nagy kibeszélős téma.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Haladok.
Már megvan a cellából olvasás is. Nyomi google nem azon a címen küldi vissza az adatokat amin kapja. Így a kapott adatoknak egy újabb klienset kell nyitni.
https://developers.google.com/apps-scri ... es/content
Ezzel együtt viszont már van egy kezdetleges használható kód is a kezünkben.
Már megvan a cellából olvasás is. Nyomi google nem azon a címen küldi vissza az adatokat amin kapja. Így a kapott adatoknak egy újabb klienset kell nyitni.
https://developers.google.com/apps-scri ... es/content
Ezzel együtt viszont már van egy kezdetleges használható kód is a kezünkben.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
https://www.youtube.com/watch?v=Lt_dYl7_DiY
Kis kedv csináló videó.
hardware:
ESP
DS18B20 hőmérő
(lézerkapu) Lézerdióda és szembe vele az érzékelője
Két feladatot lát el az egység.
Hőmérő:
Meghatározott hőfokelmozdulásra elküldi a mért adatot a Google táblázatnak, oda az épp aktuális dátummal együtt bekerül, aztán abból lesz a csodaszép grafikon.
Lézerkapu:
Ha a fény útjába kerül valami akkor szintén elküldi a táblázatnak, ami ezt a riasztást is rögzíti dátummal együtt a másik oszlopba.
jobb oldalon az ESP soros portra írja ki többek között a script-től kapott válaszokat.
Kis kedv csináló videó.
hardware:
ESP
DS18B20 hőmérő
(lézerkapu) Lézerdióda és szembe vele az érzékelője
Két feladatot lát el az egység.
Hőmérő:
Meghatározott hőfokelmozdulásra elküldi a mért adatot a Google táblázatnak, oda az épp aktuális dátummal együtt bekerül, aztán abból lesz a csodaszép grafikon.
Lézerkapu:
Ha a fény útjába kerül valami akkor szintén elküldi a táblázatnak, ami ezt a riasztást is rögzíti dátummal együtt a másik oszlopba.
jobb oldalon az ESP soros portra írja ki többek között a script-től kapott válaszokat.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Tipp/kérdés:
https://thingspeak.com/ oldal miért nem jó a grafikonos megjelenítéshez?
A google táblázatos megoldás érdekes.....
https://thingspeak.com/ oldal miért nem jó a grafikonos megjelenítéshez?
A google táblázatos megoldás érdekes.....
http://www.tavir.hu - a gazda
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Igazság szerint a linkelt oldalt azt hittem csak az időjárás mániások használják, így azt sem tudom mit csinál.
Másik ok, hogy annak idején pár segédprogramot írtam Microsoft excel visual Basic segítségével, nagyon rászoktam egyszerűségére. Kicsit olyan nekem az efféle adatbázis kezelés mint a JSON forma az adattovábbításba. Átlátható, gyorsan hadba fogható, pont kézre áll. Ezek után mikor megláttam hogy mindezt megtalálom a Gdocs-ban. Nem kérdés hogy miért szántam rá egy hétvégét.
A grafikon az igazából csak egy pici része mindannak ami ezzel kaptam, szó se róla roppan korlátozottak és fapadosak a grafikon lehetőségek (is).
Persze lehet hogy mindez meglenne az időjárás oldalon is de azt még sosem használtam, a Google és az MS megoldásai viszont napi használatban vannak, nem csak nálam de sokunk életében azt hiszem.
Mondjuk pld az emil küldés, talán a táblázat és szövegszerkesztő rész is.
Az emilt pld le is írtam, hogy kell az új módszerrel használni.
Mondanám hogy megoldja az AT parancsokat használó fórumtársak emilküldő problémáját, de szerintem nem.
https://onedrive.live.com/view.aspx?cid ... 5376%2F%29
Gitbook-ot is otthagytam a szöveg szerkesztőjük miatt, sok előnye volt de amikor azzal kell vacakolnom hogy egy oldalt hogy írok meg ahelyett hogy a tartalmára koncentrálnék az felbosszantott. Mondjuk az OneNote sem a szívem csücske, de épp nem találtam még jobbat.
Egyszóval számomra a járt utat a járatlanért ne hagy ott esete forog fenn.
Ráadásul a NodeRed és efféle oldalak kényelmét szeretném elérni azok használata nélkül, és most már a google talán ad erre lehetőséget.
Aztán lehet valaki csinál nekem egy meggyőző cikket, videót a linkelt oldal használatáról, lehetőségeiről és másképp látom utána.
Másik ok, hogy annak idején pár segédprogramot írtam Microsoft excel visual Basic segítségével, nagyon rászoktam egyszerűségére. Kicsit olyan nekem az efféle adatbázis kezelés mint a JSON forma az adattovábbításba. Átlátható, gyorsan hadba fogható, pont kézre áll. Ezek után mikor megláttam hogy mindezt megtalálom a Gdocs-ban. Nem kérdés hogy miért szántam rá egy hétvégét.
A grafikon az igazából csak egy pici része mindannak ami ezzel kaptam, szó se róla roppan korlátozottak és fapadosak a grafikon lehetőségek (is).
Persze lehet hogy mindez meglenne az időjárás oldalon is de azt még sosem használtam, a Google és az MS megoldásai viszont napi használatban vannak, nem csak nálam de sokunk életében azt hiszem.
Mondjuk pld az emil küldés, talán a táblázat és szövegszerkesztő rész is.
Az emilt pld le is írtam, hogy kell az új módszerrel használni.
Mondanám hogy megoldja az AT parancsokat használó fórumtársak emilküldő problémáját, de szerintem nem.
https://onedrive.live.com/view.aspx?cid ... 5376%2F%29
Gitbook-ot is otthagytam a szöveg szerkesztőjük miatt, sok előnye volt de amikor azzal kell vacakolnom hogy egy oldalt hogy írok meg ahelyett hogy a tartalmára koncentrálnék az felbosszantott. Mondjuk az OneNote sem a szívem csücske, de épp nem találtam még jobbat.
Egyszóval számomra a járt utat a járatlanért ne hagy ott esete forog fenn.
Ráadásul a NodeRed és efféle oldalak kényelmét szeretném elérni azok használata nélkül, és most már a google talán ad erre lehetőséget.
Aztán lehet valaki csinál nekem egy meggyőző cikket, videót a linkelt oldal használatáról, lehetőségeiről és másképp látom utána.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Az onenote/onedrive oldalon a megjegyzéshez tipp:
A címsorba nem szóközt teszünk, hanem %20-at. Ugyanígy az ékezetes betűk is átadhatóak a google-nak ...
A címsorba nem szóközt teszünk, hanem %20-at. Ugyanígy az ékezetes betűk is átadhatóak a google-nak ...
http://www.tavir.hu - a gazda
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Nyelvtan a suliban sem volt a kedvencem, mostanában meg folyton ezek az ékezet mizériák.A címsorba nem szóközt teszünk, hanem %20-at. Ugyanígy az ékezetes betűk is átadhatóak a google-nak ...
Sajnos jó későn estem haza, de holnap kipróbálom, köszönöm a tippet.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Működik szuper, újra vannak ékezetek.
Bár el leszek keseredve, ha ezt csak így lehet megoldani ebben az agyondigitalizált világban.
Bár el leszek keseredve, ha ezt csak így lehet megoldani ebben az agyondigitalizált világban.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
A stringet futtasd át ezen:
http://hardwarefun.com/tutorials/url-en ... in-arduino
Vagy tegyél funkcióhívást belőle:
http://hardwarefun.com/tutorials/url-en ... in-arduino
Kód: Egész kijelölése
int c;
char *hex = "0123456789abcdef";
while( (c = getchar()) != EOF ){
if( ('a' <= c && c <= 'z')
|| ('A' <= c && c <= 'Z')
|| ('0' <= c && c <= '9') ){
putchar(c);
} else {
putchar('%');
putchar(hex[c >> 4]);
putchar(hex[c & 15]);
}
}
Kód: Egész kijelölése
String URLEncode(const char* msg)
{
const char *hex = "0123456789abcdef";
String encodedMsg = "";
while (*msg!='\0'){
if( ('a' <= *msg && *msg <= 'z')
|| ('A' <= *msg && *msg <= 'Z')
|| ('0' <= *msg && *msg <= '9') ) {
encodedMsg += *msg;
} else {
encodedMsg += '%';
encodedMsg += hex[*msg >> 4];
encodedMsg += hex[*msg & 15];
}
msg++;
}
return encodedMsg;
}
http://www.tavir.hu - a gazda
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Hát igen ettől tartottam hogy csak ez a megoldás marad.
A mintakód nem a legjobb nekem ahogy látom.
http://www.w3schools.com/tags/ref_urlencode.asp
ezen az oldalon nekem az utf 8 kódsor a jó, csak azt fogadja el a google.
pld az Ü nem %DC hanem %C3%9C.
Ezzel asszem vacakolok még egy kicsit.
A mintakód nem a legjobb nekem ahogy látom.
http://www.w3schools.com/tags/ref_urlencode.asp
ezen az oldalon nekem az utf 8 kódsor a jó, csak azt fogadja el a google.
pld az Ü nem %DC hanem %C3%9C.
Ezzel asszem vacakolok még egy kicsit.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Hátha segít:
http://playground.arduino.cc/Main/Utf8ascii
http://playground.arduino.cc/Main/Utf8ascii
http://www.tavir.hu - a gazda
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Köszi megvizsgálom.
Most épp azzal próbálkozom hogy nem GET hanem POST üzenetben küldöm az adatokat mert akkor nem címsorban megy.
Aztán hátha akkor lehet valahogy fejléc paranccsal állítani mint ajaxban tettem. (text/html; charset=ISO-8859-2) Ez ott bevált. Sajna nem nagyon értek hozzá, talán vak vágyány. Szóköz az szépen átmegy Post-al, de az ékezetek eddig még nem.
Aztán lehet marad az általad ajánlott átkódolás ha más nincs.
Most épp azzal próbálkozom hogy nem GET hanem POST üzenetben küldöm az adatokat mert akkor nem címsorban megy.
Aztán hátha akkor lehet valahogy fejléc paranccsal állítani mint ajaxban tettem. (text/html; charset=ISO-8859-2) Ez ott bevált. Sajna nem nagyon értek hozzá, talán vak vágyány. Szóköz az szépen átmegy Post-al, de az ékezetek eddig még nem.
Aztán lehet marad az általad ajánlott átkódolás ha más nincs.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Végül is a konvertálás maradt az első link funkcióhívásával, valamint kellett egy kis fejlécmódosítás. Egyenlőre POST üzenetként van magolva. Ezt a megoldást is feltettem az eredeti minta után.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Ugyan még csak alakul a lehetőség használata de egyre jobban tetszik.
Most egyenlőre így néz ki a tervezett oldal.
Eddig több esp naplózására nem találtam frappáns megoldást, hát most van. A képen 5 ESP naplózása látszik, persze lehet "akármennyi". Így nem kell külön külön összeszedni az adatokat hanem egyszerre látom mindet. Majd hetente vált egy új lapra ne legyen sok adat. Minden ESP oszlopába benne lesz a neve, az IP, hogy épp mit csinál a lakásban, stb... Ezen kívül mivel ez is csak egy html oldal lehet ESP webszerverére mutató linkeket betenni, így OTA frissítési link, (ez hasznos mert már volt hogy rossz IP-re frissítettem ) és a egyéb beállítási és vezérlési gombok. ESP k- mac cím alapján vannak beazonosítva a többi változó adat.
Az is jól fog jönni hogy minden esp felírja ide a saját vezérlési paramétereit. Így nem kell külön összeírnom melyik modult hogy vezérlem és mire képes. Ez főleg akkor szokott kelleni mikor külső HTML vezérlő oldal készül, vagy Nextion konzol, vagy mikor egymást kell vezérelniük. (Szóval gyakran)
Mindezt úgy mintha legózna az ember. Legalább is eddig ami ehhez a legközelebb állt a tervek közül, az egy külső FTP szerver és az adatok megjelenítésére HTML oldal. Már az sem volt esélytelen de ehhez képest sok meló lett volna abban.
Ja legóról jut eszembe.
Ez nagyon tetszik.
https://www.kickstarter.com/projects/st ... n=f47a8bd8
Ha lenne olyan gyerekem aki kicsit is érdeklődik az elektronika iránt csinálnék neki ilyent WeMos Belsővel.
Persze ha nincs internet kapcsolat valamiért akkor nem naplóz. Azt ugyan meg lehet csinálni, hogy addig menti az adatokat és amikor van google elérés akkor feltölti, de ennyire nem lesz kidolgozva szerintem. Nem Marsra szállásra készülök.
Most egyenlőre így néz ki a tervezett oldal.
Eddig több esp naplózására nem találtam frappáns megoldást, hát most van. A képen 5 ESP naplózása látszik, persze lehet "akármennyi". Így nem kell külön külön összeszedni az adatokat hanem egyszerre látom mindet. Majd hetente vált egy új lapra ne legyen sok adat. Minden ESP oszlopába benne lesz a neve, az IP, hogy épp mit csinál a lakásban, stb... Ezen kívül mivel ez is csak egy html oldal lehet ESP webszerverére mutató linkeket betenni, így OTA frissítési link, (ez hasznos mert már volt hogy rossz IP-re frissítettem ) és a egyéb beállítási és vezérlési gombok. ESP k- mac cím alapján vannak beazonosítva a többi változó adat.
Az is jól fog jönni hogy minden esp felírja ide a saját vezérlési paramétereit. Így nem kell külön összeírnom melyik modult hogy vezérlem és mire képes. Ez főleg akkor szokott kelleni mikor külső HTML vezérlő oldal készül, vagy Nextion konzol, vagy mikor egymást kell vezérelniük. (Szóval gyakran)
Mindezt úgy mintha legózna az ember. Legalább is eddig ami ehhez a legközelebb állt a tervek közül, az egy külső FTP szerver és az adatok megjelenítésére HTML oldal. Már az sem volt esélytelen de ehhez képest sok meló lett volna abban.
Ja legóról jut eszembe.
Ez nagyon tetszik.
https://www.kickstarter.com/projects/st ... n=f47a8bd8
Ha lenne olyan gyerekem aki kicsit is érdeklődik az elektronika iránt csinálnék neki ilyent WeMos Belsővel.
Persze ha nincs internet kapcsolat valamiért akkor nem naplóz. Azt ugyan meg lehet csinálni, hogy addig menti az adatokat és amikor van google elérés akkor feltölti, de ennyire nem lesz kidolgozva szerintem. Nem Marsra szállásra készülök.
Nincs meg a kellő jogosultságod a hozzászóláshoz csatolt állományok megtekintéséhez.
Re: Google API hívás - táblázat, grafikon, online adatgyűjtés
Itt a hátránya ugyanaz, mint az előnye:
- külső szolgáltató felhőjétől függsz
Viszont a helyi LOG-olás nem ördögtől való: ha esemény van, akkor a helyi adatokat bányászod úgyis és ott a 3MB filetárhely. FIFO elven meg kezelhető lenne az adathalom... És megjegyzés, hogy már feltöltött adat, vagy még nem, vagy nem is kell feltölteni, mert lokális hibaok (pl. nincs router/AP).
A LEGO esetén a kickstarterben egy pontot zűrösnek érzek: Az UNO illesztés ATMega16U2-jét úgy mutatja be, hogy milyen jó, hogy ott van, mert átkonfigurálható a programja és ne csak egyszerű soros I/O legyen. És mellette ott a Mega328 chip is...
Miért nem tesz be egyszerűen egy Mega32U4-et? Innentől minden problémát megoldana:
- UNO illesztő firmware-ja jogilag ingoványos terület
- 32U4 minden rendelkezésre áll, és a Leonardo/Pro micro kódok azonnal mennek
- drága lesz a két külön IC a sallangjaival:(
A LEDO rendszerből amiket használ - nem a legjobb árúak. És különben is - miért nincsen DUPLO méretben? Egyszerűbb játékokhoz a kis 2-3 évesnek is már oda lehetne adni
- külső szolgáltató felhőjétől függsz
Viszont a helyi LOG-olás nem ördögtől való: ha esemény van, akkor a helyi adatokat bányászod úgyis és ott a 3MB filetárhely. FIFO elven meg kezelhető lenne az adathalom... És megjegyzés, hogy már feltöltött adat, vagy még nem, vagy nem is kell feltölteni, mert lokális hibaok (pl. nincs router/AP).
A LEGO esetén a kickstarterben egy pontot zűrösnek érzek: Az UNO illesztés ATMega16U2-jét úgy mutatja be, hogy milyen jó, hogy ott van, mert átkonfigurálható a programja és ne csak egyszerű soros I/O legyen. És mellette ott a Mega328 chip is...
Miért nem tesz be egyszerűen egy Mega32U4-et? Innentől minden problémát megoldana:
- UNO illesztő firmware-ja jogilag ingoványos terület
- 32U4 minden rendelkezésre áll, és a Leonardo/Pro micro kódok azonnal mennek
- drága lesz a két külön IC a sallangjaival:(
A LEDO rendszerből amiket használ - nem a legjobb árúak. És különben is - miért nincsen DUPLO méretben? Egyszerűbb játékokhoz a kis 2-3 évesnek is már oda lehetne adni
http://www.tavir.hu - a gazda