Arduino का उपयोग करके जीएसएम पंप मोटर नियंत्रक सर्किट

समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें





इस पोस्ट में हम एक किसान अनुकूल GSM पंप मोटर कंट्रोलर सर्किट का निर्माण करने जा रहे हैं जो कर सकता था
सेलफोन एसएमएस के माध्यम से दुनिया में कहीं से भी दूर से सिंचाई प्रणाली को चालू और बंद करें और आपको एक पावती संदेश के साथ वापस करें। विचार का अनुरोध श्री पीजी राघवंदिर ने किया था।

परिरूप

कृषि भारत का सबसे बड़ा उद्योग है जो हर साल एक अरब से अधिक लोगों के लिए भोजन परोसता है। भोजन की विशाल मात्रा का उत्पादन कभी भी एक आसान काम नहीं है, सिंचाई कारक में से एक है।



कृषकों के अधिकांश फसल क्षेत्र उनके निवास स्थान से दूर स्थित हैं, बस पानी के पंप को चालू करने में प्रति वर्ष उनके परिवहन के लिए भारी लागत आती है।

भारत आईटी कौशल और अंतरिक्ष कार्यक्रमों के लिए जाना जाता है और फिल्म 'ग्रेविटी' की लागत से भी कम तक पहुंच गया है, यह इंजीनियरों और वैज्ञानिकों के बीच महान क्षमता का संकेत देता है। लेकिन, कौशल अलग-अलग क्षेत्रों में समान रूप से वितरित नहीं किए जाते हैं कृषि एक ऐसा क्षेत्र है जहां तकनीकी विकास धीमा है।



यह एसएमएस आधारित जीएसएम पंप मोटर नियंत्रक एक बच्चे की ओर ले जाता है कृषि विकास , यह एक क्रांतिकारी परियोजना नहीं हो सकती है, लेकिन यह किसानों के बीच खुशी ला सकती है।

आइए परियोजना के तकनीकी हिस्से में गोता लगाएँ।

परियोजना को कम से कम हार्डवेयर घटकों के साथ डिज़ाइन किया गया है ताकि एक शुरुआती इसे आसानी से पूरा कर सके।
सर्किट में बिजली की आपूर्ति होती है, जो पूरे सेटअप को शक्ति प्रदान करती है।

Arduino परियोजना का मस्तिष्क है जो निर्णय लेता है और GSM मॉडेम जो टेक्स्ट एसएमएस भेजता है और प्राप्त करता है और उपयोगकर्ता और रिले के साथ संवाद करता है जो मोटर को नियंत्रित करता है।

यह काम किस प्रकार करता है

Arduino का उपयोग करके जीएसएम पंप मोटर नियंत्रक सर्किट

नोट: कृपया BC548 ट्रांजिस्टर के आधार पर कम से कम 10K अवरोधक का उपयोग करें, 330 ओम बहुत कम है।

ट्रांसफार्मर नीचे कदम 230VAC से 12VAC और ब्रिज रेक्टीफायर AC को DC करंट में परिवर्तित करता है और विद्युत आपूर्ति को सुचारू करने के लिए इलेक्ट्रोलाइटिक कैपेसिटर से करंट गुजरता है।

निश्चित 12V वोल्टेज नियामक Arduino, GSM मॉडेम और रिले को शक्ति देता है। जीएसएम मॉडम पिन # 0 और पिन # 1 पर arduino से जुड़ा है, जो क्रमशः RX और TX हैं।

GSM का RX arduino के TX से जुड़ा है और GSM का TX Arduino के RX से जुड़ा है। यदि आप भ्रमित हैं, तो बस नीचे दिए गए आरेख को देखें, ग़लतफ़हमी एसएमएस नहीं भेजेंगे या प्राप्त नहीं करेंगे।

ARDUINO TX ---------------------- आरएक्स जीएसएम मॉडम
RX ---------------------- TX

ग्राउंड कनेक्शन को ग्राउंड को अर्दिनो और जीएसएम मॉडेम के बीच भी स्थापित किया गया है।

GSM और arduino के लिए एक पुरुष जैक पावर कनेक्टर प्राप्त करने का प्रयास करें, अगर न केवल तारों को सीधे बिजली की आपूर्ति से arduino और GSM में मिलाया जाए, जिससे परियोजना में गड़बड़ी बढ़ सकती है।

ट्रांजिस्टर रिले को चलाता है और डायोड रिले को चालू / बंद करते समय सर्किट को उच्च वोल्टेज स्पाइक्स से बचाता है।

एलईडी सूचक रिले की स्थिति दिखाता है। यदि एलईडी रिले सक्रिय हो जाता है और यदि एलईडी बंद हो जाता है, तो रिले निष्क्रिय हो जाता है।

जीएसएम मॉडम पर एक वैध सिम डालें और नेटवर्क प्रदाता द्वारा रेट कटर्स जैसे एसएमएस के लिए प्राप्त प्रस्तावों का लाभ उठाने का प्रयास करें, जिससे एसएमएस के लिए खर्च कम हो जाएगा।

कार्यक्रम कोड:

//----------------Program developed by R.Girish------------//
int LED = 8
int motor = 9
int temp=0
int i=0
char str[15]
void setup()
{
Serial.begin(9600)
pinMode(motor,OUTPUT)
pinMode(LED,OUTPUT)
digitalWrite(motor,LOW)
digitalWrite(LED,LOW)
delay(20000)
delay(20000)
delay(20000)
Serial.println('AT+CNMI=2,2,0,0,0')
delay(1000)
Serial.println('AT+CMGF=1')
delay(500)
Serial.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
Serial.println('System is ready to receive commands.')// The SMS text you want to send
delay(100)
Serial.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
void loop()
{
if(temp==1)
{
check()
temp=0
i=0
delay(1000)
}
}
void serialEvent()
{
while(Serial.available())
{
if(Serial.find('/'))
{
delay(1000)
while (Serial.available())
{
char inChar=Serial.read()
str[i++]=inChar
if(inChar=='/')
{
temp=1
return
}
}
}
}
}
void check()
{
if(!(strncmp(str,'motor on',8)))
{
digitalWrite(motor,HIGH)
digitalWrite(LED,HIGH)
delay(1000)
Serial.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
Serial.println('Motor Activated')// The SMS text you want to send
delay(100)
Serial.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
else if(!(strncmp(str,'motor off',9)))
{
digitalWrite(motor,LOW)
digitalWrite(LED,LOW)
delay(1000)
Serial.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
Serial.println('Motor deactivated')// The SMS text you want to send
delay(100)
Serial.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
else if(!(strncmp(str,'test',4)))
{
Serial.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
Serial.println('The System is Working Fine.')// The SMS text you want to send
delay(100)
Serial.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
}
//----------------Program developed by R.Girish------------//

नोट 1: कार्यक्रम को संकलित करते समय यह एक चेतावनी दिखाता है, जिसे आप इसे अनदेखा कर सकते हैं। कार्यक्रम को सत्यापित और परीक्षण किया जाता है।

नोट 2: कोड अपलोड करते समय कृपया arduino से TX और RX कनेक्शन हटा दें।

नोट 3: कार्यक्रम में 4 स्थानों पर प्राप्तकर्ता के फोन नंबर के साथ 'xxxxxxxxxxxxx' को बदलें।

नोट 4: कृपया पॉवर फेल होने की स्थिति में पावर बटन के बिना जीएसएम मॉडम खरीदें, जब तक कि आप मैन्युअल रूप से बटन नहीं दबाते हैं, तब तक मोबाइल नेटवर्क में यह नहीं मिलता है, इसलिए इस प्रकार के जीएसएम मोडेम से बचें। जीएसएम एक के बिना मॉडेम बिजली का बटन बिजली बनाए रखने के बाद सीधे मोबाइल नेटवर्क में प्रवेश करेगा।

लेखक का जीएसएम पंप मोटर नियंत्रक सर्किट का प्रोटोटाइप:

उपरोक्त सेटअप का उपयोग कैसे करें:

रिले को सक्रिय करने के लिए अपने सेलफोन से एसएमएस / मोटर भेजें / भेजें।

• रिले को निष्क्रिय करने के लिए भेजें / मोटर बंद / एसएमएस करें।

• सर्किट से प्रतिक्रिया के परीक्षण के लिए भेजें / परीक्षण / एसएमएस।

सुनिश्चित करें कि आप '/' के साथ कमांड शुरू करते हैं और '/' के साथ समाप्त होते हैं अन्यथा यह मान्य अनुरोध के रूप में स्वीकार नहीं करता है।

• एक मोटर ऑन / रिले को चालू करेगा और एक पावती एसएमएस 'मोटर सक्रिय' के साथ लौटेगा।

• एक मोटर बंद / रिले बंद कर देगा और एक पावती एसएमएस 'मोटर निष्क्रिय' के साथ वापस आ जाएगा।

यदि आप भेजते हैं / परीक्षण / यह एक पावती एसएमएस के साथ वापस आ जाएगा 'सिस्टम ठीक काम कर रहा है।'

• उपरोक्त संदेश दर्शाता है कि आपका सेटअप ठीक काम कर रहा है।

• यदि आपको कोई पावती नहीं दी जाती है, तो आप मान सकते हैं कि मोटर पर कोई कार्रवाई नहीं की गई है और आप समस्याओं का निवारण कर सकते हैं।

• सेटअप को चालू करने के बाद प्रतीक्षा करें 1 मिनट सिस्टम एक पावती एसएमएस भेजेगा 'सिस्टम आदेशों को स्वीकार करने के लिए तैयार है।' एक बार जब आप इस एसएमएस को प्राप्त करते हैं तो आपकी परियोजना सेवा देने के लिए तैयार है।

उपरोक्त आदेश मूर्खतापूर्ण सबूत हैं और कभी भी मोटर को गलत तरीके से ट्रिगर नहीं करते हैं, सेटअप उपरोक्त निर्दिष्ट सराहनाओं के अलावा किसी भी एसएमएस का जवाब नहीं देगा। '

उपरोक्त अवधारणा में सुधार

जीएसएम पंप एप्लिकेशन सर्किट के ऊपर इसने बहुत सारे पाठकों को आकर्षित किया और हमें बहुत सारे प्रश्न और सुझाव मिले। इस वेबसाइट के शौकीन पाठकों में से एक श्रीगांधी ने पूर्व डिजाइन में एक अच्छा सुधार करने का सुझाव दिया।

एसएमएस पावती जब मोटर वास्तव में चालू है

सुधार सभी रिवर्ट पावती के बारे में है, जहां उपयोगकर्ता को जीएसएम से अपने सेलफोन में एक एसएमएस प्रतिक्रिया प्राप्त होगी पंप नियंत्रक प्रणाली जब कोई उपयोगकर्ता एक वैध एसएमएस टिप्पणी भेजता है।

मौजूदा डिज़ाइन रिले के वास्तविक राज्य से स्वतंत्र उपयोगकर्ता पर एक पावती एसएमएस भेजता है, अर्थात ON / OFF।

श्रीगांधी द्वारा सुझाया गया नया डिज़ाइन परिवर्तन रिले की स्थिति की जाँच करता है कि रिले भौतिक रूप से अपने राज्य को स्विच करता है या नहीं।

इस नए जीएसएम पानी के अनुसार परिवर्तन पंप नियंत्रक डिजाइन योजना में दिखाए गए फीडबैक सिस्टम को जोड़कर और नए कोड को अपलोड करके बहुत परेशानी के बिना पिछले डिजाइन पर लागू किया जा सकता है।

सर्किट आरेख:

जब हम एसएमएस कमांड '/ मोटर ऑन /' भेजते हैं तो पिन # 9 हाई हो जाता है और रिले ऑन को ट्रिगर करता है। यदि रिले आम को जोड़ता है और N / O पिंस पंप शुरू करता है और ट्रांसफार्मर को भी चालू करता है जो आउटपुट पर +5 देगा।

# 5V सिग्नल # 7 को पिन करने के लिए फीड किया गया है जो कि पावती 'मोटर सक्रिय' के साथ पुष्टि करेगा और वापस आएगा।

जब हम '/ Motor OFF /' भेजते हैं तो पिन # 9 LOW बदल जाता है और रिले आम और N / O पिन को डिस्कनेक्ट कर देता है, इससे पंप बंद हो जाएगा और साथ ही जुड़ा ट्रांसफार्मर भी। # 7 पिन पर आउटपुट कम हो जाता है और एक पावती 'मोटर निष्क्रिय' के साथ लौटता है।

अगर कोई पावती नहीं आपके सेलफोन में एसएमएस प्राप्त होता है , हम पुष्टि कर सकते हैं कि कोई कार्रवाई नहीं की गई थी और पंप अंतिम अनुरोध की स्थिति में है, तो आप साइट पर जा सकते हैं और समस्या निवारण या बिजली की कटौती के कारण कोई पावती नहीं मिली है।

कार्यक्रम कोड:

//----------------Program developed by R.Girish------------//
int motor = 8
int LED = 9
int temp=0
int i=0
int ack=7
char str[15]
void setup()
{
Serial.begin(9600)
pinMode(ack,INPUT)
pinMode(motor,OUTPUT)
pinMode(LED,OUTPUT)
digitalWrite(motor,LOW)
digitalWrite(LED,LOW)
delay(20000)
delay(20000)
delay(20000)
Serial.println('AT+CNMI=2,2,0,0,0')
delay(1000)
Serial.println('AT+CMGF=1')
delay(500)
Serial.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
Serial.println('System is ready to receive commands.')// The SMS text you want to send
delay(100)
Serial.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
void loop()
{
if(temp==1)
{
check()
temp=0
i=0
delay(1000)
}
}
void serialEvent()
{
while(Serial.available())
{
if(Serial.find('/'))
{
delay(1000)
while (Serial.available())
{
char inChar=Serial.read()
str[i++]=inChar
if(inChar=='/')
{
temp=1
return
}
}
}
}
}
void check()
{
if(!(strncmp(str,'motor on',8)))
{
digitalWrite(motor,HIGH)
delay(100)
if(digitalRead(ack)==1)
{
digitalWrite(LED,HIGH)
delay(1000)
Serial.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
Serial.println('Motor Activated')// The SMS text you want to send
delay(100)
Serial.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
}
else if(!(strncmp(str,'motor off',9)))
{
digitalWrite(motor,LOW)
delay(5000)
if(digitalRead(ack)==0)
{
digitalWrite(LED,LOW)
delay(1000)
Serial.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
Serial.println('Motor deactivated')// The SMS text you want to send
delay(100)
Serial.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
}
else if(!(strncmp(str,'test',4)))
{
Serial.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
Serial.println('The System is Working Fine.')// The SMS text you want to send
delay(100)
Serial.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
}
//----------------Program developed by R.Girish------------//

उपरोक्त कार्यान्वयन का व्यावहारिक परीक्षण नहीं किया गया है, लेकिन लेखक शत प्रतिशत सुनिश्चित है कि उपरोक्त विचार काम करेगा। अगर पाठकों को उपरोक्त सुधार के साथ कोई समस्या मिली तो टिप्पणी अनुभाग के माध्यम से व्यक्त कर सकते हैं।

सूची का हिस्सा

1) ट्रांसफार्मर 12-0V नीचे कदम
2) डायोड IN4007 x5
3) LM7812 X1
4) रिले 12 वी एक्स 1
5) BC548 ट्रांजिस्टर X1
6) इलेक्ट्रोलाइटिक कैपेसिटर 1000uF X1
7) जीएसएम मॉड्यूल: सिम 800 या सिम 900 मॉडल
8) 330 ओम रेसिस्टर x2
9) LED RED / GREEN X1
10) Arduino Uno या Arduino नैनो या Arduino मेगा
11) डीसी पुरुष जैक x2

वीडियो क्लिप:

3 चरण मोटर्स के साथ एकीकरण

मुझे उपरोक्त डिज़ाइन के लिए रिले स्टेज को अपग्रेड करने के लिए कई अनुरोध मिल रहे हैं ताकि यह GSM सेल फोन कमांड का उपयोग करके 3 चरण मोटर्स के संचालन के लिए अनुकूल हो जाए।

इसलिए मैंने आवश्यक सर्किट डिजाइन करने का फैसला किया जो होगा उम्मीद है कि एक चालू 3 चरण मोटर्स को चालू और बंद करने में सक्षम होने के लिए और स्टार्टर तंत्र को बंद करने में सक्षम हो।

निम्नलिखित आंकड़ा दिखाता है कि आईसी 4017 सर्किट का उपयोग करके डिज़ाइन को कैसे कॉन्फ़िगर किया जाए।

जीएसएम 3 चरण मोटर नियंत्रक रिमोट सेल फोन

नोट: 100uF / 10K और 220uF और 47K मानों को कुछ समायोजन की आवश्यकता हो सकती है ताकि संबंधित ट्रांजिस्टर और रिले चरणों के लिए देरी की सही मात्रा सुनिश्चित हो सके।




की एक जोड़ी: घुसपैठिया स्थिति संकेतक सुरक्षा सर्किट अगला: रिमोट कंट्रोल्ड सोलर लैंप इंटेंसिटी कंट्रोलर सर्किट