Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-23 15:08
Pozdravljeni fantje Danes vam predstavljam svoj drugi projekt o navodilih. Ta projekt predstavlja mešanico mojega prvega projekta, v katerem sem uporabil senzor vlažnosti tal in senzor DHT22, ki se uporablja za merjenje temperature in vlažnosti. Ta projekt je enostaven za izdelavo in ljudje, ki uporabljajo Arduino, se jim bo zdelo zanimivo narediti. Razlika med tem projektom in prvim je v tem, da bo uporabnik v tem projektu imel meni, v katerem lahko izbere, kaj si trenutno želi ogledati. Na voljo bodo štiri možnosti. Torej vzemite komplet in začnite izdelovati ta projekt, ki ga lahko uporabite v vsakem domu.
1. korak: Pridobitev vseh delov
Ta projekt uporablja le nekaj delov. Dobava teh delov je zelo poceni, zato ne skrbite za ceno. Nekatere dele, uporabljene v tem projektu, je mogoče spremeniti, zato je izdelava projekta cenejša. Na vas je, katere priporočene dele boste uporabili in naredili ta projekt še boljši. Deli, uporabljeni v tem projektu:
- Arduino uno rev3 (lahko uporabite tudi drug Arduino)
- Ogledna plošča
- LCD 1602 zelen zaslon z I2C (lahko uporabite tudi zaslon z I2C, vendar boste za njegovo povezavo potrebovali več zatičev)
- Tipkovnica s 16 gumbi (spremenljiva)
- Modul za zaznavanje talnega higrometra FC-28-d + senzor vlažnosti tal
- Senzor temperature in vlažnosti DHT22 (Uporabite lahko DHT11, ki je cenejši)
- Rdeča LED dioda
- Modra LED dioda
- 2 upora 220 ohmov (uporablja se za diode)
- 4k7 upor, ki se uporablja za DHT22 na shemi
- Priključek za baterijo Arduino
- Nekaj mostičnih kablov za povezavo vseh delov
Preden začnete graditi ta projekt, vam moram povedati, da tipkovnica ni potrebna. Tokrat sem uporabil tipkovnico, ker mi je pokvarjen rotacijski kodirnik. Mislim, da bi bil ta projekt popoln, če bi imel rotacijski kodirnik, ker bi uporabljal manjše zatiče ali pa lahko uporablja 3 gumbe.
Korak: Povežite vse dele skupaj
V tem koraku si lahko ogledate shemo, ki sem jo naredil s fritzingom. Zapisal bom vroče, da povežem vsak ključni del tega projekta.
Kot vidite, za napajanje plošče uporabljamo 5V in GND iz arduina.
LCD:
- VCC do 5V (+ del na plošči)
- GND v gnd (- del na mizo)
- SDA na analogni pin A4
- SCL na analogni pin A5
Tipkovnica s 16 gumbi:
Za priključitev tipkovnice uporabljamo zatiče 9, 8, 7, 6, 5, 4, 3, 2 (to je razlog, zakaj bi uporabil rotacijski kodirnik, ker bi na plošči potreboval le 3 nožice)
Senzor vlažnosti tal:
- VCC do 5 V (+ del na plošči)
- GND v gnd (-del na mizo)
- D0 na digitalni pin 0
- A0 na analogni pin A0
DHT22:
- VCC do 5 V (+ del na plošči)
- GND v gnd (-del na mizo)
- Izhodni pin je priključen na pin 12
Priključitev diode:
- en del diode gre v - del mize
- drugi del gre skozi upor 220 ohmov, nato pa se priključi na pin 10 (modra dioda) ali 11 (rdeča dioda)
3. korak: Pisanje kode
Poskusil bom kodo razložiti v nekaj delih. Napisana bo tudi celotna koda, tako da jo lahko kopirate in tudi spremenite, če vidite potrebo. Tudi v tej kodi je napisanih nekaj metod za delo s senzorji, vendar se je tokrat glavni poudarek namenil ustvarjanju menija, ki bo enostaven za razumevanje za ljudi, ki so novi z Arduinom. Tokrat ne uporabljam nobenih prekinitev, v naslednjih projektih pa jih bom, zato ne pozabite, da se lahko ta koda s prekinitvami še izboljša.
- Prvi del kode vključuje vse knjižnice, ki se uporabljajo za ta projekt. Upoštevajte, da za vse dele, za katere sem povedal, da jih uporabljam, potrebujete naslednje knjižnice: Wire, LiquidCrystal_I2C, Keypad in DHT. Vse knjižnice lahko najdete v Arduino IDE, če odprete del skice in nato vključite knjižnice. Upoštevajte tudi, da boste morali uporabiti nekaj podobnega rotacijskemu kodirniku, namesto tipkovnice, ki bi verjetno bila rotacijska.h in gumb. Če uporabljate senzor DHT11, je knjižnica še vedno DHT.
- V drugem delu kode bodo opredeljeni vsi uporabljeni deli. Najprej je LCD. Po tem je DHT tipalo, ki predstavlja podoben objekt z dht tipom senzorja, in tudi pin, ki je priključen. Senzor vlage v tleh in diode so tretji.
- Malo bom opisal tipkovnico. Kot sem rekel, je moj rotacijski kodirnik pokvarjen, zato sem se odločil, da ga uporabim. Za ta projekt so dovolj le štirje gumbi, tudi trije so zanj dobri. Zato uporabljam štiri gumbe na tipkovnici samo za eno možnost. Če imate idejo, lahko uporabite nekaj gumbov, če želite nekaj drugega. V tem delu morate določiti vrstice in stolpce. Po tem vam bodo hexaKeys predstavili možnosti, uporabljene za ta projekt. V mojem projektu so B (nazaj), U (gor), D (dol) in A (sprejmi). Z vsakim gumbom lahko naredite nekaj drugega. Z enim gumbom lahko vklopite osvetlitev ozadja, drugi pa ga lahko izklopite. Zato se z njim še malo poigrajte
- V tem delu so globalne spremenljivke, ki se uporabljajo v kodi. Bool spremenljivke se uporabljajo za spreminjanje zaslona. Spremenljivka dobrodošlice je resnična za nekaj sekund le, ko je arduino i vklopljen, potem pa bo preostanek časa napačna. Glavni poudarek je na spremenljivki mainScreen. Ta spremenljivka vas vodi od menija do katere koli druge možnosti v kodi. Če je ta spremenljivka napačna, se to pomeni, da se je uporabnik odločil uporabiti eno od štirih možnosti tega projekta.
- Tu so zapisane vse metode, uporabljene v tej kodi. V tem delu bom poskušal razložiti vse pisne metode
- void startScreen (); // metoda za zagon projekta in arduino
- int choiceNumber (int izbira); // to spremeni vaš izbor možnosti projekta. Število se giblje od 1 do 4
- void mainScreenP (izbira int); // napisane bodo štiri možnosti naprave
- bool mainScreenCS (bool mainScreen); // to spremeni mainScreen v false
- bool mainScreenBack (bool mainScreen); // to spremeni mainScreen v true
- void tempCelsius (); // odčitavanje temperature v možnosti senzorja C DHT
- void tempFarenheit (); // odčitavanje temperature pri možnosti senzorja F DHT
- void printHumidity (); // odčitavanje vlažnosti DHT senzor
- void readSensorData (); // branje podatkov o priključenih senzorjih
- Niz getTemperatureC ();
- Niz getTemperatureF ();
- String getHumidity ();
- void groundMoisture (); // to je za drug senzor in diode
- void printSensorSoilMoisture (); // tiskanje dela vlažnosti tal na lcd
- void diodeLights (vrednost int); // vklop in izklop diod
- void printValue (vrednost int);
6. Nastavitev za arduino je del, kjer nastavite LCD in DHT senzor ter diode
7. Glavni del je del, kjer se uporabljajo vse zgoraj navedene pisne metode.
Celotna koda tega projekta bo v prilogi tega koraka. Ne pozabite, da obstaja možnost, da zatiči morda niso povezani, kot je na shemi, mislim, da se diode spremenijo.
4. korak: Uporaba vašega Arduina
To je verjetno najbolj smešen del. Vsaj smešno je po vsem napisanem kodiranju. V tem delu si lahko ogledate slike, kako projekt deluje. Obstajajo 4 možnosti.
- Branje temperature v Celzijih
- Temperatura branja v Fahrenheitu
- Branje vlažnosti
- Vklop diod in odčitavanje vrednosti senzorja vlažnosti tal.
Izberete lahko katero koli od možnih možnosti, prav tako se lahko vrnete in znova izberete, če želite videti kaj drugega. Preprosta in enostavna za uporabo.
Če imate še kakšno vprašanje, me lahko vprašate. Hvala, ker ste pogledali moj projekt. Z vsem pozdravom. Sebastian
Priporočena:
Kalibracija senzorja vlažnosti tal: 5 korakov
Kalibracija senzorja vlažnosti tal: Na trgu je veliko merilnikov vlage v tleh, ki vrtnarju pomagajo pri odločitvi, kdaj zalivati svoje rastline. Na žalost je prijemanje peščice zemlje in pregled barve in teksture enako zanesljivo kot mnogi od teh pripomočkov! Nekatere sonde se celo registrirajo
Gasilni aparat senzorja temperature in vlažnosti senzorja (Arduino UNO): 11 korakov
Samodejni gasilni aparat s senzorjem temperature in vlažnosti (Arduino UNO): Ta projekt je bil namenjen vsem v domovih ali podjetjih kot senzor temperature in vlažnosti, prikazan na LCD -prikazovalniku, ter senzor plamena, povezan z zvočnikom in vodno črpalko za gašenje. požar v nujnih primerih
Popoln vodnik za uporabo senzorja vlažnosti tal W/ Praktični primer: 7 korakov
Celoten vodnik po uporabi senzorja vlažnosti tal W/ Praktični primer: To in druge neverjetne vaje lahko preberete na uradni spletni strani ElectroPeak Pregled V tej vadnici se boste naučili uporabljati senzor vlage v tleh. Na voljo so tudi praktični primeri, ki vam bodo pomagali obvladati kodo. Kaj se boste naučili: Kako prst
Kdo je pri mojih vratih? Projekt PIR senzorja gibanja/senzorja dosega: 5 korakov
Kdo je pri mojih vratih? Projekt senzorja gibanja PIR/senzorja dosega: Naš projekt je namenjen zaznavanju gibanja prek PIR in senzorjev razdalje. Koda Arduino bo oddajala vizualni in zvočni signal, ki bo uporabniku povedal, da je nekdo v bližini. Koda MATLAB bo poslala e -poštni signal, ki bo uporabnika opozoril, da je nekdo v bližini. Ta naprava
Načrt preskusa senzorja vlažnosti tal: 6 korakov (s slikami)
Načrt preskusa senzorja vlažnosti tal: Izziv: Oblikujte in izvedite načrt, ki bo prižgal RDEČO LED, ko so tla mokra, in ZELENO LED, ko je zemlja suha. To bo vključevalo uporabo senzorja vlažnosti tal. Cilj: Cilj tega navodila je preveriti, ali je deževalo in ali je rastlina