2011-12-14 20 views
8

पर डेटा भेजने के लिए Arduino जीएसएम/जीपीआरएस शील्ड का उपयोग करें, मुझे पता है कि Arduino Uno के लिए जीएसएम/जीपीआरएस shield का उपयोग करके कॉल कैसे करें और एसएमएस भेजें। लेकिन मेरे पास http://mydomain.com/rest/receiveSensorData स्थान पर एक वेब सेवा है, और मैं जीएसएम/जीपीआरएस शील्ड का उपयोग करके इस यूआरएल में सेंसर डेटा भेजना चाहता हूं क्योंकि मैं ऑपरेटिंग स्थानों पर मौजूद वाई-फाई पर भरोसा नहीं कर सकता। This is the shield मेरे पास है, और मेरे पास एक 3 जी सिम कार्ड भी है और मैं एक Arduino Uno पर चल रहा हूं।मेरी वेब सेवा

मैं यह कैसे कर सकता हूं?

उत्तर

0

डेटा छोटा होने पर एसएमएस भेजना वास्तव में आसान हो सकता है और आप अपने वेब एप्लिकेशन में एसएमएस जानकारी प्राप्त करने की क्षमता जोड़ सकते हैं। http://www.twilio.com/sms/:

विशेष पहले एक में निम्नलिखित प्रश्न के जवाब जिससे पता चलता देखें

एसएमएस का उपयोग करने का

Receive SMS messages in a web application in the US on a hosted server

एक लाभ यह है कि यह एक जीपीआरएस कनेक्शन सेट करने के लिए होने ढाल की बचत होगी कि है जो आमतौर पर अधिक समय लगेगा और अधिक शक्ति का उपयोग कर सकते हैं। एक नुकसान, इस बात से अवगत होना कि एसएमएस गारंटीकृत संदेश प्रणाली नहीं है, हालांकि आप चाहें तो एसएमएस के शीर्ष पर कुछ प्रकार की पावती बना सकते हैं।

एक तरफ, एक 3 जी सिम होने से आप जीपीआरएस मॉडेम पर 3 जी का उपयोग करने में सक्षम नहीं होंगे जब तक कि मॉडेम 3 जी का भी समर्थन न करे।

+1

वह कैसे ते सर्वर से एसएमएस भेजने के लिए वह वेब सेवा जो वास्तव में सर्वर से एसएमएस की स्थापना की तुलना में आसान है करने के लिए एक कनेक्शन बनाने के लिए कैसे पूछ रहा था नहीं कह रहा था। –

+0

वह एक वेब सेवा करने के लिए सेंसर डेटा भेजने के लिए कैसे पूछ रहा था, यह एसएमएस और जो एक वेब सर्वर की अनुमति देता है सर्वर साइड पर एक सेवा का उपयोग किया जा सकता है एसएमएस है जो प्राप्त क्या पता चलता है ऊपर जवाब। कुछ मामलों में एसएमएस का उपयोग करने के फायदे हैं और यह भी बताया जाता है। – Mick

+0

मुझे लगता है कि यह एक महंगा विकल्प होगा। –

9

आप शायद पहले से ही इस काम के मिल गया लेकिन सिर्फ मामले में:

मेरी सेटअप में मैं Seeed Quad बैंड जीपीआरएस शील्ड Sim900 मॉड्यूल का उपयोग करता है का उपयोग कर रहा हूँ। मेरा मानना ​​है कि यह कोड आपके लिए चश्मे को देखने के बाद भी आपके साथ काम करेगा।

#include <SoftwareSerial.h> 
SoftwareSerial gprsSerial(7, 8); 

void setup() 
{ 
    gprsSerial.begin(19200); 
    Serial.begin(19200); 

    Serial.println("Config SIM900..."); 
    delay(2000); 
    Serial.println("Done!..."); 
    gprsSerial.flush(); 
    Serial.flush(); 

    // attach or detach from GPRS service 
    gprsSerial.println("AT+CGATT?"); 
    delay(100); 
    toSerial(); 


    // bearer settings 
    gprsSerial.println("AT+SAPBR=3,1,\"CONTYPE\",\"GPRS\""); 
    delay(2000); 
    toSerial(); 

    // bearer settings 
    gprsSerial.println("AT+SAPBR=3,1,\"APN\",\"epc.tmobile.com\""); 
    delay(2000); 
    toSerial(); 

    // bearer settings 
    gprsSerial.println("AT+SAPBR=1,1"); 
    delay(2000); 
    toSerial(); 
} 


void loop() 
{ 
    // initialize http service 
    gprsSerial.println("AT+HTTPINIT"); 
    delay(2000); 
    toSerial(); 

    // set http param value 
    gprsSerial.println("AT+HTTPPARA=\"URL\",\"http://YOUR.DOMAIN.COM/rest/receiveSensorData?sensorval1=blah&sensorval2=blah\""); 
    delay(2000); 
    toSerial(); 

    // set http action type 0 = GET, 1 = POST, 2 = HEAD 
    gprsSerial.println("AT+HTTPACTION=0"); 
    delay(6000); 
    toSerial(); 

    // read server response 
    gprsSerial.println("AT+HTTPREAD"); 
    delay(1000); 
    toSerial(); 

    gprsSerial.println(""); 
    gprsSerial.println("AT+HTTPTERM"); 
    toSerial(); 
    delay(300); 

    gprsSerial.println(""); 
    delay(10000); 
} 

void toSerial() 
{ 
    while(gprsSerial.available()!=0) 
    { 
    Serial.write(gprsSerial.read()); 
    } 
} 

बस परिवर्तन "epc.tmobile.com" कृपया अपने कैरियर के लिए APN के लिए और अपने सर्वर की जानकारी करने के लिए "YOUR.DOMAIN.COM" और अपने चर और सेंसर डेटा को बदलने "sensorval1 = blah"।

मुझे यह बताएं कि क्या आपको यह काम मिल रहा है या नहीं। मैं तुम्हें यह पता लगा है कि यह बहुत मुश्किल नहीं है कर सकते हैं।

गुड लक।

+0

मुझे 'एटी + एसएपीबीआर' के सभी संयोजनों में त्रुटि मिली है। मैं एक SIM300 आधारित बोर्ड का उपयोग कर रहा, – Siddharth

+0

आप कैसे बाद में सर्वर साइड कोड पता होगा? मैं उल्का पर चल रहा हूं इसलिए यह एक mongodb डेटाबेस के साथ सभी जावास्क्रिप्ट है। – mjwrazor