راه‌اندازی و ارسال پیامک با ماژول SIM900 و ماژول‌های GSM مشابه

0
45
راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه
راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه

به احتمال زیاد با ماژول SIM900 آشنا هستید و می‌دانید که با این ماژول می‌توانید مانند یک گوشی ساده عمل کنید مثلا پیامک بفرستید پیامک دریافت کنید تماس صوتی برقرار کنید به اینترنت وصل شود و غیره در پروژه‌های زیادی این ماژول می‌تواند به ما کمک کندپروژه‌های کنترل از راه دور و یا مانیتورینگ از راه دور از جمله کاربرد‌های این ماژول هستند. چند نمونه از پروژه‌های طراحی شده با این ماژول را در وبسایت ما ملاحظه می‌کنیددر ادامه با ما باشید تا نحوه‌ی طراحی یک منبع تغذیه خوب برای این ماژول و ارسال پیامک را برسی کنیم.

  • هشدار نشتی گاز با ماژول SIM900 (و ماژول‌های مشابه)

کاربرد بالا فقط چند نمونه از کاربرد‌های این ماژول هستند با خلاقیت شما کاربردهای بیشتری امکان پذیر است.

راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه
نمونه هدربرد ماژول SIM900

 

برای شروع کار تامین تغذیه مناسب برای ماژول SIM900 می‌باشد که از یک منبع تغذیه آزمایشگاهی و یا یک آداپتور بعلاوه مدار زیر می‌توانید استفاده کنید و البته من خودم در بعضی از پروژه‌ها از یک آداپتور و یک دیود سر راه تغذیه ماژول استفاده می‌کنم.

 

راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه
راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه

بعد از اتصال تغذیه ماژول دکمه روی ماژول را 1 ثانیه فشار دهید تا ماژول روشن شود.

برای تست ماژول راحت ماژول می‌توانید با یک مبدل USB به سریال آنرا به کامپیوتر وصل کنید.

راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه
راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه

بعد از اتصال ماژول به مبدل نرم افزار تراترم و یا هر نرم افزار ترمینال سریال مانند هایپرترمینال و یا قسمت ترمینال سریال خود کدویژن را باز کنید و کامنت AT را با حروف بزرگ نوشته و اینتر بزنید. اگر ماژول روشن و مناسب تغذیه شده باشد و سالم باشد باید در جواب این کامنت OK را ارسال کند. نمونه عملی ارسال کامنت و پاسخ را در شکل زیر در نرم‌افزار TeraTerm  مشاهده می‌کنید.

 

راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه
راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه

خب بریم سر ارسال پیامک با ماژول

برای ارسال پیامک اول باید فرمت تکست را برای ماژول انتخاب کنیم. با دستور زیر حالت پیامک به TEXT  تغییر حالت می‌دهد پس قبل از ارسال پیامک باید دستور AT+CMGF=1 را به ماژول ارسال کنیم. بعد از تنظیم حالت پیامک ماژول با دستور زیر پیام را به شماره دلخواه ارسال می‌کنیم:

راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه
راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه

در دستور AT+CMGS ارسال پیامک، شماره تلفن باید بین ” ” باشد بعد یک ENTER  و متن پیامک و بعد با گرفتن کنترل و زدن دکمه Z و یا CTRL+Z پیامک ارسال می‌شود.

 نحوه اتصال ماژول به میکروکنترلر

 

در این آموزش من از میکروکنترلر AVR  استفاده می‌کنم ولی برای میکروکنترلرهای دیگر نیز مشابه است. پایه ی RXD ماژول به پایه TXD میکروکنترلر و پایه TXD ماژول به پایه RXD میکروکنترلر وصل می‌شود. و پایه RI ماژول در مرحله دریافت پیامک بیشتر نیاز است به پایه وقفه میکروکنترلر وصل می‌شود و البته در این مرحله نیاز نمی‌باشد.

راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه
راه اندازی و ارسال پیامک با ماژول SIM900 و ماژول های GSM مشابه

 

نکته مهم: در میکروکنترلر چگونه باید ENTER بزنیم و چگونه Ctrl+z بزنیم؟

جوابش خیلی ساده است با کد های اسکلی اینها خب کد‌های اسکی مورد استفاده به شرح زیر هستند و برای کد‌های بیشتر جدول اسکی را در گوگل سرچ کنید و اونجا کامل نوشته.

NTER   13
Ctrl+z     26
"              34
'               39

خب خیلی ساده کد زیر در میکروکنترلر AVR و محیط کدویژن برای ارسال پیامک می باشد.

/*
SIM900 Header Board Code example 
Send SMS 
Melec.ir
*/
#include <mega16.h>
#include <alcd.h>
#include <stdio.h>
#include <delay.h>


interrupt [USART_RXC] void usart_rx_isr(void)
{
//char data;
#asm("cli")
//data=UDR;
 // if you want to check the sim900 answer after send sms and etc...  
 // you can use data var ....
#asm("sei")
}

void main(void)
{
   
//USART Register Setting 
UCSRA=0x00;
UCSRB=0x98;
UCSRC=0x06;
UBRRH=0x00;
UBRRL=0x33;


   
DDRD=(1<<DDD3); // PORTD.3 OUTPUT FOR ON/OFF SIM900

    
    lcd_init(16);
    lcd_clear();
    lcd_putsf("**  SIM900 **");
    lcd_gotoxy(0,1);
    lcd_putsf(" Melec.ir");   
    delay_ms(500);
         
     ///ON SIM900
     PORTD.3=1; 
     delay_ms(1000);
     PORTD.3=0;
              
          
    #asm("sei")     
    while (1)
    {        
            
           if(PIND.4==0){  
           while(PIND.4==0);  
            lcd_clear(); 
            lcd_putsf(" Sending SMS ");  
           printf("AT%c",13);
           delay_ms(200);
           printf("AT+CMGF=1%c",13);
           delay_ms(200);
           printf("AT+CMGS=%c09371548691%c%c",34,34,13); // your phone number
           delay_ms(200);
           printf("HI! SIM900 %c%c",13,26);   //sms text 
           delay_ms(500);    
            lcd_clear(); 
            lcd_putsf("SMS Sent"); 
           }                                               
    }
}

 

در کد بالا PORTD.3 برای روشن کردن ماژول با یک ترانزیستور به ماژول وصل شده که البته شما می‌توانید بصورت دستی با فشار دادن شستی روی برد نیز ماژول را روشن کنید. در کد بالا با فشار دادن کلید وصل شده به پایه PORTD.4 یک پیامک ارسال و می‌شود روی ال سی دی هم می‌نویسد که پیامک ارسال شد. 

 

منبع:  میکرودیزاینرالکترونیک

برای این مقاله نظر بگذارید:

لطفا دیدگاه خود را بنویسید
لطفا نام خود را وارد کنید