เฟรมเวิร์ก Android ให้สิทธิ์เข้าถึงการวัด GNSS ดิบในอุปกรณ์ Android หลายรุ่น
คุณสามารถค้นหาเครื่องมือได้ในที่เก็บเครื่องมือวัด GPS บน GitHub ซึ่งมีซอร์สโค้ดของ GnssLogger เวอร์ชันเบื้องต้นและไฟล์ปฏิบัติการสำหรับแอป GNSS Analysis บนเดสก์ท็อปสำหรับ Linux, Windows และ macOS คู่มือการติดตั้งและคู่มือผู้ใช้
Google Smartphone Decimeter Challenge
Google, แผนกดาวเทียมของสถาบันการนำทาง และ Kaggle ร่วมสนับสนุนการแข่งขัน Smartphone Decimeter Challenge ครั้งที่ 3 ที่ ION GNSS+ โดยการแข่งขันจะเริ่มตั้งแต่วันที่ 12 กันยายน 2023 และสิ้นสุดในวันที่ 23 พฤษภาคม 2024 ร่องรอยใหม่กว่า 150 รายการที่มีการวัด GNSS ดิบ ข้อมูลเซ็นเซอร์ และข้อมูลที่เป็นความจริงที่แม่นยำจะพร้อมใช้งานแบบสาธารณะ การเข้าร่วมการแข่งขันเปิดให้ทุกคนเข้าร่วมได้ เราขอแนะนำให้ผู้เข้าร่วมส่งบทคัดย่อไปยังเซสชันที่ชื่อว่า "Smartphone Decimeter Challenge" ซึ่งจะจัดขึ้นที่ ION GNSS+ 2024
ดูข้อมูลเพิ่มเติม รวมถึงกฎและข้อบังคับได้ที่หน้าการแข่งขันใน Kaggle ซึ่งจะเริ่มถ่ายทอดสดในวันที่ 12 กันยายน 2023 เวลา 15:30 น. MDT
อุปกรณ์ Android ที่รองรับการวัด GNSS ดิบ
อุปกรณ์ที่ใช้ Android 10 (ระดับ API 29) ขึ้นไปต้องรองรับการวัด GNSS ดิบ ใน Android 9 (ระดับ API 28) และต่ำกว่า อุปกรณ์ Android ทั้งหมดที่มีฮาร์ดแวร์ปี 2016 ขึ้นไปต้องรองรับการวัด GNSS ดิบ ปัจจุบันโทรศัพท์ Android ที่มีอยู่มากกว่า 90% มีการวัดค่าดิบ
การรองรับช่องการวัด GNSS ดิบเป็นตัวเลือกและอาจแตกต่างกันไปตามชิปเซ็ต GNSS ที่ใช้ ตัวอย่างของช่องเหล่านี้ ได้แก่
- ระยะทางเทียมและอัตราการเปลี่ยนแปลงของระยะทางเทียม
- ข้อความการนำทาง
- ค่า Automatic Gain Controller (AGC)
- ช่วงเดลต้าสะสม (ADR) หรือเฟสคลื่นพาหะ
- การรองรับหลายความถี่
โทรศัพท์เรือธงส่วนใหญ่จาก Pixel, Motorola, Samsung, Xiaomi, OnePlus และผู้ผลิตโทรศัพท์รายใหญ่อื่นๆ รองรับความถี่ L1 และ L5 อยู่แล้ว โทรศัพท์เรือธง Pixel รวมถึงโทรศัพท์เรือธงอื่นๆ จากผู้ผลิตโทรศัพท์รายใหญ่ที่ไม่ได้ใช้ชิปเซ็ต Qualcomm Snapdragon จะให้ ADR (เฟสคลื่นพาหะ) เป็นส่วนหนึ่งของการวัดข้อมูลดิบ
ฐานข้อมูลของความสามารถ GNSS ที่ชุมชนมีส่วนร่วมของอุปกรณ์ Android ต่างๆ มีการอ้างอิงในบทความ "ฟีเจอร์ GNSS ที่รวบรวมข้อมูลจากมวลชนของอุปกรณ์ Android"
ดูข้อมูลเพิ่มเติมเกี่ยวกับคำจำกัดความของช่องการวัดค่าดิบที่อุปกรณ์ Android มีให้ได้ที่ระบบดาวเทียมนำทางทั่วโลก
ผู้ผลิตอุปกรณ์ดั้งเดิม (OEM) นักพัฒนาซอฟต์แวร์ และนักวิจัยสามารถใช้เครื่องมือในหน้านี้เพื่อทดสอบการออกแบบโทรศัพท์ใหม่ ตรวจสอบฟังก์ชันการทำงาน พัฒนาอัลกอริทึมใหม่ ประเมินการปรับปรุงการใช้งานระบบ GNSS รวมถึงสร้างแอปที่มีมูลค่าเพิ่ม
โค้ดตัวอย่างของไคลเอ็นต์ SUPL
Suplclient คือโค้ดตัวอย่างที่เข้าถึง supl.google.com เพื่อรับข้อมูล Ephemeris แบบเรียลไทม์ คลาส SuplTester แสดงตัวอย่างวิธีใช้โปรเจ็กต์ไคลเอ็นต์ SUPL SuplTester จะตั้งค่าข้อกำหนดการเชื่อมต่อ TCP ของ SUPL จากนั้นจะส่งคำขอ LPP SUPL ที่ละติจูดและลองจิจูดที่ระบุ แล้วพิมพ์การตอบกลับของเซิร์ฟเวอร์ SUPL
ข้อมูลการปรับเทียบเสาอากาศ
ตั้งแต่ Android 11 (API ระดับ 30) เป็นต้นไป คุณสามารถใช้คลาส GnssAntennaInfo เพื่อเข้าถึงลักษณะของเสาอากาศ เช่น พิกัด Phase Center Offset (PCO), การแก้ไข Phase Center Variation (PCV) และการแก้ไขอัตราขยายสัญญาณ การแก้ไขเหล่านี้สามารถนำไปใช้กับการวัดค่าดิบเพื่อเพิ่มความแม่นยำได้
เมื่อใช้ GnssAntennaInfo โปรดคำนึงถึงลักษณะการทำงานของระบบต่อไปนี้ ซึ่งออกแบบมาเพื่อปรับปรุงความเป็นส่วนตัวของผู้ใช้
- ลักษณะที่ API นี้ระบุจะเจาะจงเฉพาะรุ่นอุปกรณ์เท่านั้น ไม่ใช่อุปกรณ์แต่ละเครื่อง
การบันทึกการวัดค่าดิบ
คุณสามารถใช้ Android Studio เพื่อสร้างแอปที่บันทึกการวัดค่า GNSS ดิบและข้อมูลตำแหน่งอื่นๆ แล้วบันทึกลงในไฟล์ ดูตัวอย่างซอร์สโค้ดของแอปดังกล่าวได้ที่เครื่องมือวัด GPS
GNSSLogger ของ Google เป็นแอปตัวอย่างที่พัฒนาขึ้นด้วยฟังก์ชันนี้ หากต้องการรับเอาต์พุต GNSS ด้วยแอปตัวอย่าง อุปกรณ์ของคุณต้องรองรับการวัด GNSS ดิบ
เมื่อบันทึก GNSS โดยใช้ GNSS Logger แล้ว คุณสามารถคัดลอกไฟล์บันทึกจากอุปกรณ์ไปยังคอมพิวเตอร์เพื่อวิเคราะห์เพิ่มเติมได้ จากภายใน GNSS Logger คุณสามารถส่งไฟล์ให้ตัวเองทางอีเมลหรือบันทึกไฟล์ลงใน Google ไดรฟ์ได้ หรือจะบันทึกไฟล์โดยใช้แอปจัดการไฟล์ในอุปกรณ์ หรือใช้ Android Debug Bridge (ADB) ตามที่อธิบายไว้ในคัดลอกไฟล์ไปยัง/จากอุปกรณ์ก็ได้
กำลังวิเคราะห์การวัดดิบ
แอป GNSS Analysis จะอ่านการวัดค่าดิบของ GPS/GNSS ที่รวบรวมโดย GNSS Logger และใช้เพื่อวิเคราะห์ลักษณะการทำงานของตัวรับ GNSS ดังที่แสดงในรูปที่ 1
คุณสามารถดาวน์โหลดแอปสำหรับระบบ Linux, Windows และ macOS ได้

รูปที่ 1 GNSS Logger จะรวบรวมการวัดที่ GNSS Analysis สามารถใช้ได้
แอป GNSS Analysis สร้างขึ้นบน MATLAB แต่คุณไม่จำเป็นต้องมี MATLAB เพื่อเรียกใช้แอป แอปจะได้รับการคอมไพล์เป็นไฟล์ปฏิบัติการที่ติดตั้งสำเนาของ MATLAB Runtime
แผงควบคุมการวิเคราะห์ GNSS
แผงควบคุมการวิเคราะห์ GNSS ที่แสดงในรูปที่ 2 ช่วยให้คุณจัดการฟีเจอร์ของแอปได้ เช่น
- เลือกดาวเทียมที่จะแสดง
- ควบคุมตำแหน่งอ้างอิง ความเร็ว และเวลา (PVT) ที่ใช้ในการคำนวณข้อผิดพลาดในการวัด
- สร้างรายงานการวิเคราะห์
- กำหนดกรอบเวลาในข้อมูลระหว่างเวลาเริ่มต้นและเวลาสิ้นสุด
)
รูปที่ 2 แผงควบคุม GNSS Analysis
ผังแบบอินเทอร์แอกทีฟของการวิเคราะห์ GNSS
แอป GNSS Analysis มีแผนภาพแบบอินเทอร์แอกทีฟที่จัดระเบียบในคอลัมน์ความถี่วิทยุ (RF) นาฬิกา และการวัด ดังที่แสดงในรูปที่ 3
)
รูปที่ 3 แอป GNSS Analysis แสดงผังแบบอินเทอร์แอกทีฟ
คอลัมน์ RF จะแสดงข้อมูลต่อไปนี้
- สำหรับกลุ่มดาวเทียมแต่ละกลุ่ม ดาวเทียม 4 ดวงที่มีสัญญาณแรงที่สุด
- สำหรับดาวเทียมแต่ละดวง พล็อตเวลาของความหนาแน่นของคลื่นพาหะต่อสัญญาณรบกวน (C/No)
- แผนภาพท้องฟ้าของตำแหน่งดาวเทียม
คอลัมน์นาฬิกาจะแสดงข้อมูลต่อไปนี้
- ระยะทางเทียม
ความถี่ออฟเซ็ตของนาฬิกาเครื่องรับ ซึ่งคำนวณโดยใช้ตำแหน่งอ้างอิงอย่างใดอย่างหนึ่งต่อไปนี้
- ตำแหน่งเฉลี่ยที่คำนวณโดยอัตโนมัติ
- ละติจูด ลองจิจูด และระดับความสูงที่ผู้ใช้ป้อน
- ไฟล์ National Marine Electronics Association (NMEA) ที่มี PVT อ้างอิงความจริง
ออฟเซ็ตของนาฬิกาสแตนด์บายที่รักษาเวลาเมื่อเครื่องรับรีเซ็ตดิวตี้ไซเคิลของออสซิลเลเตอร์หลัก
คอลัมน์การวัดจะแสดงข้อมูลต่อไปนี้
- ผลลัพธ์ตำแหน่งกำลังสองน้อยที่สุดแบบถ่วงน้ำหนักที่ได้จากระยะเทียมดิบ การถ่วงน้ำหนักจะทำโดยใช้ความไม่แน่นอนที่รายงานของการวัดแต่ละครั้ง ซึ่งเป็นส่วนหนึ่งของข้อกำหนด Measurement API ดิบ
- ข้อผิดพลาดของระยะเทียมแต่ละรายการสำหรับการวัดแต่ละครั้ง
ข้อผิดพลาดของอัตรา Pseudorange แต่ละรายการสำหรับการวัดแต่ละครั้ง
รายงานการทดสอบการวิเคราะห์ GNSS
GNSS Analysis สามารถสร้างรายงานการทดสอบได้ดังที่แสดงในรูปที่ 4 ซึ่งจะประเมินการใช้งาน API, สัญญาณที่ได้รับ, ลักษณะการทำงานของนาฬิกา และความแม่นยำในการวัดค่า ในแต่ละกรณี แอปจะรายงานว่าตัวรับสัญญาณผ่านหรือไม่ผ่านการทดสอบโดยอิงตามประสิทธิภาพที่วัดเทียบกับเกณฑ์เปรียบเทียบที่ทราบ รายงานการทดสอบมีประโยชน์สำหรับผู้ผลิตอุปกรณ์ ซึ่งสามารถใช้รายงานนี้เมื่อทำการปรับปรุงการออกแบบและการใช้งานอุปกรณ์ใหม่ๆ หากต้องการสร้างรายงานการทดสอบ ให้คลิกสร้างรายงาน

รูปที่ 4 รายงานการทดสอบการวิเคราะห์ GNSS
แท็บเปรียบเทียบจะแสดงการเปรียบเทียบข้อมูลคู่กันดังที่แสดงในรูปที่ 5 ของ C/No จากไฟล์บันทึก GNSS หลายไฟล์ ซึ่งมีประโยชน์เมื่อเปรียบเทียบประสิทธิภาพ RF ของอุปกรณ์หลายเครื่อง

รูปที่ 5 การเปรียบเทียบข้อมูล C/No จากไฟล์บันทึกหลายไฟล์แบบคู่กัน
หากสนใจซอร์สโค้ด โปรเจ็กต์เครื่องมือวัด GPS มีตัวอย่าง MATLAB แบบโอเพนซอร์สที่คุณสามารถใช้เพื่อดำเนินการต่อไปนี้โดยใช้สัญญาณกลุ่มดาวเทียม GPS
- อ่านข้อมูลที่บันทึกด้วยแอปตัวอย่าง GNSS Logger
- คำนวณและแสดงภาพ Pseudorange
- คำนวณตำแหน่งและความเร็วแบบกำลังสองน้อยที่สุดถ่วงน้ำหนัก
- ดูและวิเคราะห์เฟสของคลื่นพาหะ
บันทึกประจำรุ่นของแอป GNSS Analysis v4.6.0.1
แอป GNSS Analysis เวอร์ชัน 4.6.0.1 มีการอัปเดตต่อไปนี้
- สร้าง GnssAnalysisTool บน Matlab R2022a ซึ่งให้สิทธิ์เข้าถึงฟีเจอร์ใหม่ๆ ดังนี้
- หน้าต่างสถานะจะเลื่อนโดยอัตโนมัติ: ข้อความสถานะล่าสุดจะแสดงอยู่เสมอ
- เพิ่มตารางการเปรียบเทียบ C/N0 ตามกลุ่มดาวเทียม และเปรียบเทียบ L1 กับ L5
- เพิ่มพล็อตค่าคงเหลือของอัตรา Pseudorange แล้ว
- นำแท็บแยกต่างหากสำหรับ PVT อ้างอิงแบบอยู่กับที่หรือแบบเคลื่อนที่ออก เพื่อให้ดูได้ง่ายขึ้นว่าเลือก PVT อ้างอิงประเภทใด
- ย้ายผลลัพธ์ "สร้างรายงาน" จาก HTML ไปยังหน้าต่างสถานะ
- นำแท็บ Mission Planner ออกแล้ว โปรดใช้ gnssmissionplanning.com/ หรือ www.gnssplanning.com/
- การแก้ไขที่เกี่ยวข้องกับการแยกวิเคราะห์ไฟล์การสังเกตการณ์ RINEX
- ใช้แหล่งข้อมูล Ephemeris ของ NASA CDDIS เป็นทางเลือกสำรองสำหรับ GPS และ GLO เมื่อ BKG ไม่ทำงาน
- ย้ายจาก igs.bkg.bund.de ไปยัง igs-ftp.bkg.bund.de
- อย่าออกจากการวิเคราะห์หากการดาวน์โหลดข้อมูล Ephemeris ของ GAL, QZSS หรือ BDS ล้มเหลว
- สร้างการวิเคราะห์ CNo ของเสาอากาศแม้ว่าชิปเซ็ตจะไม่รองรับ BaseBandCNo
คู่มือการติดตั้งและคู่มือผู้ใช้
แสดงความคิดเห็น
เราต้องการปรับปรุงการรองรับ GNSS ใน Android โปรดแจ้งให้เราทราบเกี่ยวกับปัญหาการรองรับ GNSS ใน Android โดยใช้เครื่องมือติดตามปัญหา GNSS โปรดตรวจสอบว่าปัญหาของคุณได้รับการแก้ไขแล้วในคำถามที่พบบ่อยก่อนโพสต์
หากคุณเคยใช้เครื่องมือวิเคราะห์ GNSS โปรดแสดงความคิดเห็นโดยตอบแบบสำรวจสั้นๆ หากมีคำถามอื่นๆ หรือต้องการขอรับการสนับสนุน โปรดดูแหล่งข้อมูลการสนับสนุนนักพัฒนาแอป
คุณสามารถดูคำตอบสำหรับคำถามที่พบบ่อยได้ในคำถามที่พบบ่อยเกี่ยวกับเครื่องมือวิเคราะห์ GNSS