طراح

طراح

زندگی یعنی پژوهش و فهمیدن چیز جدید ( پروفسور حسابی)
طراح

طراح

زندگی یعنی پژوهش و فهمیدن چیز جدید ( پروفسور حسابی)

جواب دادن به تماس ورودی GSM - SIM900


جواب دادن به تماس ورودی - GSM  :

ارسال دستور "ATA" به ماژول

نمایش شماره ی  تماس ورودی:

ارسال دستور "AT+CLIP=1" به ماژول

کتابخانه ماژول SIM900 - GSM

مدتی است که کتابخانه ای برای استفاده از ماژول های GSM نوشته ام و در پروژه های مرتبط با gsm  استفاده میکنم. جهت کمک به دوستان و توسعه و بهینه سازی بیشتر توسط سایر اساتید آن را منتشر میکنم.

کتابخانه را به برنامه تان اضافه کنید و :
ماژول را روشن و کانفیگ کنید
پیامک ها را دریافت و بخوانید
پیامک بفرستید
تماس ها را رد کنید
به تماس پاسخ دهید
پیامک فارسی ارسال کنید
شارژ سیم کارت را چک کنید
از وضعیت شبکه مطلع شوید
از وضعیت سیگنال مطلع شوید
اپراتور سیم کارت را تشخیص دهید
هیچ پیامکی را از دست ندهید(صف انتظار پیام)
حذف پیامک های خوانده شده به صورت هوشمند


دانلود راهنما


دانلود کتابخانه atXmega


دانلود کتابخانه aTmega


برای استفاده از کتابخانه در محیط اتمل استودیو از منوی file>advanced   save   option

قسمت Encoding را در حالت Arabic (Windows) - Codepage 1256 قرار دهید


در توسعه و بهینه سازی این کتابخانه شرکت کنید


حق نشرکتابخانه برای designer2013.blogsky.com محفوظ است. از کپی برداری بدون ذکر منبع خودداری کنید


ابوالفضل شاکری

کنترل با پیامک - پیشرفته


کنترلر پیامکی پیشرفته



پیام کنترل، یک سیستم کنترلی هوشمند مجهز به سیستم GSM و شبکه محبوبWI-FI میباشد.

توسط این سیستم کلیه دستگاه های الکتریکی موجود در منزل، ویلا، محل کار و ... را میتوان از راه دور و بدون محدودیت فاصله از طریق تلفن همراه کنترل (روشن-خاموش) کرد.

همچنین در صورت نزدیک بودن به دستگاه با استفاده از شبکه WI-FI ، میتوان بدون هزینه و سریع دستگاه های الکتریکی را کنترل کرد.

امکان برنامه ریزی خروجی ها برای کنترل دوره ای منظم، در ساعت و روز های مشخص از هفته محیا است، که کارکرد دستگاه بدون استفاده از تلفن همراه را ممکن میسازد و باعث صرفه جویی در هزینه ها میشود.

همچنین امکان اتصال سنسورهایی به ورودی دستگاه میباشد. در صورتی که سنسورها تغییر وضعیت دهند یک پیام برای شما ارسال میشود و شما را از وضعیت محیط مطلع میسازد.

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

 


ویژگی های سیستم:


· دارای 8 ورودی

· دارای 6 خروجی

· دارای ساعت دقیق داخلی

· امکان تغییر نام شبکه WI-FI

· امکان تغییر رمز شبکه WI-FI

· دارای اپلیکیشن اندروید

· ارسال تغییر وضعیت ورودی ها

· امکان تغییر کد دریافت شارژ سیم کارت

· امکان دریافت باقی مانده شارژ سیم کارت

· امکان تعیین زمان بندی برای خروجی ها

· ذخیره و نمایش 12 رویداد اخیر سیستم

· امکان تعیین 8 شماره موبایل برای سیستم

· امکان حفظ حالت رله بعد از قطع-وصل برق

· امکان انتقال وضعیت ورودی ها به خروجی ها

· کنترل خروجی ها از طریق پیامک و WI-FI

· زمان دهی به خروجی ها از 1 ثانیه تا 24 ساعت 

· پاسخ گویی به دستورات پیامکی به صورت فارسی

· نام گذاری دلخواه برای ورودی ها (فارسی و انگلیسی)

· نام گذاری دلخواه برای خروجی ها (فارسی و انگلیسی)

· امکان گزارش گیری از وضعیت ورودی ها و خروجی ها

· تغییر تنظیمات از طریق منوی سیستم، پیامک و WI-FI

· امکان بروز رسانی اتومات ساعت داخلی از طریق پیامک دریافتی


مشخصات فنی:


تغذیه دستگاه 12 ولت.

قابل نصب بر روی ریل

ورودی های ایزوله تا 4000 ولت.

خروجی ها از نوع رله ای تا 4 آمپر

ابعاد دستگاه 157x87x60  میلی متر

ولتاژ ورودی های دستگاه تا 24 ولت.

 

 





دانلود کاتالوگ

کاربردها:

کنترل وسایل الکتریکی از راه دور

کنترل روشنایی محیط های وسیع

اعلام هشدار پیامکی حریق، سرقت

راه اندازی چاه های آب، آبیاری باغ ها

هوشمند سازی و کنترل منازل و ویلاها

کنترل تجهیزات گلخانه ها، مرغذاری ها

تجهیز تابلو های برق به سیستم پیامکی

 

 

کنترل از طریق پیامک (GSM) - برنامه ریزی دوره ای - sms کنترلر

کنترل برنامه ریزی شده و از راه دور


sms کنترلر




این سیستم 8 خروجی را در اختیار شما قرار میدهد، و شما را قادر می­سازد از طریق پیامک خروجی مورد نظر را کنترل کنید. برای هر خروجی می­توان 4 زمان تعیین کرد؛ که پس از روشن شدن خروجی و گذشت زمان تعیین شده آن خروجی خاموش خواهد شد.


همچنین می­توان برای هر خروجی 4 زمان بندی به صورت مستقل تعیین کرد؛ تا در ساعت مشخصی، از روز مشخص در هفته عمل قطع و وصل خروجی بدون دریافت پیامک انجام شود.


همچنین از طریق ورودی های سیستم می­توان وضعیت قسمت های مختلف یک سیستم دیگر را استعلام گرفت.


مشخصات سیستم:

1-    استفاده از پردازنده قدرتمند و صنعتی ATXMEGA32A4U.

2-    تعیین 8 شماره موبایل برای سیستم.

3-    ذخیره و نمایش 12 رویداد اخیر سیستم.

4-    کنترل تمام خروجی ها از طریق پیامک.

5-    پاسخگویی به دستورات به صورت فارسی.

6-    کنترل تمام خروجی ها از طریق کامپیوتر با استفاده از نرم افزار.

7-    برنامه ریزی تمام خروجی ها از طریق پیامک، نرم افزار کامپیوتر و منو.

8-    امکان ارسال هشدار در صورت تغییر وضعیت ورودی های سیستم.

9-    دارای ساعت دقیق (بدون از بین رفتن ساعت در صورت قطع برق).

10-  دارای پورت RS232 و RS485 جهت توسعه سیستم.

11-  دارای ورودی-خروجی های کاملا ایزوله.

12-  حفظ حالت رله ها در صورت قطعی برق.

13-  دارای سنسور دما و رطوبت.

14-  نمایشگر 2*16 کارکتری.


کاربردها:

1-    راه اندازی چاه های آب به صورت اتومات و یا از طریق پیامک

2-    کنترل آبیاری فضاهای سبز، باغ و ویلا به صورت اتومات و یا از طریق پیامک

3-    استفاده در تابلوهای برق جهت فرمان دادن به صورت برنامه ریزی شده یا از طریق پیامک

4-  استفاده جهت کنترل روشنایی منزل  به صورت برنامه ریزی شده یا از طریق پیامک


برای هر خروجی به صورت مستقل می­توان 4 ساعت متفاوت برای روشن شدن در روز خاصی از هفته تعیین کرد، مدت زمان روشن ماندن هر حالت به صورت مستقل تعیین میشود.


برای مثال: می­توان تعیین کرد که خروجی اول در ساعت 7:00 صبح روز شنبه و سه ­شنبه به مدت 10 دقیقه و همین­طور ساعت 10:00 صبح روز چهارشنبه به مدت 25 دقیقه روشن شود. در این مثال ما از دو زمان بندی متفاوت برای خروجی اول استفاده کردیم. حداکثر زمان روشن بودن برای هر برنامه ­­ریزی 4 ساعت و 23 دقیقه میباشد (254 دقیقه). که با توجه به تعیین چهار زمان­بندی متفاوت برای هر خروجی، هر خروجی میتواند تا 1016 دقیقه یعنی 17 ساعت و 30 دقیقه روشن باشد. 








نرم افزار کامپیوتر


همچنین یک برنامه نویس میتواند برنامه هدف خود را روی سخت افزار پیاده سازی نماید.



09398931522 - 09391907175 شاکری


designer2100@outlook.com

نمایش شماره ی تماس گیرنده در GSM

در حالت پیشفرض اگر با سیم کارت ماژول تماس بگیرید، ماژول فقط عبارت "RING" را ارسال میکند. برای فعال سازی نمایش شماره تماس گیرنده باید دستور زیر به ماژول ارسال کنید.


AT+CLIP=1


با این دستور بعد از عبارت "RING" عبارت "CLIP: 0939XXX1522+"  ظاهر میشود. 


RING

+CLIP:0939XXX1522,132

OK


شاکری

هدر برد GSM & AVR

نیاز به یک برد که هم میکروکنترلر و هم ماژول GSM را داشته باشد برای استفاده راحت توسط کسانی که علاقه به طراحی برد و لحیم کاری SMD نداشته باشند حس میشد. بنابراین این برد را طراحی کردم که نیاز یادگیری و همچنین استفاده از برد در پروژه های صنعتی را مرتفع میسازد.


ویژگی ها:

1- FULL SMD

2- MCU: ATMEGA128

3- I2C EEPROM

4- SIM900

5- امکان تغییر فریمور ماژول

6- پروگرم شدن میکرو بدون پروگرمر

7- LCD 2X16

8- FT232RL برای اتصال مستقم پورت سریال میکرو به پورت USB

9- در دسترس بودن تمام پایه های میکروکنترلر

10- POWER LED

11- دارای 3 LED نشانگر








خرید فایل های PCB



شماتیک برد



شماتیک بهینه شده


designer2100@outlook.com

شاکری

تغییر فریمور ماژول GSM - sim900



برای این کار نرم افزار زیر را دانلود کنید.

1- نرم افزار را اجرا کنید و آدرس فایل فریمور جدید را وارد نرم افزار کنید، شماره پورت سریال را تعیین و باود ریت را روی 57600 قرار دهید.

2- پورت سریال سیستم را به پورت سریال دیباگ ماژول وصل کنید.

3- ابتدا ماژول خاموش باشد. روی start کلیک کنید و ماژول را روشن کنید.

4- صبر کنید تا فریمور ماژول عوض شود.

دانلود نرم افزار تغییر فریمور GSM

ابوالفضل شاکری

کار با ماژول های GSM - sim900 - sim908


بسم الله الرحمن الرحیم

آموزش کار با ماژول های GSM را شروع می کنم. امیدوارم مفید باشه. یک سری از مطالب در سایت های دیگه اومده که من سریع از اونها میگذرم و چند مسئله جدید رو خواهم گفت. سعی دارم که بیشتر روش راه اندازی و استفاده از ماژول رو بگم.

نکته: مهم هست که بدونید انتهای هر رشته را یک کد اینتر (13) مشخص میکند.

نکته: خودتان به راحتی میتواندید ماژول را با یک هویه 40 وات ساده روی برد مونتاژ کنید(اگر می خواهید پیشرفت کنید از انجام کارهایی که تا حالا انجام ندادید نترسید)


اولین استفاده از ماژول ارسال پیامک :

مرحله به مرحله:

1- باید چک کنید که ماژول آماده دریافت دستور هست یا نه - روش: ارسال AT به ماژول، در صورت دریافت OK، ماژول آماده می باشد.

2- فرستادن دستور ارسال پیامک به ماژول:

AT+CMGS="TEL NUMBER"

3- یک تاخیر کوتاه در حد 700 میلی ثانیه

4- فرستادن متن پیامک به ماژول

5- فرستاده کد Ctrl+Z  - کد = 26

Exam:

sprintf(buffer1,"AT+CMGS=\"009893989315xx\"%c",13);
uart_mini_printf(buffer1);
_delay_ms(700);
uart_mini_printf(tex_send);
uart_putchar(26);

به همین راحتی


دومین استفاده از ماژول خواندن متن پیامک دریافت شده :

مرحله به مرحله:

1- در صورتی که از پورت سریال عبارت زیر را دریافت کردید به معنی دریافت پیامک می باشد:

+CMTI: "SM",x

x آدرسی از حافظه ماژول است که پیامک دریافت شده در آن ذخیره شده است.

2- در صورتی که مرحله یک اتفاق افتاد، چک کنید ماژول آماده دریافت دستور است یا خیر.(توضیح داده شد)

3- فرستادن دستور خواندن متن پیامک ذخیره شده به ماژول:

AT+CMGR=x

توضیح: ماژول بعد از دریافت فرمان خواندن متن پیامک سه رشته را رسال می کند: رشته اول دیتای مربوط به پیامک میباشد. رشته دوم، متن پیامک دریافت شده است. رشته سوم عبارت OK میباشد. بنابراین باید دو رشته اول را حتما دریافت کنید که رشته دوم متن پیامک است و شماره و ساعت و تاریخ پیامک دریافت شده در دیتا مربوط به پیامک می باشد.

(در توضیحات ارائه شده فرض بر این است که شما به کار با رشته ها  و ارتباط سریال مسلط هستید)


سومین استفاده از ماژول شارژ کردن سیم کارت بدون خارج کردن سیم کارت :

نکته: با دستور ATD میتونید یک شماره یا یک کد دستوری را شماره گیری کنید.

روش: کد شارژ را با کد دستوری آن به سیم کارت روی ماژول پیامک کنید. برای پردازنده تعریف کنید که اگر کارکتر اول "*" بود متن دریافت شده را با استفاده از دستور ATD شماره گیری کند.

Exam:

if (recive_sms_txt[0] == 42)
                    {  
                        repet_ch:
                        uart_mini_printf("AT%c",13);
                        uart_getstring();
                        if ((strcmp(chs,ok)) != 0){goto repet_ch;}
                           
                        uart_mini_printf("ATD");
                        uart_mini_printf(recive_sms_txt,"%c",13);
                        uart_getstring();
                    }



چهارمین استفاده از ماژول بدست آوردن شارژ سیم کارت :

با استفاده از دستور ATD کد دستوری دریافت شارژ را شاره گیری کنید. برای ایرانسل #1*140*

منتظر جواب اپراتور بمانید....

مقدار شارژ را از رشته دریافت شده خارج کنید.

Exam:
uart_mini_printf("ATD*140*1#%c",13);
        uart_getstring();
        uart_getstring();
        for (temp5=0;temp5<20;temp5++){compar[temp5] = 0;}
        for (temp5=0;temp5<6;temp5++){compar[temp5] = chs[temp5];}
        temp=0;
        temp5=0;
        temp = strlen(chs);
        for (temp2=0;temp2<temp;temp2++)
        {
            if (chs[temp2] == 115)
            {
                if ((chs[temp2+1]==104) && (chs[temp2+2]==111) && (chs[temp2+3]==109) && (temp5==0))
                {
                    temp3=0;
                    for (temp4=0;temp4<20;temp4++){compar[temp4] = 0;}
                    for (temp4=(temp2+6);temp4<temp;temp4++)
                    {
                        if (chs[temp4]!=32){compar[temp3]=chs[temp4];}
                        if (chs[temp4]==32){break;}
                        temp3++;
                    }
                    temp5=10;
                    for (temp=0;temp<15;temp++){charj_mony[temp]=0;}
                    strcpy(charj_mony,compar);
                }
            }
        }


پنجمین استفاده از ماژول حالت آماده به کار (sleep) :

چرا از حالت بیکاری استفاده کنبم؟ برای کاهش چشم گیر جریان مصرفی مدار

دو حالت بیکاری در Hardware Design بیان شده است:

الف- با ارسال دستور AT+CSCLK=1 فعال میشود. در این حالت ارتباط سریال کار نمی کند. بیرون آمدن از حالت SLEEP به سه روش زیر انجام می شود:

1- PULL DOWN کردن پایه DTR از ماژول. ارتباط سریال 50ms بعد از pull down شدن فعال می شود.

2- دریافت پیامک از شبکه

3- دریافت تماس یا دیتا از شبکه


ب- با ارسال دستور AT+CSCLK=2 فعال میشود. در این حالت ارتباط سریال فعال می باشد. بیرون آمدن از حالت SLEEP به سه روش زیر انجام می شود:

1- ارسال دیتا به پورت سریال ماژول. اولین بایت توسط ماژول خوانده نمی شود. فقط ماژول را از حالت SLEEP خارج میکند.

2- دریافت پیامک از شبکه

3- دریافت تماس یا دیتا از شبکه


نکته: در صورتی که ماژول 5 ثانیه از پورن سریال دیتا دریافت نکند به حالت SLEEP می رود.

نکته: برای غیر فعال کردن حالتهای SLEEP باید دستور AT+CSCLK=0 را به ماژول ارسال کرد.


ابوالفضل شاکری