آردوینو آردوینو Arduino Uno سیم کارت GSM - GPRS

آموزش راه اندازی ماژول Sim800L بخش سوم کنترل وسایل برقی با SMS

sim800l-sms-control-with-arduino-digispark
نوشته شده توسط اروند طباطبایی

بازهم ماژول سیم کارت یا همان ماژول‌های سری GSM و سوالات بسیار کاربران برای بنده، همیشه نقطه نظری برای انتشار محتوای جدید در این حوزه می‌باشد. ادامه مجموعه آموزش‌های ماژول Sim800L با پروژه بسیار جذاب SMS Control یا همان کنترل وسایل برقی از طریق اس ام اس می‌باشد. در بخش های اول و دوم این ماژول راه اندازی کلی شامل اتصال به شبکه و برقراری تماس صوتی را آموزش داده ام. کاربران زیادی هم سوالات مرتبطی را مطرح کردند. در این بخش که سوال بسیاری از کاربران بوده است، پروژه SMS Control را با برد آردوینو آموزش خواهم داد. در ادامه این آموزش با وب سایت تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.

 


ماژول GSM در طرح رجیستری


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

 


تغذیه ماژول GSM Sim800L


این ماژول GSM یکی از کوچکترین و مقرون به صرفه‌ترین ماژول‌های GSM تا به این لحظه است. نکته بسیار مهم در استفاده از این ماژول، تغذیه ورودی است. اکثر کاربران این موضوع را نادیده می‌گیرند و در راه اندازی دچار مشکل می‌شوند. تغذیه این برد حتما حتما باید در محدوده ۴ تا ۴٫۲ ولت باشد. ولتاژ‌های خارج از این محدوده باعث اختلال در عملکرد آن می‌شوند. اختلال‌هایی از جمله در دسترس نبودن سیم کارت، یا پیغام خاموش بودن سیم کارت و حتی عدم شناخته شدن توسط شبکه را شامل می‌شوند. از این رو اکیدا توصیه می‌کنم که از باتری لیتیوم پلیمر Li-po و یا یک ماژول کاهنده مانند LM2596 ولتاژ ورودی بهماژول Sim800L را دقیقا روی مقدار ذکر شده تنظیم کنید.

 


وضعیت LED روی ماژول Sim800L


ماژول سیم کارت Sim800L با یک ال ای دی روی برد وضعیت اتصال به شبکه را اطلاع رسانی می‌کند. این ال ای دی در ماژول‌‌های مختلف به رنگ مختلف می‌باشد. از ماژول من ال ای دی به رنگ قرمز می‌باشد. اگر هر یک ثانیه یکبار چشمک بزند، ماژول به صورت سالم راه اندازی شده است ولی هنوز اتصال با شبکه برقرار نشده است. اگر هر ۲ ثانیه یکبار چشمک بزند، ارتباط دیتا GPRS برقرار شده است. اگر ال ای دی هر ۳ ثانیه یکبار چشمک بزند، ماژول به شبکه مخابراتی GSM متصل شده است و امکان برقرار ارتباط از طریق SMS را داراست.

 

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

برد آردوینو Arduino

ماژول GSM Sim800L

باتری لیتیوم پلیمر

 

sim-800L-Pinout--digispark

 


ویژگی‌های ماژول سیم کارت sim800L


پشتیبانی از چهار باند ۸۵۰/۹۰۰/۱۸۰۰/۱۹۰۰ مگاهرتز

کنترل از طریق AT Command و لایبرری

پروتکل ارتباطی سریال (UART)

قابلیت اتصال میکروفن و اسپیکر

جربان مصرفی حداکثر ۲ آمپر

تغذیه ۳٫۸ تا ۴٫۲ ولت DC

اسلات سیم‌کارت میکرو

 


کتابخانه Sim800L SMS Control


در این آموزش از هیچ کتابخانه خاصی استفاده نکرده‌ام. فقط از کتابخانه SoftwareSerial جهت ارتباط سریالی با برد آردوینو استفاده شده است. این کتابخانه برای ایجاد پورت سریال نرم افزاری استفاده می‌شود. الباقی موارد به صورت دستورات AT به ماژول ارسال می‌شود. کلیه AT Command ها در کدها قرار گرفته‌اند و بدون استفاده از هیچ کتابخانه خاصی مرتبط با Sim800L فقط دستورات AT به ترتیبی که در کدها شرط بندی شده است، فراخوانی می‌شوند. چنانچه روش نصب کتابخانه در آردوینو را نمی‌دانید. به پست آموزش نصب کتابخانه در نرم افزار آردوینو Arduino IDE مراجعه کنید.

 


کدهای آردوینو پروژه SMS Control


 

جهت دسترسی به این بخش از پروژه، اسپارکر پلاس شوید.

 

 

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

 


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


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

 

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

 

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

اروند طباطبایی

بنیانگذار دیجی اسپارک: اولین مرجع تخصصی امبدد سیستم به زبان فارسی / کارشناس سئو و تولید محتوا

هرچه می آموزم میبینم که خیلی کم آموختم. در حال حاضر مدیریت تولید مقطع کارشناسی ارشد هستم. علاقه به رباتیک و تکنولوژی دارم. امیدوارم بتونم دانشی را که آموخته‌ام، به روش‌های مختلفی به کاربران علاقمند منتقل کنم.

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

۲۶ دیدگاه

  • سلام خسته نباشید من همه کارهارو انجام دادم وقتی برد به pc وصله همه چی درست کار میکنه وقتی , برق ورودیش هم جداگانه گذاشتم ,وقتی از pc جداش میکنم باز هم کار مینکه ولی وقتی دوباره برد رو روشن خاموش میکنم کار نمیکنه دوباره باید برنامه ریزیش کنم که کار کنه

  • سلام مهندس برد وقتی به لبتاب وصله درست کار میکنه همین که از لبتاب جداش میکنم باز درست کار میکنه چون براش برق جدا گذاشتم ولی وقتی برق برد رو قطع و وصل میکنم برد کار نمیکنه تا وقتی که به لبتاب وصلش کنم و قسمت serial monitor رو بازش کنم درست میشه؟

          • برد رو وقتی برنامه ریزی میکنید درست کار میکنه ولی وقتی که بعد از برنامه ریزی میخوای ازش استفاده کنی برد اصلا درست جواب نمیده اونم به خاطر اینه که ماژول sim800 حدود ۱۳ الی ۱۵ ثانیه طول میکشه تا سیمکارتو بشناسه ولی برنامه همون ثانیه اول بدون این که دستگاه سیمکارتو بشناسه شروع به کار میکنه ودیگه دستورات رو اجرا نمیکنه که با گذاشتن یه وقفه ۲۰ ثانیه ای بین خط ۱۱ و ۱۲ مشکل کاملا حل شد.

  • سلام. خسته نباشید
    ماژول رو وقتی تغذیش رو وصل میکنم داغ میکنه. چراغ چشمک زنش هر ثانیه دوبار چشمک میزنه. اتصال کوتاهی تو مدار وجود نداره. جواب دستورات AT رو میده اما سیم کارتارو نمیشناسه
    یه ارور هم بعد دستور خطایاب میده
    اینه ارورش
    CME ERROR 604
    لطفا راهنمایی کنید
    ولتاژ هم روی ۴.۲ تنظیمه

    • با سلام
      در وضعیتی که هر یک ثانیه یکبار چشمک بزند، ماژول به صورت سالم راه اندازی شده است. لطفا تمامی اتصلات روی ماژول را به صورت کامل شرح دهید. همچنین منبع تغذیه مورد استفاده را هم بفرمایید.

  • سلام
    من یه ماژول SIM800L و یه ماژول SIM800L Development Kit دارم .روی هر دوی آنها وقتی سیم کارت میذارم رجیستر میشه و هر سه ثانیه یکبار چراغش چشمک میزنه که نشون میده آماده ارسال و دریافت پیامک است. اما با ارسال SMS به شماره نه پورت مربوطه فعال میشه و نه هنگامی که AT کامند رو میزنم خروجی AT Command رو به من نشون میده . تنظیمات رو هم همونطورکه گفته شده انجام دادم .
    فکر میکنم پارامتری هست که باید بزنم تا خروجی AT Command نشون داده بشه البته ATE1 رو هم زدم
    ممکنه بفرمایید مشکل از کجاست ؟

      • دقیقا به همین شک کردم . برای همین این برد رو به رزبری وصل کردم و روی رزبری سریال رو فعال کردم . وقتی برنامه minicom رو میزنم و پورت سریال رو فراخوانی میکنم اگه برد وصل نباشه اصلا AT رو تایپ میکنم چیزی تایپ نمیشه . اما وقتی ماژول SIM رو به سریال میزنم و AT رو تایپ میکنم تایپ میشه یعنی نشون میده سریال منو میبینه . اما اینکه دقیقا کجا گیر داره نمیتونم متوجه بشم.
        مشکل بعدی اینکه همین برد رو به سریال کامپوتر ( پورت ۲ و ۳ سریال ۹ پینی PC ) وصل میکنم باز هم همینطوریه . یعنی انگار یه تنظیمی یا پارامتری روی برد گیر کرده کامند ها رو نمیفرسته یا میفرسته اما جوابش رو نشون نمیده مثل Echo Off

        • سلام مجدد
          در این صورت مشخصا ماژول GSM سالم است. در بردهای آردوینو بایستی رابط RX و TX را درست انتخاب کنید. اگر از کتابخانه سریال استفاده میکنید، امکان تعریف رابط سریالی وجود دارد. و بسته به برد مورد استفاده این مورد کمی با چالش روبرو خواهد بود. لطفا بررسی و نتیجه را از همین طریق اعلام بفرمایید.

  • سلام
    من از یه مبدل lm2596 استفاده کردم و ولتاژ رو روی ۴ ولت تنظیم کردم
    ماژول روشن میشه و هر ثانیه یه بار چشمک میزنه
    ولی وقتی سیم کارت رو وارد میکنم بازم همونجوری هر ثانیه یه بار چشمک میزنه
    اینو هم بگم که مقدار ولتاژ رو از ۳٫۷ تا ۴٫۱ تغییر دادم ولی بازم همونجوریه
    چیکار باید کنم؟

      • برق ورودی رو از یه پاور بانک گرفتم
        به این صورت که مثبت پاور رو به مثبت مبدل
        منفی پاور رو به منفی مبدل
        از اونور هم مثبت خروجی رو به VCC و منفی رو هم به GND
        پاور بانک هم خروجیش ۵ آمپر ۲ ولته

        • با سلام
          پاور بانک مورد استفاده شما چند آمپر توانایی خروجی دارد؟ اگر این جریان کمتر از ۲ باشد، ماژول نمیتواند به شبکه متصل شود. لطفا بررسی کرده و از همین طریق نتیجه را اعلام کنید.

  • سلام
    آیا در قسمتی از سایت نحوه استفاده از کد های at command gsm موجودهست؟ من مبتدی هستم و تا حالا با دستورات at command کار نکردم و از این دستورات می خواهم برا تهیه ی پروژه ی دانشگاهیم استفاده کنم ممنون میشم کمک کنید.

    • با سلام
      دستورات AT را باید از طریق دیتاشیت ماژول بخوانید و سپس در کدها قرار بدهید. در اکثر آموزش‌های GSM اگر از کتابخانه سریال استفاده شده باشد، در ادامه از AT Command هم استفاده می‌شود.