Mündəricat:

Google Cədvəllər və Google Script istifadə edərək hava məlumatları: 7 addım
Google Cədvəllər və Google Script istifadə edərək hava məlumatları: 7 addım

Video: Google Cədvəllər və Google Script istifadə edərək hava məlumatları: 7 addım

Video: Google Cədvəllər və Google Script istifadə edərək hava məlumatları: 7 addım
Video: CS50 2013 - Week 9 2024, Iyul
Anonim
Google Cədvəl və Google Script istifadə edərək Hava Məlumatları
Google Cədvəl və Google Script istifadə edərək Hava Məlumatları

Bu Blogtutda, məlumatların internetə göndərilməsinə kömək edən Adafruit huzzah ESP8266 istifadə edərək, SHT25 sensorunun oxunuşlarını google vərəqlərinə göndərəcəyik.

  • Google hesabatı hüceyrəsinə məlumat göndərmək, məlumatları onlayn olaraq cədvəl şəklində saxlamağın çox faydalı və əsas yoludur.
  • Bir qutu və ya MQTT NODE RED və ya başqa bir növ REST API itələmək kimi hər hansı bir xüsusi körpü istifadə etmək əvəzinə, məlumatları sensor tərəfindən verilən skript Linkindən istifadə edərək asanlıqla sensordan əldə edən Google skriptindən istifadə edərək göndərəcəyik. dərc edildikdən sonra Google skript tətbiqi
  • Google hesabatı, sənədlər və ya hətta Google sürücüsünə məlumat göndərmək üçün skriptdən istifadə edə bilərik.
  • Yalnız burada bitmədən google vərəqlərini məlumatları istədikləri şəkildə istifadəçilərlə paylaşan hər hansı bir veb əsaslı tətbiq ilə bağlaya bilərsiniz.
  • Buradakı digər onlayn serverlərdən fərqli olaraq əlavə ödəniş edilməyəcək və istifadəçi hesabında maksimum 10 GB -a qədər məlumat saxlaya və istifadə edə bilərsiniz.
  • Ən yaxşı səylərdən biri, bu cür real vaxt tətbiqi ilə məlumatları internetə asanlıqla bağlamağı öyrənməkdir.
  • Verilənləri google hesabatları ilə çevik şəkildə paylaşmaq üçün master-slave protokolunu yerinə yetirən I2C bağlantısından istifadə edəcəyik.
  • I2C protokolu platforması, sensor aparatını birləşdirir və sensor məlumatlarını 8 bitlik aparata ötürmək üçün yalnız 2 simli çəkmə istifadə edərək bir anda təxminən 256 sensorla işləyir.

Addım 1: Avadanlıq

Adafruit Tüy HUZZAH Kitləri

Adafruit Lələk Huzzah Lövhəsi

Adafruit I2C inteqrasiya olunmuş və USB adapter

SHT25 Temperatur və Nəmlik Sensoru

I2C Kabeli

Addım 2: Şeylərin Necə Çalışdığı

Sensorların ESP8266 vasitəsilə real vaxt məlumatlarının oxunması və məlumatların fərqli Bulud platformalarına göndərilməsi çox sadədir.

Adafruit Huzzah Board ilə SHT25 sensor I2C modulu və I2C kabeli arasında iki simli əlaqə yaratmaq üçün Arduino IDE -də Wire.h kitabxanasından istifadə edəcəyik.

Qeyd: Mürəkkəb kabel quruluşundan qaçmaq üçün I2C sensorunu birləşdirmək üçün hazırlanmış Adafruit Huzzah üçün I2C adapterindən istifadə edəcəyəm.

Yeni başlayanın Esp8266 qurmaq üçün ESP8266 quruluşundan keçməsi lazımdır

Əvvəlcə kitabxanaları işə salın:

  • Tel kitabxana
  • ESP8266 Wi -Fi
  • WiFiClientSecure

Addım 3: Arduino IDE -də I2C Modulu İcra Prosesi

Kitabxanaları işə saldıqdan sonra, sensor oxunuşlarını çevirmək və tələblərə uyğun olaraq 8 bitlik məlumatları köçürmək üçün istifadə ediləcək I2C prosesini təyin edəcəyik:

I2C sensor modulu üçün qeydləri iki telli I2C protokolunda başladın

#təyin et Addr 0x40

  • I2C ötürülməsinə başlayın və qeydləri işə salın və sensor məlumatlarını oxuyacağımız yerdən 2 baytlıq məlumat istəyin.
  • 2 bayt məlumat olacaqsa, sensor məlumatlarını oxuyun və aşağıda göstərilən düsturlardan istifadə edərək istədiyiniz dəyərləri çeviririk

float rütubət = (((data [0] * 256.0 + data [1]) * 125.0) / 65536.0) - 6;

float cTemp = (((data [0] * 256.0 + data [1]) * 175.72) / 65536.0) - 46.85;

float fTemp = (cTemp * 1.8) + 32;

Dəyərləri serial monitor ekranında çap edin

Addım 4: WiFi və Google elektron cədvəli ilə ESP8266 bağlantısı

I2C modullarının icrasından sonra, məlumatları necə əldə etməyi öyrənəcəyik və məlumatları google vərəqlərinə göndərmək üçün WiFi kitabxanalarından və host idindən, həmçinin API düymələrindən istifadə edəcəyik.

  • Lövhəni internetə bağlamağımıza kömək edəcək ESP8266 -da qlobal olaraq WiFi etimadnaməsini təyin edin
  • HTTP müştəri istifadə edəcəyimiz və HTTP yolunu təmin etmək üçün HTTPS = 443 protokolunu təyin edəcəyik, çünki skript yalnız etibarlı yolda işləyəcək.
  • Ev sahibi məlumatlarını kodda başladın

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

const int httpsPort = 443;

String SCRIPT_ID = "snapsda qeyd edildiyi kimi skript identifikatorunu qeyd edin";

Qeyd: Gscript kodu dərc olunarkən, skript identifikatoru "veb tətbiqlərinin URL -də" qeyd olunur, sadəcə aşağıda göstərilən id -ni kopyalayın və yapışdırın və yuxarıdakı əmrlərdə başlayın

  • Dəyişən ilə uçucu istifadə edərək, I2C modulundan məlumatları götürən və məlumatları təyinat yerinə göndərəcək URL skriptinə göndərən qlobal miqyasda dəyişənləri işə salacağıq.
  • ESP8266 WiFi Kitabxanasından istifadə edərək lövhəni internetə qoşa biləcəyik
  • Sensor məlumatları hər 5 saniyədən sonra yerli bir serverə yerləşdiriləcək.
  • URL skriptinin köməyi ilə məlumatlar hər 15 saniyədən sonra Aktiv səhifədə yayımlanan google skriptində yerləşdiriləcək.

Addım 5: GScript Redaktorundan istifadə edərək Google Vərəqini avtomatlaşdırın

GScript Redaktorundan istifadə edərək Google Vərəqini avtomatlaşdırın
GScript Redaktorundan istifadə edərək Google Vərəqini avtomatlaşdırın
GScript Redaktorundan istifadə edərək Google Vərəqini avtomatlaşdırın
GScript Redaktorundan istifadə edərək Google Vərəqini avtomatlaşdırın
GScript Redaktorundan istifadə edərək Google Vərəqini avtomatlaşdırın
GScript Redaktorundan istifadə edərək Google Vərəqini avtomatlaşdırın

Hamımızın hesabınızla google hesabına daxil olmaq üçün bir Google hesabımız olduğu üçün

  • ESP8266 ilə əlaqəli sensordan əldə etməli olduğunuz dəyərləri qeyd edin
  • Alətlər> Skript Redaktoru bölməsinə keçin
  • Tədbirləri qəbul etmək üçün "Doget" funksiyasından istifadə edin
  • "Doget" funksiyasında elektron cədvəlin API açarını işə salmaq və həmçinin sensor dəyərlərini göndərmək istədiyiniz Aktiv Vərəqə qoşulmaq
  • Kodda qeyd olunan avtomatlaşdırma funksiyasının köməyi ilə məlumatları satır və sütunlarda asanlıqla təmsil etmək.
  • Nəhayət, məlumatları saxla və "Yayımla" >> "Veb tətbiqləri olaraq yerləşdir" düyməsini basın.
  • "Layihə versiyası" >> "Yeni" >> "yeniləmə" düyməsini seçmək üçün hər hansı bir dəyişiklik olacağından əmin olun.

Cari veb tətbiq URL -si aşağıdakı kimi görünəcək:

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

Sensorlardan məlumat əldə etmək üçün ESP8266 kodunda daha da istifadə olunur

Google hesabatı ilə əlaqə qurmaq üçün məlumatlarımızı daha sonra kodladığımız gscript redaktorunda qeyd olunan ana identifikatoru ilə əlaqələndirmək üçün HTTPS Alma sorğusundan istifadə edəcəyik.

doGet (e) funksiyası {Logger.log (JSON.stringify (e)); // parametrlərə baxmaq var result = 'Ok'; // müvəffəqiyyət götürsək (e.parameter == 'undefined') {result = 'Parametrlər yoxdur'; } başqa {var sheet_id = ''; // Elektron cədvəl kimliyi var sheet = SpreadsheetApp.openById (sheet_id).getActiveSheet (); var newRow = sheet.getLastRow () + 1; var rowData = ; } Logger.log (JSON.stringify (rowData)); // Aşağıya yeni satır yazın var newRange = sheet.getRange (newRow, 1, 1, rowData.length); newRange.setValues ([rowData]); }

Addım 6: Məhdudiyyətlər:

Məhdudiyyətlər
Məhdudiyyətlər
  • Bu layihə yalnız Google hesabatlarında I2C sensorunun məlumatlarını saxlamaqla məhdudlaşır
  • Dəyərləri I2C funksiyaları vasitəsi ilə almaq üçün HTTPS GET sorğusundan istifadə edirik
  • Dəyərini string formatında dəyişdirməliyik və sonra məlumatları gscript URL bağlantısına göndərməliyik.

Addım 7: Kod, Kreditlər, İstinad

Github Kodu:

github.com/varul29/SHT25_GoogleSheets_Goog…

İstinad

I2C Kodu:

Google Script Təlimatı:

Daxili Mağaza:

Dərslik Blogu:

Tövsiyə: