Inhoudsopgave:
- Stap 1: Hardware
- Stap 2: Hoe dingen werken
- Stap 3: Uitvoeringsproces I2C-module in Arduino IDE
- Stap 4: ESP8266-verbinding met wifi en Google Spreadsheet
- Stap 5: Automatiseer het Google-blad met GScript Editor
- Stap 6: Beperkingen:
- Stap 7: Code, Credits, Referentie
Video: Weergegevens met Google Spreadsheets en Google Script: 7 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
In deze Blogtut gaan we de metingen van de SHT25-sensor naar Google Spreadsheets sturen met behulp van Adafruit huzzah ESP8266, wat helpt om de gegevens naar internet te sturen.
- Het verzenden van gegevens naar de Google-bladcel is een zeer nuttige en eenvoudige manier om de gegevens online in tabelvorm op te slaan.
- In plaats van een speciale brug te gebruiken, zoals het duwen van een doos of MQTT NODE RED of een ander soort REST API, gaan we de gegevens verzenden met behulp van een google-script dat de gegevens gemakkelijk van de sensor ontvangt met behulp van script Link geleverd door de google script applicatie na publicatie
- We kunnen de scripting gebruiken om de gegevens van Google Sheet, docs of zelfs naar Google Drive te verzenden.
- U hoeft hier niet verder te eindigen, u kunt de Google-bladen verbinden met elke webgebaseerde toepassing waarmee u de gegevens deelt met gebruikers zoals ze dat willen
- Geen extra kosten te betalen in tegenstelling tot de andere online servers hier en u kunt de gegevens tot maximaal 10 GB opslaan in het gebruikersaccount en kunt gebruiken
- Een van de beste inspanningen is dat u gemakkelijk kunt leren hoe u de gegevens met internet kunt verbinden met dit soort realtime-applicaties.
- We gaan de I2C-verbinding gebruiken die het master-slave-protocol uitvoert om de gegevens op een flexibele manier met Google Spreadsheets te delen.
- Het I2C-protocolplatform verbindt de sensorhardware en werkt met ongeveer 256 sensoren tegelijk door slechts 2 bekabelde pull-up te gebruiken om de sensorgegevens in 8 bits hardware over te dragen
Stap 1: Hardware
Adafruit Feather HUZZAH Kits
Adafruit Feather Huzzah-bord
Adafruit I2C geïntegreerd en USB-adapter
SHT25 Temperatuur- en vochtigheidssensor
I2C-kabel
Stap 2: Hoe dingen werken
Het ophalen van de uitlezingen van realtime gegevens van sensoren via ESP8266 en het verzenden van de gegevens naar verschillende cloudplatforms is heel eenvoudig.
We gaan de Wire.h-bibliotheek in Arduino IDE gebruiken voor het creëren van de twee-bedrade communicatie tussen Adafruit Huzzah Board en SHT25-sensor I2C-module en I2C-kabel.
Opmerking: om de complexe bedradingsstructuur te vermijden, ga ik de I2C-adapter voor Adafruit Huzzah gebruiken die is ontworpen om de I2C-sensor aan te sluiten.
Om de nieuweling de Esp8266 in te stellen, moet je de ESP8266-configuratie doorlopen
Initialiseer eerst de bibliotheken:
- Draadbibliotheek
- ESP8266WiFi
- WiFiClientSecure
Stap 3: Uitvoeringsproces I2C-module in Arduino IDE
Na het initialiseren van bibliotheken, zullen we het I2C-proces definiëren dat moet worden gebruikt om de sensormetingen op te halen, deze te converteren en de 8-bits gegevens te verschuiven volgens de vereisten:
Initialiseer de registers in tweedraads I2C-protocol voor de I2C-sensormodule
#define Addr 0x40
- Start I2C-transmissie en initialiseer de registers en vraag om 2 bytes-gegevens van waaruit we de sensorgegevens zullen lezen.
- Als er gegevens van 2 bytes beschikbaar zijn, lees dan de sensorgegevens en met behulp van de onderstaande formules converteren we de gewenste waarden
vlottervochtigheid = (((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;
Print de waarden in een serieel monitorscherm
Stap 4: ESP8266-verbinding met wifi en Google Spreadsheet
Na de uitvoering van I2C-modules gaan we leren hoe de gegevens kunnen worden opgehaald en door WiFi-bibliotheken en host-ID en API-sleutels te gebruiken om de gegevens naar Google Spreadsheets te verzenden.
- Definieer wifi-inloggegevens wereldwijd in ESP8266, wat ons zal helpen om het bord met internet te verbinden
- Omdat we de HTTP-client gaan gebruiken en het HTTPS = 443-protocol definiëren voor het beveiligen van het HTTP-pad, omdat het script alleen in het beveiligde pad werkt.
- Initialiseer de hostgegevens in code
const char* host = "script.google.com";
const int httpsPort = 443;
String SCRIPT_ID = "vermeld de script-ID zoals vermeld in snaps";
Opmerking: Script-ID wordt vermeld in "webapps-URL", terwijl Gscript-code wordt gepubliceerd, kopieer en plak gewoon de onderstaande id en initialiseer in bovenstaande opdrachten
- We gebruiken ook vluchtig met variabele, we gaan de variabele globaal initialiseren die de gegevens van de I2C-module ophaalt en naar het URL-script stuurt dat de gegevens verder naar de bestemming zal sturen.
- Met behulp van ESP8266 WiFi-bibliotheek kunnen we het bord verbinden met internet
-
De sensorgegevens worden na elke 5 seconden gehost op een lokale server.
- Met behulp van het URL-script worden de gegevens na elke 15 seconden gehost op de door Google script gepubliceerde link Actieve pagina.
Stap 5: Automatiseer het Google-blad met GScript Editor
Omdat we allemaal een Google-account hebben om in te loggen op Google Sheet met uw account
- Vermeld de waarden die u nodig hebt om van de sensor te krijgen die is aangesloten op ESP8266
- Ga naar Extra>Scripteditor
- Gebruik de functie "Doget" om de gebeurtenissen te ontvangen
- In de functie "Doget" om de API-sleutel van de spreadsheet te initialiseren en om het actieve blad te verbinden waar u de sensorwaarden naartoe wilt sturen
- Met behulp van de automatiseringsfunctie die in de code wordt vermeld, kunnen de gegevens eenvoudig in rijen en kolommen worden weergegeven.
- Sla ten slotte de gegevens op en klik op "Publiceren">> Klik op "Deploy as web apps"
- Zorg ervoor dat wanneer er een wijziging is om de "projectversie" >> "Nieuw">> te selecteren, op "update" drukt
De huidige web-app-URL wordt als volgt weergegeven:
script.google.com/macros/s/”GScript-ID”/exec:
verder gebruikt in ESP8266-code voor het ophalen van de gegevens van sensoren
Hostingverbindingen We gaan het HTTPS Get-verzoek gebruiken om de gegevens te verbinden met de host-ID die wordt vermeld in de gscript-editor waar we onze gegevens verder hebben gecodeerd om verbinding te maken met Google Sheet.
functie doGet(e) { Logger.log(JSON.stringify(e)); // bekijk parameters var resultaat = 'Ok'; // neem succes aan als (e.parameter == 'undefined') { result = 'No Parameters'; } else { var sheet_id = ''; // Spreadsheet-ID var sheet = SpreadsheetApp.openById(sheet_id).getActiveSheet(); var newRow = sheet.getLastRow() + 1; var rijData = ; } Logger.log(JSON.stringify(rowData)); // Schrijf een nieuwe rij onder var newRange = sheet.getRange (newRow, 1, 1, rowData.length); newRange.setValues([rijData]); }
Stap 6: Beperkingen:
- Dit project is alleen beperkt tot het opslaan van de gegevens van de I2C-sensor in google sheets
- We gebruiken HTTPS GET-verzoek om de waarden te ontvangen via I2C-functies
- We moeten de waarde in tekenreeksindeling wijzigen en vervolgens de gegevens naar de gscript-URL-link sturen.
Stap 7: Code, Credits, Referentie
Github-code:
github.com/varul29/SHT25_GoogleSheets_Goog…
Verwijzing
I2C-code:
Google Script-zelfstudie:https://developers.google.com/apps-script/articles…
Ingesloten winkel:https://dcubestore.com/
Zelfstudieblog:
Aanbevolen:
(IOT-project) Weergegevens ophalen met ESP8266 en Openweather API - Ajarnpa
(IOT-project) Weergegevens ophalen met ESP8266 en Openweather API: in deze instructable gaan we een eenvoudig IOT-project bouwen waarin de weergegevens van onze stad van openweather.com/api worden opgehaald en weergegeven met behulp van verwerkingssoftware
Aangepaste functie toevoegen in Google Spreadsheets: 5 stappen
Aangepaste functie toevoegen in Google Spreadsheets: ik weet zeker dat u op een bepaald moment in uw leven spreadsheetsoftware zoals Microsoft Excel of Google Spreadsheets moest gebruiken. Ze zijn relatief eenvoudig en eenvoudig te gebruiken, maar ook zeer krachtig en gemakkelijk uitbreidbaar.Vandaag zullen we kijken naar Goo
Eenvoudig en gratis Google Maps toevoegen aan uw Google Spreadsheets: 6 stappen
Voeg eenvoudig automatisch en gratis Google Maps toe aan uw Google Spreadsheets: net als veel andere makers heb ik maar weinig GPS-trackerprojecten gebouwd. Vandaag kunnen we snel GPS-punten direct in Google Spreadsheets visualiseren zonder een externe website of API te gebruiken. Het beste van alles is dat het GRATIS is
Gegevens van draadloze trillingen en temperatuur naar Google Spreadsheets verzenden met Node-RED: 37 stappen
Gegevens van draadloze trillingen en temperatuur naar Google Spreadsheets verzenden met Node-RED: Introductie van NCD's Long Range IoT Industrial draadloze trillings- en temperatuursensor, met een bereik tot 3 mijl door het gebruik van een draadloze mesh-netwerkstructuur. Dit apparaat is voorzien van een nauwkeurige 16-bits trillings- en temperatuursensor en
IoT Cat Feeder met behulp van Particle Photon geïntegreerd met Alexa, SmartThings, IFTTT, Google Spreadsheets - Ajarnpa
IoT Cat Feeder met behulp van Particle Photon geïntegreerd met Alexa, SmartThings, IFTTT, Google Spreadsheets: de behoefte aan een automatische kattenvoeder spreekt voor zich. Katten (de naam van onze kat is Bella) kunnen onaangenaam zijn als ze honger hebben en als uw kat is zoals de mijne, zal ze de kom elke keer droog opeten. Ik had een manier nodig om automatisch een gecontroleerde hoeveelheid voedsel af te geven