Innehållsförteckning:

Handhållen väderstation: 4 steg
Handhållen väderstation: 4 steg

Video: Handhållen väderstation: 4 steg

Video: Handhållen väderstation: 4 steg
Video: Mars Curiosity Rover Scientific Instruments Explained in Detail 2024, Juli
Anonim
Handhållen väderstation
Handhållen väderstation
Handhållen väderstation
Handhållen väderstation
Handhållen väderstation
Handhållen väderstation

I den här instruktionsboken kommer vi att använda en Arduino, en oled display och en SparkFun miljösensorkombination med CCS811 och BME280 sensorer ombord för att bygga en handhållen enhet som mäter temperatur, luftfuktighet, TVOC -nivåer, barometertryck och koldioxidnivåer. Du kan använda vilken Arduino som helst med den angivna koden, men jag använder en SparkFun Qwiic pro micro. Om du är nybörjare föreslår jag att du använder samma delar som jag använder, bara för att hålla sakerna enkla. Jag valde SparkFun Qwiic pro micro -kortet för sin lilla storlek och Qwiic -kontakten, vilket gör det enkelt att ansluta dina komponenter. Om du använder en annan bräda, se till att köpa en Qwiic -hatt, phat eller skärm för att passa din bräda.

Tillbehör:

  • SparkFun Environmental Combo Breakout -
  • SparkFun Micro OLED Breakout -
  • SparkFun Qwiic Pro Micro -
  • Qwiic -kabel, 50 mm -
  • Projektlåda, storlek på dina komponenter, jag använder cirka 3 x 2 x 1 -
  • Valfritt: Om du använder Qwiic Pro Micro kan du behöva en usb-c-kabel (om du inte redan har en) för ström och programmering
  • Fönsterskärm, cirka 1,5 x 1,5 tum
  • Skruvar (se bilden ovan)

Verktyg:

  • Heta limpinnar och varm limpistol
  • Sax
  • Rakblad eller x-acto-kniv som kan skära igenom din projektlåda

Steg 1: Markera och klipp hål och lägg i fönsterskärmen

Markera och klipp hål och lägg i fönsterskärmen
Markera och klipp hål och lägg i fönsterskärmen
Markera och klipp hål och lägg i fönsterskärmen
Markera och klipp hål och lägg i fönsterskärmen
Markera och klipp hål och lägg i fönsterskärmen
Markera och klipp hål och lägg i fönsterskärmen

Vi kommer att markera och klippa hål för oljen, miljösensorn och USB-C-kontakten för programmering och effekt.

  1. Rikta upp dina komponenter där du vill ha dem och markera skruvhålen.
  2. Markera rutor, för oled, en ruta på skärmens storlek och för miljösensorn, en ruta lite större än de 2 sensorerna (se bilderna ovan).
  3. Markera utrymmet för USB-C-kontakten. Min Qwiic Pro Micro -skiva hade lödningar redan lödda på den så jag lade ner en skumbit och markerade den. Om din inte gör det, lägg den platt mot botten av fodralet för att markera hålet.
  4. Borra de markerade hålen och klipp ut USB-C-kontakten. De borrade hålen ska vara tillräckligt stora för att låta skruvarna gå igenom.
  5. Klipp en kvadrat av fönsterskärmen lite större än hålet för sensorn. Klipp ut utrymme på fönsterskärmen för skruvhålet och monteringsstolpen (se bilderna ovan).
  6. Varmlim skärmen på plats.

Steg 2: Montera Oled och sensor

Montera Oled och sensor
Montera Oled och sensor
Montera Oled och sensor
Montera Oled och sensor
Montera Oled och sensor
Montera Oled och sensor

Montera oled- och miljösensorn i fodralet. De större skruvarna går i hålen du borrade och de mindre skruvarna går in i stolparna i hörnet på locket. Använd brickorna för distanser. För de större skruvarna, se diagrammet ovan för förtydligande. Du kan behöva använda mer än en bricka för avstånd.

Steg 3: Montera Arduino och anslut komponenter

Montera Arduino och anslut komponenter
Montera Arduino och anslut komponenter
Montera Arduino och anslut komponenter
Montera Arduino och anslut komponenter
Montera Arduino och anslut komponenter
Montera Arduino och anslut komponenter
  1. Min Qwiic Pro Micro -skiva hade lödningar redan lödda på den så jag lade ner i en skumbit och limmade fast den. Om din inte har rubriker, limma fast den till botten av fodralet. Se till att det finns tillräckligt med utrymme för Qwiic -kabeln att ansluta.
  2. Anslut komponenterna med Qwiic -kontakterna. Varken ordern eller sidan på Qwiic -kontakten spelar någon roll. Se bilderna ovan för förtydligande.
  3. Nu kan du knäppa ihop din projektlåda. Se till att Qwiic -kablarna är ordentligt anslutna och inte kläms.

Steg 4: Kod

Följ denna handledning för att få igång ditt Qwiic pro micro board.

När det är klart finns koden nedanför. Du kan hitta den på GitHub här.

#include #include #include #include #define PIN_RESET 9 #definiera DC_JUMPER 1 #definiera CCS811_ADDR 0x5B // Standard I2C AddressMicroOLED oled (PIN_RESET, DC_JUMPER); CCS811 myCCS811 (CCS811_ADDR); BME280;; Wire.begin (); oled.begin (); // Initiera OLED oled.clear (ALL); // Rensa skärmens interna minne oled.display (); // Visa vad som finns i bufferten (splashscreen) oled.clear (PAGE); // Rensa bufferten. randomSeed (analogRead (A0) + analogRead (A1)); // Initiera BME280 // För I2C, aktivera följande och inaktivera SPI -avsnittet myBME280.settings.commInterface = I2C_MODE; myBME280.settings. I2CAddress = 0x77; myBME280.settings.runMode = 3; // Normalt läge myBME280.settings.tStandby = 0; myBME280.settings.filter = 4; myBME280.settings.tempOverSample = 5; myBME280.settings.pressOverSample = 5; myBME280.settings.humidOverSample = 5; CCS811Core:: CCS811_Status_e returnCode = myCCS811.beginWithStatus (); // Att ringa.begin () gör att inställningarna laddas med fördröjning (10); // Se till att sensorn hade tillräckligt med tid att slå på. BME280 kräver 2 ms för att starta. byte id = myBME280.begin (); // Returnerar ID på 0x60 om lyckad fördröjning (10000); } void print_data () {oled.setFontType (0); oled.setCursor (0, 0); oled.print ("TMP"); oled.setCursor (25, 0); oled.print (rund (myBME280.readTempF ())); oled.setCursor (0, 10); oled.print ("HUM"); oled.setCursor (25, 10); oled.print (round (myBME280.readFloatHumidity ())); oled.setCursor (0, 20); oled.print ("VOC"); oled.setCursor (25, 20); oled.print (round (myCCS811.getTVOC ())); oled.setCursor (0, 30); oled.print ("BAR"); oled.setCursor (25, 30); oled.print (round (myBME280.readFloatPressure ())); oled.setCursor (0, 40); oled.print ("CO2"); oled.setCursor (25, 40); oled.print (rund (myCCS811.getCO2 ())); oled.display (); } void loop () {delay (2000); // Kontrollera om data är tillgängliga om (myCCS811.dataAvailable ()) {// Om du kallar den här funktionen uppdateras de globala tVOC- och eCO2 -variablerna myCCS811.readAlgorithmResults (); // printData hämtar värdena för tVOC och eCO2 float BMEtempC = myBME280.readTempC (); float BMEhumid = myBME280.readFloatHumidity (); // Detta skickar temperaturdata till CCS811 myCCS811.setEnvironmentalData (BMEhumid, BMEtempC); } print_data (); fördröjning (2000); }

Klistra in koden i Arduino IDE och kompilera den. Skärmen ska visa SparkFun -logotypen i några sekunder och sedan börja visa levande förhållanden. Villkoren uppdateras ungefär varannan sekund. Tack för att du läser.

Har du en fråga?

Lämna en kommentar eller mejla mig här

Rekommenderad: