Turinys:
- 1 žingsnis: Aparatūra
- 2 veiksmas: kaip veikia daiktai
- 3 žingsnis: „I2C“modulio vykdymo procesas „Arduino IDE“
- 4 veiksmas: ESP8266 ryšys naudojant „WiFi“ir „Google“skaičiuoklę
- 5 veiksmas: automatizuokite „Google“lapą naudodami „GScript“redaktorių
- 6 žingsnis: apribojimai:
- 7 žingsnis: kodas, kreditai, nuoroda
Video: Orų duomenys naudojant „Google“skaičiuokles ir „Google“scenarijų: 7 veiksmai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
Šiame „Blogtut“ketiname nusiųsti SHT25 jutiklio rodmenis „Google“lapams, naudodami „Adafruit huzzah ESP8266“, kuris padeda siųsti duomenis į internetą.
- Duomenų siuntimas į „Google“lapo langelį yra labai naudingas ir paprastas būdas išsaugoti duomenis lentelės pavidalu internete.
- Užuot naudoję bet kokį specialų tiltą, pvz., Stumdami dėžutę, MQTT NODE RED ar bet kokią kitą REST API, mes siunčiame duomenis naudodami „Google“scenarijų, kuris lengvai gauna duomenis iš jutiklio, naudojant scenarijaus nuorodą, kurią pateikia „Google“scenarijaus programa po paskelbimo
- Mes galime naudoti scenarijus duomenims siųsti iš „Google“lapo, dokumentų ar net į „Google“diską.
- Nesibaigiant čia, galite susieti „Google“lapus su bet kuria žiniatinklio programa, prie kurios duomenys dalijasi su vartotojais taip, kaip jie norėjo
- Skirtingai nuo kitų čia esančių internetinių serverių, nereikia mokėti jokių papildomų mokesčių, o vartotojo paskyroje galite saugoti ne daugiau kaip 10 GB duomenų ir
- Viena iš geriausių pastangų yra tai, kad galite lengvai sužinoti, kaip prijungti duomenis prie interneto naudojant tokią realaus laiko programą.
- Mes ketiname naudoti I2C ryšį, kuris vykdo pagrindinį-pavaldinį protokolą, kad lanksčiai bendrintume duomenis su „Google“lapais.
- „I2C“protokolo platforma jungia jutiklio aparatinę įrangą ir vienu metu veikia su maždaug 256 jutikliais, naudojant tik 2 laidinį traukimą, kad būtų galima perduoti jutiklių duomenis 8 bitų aparatinėje įrangoje
1 žingsnis: Aparatūra
„Adafruit Feather HUZZAH“rinkiniai
„Adafruit Feather Huzzah“lenta
Integruotas „Adafruit I2C“ir USB adapteris
SHT25 temperatūros ir drėgmės jutiklis
I2C kabelis
2 veiksmas: kaip veikia daiktai
Gauti jutiklių duomenų realiuoju laiku rodmenis per ESP8266 ir siųsti duomenis į skirtingas „Cloud“platformas yra labai paprasta.
Mes naudosime „Wire.h“biblioteką „Arduino IDE“, kad sukurtume du laidinius ryšius tarp „Adafruit Huzzah Board“ir SHT25 jutiklio I2C modulio bei I2C kabelio.
Pastaba: kad išvengčiau sudėtingos laidų struktūros, aš naudosiu „I2C“adapterį „Adafruit Huzzah“, skirtą prijungti I2C jutikliui.
Kad naujokas galėtų nustatyti „Esp8266 yo“, jis turi atlikti ESP8266 sąranką
Pirmiausia inicijuokite bibliotekas:
- Laidų biblioteka
- ESP8266WiFi
- „WiFiClientSecure“
3 žingsnis: „I2C“modulio vykdymo procesas „Arduino IDE“
Inicijuodami bibliotekas, nustatysime I2C procesą, kuris bus naudojamas norint gauti jutiklių rodmenis, kad jie būtų konvertuoti ir perkelti 8 bitų duomenis pagal reikalavimus:
Inicijuokite I2C jutiklio modulio dviejų laidų I2C protokolų registrus
#define Addr 0x40
- Pradėkite I2C perdavimą ir inicijuokite registrus bei paprašykite 2 baitų duomenų, iš kur mes nuskaitysime jutiklio duomenis.
- Jei bus prieinami 2 baitų duomenys, perskaitykite jutiklio duomenis ir naudodami toliau pateiktas formules konvertuojame norimas reikšmes
plūdės drėgmė = (((duomenys [0] * 256,0 + duomenys [1]) * 125,0) / 65536,0) - 6;
plūdė cTemp = (((duomenys [0] * 256,0 + duomenys [1]) * 175,72) / 65536,0) - 46,85;
plūdė fTemp = (cTemp * 1.8) + 32;
Spausdinkite reikšmes serijinio monitoriaus ekrane
4 veiksmas: ESP8266 ryšys naudojant „WiFi“ir „Google“skaičiuoklę
Baigę vykdyti „I2C“modulius, mes sužinosime, kaip gauti duomenis ir naudojant „WiFi“bibliotekas bei pagrindinio kompiuterio ID, taip pat API raktus, kad duomenys būtų siunčiami į „Google“lapus.
- Visame pasaulyje apibrėžkite „WiFi“prisijungimo duomenis ESP8266, kuris padės mums prijungti plokštę prie interneto
- Kadangi ketiname naudoti HTTP klientą ir nustatysime HTTPS = 443 protokolą HTTP keliui apsaugoti, nes scenarijus veiks tik saugiu keliu.
- Inicijuokite pagrindinio kompiuterio duomenis kodu
const char* host = "script.google.com";
const int httpsPort = 443;
String SCRIPT_ID = "paminėti scenarijaus ID, kaip minėta momentinėse nuotraukose";
Pastaba: scenarijaus ID yra minimas „žiniatinklio programų URL“, o „Gscript“kodas bus paskelbtas, tiesiog nukopijuokite ir įklijuokite toliau nurodytą ID ir inicijuokite aukščiau pateiktas komandas
- Taip pat naudodami nepastoviąją su kintamuoju, mes inicijuosime kintamąjį visame pasaulyje, kuris paims duomenis iš I2C modulio ir nusiųs juos į URL scenarijų, kuris toliau siunčia duomenis į paskirties vietą.
- Naudodami „ESP8266 WiFi“biblioteką galėsime prijungti plokštę prie interneto
- Jutiklių duomenys bus talpinami vietiniame serveryje kas 5 sekundes.
- Naudojant URL scenarijų, duomenys bus talpinami „Google“scenarijaus paskelbtoje nuorodoje „Aktyvus puslapis“kas 15 sekundžių.
5 veiksmas: automatizuokite „Google“lapą naudodami „GScript“redaktorių
Kadangi visi turime „Google“paskyrą, kad galėtume prisijungti prie „Google“lapo su jūsų paskyra
- Paminėkite vertes, kurias turite gauti iš jutiklio, prijungto prie ESP8266
- Eikite į Įrankiai> Scenarijų rengyklė
- Norėdami gauti įvykius, naudokite funkciją „Doget“
- Funkcijoje „Doget“inicijuoti skaičiuoklės API raktą ir prijungti aktyvųjį lapą, į kurį norite siųsti jutiklio vertes
- Naudojant automatizavimo funkciją, kuri paminėta kode, kad būtų galima lengvai pateikti duomenis eilutėse ir stulpeliuose.
- Galiausiai išsaugokite duomenis ir spustelėkite „Skelbti“>> Spustelėkite „Diegti kaip žiniatinklio programas“
- Įsitikinkite, kad bet kuriuo metu, kai bus atlikti pakeitimai, pasirinkite „projekto versija“>> „Nauja“>> paspauskite „atnaujinti“
Dabartinis žiniatinklio programos URL bus rodomas taip:
script.google.com/macros/s/”GScript ID “/exec:
toliau naudojamas ESP8266 kode, norint gauti duomenis iš jutiklių
Mes naudosime „HTTPS Get“užklausą, kad sujungtume duomenis su pagrindinio kompiuterio ID, nurodytu „gscript“redaktoriuje, kur toliau kodavome savo duomenis, kad galėtume prisijungti prie „Google“lapo.
funkcija doGet (e) {Logger.log (JSON.stringify (e)); // peržiūrėti parametrus var result = 'Gerai'; // prisiimti sėkmę, jei (e.parameter == 'undefined') {result = 'Nėra parametrų'; } else {var sheet_id = ''; // Skaičiuoklės ID var sheet = SpreadsheetApp.openById (sheet_id).getActiveSheet (); var newRow = sheet.getLastRow () + 1; var rowData = ; } Logger.log (JSON.stringify (rowData)); // Parašykite naują eilutę žemiau var newRange = sheet.getRange (newRow, 1, 1, rowData.length); newRange.setValues ([rowData]); }
6 žingsnis: apribojimai:
- Šis projektas skirtas tik I2C jutiklio duomenims saugoti „Google“lapuose
- Mes naudojame HTTPS GET užklausą, kad gautume vertes per I2C funkcijas
- Turime pakeisti reikšmę eilutės formatu ir tada siųsti duomenis į gscript URL nuorodą.
7 žingsnis: kodas, kreditai, nuoroda
„Github“kodas:
github.com/varul29/SHT25_GoogleSheets_Goog…
Nuoroda
I2C kodas:
„Google Script“pamoka:
Įterpta parduotuvė:
Pamokos dienoraštis:
Rekomenduojamas:
Belaidžio vibracijos ir temperatūros duomenų siuntimas į „Google“skaičiuokles naudojant „Node-RED“: 37 veiksmai
Belaidžio vibracijos ir temperatūros duomenų siuntimas į „Google“skaičiuokles naudojant „Node-RED“: pristatome „NCD“didelio nuotolio „IoT Industrial“belaidį vibracijos ir temperatūros jutiklį, kuris gali pasigirti iki 2 mylių atstumu naudojant belaidžio tinklo tinklo struktūrą. Šiame įrenginyje yra tikslus 16 bitų vibracijos ir temperatūros jutiklis
Svorio skalės duomenys „Google“lape [nulaužta]: 4 veiksmai
Svorio skalės duomenys „Google“lape [nulaužta]: tai įsilaužimas, kuris buvo nukreiptas prieš paprastą ne rinkos svorio skalės produktą, kuris vėliau buvo naudojamas duomenims perkelti į „Google“lapą, kad būtų galima stebėti viršvalandžių svorį Procesas yra paprastas, kaip vartotojas jo svoris stovint ant svarstyklių
Kaip sukurti orų stotį naudojant „XinaBox“ir „Ubidots“naudojant HTTP: 7 veiksmai
Kaip sukurti orų stotį naudojant „XinaBox“ir „Ubidots“naudojant HTTP: Sužinokite, kaip sukurti savo orų stotį „Ubidots“naudojant „XinaBox xChips“(IP01, CW01 ir SW01) ESP8266 Core ir „Wi-Fi“modulis („xChip CW01“) leidžia vartotojams siųsti duomenis iš „XinaBox“modulinių „xChips“į debesį. Šiuos duomenis galima stebėti nuotoliniu būdu
Tik „pasidaryk pats“duomenys B tipo USB: 3 veiksmai
Tik „pasidaryk pats“duomenys, B tipo USB: Tai gali būti naudinga daugeliu skirtingų aplinkybių ir tai gana paprastas modas. Aš asmeniškai kuriu „Prusa i3“ir nenoriu, kad jis būtų nuolat įjungtas, tačiau taip patogiau tiesiog palikti jį prijungtą prie galinės dalies
„Picaxe“programavimas naudojant „Shell“scenarijų („Linux“): 5 veiksmai
„Picaxe“programavimas per „Shell“scenarijų („Linux“): paprastas aprašymas, parodantis, kaip sukurti apvalkalo scenarijų, kuris įkelia programą iš „ftp“svetainės, tada ją sukompiliuos, tada atsisiųs į „picaxe“. (Tai taip pat mano pirmasis pamokoma)