اندازه‌گیری‌های خام GNSS

«چارچوب Android» دسترسی به اندازه‌گیری‌های خام GNSS را در چندین دستگاه Android فراهم می‌کند.

می‌توانید این ابزارها را در مخزن «ابزارهای اندازه‌گیری GPS» در GitHub پیدا کنید که شامل کد منبع نسخه مقدماتی GnssLogger و فایل‌های اجرایی برای برنامه رایانه‌ای «تحلیل GNSS» برای Linux، Windows، و macOS است. راهنمای نصب و کاربر.

چالش دسی‌متر تلفن هوشمند Google

‫Google، بخش ماهواره‌ای «مؤسسه ناوبری»، و Kaggle حامیان مالی سومین «چالش دسی‌متری تلفن هوشمند» در ION GNSS+‎ هستند. این رقابت ۱۲ سپتامبر ۲۰۲۳ آغاز می‌شود و ۲۳ مه ۲۰۲۴ به‌پایان می‌رسد. بیش‌از ۱۵۰ رد جدید حاوی اندازه‌گیری‌های خام GNSS، داده‌های حسگر، و واقعیت عینی دقیق به‌صورت عمومی دردسترس قرار خواهد گرفت. شرکت در این مسابقه برای همه آزاد است. شرکت‌کنندگان تشویق می‌شوند که خلاصه‌ای از جلسه با عنوان «چالش دسی‌متر تلفن هوشمند» را که در ION GNSS+ 2024 برگزار می‌شود ارسال کنند.

برای کسب اطلاعات بیشتر، ازجمله قوانین و مقررات، به صفحه مسابقه در Kaggle مراجعه کنید که در ۱۲ سپتامبر ۲۰۲۳ ساعت ۳:۳۰ بعدازظهر به‌وقت MDT فعال خواهد شد.

دستگاه‌های Android که از اندازه‌گیری‌های GNSS خام پشتیبانی می‌کنند

پشتیبانی از اندازه‌گیری‌های GNSS خام در دستگاه‌هایی که Android 10 (سطح میانای برنامه‌سازی کاربردی ۲۹) یا بالاتر را اجرا می‌کنند الزامی است. در Android نسخه ۹ (سطح میانای برنامه‌سازی کاربردی ۲۸) و پایین‌تر، پشتیبانی از اندازه‌گیری‌های خام GNSS در همه دستگاه‌های Android که سخت‌افزار سال ۲۰۱۶ یا جدیدتر دارند الزامی است. درحال‌حاضر، بیش‌از ۹۰٪ تلفن‌های Android موجود دارای اندازه‌گیری‌های خام هستند.

پشتیبانی از برخی‌از فیلدهای اندازه‌گیری GNSS خام اختیاری است و می‌تواند براساس مجموعه تراشه GNSS مورداستفاده متفاوت باشد. نمونه‌هایی از این فیلدها شامل موارد زیر است:

  • شبه‌محدوده و نرخ شبه‌محدوده.
  • پیام پیمایش.
  • مقدار «کنترل‌کننده بهره خودکار» (AGC).
  • محدوده دلتای انباشته (ADR) یا فاز حامل.
  • پشتیبانی از چند فرکانس

اکثر تلفن‌های پرچم‌دار Pixel،‏ Motorola،‏ Samsung،‏ Xiaomi،‏ OnePlus، و دیگر سازندگان اصلی تلفن از قبل از فرکانس‌های L1 و L5 پشتیبانی می‌کنند. تلفن‌های پرچم‌دار Pixel و همچنین سایر تلفن‌های پرچم‌دار از سازندگان اصلی تلفن که از مجموعه تراشه‌های Qualcomm Snapdragon استفاده نمی‌کنند، ADR (فاز حامل) را به‌عنوان بخشی از اندازه‌گیری‌های خام ارائه می‌دهند.

در مقاله «انبوه سپاری ویژگی‌های سامانه ماهواره‌ای ناوبری جهانی در دستگاه‌های Android»، به پایگاه داده‌ای از قابلیت‌های سامانه ماهواره‌ای ناوبری جهانی در دستگاه‌های Android مختلف که توسط انجمن همیاری شده است ارجاع داده می‌شود.

برای اطلاعات بیشتر درباره تعاریف فیلدهای اندازه‌گیری خام ارائه‌شده توسط دستگاه‌های Android، به سیستم‌های ماهواره‌ای ناوبری جهانی مراجعه کنید.

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

کد نمونه مشتری SUPL

Suplclient کد نمونه‌ای است که برای دریافت تقویم نجومی هم‌زمان به supl.google.com دسترسی پیدا می‌کند. کلاس SuplTester نمونه‌ای از نحوه استفاده از «پروژه مشتری SUPL» ارائه می‌دهد. SuplTester مشخصات اتصال SUPL TCP را راه‌اندازی می‌کند، سپس در عرض و طول جغرافیایی مشخصی درخواست LPP SUPL ارسال می‌کند و پاسخ سرور SUPL را چاپ می‌کند.

اطلاعات واسنجی آنتن

از Android 11 (سطح API‏ ۳۰) به بعد، می‌توانید از کلاس GnssAntennaInfo برای دسترسی به ویژگی‌های آنتن استفاده کنید، ازجمله: مختصات جابه‌جایی مرکز فاز (PCO)، اصلاحات تغییر مرکز فاز (PCV)، و اصلاحات بهره سیگنال. این اصلاحات را می‌توان برای اندازه‌گیری‌های خام اعمال کرد تا دقت بهبود یابد.

هنگام استفاده از GnssAntennaInfo، رفتارهای سیستم زیر را درنظر داشته باشید. این شناسه‌ها برای بهبود حریم خصوصی کاربر طراحی شده‌اند.

  • ویژگی‌های ارائه‌شده توسط این API فقط مختص مدل دستگاه است، نه یک دستگاه خاص.

ثبت اندازه‌گیری‌های خام

می‌توانید از Android Studio برای ساختن برنامه‌ای استفاده کنید که اندازه‌گیری‌های خام GNSS و دیگر داده‌های مکان را ضبط می‌کند و آن‌ها را در فایلی ثبت می‌کند. برای مثال کد منبع چنین برنامه‌ای، به ابزارهای اندازه‌گیری GPS مراجعه کنید.

‫GNSSLogger Google یک برنامه نمونه است که با این عملکرد توسعه یافته است. برای دریافت خروجی GNSS با برنامه نمونه، دستگاهتان باید از اندازه‌گیری‌های GNSS خام پشتیبانی کند.

پس‌از ضبط گزارش GNSS بااستفاده از GNSS Logger، می‌توانید فایل‌های گزارش را از دستگاه به رایانه خود کپی کنید تا تحلیل بیشتری انجام دهید. از داخل GNSS Logger می‌توانید فایل‌ها را ازطریق ایمیل برای خودتان ارسال کنید یا آن‌ها را در Google Drive ذخیره کنید. یا می‌توانید فایل‌ها را بااستفاده از برنامه مدیریت فایل در دستگاه ذخیره کنید، یا می‌توانید از «پل اشکال‌زدایی Android»‏ (ADB) همان‌طور که در کپی کردن فایل‌ها به/از دستگاه توضیح داده شده است استفاده کنید.

درحال تجزیه‌وتحلیل اندازه‌گیری‌های خام

برنامه GNSS Analysis اندازه‌گیری‌های خام GPS/GNSS را که توسط GNSS Logger جمع‌آوری شده است می‌خواند و از آن‌ها برای تجزیه‌وتحلیل رفتار گیرنده GNSS استفاده می‌کند، همان‌طور که در شکل ۱ نشان داده شده است.

می‌توانید این برنامه را برای سیستم‌های Linux، Windows، و macOS بارگیری کنید.

GNSS Logger و GNSS Analysis

شکل ۱. GNSS Logger اندازه‌گیری‌هایی را جمع‌آوری می‌کند که می‌تواند توسط GNSS Analysis مصرف شود.

برنامه GNSS Analysis برپایه MATLAB ساخته شده است، اما برای اجرای آن نیازی به داشتن MATLAB ندارید. برنامه در یک فایل اجرایی کامپایل می‌شود که نسخه‌ای از MATLAB Runtime را نصب می‌کند.

صفحه کنترل تجزیه‌وتحلیل GNSS

صفحه کنترل GNSS Analysis، که در شکل ۲ نشان داده شده است، به شما امکان می‌دهد ویژگی‌های برنامه را مدیریت کنید، ازجمله:

  • انتخاب کنید کدام ماهواره‌ها نمایش داده شوند.
  • موقعیت، سرعت، و زمان مرجع (PVT) مورد استفاده برای محاسبه خطاهای اندازه‌گیری را کنترل کنید.
  • گزارش‌های تجزیه‌وتحلیل ایجاد کنید.
  • پنجره‌ای را در داده‌ها بین زمان شروع و پایان تعریف کنید.

صفحه کنترل تجزیه‌وتحلیل GNSS)

شکل ۲. صفحه کنترل «تحلیل GNSS»

نمودارهای تعاملی «تحلیل GNSS»

برنامه GNSS Analysis نمودارهای تعاملی‌ای ارائه می‌دهد که در ستون‌های فرکانس رادیویی (RF)، ساعت‌ها، و اندازه‌گیری‌ها سازمان‌دهی شده‌اند، همان‌طور که در شکل ۳ نشان داده شده است.

نمودارهای تعاملی «تحلیل GNSS»)

شکل ۳. برنامه GNSS Analysis که نمودارهای تعاملی را نمایش می‌دهد.

ستون RF داده‌های زیر را نشان می‌دهد:

  • برای هر صورت فلکی، چهار ماهواره با قوی‌ترین سیگنال‌ها.
  • برای هر ماهواره، نمودار زمانی چگالی حامل به نویز (C/No).
  • نمودار آسمان موقعیت‌های ماهواره.

ستون ساعت داده‌های زیر را نشان می‌دهد:

  • شبه‌محدوده‌ها.
  • فرکانس آفست ساعت گیرنده که بااستفاده از یکی از موقعیت‌های مرجع زیر محاسبه می‌شود:

    • جایگاه میانگین به‌طور خودکار محاسبه شد.
    • عرض جغرافیایی، طول جغرافیایی، و ارتفاعی که کاربر وارد کرده است.
    • فایل National Marine Electronics Association (NMEA) با مرجع حقیقت PVT.
  • انحراف ساعت آماده‌به‌کار که زمان را هنگام بازنشانی چرخه کاری نوسان‌ساز اصلی توسط گیرنده حفظ می‌کند.

ستون اندازه‌گیری‌ها داده‌های زیر را نشان می‌دهد:

  • نتایج موقعیت کمترین مربعات وزنی که از شبه‌فاصله‌های خام به‌دست آمده است. وزن‌دهی بااستفاده از عدم قطعیت گزارش‌شده هر اندازه‌گیری انجام می‌شود که بخشی از مشخصات میانای برنامه‌سازی کاربردی اندازه‌گیری خام است.
  • خطاهای هر شبه‌فاصله برای هر اندازه‌گیری.
  • خطاهای هر نرخ شبه‌فاصله برای هر اندازه‌گیری.

گزارش آزمایش «تحلیل GNSS»

«تحلیل GNSS» می‌تواند گزارش آزمایشی تولید کند (همان‌طور که در شکل ۴ نشان داده شده است) که پیاده‌سازی API، سیگنال دریافتی، رفتار ساعت، و دقت اندازه‌گیری را ارزیابی می‌کند. برای هر مورد، برنامه گزارش می‌دهد که آیا گیرنده براساس عملکرد اندازه‌گیری‌شده درمقابل محک‌های شناخته‌شده، در آزمون قبول شده است یا رد شده است. گزارش آزمایش برای سازندگان دستگاه مفید است، زیرا می‌توانند از آن درطول طراحی و پیاده‌سازی دستگاه‌های جدید استفاده کنند. برای تولید گزارش آزمایشی، روی ایجاد گزارش کلیک کنید.

گزارش آزمایش «تحلیل GNSS»

شکل ۴. گزارش آزمایش «تحلیل GNSS»

برگه مقایسه مقایسه پهلوبه‌پهلو، نشان‌داده‌شده در شکل ۵، از C/No از چندین فایل گزارش GNSS را ارائه می‌دهد که هنگام مقایسه عملکرد RF چندین دستگاه مفید است.

مقایسه پهلوبه‌پهلو داده‌های C/No

شکل ۵. مقایسه پهلوبه‌پهلو داده‌های C/No از چند فایل گزارش

به کد منبع علاقه دارید؟ پروژه ابزار اندازه‌گیری GPS یک نمونه MATLAB متن‌باز ارائه می‌دهد که می‌توانید از آن برای انجام اقدامات زیر بااستفاده از سیگنال‌های صورت فلکی GPS استفاده کنید:

  • خواندن داده‌های ضبط‌شده با برنامه نمونه GNSS Logger.
  • شبه‌محدوده‌ها را محاسبه و دیداری‌سازی کنید.
  • محاسبه موقعیت و سرعت برداری حداقل مربعات وزنی.
  • مشاهده و تحلیل فاز حامل.

یادداشت‌های انتشار برنامه GNSS Analysis نسخه ۴.۶.۰.۱

نسخه ۴.۶.۰.۱ برنامه GNSS Analysis شامل به‌روزرسانی‌های زیر است:

  • GnssAnalysisTool را در Matlab R2022a ساختیم که دسترسی به ویژگی‌های جدید را فراهم می‌کند:
  • پنجره وضعیت به‌طور خودکار پیمایش می‌شود: آخرین پیام وضعیت همیشه قابل‌مشاهده است.
  • جدولی از مقایسه‌های C/N0، براساس صورت فلکی، و مقایسه L1 با L5 اضافه شد.
  • نمودار باقیمانده نرخ شبه‌فاصله اضافه شد.
  • برگه‌های جداگانه برای «PVT مرجع ثابت» یا «متحرک» برداشته شده است تا راحت‌تر بتوانید ببینید کدام نوع «PVT مرجع» انتخاب شده است.
  • نتایج «ایجاد گزارش» از HTML به «پنجره وضعیت» منتقل شد.
  • برگه «برنامه‌ریز مأموریت» برداشته شد. لطفاً از gnssmissionplanning.com/ یا www.gnssplanning.com/ استفاده کنید.
  • اصلاحات مربوط به تجزیه فایل RINEX Observation.
  • جایگزین کردن منبع تقویم نجومی NASA CDDIS برای GPS و GLO، وقتی BKG کار نمی‌کند.
  • انتقال از igs.bkg.bund.de به igs-ftp.bkg.bund.de
  • اگر بارگیری تقویم نجومی GAL،‏ QZSS، یا BDS ناموفق بود، از تجزیه‌وتحلیل خارج نشوید.
  • ایجاد تجزیه‌وتحلیل CNo آنتن حتی اگر مجموعه تراشه از BaseBandCNo پشتیبانی نکند

راهنمای نصب و کاربر.

ارائه کردن بازخورد

می‌خواهیم پشتیبانی از GNSS را در Android بهبود دهیم. بااستفاده از ردیاب مشکل GNSS، هرگونه مشکل در پشتیبانی GNSS در Android را به ما اطلاع دهید. لطفاً قبل‌از پست کردن مشکلتان، بررسی کنید که آیا قبلاً در پرسشگان به آن پرداخته شده است یا نه.

اگر از ابزارهای GNSS Analysis استفاده کرده‌اید، لطفاً با پاسخ دادن به نظرسنجی کوتاه بازخورد ارائه دهید. اگر سؤال دیگری دارید یا می‌خواهید درخواست پشتیبانی کنید، منابع پشتیبانی توسعه‌دهنده را ببینید.

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