از آنجایی که عموما توسعهدهندگان از طریق AT Command با ماژولهای ارتباطی تعامل میکنند، آشنایی با دستورات ماژول E70 پیش از مهاجرت از SIM800 ضروری است. خوشبختانه، این فرآیند چندان دشوار نیست؛ زیرا اغلب ماژولهای مخابراتی مبتنی بر استاندارد 3GPP TS 27.007 (و همچنین 27.005) هستند که چارچوب یکسانی برای دستورات پایهای مانند برقراری تماس، مدیریت پیامک، و اتصال داده ارائه میدهد. این استاندارد، که توسط پروژهٔ مشارکتی نسل سوم (3rd Generation Partnership Project) تعریف شده است، هدف هماهنگی و سازگاری بین تجهیزات مختلف ارتباطی را دنبال میکند و پایهای است که تولیدکنندگان ماژولها از آن تبعیت میکنند. با این حال، علیرغم هستهٔ مشترک، ماژولهای نسل جدید مانند E70 دستورات اضافهتری برای پشتیبانی از قابلیتهای پیشرفتهتر (مانند اتصال LTE، مدیریت امنیت، و پروتکلهای اینترنتی) ارائه میدهند.
در ادامه، به مقایسهای کلیدی بین دستورات SIM800 و E70 میپردازیم تا مهاجرت با حداقل تغییرات ممکن شود. این استاندارد که با عنوان «تکمیلکنندههای (AT) برای تجهیزات کاربر موبایل (UE)» شناخته میشود، مجموعهای از دستورات AT پایه را برای کنترل عملکردهای اصلی موبایل مانند مدیریت تماس، پیامرسانی SMS، و خدمات داده تعریف میکند. هدف اصلی آن، اطمینان از قابلیت همکاری بین تجهیزات مختلف (مانند ماژولهای ارتباطی) و تسهیل توسعهٔ نرمافزاری یکسان در پلتفرمهای مختلف است. البته، هر سازنده میتواند دستورات اختصاصی (Vendor-Specific Commands) را نیز به فراتر از این استاندارد اضافه کند.
بررسی وضعیت ماژول و سیمکارت
برای اطلاع از وضعیت ماژول از دستوراتی استفاده میکنیم که در ادامه آنها را همراه با مقایسه خواهید دید.
| کارکرد دستور |
دستور در SIM800 |
دستور در E70 |
| بررسی ارتباط با ماژول |
AT |
AT |
| اطلاع از مدل ماژول |
AT+CGMM |
AT+CGMM |
| بررسی وضعیت سیمکارت |
AT+CPIN |
AT+CPIN |
| بررسی قدرت سیگنال |
AT+CSQ |
AT+CSQ |
| مشاهده اپراتور شبکه |
AT+COPS |
AT+COPS |
| وضعیت ثبتنام در شبکه |
AT+CREG |
AT+CREG |
تماس و ارسال پیامک
دستورات مربوط به تماس توسط ماژول E70 پشتیبانی نمیشود اما شما میتوانید با استفاده از ماژول E70-G پیامک ارسال کنید.
| کارکرد دستور |
دستور در SIM800 |
دستور در E70-LTE |
| تنظیم فرمت SMS (Text/PDU) |
AT+CMGF |
AT+CMGF |
| ارسال SMS |
AT+CMGS |
AT+CMGS |
| خواندن SMS |
AT+CMGR |
AT+CMGR |
| لیست SMSهای ذخیره شده |
AT+CMGL |
AT+CMGL |
| حذف SMS |
AT+CMGD |
AT+CMGD |
| تنظیم حافظه SMS |
AT+CPMS |
AT+CPMS |
اتصال به اینترنت
ساخت کانکشن
کانکشنهای TCP/UDP از سادهترین و پرکاربردترین روشهای انتقال داده در شبکه هستند. برای ایجاد این ارتباطات، ابتدا باید ماژول به شبکه دیتای اپراتور متصل شده و پارامترهای لازم مانند APN تنظیم شوند. پس از فعالسازی کانکشن اینترنت، میتوان با استفاده از دستورات AT مربوطه، ارتباط TCP یا UDP را با سرور موردنظر برقرار کرد.
|
کارکرد دستور
|
دستور در SIM800 |
دستور در E70 |
| تنظیم حالت اتصال (تککاناله/چندکاناله) |
AT+CIPMUX |
AT+CIPMUX |
| تنظیم پارامترهای APN برای سرویس GPRS |
AT+CSTT |
AT+QICSGP |
| فعالسازی (برقراری) اتصال GPRS و درخواست IP |
AT+CIICR |
AT+QIACT |
| شروع یک اتصال TCP یا UDP به آدرس و پورت مشخص |
AT+CIPSTART |
AT+QIOPEN |
| آمادهسازی ماژول برای دریافت داده جهت ارسال |
AT+CIPSEND |
AT+CIPSEND |
| بستن یک اتصال شبکه خاص یا همه اتصالات |
AT+CIPCLOSE |
AT+QICLOSE |
| خاتمه دادن کل نشست GPRS و رها کردن IP |
AT+CIPSHUT |
— |
اتصال به سرور MQTT
همانطور که میدانید، MQTT یکی از مهمترین و پرکاربردترین پروتکلها در پروژههای IoT است. این پروتکل به دلیل سربار کم و ساختار publish/subscribe، برای ارتباطات پایدار و کممصرف بسیار مناسب است. در ادامه، دستورات AT موردنیاز برای راهاندازی و استفاده از ارتباط MQTT در این دو ماژول بررسی میشود.
| کارکرد دستور |
دستور در SIM800 |
دستور در E70 |
| پیکربندی پارامترهای اتصال MQTT |
AT+SMCONF |
AT+QMTCFG |
| اتصال به بروکر (سرور) MQTT |
AT+SMCONN |
AT+QMTOPEN, AT+QMTCONN |
| عضویت (Subscribe) در یک یا چند تاپیک MQTT |
AT+SMSUB |
AT+QMTSUB |
| انتشار (Publish) یک پیام در یک تاپیک MQTT |
AT+SMPUB |
AT+QMTPUBEX |
| لغو عضویت (Unsubscribe) از یک یا چند تاپیک MQTT |
AT+SMUNSUB |
AT+QMTUNS |
| قطع اتصال از بروکر MQTT |
AT+SMDISC |
AT+QMTDISC |
پروتکل امنیتی با SSL
برخی از سرورها و ارتباطات نیازمند تبادل امن داده و استفاده از پروتکلهای امنیتی مبتنی بر SSL/TLS هستند. در این بخش، دستورات AT مربوط به فعالسازی ارتباطات امن، انجام handshake و برقراری کانکشنهای رمزنگاریشده بررسی خواهد شد.
| کارکرد دستور |
دستور در SIM800 |
دستور در E70 |
| پیکربندی/تنظیم گواهینامهها و پارامترهای SSL |
AT+SSLSETCERT, AT+SSLOPT, AT+SSLSETROOT |
AT+QSSLCFG |
| حذف گواهینامههای SSL از حافظه ماژول |
AT+SSLDECLI, AT+SSLDEROOT |
— |
| باز کردن (ایجاد) یک اتصال سوکت SSL به سرور |
AT+CIPSSL=1, AT+CIPSTART |
AT+QSSLOPEN |
| ارسال داده از طریق اتصال SSL فعال |
AT+CIPSSL=1, AT+CIPSEND |
AT+QSSLSEND |
| دریافت داده از طریق اتصال SSL فعال |
— |
AT+QSSLRECV |
| بستن اتصال سوکت SSL |
— |
AT+QSSLCLOSE |
ارتباط HTTP/HTTPS
یکی از پرکاربردترین پروتکلها در بسیاری از پروژهها، HTTP و HTTPS است که برای تبادل داده با وبسرویسها و APIها استفاده میشود. در این بخش، دستورات لازم برای ارسال و دریافت داده از طریق این پروتکلها معرفی میشود.
| کارکرد دستور |
دستور در SIM800 |
دستور در E70 |
| راهاندازی و مقداردهی اولیه سرویس HTTP |
AT+HTTPINIT |
AT+QHTTPCFG |
| پایان دادن و آزادسازی منابع سرویس HTTP |
AT+HTTPTERM |
AT+QHTTPSTOP |
| تنظیم پارامترهای درخواست HTTP |
AT+HTTPPARA |
– |
| تعیین و بارگذاری بدنه داده (Body) برای ارسال به سرور |
AT+HTTPDATA |
AT+HTTPDATA |
| تنظیم گواهیهای SSL/TLS برای اتصال HTTPS |
AT+HTTPSSL |
– |
| اجرای درخواست HTTP با متد تعیین شده |
AT+HTTPACTION |
AT+QHTTPPOST, AT+QHTTPGET, AT+QHTTPGATEX |
ارتباط با FTP
برای انتقال فایلهای حجیم، یکی از روشهای متداول استفاده از FTP است. در صورت نیاز به ارسال یا دریافت فایل، میتوان با استفاده از دستورات AT مربوطه، ارتباط FTP را راهاندازی و مدیریت کرد.
| کارکرد دستور |
دستور در SIM800 |
دستور در E70 |
| پیکربندی اولیه و تنظیم پارامترهای اتصال سرور FTP |
AT+FTPSERV, AT+FTPUN, AT+FTPPW, AT+FTPPORT, AT+FTPMODE, AT+FTPTYPE, AT+FTPCID |
AT+QFTPCFG |
| تنظیم جزئیات مسیر و نام فایل برای دانلود |
AT+FTPGETPATH, AT+FTPGETNAME |
AT+QFTPMDTM |
| تنظیم جزئیات مسیر و نام فایل برای آپلود |
AT+FTPPUTPATH, AT+FTPPUTNAME, AT+FTPPUTOPT |
AT+QFTPCWD |
| انجام عملیات دانلود فایل از سرور |
AT+FTPGET |
AT+QFTPGET |
| انجام عملیات آپلود فایل به سرور |
AT+FTPPUT |
AT+QFTPPUT |
| دریافت حجم فایل از سرور (بدون دانلود) |
AT+FTPSIZE |
AT+QFTPLEN |
در این پست تلاش شد مهمترین دستورات AT موردنیاز برای راهاندازی و استفاده از قابلیتهای کلیدی ماژولهای SIM800 و E70 بررسی و مقایسه شود. اگرچه بازنویسی کدهای موجود مبتنی بر SIM800 برای یک ماژول جدید ممکن است در نگاه اول زمانبر به نظر برسد، اما این مهاجرت یک سرمایهگذاری فنی ارزشمند برای توسعهدهندگان محسوب میشود. ماژول E70 بهعنوان یک راهکار نسل جدید، نهتنها محدودیتهای ذاتی SIM800 را برطرف میکند، بلکه با پشتیبانی از شبکههای 4G، پروتکلهای ارتباطی و امنیتی مدرن، سرعت بالاتر، پایداری بیشتر و قابلیت توسعهپذیری بالاتری را در اختیار طراحان سیستمهای IoT و M2M قرار میدهد.
از آنجا که هر دو ماژول از استانداردهای 3GPP پیروی میکنند، ساختار کلی بسیاری از AT Commandها مشابه بوده و فرآیند مهاجرت، با مطالعه مستندات و اعمال تغییرات هدفمند، بهسادگی قابل انجام است. در نهایت، بازنویسی و بروزرسانی پروژههای مبتنی بر SIM800 به E70، نهتنها ریسک ازکارافتادن دستگاهها در آینده را کاهش میدهد، بلکه مسیر توسعه محصولات پایدارتر، امنتر و منطبق با زیرساختهای مخابراتی روز را برای توسعهدهندگان هموار میکند.
سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.