Innholdsfortegnelse:
- Trinn 1: Innhenting av alle deler
- Trinn 2: Koble alle deler sammen
- Trinn 3: Skrive kode
- Trinn 4: Bruke Arduino
Video: Arduino DHT22 sensor- og jordfuktighetsprosjekt med meny: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Hei folkens I dag presenterer jeg mitt andre prosjekt om instruktører. Dette prosjektet presenterer blandingen av mitt første prosjekt der jeg brukte Soil Moisture sensor og DHT22 sensor som brukes til å måle temperatur og fuktighet. Dette prosjektet er enkelt å lage, og folk som bruker Arduino vil føle det stille interessant å lage. Forskjellen mellom dette prosjektet og det første er at brukeren i dette prosjektet vil ha en meny der han kan velge hva han vil se for øyeblikket. Det vil være fire alternativer. Så ta deg pakken og begynn å lage dette prosjektet som kan brukes i ethvert hjem.
Trinn 1: Innhenting av alle deler
Dette prosjektet bruker få deler. Disse delene er veldig billige å få, så ikke bekymre deg for prisen. Noen av delene som brukes i dette prosjektet kan endres, slik at prosjektet kan være billigere å lage. Det er på deg hvilke deler av anbefalt du skal bruke og gjøre dette prosjektet enda bedre. Deler som brukes i dette prosjektet:
- Arduino uno rev3 (Du kan også bruke andre Arduino)
- Brødbrett
- LCD 1602 grønn skjerm med I2C (du kan også bruke skjerm uten I2C, men du trenger flere pinner for å koble den til)
- 16 -knappers tastatur (kan endres)
- FC-28-d Jordhygrometer-deteksjonsmodul + jordfuktighetssensor
- DHT22 temperatur- og fuktighetssensor (Du kan bruke DHT11 som er billigere å få)
- Rød LED -diode
- Blå LED -diode
- 2 motstander 220 ohm (brukes til dioder)
- 4k7 motstand brukt for DHT22 på skjematisk
- Arduino batterikontakt
- Noen hoppekabler for å koble alle delene
En ting jeg må fortelle deg før du begynner å bygge dette prosjektet er at tastaturet ikke er nødvendig. Jeg brukte tastaturet denne gangen fordi den roterende omkoderen min var ødelagt. Jeg tror at dette prosjektet ville være perfekt hvis det har en roterende encoder fordi det ville bruke mindre pins, eller det kan bruke 3 knapper.
Trinn 2: Koble alle deler sammen
I dette trinnet kan du se skjematikken jeg laget med fritzing. Jeg vil skrive ned varmt for å koble til alle viktige deler av dette prosjektet.
Som du kan se bruker vi 5V og GND fra arduino til å drive brødbrettet.
LCD:
- VCC til 5v (+ del på brødbrett)
- GND til gnd (- del på brødbrett)
- SDA til analog pin A4
- SCL til analog pin A5
Tastatur med 16 knapper:
Vi bruker pinnene 9, 8, 7, 6, 5, 4, 3, 2 for å koble tastaturet (dette er grunnen til at jeg ville bruke roterende encoder, fordi det bare ville ta 3 pinner på brettet)
Jordfuktighetssensor:
- VCC til 5v (+ del på brødbrett)
- GND til gnd (-del på brødbrett)
- D0 til digital pin 0
- A0 til analog pin A0
DHT22:
- VCC til 5v (+ del på brødbrett)
- GND til gnd (-del på brødbrett)
- Utpinnen er koblet til pinne 12
Diode som kobler til:
- en del av dioden går inn - en del av brødbrettet
- andre del går gjennom motstand på 220 ohm, og deretter kobles til pin 10 (blå diode) eller 11 (rød diode)
Trinn 3: Skrive kode
Jeg skal prøve å forklare koden i noen få deler. Det vil også bli skrevet full kode, slik at du kan kopiere den og også endre den hvis du ser behov. Også i denne koden er det skrevet få metoder for sensorarbeid, men denne gangen var hovedfokuset på å lage meny som vil være lett å forstå for folk som er nye med Arduino. Denne gangen bruker jeg ingen avbrudd, men i mine neste prosjekter vil jeg gjøre det, så husk at denne koden kan bli mye bedre med avbrudd.
- Den første delen av koden inkluderer alle de brukte bibliotekene for dette prosjektet. Husk at for alle delene som jeg fortalte at jeg bruker trenger du neste bibliotek: Wire, LiquidCrystal_I2C, Tastatur og DHT. Alle bibliotekene finnes på Arduino IDE hvis du går til skissedelen og deretter inkluderer biblioteker. Husk også at hvis du bruker noe som roterende encoder, må du sannsynligvis skaffe deg nye biblioteker i stedet for tastatur, som sannsynligvis ville være rotary.h og button. Hvis du bruker DHT11 -sensor, er biblioteket fortsatt DHT.
- I andre del av koden vil det være definisjon av alle brukte deler. Først av alt er LCD. Etter det er det en DHT -sensor som representerer et objekt med en dht -type sensor, og en pin som er tilkoblet. Jordfuktighetssensor og dioder er den tredje.
- Jeg vil beskrive tastaturet litt mer. Som jeg sa, min roterende encoder var ødelagt, så jeg bestemte meg for å bruke den. For dette prosjektet er det nok å bare ha fire knapper, til og med tre er bra for det. Så jeg bruker fire knapper på tastaturet for bare ett alternativ. Du kan bruke noen av knappene hvis du vil ha noe annet hvis du har en idé. Du må definere rader og kolonner i denne delen. Etter det vil hexaKeys representere deg alternativer som brukes for dette prosjektet. I prosjektet mitt er det B (tilbake), U (opp), D (ned) og A (godta). Du kan gjøre hver knapp for å gjøre noe annet. En knapp kan slå på bakgrunnsbelysningen, en kan slå den av. Så spill gjerne med det litt mer
- I denne delen er globale variabler som brukes i kode. Fulle variabler bruker for å endre skjerm. Velkomstvariabelen gjelder bare i noen sekunder når arduinoen jeg slo på, etter det vil den være usann resten av tiden. Hovedfokuset er på mainScreen -variabelen. Denne variabelen brukes til å veilede deg fra menyen til et annet alternativ i koden. Hvis denne variabelen er usann, betyr det at brukeren bestemte seg for å bruke ett av fire alternativer for dette prosjektet.
- Her er det skrevet alle metodene som brukes i denne koden. Jeg vil prøve å forklare alle skrevne metoder i denne delen
- void startScreen (); // metode for å starte prosjekt og arduino
- int choiceNumber (int choice); // dette endrer ditt valg av alternativer for prosjektet. Tallet går fra 1 til 4
- void mainScreenP (int valg); // Det vil bli skrevet fire alternativer for enheten som er laget
- bool mainScreenCS (bool mainScreen); // dette endrer mainScreen til false
- bool mainScreenBack (bool mainScreen); // dette endrer mainScreen til true
- ugyldig tempCelsius (); // lesetemperatur i alternativet C DHT -sensor
- ugyldig tempFarenheit (); // lesetemperatur i alternativet F DHT -sensor
- void printHumidity (); // lesing av fuktighets -DHT -sensor
- void readSensorData (); // lese data på tilkoblede sensorer
- String getTemperatureC ();
- String getTemperatureF ();
- String getHumidity ();
- void soilMoisture (); // dette er for en annen sensor og dioder
- void printSensorSoilMoisture (); // skrive ut jordfuktighetsdel på lcd
- void diodeLights (int verdi); // slå av og på dioder
- void printValue (int -verdi);
6. Oppsett for arduino er en del der du setter opp LCD- og DHT -sensor og også dioder
7. Hoveddelen er delen der alle de ovennevnte skriftlige metodene brukes.
Fullstendig kode for dette prosjektet vil være vedlagt dette trinnet. Husk at det er en mulighet for at pinnene kanskje ikke er koblet som på skjematikken, jeg tror at dioder er endret.
Trinn 4: Bruke Arduino
Dette er sannsynligvis den morsomste delen. Det er i hvert fall morsommere etter all koding skrevet. I denne delen kan du se bilder av hvordan prosjektet fungerer. Det er 4 alternativer.
- Lesetemperatur i Celsius
- Lesetemperatur i Fahrenheit
- Leser fuktighet
- Slå på dioder og leseverdier for jordfuktighetssensor.
Du kan velge alle mulige alternativer, du kan også gå tilbake og velge igjen hvis du vil se noe annet. Enkel og enkel å bruke.
Hvis det er andre spørsmål du kan stille meg. Takk for at du så på prosjektet mitt. Med alle hilsener. Sebastian
Anbefalt:
M5StickC Kul klokke med meny og lysstyrkekontroll: 8 trinn
M5StickC Cool Look Watch med meny og lysstyrkekontroll: I denne opplæringen lærer vi hvordan du programmerer ESP32 M5Stack StickC med Arduino IDE og Visuino for å vise en tid på LCD -skjermen og også angi tid og lysstyrke ved hjelp av menyen og StickC -knappene Se en demonstrasjonsvideo
Bygg en Apple HomeKit -temperatursensor (DHT22) -enhet ved hjelp av en RaspberryPI og en DHT22: 11 trinn
Bygg en Apple HomeKit -temperatursensor (DHT22) -enhet ved hjelp av en RaspberryPI og en DHT22: Jeg var på utkikk etter en lavkostetemperatur- / fuktighetssensor jeg kunne bruke til å overvåke hva som skjer i krypterommet mitt, da jeg fant ut at det i vår var veldig vått , og hadde mye fukt. Så jeg lette etter en rimelig sensor som jeg kunne
En meny i Arduino, og hvordan du bruker knappene: 10 trinn (med bilder)
En meny i Arduino og hvordan du bruker knapper: I min Arduino 101 -opplæring blir du lært hvordan du konfigurerer miljøet ditt i Tinkercad. Jeg bruker Tinkercad fordi det er en ganske kraftig online plattform som lar meg demonstrere en rekke ferdigheter for studenter for å bygge kretser. Føl deg fri til å
ARDUINO MENY DESIGN With OLED-UI (USER INTERFACE): 4 trinn
ARDUINO MENY DESIGN With OLED-UI (USER INTERFACE): Hei alle! I denne opplæringen vil jeg prøve å forklare hvordan du lager ARDUINO MENY DESIGN ved å bruke i2c OLED Screen. Det er også kjent som UI (User Interface). Det har vært i bruk for mange prosjekter, men det må være kjent med deg fra 3d -skrivere :) Her også video
Arduino -meny på en Nokia 5110 Lcd ved hjelp av en roterende encoder: 6 trinn (med bilder)
Arduino -meny på en Nokia 5110 Lcd Bruke en roterende koder: Kjære venner, velkommen til en annen opplæring! I denne videoen skal vi lære å bygge vår egen meny for den populære Nokia 5110 LCD -skjermen, for å gjøre prosjektene våre mer brukervennlige og mer dyktige. La oss komme i gang! Dette er prosjektet