Innehållsförteckning:

CloudyData - ESP8266 till Google Sheets Made Simple: 10 steg (med bilder)
CloudyData - ESP8266 till Google Sheets Made Simple: 10 steg (med bilder)

Video: CloudyData - ESP8266 till Google Sheets Made Simple: 10 steg (med bilder)

Video: CloudyData - ESP8266 till Google Sheets Made Simple: 10 steg (med bilder)
Video: The Complete Guide to Google Forms - Online Survey and Data Collection Tool! 2024, Juli
Anonim
CloudyData - ESP8266 till Google Sheets Made Simple
CloudyData - ESP8266 till Google Sheets Made Simple

Jag har letat efter lagring av molndata under de senaste åren: det är intressant att övervaka data från alla typer av sensorer, men det är mer intressant om dessa data är tillgängliga överallt utan några lagringssvårigheter som att använda SD -kort eller liknande, i lokal lagring. Jag brukade lokalt lagra vinddata för SD -kort för flera år sedan, innan IoT och molntjänster började vara enkla att använda: nu är ett steg bortom möjligt med särskilda svårigheter, även om du inte är en IoT -expert eller en utvecklare.

I den här instruktionsboken kommer jag att beskriva hur jag övervakar min luftkvalitet hemma, särskilt med hänvisning till damm och partikelkoncentration nära min 3D -skrivare, försöker förstå om 3D -utskriftsprocessen är farlig när det gäller PM2.5, och hur jag använda Google Kalkylark för att lagra data, utan att någon tredje parts tjänst behövs.

Steg 1: Allmänt mål

Allmänt mål
Allmänt mål

Jag vill veta om det kan vara farligt att bo i närvaro av en 3D -skrivare.

För att göra detta behöver jag data, och data måste lagras i molnet.

Jag vill använda Google Kalkylark eftersom det är enkelt och effektivt.

Jag vill också ha integritet: så att dela data med Google är inte mitt första val, men det är bättre än att använda tjänster från tredje part, som många bloggare brukar göra.

Att använda Google Kalkylark är ett steg mot att ladda upp data till en personlig lokal lagring som Nextcloud på en enkel NAS: detta kommer att beskrivas i en framtida instruerbar.

Steg 2: Första steget: Sensorer

Första steget: Sensorer
Första steget: Sensorer
Första steget: Sensorer
Första steget: Sensorer

Jag använder två sensorer för att övervaka min hemkvalitet:

  • en Nova PM Sensor SDS011 luftkvalitetsdetektionssensormodul, en bra maskinvara, relativt enkel att använda med Arduino och liknande brädor. Du kan använda den med egen programvara (endast Windows!:-() och USB-adapter, eller ansluta till Arduino med bibliotek. Många info hittar du här:

    • inovafitness.com/en/a/chanpinzhongxin/95.ht…
    • www-sd-nf.oss-cn-beijing.aliyuncs.com/%E5%…
    • aqicn.org/sensor/sds011/
  • en SHT30 -sköld från Wemos, för Wemos D1 mini: Jag använde en v1.0.0 -version, nuvarande version är v2.1.0 men de har samma fotavtryck, samma funktioner

    wiki.wemos.cc/products:d1_mini_shields:sht…

Steg 3: Andra steget: Anslutning till mikrokontroller

Andra steget: Anslutning till mikrokontroller
Andra steget: Anslutning till mikrokontroller

Wemos D1 mini är förmodligen det bästa sättet att prototypera kring ESP8266: microUSB -kontakt, inbyggd ledning, fina skärmar redo att använda tillgängliga.

Jag anslöt SHT30 -skärmen på Wemos D1 mini direkt (ta hand om orienteringen!), Sedan kopplade jag Nova Air Sensor till Wemos D1 mini enligt följande:

Wemos GND -stift Nova Air -sensor GND

Wemos 5V stift Nova Air sensor 5V

Wemos D5 -stift (RX -stift) Nova Air -sensor TX

Wemos D6 -stift (TX -stift) Nova Air -sensor RX

Du kan titta här för mer information:

www.hackair.eu/docs/sds011/

www.zerozone.it/tecnologia-e-sicurezza/nov…

www.instructables.com/id/Make-one-PM25-mon…

Steg 4: Tredje steget: Skapa en skiss

Nu måste du bygga en skiss: vi har tur, några killar utvecklade specifika bibliotek för Nova Air Sensor så att du enkelt kan skriva ner din programvara.

Mine använder också SHT30 -biblioteket för att mäta och ladda upp temperatur- och luftfuktighetsdata.

Jag remixade en skiss jag hittade online, särskilt den från nishant_sahay7, vars handledning är komplett och full av information. Du hittar den här.

Jag använde det här biblioteket:

Jag kommer bara att kommentera några rader i skissen jag skapade:

rad 76-77: vaknar upp dammsensorn ett tag, sedan somnar den igen, eftersom datablad säger att den är avsedd att fungera i cirka 8000 timmar, vilket är mer än tillräckligt, men inte oändligt

sds.wakeup (); fördröjning (30000); // arbetar 30 sekunder

rad 121: data som skickas är temperatur, luftfuktighet, PM2.5 och PM10

sendData (t, h, pm2_5, pm10);

rad 122-123: Jag använder inte ESP.deepSleep, jag ska försöka i framtiden; nu räcker det med en enkel fördröjning (90000) för att data ska skickas var 30: e + 90: e = 2 minuter, mer eller mindre

//ESP.deepSleep(dataPostDelay);

fördröjning (90000);

rad 143:

detta är den viktigaste raden, ordningen du skapar String_url för att ladda upp data måste vara densamma som du kommer att använda i Google Script (se nästa steg)

String url = "/makron/s/" + GAS_ID + "/exec? Temperature =" + string_x + "& fukt =" + string_y + "& PM2.5 =" + string_z + "& PM10 =" + string_k;

Steg 5: Fjärde steget: Förbereda Google Sheet och dess skript

Fjärde steget: Förbereda Google Sheet och dess skript
Fjärde steget: Förbereda Google Sheet och dess skript
Fjärde steget: Förbereda Google Sheet och dess skript
Fjärde steget: Förbereda Google Sheet och dess skript
Fjärde steget: Förbereda Google Sheet och dess skript
Fjärde steget: Förbereda Google Sheet och dess skript

Poäng går till nishant_sahay7, som jag sa.

Jag publicerar helt enkelt hans verk här igen och lägger till några tips för framtida förbättringar och modding:

  1. Konfigurera Google Kalkylark

    1. Öppna Google Drive och skapa ett nytt kalkylblad och ge det ett namn, ge sedan fälten med de parametrar du vill definiera.
    2. Blad -ID visas i figur 2
    3. Gå till Tools-Script Editor (figur 3)
    4. Ge namnet samma som för kalkylblad (figur 4)
    5. Välj koden härifrån och klistra in i skriptredigeringsfönstret (figur 5)

      Ersätt var sheet_id med ditt kalkylblad -ID från steg 2

    6. Gå till Publicera - Distribuera som webbapp (figur 6)
    7. Ändra åtkomsttypen till vem som helst, till och med anonym, och distribuera (figur 7)
    8. Gå till granskningstillstånd (figur 8)
    9. Välj Avancerat (figur 9)
    10. Välj Gå till (filnamn) och tillåt sedan (figur 10)
    11. Kopiera den aktuella webbappens URL och klicka på OK (figur 11)
  2. Skaffa Google Script ID

    • Webbadressen som kopieras kommer att vara ungefär: https://script.google.com/macros/s/AKfycbxZGcTwqe… ovanstående länk är i form av: https://script.google.com/macros/s/AKfycbxZGcTwqe…/exec Så här är Google Script ID: AKfycbxZGcTwqeDgF3MBMGj6FJeYD7mcUcyo2V6O20D6tRlLlP2M_wQ Det kommer att användas för att överföra data till Google Sheets: Exempel:

      script.google.com/macros/s/AKfycbxZGcTwqeD…

      Om du klistrar in länken ovan i ett nytt fönster och trycker på enter skickas data till Google Sheet och ett bekräftelsemeddelande visas i fönstret. Data som skickas blir

      • temperatur = 1
      • luftfuktighet = 2
      • PM2,5 = 3
      • PM10 = 33,10
  3. Ändra dina behov

    du måste ändra Google Script OCH Arduino -skiss i enlighet därmed för att lägga till eller ta bort värden och kolumner: jämför figur 5 och figur 5b

Steg 6: Femte steget: Anslut alla tillsammans

Femte steget: Anslut alla tillsammans
Femte steget: Anslut alla tillsammans

Nu har du en enhet som skickar data till Google Kalkylark, ett Google -skript som kan ta emot och tilldela data, en webbläsare räcker för att visa data, på dator eller smartphone eller vad du vill.

Det bästa vore att hantera lite dessa data, för att visa bara några få som behövs.

Steg 7: Sjätte steget: Grafiska data

Sjätte steget: Grafiska data
Sjätte steget: Grafiska data
Sjätte steget: Grafiska data
Sjätte steget: Grafiska data

För att få en enkel men intressant och användbar panel organiserade jag mina data så här:

  1. det ursprungliga Google -bladet, det huvudsakliga, som används för att hämta sitt ID för att skriva in i Google Script, måste vara orört och behålla sin ordning
  2. Jag skapade två andra blad efter det huvudsakliga
    1. en för att extrahera bara några få data från hela grejerna, till exempel de senaste 24 timmarna För att extrahera data använde jag SORT och QUERY -funktionen, infogade i den första cellen med extraherad data

      = SORTERA (FRÅGA (Foglio1! A2: Z, "ordning med A desc -gräns 694"), 1, 1)

    2. den andra för att skapa grafer för att visa värden, vilket gör en enkel panel

Steg 8: Sjunde steget: Analysera data

Sjunde steget: Analysera data
Sjunde steget: Analysera data

Jag gjorde några analyser och jag kan säga att det nu inte borde vara någon fara med 3D -skrivare (material: PLA) när det gäller PM2.5 och PM10., bara ett tag: Jag tror att detta beror på tidigare avlagrat damm på 3D -skrivarsängen, så att när effektorfläkten når plattan börjar den flyga runt. Efter några minuter är damm borta eftersom fläktarna fortsätter att blåsa och PM2.5- och PM10 -värdena sjunker till lägre värden.

Ytterligare data och analyser behövs faktiskt.

Rekommenderad: