SIM800L आधारित एसएमएस नियंत्रक

Pin
Send
Share
Send


SIM800L V2.0 GSM / GPRS क्वाड-बैंड GSM / GPRS मॉड्यूल Arduino के साथ संगत है। मॉड्यूल का उपयोग जीएसएम (कॉल और एसएमएस) और जीपीआरएस के कार्यों को लागू करने के लिए किया जाता है। इस मॉड्यूल का लाभ 5V के वोल्टेज के साथ TTL इंटरफ़ेस है, जो आपको 5V बिजली की आपूर्ति के साथ इसे सीधे Arduino या किसी अन्य सिस्टम से कनेक्ट करने की अनुमति देता है। बाजार पर अधिकांश GSM / GPRS मॉड्यूल को नियामक कनेक्शन या स्तर रूपांतरण की आवश्यकता होती है, जबकि SIM800L V.2 GSM / GPRS में अतिरिक्त इंटरफ़ेस स्तर रूपांतरण सर्किट की आवश्यकता नहीं होती है।
यहाँ SIM800L V.2 GSM / GPRS का उपयोग करके एक उदाहरण परियोजना है। परियोजना का अर्थ एसएमएस नियंत्रक का उपयोग करके स्विच को नियंत्रित करना है। आप घर के अधिकांश घरेलू उपकरणों को आसानी से चालू और बंद कर सकते हैं, जैसे कि एक लामा, एक प्रशंसक, और इसी तरह।

SIM800L V.2 GSM / GPRS मॉड्यूल के लक्षण


नीचे SIM800L V.2 GSM / GPRS मॉड्यूल के सभी तकनीकी विनिर्देश दिए गए हैं:
  • टीटीएल सीरियल इंटरफ़ेस 3.3V के साथ संगत और 5V माइक्रोकंट्रोलर Arduino के साथ संगत है।
  • SIM800L मॉड्यूल में TTL सीरियल इंटरफ़ेस है।
  • एंटीना प्लग
  • नेटवर्क समर्थन: चार बैंड 850/900/1800/1900 मेगाहर्ट्ज, काफी कम बैटरी की खपत के साथ कॉल, एसएमएस और डेटा ट्रांसफर करने में सक्षम।
  • VDD TTL UART इंटरफ़ेस, जिससे आप सीधे MCU जैसे 51MCU, ARM या MSP430 को जोड़ सकते हैं। VDD प्लग टीटीएल वोल्टेज से मेल खाता था।
  • मॉडल: SIMCOM SIM800L
  • कार्यशील वोल्टेज: 3.7 वी से 5 वी तक;
  • आयाम: 40 मिमी x 28 मिमी x 3 मिमी
  • जीपीआरएस मल्टीस्टोट वर्ग 12/10
  • जीपीआरएस बैच सेवा वर्ग बी
  • जीएसएम चरण 2/2 + के अनुरूप है
  • कक्षा 4 (2 वॉट @ 850/900 मेगाहर्ट्ज)
  • कक्षा 1 (1 वाट @ 1800/1900 मेगाहर्ट्ज)

आवश्यक सामग्री


आपको आवश्यकता होगी:


1. SIM800L V.2 GSM / GPRS मॉड्यूल।
2. अर्डुइनो ऊनो।
3. 4-चैनल 5-वोल्ट रिले मॉड्यूल।
4. तार - कूदने वाले।
5. बिजली की आपूर्ति 5 वी।
(खरीद के लिए स्टोर के लिए सक्रिय लिंक)

विधानसभा और विन्यास


एक बार जब आप सभी घटकों को कनेक्ट कर लेते हैं, तो एक प्रोग्राम बनाएं, और फिर इसे अपने Arduino पर डाउनलोड करें। लेकिन पहले, आपको जीपीआरएस पुस्तकालय स्थापित करना होगा, जिसे आप डाउनलोड कर सकते हैं:
gprs.zip 28.02 Kb (डाउनलोड: 509)

Arduino के लिए प्रोग्राम कोड


आपके द्वारा अपने SIM800L, 4-चैनल रिले मॉड्यूल और Arduino को अपने कंप्यूटर से कनेक्ट करने के बाद, नीचे दिए गए कोड को दर्ज करें और आपका काम हो गया।
#include #include #define TIMEOUT 5000 #define ACTIVE LOW #define OFF हाई बाइट रिले = {A0, A1, A2, A3}; बाइट StatRelay4; चार बफ़र 20; char currentLine500 = ""; int currentLineIndex = 0; बूल nextLineIsMessage = false; स्ट्रिंग रिप्लाईनंबर = "089510863958"; जीपीआरएस gprs; शून्य सेटअप () {के लिए (इंट i = 0; मैं >> स्वचालित रूप से एसएमएस पढ़ें); gprs.preInit (); विलंब (1000); जबकि (0! = gprs.init ()) {विलंब (1000); सीरियल .print ("init errorrn");} // संदेश को मोड ASCII में प्रबंधित करें अगर (0! = gprs.sendCmdAndWaitForResp ("AT + CMGF = 1rn", "OK", TIMEOUT)) {ERROR ("ERROR: CNMI") ; रिटर्न;} // इनकमिंग एसएमएस पढ़ें अगर (0! = gprs.sendCmdAndWaitForResp ("AT + CNMI = 1,2,0,0,0rn", "OK", समय)) (ERROR ("ERROR: CNMI") ; वापसी;} int pjg = replNumber.length () + 1; बफ्नपंज; उत्तरनंबर.तोचरहर (भैंसा, पीजीजी); धारावाहिक ("नंबर पर जवाब भेजें =>"); सीरियल.प्रिंटलाइन (बफ्नर); ("इनिशियलाइज़ेशन डन"); सीरीयल प्रिंट। ("======================================== ======================)} शून्य लूप () {// बदलें स्थिति रिले चालू / बंद के लिए (int i = 0; मैं 0) {if (nextLineIsMessage) {Serial.println (lastLine); // ===================================== ============================ >> रिले नियंत्रक का कार्य // रिले 1 नियंत्रक अगर (lastLine.indexOf ("रिले 1 चालू") ")> = 0) {StatRelay0 = Aktif; सीरियल.प्रिंट ("जवाब ==== >>>>"); Serial.println ("रिले 1 स्टेटस एक्टिव"); gprs.sendSMS (बफ़्नर, "रिले 1 स्टेटस एक्टिव"); } और अगर (lastLine.indexOf ("रिले 1 ऑफ")> = 0) {स्टेटरेलवाय0 - MATI; सीरियल.प्रिंट ("जवाब ==== >>>>"); Serial.println ("रिले 1 स्टेटस ऑफ़"); gprs.sendSMS (बफ़न, "रिले 1 स्टेटस ऑफ़"); } // रिले 2 नियंत्रक अगर (lastLine.indexOf ("रिले 2 चालू") = = 0) {StatRelay1 = AKTIF; सीरियल.प्रिंट ("जवाब ==== >>>>"); Serial.println ("रिले 2 स्थिति सक्रिय"); gprs.sendSMS (बफ़न, "रिले 2 स्टेटस एक्टिव"); } और अगर (lastLine.indexOf ("रिले 2 ऑफ")> = 0) {StatRelay1 / MATI; सीरियल.प्रिंट ("जवाब ==== >>>>"); Serial.println ("रिले 2 स्टेटस ऑफ़"); gprs.sendSMS (बफ़्नर, "रिले 2 स्टेटस ऑफ़"); } // रिले 3 नियंत्रक अगर (lastLine.indexOf ("रिले 3 ऑन")> = 0) {StatRelay2 = AKTIF; सीरियल.प्रिंट ("जवाब ==== >>>>"); Serial.println ("रिले 3 स्थिति सक्रिय"); gprs.sendSMS (बफ्नर, "रिले 3 स्टेटस एक्टिव"); } और अगर (lastLine.indexOf ("रिले 3 ऑफ")> = 0) {StatRelay2 - MATI; सीरियल.प्रिंट ("जवाब ==== >>>>"); Serial.println ("रिले 3 स्टेटस ऑफ़"); gprs.sendSMS (बफ़्नर, "रिले 3 स्टेटस ऑफ़"); } // रिले 4 नियंत्रक अगर (lastLine.indexOf ("रिले 4 चालू") = = 0) {StatRelay3 = AKTIF; सीरियल.प्रिंट ("जवाब ==== >>>>"); Serial.println ("रिले 4 स्थिति सक्रिय"); gprs.sendSMS (बफ़्नर, "रिले 1 स्टेटस एक्टिव"); } और अगर (lastLine.indexOf ("रिले 4 ऑफ")> = 0) {StatRelay3 / MATI; सीरियल.प्रिंट ("जवाब ==== >>>>"); Serial.println ("रिले 4 स्टेटस ऑफ़"); gprs.sendSMS (बफ़्नर, "रिले 4 स्टेटस ऑफ़"); } nextLineIsMessage = false; } // ================================================ ====================} // पढ़ने के लिए अगली पंक्ति के लिए चार वर्ण स्पष्ट करें (int i =); i <sizeof (currentLine); ++ i); {currentLinei = (चार) 0; } currentLineIndex = 0; } और {currentLinecurcurrentLineIndex ++ = lastCharRead; }}}

डिवाइस की जांच


उपकरण SIM800L को वर्णों के एक विशिष्ट अनुक्रम के साथ एसएमएस भेजकर काम करता है। उदाहरण के लिए, रिले 1 को सक्षम करने के लिए, कमांड "रिले 1 ऑन" का उपयोग करें, और इसे बंद करने के लिए, कमांड "रिले 1 ऑफ" का उपयोग करें। बाकी रिले के पास लगभग एक ही कमांड है, प्रत्येक रिले के सीरियल नंबर के अपवाद के साथ जिसे आप संचालित करना चाहते हैं। संदेश भेजने के बाद, SIM800 प्रत्येक सिम कार्ड के लिए स्थिति संदेश के रूप में एक प्रतिक्रिया भेजेगा।

वीडियो असेंबली, कॉन्फ़िगरेशन और डिवाइस सत्यापन



मूल लेख अंग्रेजी में

Pin
Send
Share
Send

वीडियो देखें: GSM BASED MOTOR CONTROL (मई 2024).