Obsah:

Projekt senzora a vlhkosti pôdy Arduino DHT22 s ponukou: 4 kroky
Projekt senzora a vlhkosti pôdy Arduino DHT22 s ponukou: 4 kroky

Video: Projekt senzora a vlhkosti pôdy Arduino DHT22 s ponukou: 4 kroky

Video: Projekt senzora a vlhkosti pôdy Arduino DHT22 s ponukou: 4 kroky
Video: Arduino návody | Senzor teploty a vlhkosti HTU21D I2C 2024, November
Anonim
Projekt senzora a vlhkosti pôdy Arduino DHT22 s ponukou
Projekt senzora a vlhkosti pôdy Arduino DHT22 s ponukou

Ahoj chlapci, dnes vám predstavujem svoj druhý projekt s pokynmi. Tento projekt predstavuje zmes môjho prvého projektu, v ktorom som použil snímač pôdnej vlhkosti a snímač DHT22, ktorý sa používa na meranie teploty a vlhkosti. Tento projekt sa ľahko realizuje a ľudia, ktorí používajú Arduino, budú pri jeho vytváraní cítiť ticho. Rozdiel medzi týmto projektom a prvým je ten, že v tomto projekte bude mať užívateľ menu, v ktorom si môže vybrať, čo chce v danej chvíli vidieť. K dispozícii budú štyri možnosti. Vezmite si teda súpravu a začnite vyrábať tento projekt, ktorý je možné použiť v akejkoľvek domácnosti.

Krok 1: Získanie všetkých častí

Získanie všetkých dielov
Získanie všetkých dielov
Získanie všetkých dielov
Získanie všetkých dielov
Získanie všetkých dielov
Získanie všetkých dielov

Tento projekt používa niekoľko častí. Tieto diely sú veľmi lacné, takže si s cenou nerobte starosti. Niektoré časti použité v tomto projekte je možné zmeniť, takže výroba projektu môže byť lacnejšia. Je na vás, ktoré odporúčané časti použijete a urobíte tento projekt ešte lepším. Časti použité v tomto projekte:

  1. Arduino uno rev3 (Môžete použiť aj iné Arduino)
  2. Breadboard
  3. Zelený displej LCD 1602 s I2C (môžete použiť aj displej s I2C, ale na jeho pripojenie budete potrebovať viac pinov)
  4. 16 -tlačidlová klávesnica (vymeniteľná)
  5. FC-28-d Modul detekcie pôdneho vlhkomera + snímač pôdnej vlhkosti
  6. Snímač teploty a vlhkosti DHT22 (Môžete použiť DHT11, ktorého obstaranie je lacnejšie)
  7. Červená LED dióda
  8. Modrá LED dióda
  9. 2 rezistory 220 ohm (používané pre diódy)
  10. Schéma odporu 4k7 použitého pre DHT22
  11. Konektor batérie Arduino
  12. Niekoľko prepojovacích káblov na pripojenie všetkých častí

Jedna vec, ktorú vám musím povedať, než začnete stavať tento projekt, je, že klávesnica nie je potrebná. Tentoraz som použil klávesnicu, pretože môj rotačný snímač bol poškodený. Myslím si, že tento projekt by bol perfektný, keby mal rotačný kodér, pretože by používal menšie piny alebo mohol používať 3 tlačidlá.

Krok 2: Spojenie všetkých častí dohromady

Spojenie všetkých častí dohromady
Spojenie všetkých častí dohromady

V tomto kroku môžete vidieť schému, ktorú som urobil s fritovaním. Zapíšem si horúce, aby som spojil všetky kľúčové časti tohto projektu.

Ako vidíte, na napájanie dosky na pečenie používame 5V a GND od arduina.

LCD:

  • VCC až 5v (+ časť na doske)
  • GND až GND (- časť na doske)
  • SDA na analógový kolík A4
  • SCL na analógový pin A5

Klávesnica so 16 tlačidlami:

Na pripojenie klávesnice používame piny 9, 8, 7, 6, 5, 4, 3, 2 (to je dôvod, prečo by som použil rotačný snímač, pretože na doske by to trvalo iba 3 piny)

Senzor pôdnej vlhkosti:

  • VCC až 5v (+ časť na doske)
  • GND až GND (-časť na doske)
  • D0 na digitálny kolík 0
  • A0 na analógový pin A0

DHT22:

  • VCC až 5v (+ časť na doske)
  • GND až GND (-časť na doske)
  • Výstupný kolík je spojený s kolíkom 12

Pripojenie diódy:

  • jedna časť diódy prechádza do - časti dosky na chlieb
  • druhá časť prechádza odporom 220 ohmov a potom je pripojený na pin 10 (modrá dióda) alebo 11 (červená dióda)

Krok 3: Napíšte kód

Pokúsim sa vysvetliť kód v niekoľkých častiach. Bude tiež napísaný úplný kód, aby ste ho mohli skopírovať a tiež zmeniť, ak uvidíte, že je to potrebné. Aj v tomto kóde je napísaných niekoľko metód pre prácu so senzormi, ale tentoraz sme sa zamerali hlavne na vytvorenie ponuky, ktorá bude ľahko zrozumiteľná pre ľudí, ktorí sú s Arduinom noví. Tentokrát nepoužívam žiadne prerušenia, ale v ďalších projektoch budem, takže majte na pamäti, že tento kód môže byť s prerušeniami oveľa lepší.

  1. Prvá časť kódu obsahuje všetky použité knižnice pre tento projekt. Majte na pamäti, že pre všetky časti, ktoré som povedal, že používam, potrebujete ďalšie knižnice: Wire, LiquidCrystal_I2C, klávesnicu a DHT. Všetky knižnice nájdete v Arduino IDE, ak prejdete na časť náčrtu a potom na zaradenie knižníc. Majte tiež na pamäti, že ak používate niečo ako rotačný kodér, pravdepodobne budete musieť namiesto klávesnice získať nové knižnice, ktoré budú pravdepodobne rotačné.h a tlačidlo. Ak používate snímač DHT11, knižnica je stále DHT.
  2. V druhej časti kódu bude definícia všetkých použitých častí. V prvom rade je to LCD. Potom je tu snímač DHT, ktorý je ako predmet reprezentovaný snímačom typu dht, a tiež pin, ktorý je pripojený. Tretím je snímač pôdnej vlhkosti a diódy.
  3. Klávesnicu popíšem trochu viac. Ako som povedal, môj rotačný snímač bol pokazený, tak som sa rozhodol ho použiť. Na tento projekt stačí mať iba štyri tlačidlá, dokonca sú na to dobré tri. Používam teda štyri tlačidlá na klávesnici iba pre jednu možnosť. Ak chcete niečo iné, ak máte nápad, môžete použiť niektoré z tlačidiel. V tejto časti musíte definovať riadky a stĺpce. Potom vám hexaKeys predstaví možnosti použité pre tento projekt. V mojom projekte sú B (späť), U (hore), D (dole) a A (prijať). Každé tlačidlo môžete prinútiť robiť niečo iné. Jedným tlačidlom by sa dalo zapnúť podsvietenie, druhým sa dá vypnúť. Takže sa s tým pokojne ešte zahrajte
  4. V tejto časti sú globálne premenné používané v kóde. Na zmenu obrazovky sa používajú boolovské premenné. Uvítacia premenná platí niekoľko sekúnd, iba keď je zapnuté arduino, potom bude po zvyšok času nepravdivé. Hlavné zameranie je na premennú mainScreen. Táto premenná vás prevedie z ponuky na inú možnosť v kóde. Ak je táto premenná nepravdivá, znamená to, že sa užívateľ rozhodol použiť jednu zo štyroch možností tohto projektu.
  5. Tu sú napísané všetky metódy použité v tomto kóde. Pokúsim sa vysvetliť všetky písomné metódy v tejto časti
  • void startScreen (); // metóda na spustenie projektu a arduino
  • int choiceNumber (int voľba); // tým sa zmení váš výber možností projektu. Číslo je od 1 do 4
  • void mainScreenP (int voľba); // tam budú zapísané štyri možnosti zariadenia, ktoré je vyrobené
  • bool mainScreenCS (bool mainScreen); // toto zmení mainScreen na false
  • bool mainScreenBack (bool mainScreen); // toto zmení mainScreen na true
  • neplatný tempCelsius (); // čítanie teploty v C senzore DHT možnosť
  • neplatná teplotaFarenheit (); // odčítanie teploty v možnosti snímača F DHT
  • prázdna tlačVlhkosť (); // čítanie možnosti snímača vlhkosti DHT
  • void readSensorData (); // čítanie údajov o pripojených senzoroch
  • Reťazec getTemperatureC ();
  • Reťazec getTemperatureF ();
  • Reťazec getHumidity ();
  • prázdna pôdaVlhkosť (); // toto je pre ďalší senzor a diódy
  • void printSensorSoilMoisture (); // tlač časti vlhkosti pôdy na LCD
  • void diodeLights (vnútorná hodnota); // zapínanie a vypínanie diód
  • void printValue (int hodnota);

6. Nastavenie pre arduino je časť, kde nastavíte senzor LCD a DHT a tiež diódy

7. Hlavná časť je časť, kde sa používajú všetky vyššie uvedené písomné metódy.

Úplný kód tohto projektu bude v prílohe tohto kroku. Majte na pamäti, že existuje možnosť, že piny nie sú prepojené ako na schéme, myslím si, že diódy sú zmenené.

Krok 4: Používanie Arduina

Používanie vášho Arduina
Používanie vášho Arduina
Používanie vášho Arduina
Používanie vášho Arduina
Používanie vášho Arduina
Používanie vášho Arduina
Používanie vášho Arduina
Používanie vášho Arduina

Toto je asi najzábavnejšia časť. Po tom všetkom, čo je napísané, je to prinajmenšom zábavnejšie. V tejto časti môžete vidieť obrázky o tom, ako projekt funguje. Existujú 4 možnosti.

  1. Teplota čítania v stupňoch Celzia
  2. Teplota čítania vo Fahrenheite
  3. Vlhkosť pri čítaní
  4. Zapnutie diód a čítanie hodnôt senzora pôdnej vlhkosti.

Môžete si vybrať ktorúkoľvek z možných možností, môžete sa tiež vrátiť späť a znova vybrať, ak chcete vidieť niečo iné. Jednoduché a jednoduché použitie.

Ak máte ďalšie otázky, môžete sa ma opýtať. Ďakujem, že ste sa pozreli na môj projekt. So všetkými pozdravmi. Sebastian

Odporúča: