commands چیست ؟

دستوراتی هستند که برای کنترل مودم ها و برخی ماژول های سازگار با این دستورات ، استفاده می شود. AT Command ها در واقع برگرفته از Hayes Command ها هستند. همانطور که ما زبان خاص خودمون رو داریم ، هر دستگاه دیجیتالی هم زبان خاص خودش رو داره و برای اینکه ما بتونیم با اون دستگاه ارتباط برقرار کنیم مجبوریم زبان اون رو بدونیم و با زبان خودش خواسته هامون رو بهش بدیم تا برامون اجرا کنه و اگه لازم بود پاسخی هم بهمون برگردونه

ممکنه برایتان سئوال پیش بیاد که خوب این دستورات از طریق چه واسطی باید به مودم ارسال شود؟ خوب در پاسخ باید گفت که این دستورات را ما می توانیم بواسطه محیط های برنامه نویسی مثل ویژوال استودیو و با یک زبان برنامه نویسی خاصی مثل سی شارپ برای مودم ارسال کنیم که لازمه آن هم ارتباط داشتن کامپیوتر با مودم یا ماژول هست ولی اگر برای تست و یادگیری می خواهید دستورات AT را به یک دستگاه ارسال و پاسخ دستگاه رو ببینید ، میتونید از نرم افزارهایی مثل ATCommandTester.jar استفاده کنید که یک نرم افزار جاوا بیس هست و با محیط گرافیکی فوق العاده ای که در اختیارتون قرار میده ، براحتی می تونید به پورتی که دستگاه شما به آن متصل هست وصل شده و دستورات خودتون رو برای دستگاه بفرستید و  اجرا کنید و پاسخ دستگاه رو هم ببینید .

بطور کلی مودم ها و ماژول می توانند از طریق پورت های سریالی و یا موازی با کامپیوتر ارتباط برقرار کنند که انتخاب نوع ارتباط بستگی به نوع تکنولوژی ارتباطی این دستگاهها داره ، مثلا اکثر گوشی های امروزی که داخلشون هم یک مودم وجود داره می توانند از طریق تکنولوژی وای فای ، بلوتوث و کابل یو اس بی به کامپیوتر متصل شوند و در انواع قدیمی این دستگاهها معمولا از کابل های سریالی استفاده میشد که جز تکنولوژی های ارتباطی قدیمی محسوب میشه و سرعت رد و بدل کردن اطلاعات با این تکنولوژی به نسبت روش موازی پائین تر هست که ما در اینجا نمیخواهیم دو تکنولوژی را با هم مقایسه کنیم و فقط قصد داشتیم با دو تکنولوژی ارتباطی آشنا بشید و بدونید که مثلا USB  دارای سرعت بیشتری نسبت به پورت و کابل های سریالی هست و در این بحث برای ما چندان فرقی نداره که از کدوم نوع استفاده میکنیم و مهم این هست که ما بتونیم بین کامپیوتر و مودم یا ماژول مورد نظرمون که دستورات گفته شده را ساپورت میکنن ارتباط برقرار کنیم که برای هر کدوم از انواع روش های ارتباطی گفته شده ، دستورات مناسبش در زبانهای برنامه نویسی تعبیه شده که ما میتونیم دستورات این ارتباط رو بنویسیم . مثلا در زبان برنامه نویسی سی شارپ ، برای اینکه به یک دستگاهی که به پورت سریالی کامپیوتر ما متصل هست ، وصل بشیم دستورات و سینتکس خاص خودش رو داره و برای ارتباط با USB  هم دستورات مخصوص خودش که این هم برای ما چندا مهم نیست و شما می تونید با مراجعه به داکیومنت های زبان مورد نظرتون دستورات مورد نیاز برای برقراری ارتباط با انواع پورت ها (موازی و سریالی) رو بدست بیارید و این ارتباط رو برقرار کنید تا بتونید دستورات AT-COMMAND رو بهش ارسال کنید .

فرض ما بر این است که شما قصد نوشتن برنامه ای رو در کامپیوتر دارید که بتونه با یک مودمی که قابلیت شناسایی دستورات AT-COMMAND رو داره  ارتباط برقرار کنه و این دستگاه رو از طریق کامپیوتر کنترل کنیم ، خوب پس برای اینکار ما با استفاده از یکی از زبانهای برنامه نویسی این برنامه را خواهیم نوشت و 

پس از آماده شدن برنامه نوشته ، بایستی این نرم افزار را بر روی سیستم عامل نصب کنیم تا مثل سایر برنامه های کامپیوتر از امکاناتش استفاده کنیم.

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

سیستم عامل ها به برنامه هایی که با محیط خارج از کامپیوتر ارتباط برقرار میکنند ، یک پورت مجازی اختصاص می دهند تا درخواست هایی که از بیرون به کامپیوتر ما میرسه به سمت اون شماره پورت که معرف برنامه ما هست هدایت بشه که این مکانیزم مسلما برای یک سیستم عاملی که برنامه های مختلفی بر روی خودش داره و هر کدوم ممکنه با محیط بیرون ارتباط داشته باشن لازم و ضروری هست و ما کاری به جزئیات پیاده سازی این مکانیزم نداریم و فقط در همین حد بدونید که بایستی شماره پورت مجازی که سیستم عامل برای ارتباط با دستگاه برایمان مشخص کرده را بدونیم تا با دستگاه ارتباط بگیریم .

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

فکر کنم با دستورات مورد بحث تا حدودی آشنا شدید و جمع آوری اطلاعات بیشتر رو به عهده خودتون میزارم .

 

آشنایی با دستورات AT-COMMAND  :

دقت کنید AT یک پیشوند است که دستگاه با دریافت آن متوجه می شود دستوری ارسال شده است و جز نام فرمان نیست. به عنوان مثال یکی از فرامین ای تی کامند +CMGS نام دارد و زمان استفاده باید به صورت AT+CMGS استفاده شود. فرمان دیگری به نام D وجود دارد که به صورت ATD به مودم ارسال می شود.

متن کامل این مقاله آموزشی در قالب فایل های PDF در زیر قابل دانلود هست.

امیدوارم موفق باشید

 

دریافت فایل PDF مقاله آشنایی با دستورات AT-COMMAND
عنوان: ارسال sms با مودم gsm
حجم: 831 کیلوبایت