INHOUDSOPGAWE:

Grondvog met knoop: 7 stappe
Grondvog met knoop: 7 stappe

Video: Grondvog met knoop: 7 stappe

Video: Grondvog met knoop: 7 stappe
Video: Meet the Animals | Groundhog🐿 | Rodents | Wildlife Animals | Groundhog Day| Kindergarten 2024, November
Anonim
Image
Image
Grondvog met knoop
Grondvog met knoop
Grondvog met knoop
Grondvog met knoop
Grondvog met knoop
Grondvog met knoop

In hierdie handleiding sal ek jou wys hoe om 'n tuisgemaakte grondsensor vir die tuingesondheidstelsel te maak. Ek sal u wys wat u benodig, 'n paar kodevoorbeelde gee en hoe u die kode kan implementeer.

Aan die einde van die instruksies weet u hoe u die kleur van 'n LED -strook kan verander as die grond nat, effens nat of droog is.

In hierdie handleiding sal ek gebruik maak van:

  • Arduino weergawe 1.8.9
  • Die Adafruit_NeoPixel.h -biblioteek

Voorrade

U benodig:

  • NodeMCU 1.0 (ESP-12E module)
  • 1 vroulike tot vroulike kabel
  • 'N LED -strook
  • (Opsioneel) Tuisgemaakte grondsensor (kyk die video hierbo tot 00:36)

Stap 1: Opstel

Stel op
Stel op
Stel op
Stel op
Stel op
Stel op
Stel op
Stel op
  • Neem u knoop en u grondsensor.
  • Koppel die grondsensor aan A0. (Foto 1) (neem 'n alternatiewe vroulike kabel en koppel dit aan A0 (Foto 3)

Neem u LED -strook en plaas GND in G, 5V op 3V en die middelste kabel in D5. (Foto 2)

Nou lyk dit soos die laaste foto.

Stap 2: Voeg kode vir grondsensor by

Voeg kode vir grondsensor by
Voeg kode vir grondsensor by
  • Maak 'n nuwe projek in arduino IDE
  • Verlede in die volgende kode:

/* Analoog ingang, analoog uitset, seriële uitset

Lees 'n analoog invoerpen, karteer die resultaat na 'n reeks van 0 tot 255 en gebruik die resultaat om die polswydte modulasie (PWM) van 'n uitsetpen in te stel. Druk die resultate ook op die Serial Monitor af.

Die kring: - potensiometer gekoppel aan analoog pen 0. Die middelste pen van die potensiometer gaan na die analoog pen. sypenne van die potensiometer gaan na +5V en word gemaal - LED is verbind van digitale pen 9 tot grond

geskep 29 Des. 2008 gewysig 9 Apr 2012 deur Tom Igoe

Hierdie voorbeeldkode is in die publieke domein.

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

/ Hierdie konstantes sal nie verander nie. Hulle word gebruik om name aan die penne te gee: const int analogInPin = A0; // Analoog invoerpen dat die potensiometer gekoppel is aan const int analogOutPin = D5; // Analoog uitsetpen waaraan die LED gekoppel is

int sensorValue = 0; // waarde uit die pot gelees

leemte -opstelling () {// initialiseer seriële kommunikasie teen 9600 bps: Serial.begin (9600); }

void lus () {// lees die analoog in waarde: sensorValue = analogRead (analogInPin);

// druk die resultate af na die Serial Monitor: Serial.print ("sensor ="); Serial.print (sensorValue); Serial.print ("\ n"); // Serial.println (outputValue);

// wag 1 millisekondes voor die volgende lus vir die analoog-na-digitale // omskakelaar om na die laaste lesing te vestig: vertraging (1000); }

Nou kan u kyk of u sensor 'n waarde gee.

Raak die einde van die skroef of die kabel en u sal iets soos foto 1 sien

Kontroleer u kabels as dit nie werk nie. Is hulle korrek verbind?

Stap 3: Neopixel -biblioteek

Neopixel -biblioteek
Neopixel -biblioteek
  • Laai die adafruit_neopixel -biblioteek af (as u dit nog nie gedoen het nie).

    • Gaan na gereedskap> bestuur liberales
    • soek na adafruit neopixel foto 1
    • Installeer weergawe 1.2.5

Stap 4: Opstelling van Neopixel -kode

  • Voeg die volgende bo -aan u projek by

    • #insluit
    • #insluit
    • #sluit "Adafruit_NeoPixel.h" in
  • Hieronder:

char ssid = "SSID"; // jou netwerk SSID (naam)

char password = "password"; // u netwerkwagwoord

En daaronder

#defineer PIXEL_PIN D5#definieer PIXEL_COUNT 30 // verander na hoe baie LED's op u strook verskyn

#definieer PIXEL_TYPE NEO_GRB + NEO_KHZ800

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

Stap 5: Ongeldige opstelling

Plaas die volgende kode in die leemte -opstelling ()

pixels.begin (); // INITIALISEER NeoPixel -strookvoorwerp (VEREIST) pixels.show (); // Skakel alle pixels so gou moontlik uit

pixels.setBrightness (50); // moet tussen 0 en 255 wees, as u wil hê dat die LED -strook helderder moet wees, kan u die getal verhoog

Stap 6: Loop Loop

In die leemte -lus () en onder die vertraging (1000); voer die volgende kode in

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

vir (int i = 0; i

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

pixels.show ();

}

} anders as (sensorValue> 200 || sensorValue <= 500) {

vir (int i = 0; i

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

pixels.show ();

}

} anders as (sensorValue> 500) {

vir (int i = 0; i

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

pixels.show ();

}

}

}

Stap 7: Kontroleer

Tjek
Tjek
Tjek
Tjek

Baie geluk! U het pas 'n stelsel gemaak wat kan aandui of die grond nat of droog is.

As u die sensor in nat grond plaas, word die LED groen en in droë grond word dit rooi. Soos die foto's hierbo.

Aanbeveel: