Orodha ya maudhui:
- Hatua ya 1: Zuia Mchoro wa Mfumo
- Hatua ya 2: Maelezo ya Sehemu
- Hatua ya 3: Mchoro wa Mzunguko
- Hatua ya 4: Kufanya kazi Video na Faili ya Nambari
- Hatua ya 5: Kanuni ya Programu
Video: Ufuatiliaji wa mimea na Arifa ya SMS: Hatua 5
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Hapa ninaunda ufuatiliaji wa mimea na tahadhari ya SMS. Seva haihitajiki kwa mfumo huu wa tahadhari. Ni mradi wa bei rahisi sana na wa kuaminika.
Hatua ya 1: Zuia Mchoro wa Mfumo
Katika greenhouses za leo, vipimo vingi vya vigezo vinahitajika
kufuatilia na kudhibiti ubora na tija ya mimea. Lakini kupata matokeo unayotamani kuna mambo muhimu sana ambayo yanaweza kutumika kama Joto, Unyevu, Nuru na Udongo Mzuri, ambayo ni muhimu kwa ukuaji bora wa mmea. Kuweka vigezo hivi akilini nimejenga Mfumo wa Ufuatiliaji wa mimea otomatiki juu ya moduli ya GSM ukitumia Arduino. Mfumo huu ni mzuri sana kwa kukuza mimea bora. Sehemu nyingine muhimu ya mradi huu ni kwamba ni otomatiki kabisa na inafanya kazi kwa voltage ndogo kama; Ugavi wa 5-12V DC.
Sasa Moduli ya siku ya GSM inatumiwa sana kwa kutuma hali ya SMS ya aina yoyote ya data. Hapa katika mradi huu kwa kutumia Moduli ya SIM900A GSM tunaweza kuweka habari juu ya athari za hali ya hewa kwenye mimea. Mfumo huu pia utaonyesha mabadiliko ya hali ya hewa ambayo yanaathiri mmea katika uzalishaji na ubora wake n.k. Kusudi kuu la kuja na mradi huu ni kujenga Ufuatiliaji wa mimea otomatiki ambayo moduli ya GSM inapeleka habari juu ya Joto, Unyevu, kiwango cha Nuru, Udongo. unyevu.
Kwa sababu mimi ni raia wa India, nimetumia SIM900A (A ni anasimama kwa mtandao wa Asia) lakini unaweza kutumia moduli ya SIM tofauti kwa nchi yako. Nambari za AT zinaweza kutofautiana.
Hatua ya 2: Maelezo ya Sehemu
------------------ Ninapima aina nne za vigezo, ambazo zinaenda
kujadili hapa chini: ------------------
Joto na Unyevu
Sensorer ya DHT11 hutumiwa kuhisi joto na unyevu. Wakati joto na unyevu huwa juu mzizi wa mimea ulioharibika na ukuaji wa mmea sio vizuri.
Ukali wa Mwanga
Ukali wa nuru ni jambo muhimu kwa ukuaji wa mmea. Kwa kugundua nguvu ya mwangaza LDR (kipingaji kinachotegemea nuru) hutumiwa. Ukali wa taa hupimwa kwa LUX na kwa hivyo kwa maonyesho 100 ya taa ya LUX hutumiwa kama kiwango kilichofafanuliwa au kizingiti.
Unyevu wa Udongo
Unyevu wa mchanga ni muhimu sana kwa ukuaji mzuri wa mimea. Hapa sensor ya udongo hutumiwa kupima unyevu kwenye Udongo. Kutumia na sensor hii tunaweza kupima data ya mchanga kwa njia zote mbili, analog na pia dijiti.
Arifa ya SMS:
Thamani ya vigezo vyovyote hapo juu inapozidi kutoka kiwango kilichoainishwa au kiwango muhimu, mfumo hutuma moja kwa moja SMS kwa mmiliki au mwendeshaji na habari ya vigezo vinavyohusiana na wakati thamani inakuja katika masafa ya kawaida au chini ya kiwango kilichoainishwa tena mfumo kiatomati tuma SMS kwa mmiliki au mwendeshaji na habari ya data inayohusiana.
Arifa hutuma mara moja tu mpaka hali isiyobadilika ili mmiliki au mwendeshaji asipate SMS za mara kwa mara. Kwa hivyo, kifurushi cha chini cha SMS kinahitajika.
Hatua ya 3: Mchoro wa Mzunguko
Sehemu hizi zote zinapatikana kwa urahisi kwenye tovuti yoyote ya ununuzi mkondoni
au na muuzaji anayejulikana wa vipuri vya elektroniki. Vifurushi vyote vya data vinapatikana kwenye wavuti. Ikiwa shida yoyote jisikie huru kuwasiliana kwenye barua yangu.
Hatua ya 4: Kufanya kazi Video na Faili ya Nambari
Video ya mwisho ya kufanya kazi ya mradi
Hatua ya 5: Kanuni ya Programu
# pamoja
# pamoja
LiquidCrystal LCD (2, 3, 4, 5, 6, 7);
dht DHT; #fafanua dht_dpin A1 #fafanua LUX A0 #fafanua udongo A3
kuelea volt, lux, thamani; int output_value; joto la ndani, unyevu; taa nyepesi = 0; utaftaji = 0; int udongoflag = 0; int tempflag = 0; kuangalia; mtihani wa int, mtihani1; shahada ya baiti [8] = {0b00011, 0b00011, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000};
kuanzisha batili ()
{Serial.begin (9600); // Anzisha serial kuwasiliana na Modem ya GSM lcd. Anza (16, 2); pinMode (udongo, INPUT); lcd.createChar (1, digrii); lcd.setCursor (0, 0); lcd.print ("Afya ya mimea"); lcd.setCursor (0, 1); lcd.print ("Kufuatilia"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("AGRI PROJECT"); lcd.setCursor (0, 1); lcd.print ("Na S K CHHAYA"); kuchelewesha (1000); lcd wazi (); } kitanzi batili () {output_value = analogRead (udongo); output_value = ramani (value_ output, 550, 0, 0, 100); thamani = AnalogSoma (LUX); volt = (thamani / 1023.0) * 5; lux = ((2500 / volt) - 500) / 3.3; kuchelewesha (10000); // Toa wakati wa kutosha kwa GSM kujiandikisha kwenye Mtandao DHT.read11 (dht_dpin); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Temp"); lcd.setCursor (0, 1); lcd.print (joto = DHT. joto); // Takwimu za muda kwenye LCD LCD. Andika (1); lcd.print ("C"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Unyevu"); lcd.setCursor (0, 1); lcd.print (unyevu = DHT. unyevu); // Takwimu za unyevu kwenye LCD lcd.print ("%"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Mwanga"); lcd.setCursor (0, 1); lcd.print (lux); // Takwimu nyepesi kwenye LCD LCD.print ("LUM"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Unyevu"); lcd.setCursor (0, 1); lcd.print (pato_thamani); // Takwimu za mchanga kwenye LCD lcd.print ("%"); kuchelewesha (1000); lcd wazi ();
ikiwa (joto la 40) {SendSMS (); // SMS ya Temp high} ikiwa (unyevu 40) {SendSMS2 (); // SMS ya Unyevu juu} ikiwa (lux 100) {SendSMS4 (); // SMS ya Mwangaza juu} ikiwa (output_value == 950) {SendSMS7 (); // SMS ya Udongo Kavu} mwingine ikiwa (output_value! = 950) {SendSMS6 (); // SMS ya Udongo Mvua}} batili SendSMS () {if (tempflag == 0) {Serial.println ("AT + CMGF = 1"); kuchelewesha (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); kuchelewesha (500); Serial.print ("Temp High,"); Serial.print ("Temp"); Printa ya serial (joto); Serial.println ("digrii C"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Temp High"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Joto"); lcd.setCursor (0, 1); lcd.print (joto); andika lcd (1); lcd.print ("C"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Kutuma SMS"); kuchelewesha (1000); lcd wazi (); tempflag = 1; angalia = 0; mtihani = 0; kuchelewesha (10); }} batili SendSMS1 () {if (tempflag == 1) {Serial.println ("AT + CMGF = 1"); kuchelewesha (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); kuchelewesha (500); Serial.print ("Temp Low,"); Serial.print ("Temp"); Printa ya serial (joto); Serial.println ("digrii C"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Temp Low"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Joto"); lcd.setCursor (0, 1); lcd.print (joto); andika lcd (1); lcd.print ("C"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Kutuma SMS"); kuchelewesha (1000); lcd wazi (); tempflag = 0; angalia = 0; mtihani = 0; kuchelewesha (10); }} batili SendSMS2 () {if (humflag == 0) {Serial.println ("AT + CMGF = 1"); kuchelewesha (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); kuchelewesha (500); Serial.print ("Unyevu Juu"); Printa ya serial (unyevu); Serial.println ("%"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Unyevu Juu"); kuchelewesha (1000); lcd.setCursor (0, 1); lcd.print ("Unyevu"); lcd.print (unyevu); lcd.print ("%"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Kutuma SMS"); kuchelewesha (1000); lcd wazi (); humflag = 1; angalia = 0; mtihani = 0; kuchelewesha (10); }}
batili SendSMS3 () {if (humflag == 1) {Serial.println ("AT + CMGF = 1"); kuchelewesha (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); kuchelewesha (500); Serial.print ("Unyevu mdogo,"); Serial.print ("Unyevu"); Printa ya serial (unyevu); Serial.println ("%"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Unyevu mdogo"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Unyevu"); lcd.setCursor (0, 1); lcd.print (unyevu); lcd.print ("%"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Kutuma SMS"); kuchelewesha (1000); lcd wazi (); humflag = 0; angalia = 0; mtihani = 0; kuchelewesha (10); }} batili SendSMS4 () {if (lightflag == 0) {Serial.println ("AT + CMGF = 1"); // Kutuma SMS katika ucheleweshaji wa Njia ya Maandishi (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); // Badilisha kwa ucheleweshaji wa nambari ya simu ya kwenda (500); Serial.print ("NURU nzuri,"); Serial.print ("Ukali"); Rangi ya serial (lux); Serial.println ("LUX"); Serial.println ((char) 26); // tabia ya kuacha Ctrl + Z lcd.setCursor (0, 0); lcd.print ("Nuru nzuri"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Ukali"); lcd.setCursor (0, 1); lcd.print (lux); lcd.print ("LUX"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Kutuma SMS"); kuchelewesha (1000); lcd wazi (); taa ndogo = 1; angalia = 0; mtihani = 0; kuchelewesha (10); }} batili SendSMS5 () {if (lightflag == 1) {Serial.println ("AT + CMGF = 1"); kuchelewesha (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); kuchelewesha (500); Serial.print ("MWANGA WA CHINI,"); Serial.print ("Ukali"); Rangi ya serial (lux); Serial.println ("LUX"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Mwanga mdogo"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Ukali"); lcd.setCursor (0, 1); lcd.print (lux); lcd.print ("LUX"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Kutuma SMS"); kuchelewesha (1000); lcd wazi (); taa ndogo = 0; angalia = 0; mtihani = 0; kuchelewesha (10); }} batili SendSMS6 () {if (soilflag == 0) {Serial.println ("AT + CMGF = 1"); kuchelewesha (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); kuchelewesha (500); Serial.print ("Udongo Kavu,"); Serial.print ("Unyevu"); Serial.print (pato_thamani); Serial.println ("%"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Udongo Mkavu"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Unyevu"); lcd.setCursor (0, 1); lcd.print (pato_thamani); lcd.print ("%"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Kutuma SMS"); kuchelewesha (1000); lcd wazi (); udongo wa ardhi = 1; angalia = 0; mtihani = 0; kuchelewesha (10); }} batili SendSMS7 () {if (soilflag == 1) {Serial.println ("AT + CMGF = 1"); kuchelewesha (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); kuchelewesha (500); Serial.print ("Udongo Mvua,"); Serial.print ("Unyevu"); Serial.print (pato_thamani); Serial.println ("%"); Serial.println ((char) 26); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Udongo Mvua"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Unyevu"); lcd.setCursor (0, 1); lcd.print (pato_thamani); lcd.print ("%"); kuchelewesha (1000); lcd wazi (); lcd.setCursor (0, 0); lcd.print ("Kutuma SMS"); kuchelewesha (1000); lcd wazi (); udongo wa ardhi = 0; angalia = 0; mtihani = 0; kuchelewesha (10); }}
Ilipendekeza:
Ufuatiliaji wa mimea ya ndani ya Smart - Jua Wakati Mmea Wako Unahitaji Umwagiliaji: Hatua 8 (na Picha)
Ufuatiliaji wa mimea ya ndani ya Smart - Jua Wakati mmea wako unahitaji kumwagilia: Miezi michache iliyopita, nilitengeneza fimbo ya ufuatiliaji unyevu wa udongo ambayo ina nguvu ya betri na inaweza kukwama kwenye mchanga kwenye sufuria ya mmea wako wa ndani kukupa habari muhimu juu ya mchanga kiwango cha unyevu na taa za mwangaza kukuambia wakati wa
Fimbo ya Ufuatiliaji wa unyevu wa Arduino - Usisahau Kamwe kumwagilia Mimea Yako: Hatua 4 (na Picha)
Arduino Udongo Ufuatiliaji Fimbo - Kamwe Kusahau kumwagilia Mimea Yako: Je! Wewe mara nyingi husahau kumwagilia mimea yako ya ndani? Au labda unawapa umakini mwingi na kuwamwagilia maji? Ukifanya hivyo, basi unapaswa kujifanya fimbo ya ufuatiliaji unyevu wa mchanga inayotumia betri. Mfuatiliaji huu hutumia unyevu unyevu wa mchanga
Ufuatiliaji wa Afya ya mimea: Hatua 7
Ufuatiliaji wa Afya ya mimea: Halo, tena. Sababu ya mradi huu ilikuwa dada yangu mdogo. Siku yake ya kuzaliwa inakuja, na anapenda vitu viwili - maumbile (mimea na wanyama) na vile vile vinywaji vidogo. Kwa hivyo nilitaka kuchanganya vitu hivi viwili na kumfanya awe siku ya kuzaliwa
Mlishaji wa Kiwanda cha Moja kwa Moja cha WiFi Pamoja na Hifadhi - Usanidi wa Kilimo cha Ndani / Nje - Mimea ya Maji Moja kwa Moja na Ufuatiliaji wa Mbali: Hatua 21
Kilima cha Kiwanda cha Kiotomatiki cha WiFi kilicho na Hifadhi - Kuweka Kilimo cha ndani / Nje - Mimea ya Maji Moja kwa Moja na Ufuatiliaji wa Mbali: Katika mafunzo haya tutaonyesha jinsi ya kuanzisha mfumo wa kulisha mimea ya ndani / nje ambayo hunyunyizia mimea moja kwa moja na inaweza kufuatiliwa kwa mbali kutumia jukwaa la Adosia
Ufuatiliaji wa mimea na Arifa na ESP8266 na AskSensors IoT Cloud: 6 Hatua
Ufuatiliaji wa mimea na tahadhari na ESP8266 na AskSensors IoT Cloud: Mradi huu unakusudia kujenga mfumo mzuri wa ufuatiliaji wa mimea kwa kutumia ESP8266 na Jukwaa la AskSensors IoT. Mfumo huu unaweza kutumiwa kufuatilia kiwango cha unyevu wa mchanga kutoa vigezo vya malengo ya maamuzi ya umwagiliaji. ambayo husaidia kuhakikisha umwagiliaji