راه اندازی ماژول SIM800 قسمت 13 – روش های خطا یابی ماژول GSM

راه اندازی ماژول SIM800 و روش های عیب یابی و خطا یابی دقیق ماژول GSM

سلام به شما مایکروالکامی ها. در مطلب قبلی راه اندازی SIM800 به بررسی و نحوه فعال کردن و استفاده از DTMF پرداخته شد. در این مطلب سعی دارم روش های خطا یابی ماژول های GSM سری SIM800 را بررسی کنم. با استفاده از پاسخی که ماژول میده میتونیم متوجه بشیم مشکلی که ماژول داره چی هست یا چی نیست. پس با من تا انتهای مطلب همراه باشید. همچنین شما میتونید سایر مطلب من رو از این قسمت مطالعه کنید.


قطعات مورد نیاز


روش های خطا یابی ماژول SIM800

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

مشکل منبع تغذیه ماژول SIM800

قبل از اینکه این مورد رو شروع کنم، سر راست بگم این ماژول ها اصطلاحا Power hungry هستند! یعنی یکم ولتاژ یا جریانش بالا پایین بشه از شبکه خارج میشه یا کانکت نمیشه و ریست خواهد شد. پس در همین ابتدا بگم ولتاژ منبع تغذیه این ماژول باید پایدار و با قابلیت جریان دهی مناسب باشه. 

نقل یک تجربه: دوستان من، بدانید و آگاه باشید که گول آداپتور های بازار رو نخورید زیاد. البته نه همشون رو فقط بعضی هاشون رو. چرا که به کرّات دیدم روی ماژول زده 5 آمپر بعد نهایتا بتونه 2 آمپر جریان دهی کنه! یا بعدا که کیس اون رو باز کنید کاشف به عمل میاد که یه منبع 1 آمپری یا نهایتا 2 آمپری هست والکی داخلش رو با یسری چیز پر کردند که سنگین به نظر بیاد و شما بگید حله دیگه این جنس خوبه از وزنش معلومه!

بلای خانمان سوز مبدل سریال و اتصال آن

 شاید این عنوان یکم عجیب باشه اما حقیقت داره. در ارتباط سریال با ماژول باید اتصالات بصورت ضربدری باشه. یعنی Rx مبدل سریال به Tx ماژول و Tx مبدل به Rx ماژول. مورد دوم در ارتباط سریال، برای جلوگیری از آسیب به ماژول یا قطعه باید به حاشیه نویز و VIL و VIH قطعه توجه کرد. ولتاژ پایه Rx نباید از مقدار مشخص شده دیتاشیت و با توجه به پارامتر های مشخص شده در دیتاشیت، بیشتر بشه چرا که به مرور یا همون لحظه باعث آسیب به ماژول خواهد شد. برای رفع این مشکل میتونید از یک مدار تقسیم مقاومتی ساده استفاده کنید یا از مدار ترانزیستوری ساده ای که خود دیتاشیت هم پیشنهاد داده استفاده کنید. مدار زیر از داکیومنت طراحی SIM800 استخراج شده است.

مدار مناسب برای اتصال ارتباط سریال با ماژول SIM800
مدار مناسب برای اتصال ارتباط سریال با ماژول SIM800

بررسی سلامت مبدل سریال 

قدم بعدی این هست که از اتصال صحیح مبدل سریال به ماژول یا از سلامت مبدل و انتخاب پورت COM اطمینان حاصل کنیم. برای این کار بعد از باز کردن نرم افزار سریال و اتصال مبدل سریال، پایه های Rx و Tx مبدل رو بهم وصل کنید. بعد از اون در نرم افزار سریال یک متنی، عددی و هرچیزی که خواستید ارسال کنید. بعد از ارسال بلافاصله باید همون دیتا رو مجددا دریافت کنید. با این کار از صحت عملکرد نرم افزار و پورت Com و سلامت مبدل مطمئن خواهیم شد.

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

AT+IPR=0    // Enable auto bauding, this is enabled by default
AT+IPR=1200 // Set baud rate to 1200 bps
AT+IPR=2400 // Set baud rate to 2400 bps
AT+IPR=9600 // Set baud rate to 9600 bps
AT+IPR=19200 // Set baud rate to 19200 bps
AT+IPR=38400 // Set baud rate to 38400 bps
AT+IPR=57600 // Set baud rate to 57600 bps
AT+IPR=115200 // Set baud rate to 115200 bps

پین کد سیم کارت

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

AT+CPIN?
+CPIN: SIM PIN این پاسخ یعنی پین کد نیاز هست
OK

:وارد کردن پین کد: 
AT+CPIN="959595"
OK

:غیر فعال کردن پین کد
AT+CLCK="SC",0,"959595" 
OK
 
AT+CPIN?
+CPIN: READY این پاسخ یعنی دیگه پین کد نیاز نیست و سیم کارت اوکیه

خطا یابی ماژول با استفاده از دستورات ماژول SIM800

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

دستور خطا یابی ماژول

AT+CMEE=1

در پاسخ به این دستور 2 حالت وجود خواهد داشت که یکی از دو پاسخ زیر را به ما خواهد داد. 

“CMS ERROR: xxx+” یا “CME ERROR: xxx+”

کد های خطا یابی CME مربوط به تجهزیات GSM

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

CME ERROR (GSM Equipment Related errors)
CME ERROR: 0	Phone failure
CME ERROR: 1	No connection to phone
CME ERROR: 2	Phone adapter link reserved
CME ERROR: 3	Operation not allowed
CME ERROR: 4	Operation not supported
CME ERROR: 5	PH_SIM PIN required
CME ERROR: 6	PH_FSIM PIN required
CME ERROR: 7	PH_FSIM PUK required
CME ERROR: 10	SIM not inserted
CME ERROR: 11	SIM PIN required
CME ERROR: 12	SIM PUK required
CME ERROR: 13	SIM failure
CME ERROR: 14	SIM busy
CME ERROR: 15	SIM wrong
CME ERROR: 16	Incorrect password
CME ERROR: 17	SIM PIN2 required
CME ERROR: 18	SIM PUK2 required
CME ERROR: 20	Memory full
CME ERROR: 21	Invalid index
CME ERROR: 22	Not found
CME ERROR: 23	Memory failure
CME ERROR: 24	Text string too long
CME ERROR: 25	Invalid characters in text string
CME ERROR: 26	Dial string too long
CME ERROR: 27	Invalid characters in dial string
CME ERROR: 30	No network service
CME ERROR: 31	Network timeout
CME ERROR: 32	Network not allowed, emergency calls only
CME ERROR: 40	Network personalization PIN required
CME ERROR: 41	Network personalization PUK required
CME ERROR: 42	Network subset personalization PIN required
CME ERROR: 43	Network subset personalization PUK required
CME ERROR: 44	Service provider personalization PIN required
CME ERROR: 45	Service provider personalization PUK required
CME ERROR: 46	Corporate personalization PIN required
CME ERROR: 47	Corporate personalization PUK required
CME ERROR: 48	PH-SIM PUK required
CME ERROR: 100	Unknown error
CME ERROR: 103	Illegal MS
CME ERROR: 106	Illegal ME
CME ERROR: 107	GPRS services not allowed
CME ERROR: 111	PLMN not allowed
CME ERROR: 112	Location area not allowed
CME ERROR: 113	Roaming not allowed in this location area
CME ERROR: 126	Operation temporary not allowed
CME ERROR: 132	Service operation not supported
CME ERROR: 133	Requested service option not subscribed
CME ERROR: 134	Service option temporary out of order
CME ERROR: 148	Unspecified GPRS error
CME ERROR: 149	PDP authentication failure
CME ERROR: 150	Invalid mobile class
CME ERROR: 256	Operation temporarily not allowed
CME ERROR: 257	Call barred
CME ERROR: 258	Phone is busy
CME ERROR: 259	User abort
CME ERROR: 260	Invalid dial string
CME ERROR: 261	SS not executed
CME ERROR: 262	SIM Blocked
CME ERROR: 263	Invalid block
CME ERROR: 772	SIM powered down

کد های خطا یابی CMS مربوط به شبکه GSM

این خطا مربوط به شبکه GSM است. مثلا موقعی که پوشش شبکه وجود ندارد و شما می‌خواهید یک پیامک ارسال کنید این ارور را دریافت خواهید کرد.

CMS ERROR: 1	Unassigned number
CMS ERROR: 8	Operator determined barring
CMS ERROR: 10	Call bared
CMS ERROR: 21	Short message transfer rejected
CMS ERROR: 27	Destination out of service
CMS ERROR: 28	Unindentified subscriber
CMS ERROR: 29	Facility rejected
CMS ERROR: 30	Unknown subscriber
CMS ERROR: 38	Network out of order
CMS ERROR: 41	Temporary failure
CMS ERROR: 42	Congestion
CMS ERROR: 47	Recources unavailable
CMS ERROR: 50	Requested facility not subscribed
CMS ERROR: 69	Requested facility not implemented
CMS ERROR: 81	Invalid short message transfer reference value
CMS ERROR: 95	Invalid message unspecified
CMS ERROR: 96	Invalid mandatory information
CMS ERROR: 97	Message type non existent or not implemented
CMS ERROR: 98	Message not compatible with short message protocol
CMS ERROR: 99	Information element non-existent or not implemente
CMS ERROR: 111	Protocol error, unspecified
CMS ERROR: 127	Internetworking , unspecified
CMS ERROR: 128	Telematic internetworking not supported
CMS ERROR: 129	Short message type 0 not supported
CMS ERROR: 130	Cannot replace short message
CMS ERROR: 143	Unspecified TP-PID error
CMS ERROR: 144	Data code scheme not supported
CMS ERROR: 145	Message class not supported
CMS ERROR: 159	Unspecified TP-DCS error
CMS ERROR: 160	Command cannot be actioned
CMS ERROR: 161	Command unsupported
CMS ERROR: 175	Unspecified TP-Command error
CMS ERROR: 176	TPDU not supported
CMS ERROR: 192	SC busy
CMS ERROR: 193	No SC subscription
CMS ERROR: 194	SC System failure
CMS ERROR: 195	Invalid SME address
CMS ERROR: 196	Destination SME barred
CMS ERROR: 197	SM Rejected-Duplicate SM
CMS ERROR: 198	TP-VPF not supported
CMS ERROR: 199	TP-VP not supported
CMS ERROR: 208	D0 SIM SMS Storage full
CMS ERROR: 209	No SMS Storage capability in SIM
CMS ERROR: 210	Error in MS
CMS ERROR: 211	Memory capacity exceeded
CMS ERROR: 212	Sim application toolkit busy
CMS ERROR: 213	SIM data download error
CMS ERROR: 255	Unspecified error cause
CMS ERROR: 300	ME Failure
CMS ERROR: 301	SMS service of ME reserved
CMS ERROR: 302	Operation not allowed
CMS ERROR: 303	Operation not supported
CMS ERROR: 304	Invalid PDU mode parameter
CMS ERROR: 305	Invalid Text mode parameter
CMS ERROR: 310	SIM not inserted
CMS ERROR: 311	SIM PIN required
CMS ERROR: 312	PH-SIM PIN required
CMS ERROR: 313	SIM failure
CMS ERROR: 314	SIM busy
CMS ERROR: 315	SIM wrong
CMS ERROR: 316	SIM PUK required
CMS ERROR: 317	SIM PIN2 required
CMS ERROR: 318	SIM PUK2 required
CMS ERROR: 320	Memory failure
CMS ERROR: 321	Invalid memory index
CMS ERROR: 322	Memory full
CMS ERROR: 330	SMSC address unknown
CMS ERROR: 331	No network service
CMS ERROR: 332	Network timeout
CMS ERROR: 340	No +CNMA expected
CMS ERROR: 500	Unknown error
CMS ERROR: 512	User abort
CMS ERROR: 513	Unable to store
CMS ERROR: 514	Invalid Status
CMS ERROR: 515	Device busy or Invalid Character in string
CMS ERROR: 516	Invalid length
CMS ERROR: 517	Invalid character in PDU
CMS ERROR: 518	Invalid parameter
CMS ERROR: 519	Invalid length or character
CMS ERROR: 520	Invalid character in text
CMS ERROR: 521	Timer expired
CMS ERROR: 522	Operation temporary not allowed
CMS ERROR: 532	SIM not ready
CMS ERROR: 534	Cell Broadcast error unknown
CMS ERROR: 535	Protocol stack busy
CMS ERROR: 538	Invalid parameter

جمع بندی

در این مطلب سعی شد عمده دلایل مطرح شده برای ارور ماژول های SIM800 و بطور کلی ماژول های GSM مورد بررسی قرار گیرد. در صورتی که روش های گفته شده در این ابتدای مطلب و قسمت اول سری آموزش های مخصوص SIM800 کار ساز نبود از دستور خطایابی ماژول (AT+CMEE=1) استفاده کرده و در نهایت پاسخ ماژول را بررسی کنید. در صورتی که شما هم تجربه ای در این خصوص داشتید لطفا با من و بقیه از طریق کامنت گذاشتن به اشتراک بگذارید.

امیدوارم از این آموزش کمال بهره را برده باشید. در صورتی که هرگونه نظر یا سوال داشتید درباره این آموزش لطفا اون رو در انتهای همین صفحه در قسمت دیدگاه ها قرار بدید. در کوتاه ترین زمان ممکن به اون ها پاسخ خواهم داد. اگر این مطلب براتون مفید بود، اون رو حتما به اشتراک بگذارید. همینطور میتونید این آموزش را پس از اجرای عملی توی اینستاگرام با هشتگ microelecom# به اشتراک بگذارید و پیج مایکروالکام (microelecom@) رو هم منشن کنید.

 

 

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *