Kazalo:

Vlaga tal z vozliščem: 7 korakov
Vlaga tal z vozliščem: 7 korakov

Video: Vlaga tal z vozliščem: 7 korakov

Video: Vlaga tal z vozliščem: 7 korakov
Video: Утепление балкона изнутри. Как правильно сделать? #38 2024, November
Anonim
Image
Image
Vlažna tla z vozliščem
Vlažna tla z vozliščem
Vlažna tla z vozliščem
Vlažna tla z vozliščem
Vlažna tla z vozliščem
Vlažna tla z vozliščem

V tem priročniku vam bom pokazal, kako narediti domač senzor tal za sistem vrtnega zdravja. Pokazal vam bom, kaj potrebujete, dal nekaj primerov kode in kako jo implementirati.

Na koncu navodil boste vedeli, kako spremeniti barvo LED traku, ko je zemlja mokra, rahlo mokra ali suha.

V tem priročniku bom uporabil:

  • Arduino različica 1.8.9
  • Knjižnica Adafruit_NeoPixel.h

Zaloge

Potrebovali boste:

  • NodeMCU 1.0 (modul ESP-12E)
  • 1 ženski na ženski kabel
  • LED trak
  • (Neobvezno) Homade senzor tal (Oglejte si zgornji video do 00:36)

1. korak: Nastavitev

Nastaviti
Nastaviti
Nastaviti
Nastaviti
Nastaviti
Nastaviti
Nastaviti
Nastaviti
  • Vzemite vozlišče in senzor tal.
  • Tipalo tal priključite na A0. (Fotografija 1) (alternativno vzemite trakasti ženski kabel in ga priključite na A0 (Fotografija 3)

Vzemite LED trak in postavite GND v G, 5V na 3V, srednji kabel pa v D5. (Fotografija 2)

Zdaj bo videti kot zadnja fotografija.

2. korak: Dodajanje kode za senzor tal

Dodajanje kode za senzor tal
Dodajanje kode za senzor tal
  • Ustvarite nov projekt v arduino IDE
  • Preteklo v naslednji kodi:

/* Analogni vhod, analogni izhod, serijski izhod

Prebere analogni vhodni pin, preslika rezultat v območje od 0 do 255 in uporabi rezultat za nastavitev širinske impulzne modulacije (PWM) izhodnega zatiča. Rezultate tudi natisne na serijski monitor.

Vezje: - potenciometer priključen na analogni zatič 0. Sredinski zatič potenciometra gre na analogni zatič. stranski zatiči potenciometra gredo na +5V in ozemljitev - LED je priključena z digitalnega zatiča 9 na maso

ustvarjeno 29. decembra 2008 spremenil 9. aprila 2012 Tom Igoe

Ta primer kode je v javni domeni.

www.arduino.cc/en/Tutorial/AnalogInOutSeri… *

/ Te konstante se ne bodo spremenile. Uporabljajo se za poimenovanje uporabljenih zatičev: const int analogInPin = A0; // Analogni vhodni pin, ki je potenciometer pritrjen na const int analogOutPin = D5; // Analogni izhodni pin, na katerega je priključena LED

int sensorValue = 0; // vrednost, prebrana iz lonca

void setup () {// inicializira serijsko komunikacijo pri 9600 bps: Serial.begin (9600); }

void loop () {// bere analogno vrednost: sensorValue = analogRead (analogInPin);

// natisnemo rezultate na serijski monitor: Serial.print ("sensor ="); Serial.print (sensorValue); Serial.print ("\ n"); // Serial.println (outputValue);

// počakamo 1 milisekundo pred naslednjo zanko, da se analogno-digitalni // pretvornik poravna po zadnjem odčitku: delay (1000); }

Zdaj lahko preverite, ali vaš senzor daje vrednost.

Dotaknite se konca vijaka ali kabla in videli boste nekaj podobnega fotografiji 1

Če ne deluje, preverite kable. So pravilno povezani?

3. korak: Knjižnica Neopixel

Knjižnica Neopixel
Knjižnica Neopixel
  • Prenesite knjižnico adafruit_neopixel (če tega še niste storili).

    • Pojdite na orodja> upravljajte osvoboditve
    • poiščite fotografijo adafruit neopixel 1
    • Namestite različico 1.2.5

4. korak: Nastavitev kode Neopixel

  • Na vrh svojega projekta dodajte naslednje

    • #vključi
    • #vključi
    • #include "Adafruit_NeoPixel.h"
  • Pod tem:

char ssid = "SSID"; // vaš omrežni SSID (ime)

char password = "geslo"; // geslo za omrežje

In pod tem

#define PIXEL_PIN D5#define PIXEL_COUNT 30 // spremenite, kako so maney LED -ji na vašem traku

#define PIXEL_TYPE NEO_GRB + NEO_KHZ800

Piksli Adafruit_NeoPixel = Adafruit_NeoPixel (PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

5. korak: Nastavitev praznine

V nastavitev voide () vnesite naslednjo kodo ()

pixels.begin (); // INICIALIZE NeoPixel strip object (REQUIRED) pixels.show (); // Čim prej izklopite vse slikovne pike

pixels.setBrightness (50); // mora biti med 0 in 255, če želite, da je LED trak svetlejši, lahko povečate število

6. korak: Void Loop

V zanki void () in pod zakasnitvijo (1000); vnesite naslednjo kodo

if (sensorValue == 0 || sensorValue <= 200) {

za (int i = 0; i

pixels.setPixelColor (i, 255, 0, 0);

piksli.show ();

}

} else if (sensorValue> 200 || sensorValue <= 500) {

za (int i = 0; i

pixels.setPixelColor (i, 0, 255, 0);

piksli.show ();

}

} else if (sensorValue> 500) {

za (int i = 0; i

pixels.setPixelColor (i, 0, 0, 255);

piksli.show ();

}

}

}

7. korak: Preverite

Preverite
Preverite
Preverite
Preverite

Čestitamo! Pravkar ste naredili sistem, ki lahko pokaže, ali je zemlja mokra ali suha.

Ko senzor postavite v mokro zemljo, bo LED svetila zeleno, v suhi zemlji pa rdeče. Tako kot zgornje slike.

Priporočena: