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

کنترل و کاهش بسته‌های ارسالی توسط ماژول GPS-neo6m

gps-neo6-eficinency--digispark-
نوشته شده توسط معین صابری

مکان‌یابی با ماژول gps ، موقعیت‌یابی و تعیین محل یک جسم از دیرباز بحثی مهم به شمار می‌رفته است. امروز به مدد وجو ماهواره‌های مختلف، به سادگی و رایگان می‌توان موقعیت هر جسمی را تعیین نمود. شرکت ublox با تولید ماژول‌های مختلف مکان‌یابی، یکی از شرکت‌های پیشرو در زمینه تولید تجهیزات مکان‌یابی ماژول Gps است. یکی از ماژول‌های پر استفاده این شرکت، ماژول Ublox Neo6M است که در اکثر پروژه‌های مکان یابی می‌توان رد این ماژول را مشاهده نمود. در ادامه با مرجع تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.

 

 


بررسی ماژول Ublox-Neo6m


ماژول Ublox Neo6M پس از روشن شدن، داده‌های خود در غالب فرمتی تحت عنوان (NMEA (National Marine Electronic Association که توسط نیروی دریایی ایالات متحده بنا نهاده شده است، به ما ارسال می‌نماید. ماژول gps، داده‌های خود را تحت این فرمت به صورت بسته‌های با نام‌های زیر ارسال ‌می‌نماید:

  • RMC
  • GLL
  • GSA
  • GSV
  • VTG

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

اتصالات ماژول GPS با میکروکنترلر AVR - دیجی اسپارک

 

ارسال دستورات

 به همین جهت، با ارسال دستورات مشخص به ماژول، می‌توان از ارسال پکت‌ها، مانع شد. به طور کلی، داده RMC بهینه ترین داده‌ها شامل طول، عرض، سرعت و… را ارایه می‌دهد. بنابراین، با ارسال دستورات زیر، می‌توان از ارسال سایر بسته‌ها توسط ماژول gps جلوگیری نمود:

 

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

شماتیک اتصالات ماژول GPS با میکروکنترلر AVR - دیجی اسپارک

 


کد AVR تحت محیط کدویژن


در زیر کدهای پروژه قرار گرفته شده است. کدها تحت میکروکنترلر AVR Atmega16 و محیط کدویژن Codevision، توسعه یافته است:

 

 

 


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


ماژول مکان یاب NEO6MV2 GPS جی پی اس Gy-GPS6MV2

 

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

 


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


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

 

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

 

 

 

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

معین صابری

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

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

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