صفحه 4 از 7 نخستنخست ... 23456 ... آخرینآخرین
نمایش نتایج: از 31 به 40 از 67
Like Tree9 لایک

موضوع: ماژول gprs / gsm چهار باند a6

  1. #31
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    نقل قول نوشته اصلی توسط Azartech نمایش پست ها
    براي ريست سخت افزاري ماژول بايد به پايه rst ولتاژ اعمال بشه يا اتصال به gnd برقرار بشه؟

    توی این لینک در مورد پین ریست که پین شماره 12 میشه توضیح داده شده:
    GSM GPRS A6 Module - ElectroDragon

  2. #32
    Junior Member
    تاریخ عضویت
    Oct 2016
    نوشته ها
    9
    با عرض سلام وخسته نباشید خدمت همه دوستان عزیز
    خدمت دوستان عرض شود که ما دو تا از این ماژول خریدیم و به هیچ عنوان نتوانستیم که راه اندازیش کنیم و همه کارهایی که دوستان در این تاپیک فرمودئند انجام شد ولی راه نیفتاد که نیفتاد.همه اتصالات از جمله سریال و برق رو با همان ماژول پروگرام خود سایت به ماژول وصل کردم و با یه کابل برق رو هم بهش وصل کردم .پاور کی رو هم برای مدت 2 ثانیه برق بهش دادم ولی نشد که نشد اگه دوستان کسی میخواهد کمک کنه مرحله به مرحله کمک کنه لطفا.

  3. #33
    Junior Member
    تاریخ عضویت
    Oct 2016
    نوشته ها
    9
    دوستان در ضمن یه سوال؟
    اگر یکی از این ماژول ها که در سایت موجود هست برای خرید که بدون دردسر و اذیت به آردینو وصل بشود و برنامه نوشته شده آن هم موجود باشد را معرفی بفرمایید یعنی من وصلش کردم به راحتی بتوانم باهاش اس ام اس یزنم و ازش استفاده کنم نه این که با کلی دردسر بخواهم بهش ور بروم باز هم بکار نیفتد

  4. #34
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    نقل قول نوشته اصلی توسط mahfa2236 نمایش پست ها
    دوستان در ضمن یه سوال؟
    اگر یکی از این ماژول ها که در سایت موجود هست برای خرید که بدون دردسر و اذیت به آردینو وصل بشود و برنامه نوشته شده آن هم موجود باشد را معرفی بفرمایید یعنی من وصلش کردم به راحتی بتوانم باهاش اس ام اس یزنم و ازش استفاده کنم نه این که با کلی دردسر بخواهم بهش ور بروم باز هم بکار نیفتد
    درمورد این سوالتون باید بگم که رو یماژول مناسبی دست گذاشتید پس نگران نباشید وقتی راه بیفته خودتن پی می برید به این حرف .

  5. #35
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    نقل قول نوشته اصلی توسط mahfa2236 نمایش پست ها
    با عرض سلام وخسته نباشید خدمت همه دوستان عزیز
    خدمت دوستان عرض شود که ما دو تا از این ماژول خریدیم و به هیچ عنوان نتوانستیم که راه اندازیش کنیم و همه کارهایی که دوستان در این تاپیک فرمودئند انجام شد ولی راه نیفتاد که نیفتاد.همه اتصالات از جمله سریال و برق رو با همان ماژول پروگرام خود سایت به ماژول وصل کردم و با یه کابل برق رو هم بهش وصل کردم .پاور کی رو هم برای مدت 2 ثانیه برق بهش دادم ولی نشد که نشد اگه دوستان کسی میخواهد کمک کنه مرحله به مرحله کمک کنه لطفا.
    من تصورم اینه که شما این ماژول رو خریداری کردید :
    ماژول GPRS / GSM چهار باند A6 دارای ارتباط سریال - پشتیبانی از AT Command

    مراحل راه اندازی :
    1.سیم کارت رو بندازید روش

    2. اتصالت رو به پروگرامر به صورت زیر انجام بدید :

    مبدل ماژول
    GND GND
    TX RX
    RX TX

    2. با میکرو USB بهش پاور بدید .

    3. از پین VCC اش یه انشعاب بگیرید و به پین PWR اش برای مدت 2 ثانیه وصل کنید و بعد از اون رها کنید.

    4. کنسول سریال رو باز کنید و تنظیمات رو روی بادریت 115200 و تنظیم زیر انجام بدید:

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: 2016-11-05_9-06-27.jpg
مشاهده: 712
حجم: 14.9 کیلو بایت

    بعد از این با اولین AT باید OK برگردونده بشه .

  6. #36
    Junior Member
    تاریخ عضویت
    Apr 2016
    نوشته ها
    4
    با سلام
    ضمن تشکر از راهنماییهاتون که کارگشا بودو حل شد،قفظ امکان ارسال پیام با دستورات at همچنان نشدوپیام دریافت کردم ولی ارسال هنگ میکندوچندین بار باید ریست شود تا برگرده به حالت عادی.لطفا راهنمایی کنید.
    همچنینی اگر کدآماده یا لایبرری خاصی برای کار ازطریق بردهای آردینو اگه وجود دارد معرفی کنید.
    ممنون

  7. #37
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    نقل قول نوشته اصلی توسط saeed990 نمایش پست ها
    با سلام
    ضمن تشکر از راهنماییهاتون که کارگشا بودو حل شد،قفظ امکان ارسال پیام با دستورات at همچنان نشدوپیام دریافت کردم ولی ارسال هنگ میکندوچندین بار باید ریست شود تا برگرده به حالت عادی.لطفا راهنمایی کنید.
    همچنینی اگر کدآماده یا لایبرری خاصی برای کار ازطریق بردهای آردینو اگه وجود دارد معرفی کنید.
    ممنون
    اول در مورد کد این که این کد باری sim800l هست اما از اونجایی که اکثر کامندها بین ماژول های سیم مشترکه میتونید ازش استفاده کنید:
    کد:
    #include <SoftwareSerial.h>
    SoftwareSerial SIM800(D2, D1 , 128);
    #define GSMReset D3
    
    
    
    
    void setup() {
      Serial.begin(9600); // for serial monitor
      SIM800.begin(9600); // for GSM shield
      gsmPower();
      gsmConfig();
      dialNumber() ;
    }
    
    
    
    
    void loop() {
      commandDetect();
    }
    //*********************************************************************************
    void gsmConfig() {
      sendCommand("ATZ", 100);
      sendCommand("AT+CMGD=1,4", 200);
      sendCommand("AT+CMGF=1\r", 100); // set SMS mode to text
      sendCommand("AT+CFUN=1", 2000);
      sendCommand("AT+CREG?", 1000);
      dtmfActive();
      anwerCall();
      Serial.println("The end of Config process");
      Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms \n 'h' for HttpRequest \n 's' for Send2Pachube  ");
    }
    //**********************************************************************************
    void showSms() {
      char incoming_char = 0;
      if ( SIM800.available() > 0)
      {
        incoming_char =  SIM800.read(); //Get the character from the cellular serial port.
        Serial.print(incoming_char); //Print the incoming character to the terminal.
      }
    }
    //***********************************************************************************
    void smsProcess() {
      char incoming_char = 0;
      if ( SIM800.available() > 0)
      {
    
    
    
    
        incoming_char =  SIM800.read();
        if (incoming_char == 'A')
        {
          delay(10);
          incoming_char =  SIM800.read();
          if (incoming_char == 'd')
          {
            delay(10);
            Serial.print("horaaaaaaaaaaaaaaaaaaay");
          }
        }
      }
    }
    //***********************************************************************************
    void gsmPower() {
      pinMode(GSMReset, OUTPUT);
      Serial.println("Turning GSM ON");
      digitalWrite(GSMReset, HIGH);
     // delay(1100);
      //digitalWrite(GSMReset, LOW);
     // delay(4000);
      Serial.println("Start config process...");
    }
    
    
    
    
    //**********************************************************************************
    
    
    
    
    void sendCommand(String cmd, int t)
    {
      SIM800.println(cmd);
      readSerial();
      delay(t);
    }
    
    
    
    
    //**************************************************************************************
    void readSerial( ) {
      while (SIM800.available())
      {
        Serial.write(SIM800.read());
      }
    }
    
    
    
    
    //***********************************************************************************
    
    
    
    
    void dialNumber() {
      Serial.println("Dialing...");
      sendCommand("ATD09177102643;", 100);
      Serial.println("End of Dial process");
      delay(2000);
      Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms \n 'h' for HttpRequest \n 's' for Send2Pachube  ");
    }
    //************************************************************************************
    void ensms()
    {
      Serial.println("Sending SMS");
      sendCommand("AT+CSCS=\"GSM\"", 200);
      sendCommand("AT+CMGF=1", 200);
      sendCommand("AT+CSMP=17,167,0,0", 200);
      sendCommand("AT+CMGS=\"09177102643\"", 500);
      sendCommand("Salam\n manam !\x1A", 500);
      Serial.println("Englisg SMS Sent");
      Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms \n 'h' for HttpRequest \n 's' for Send2Pachube  ");
    }
    
    
    
    
    //****************************************************************************************
    void farsisms()
    {
      Serial.println("Sending SMS");
      sendCommand("AT+CSCS=\"HEX\"", 100);
      sendCommand("AT+CMGF=1", 100);
      sendCommand("AT+CSMP=17,167,0,8", 100);
      sendCommand("AT+CMGS=\"09177102643\"", 500);
      sendCommand("0633064406270645060C002006220641062A0627062800200631062706CC062706460647\x1A", 0);
      Serial.println("Persian SMS Sent");
      Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms \n 'h' for HttpRequest \n 's' for Send2Pachube  ");
    }
    //*******************************************************************************************
    void commandDetect() {
    
    
    
    
      if (Serial.available() > 0)
      {
        char data = Serial.read();
        switch (data)
        {
          case 'd' :
            dialNumber();
            break;
    
    
    
    
          case 'e' : ensms();
            break;
    
    
    
    
          case 'f' : farsisms();
            break;
    
    
    
    
          case 'h':
            SubmitHttpRequest();
            break;
    
    
    
    
          case 's':
            Send2Pachube();
            break;
        }
      }
    }
    
    
    
    
    //******************************************************************************************************
    void SubmitHttpRequest()
    {
      sendCommand("AT+CSQ", 100);
      sendCommand("AT+CGATT?", 100);
      sendCommand("AT+SAPBR=3,1,\"CONTYPE\",\"GPRS\"", 1000); //setting the SAPBR, the connection type is using gprs
      sendCommand("AT+SAPBR=3,1,\"APN\",\"CMNET\"", 4000); //setting the APN, the second need you fill in your local apn server
      sendCommand("AT+SAPBR=1,1", 2000); //setting the SAPBR, for detail you can refer to the AT command mamual
      sendCommand("AT+HTTPINIT", 2000); //init the HTTP request
      sendCommand("AT+HTTPPARA=\"URL\",\"www.google.com.hk\"", 1000); // setting the httppara, the second parameter is the website you want to access
      sendCommand("AT+HTTPACTION=0", 10000); //submit the request
      sendCommand("AT+HTTPREAD", 300); // read the data from the website you access
      sendCommand("", 100);
      delay(2000);
      Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms \n 'h' for HttpRequest \n 's' for Send2Pachube  ");
    }
    
    
    
    
    //*************************************************************************************************************************
    ///send2Pachube()///
    ///this function is to send the sensor data to the pachube, you can see the new value in the pachube after execute this function///
    void Send2Pachube()
    {
      sendCommand("AT+CGATT?", 1000);
      sendCommand("AT+CSTT=\"CMNET\"", 1000); //start task and setting the APN,
      sendCommand("AT+CIICR", 3000); //bring up wireless connection
      sendCommand("AT+CIFSR", 2000); //get local IP adress
      sendCommand("AT+CIPSPRT=0", 3000);
      sendCommand("AT+CIPSTART=\"tcp\",\"api.cosm.com\",\"8081\"", 2000); //start up the connection
      sendCommand("AT+CIPSEND", 4000); //begin send data to remote server
    
    
    
    
      String humidity = "1031";//these 4 line code are imitate the real sensor data, because the demo did't add other sensor, so using 4 string variable to replace.
      String moisture = "1242";//you can replace these four variable to the real sensor data in your project
      String temperature = "30";//
      String barometer = "60.56";//
      sendCommand("{\"method\": \"put\",\"resource\": \"/feeds/42742/\",\"params\"", 500); //here is the feed you apply from pachube
      sendCommand(": {},\"headers\": {\"X-PachubeApiKey\":", 500); //in here, you should replace your pachubeapikey
      sendCommand(" \"_cXwr5LE8qW4a296O-cDwOUvfddFer5pGmaRigPsiO0", 500); //pachubeapikey
      sendCommand("jEB9OjK-W6vej56j9ItaSlIac-hgbQjxExuveD95yc8BttXc", 500); //pachubeapikey
      sendCommand("Z7_seZqLVjeCOmNbEXUva45t6FL8AxOcuNSsQS\"},\"body\":", 500);
      sendCommand(" {\"version\": \"1.0.0\",\"datastreams\": ", 500);
      sendCommand("[{\"id\": \"01\",\"current_value\": \"" + barometer + "\"},", 500);
      sendCommand("{\"id\": \"02\",\"current_value\": \"" + humidity + "\"},", 500);
      sendCommand("{\"id\": \"03\",\"current_value\": \"" + moisture + "\"},", 500);
      sendCommand("{\"id\": \"04\",\"current_value\": \"" + temperature + "\"}]},\"token\": \"lee\"}", 500);
      SIM800.println(); ((char)26); //sending
      delay(5000);
      SIM800.println();
      sendCommand("AT+CIPCLOSE", 100); //close the connection
      delay(2000);
      Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms \n 'h' for HttpRequest \n 's' for Send2Pachube  ");
    
    
    
    
    }
    
    
    
    
    //******************************************************************************************************************
    void dtmfActive() {
      sendCommand("AT+DDET=1", 200);
    }
    
    
    
    
    
    
    
    
    //***************************************************************
    void anwerCall() {
      sendCommand("ATS0=3", 200);
    }
    
    
    
    
    void blinkd16(){
      pinMode(16,OUTPUT);
      digitalWrite(16,HIGH);
      delay(100);
      digitalWrite(16,LOW);
        delay(100);
      }
    فقط باید شماره پینهای ارتباط سریال نرم افزاریتون رو عوض کنید.

    در مورد کامند هم اگر سخت افزار رعایت شده باشه و به پین پاورش هم ولتاژ داده باشید و تنظیمات کنسول رو رعایت کرده باشید تنها نکته ای که میمونه اینه که بادریتش 115200 نباشه
    روی بادریت های دیگه هم تست کنید.

  8. #38
    Junior Member
    تاریخ عضویت
    Jul 2016
    نوشته ها
    4
    دوستان گرامی،
    آیا روشی برای چک کردن شارژ سیم کارت در A6 سراغ دارید؟
    برای چک کردن شارژ در sim900 می توانستیم از دستور ATD*141*1# استفاده کنیم. اما در A6 اگر این دستور را تایپ کنیم پاسخ +CME ERROR:500 را دریافت می کنیم. این در حالی است که در A6 دستور ATD برای شماره گیری تلفن درست کار می کند. مثلا کافی است که بنویسیم ATD141*1# تا بدون هیچ خطایی شماره گیری کند. اما به مجرد اینکه ستاره را در ابتدای شماره ذکر کنیم خطا می دهد.

  9. #39
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    نقل قول نوشته اصلی توسط sepehr19 نمایش پست ها
    دوستان گرامی،
    آیا روشی برای چک کردن شارژ سیم کارت در A6 سراغ دارید؟
    برای چک کردن شارژ در sim900 می توانستیم از دستور ATD*141*1# استفاده کنیم. اما در A6 اگر این دستور را تایپ کنیم پاسخ +CME ERROR:500 را دریافت می کنیم. این در حالی است که در A6 دستور ATD برای شماره گیری تلفن درست کار می کند. مثلا کافی است که بنویسیم ATD141*1# تا بدون هیچ خطایی شماره گیری کند. اما به مجرد اینکه ستاره را در ابتدای شماره ذکر کنیم خطا می دهد.
    موفق شدید حل کنید مشکل رو ؟

  10. #40
    Junior Member
    تاریخ عضویت
    Dec 2016
    نوشته ها
    3
    من نمیدونم چرا اینقدر مشکلات مزخرف دارن این ماژول ها.
    من از A6 میخوام استفاده کنم اما حتی نتونستم ازش تماس بگیرم!!!
    فقط تونستم at بدم و ok بگیرم که اونم بعضی وقتا حروف عجیب غریب میده.
    واقعا با اینا نمیشه یه پروژه درست درمون نوشت. چرا انقدر محیط نرم افزاری آردوینو مزخرف و ساده هستش؟
    دوستان میتونن کمک کنن این مشکلات رو رفع کنم؟مطمئن هستم واسه خیلی های دیگه هم بعدا پیش میاد.
    1. چرا حروف عجیب غریب میاد در حالیکه بادریت uno و a6 یکی و برابر 115200 هست؟
    2. چرا تماس برقرار نمیشه؟
    این دومیه واقعا رو مخمه. 3 تا دونه سیمه و چهار خط کد اما نه تماس به بیرون میگیره نه از بیرون میشه بهش زنگ زد (زنگ میزنم به سیمکارت ماژول میگه دستگاه مشترک موردنظر خاموشه و مرده!!!)
    ببخشید دیگه خدایی اعصابمو به هم ریخت((((

صفحه 4 از 7 نخستنخست ... 23456 ... آخرینآخرین

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

SEO by vBSEO