Indholdsfortegnelse:
- Tilbehør:
- Værktøjer:
- Trin 1: Marker og skær huller og sæt i vinduesskærmen
- Trin 2: Monter Oled og sensor
- Trin 3: Monter Arduino og tilslut komponenter
- Trin 4: Kode
Video: Håndholdt vejrstation: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:25
I denne instruks vil vi bruge en Arduino, en oled -skærm og en SparkFun -miljøsensorkombination med CCS811- og BME280 -sensorer om bord til at bygge en håndholdt enhed, der måler temperatur, fugtighed, TVOC -niveauer, barometrisk tryk og kuldioxidniveauer. Du kan bruge enhver Arduino med den medfølgende kode, men jeg bruger en SparkFun Qwiic pro micro. Hvis du er nybegynder, foreslår jeg, at du bruger de samme dele, som jeg bruger, bare for at holde tingene enkle. Jeg valgte SparkFun Qwiic pro micro board for sin lille størrelse og Qwiic stik, hvilket gør det let at tilslutte dine komponenter. Hvis du bruger et andet bord, skal du sørge for at købe en Qwiic hat, phat eller skjold, der passer til dit bord.
Tilbehør:
- SparkFun Environmental Combo Breakout -
- SparkFun Micro OLED Breakout -
- SparkFun Qwiic Pro Micro -
- Qwiic -kabel, 50 mm -
- Projektboks, størrelse til dine komponenter, jeg bruger omkring 3 x 2 x 1 -
- Valgfrit: Hvis du bruger Qwiic Pro Micro, har du muligvis brug for et usb-c-kabel (hvis du ikke allerede har et) til strøm og programmering
- Vinduesskærm, cirka 1,5 x 1,5 tommer
- Skruer (se billedet ovenfor)
Værktøjer:
- Varm limpinde og varm limpistol
- Saks
- Barberblad eller x-acto kniv, der er i stand til at skære igennem din projektkasse
Trin 1: Marker og skær huller og sæt i vinduesskærmen
Vi markerer og skærer huller til den oled, miljøsensor og USB-C-stik til programmering og strøm.
- Stil dine komponenter op, hvor du vil have dem, og markér skruehullerne.
- Marker firkanter, for oled, en firkant på skærmens størrelse og for miljøsensoren, en firkant lidt større end de 2 sensorer (se billederne ovenfor).
- Markér mellemrummet til USB-C-stikket. Mit Qwiic Pro Micro -bord havde lodder loddet på det allerede, så jeg lagde et stykke skum i og markerede det. Hvis din ikke gør det, skal du lægge det fladt mod bunden af sagen for at markere hullet.
- Bor de markerede huller, og skær USB-C-stikket ud. De borede huller skal være store nok til at lade skruerne gå igennem.
- Skær en firkant af vinduesskærmen lidt større end hullet til sensoren. Skær plads ud på vinduesskærmen til skruehullet og monteringsstolpen (se billederne ovenfor).
- Varm lim skærmen på plads.
Trin 2: Monter Oled og sensor
Monter oled- og miljøsensoren i etuiet. De større skruer går i de huller, du har boret, og de mindre skruer går ind i stolperne i hjørnet af saglåget. Brug skiverne til afstandsstykker. For større skruer, se diagrammet ovenfor for afklaring. Du skal muligvis bruge mere end én skive til afstand.
Trin 3: Monter Arduino og tilslut komponenter
- Mit Qwiic Pro Micro -bord havde lodder loddet på det allerede, så jeg lagde det i et stykke skum og limede det fast. Hvis din ikke har overskrifter, lim den ned til bunden af kassen. Sørg for, at der er nok plads til, at Qwiic -kablet kan tilsluttes.
- Tilslut komponenterne med Qwiic -stik. Hverken ordren eller siden, hvor Qwiic -stikket er relevant. Se billederne ovenfor for afklaring.
- Nu kan du snappe din projektboks sammen. Sørg for, at Qwiic -kablerne er tæt forbundet og ikke bliver klemt.
Trin 4: Kode
Følg denne vejledning for at få dit Qwiic pro micro board i gang.
Når det er gjort, er koden nedenfor, hvor du kan finde den på GitHub her.
#include #include #include #include #define PIN_RESET 9 #definere DC_JUMPER 1 #definere CCS811_ADDR 0x5B // Standard I2C AddressMicroOLED oled (PIN_RESET, DC_JUMPER); CCS811 myCCS811 (CCS811_ADDR); BME280;; Wire.begin (); oled.begin (); // Initialiser OLED oled.clear (ALL); // Ryd skærmens interne hukommelse oled.display (); // Vis hvad der er i bufferen (stænkskærm) oled.clear (PAGE); // Ryd bufferen. randomSeed (analogRead (A0) + analogRead (A1)); // Initialiser BME280 // For I2C skal du aktivere følgende og deaktivere SPI -afsnittet myBME280.settings.commInterface = I2C_MODE; myBME280.settings. I2CAddress = 0x77; myBME280.settings.runMode = 3; // Normal tilstand 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 (); // Opkald.begin () bevirker, at indstillingerne indlæses forsinkelse (10); // Sørg for, at sensoren havde nok tid til at tænde. BME280 kræver 2 ms for at starte op. byte id = myBME280.begin (); // Returnerer ID på 0x60 hvis vellykket forsinkelse (10000); } ugyldige 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 (rund (myBME280.readFloatHumidity ())); oled.setCursor (0, 20); oled.print ("VOC"); oled.setCursor (25, 20); oled.print (rund (myCCS811.getTVOC ())); oled.setCursor (0, 30); oled.print ("BAR"); oled.setCursor (25, 30); oled.print (rund (myBME280.readFloatPressure ())); oled.setCursor (0, 40); oled.print ("CO2"); oled.setCursor (25, 40); oled.print (rund (myCCS811.getCO2 ())); oled.display (); } void loop () {delay (2000); // Kontroller, om der er tilgængelige data, hvis (myCCS811.dataAvailable ()) {// Opkald til denne funktion opdaterer de globale tVOC- og eCO2 -variabler myCCS811.readAlgorithmResults (); // printData henter værdierne for tVOC og eCO2 float BMEtempC = myBME280.readTempC (); float BMEhumid = myBME280.readFloatHumidity (); // Dette sender temperaturdataene til CCS811 myCCS811.setEnvironmentalData (BMEhumid, BMEtempC); } print_data (); forsinkelse (2000); }
Indsæt koden i Arduino IDE og kompilér den. Skærmen skal vise SparkFun -logoet i et par sekunder og derefter begynde at vise live -betingelserne. Betingelserne opdateres cirka hvert andet sekund. Tak fordi du læste.
Har du et spørgsmål?
Efterlad en kommentar eller mail mig her
Anbefalede:
Håndholdt BASIC -computer: 6 trin (med billeder)
Håndholdt BASIC -computer: Denne vejledning beskriver min proces med at bygge en lille håndholdt computer, der kører BASIC. Computeren er bygget op omkring ATmega 1284P AVR -chippen, som også inspirerede det fjollede navn til computeren (HAL 1284). Denne build er STORT inspireret af
MutantC V3 - modulær og kraftfuld håndholdt pc: 9 trin (med billeder)
MutantC V3 - Modulær og kraftfuld håndholdt pc: En Raspberry -pi håndholdt platform med et fysisk tastatur, display- og udvidelseshoved til brugerdefinerede tavler (som Arduino Shield) .mutantC_V3 er efterfølgeren til mutantC_V1 og V2. Tjek mutantC_V1 og mutantC_V2.https: //mutantc.gitlab.io/https: // gitla
Arduino håndholdt ventilator med kapacitiv berøringsafbryder .: 6 trin
Arduino håndholdt blæser med kapacitiv berøringsafbryder.: I denne vejledning lærer vi, hvordan du tænder og slukker Hendheld -batteriventilator ved hjælp af kapacitiv berøringssensor, relæmodul og Visuino. Se en demonstrationsvideo
Håndholdt natlys: 7 trin (med billeder)
Håndholdt natlys: Min 5-årige blev ved med at vække os om natten, og vi blev ved med at forelægge ham for at lade mor og far sove, indtil jeg indså, at han faktisk ikke var i stand til selv at afgøre, om det var søvntid eller leg Han ville bede os om at tænde lyset
MutantC_v2 - en let at bygge Raspberry Pi håndholdt/UMPC: 8 trin (med billeder)
MutantC_v2 - en let at bygge Raspberry Pi Håndholdt/UMPC: En Raspberry -pi håndholdt platform med et fysisk tastatur, Display og Expansion header til brugerdefinerede boards (ligesom Arduino Shield) .mutantC_V2 er efterfølger af mutantC_V1. Tjek mutantC_V1 herfra. Https: //mutantc.gitlab.io/https: //gitlab.com/mutant