سیم کارت GSM - GPRS میکروکنترلر AVR

کنترل وضعیت اتصال ماژول Sim800L با AVR و میکروکنترلر ATmega16

testing-sim800l-module-with-avr-atmega16-digispark-
نوشته شده توسط معین صابری وحید

مزایا و فواید ارتباطات بی سیم امروزه بر هیچ کس پوشیده نیست. به کمک فناوری بی‌سیم، می‌توان از فواصل بسیار دور سامانه‌ها را کنترل نمود. از وضعیت محیط با خبر شد و به طور کلی بدون نیاز به حضور در محل، کنترل محل مورد نظر را به دست گرفت. در سال‌های اخیر، در این زمینه پیشرفت شگرفی دیده می‌شود، رشد روز افزون انواع چیپ‌های مخابراتی در فرکانس‌های مختلف، تایید این موضوع است. در ادامه با مرجع تخصصی ماژول سیم کارت GSM، دیجی اسپارک همراه باشید.

 


بررسی ماژول سیم کارت GSM


شرکت simcom چندین سال است که در این زمینه ماژول سیم کارت فعال می‌باشد. با تولید انواع چیپ‌های مخابراتی باند GSM، امکان طراحی دستگاه‌های کنترل از راه دور را چه بر بستر GSM و یا GPRS، فراهم نموده است. اما این ماژول‌‌ها با توجه به امکانات بسیاری که فراهم می‌آورند، ممکن است بعد از مدتی دچار آشفتگی شده و به دستورات AT Command ها پاسخی ندهند. حتی مشاهده گردیده است که بعد از چند مدتی، از شبکه خارج شده و دیگر نمی‌توانند دوباره به شبکه بازگردند. این موضوع یک چالش حیاتی در طراحی سیستم‌های کنترل از راه دور خواهد بود. تصور کنید در منطقه‌‌ای دور دست، نیاز است تا به طور مداوم شرایط محیطی نظیر دما، فشار، رطوبت و…. کنترل گردد. با توجه به مطالب ذکر شده، در صورتیکه واحد GSM دچار اینگونه اشکالات گردد، عملا سیستم طراحی شده از کار خواهد افتاد.

اتصالات مدار Sim800L و آی سی Atmega16 -دیجی اسپارک

 

در این شرایط، نیاز به مکانیزمی است تا از صحت عملکرد واحد مخابراتی مطلع شد. در صورت وقع این شرایط، سیستم وارد حالت خود تعمیری گردد و با یک ریست سخت افزاری، این واحد را به حالت عادی خود بازگرداند. بدین منظور، نیاز است تا با در نظر گرفتن یک بازه زمانی، مثلا هر ده دقیقه یکبار، به کنترل وضعیت این واحد پرداخت. به منظور کنترل وضعیت، می‌بایست دستور AT+CCALR? به ماژول مخابراتی ارسال گردد. در صورتیکه شرایط ماژول در حالت عادی باشد، ماژول عبارت +CCALR: 1 را به ما ارسال خواهد نمود. در صورتیکه شرایطی جز این باشد، مثلا اگر به طور کل پاسخی ارسال نگردد و یا عبارت +CCALR: 0 از سوی ماژول ارسال گردد، نیاز است تا ماژول مورد نظر به صورت سخت افزاری ریست گردد. بدین منظور، نیاز است تا مطابق اسناد فنی یک ماژول مخابراتی این شرکت، نظیر ماژول sim800l، پایه ریست این ماژول برای حداقل ۱۰۵ میلی ثانیه صفر منطقی گردد. مطابق اطلاعات دیتاشیت ماژول Sim800L، این کار می‌تواند با اتصال مستقیم پایه میکروکنترلر و یا برد آردوینو به این پایه صورت بگیرد، اما به نظر می‌رسد با توجه به این موضوع که این پایه در حالت عادی، خود دارای ولتاژ است، با اتصال یک ترانزیستور به این پایه، می‌توان از کیفیت مطلوب تری در کار برخوردار گردید.

 


عملکرد مدار اتصال ماژول SIM800L


مطابق شکل فوق، با تعریف کردن پورت B میکروکنترلر به عنوان خروجی و به کمک پین صفر این پورت، می‌توان با کنترل نمودن ترانزیستور، ماژول را ریست نمود. دقت داشته باشید برای این موضوع، پین میکروکنترلر در حالت عادی صفر منطقی است که بدین ترتیب ترانزیستور درحالت عادی خاموش است. زمانی که احتیاج به ریست باشد، این پایه به یک منطقی تغییر وضعیت داده، و با روشن شدن ترانزیستور، پایه ریست ماژول با زمین اتصال برقرار کرده و در نتیجه، ماژول Sim800L ریست می‌گردد. دقت داشته باشید با اعمال یک تقسیم مقاومتی، ولتاژ میکروکنترلر را به منظور ایجاد ولتاژ مناسب برای ترانزیستور کاهش می‌دهیم. نکته دیگر، PULLDOWN کردن پین متصل به BASE ترانزیستور با یک مقاومت ۱۰ کیلو اهمی است. از آنجاییکه ماژول های GSM حین کار نویز شدید در اطراف خود ایجاد می نمایند، ممکن است بر اثر این نویز، پایه خروجی میکروکنترلر به طور ناخواسته‌ای تغییر وضعیت دهد. بنابراین با یک مقاومت ۱۰ کیلو اهم این پایه را به زمین متصل می‌نماییم. این کار باعث می‌شود از ایجاد ولتاژهای ناخواسته احتمالی بر روی این پایه جلوگیری کنیم.

شماتیک کنترل وضعیت اتصال ماژول SIM800L به کمک میکروکنترلر AVR - دیجی اسپارک

 

لوازم مورد نیاز

  1. میکروکنترلر ATmega16
  2. ماژول GSM Sim800L
  3. باتری لیتیوم پلیمر
  4. مقاومت ۴٫۷ کیلو اهم
  5. مقاومت ۱۰ کیلو اهم

 

 

اتصالات

  • پایه TX میکروکنترلر از طریق دو مقاومت ۱ کیلو اهم، به صورت تقسیم مقاومتی، به RX ماژول sim800l
  • پایه RX میکروکنترلر به کمک یک مقاومت ۱ کیلو اهم، به پایه TX ماژول sim800l
  • پین شماره ۰ پورت B میکروکنترلر با دو مقاومت ۴٫۷ کیلو اهم، به بیس ترانزیستور ۲n2222a
  • اتصال یک عدد مقاومت ۱۰ کیلو اهم، به صورت pulldown به پین شماره ۰ پورت B
  • کلکتور ترانزیستور به پایه ریست ماژول sim800l
  • اشتراک زمین ماژول sim800l و میکرو
  • امیتر ترانزیستور به زمین GND

 


کد  AVR اتصال ماژول Sim800L


کدهای زیر برای تراشه Atmega16 توسعه داده شده است. آن‌ها را کپی کرده و در کامپایلر قرار دهید.

 

 

 


تحلیل کد اتصال ماژول Sim800L


  •  در این برنامه متغیری به نام gsm_check_time تعریف شده است. همچنین در بدنه حلقه بی نهایت برنامه، یک تاخیر یک ثانیه ای یا ۱۰۰۰ میلی ثانیه ای وجود دارد. با اضافه کردن یک واحد در هر مرتبه به این متغیر و با توجه به تاخیر زمانی یک ثانیه ای بین هر دو افزایش، با رسیدن این متغیر به ۶۰۰، ۶۰۰ ثانیه یا ده دقیقه طی شده است.
  • دراین حالت به کمک تابع gsm_check_fault()، وضعیت ماژول چک می‌گردد. به عبارت دیگر هر ده دقیقه یکبار وضعیت صحت کارکرد ماژول را به کمک این رویه کنترل می‌نماییم.
  • در نهایت اینکه پروژه به کمک  بخش code wizard نرم افزار کدویژن ایجاد گردیده است و تابع مربوط به وقفه دریافت داده سریال نیز به کمک این بخش، ایجاد شده است.

 

 

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

 


پروژه و دریافت بن ارسال رایگان


برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ‌های دیجی_اسپارک   دانشجوکیت    digispark    daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

درباره نویسنده

معین صابری وحید

کارشناسی ارشد رشته معماری سیستم های کامپیوتری

مالي که ز تو کس نستاند، علم است
حرزي که تو را به حق رساند، علم است
جز علم طلب مکن تو اندر عالم
چيزي که تو را ز غم رهاند، علم است
(شیخ بهایی)

تبادل نظر و رفع عیب با ثبت دیدگاه