Satura rādītājs:
- 1. darbība: bloķējiet sistēmas diagrammu
- 2. darbība: detaļas detaļas
- 3. darbība: shēmas shēma
- 4. darbība: darba video un koda fails
- 5. solis: programmas kods
Video: Augu uzraudzība ar SMS brīdinājumu: 5 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Šeit es izveidoju augu uzraudzību ar SMS brīdinājumu. Šai brīdinājumu sistēmai serveris nav nepieciešams. Tas ir ļoti lēts un uzticams projekts.
1. darbība: bloķējiet sistēmas diagrammu
Mūsdienu siltumnīcās ir nepieciešami daudzi parametru mērījumi
uzraudzīt un kontrolēt augu labo kvalitāti un produktivitāti. Bet, lai iegūtu vēlamos rezultātus, ir jāņem vērā daži ļoti svarīgi faktori, piemēram, temperatūra, mitrums, viegla un laba augsne, kas ir nepieciešami labākai augu augšanai. Paturot prātā šos parametrus, esmu izveidojis automātisku augu uzraudzības sistēmu, izmantojot GSM moduli, izmantojot Arduino. Šī sistēma ir ļoti efektīva kvalitatīvu augu audzēšanai. Otra svarīga šī projekta daļa ir tā, ka tas ir pilnībā automātisks un darbojas ar zemu spriegumu; 5-12V līdzstrāvas padeve.
Mūsdienās GSM moduli plaši izmanto jebkura veida datu sūtīšanai SMS statusā. Šajā projektā, izmantojot SIM900A GSM moduli, mēs varam saglabāt informāciju par klimata ietekmi uz augiem. Sistēmai jāparāda arī klimatiskās izmaiņas, kas ietekmē iekārtas ražīgumu un kvalitāti utt. Galvenais šī projekta izstrādes mērķis ir izveidot automātisku iekārtu monitoringu, kurā GSM modulis nosūta informāciju par temperatūru, mitrumu, gaismas intensitāti, augsni mitrums.
Tā kā esmu Indijas pilsonis, izmantoju SIM900A (A nozīmē Āzijas tīkla) moduli, bet jūs varat izmantot cita veida SIM moduli atbilstoši savai valstij. AT kodi var atšķirties.
2. darbība: detaļas detaļas
------------------ Es mēra četru veidu parametrus, kas notiek
apspriest tālāk: ------------------
Temperatūra un mitrums
DHT11 sensors tiek izmantots temperatūras un mitruma noteikšanai. Ja temperatūra un mitrums ir augsti, augu sakne ir bojāta un auga augšana nav laba.
Gaismas intensitāte
Gaismas intensitāte ir svarīgs faktors augu augšanai. Gaismas intensitātes noteikšanai tiek izmantots LDR (no gaismas atkarīgs rezistors). Gaismas intensitāti mēra LUX, un tāpēc demonstrēšanai 100 LUX gaisma tiek izmantota kā definēts vai sliekšņa līmenis.
Augsnes mitrums
Augsnes mitrumam ir liela nozīme augu labā augšanā. Šeit augsnes sensoru izmanto, lai izmērītu mitruma saturu augsnē. Izmantojot šo sensoru, mēs varam mērīt augsnes datus abos veidos - gan analogos, gan digitālos.
SMS paziņojums:
Ja kāda no iepriekš minētajiem parametriem vērtība pārsniedz noteikto līmeni vai kritisko līmeni, sistēma īpašniekam vai operatoram automātiski nosūta SMS ar informāciju par saistītajiem parametriem, un, ja vērtība atkal ir normālā diapazonā vai zem noteiktā līmeņa, sistēma automātiski nosūtīt īsziņu īpašniekam vai operatoram ar informāciju par saistītajiem datiem.
Paziņojums tiek nosūtīts tikai vienu reizi, līdz nosacījums nemainās, tāpēc īpašnieks vai operators bieži nesaņem īsziņas. Tāpēc ir nepieciešama zemāka SMS pakotne.
3. darbība: shēmas shēma
Visas šīs detaļas ir viegli pieejamas jebkurā tiešsaistes iepirkšanās vietnē
vai pie pazīstama elektronikas rezerves daļu izplatītāja. Visas komponentu datu lapas ir pieejamas tīmeklī. Ja rodas kādas grūtības, sazinieties ar mani pa pastu.
4. darbība: darba video un koda fails
Projekta pēdējais darba video
5. solis: programmas kods
#iekļaut
#iekļaut
LiquidCrystal LCD (2, 3, 4, 5, 6, 7);
dht DHT; #define dht_dpin A1 #definēt LUX A0 #definēt augsni A3
float volt, lux, vērtība; int output_value; int temperatūra, mitrums; int gaismas karogs = 0; int humflag = 0; int augsnes karogs = 0; int tempflag = 0; int pārbaude; int tests, tests1; baitu grāds [8] = {0b00011, 0b00011, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000};
anulēts iestatījums ()
{Sērijas sākums (9600); // Inicializēt sēriju, lai sazinātos ar GSM modemu lcd.begin (16, 2); pinMode (augsne, IEVADE); lcd.createChar (1 grāds); lcd.setCursor (0, 0); lcd.print ("Augu veselība"); lcd.setCursor (0, 1); lcd.print ("Uzraudzība"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("AGRI PROJEKTS"); lcd.setCursor (0, 1); lcd.print ("Autors: S K CHHAYA"); kavēšanās (1000); lcd.clear (); } void loop () {output_value = analogRead (augsne); output_value = karte (output_value, 550, 0, 0, 100); vērtība = analogRead (LUX); volt = (vērtība / 1023,0) * 5; lux = ((2500 / volti) - 500) / 3,3; kavēšanās (10000); // Dodiet pietiekami daudz laika, lai GSM reģistrētos tīklā DHT.read11 (dht_dpin); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Temp"); lcd.setCursor (0, 1); lcd.print (temperatūra = DHT.temperatūra); // Temp dati uz LCD lcd.write (1); lcd.print ("C"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Mitrums"); lcd.setCursor (0, 1); lcd.print (mitrums = DHT. mitrums); // Mitruma dati LCD lcd.print (" %"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Gaisma"); lcd.setCursor (0, 1); lcd.print (lukss); // Gaismas dati LCD lcd.print ("LUM"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Mitrums"); lcd.setCursor (0, 1); lcd.print (output_value); // Augsnes dati LCD lcd.print (" %"); kavēšanās (1000); lcd.clear ();
ja (temperatūra 40) {SendSMS (); // SMS par augstu temperatūru} if (mitrums 40) {SendSMS2 (); // SMS par augstu mitrumu} if (lux 100) {SendSMS4 (); // SMS par vieglu augstu} if (output_value == 950) {SendSMS7 (); // SMS sausai augsnei} else if (output_value! = 950) {SendSMS6 (); // SMS mitrai augsnei}} void SendSMS () {if (tempflag == 0) {Serial.println ("AT+CMGF = 1"); kavēšanās (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); kavēšanās (500); Serial.print ("Temp High"); Serial.print ("Temp"); Sērijas nospiedums (temperatūra); Sērijas.println ("C pakāpe"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Temp High"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Temperatūra"); lcd.setCursor (0, 1); lcd.print (temperatūra); lcd.write (1); lcd.print ("C"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS sūtīšana"); kavēšanās (1000); lcd.clear (); tempflag = 1; čeks = 0; tests = 0; kavēšanās (10); }} void SendSMS1 () {if (tempflag == 1) {Serial.println ("AT+CMGF = 1"); kavēšanās (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); kavēšanās (500); Serial.print ("Temperatūra zema"); Serial.print ("Temp"); Sērijas nospiedums (temperatūra); Sērijas.println ("C pakāpe"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Temperatūra zema"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Temperatūra"); lcd.setCursor (0, 1); lcd.print (temperatūra); lcd.write (1); lcd.print ("C"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS sūtīšana"); kavēšanās (1000); lcd.clear (); tempflag = 0; čeks = 0; tests = 0; kavēšanās (10); }} void SendSMS2 () {if (humflag == 0) {Serial.println ("AT+CMGF = 1"); kavēšanās (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); kavēšanās (500); Serial.print ("Augsts mitrums"); Sērijas nospiedums (mitrums); Serial.println (" %"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Augsts mitrums"); kavēšanās (1000); lcd.setCursor (0, 1); lcd.print ("Mitrums"); lcd.print (mitrums); lcd.print (" %"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS sūtīšana"); kavēšanās (1000); lcd.clear (); humflag = 1; čeks = 0; tests = 0; kavēšanās (10); }}
void SendSMS3 () {if (humflag == 1) {Serial.println ("AT+CMGF = 1"); kavēšanās (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); kavēšanās (500); Serial.print ("Zems mitrums"); Serial.print ("Mitrums"); Sērijas nospiedums (mitrums); Serial.println (" %"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Zems mitrums"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Mitrums"); lcd.setCursor (0, 1); lcd.print (mitrums); lcd.print (" %"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS sūtīšana"); kavēšanās (1000); lcd.clear (); humflag = 0; čeks = 0; tests = 0; kavēšanās (10); }} void SendSMS4 () {if (lightflag == 0) {Serial.println ("AT+CMGF = 1"); // Lai nosūtītu SMS teksta režīmā aizkave (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); // Mainīt uz galamērķa tālruņa numura aizkavi (500); Serial.print ("Laba gaisma"); Serial.print ("Intensitāte"); Sērijas nospiedums (lukss); Serial.println ("LUX"); Serial.println ((char) 26); // apstāšanās rakstzīme Ctrl+Z lcd.setCursor (0, 0); lcd.print ("Laba gaisma"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Intensitāte"); lcd.setCursor (0, 1); lcd.print (lukss); lcd.print ("LUX"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS sūtīšana"); kavēšanās (1000); lcd.clear (); gaismas karogs = 1; čeks = 0; tests = 0; kavēšanās (10); }} void SendSMS5 () {if (lightflag == 1) {Serial.println ("AT+CMGF = 1"); kavēšanās (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); kavēšanās (500); Serial.print ("LOW LIGHT"); Serial.print ("Intensitāte"); Sērijas nospiedums (lukss); Serial.println ("LUX"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Vājš apgaismojums"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Intensitāte"); lcd.setCursor (0, 1); lcd.print (lukss); lcd.print ("LUX"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS sūtīšana"); kavēšanās (1000); lcd.clear (); gaismas karogs = 0; čeks = 0; tests = 0; kavēšanās (10); }} void SendSMS6 () {if (groundflag == 0) {Serial.println ("AT+CMGF = 1"); kavēšanās (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); kavēšanās (500); Serial.print ("Sausā augsne"); Serial.print ("Mitrums"); Serial.print (output_value); Serial.println (" %"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Sausā augsne"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Mitrums"); lcd.setCursor (0, 1); lcd.print (output_value); lcd.print (" %"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS sūtīšana"); kavēšanās (1000); lcd.clear (); augsnes karogs = 1; čeks = 0; tests = 0; kavēšanās (10); }} void SendSMS7 () {if (groundflag == 1) {Serial.println ("AT+CMGF = 1"); kavēšanās (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); kavēšanās (500); Serial.print ("Slapja augsne"); Serial.print ("Mitrums"); Serial.print (output_value); Serial.println (" %"); Serial.println ((char) 26); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Mitra augsne"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Mitrums"); lcd.setCursor (0, 1); lcd.print (output_value); lcd.print (" %"); kavēšanās (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS sūtīšana"); kavēšanās (1000); lcd.clear (); augsnes karogs = 0; čeks = 0; tests = 0; kavēšanās (10); }}
Ieteicams:
Viedais iekštelpu augu monitors - ziniet, kad jūsu augu nepieciešams laistīt: 8 soļi (ar attēliem)
Viedais iekštelpu augu monitors - ziniet, kad jūsu augu nepieciešams laistīt: Pirms pāris mēnešiem es izveidoju augsnes mitruma uzraudzības nūju, kas darbojas ar akumulatoru un kuru var iestrēgt augsnē jūsu istabas auga podiņā, lai sniegtu jums noderīgu informāciju par augsni mitruma līmenis un zibspuldzes gaismas diodes, kas norāda, kad jāgaida
Izveidot brīdinājumu, izmantojot Ubidots-ESP32+temperatūras un mitruma sensoru: 9 soļi
Brīdinājuma izveide-Ubidots-ESP32+temperatūras un mitruma sensora izveide: šajā apmācībā mēs izmērīsim dažādus temperatūras un mitruma datus, izmantojot temperatūras un mitruma sensoru. Jūs arī uzzināsit, kā nosūtīt šos datus uz Ubidots. Lai jūs varētu to analizēt no jebkuras vietas dažādiem lietojumiem. Arī izveidojot emai
Uzraugiet sildošās eļļas tvertnes galonus ar e -pastu, SMS un pushbullet brīdinājumu: 9 soļi (ar attēliem)
Uzraugiet sildošās eļļas tvertnes galonus ar e -pasta, SMS un pushbullet brīdinājumu: DROŠĪBAS INFORMĀCIJA: Gadījumā, ja kāds vēlas uzzināt, vai " to ir droši būvēt/uzstādīt " - Esmu nosūtījis to 2 dažādām naftas kompānijām, lai saņemtu atsauksmes/drošības apsvērumus, un esmu to vadījis ugunsdzēsības dienesta ugunsdrošības vietnieks C
Saules uz augu balstīta augu pārvaldība ar ESP32: 7 soļi (ar attēliem)
Saules uz augu balstīta augu pārvaldība ar ESP32: augu audzēšana ir jautra, un laistīšana un kopšana nav īsti apgrūtinoša. Mikrokontrolleru lietojumprogrammas, lai uzraudzītu viņu veselību, ir pieejamas visā internetā, un to dizaina iedvesma nāk no auga statiskā rakstura un vienkāršas uzraudzības
Augu uzraudzība un brīdinājumi ar ESP8266 un AskSensors IoT Cloud: 6 soļi
Augu uzraudzība un brīdinājumi ar ESP8266 un AskSensors IoT Cloud: Šī projekta mērķis ir izveidot viedu augu uzraudzības sistēmu, izmantojot ESP8266 un AskSensors IoT platformu. Šo sistēmu var izmantot, lai izsekotu augsnes mitruma līmenim, lai sniegtu objektīvus kritērijus apūdeņošanas lēmumiem. kas palīdz nodrošināt apūdeņošanu