INHOUDSOPGAWE:

Arduino DHT22 Sensor- en grondvogprojek Met spyskaart: 4 stappe
Arduino DHT22 Sensor- en grondvogprojek Met spyskaart: 4 stappe

Video: Arduino DHT22 Sensor- en grondvogprojek Met spyskaart: 4 stappe

Video: Arduino DHT22 Sensor- en grondvogprojek Met spyskaart: 4 stappe
Video: ESP32 Tutorial 54 - Set WS2812 LED Strip Color over Wifi | SunFounder's ESP32 IoT Learnig kit 2024, November
Anonim
Arduino DHT22 sensor- en grondvogprojek met spyskaart
Arduino DHT22 sensor- en grondvogprojek met spyskaart

Hallo ouens Vandag bied ek u my tweede projek oor instruksies aan. Hierdie projek bied 'n mengsel van my eerste projek waarin ek 'n Soil Moisture -sensor en 'n DHT22 -sensor gebruik het om temperatuur en humiditeit te meet. Hierdie projek is maklik om te maak, en mense wat Arduino gebruik, sal dit baie interessant vind om te maak. Die verskil tussen hierdie projek en die eerste is dat die gebruiker in hierdie projek 'n spyskaart het waarin hy kan kies wat hy op die oomblik wil sien. Daar sal vier opsies wees. Gryp dus u kit en begin met hierdie projek wat in enige huis gebruik kan word.

Stap 1: Verkryging van alle dele

Verkryging van alle dele
Verkryging van alle dele
Verkryging van alle onderdele
Verkryging van alle onderdele
Verkryging van alle onderdele
Verkryging van alle onderdele

Hierdie projek gebruik min dele. Hierdie onderdele is baie goedkoop om te kry, dus moenie bekommerd wees oor die prys nie. Sommige dele wat in hierdie projek gebruik word, kan verander word, sodat die projek goedkoper kan wees. Dit is op u watter dele van die aanbevole materiaal u gaan gebruik en hierdie projek nog beter maak. Onderdele wat in hierdie projek gebruik word:

  1. Arduino uno rev3 (U kan ook ander Arduino gebruik)
  2. Broodbord
  3. LCD 1602 groen skerm met I2C (u kan ook 'n skerm met 'n I2C gebruik, maar u benodig meer penne om dit aan te sluit)
  4. 16 knoppies toetsbord (veranderbaar)
  5. FC-28-d Opsporingsmodule vir grondhigrometer + grondvogsensor
  6. DHT22 temperatuur- en humiditeitsensor (u kan DHT11 gebruik wat goedkoper is)
  7. Rooi LED diode
  8. Blou LED diode
  9. 2 weerstande 220 ohm (gebruik vir diodes)
  10. Weerstand van 4k7 gebruik vir skematiese DHT22
  11. Arduino batteryaansluiting
  12. Paar springkabels om al die onderdele aan te sluit

Een ding wat ek u moet vertel voordat u hierdie projek begin bou, is dat die toetsbord nie nodig is nie. Ek het hierdie keer toetsbord gebruik omdat my roterende encoder gebreek is. Ek dink dat hierdie projek perfek sou wees as dit 'n draaikodeerder het, omdat dit minder penne sou gebruik of 3 knoppies kon gebruik.

Stap 2: Koppel alle onderdele aan mekaar

Koppel alle dele aan mekaar
Koppel alle dele aan mekaar

In hierdie stap kan u die skema sien wat ek gemaak het met fritzing. Ek sal warm neerskryf om elke belangrike deel van hierdie projek aan te sluit.

Soos u kan sien, gebruik ons 5V en GND van arduino om die broodbord aan te dryf.

LCD:

  • VCC tot 5v (+ deel op broodbord)
  • GND tot gnd (- deel op broodbord)
  • SDA na analoog pen A4
  • SCL na analoog pen A5

Klavier met 16 knoppies:

Ons gebruik penne 9, 8, 7, 6, 5, 4, 3, 2 om die bedieningspaneel aan te sluit (dit is die rede waarom ek 'n draaikodeerder sou gebruik, omdat dit slegs 3 penne op die bord sou neem)

Grondvog sensor:

  • VCC tot 5v (+ deel op broodbord)
  • GND tot gnd (-deel op broodbord)
  • D0 na digitale pen 0
  • A0 tot analoog pen A0

DHT22:

  • VCC tot 5v (+ deel op broodbord)
  • GND tot gnd (-deel op broodbord)
  • Uitpen is gekoppel aan pen 12

Diode wat aansluit:

  • een deel van die diode gaan in - 'n deel van die broodbord
  • die tweede deel gaan deur 'n weerstand van 220 ohm, en verbind daarna met pen 10 (blou diode) of 11 (rooi diode)

Stap 3: Kode skryf

Ek sal probeer om die kode in 'n paar dele te verduidelik. Daar sal ook 'n volledige kode geskryf word, sodat u dit kan kopieer en dit ook kan verander as u dit nodig het. Daar is ook 'n paar metodes vir sensorwerk in hierdie kode, maar hierdie keer was die belangrikste fokus op die maak van 'n spyskaart wat maklik verstaanbaar sal wees vir mense wat nuut is met Arduino. Hierdie keer gebruik ek geen onderbrekings nie, maar in my volgende projekte sal ek dit doen, dus hou in gedagte dat hierdie kode baie beter kan word met onderbrekings.

  1. Die eerste deel van die kode bevat al die gebruikte biblioteke vir hierdie projek. Hou in gedagte dat vir al die dele wat ek gesê het dat ek gebruik, die volgende biblioteke nodig is: Wire, LiquidCrystal_I2C, Toetsenbord en DHT. Al die biblioteke kan op Arduino IDE gevind word as u na die sketsgedeelte gaan en dan biblioteke insluit. Hou ook in gedagte dat as u iets soos 'n roterende encoder gebruik, u waarskynlik nuwe biblioteke moet kry in plaas van die toetsbord, wat waarskynlik rotary.h en button sal wees. As u 'n DHT11 -sensor gebruik, is die biblioteek steeds DHT.
  2. In die tweede deel van die kode word alle gebruikte dele gedefinieer. In die eerste plek is LCD. Daarna is daar 'n DHT -sensor wat 'n voorwerp met 'n dht -tipe sensor verteenwoordig, en ook 'n pen wat verbind kan word. Grondvogsensor en diodes is derde.
  3. Ek sal die toetsbord nog 'n bietjie beskryf. Soos ek gesê het my roterende encoder was stukkend, so ek het besluit om dit te gebruik. Vir hierdie projek is dit genoeg om slegs vier knoppies te hê, selfs drie is goed daarvoor. Ek gebruik dus vier knoppies op die klavier vir slegs een opsie. As u 'n idee het, kan u 'n paar van die knoppies gebruik as u iets anders wil hê. U moet rye en kolomme in hierdie deel definieer. Daarna sal hexaKeys die opsies wat vir hierdie projek gebruik word, voorstel. In my projek is daar B (agter), U (bo), D (af) en A (aanvaar). U kan elke knoppie maak om iets anders te doen. Een knoppie kan die agtergrond aanskakel, een kan dit uitskakel. Speel dus gerus nog daarmee
  4. In hierdie deel is globale veranderlikes wat in kode gebruik word. Bool veranderlikes word gebruik om skerm te verander. Welkom -veranderlike is slegs 'n paar sekondes waar as die arduino i aangeskakel is, daarna is dit vir die res van die tyd vals. Die hooffokus is op die mainScreen -veranderlike. Hierdie veranderlike word gebruik om u van die spyskaart na enige ander kode -kode te lei. As hierdie veranderlike onwaar is, beteken dit dat die gebruiker besluit het om een van die vier opsies van hierdie projek te gebruik.
  5. Hier is al die metodes wat in hierdie kode gebruik word, geskryf. Ek sal probeer om al die geskrewe metodes in hierdie deel te verduidelik
  • leegte startScreen (); // metode om projek en arduino te begin
  • int choiceNumber (int keuse); // dit verander die keuse van die opsies van die projek. Die getal gaan van 1 tot 4
  • void mainScreenP (int choice); // Daar sal vier opsies van die toestel wat gemaak word, geskryf word
  • bool mainScreenCS (bool mainScreen); // dit verander die hoofskerm na vals
  • bool mainScreenBack (bool mainScreen); // dit verander die hoofskerm na waar
  • leegte tempCelsius (); // lees temperatuur in C DHT sensor opsie
  • leegte tempFarenheit (); // lees temperatuur in F DHT sensor opsie
  • leegte druk Humiditeit (); // lees opsie vir humiditeit DHT -sensor
  • void readSensorData (); // lees data oor gekoppelde sensors
  • String getTemperatureC ();
  • String getTemperatureF ();
  • String getHumidity ();
  • leë grondMoisture (); // dit is vir 'n ander sensor en diodes
  • leegte printSensorSoilMoisture (); // druk grondvoggedeelte op lcd
  • leegte diodeLights (int waarde); // aan- en afskakel van diodes
  • leegte printValue (int -waarde);

6. Opstelling vir arduino is deel van die opstel van 'n LCD- en DHT -sensor en ook diodes

7. Die belangrikste deel is die gedeelte waar al die bogenoemde geskrewe metodes gebruik word.

Die volledige kode van hierdie projek sal bygevoeg word by hierdie stap. Hou in gedagte dat die moontlikheid is dat die penne nie aan mekaar gekoppel is soos op die skema nie; ek dink dat die diodes verander is.

Stap 4: Gebruik u Arduino

Gebruik jou Arduino
Gebruik jou Arduino
Gebruik jou Arduino
Gebruik jou Arduino
Gebruik jou Arduino
Gebruik jou Arduino
Gebruik jou Arduino
Gebruik jou Arduino

Dit is waarskynlik die snaakste deel. Dit is darem snaakser nadat al die kodering geskryf is. In hierdie gedeelte kan u foto's sien van hoe die projek werk. Daar is 4 opsies.

  1. Leestemperatuur in Celsius
  2. Leestemperatuur in Fahrenheit
  3. Lees humiditeit
  4. Skakel diodes aan en leeswaardes van grondvogsensor.

U kan een van die moontlike opsies kies, u kan ook teruggaan en weer kies as u iets anders wil sien. Eenvoudig en maklik om te gebruik.

As daar nog 'n ander vraag is, kan u my vra. Dankie dat julle na my projek gekyk het. Met alle groete. Sebastian

Aanbeveel: