Sisukord:

Ilmaandmed Google'i arvutustabelite ja Google'i skripti abil: 7 sammu
Ilmaandmed Google'i arvutustabelite ja Google'i skripti abil: 7 sammu

Video: Ilmaandmed Google'i arvutustabelite ja Google'i skripti abil: 7 sammu

Video: Ilmaandmed Google'i arvutustabelite ja Google'i skripti abil: 7 sammu
Video: 9 лучших плагинов ChatGPT для бизнеса и маркетинга 2024, Juuli
Anonim
Ilmaandmed Google'i arvutustabelite ja Google Scripti abil
Ilmaandmed Google'i arvutustabelite ja Google Scripti abil

Selles Blogtutis saadame SHT25 anduri näidud Google'i lehtedele, kasutades Adafruit huzzah ESP8266, mis aitab andmeid Internetti saata.

  • Andmete saatmine Google'i lehe lahtrisse on palju kasulik ja lihtne viis, mis salvestab andmed veebis tabelina.
  • Selle asemel, et kasutada mis tahes spetsiaalset silda, näiteks kasti lükkamist või MQTT NODE RED või mis tahes muud tüüpi REST API -d, saadame andmed Google'i skripti abil, mis võtab andmed andurilt hõlpsalt vastu, kasutades skripti linki, mille pakub google'i skriptirakendus pärast avaldamist
  • Skriptide abil saame andmeid saata Google'i lehelt, dokumentidest või isegi Google Drive'i.
  • Lihtsalt ärge lõpetage siin, võite ühendada Google'i lehed mis tahes veebipõhise rakendusega, millega jagada andmeid kasutajatega nii, nagu nad soovisid
  • Erinevalt teistest siinsetest veebiserveritest ei pea lisatasusid maksma ning saate kasutajakontole salvestada kuni 10 GB andmeid ja kasutada
  • Üks parimaid jõupingutusi on see, et saate teada, kuidas seda tüüpi reaalajas rakendusega hõlpsalt andmeid Internetiga ühendada.
  • Kasutame I2C ühendust, mis täidab ülem-alam protokolli, et jagada andmeid paindlikult Google'i lehtedega.
  • I2C protokolliplatvorm ühendab anduri riistvara ja töötab korraga umbes 256 anduriga, kasutades anduriandmete edastamiseks 8 -bitises riistvaras ainult 2 juhtmega tõmmet

Samm: riistvara

Adafruit Feather HUZZAH komplektid

Adafruit Feather Huzzah juhatus

Adafruit I2C integreeritud ja USB -adapter

SHT25 temperatuuri ja niiskuse andur

I2C kaabel

2. toiming: kuidas asjad toimivad

Andurite reaalajas andmete lugemise toomine ESP8266 kaudu ja andmete saatmine erinevatele pilveplatvormidele on palju lihtsam.

Kasutame Wire.h raamatukogu Arduino IDE -s, et luua kahe traadiga side Adafruit Huzzah Boardi ja SHT25 anduri I2C mooduli ning I2C kaabli vahel.

Märkus: keeruka juhtmestiku vältimiseks kasutan I2C -adapterit Adafruit Huzzah jaoks, mis on mõeldud I2C -anduri ühendamiseks.

Algaja Esp8266 seadistamiseks peab läbima ESP8266 seadistuse

Esmalt initsialiseerige raamatukogud:

  • Traatraamatukogu
  • ESP8266WiFi
  • WiFiClientSecure

Samm: I2C mooduli täitmisprotsess Arduino IDE -s

Pärast raamatukogude lähtestamist määratleme I2C protsessi, mida kasutatakse andurite näitude teisendamiseks ja 8 -bitiste andmete nihutamiseks vastavalt nõuetele:

Vormistage registrid kahe juhtmega I2C protokollis I2C andurimooduli jaoks

#define Addr 0x40

  • Alustage I2C edastamist ja vormindage registrid ning taotlege 2 baiti andmeid, kust loeme andurite andmeid.
  • Kui saadaval on 2 baiti andmeid, lugege anduri andmeid ja kasutades allpool toodud valemeid, teisendame soovitud väärtused

ujuki niiskus = (((andmed [0] * 256,0 + andmed [1]) * 125,0) / 65536,0) - 6;

ujuk cTemp = (((andmed [0] * 256,0 + andmed [1]) * 175,72) / 65536,0) - 46,85;

ujuk fTemp = (cTemp * 1,8) + 32;

Printige väärtused jadamonitori ekraanile

Samm: ESP8266 ühendus WiFi ja Google'i arvutustabeli abil

Pärast I2C -moodulite täitmist õpime, kuidas andmeid hankida ning WiFi -teekide ja hosti -ID ning API -võtmete abil andmete Google'i lehtedele saatmiseks.

  • Määrake ESP8266 -s ülemaailmselt WiFi -mandaat, mis aitab meil tahvlit Internetiga ühendada
  • Kuna me hakkame kasutama HTTP klienti ja määratleme HTTPS = 443 protokolli HTTP tee kaitsmiseks, kuna skript töötab ainult turvalisel teel.
  • Vormindage hosti andmed koodis

const char* host = "script.google.com";

const int httpsPort = 443;

String SCRIPT_ID = "maini skripti ID -d, nagu on mainitud";

Märkus. Skripti ID on mainitud „veebirakenduste URL -is”, samal ajal kui Gscripti kood avaldatakse, lihtsalt kopeerige ja kleepige allpool nimetatud ID ja vormindage ülaltoodud käskudes

  • Kasutades ka muutujaga volatile, lähtestame muutuja globaalselt, mis tõmbab andmed I2C moodulist ja saadab need URL -i skriptile, mis edastab andmed sihtkohta.
  • Kasutades ESP8266 WiFi raamatukogu, saame plaadi Internetiga ühendada
  • Anduri andmed hostitakse iga 5 sekundi järel kohalikku serverisse.
  • URL -i skripti abil hostitakse andmed iga 15 sekundi järel Google'i skripti avaldatud lingile Aktiivne leht.

5. samm: automatiseerige Google'i leht GScripti redigeerija abil

Google'i lehe automatiseerimine GScripti redigeerija abil
Google'i lehe automatiseerimine GScripti redigeerija abil
Google'i lehe automatiseerimine GScripti redigeerija abil
Google'i lehe automatiseerimine GScripti redigeerija abil
Google'i lehe automatiseerimine GScripti redigeerija abil
Google'i lehe automatiseerimine GScripti redigeerija abil

Kuna meil kõigil on Google'i konto, et oma kontoga Google'i lehele sisse logida

  • Märkige väärtused, mida peate saama ESP8266 -ga ühendatud andurilt
  • Avage Tööriistad> Skriptiredaktor
  • Sündmuste vastuvõtmiseks kasutage funktsiooni „Doget”
  • Funktsioonis „Doget” arvutustabeli API võtme lähtestamiseks ja aktiivse lehe ühendamiseks sinna, kuhu soovite anduri väärtused saata
  • Koodis mainitud automaatikafunktsiooni abil on lihtne ridade ja veergude andmeid esitada.
  • Lõpuks salvestage andmed ja klõpsake nuppu „Avalda” >> Klõpsake „Juuruta veebirakendustena”
  • Veenduge alati, kui muudatusi tehakse, et valida „projekti versioon” >> „Uus” >> vajutage nuppu „Värskenda”

Praegune veebirakenduse URL kuvatakse järgmiselt.

script.google.com/macros/s/”GScripti ID”/exec:

kasutatakse täiendavalt ESP8266 koodis andurite andmete toomiseks

Kasutame HTTPS -i hankimise taotlust andmete ühendamiseks gscripti redaktoris mainitud hosti ID -ga, kus me kodeerisime oma andmed Google'i lehega ühenduse loomiseks edasi.

funktsioon doGet (e) {Logger.log (JSON.stringify (e)); // vaata parameetreid var result = 'Ok'; // eeldada edu, kui (e.parameter == 'undefined') {result = 'Parameetreid pole'; } else {var sheet_id = ''; // Arvutustabeli ID var sheet = SpreadsheetApp.openById (sheet_id).getActiveSheet (); var newRow = sheet.getLastRow () + 1; var rowData = ; } Logger.log (JSON.stringify (rowData)); // Kirjuta uus rida alla var newRange = sheet.getRange (newRow, 1, 1, rowData.length); newRange.setValues ([reaandmed]); }

6. samm: piirangud:

Piirangud
Piirangud
  • See projekt piirdub ainult I2C anduri andmete salvestamisega Google'i lehtedesse
  • Kasutame HTTPS GET päringut väärtuste saamiseks I2C funktsioonide kaudu
  • Peame muutma väärtust stringivormingus ja seejärel saatma andmed gscripti URL -i lingile.

7. samm: kood, autorid, viide

Githubi kood:

github.com/varul29/SHT25_GoogleSheets_Goog…

Viide

I2C kood:

Google'i skripti õpetus:

Sisseehitatud pood:

Õpetusblogi:

Soovitan: