Talaan ng mga Nilalaman:

Pagsubaybay sa Halaman Sa Alerto sa SMS: 5 Hakbang
Pagsubaybay sa Halaman Sa Alerto sa SMS: 5 Hakbang

Video: Pagsubaybay sa Halaman Sa Alerto sa SMS: 5 Hakbang

Video: Pagsubaybay sa Halaman Sa Alerto sa SMS: 5 Hakbang
Video: GET MORE HOURS ON PISO WIFI Without Coins|WIFI HACKS| PAANO MAKA KUHA NG MARAMING ORAS SA PISO WIFI 2024, Hulyo
Anonim
Pagsubaybay sa Halaman Sa Alerto sa SMS
Pagsubaybay sa Halaman Sa Alerto sa SMS

Dito ko nilikha ang Pagsubaybay sa halaman gamit ang alerto sa SMS. Hindi kinakailangan ang server para sa sistemang alerto na ito. Ito ay napaka mura at maaasahang proyekto.

Hakbang 1: I-block ang Diagram ng System

I-block ang Diagram ng System
I-block ang Diagram ng System

Sa mga greenhouse ngayon, maraming mga sukat ng parameter ang kinakailangan

upang masubaybayan at makontrol ang mabuting kalidad at pagiging produktibo ng mga halaman. Ngunit upang makuha ang ninanais na mga resulta mayroong ilang mga napakahalagang kadahilanan na nais mai-play tulad ng Temperatura, Humidity, Light at Magandang Lupa, na kinakailangan para sa isang mas mahusay na paglago ng halaman. Isinasaalang-alang ang mga parameter na ito na nakabuo ako ng isang Awtomatikong System ng Pagsubaybay ng Plant sa module ng GSM gamit ang Arduino. Ang sistemang ito ay napakahusay para sa lumalaking mahusay na kalidad ng mga halaman. Ang iba pang mahalagang bahagi ng proyektong ito ay na ito ay ganap na awtomatiko at gumagana sa mababang boltahe tulad ng; 5-12V DC supply.

Ngayon isang araw na GSM Module ay malawakang ginagamit para sa pagpapadala ng katayuan sa SMS ng anumang uri ng data. Dito sa proyektong ito sa pamamagitan ng paggamit ng SIM900A GSM Module maaari naming mapanatili ang impormasyon tungkol sa mga epekto ng klima sa mga halaman. Ang sistema ay dapat ding magpakita ng mga pagbabago sa klimatiko na nakakaapekto sa halaman sa kanyang pagiging produktibo at kalidad at iba pa Ang pangunahing layunin ng pag-isip sa proyektong ito ay upang bumuo ng isang Awtomatikong Pagsubaybay sa Plant kung saan ang module ng GSM ay nagpapadala ng impormasyon tungkol sa Temperatura, Humidity, Light intensity, Soil kahalumigmigan

Dahil ako ang mamamayan ng India, ginamit ang module na SIM900A (A ay nangangahulugang Asyano network) ngunit maaari mong gamitin ang iba't ibang uri ng module ng SIM ayon sa bawat bansa mo. Ang mga code ng AT ay maaaring magkakaiba.

Hakbang 2: Detalye ng Component

Detalye ng Bahagi
Detalye ng Bahagi
Detalye ng Bahagi
Detalye ng Bahagi
Detalye ng Bahagi
Detalye ng Bahagi

------------------ Sinusukat ko ang apat na uri ng mga parameter, kung saan pupunta

upang talakayin sa ibaba: ----------------

Temperatura at Humidity

Ang sensor ng DHT11 ay ginagamit para sa sensing temperatura at halumigmig. Kapag ang temperatura at kahalumigmigan ay mataas ang ugat ng mga halaman nasira at paglago ng halaman hindi maayos.

Banayad na Intensity

Ang kasidhian ng ilaw ay isang mahalagang kadahilanan para sa paglaki ng halaman. Para sa pagtuklas ng intensity ng ilaw ay ginagamit ang LDR (Light dependant resistor). Ang tindi ng ilaw ay sinusukat sa LUX at samakatuwid para sa pagpapakita ng 100 LUX na ilaw ay ginagamit bilang tinukoy o antas ng threshold.

Soil Moisture

Ang lalagyan ng kahalumigmigan ng lupa ay napakahalaga para sa mahusay na paglaki ng mga halaman. Dito ginagamit ang sensor ng lupa upang sukatin ang nilalaman ng kahalumigmigan sa Lupa. Gamit ang sensor na ito maaari naming sukatin ang data ng lupa sa parehong paraan, analog pati na rin digital.

Abiso sa SMS:

Kapag ang halaga ng alinman sa mga parameter sa itaas ay lumampas mula sa isang tinukoy na antas o kritikal na antas, awtomatikong nagpapadala ang system ng SMS sa may-ari o operator na may impormasyon ng mga kaugnay na parameter at kapag ang halaga ay dumating sa normal na saklaw o sa ibaba ng tinukoy na antas muli awtomatikong ang system magpadala ng SMS sa may-ari o operator na may impormasyon ng kaugnay na data.

Nagpapadala lamang ang notification nang isang beses hanggang sa hindi magbago ang kundisyon nang sa gayon ang may-ari o operator ay hindi nakakakuha ng madalas na SMS. Samakatuwid, kinakailangan ang mas mababang SMS pack.

Hakbang 3: Diagram ng Circuit

Diagram ng Circuit
Diagram ng Circuit

Ang lahat ng mga bahagi na ito ay madaling magagamit sa anumang online shopping site

o sa kilalang dealer ng ekstrang bahagi ng electronics. Ang lahat ng mga bahagi ng datasheet ay magagamit sa web. Kung may anumang kahirapan huwag mag-atubiling makipag-ugnay sa aking mail.

Hakbang 4: Paggawa ng Video at Code File

Pangwakas na gumaganang video ng proyekto

Hakbang 5: Code of Programe

# isama

# isama

LiquidCrystal lcd (2, 3, 4, 5, 6, 7);

dht DHT; #define dht_dpin A1 #define LUX A0 # tukuyin ang lupa A3

float volt, lux, halaga; int output_value; int temperatura, kahalumigmigan; int lightflag = 0; int humflag = 0; int groundflag = 0; int tempflag = 0; int check; int pagsubok, pagsubok1; byte degree [8] = {0b00011, 0b00011, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000};

walang bisa ang pag-setup ()

{Serial.begin (9600); // Initialise serial upang makipag-usap sa GSM Modem lcd.begin (16, 2); pinMode (lupa, INPUT); lcd.createChar (1, degree); lcd.setCursor (0, 0); lcd.print ("Health Health"); lcd.setCursor (0, 1); lcd.print ("Monitering"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("AGRI PROJECT"); lcd.setCursor (0, 1); lcd.print ("Ni S K CHHAYA"); pagkaantala (1000); lcd.clear (); } void loop () {output_value = analogRead (lupa); output_value = mapa (output_value, 550, 0, 0, 100); halaga = analogRead (LUX); volt = (halaga / 1023.0) * 5; lux = ((2500 / volt) - 500) / 3.3; pagkaantala (10000); // Bigyan ng sapat na oras para magparehistro ang GSM sa Network DHT.read11 (dht_dpin); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Temp"); lcd.setCursor (0, 1); lcd.print (temperatura = DHT.temperature); // Temp data sa LCD lcd.write (1); lcd.print ("C"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Humidity"); lcd.setCursor (0, 1); lcd.print (halumigmig = DHT.humidity); // Data ng kahalumigmigan sa LCD lcd.print ("%"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Banayad"); lcd.setCursor (0, 1); lcd.print (lux); // Light data sa LCD lcd.print ("LUM"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Kahalumigmigan"); lcd.setCursor (0, 1); lcd.print (output_value); // Data ng lupa sa LCD lcd.print ("%"); pagkaantala (1000); lcd.clear ();

kung (temperatura 40) {SendSMS (); // SMS for Temp high} kung (halumigmig 40) {SendSMS2 (); // SMS for Humidity high} kung (lux 100) {SendSMS4 (); // SMS for Light high} kung (output_value == 950) {SendSMS7 (); // SMS for Dry Soil} iba pa kung (output_value! = 950) {SendSMS6 (); // SMS for Wet Soil}} void SendSMS () {if (tempflag == 0) {Serial.println ("AT + CMGF = 1"); pagkaantala (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); pagkaantala (500); Serial.print ("Temp High,"); Serial.print ("Temp"); Serial.print (temperatura); Serial.println ("degree C"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Temp High"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Temperatura"); lcd.setCursor (0, 1); lcd.print (temperatura); lcd.write (1); lcd.print ("C"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Pagpapadala ng SMS"); pagkaantala (1000); lcd.clear (); tempflag = 1; suriin = 0; pagsubok = 0; antala (10); }} void SendSMS1 () {if (tempflag == 1) {Serial.println ("AT + CMGF = 1"); pagkaantala (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); pagkaantala (500); Serial.print ("Temp Mababang,"); Serial.print ("Temp"); Serial.print (temperatura); Serial.println ("degree C"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Temp Mababang"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Temperatura"); lcd.setCursor (0, 1); lcd.print (temperatura); lcd.write (1); lcd.print ("C"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Pagpapadala ng SMS"); pagkaantala (1000); lcd.clear (); tempflag = 0; suriin = 0; pagsubok = 0; antala (10); }} void SendSMS2 () {if (humflag == 0) {Serial.println ("AT + CMGF = 1"); pagkaantala (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); pagkaantala (500); Serial.print ("Mataas na Humidity"); Serial.print (halumigmig); Serial.println ("%"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Mataas na Humidity"); pagkaantala (1000); lcd.setCursor (0, 1); lcd.print ("Humidity"); lcd.print (halumigmig); lcd.print ("%"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Pagpapadala ng SMS"); pagkaantala (1000); lcd.clear (); humflag = 1; suriin = 0; pagsubok = 0; antala (10); }}

walang bisa ang SendSMS3 () {kung (humflag == 1) {Serial.println ("AT + CMGF = 1"); pagkaantala (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); pagkaantala (500); Serial.print ("Mababang Humidity,"); Serial.print ("Humidity"); Serial.print (halumigmig); Serial.println ("%"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Mababang Humidity"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Humidity"); lcd.setCursor (0, 1); lcd.print (halumigmig); lcd.print ("%"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Pagpapadala ng SMS"); pagkaantala (1000); lcd.clear (); humflag = 0; suriin = 0; pagsubok = 0; antala (10); }} void SendSMS4 () {if (lightflag == 0) {Serial.println ("AT + CMGF = 1"); // To send SMS in Text Mode delay (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); // Change to destinasyon numero ng telepono pagkaantala (500); Serial.print ("Magandang ilaw,"); Serial.print ("Intensity"); Serial.print (lux); Serial.println ("LUX"); Serial.println ((char) 26); // the stopping character Ctrl + Z lcd.setCursor (0, 0); lcd.print ("Magandang ilaw"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Intensity"); lcd.setCursor (0, 1); lcd.print (lux); lcd.print ("LUX"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Pagpapadala ng SMS"); pagkaantala (1000); lcd.clear (); lightflag = 1; suriin = 0; pagsubok = 0; antala (10); }} void SendSMS5 () {if (lightflag == 1) {Serial.println ("AT + CMGF = 1"); pagkaantala (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); pagkaantala (500); Serial.print ("LOW LIGHT,"); Serial.print ("Intensity"); Serial.print (lux); Serial.println ("LUX"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Mababang ilaw"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Intensity"); lcd.setCursor (0, 1); lcd.print (lux); lcd.print ("LUX"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Pagpapadala ng SMS"); pagkaantala (1000); lcd.clear (); lightflag = 0; suriin = 0; pagsubok = 0; antala (10); }} void SendSMS6 () {if (groundflag == 0) {Serial.println ("AT + CMGF = 1"); pagkaantala (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); pagkaantala (500); Serial.print ("tuyong Lupa,"); Serial.print ("Kahalumigmigan"); Serial.print (output_value); Serial.println ("%"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Dry Lupa"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Kahalumigmigan"); lcd.setCursor (0, 1); lcd.print (output_value); lcd.print ("%"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Pagpapadala ng SMS"); pagkaantala (1000); lcd.clear (); groundflag = 1; suriin = 0; pagsubok = 0; antala (10); }} void SendSMS7 () {if (groundflag == 1) {Serial.println ("AT + CMGF = 1"); pagkaantala (500); Serial.println ("AT + CMGS = \" + 919979897404 / "\ r"); pagkaantala (500); Serial.print ("Basang Lupa,"); Serial.print ("Kahalumigmigan"); Serial.print (output_value); Serial.println ("%"); Serial.println ((char) 26); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Basang Lupa"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Kahalumigmigan"); lcd.setCursor (0, 1); lcd.print (output_value); lcd.print ("%"); pagkaantala (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Pagpapadala ng SMS"); pagkaantala (1000); lcd.clear (); groundflag = 0; suriin = 0; pagsubok = 0; antala (10); }}

Inirerekumendang: