Агуулгын хүснэгт:
- Алхам 1: Системийн блок диаграм
- Алхам 2: Бүрэлдэхүүн хэсгүүдийн дэлгэрэнгүй мэдээлэл
- Алхам 3: Хэлхээ диаграм
- Алхам 4: Ажлын видео болон кодын файл
- Алхам 5: Програмын код
Видео: SMS дохиолол бүхий ургамлын хяналт: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Энд би SMS дохиогоор ургамлын хяналтыг бий болгож байна. Энэхүү дохиоллын системд сервер шаардлагагүй болно. Энэ бол маш хямд бөгөөд найдвартай төсөл юм.
Алхам 1: Системийн блок диаграм
Өнөөгийн хүлэмжинд олон тооны параметрүүдийг хэмжих шаардлагатай байдаг
ургамлын сайн чанар, бүтээмжийг хянах, хянах. Гэхдээ хүссэн үр дүнд хүрэхийн тулд ургамлын илүү сайн ургахад шаардлагатай температур, чийгшил, гэрэл, сайн хөрс зэрэг маш чухал хүчин зүйлүүд байдаг. Эдгээр параметрүүдийг санаж байхдаа би Arduino ашиглан GSM модуль дээр ургамлын автомат хяналтын системийг бий болгосон. Энэхүү систем нь сайн чанарын ургамал ургуулахад маш үр дүнтэй байдаг. Энэ төслийн өөр нэг чухал хэсэг нь бүрэн автомат бөгөөд бага хүчдэл дээр ажилладаг; 5-12V тогтмол гүйдлийн тэжээл.
Өнөө үед GSM модулийг ямар ч төрлийн өгөгдлийн SMS статус илгээхэд өргөн ашигладаг болсон. Энэхүү төсөлд SIM900A GSM модулийг ашиглан бид цаг уурын ургамалд үзүүлэх нөлөөллийн талаарх мэдээллийг хадгалах боломжтой. Систем нь ургамлын бүтээмж, чанарт нөлөөлж буй цаг уурын өөрчлөлтийг харуулах ёстой. Энэхүү төслийг боловсруулах гол зорилго нь GSM модуль нь температур, чийгшил, гэрлийн эрч хүч, хөрсний талаархи мэдээллийг илгээдэг ургамлын автомат мониторингийн систем юм. чийг
Би Энэтхэгийн иргэн учраас SIM900A (Азийн сүлжээ гэсэн утгатай) модулийг ашигласан боловч та өөрийн улсын дагуу өөр төрлийн SIM модулийг ашиглаж болно. AT кодууд өөр байж болно.
Алхам 2: Бүрэлдэхүүн хэсгүүдийн дэлгэрэнгүй мэдээлэл
------------------ Би явж байгаа дөрвөн төрлийн параметрүүдийг хэмждэг
доор хэлэлцэх болно: ------------------
Температур ба чийгшил
DHT11 мэдрэгчийг температур, чийгшлийг мэдрэхэд ашигладаг. Температур, чийгшил өндөр байвал ургамлын үндэс гэмтэж, ургалт нь сайн байдаггүй.
Гэрлийн эрч хүч
Гэрлийн эрчим нь ургамлын өсөлтөд чухал хүчин зүйл болдог. Гэрлийн эрч хүчийг тодорхойлохын тулд LDR (Гэрэлээс хамааралтай эсэргүүцэл) ашигладаг. Гэрлийн эрчимийг LUX -ээр хэмждэг тул 100 LUX гэрлийг тодорхой эсвэл босго түвшинд ашигладаг.
Хөрсний чийгшил
Ургамал сайн ургахад хөрсний чийг агуулсан байх нь маш чухал юм. Энд хөрсний мэдрэгчийг хөрсний чийгийн хэмжээг хэмжихэд ашигладаг. Энэхүү мэдрэгчийг ашиглан хөрсний өгөгдлийг аналог, тоон хэлбэрээр хоёуланг нь хэмжих боломжтой.
SMS мэдэгдэл:
Дээрх параметрүүдийн аль нэгний утга нь тогтоосон түвшин эсвэл чухал түвшингээс хэтэрсэн тохиолдолд систем нь холбогдох параметрүүдийн талаархи мэдээллийг эзэмшигч эсвэл оператор руу автоматаар SMS илгээх бөгөөд утга нь хэвийн хязгаарт эсвэл тогтоосон түвшнээс доогуур байвал систем автоматаар автоматаар автоматаар систем рүү автоматаар илгээгддэг. холбогдох өгөгдлийн мэдээллийг эзэмшигч эсвэл оператор руу SMS илгээх.
Нөхцөл байдал өөрчлөгдөх хүртэл мэдэгдэл нь зөвхөн нэг л удаа илгээгддэг тул эзэмшигч эсвэл оператор байнга SMS хүлээн авдаггүй. Тиймээс бага SMS багц шаардлагатай.
Алхам 3: Хэлхээ диаграм
Эдгээр бүх хэсгүүдийг ямар ч онлайн дэлгүүрээс хялбархан авах боломжтой
эсвэл электроникийн сэлбэг хэрэгслийн сайн мэддэг борлуулагчтай. Бүх бүрэлдэхүүн хэсгүүдийн мэдээллийн хүснэгтийг вэб дээрээс авах боломжтой. Хэрэв ямар нэгэн бэрхшээл байвал миний шуудангаар холбоо бариарай.
Алхам 4: Ажлын видео болон кодын файл
Төслийн ажлын эцсийн видео
Алхам 5: Програмын код
#оруулах
#оруулах
LiquidCrystal lcd (2, 3, 4, 5, 6, 7);
DHT; #тодорхойлох dht_dpin A1 #тодорхойлох LUX A0 #хөрсийг тодорхойлох A3
хөвөх вольт, люкс, үнэ цэнэ; int output_value; температур, чийгшил; int lightflag = 0; int humflag = 0; int хөрсний далбаа = 0; int tempflag = 0; int шалгах; int тест, тест1; байтын зэрэг [8] = {0b00011, 0b00011, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000};
хүчингүй тохиргоо ()
{Serial.begin (9600); // GSM Modem lcd.begin (16, 2) -тэй холбогдохын тулд цуваа эхлүүлэх; pinMode (хөрс, оролт); lcd.createChar (1, зэрэг); lcd.setCursor (0, 0); lcd.print ("Ургамлын эрүүл мэнд"); lcd.setCursor (0, 1); lcd.print ("Хяналт тавих"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("AGRI ТӨСӨЛ"); lcd.setCursor (0, 1); lcd.print ("By S K CHHAYA"); саатал (1000); lcd.clear (); } void loop () {output_value = analogRead (хөрс); output_value = map (output_value, 550, 0, 0, 100); утга = analogRead (LUX); вольт = (утга / 1023.0) * 5; lux = ((2500 / вольт) - 500) / 3.3; саатал (10000); // GSM сүлжээнд бүртгүүлэх хангалттай хугацаа өг DHT.read11 (dht_dpin); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Темп"); lcd.setCursor (0, 1); lcd.хэвлэх (температур = DHT температур); // LCD lcd.write дээрх температурын өгөгдөл (1); lcd.print ("C"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Чийгшил"); lcd.setCursor (0, 1); lcd.хэв (чийгшил = DHT. чийгшил); // LCD lcd.print дээрх чийгшлийн мэдээлэл (" %"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Гэрэл"); lcd.setCursor (0, 1); lcd.хэвлэх (люкс); // LCD lcd.print дээрх гэрэл мэдээлэл ("LUM"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Чийг"); lcd.setCursor (0, 1); lcd.print (output_value); // LCD lcd.print дээрх хөрсний мэдээлэл (" %"); саатал (1000); lcd.clear ();
if (температур 40) {SendSMS (); // Температур өндөртэй SMS} if (чийгшил 40) {SendSMS2 (); // Чийглэг өндөртэй SMS} if (lux 100) {SendSMS4 (); // SMS for Light high} if (output_value == 950) {SendSMS7 (); // Хуурай хөрсөнд зориулсан SMS} else if if (output_value! = 950) {SendSMS6 (); // Нойтон хөрсөнд зориулсан SMS}} хүчингүй SendSMS () {if (tempflag == 0) {Serial.println ("AT+CMGF = 1"); саатал (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); саатал (500); Serial.print ("Temp High",); Serial.print ("Temp"); Цуврал хэвлэх (температур); Serial.println ("C градус"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Temp High"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Температур"); lcd.setCursor (0, 1); lcd хэвлэх (температур); lcd.write (1); lcd.print ("C"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS илгээж байна"); саатал (1000); lcd.clear (); tempflag = 1; шалгах = 0; тест = 0; саатал (10); }} хүчингүй SendSMS1 () {if (tempflag == 1) {Serial.println ("AT+CMGF = 1"); саатал (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); саатал (500); Serial.print ("Temp Low",); Serial.print ("Temp"); Цуврал хэвлэх (температур); Serial.println ("C градус"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Бага температур"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Температур"); lcd.setCursor (0, 1); lcd хэвлэх (температур); lcd.write (1); lcd.print ("C"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS илгээж байна"); саатал (1000); lcd.clear (); tempflag = 0; шалгах = 0; тест = 0; саатал (10); }} хүчингүй SendSMS2 () {if (humflag == 0) {Serial.println ("AT+CMGF = 1"); саатал (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); саатал (500); Serial.print ("Өндөр чийгшил"); Цуврал хэвлэх (чийгшил); Serial.println (" %"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Өндөр чийгшил"); саатал (1000); lcd.setCursor (0, 1); lcd.print ("Чийгшил"); lcd хэвлэх (чийгшил); lcd.print (" %"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS илгээж байна"); саатал (1000); lcd.clear (); humflag = 1; шалгах = 0; тест = 0; саатал (10); }}
хүчингүй SendSMS3 () {if (humflag == 1) {Serial.println ("AT+CMGF = 1"); саатал (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); саатал (500); Serial.print ("Бага чийгшил,"); Serial.print ("Чийгшил"); Цуврал хэвлэх (чийгшил); Serial.println (" %"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Бага чийгшил"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Чийгшил"); lcd.setCursor (0, 1); lcd хэвлэх (чийгшил); lcd.print (" %"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS илгээж байна"); саатал (1000); lcd.clear (); humflag = 0; шалгах = 0; тест = 0; саатал (10); }} хүчингүй SendSMS4 () {if (lightflag == 0) {Serial.println ("AT+CMGF = 1"); // Текст горимд SMS илгээх (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); // Очих газрын утасны дугаарын саатлыг өөрчлөх (500); Serial.print ("Сайн гэрэл"); Serial.print ("Эрчим"); Цуваа.хэвлэх (люкс); Serial.println ("LUX"); Serial.println ((char) 26); // зогсоох тэмдэгт Ctrl+Z lcd.setCursor (0, 0); lcd.print ("Сайн гэрэл"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Эрчим"); lcd.setCursor (0, 1); lcd.хэвлэх (люкс); lcd.print ("LUX"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS илгээж байна"); саатал (1000); lcd.clear (); гэрлийн туг = 1; шалгах = 0; тест = 0; саатал (10); }} хүчингүй SendSMS5 () {if (lightflag == 1) {Serial.println ("AT+CMGF = 1"); саатал (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); саатал (500); Serial.print ("LOW LIGHT,"); Serial.print ("Эрчим"); Цуваа.хэвлэх (люкс); Serial.println ("LUX"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Бага гэрэл"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Эрчим"); lcd.setCursor (0, 1); lcd.хэвлэх (люкс); lcd.print ("LUX"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS илгээж байна"); саатал (1000); lcd.clear (); гэрлийн туг = 0; шалгах = 0; тест = 0; саатал (10); }} хүчингүй SendSMS6 () {if (earthflag == 0) {Serial.println ("AT+CMGF = 1"); саатал (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); саатал (500); Serial.print ("Хуурай хөрс,"); Serial.print ("Чийг"); Serial.print (output_value); Serial.println (" %"); Serial.println ((char) 26); lcd.setCursor (0, 0); lcd.print ("Хуурай хөрс"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Чийг"); lcd.setCursor (0, 1); lcd.print (output_value); lcd.print (" %"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS илгээж байна"); саатал (1000); lcd.clear (); хөрсний туг = 1; шалгах = 0; тест = 0; саатал (10); }} хүчингүй SendSMS7 () {if (earthflag == 1) {Serial.println ("AT+CMGF = 1"); саатал (500); Serial.println ("AT+CMGS = \"+919979897404 / "\ r"); саатал (500); Serial.print ("Нойтон хөрс"); Serial.print ("Чийг"); Serial.print (output_value); Serial.println (" %"); Serial.println ((char) 26); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Нойтон хөрс"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Чийг"); lcd.setCursor (0, 1); lcd.print (output_value); lcd.print (" %"); саатал (1000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("SMS илгээж байна"); саатал (1000); lcd.clear (); хөрсний туг = 0; шалгах = 0; тест = 0; саатал (10); }}
Зөвлөмж болгож буй:
SMS мэдэгдэл бүхий галын дохиолол: 3 алхам
SMS мэдэгдэл бүхий галын дохиолол: GSM 800H, Arduino дээр суурилсан гал мэдрэгч, SMS мэдэгдлийн систем нь IR мэдрэгч ашиглан харанхуй өрөөнд гарсан галыг илрүүлдэг. Энэ нь Arduino -ийн Serial Rx ба Tx Pins -д залгагдсан GSM 800H модемоор SMS илгээдэг. Гар утасны дугаараа код дотор тохируулна уу
Мини DIY гидропоник систем ба DIY гидропоник ургамлын цэцэрлэгийг WiFi дохиолол бүхий байгуулаарай: 18 алхам
WiFi дохиолол бүхий Mini DIY гидропоник систем ба DIY гидропоник ургамлын цэцэрлэг барих: Энэхүү гарын авлагад бид #DIY #гидропоникийн системийг хэрхэн бүтээхийг танд үзүүлэх болно. Энэхүү DIY гидропоник систем нь тусгай зориулалтын гидропоник усалгааны мөчлөгөөр 2 минут асааж, 4 минутын завсарлагаанаар услах болно. Түүнчлэн усан сангийн усны түвшинг хянах болно. Энэхүү систем
Цангах дохиоллын ургамлын дохиолол: 13 алхам
Цангах дохиоллын ургамлын дохиолол: Би цэвэрхэн байх ёстой - би ургамлын аймшигтай эцэг эх юм. Үүнийг цээжнээсээ салгах сайхан байна. Фотосинтезд хэтэрхий хүчтэй цохилт өгөх үү, эсвэл хуучин H2O -д гэрэл тусах уу гэдгийг би ойлгохгүй байна. Миний хийсэн зүйл юу ч биш энэ нөхрийг байлгаж чадахгүй юм шиг байна
Raspberry Pi бүхий унтлагын өрөө, угаалгын өрөөнд ухаалаг хөгжим - Олон өрөө, дохиолол, товчлуурын хяналт, гэрийн автоматжуулалтыг нэгтгэх: 7 алхам
Raspberry Pi -тай унтлагын өрөө, угаалгын өрөөнд ухаалаг хөгжим - Олон өрөө, дохиолол, товчлуурын хяналт, гэрийн автоматжуулалтыг нэгтгэх: Өнөөдөр бид Raspberry Pi -ийг гэрийн автоматжуулалтад зориулагдсан Max2Play програмын тусламжтайгаар хэрхэн ашиглах талаар хоёр жишээ өгөхийг хүсч байна: угаалгын өрөө, унтлагын өрөөнд . Хоёр төсөл хоёулаа ижил төстэй бөгөөд янз бүрийн эх сурвалжаас авсан өндөр чанартай хөгжмийг шууд дамжуулж болно
Удаан хугацааны утасгүй усны түвшний дохиолол бүхий дохиолол - 1 км хүртэлх зай - Долоон түвшин: 7 алхам
Удаан хугацааны утасгүй усны түвшний дохиолол бүхий дохиолол | 1 км хүртэлх зай | Долоон түвшин: Үүнийг Youtube дээрээс үзээрэй: https://youtu.be/vdq5BanVS0Y Та утастай болон утасгүй усны түвшин шалгуур үзүүлэлтийг 100-200 метр хүртэл хангах олон үзүүлэлтийг үзсэн байх. Гэхдээ энэ зааварчилгаанд та урт түвшний утасгүй усны түвшинг харах болно