Áramkörök

Robot építése - 6. lecke: Építsen egy Arduino robotot, amely figyelemmel kíséri a CO2 sűrűségét: 11 lépés

New Robot Makes Soldiers Obsolete (Corridor Digital)

New Robot Makes Soldiers Obsolete (Corridor Digital)

Tartalomjegyzék:

Anonim

Ez az ötödik bemutató a „Hogyan készítsünk egy robotot” sorozatból. Ebben a bemutatóban a robotplatformot a CO2-érzékelővel kombináljuk, hogy egy adott terület CO2-sűrűségét észleljük.

Ugyanaz, mint az utolsó négy oktatóanyag, például egy Arduino robotkészlet (Pirate: 4WD Arduino Mobile Robot Kit, Bluetooth 4.0), mint például.

Lessons menü:

1. lecke: Bevezetés

2. lecke: Alapvető Arduino robot létrehozása

3. lecke: Vonal nyomon követése Arduino robot

4. lecke: Építsen egy Arduino robotot, amely elkerülheti az akadályokat

5. lecke: Arduino robot létrehozása fény- és hanghatásokkal

6. lecke: Építsen egy Arduino robotot, amely figyeli a környezetet

7. lecke: Bluetooth-vezérelt Arduino robot építése

Hardverelemek

CO2 gázérzékelő az Arduino × 1-hez

kellékek:

1. lépés:

Digitális érintésérzékelő × 1

2. lépés:

LCD kezelő pajzs Arduino × 1-hez

3. lépés:

M3 * 6MM nylon oszlopok és nyakkendők

4. lépés:

ASSEMBLY INSTRUCTION:

1. LÉPÉS: Adja hozzá az érintőérzékelőt

Az érintőérzékelőn két lyuk van a nylon oszlopok rögzítéséhez.

Rögzítse a nylon oszlopokat. Kérjük, ne csavarja túl ezeket az oszlopokat.

5. lépés:

Ezután csatlakoztassa az érintőérzékelőt a lemezre.

6. lépés:

2. LÉPÉS: Az LCD képernyő hozzáadása

Csúsztassa a partokat az LCD képernyő négy lyukába, és rögzítse azokat. Vágja le a nyakkendőcsomagok fennmaradó részét.

7. lépés:

3. lépés: A CO2-érzékelő hozzáadása

Rögzítse a nylon oszlopokat a CO2 érzékelőre. Csatlakoztassa a CO2-érzékelőt az érzékelő lemezre.

8. lépés:

Szinte befejezted az összeszerelést. Kérjük, ne rögzítse a felső lemezt még a platformra, mert később kell az áramköri kapcsolaton dolgozni.

9. lépés:

KAPCSOLJA A SZERKEZETET:

Kérjük, tartsa a kábeleket rendben.

Az interfész a következőképpen színeződik:

A piros jelzi a teljesítményt

A fekete jelzi a földet

A kék az analóg bemenet csapját jelzi

A zöld a digitális I / O csatlakozót jelzi

Az LCD-monitorot a VCC, GND, SCL és SDA-hoz kell csatlakoztatni az adott sorrendben.

10. lépés:

CODING

Keresse meg a DHT11_Display.ino nevet és töltse le. Ne felejtse el a LiquidCrystal_I2C és a CO2 könyvtárát.

11. lépés:

A kód sikeres letöltése után az LCD képernyőn megjelenik a valós idejű CO2-sűrűség. Az érintésérzékelőnek két funkciója van:

1. Ha egy ideig nem érinti az érzékelőt, akkor automatikusan kikapcsol.

2. Ha további érzékelőket szeretne hozzáadni az egyéb környezeti adatok megfigyeléséhez, az érintőérzékelő át tudja kapcsolni az LCD monitor adatait.

A CODE SYNOPSIS könyvtár fontos. Nehéz megérteni a könyvtárat könyvtár nélkül.

#include #include

LiquidCrystal_I2C lcd (0x20,16,2);

#include "CO2.h"

CO2-érzékelő CO2ppm;

Itt kell tudni a CO2Pin-ről, egy olyan változóról, amelyet az érzékelő csapjai jelennek meg.

int CO2Pin = A1;

Nevezetesen, a DHT11Pin az analóg Pin1. Ez azt jelenti, hogy CO2-érzékelőnk az analóg Pin1-hez csatlakozik.

Az alábbi változások az időváltozókra vonatkozó egyes nyilatkozatok. A TouchPin az érintésérzékelőt jelenti, míg a 13 a digitális tű.

hosszú áramMillis = 0;

hosszú korábbiMillis;

hosszú intervallum = 4000;

int szám = 0; // számok száma

int touchPin = 13;

Hozd be a beállítás () függvényét, ami az inicializálás beállítása.

pinMode (touchPin, bemenet);

Ezután tartsa az érintőérzékelőt beíró üzemmódban. Konkrét információkért ellenőrizze az Arduino hivatkozást az Arduino honlapján (www.arduino.cc), amely bemutatja a pinMode () funkcióját.

Ezután be kell állítania az LCD-képernyőt, és be kell kapcsolnia az LCD-fényt, ami azt mutatja, hogy az LCD-képernyő kész.

lcd.init ();

lcd.backlight ();

késleltetés (100);

lcd.setBacklight (0);

Most viszont a hurok () függvénye van. Először el kell olvasnunk az értéket az érintőérzékelőről, majd tárolni ezeket az adatokat egy változóval, hogy tothattate.

int touchState = digitalRead (touchPin);

Ezután ellenőrizze, hogy a vezérlő jelzi-e a HIGH jelet, ha megérinti az érintőérzékelőt az ujjaival, 1 hozzá kell adni a számlálóhoz.

ha (touchState == HIGH) {count ++; előzőMillis = millis (); }

Ez azt jelenti, hogy hányszor megérintette a képernyőt. De ha csak egyszer érinti az érzékelőt, akkor az egyes érintések időtartama a millisz funkcióban szerepel ().

Megváltoztatjuk az érintési idő hosszát egy al-mondattal, ha az ha. Az intervallum itt az érintési időszakot jelenti. Így tudjuk, hogy milyen lépéseket kell tenni négy másodpercen belül, és több mint négy másodperces érintéssel.

ha (currentMillis - previousMillis <Interval) {// tegyen valamit 4 másodperc alatt

egyébként {// csinál valamit több mint 4 másodpercig}

lcd.setBacklight (0);

A setBacklight () funkciója az LCD háttérvilágítási lámpájának kikapcsolására szolgál.

Milyen lépéseket kell tenni, ha több mint négy másodpercig megérintjük az érzékelőt

Ha több mint négy másodpercig megérintjük az érzékelőt, tudjuk, hogy az LCD háttérvilágítás lámpa kikapcsolható.

milyen lépéseket kell tenni négy másodpercen belül.

ha (szám == 1) {// Egy gombnyomás, az LCD-képernyő nem mutat különbséget}

mást, ha (szám == 2) {// Érintse meg kétszer, az érték megjelenik az LCD képernyőn}

4 másodpercen belül még egyszer nyomja meg az érintőérzékelőt; a képernyő még ki van kapcsolva. Csak akkor, ha egyszerre kétszer megérinti, az LCD háttérvilágítása világít és a CO2-sűrűség számai jelennek meg.

Kérjük, ne feledje, hogy a számlálót nullának tartja, miután az érzékelőt legutóbb megérintette.

count = 0;

Így a teljes kód:

if (szám == 1) {lcd.setBacklight (0); }

egyébként ha (szám == 2) {lcd.backlight (); DustShow (); count = 0; }

Ezután nyomon kell követnünk az aktuális időt, mivel összehasonlíthatjuk az előzőMillis-tel. Ez a pont nagyon fontos.

currentMillis = millis ();

A CO2ppm.Read () funkciója az adatok olvasására szolgál. A CO2Value változót pedig a CO2-érzékelőből származó adatok tárolására használják.

int CO2Value = CO2ppm.Read (CO2Pin);

Íme, hogyan használjuk az LCD képernyőhöz kapcsolódó funkciót.

lcd.setCursor (0,0);

lcd.setCursor (0,1);

A setCursor (oszlop, sor) funkciója arra szolgál, hogy bemutassa, hogy melyik oszlop és sor jelzi a kurzort, a zárójelben lévő nullától kezdve.

lcd.print (CO2Value);

A nyomtatás () azt jelenti, hogy ez a szám közvetlenül a képernyőn látható.

lcd.print ("");

Az lcd.print ("") a képernyőn látható üres hely. A képernyő törléséhez használják.

Több érzékelő kombinációja Hogyan kombinálhatunk több környezeti érzékelőt, ha már vásárolt valamilyen érzékelőt?

Ne aggódj. Kínálunk Önnek egy kódolási sablont több érzékelő teszteléséhez. A kombináció módosítását az említett sablonra hivatkozva végezheti el. Tény, hogy az elmélet ugyanaz, mint az egyetlen érzékelő, azzal a különbséggel, hogy az LCD képernyő megváltoztatásához lépéseket kell tenni.

Az alábbi piros kódot módosítani kell. Korábban már említettük, hogy a szám azt jelenti, hogy az ujjak hányszor érik az érzékelőt. Így a 2-es szám azt jelenti, hogy kétszer megnyomtuk, és az első érzékelő számát mutatja. Folytasd! Kérlek, tartsd szem előtt, hogy újra meg kell tartanod a nullát.

Minta kód:

if (currentMillis - előzőMillis <Interval) {

if (szám == 1) {lcd.setBacklight (0); }

egyébként ha (szám == 2) {//No.1 érzékelő érzékelő1Show (); lcd.backlight (); }

egyébként ha (szám == 3) {//No.2 érzékelő érzékelő2Show (); lcd.backlight (); szám = 0; }

Természetesen fontos az iniciációs beállítás, a változók deklarálása az érzékelő számára.

Ellenőrizze a WeatherStation.ino nevű mintakódot, ha még mindig nem tudja, hogyan módosíthatja kódjait.