Innehållsförteckning:

Varningssystem för jord med låg fuktighet för din växt: 5 steg
Varningssystem för jord med låg fuktighet för din växt: 5 steg

Video: Varningssystem för jord med låg fuktighet för din växt: 5 steg

Video: Varningssystem för jord med låg fuktighet för din växt: 5 steg
Video: Divine Healing | Andrew Murray | Christian Audiobook 2024, November
Anonim
Varningssystem för jord med låg fuktighet för din växt
Varningssystem för jord med låg fuktighet för din växt

I flera bostäder är det vanligt att man hittar burkar med olika växtsorter. Och med det stora antalet dagliga aktiviteter glömmer människor att vattna sina växter och de dör på grund av brist på vatten.

För att undvika detta problem bestämde vi oss för att skapa ett system för att informera när en växt inte har vatten. På detta sätt kommer du aldrig att glömma att bevattna din växt och den kommer att leva länge. Därefter kommer vi att presentera hela utvecklingen av detta projekt.

Tillbehör

  • PCBWay Custom PCB
  • Analog jordfuktighetssensor för Arduino
  • Arduino UNO
  • Bygelkablar (generiska)
  • Standard LCD - 16 x 2 blå
  • UTSOURCE Rotary Potentiometer 10k

Steg 1: Projektutveckling

Projektutveckling
Projektutveckling

Ett av de sätt som vi använder för att detektera mängden vatten i anläggningen är genom fuktparametern. Så ju mindre vatten det finns i burken i vår växt, desto lägre blir markfuktigheten.

Därför måste vi använda en fuktsensor för att analysera tillståndet av fukt i vår anläggning.

Genom den satte vi upp en krets monterad i brödbrädan med Arduino för att utföra övervakning och indikering av låg luftfuktighet i kaktusburkan. Så, med hjälp av displayens LCD -skärm för att informera vår användare om fukten, som visas i figur 1.

Steg 2: Sätt in fuktsensorn i kretsen

Sätt i fuktsensorn i kretsen
Sätt i fuktsensorn i kretsen
Sätt i fuktsensorn i kretsen
Sätt i fuktsensorn i kretsen

Från kretsen ovan kommer vi att sätta in sonden för fuktmätning i anläggningen som vi vill övervaka. I vårt projekt sätter vi in en sond i en liten kaktus, som visas i figur 2.

Nu ska vi se hur vi projicerar arbetet steg-för-steg och härefter kommer vi att lära oss hur man skapar kontrollkoden. Inledningsvis, när vi inte ansluter sensorn inuti burken, har enheten ett lågt fuktinnehåll på 2% utanför kaktusburken. Detta kan ses i figur 3.

Steg 3: Förstå fuktvärdena

Förstå fuktvärdena
Förstå fuktvärdena
Förstå fuktvärdena
Förstå fuktvärdena

Detta låga procentvärde representerar en låg luftfuktighet. Nu, efter att sensorn har satts in i kaktusburkens jord, visas ett värde på 36%, som visas i figur 4. Det vill säga, vår luftfuktighet är låg och systemet visar meddelandet Låg fuktighet eftersom värdet är lägre än 60%.

Nästa steg är att bevattna jorden i vår kaktus kanna och vi kan verifiera ökningen av luftfuktigheten till 69%.

Efter att ha förstått hur projektet fungerar kommer vi att presentera all konstruktionslogik för att skapa detta övervakningssystem. Låt oss komma igång!

Steg 4: Logisk programmering

Därefter kommer programmeringslogiken att presenteras genom den konstruerade koden.

Ursprungligen förklarades biblioteket med Display LCD, variabler och skapades ett objekt LCD med dess stift för anslutning med Arduino UNO.

#omfatta

#define sensor A0 bool LCDControl = 0, LowUmid = 0, HighUmid = 0; byte UmidityPercent = 0, fukt = 0, föregående värde = 0; int ValUmidade = 0, AnalogValue = 0; const int rs = 2, en = 3, d4 = 4, d5 = 5, d6 = 6, d7 = 7; LiquidCrystal lcd (rs, en, d4, d5, d6, d7);

Efter detta initierades installationsfunktionen och LCD -skärmen 16x2 och sensorns stift konfigurerades som en ingång. Slutligen gjorde vi den första avläsningen av vår sensor och vi använde som referens för variabeln PreviousValue, som visas nedan.

{Serial.begin (9600); lcd.begin (16, 2); pinMode (sensor, INGÅNG); Tidigare värde = analogRead (sensor); }

Med de variabler som skapats och kommandona i void setup -funktionen kommer vi att förklara all logisk programmering i loop -funktionen.

// Le o valor do pino A0 do sensorAnalogValue = analogRead (sensor); // Mostra o valor da porta analogica no serial monitor Serial.print ("Analog Port:"); Serial.println (AnalogValue); UmidityPercent = map (AnalogValue, 0, 1023, 0, 100); fukt = 100 - UmidityPercent;

I loop -funktionen avlästes det analoga värdet och värdet kartlades i intervallet 0 och 100. Detta värde representerar en procentandel av jordens fukt. När fukten är hög i världen närmar sig värdet 0 och om fukten är låg når värdet 100.

För att underlätta representationen av värdet och för att förhindra att användarens läsning förvirrar, vänder vi denna logik och representerar att 0% är låg luftfuktighet och 100% hög luftfuktighet. Detta gjordes med hjälp av beräkningen som utfördes efter kartläggningen.

fukt = 100 - UmidityPercent;

Efter att ha läst måste fuktvärdet visas på displayens LCD -skärm. Nästa steg är att verifiera om fuktvärdet skiljer sig från dess värde plus 1 eller dess värde minus 1, enligt villkoret nedan.

om ((fukt> (föregående värde) +1) || (fukt <(föregående värde)- 1))

Detta villkor används för att förhindra att systemet visar samma värde flera gånger i LCD -skärmen. Men när villkoret är sant, kommer systemet att presentera värdet i LCD -skärmen och verifiera om värdet är mer eller lika än 60%eller mindre än 60%. Om värdet var mer eller lika än 60%, är systemet närvarande meddelandet Hög fuktighet, annars presenterar du meddelandet Lågfuktighet, som visas nedan.

if ((fukt> (föregående värde) +1) || (fukt <(föregående värde)- 1)) {lcd.setCursor (1, 0); lcd.print ("Fukt:"); lcd.print (""); lcd.setCursor (11, 0); lcd.print (fukt); lcd.print ("%"); if (fukt = 60 && HighUmid == 0) {lcd.setCursor (2, 1); lcd.print (""); lcd.setCursor (1, 1); lcd.print ("hög fuktighet"); HighUmid = 1; LowUmid = 0; } Föregående värde = fukt; }

Slutligen kommer systemet att lagra värdet av fuktvariabeln i föregående värde för att aktualisera dess värde. Varje gång ett nytt värde presenteras i displayen aktiveras variabeln föregående värde för att användas i andra cykler för behandling av koden. markens fuktnivå.

Steg 5: Erkännanden

Silícios Lab tackar PCBWay för sitt stöd och samarbete. Och vi har många fördelar för dig. Tjäna 10 gratis PCB och massor av bönamynt (veta mer) för att handla med produkter på PCBWays webbplats.

Förutom dem, tackar Silícios Lab UTSOURCE för sitt stöd, för att erbjuda oss elektroniska komponenter till låg kostnad av bra kvalitet och bra service.

Rekommenderad: