Мазмұны:

Google Sheets және Google Script көмегімен ауа райы деректері: 7 қадам
Google Sheets және Google Script көмегімен ауа райы деректері: 7 қадам

Бейне: Google Sheets және Google Script көмегімен ауа райы деректері: 7 қадам

Бейне: Google Sheets және Google Script көмегімен ауа райы деректері: 7 қадам
Бейне: По багам как по крышам ► 5 Прохождение Dying Light 2: Stay Human 2024, Шілде
Anonim
Google Sheets және Google Script көмегімен ауа райы туралы мәліметтер
Google Sheets және Google Script көмегімен ауа райы туралы мәліметтер

Бұл Blogtut -та біз Интернетке деректерді жіберуге көмектесетін Adafruit huzzah ESP8266 көмегімен Google парақтарына SHT25 сенсорының көрсеткіштерін жібереміз.

  • Google парағының ұяшығына деректерді жіберу - бұл кестеде онлайн режимінде деректерді сақтаудың өте пайдалы және негізгі әдісі.
  • Қорапты немесе MQTT NODE RED немесе кез келген басқа REST API түрту сияқты арнайы көпірді қолданудың орнына, біз деректерді сенсордан сілтемені пайдаланып сенсордан оңай алатын Google сценарийі арқылы жібереміз. жарияланғаннан кейін Google скрипт қосымшасы
  • Біз деректерді google парағынан, құжаттардан немесе тіпті Google Drive -қа жіберу үшін сценарийді қолдана аламыз.
  • Мұнымен аяқталмай, сіз google парақтарын пайдаланушылармен қалаған түрде бөлісетін кез келген веб-қосымшамен байланыстыра аласыз.
  • Басқа онлайн серверлерге қарағанда мұнда қосымша ақы төленбейді және сіз деректерді пайдаланушы тіркелгісінде максимум 10 ГБ дейін сақтай аласыз және пайдалана аласыз.
  • Ең жақсы күш-жігердің бірі-бұл нақты уақыттағы қосымшаның көмегімен деректерді интернетке қосу туралы білуге болады.
  • Біз деректерді Google парақтарымен икемді түрде бөлісу үшін негізгі қосалқы протоколды орындайтын I2C қосылымын қолданамыз.
  • I2C хаттамалық платформасы сенсордың аппараттық құралдарын қосады және сенсорлық деректерді 8 биттік аппаратта тасымалдау үшін тек 2 сымды тарту арқылы бір уақытта 256 сенсормен жұмыс істейді.

1 -қадам: Жабдық

Adafruit қауырсыны HUZZAH жиынтығы

Adafruit қауырсыны Huzzah тақтасы

Adafruit I2C кіріктірілген және USB адаптері

SHT25 температура мен ылғалдылық сенсоры

I2C кабелі

2 -қадам: заттар қалай жұмыс істейді

ESP8266 арқылы нақты уақыттағы датчиктер деректерінің оқылуын алу және деректерді бұлт платформаларына жіберу өте қарапайым.

Біз Adafruit Huzzah Board пен SHT25 сенсорлық I2C модулі мен I2C кабелі арасындағы екі сымды байланысты құру үшін Arduino IDE -дегі Wire.h кітапханасын қолданамыз.

Ескерту: Электр сымдарының күрделі құрылымын болдырмау үшін мен I2C сенсорын қосуға арналған Adafruit Huzzah үшін I2C адаптерін қолданамын.

Жаңадан келген адам Esp8266 орнатуы үшін ESP8266 қондырғысынан өту керек

Алдымен кітапханаларды инициализациялаңыз:

  • Сым кітапханасы
  • ESP8266WiFi
  • WiFiClientSecure

3 -қадам: Arduino IDE -де I2C модулін орындау процесі

Кітапханаларды инициализациялаудан кейін біз I2C процесін анықтайтын боламыз, ол сенсордың көрсеткіштерін түрлендіреді және талаптарға сәйкес 8 биттік деректерді ауыстырады:

I2C сенсорлық модулі үшін екі сымды I2C протоколында регистрлерді инициализациялаңыз

#анықтайтын Addr 0x40

  • I2C жіберуді бастаңыз және регистрлерді инициализациялаңыз және сенсорлық деректерді оқитын жерден 2 байтты деректерді сұраңыз.
  • Егер 2 байттық деректер қол жетімді болса, онда сенсорлық мәліметтерді оқып шығыңыз және төмендегі формулаларды қолданып, біз қажетті мәндерді түрлендіреміз

қалқыма ылғалдылығы = (((деректер [0] * 256.0 + деректер [1]) * 125.0) / 65536.0) - 6;

float cTemp = (((деректер [0] * 256.0 + деректер [1]) * 175.72) / 65536.0) - 46.85;

float fTemp = (cTemp * 1.8) + 32;

Мәндерді сериялық монитор экранында басып шығарыңыз

4 -қадам: ESP8266 WiFi және Google электрондық кестесімен байланыс

I2C модульдері орындалғаннан кейін біз деректерді Google парақтарына жіберу үшін WiFi кітапханалары мен хост идентификаторын, сондай -ақ API кілттерін қолдану арқылы мәліметтерді алу жолдарын үйренеміз.

  • ESP8266 бойынша бүкіл әлем бойынша WiFi тіркелгі деректерін анықтаңыз, бұл тақтаны интернетке қосуға көмектеседі
  • Біз HTTP клиентін қолданатын боламыз және HTTP жолын қамтамасыз ету үшін HTTPS = 443 протоколын анықтайтын боламыз, себебі сценарий тек қауіпсіз жолда жұмыс істейді.
  • Кодтағы хост мәліметтерін баптаңыз

const char* host = «script.google.com»;

const int httpsPort = 443;

String SCRIPT_ID = «сценарий идентификаторын суретте көрсетілгендей айту»;

Ескерту: сценарий идентификаторы «веб -қосымшалардың URL мекенжайында» көрсетілген, ал Gscript коды жарияланады, төменде көрсетілген идентификаторды көшіріп, қойыңыз және жоғарыдағы пәрмендерді инициалдаңыз

  • Сондай -ақ айнымалысы бар ұшқырлықты қолдана отырып, біз I2C модулінен деректерді алатын және оны URL сценарийіне жіберетін айнымалы мәнді жаһандық инициализациялауды жоспарлап отырмыз, ол ары қарай деректерді тағайындалған жерге жібереді.
  • ESP8266 WiFi кітапханасының көмегімен біз тақтаны интернетке қосамыз
  • Сенсорлық деректер әр 5 секунд сайын жергілікті серверге орналастырылады.

  • URL сценарийінің көмегімен деректер әр 15 секундтан кейін белсенді бетке жарияланған Google сценарийінде орналастырылады.

5 -қадам: GScript редакторы арқылы Google парағын автоматтандыру

Google парағын GScript редакторының көмегімен автоматтандырыңыз
Google парағын GScript редакторының көмегімен автоматтандырыңыз
Google парағын GScript редакторының көмегімен автоматтандырыңыз
Google парағын GScript редакторының көмегімен автоматтандырыңыз
Google парағын GScript редакторының көмегімен автоматтандырыңыз
Google парағын GScript редакторының көмегімен автоматтандырыңыз

Бізде барлығында Google есептік жазбасына кіру үшін Google есептік жазбасы бар

  • ESP8266 қосылған сенсордан алу қажет мәндерді атаңыз
  • Құралдар> Сценарий редакторына өтіңіз
  • Оқиғаларды алу үшін «Doget» функциясын қолданыңыз
  • «Doget» функциясында электронды кестенің API кілтін инициализациялау, сондай -ақ сенсор мәндерін жібергіңіз келетін белсенді парақты қосу.
  • Автоматтандыру функциясының көмегімен кодта көрсетілген мәліметтер жолдар мен бағандарда оңай көрсетіледі.
  • Ақырында, деректерді сақтап, «Жариялау» >> «Веб -қосымшалар ретінде қолдану» түймесін басыңыз.
  • «Жоба нұсқасын» >> «Жаңа» таңдау үшін кез келген өзгеріс болатынын тексеріңіз. «Жаңарту» түймесін басыңыз.

Ағымдағы веб -қосымшаның URL мекенжайы төменде көрсетіледі:

script.google.com/macros/s/ITEMGScript идентификаторы”/exec:

сенсорлардан деректерді алу үшін одан әрі ESP8266 кодында қолданылады

Хостинг байланыстары Біз деректерді gscript редакторында көрсетілген хост идентификаторына қосылу үшін HTTPS алу сұранысын қолданамыз, онда біз Google парағына қосылу үшін өз деректерімізді одан әрі кодтадық.

doGet (e) функциясы {Logger.log (JSON.stringify (e)); // параметрлерді қарау var result = 'Ok'; // табысты қабылдаңыз, егер (e.parameter == 'undefined') {result = 'Параметрлер жоқ'; } басқа {var sheet_id = ''; // Электрондық кесте идентификаторы var sheet = SpreadsheetApp.openById (page_id).getActiveSheet (); var newRow = page.getLastRow () + 1; var rowData = ; } Logger.log (JSON.stringify (rowData)); // астына жаңа жолды жазыңыз var newRange = sheet.getRange (newRow, 1, 1, rowData.length); newRange.setValues ([rowData]); }

6 -қадам: шектеулер:

Шектеулер
Шектеулер
  • Бұл жоба тек I2C сенсорының мәліметтерін Google парақтарында сақтаумен шектелген
  • Біз HTTPS GET сұранысын I2C функциялары арқылы мәндерді алу үшін қолданамыз
  • Біз мәнді жол форматында өзгертуіміз керек, содан кейін деректерді gscript URL сілтемесіне жіберуіміз керек.

7 -қадам: код, несие, анықтама

Github коды:

github.com/varul29/SHT25_GoogleSheets_Goog…

Сілтеме

I2C коды:

Google Script оқулығы:

Ендірілген дүкен:

Оқулық блогы:

Ұсынылған: