مغامرات في برمجة وتطوير نظام تحديد المواقع العالمي (GPS): برنامج تعليمي جغرافي مكاني
نشرت: 2022-03-11بدأ كل هذا في رحلة المشي لمسافات طويلة إلى Zbevnica منذ أكثر من 10 سنوات. كان معي جهاز GPS الجديد الخاص بي وكان لدى صديق لي جهاز GPS متصل بهاتف Windows ME. كان الارتفاع رائعًا ، لكن عندما عدنا إلى سياراتنا ، فوجئنا برؤية أحد أجهزة تحديد المواقع العالمية (GPS) ادعى أننا قطعنا مسافة 6.2 كيلومترات ، بينما أبلغنا الآخر عن 6.7 كيلومترات. ادعى أحدهم أن مكاسبنا في الارتفاع (أي مجموع جميع الأجزاء الصاعدة من ارتفاعنا) كانت 300 متر ، بينما أفاد الآخر بأنه 500 متر.
كوني مبرمجًا (وفي النهاية مبرمجًا لنظم المعلومات الجغرافية) ، أثارت المشكلة على الفور اهتمامي. قلت لنفسي ، " لا ينبغي أن يكون من الصعب إصلاح ذلك باستخدام نص بسيط." بعد كل شيء ، تعد مسارات GPS مجرد قائمة من المجموعات في شكل (خط العرض ، خط الطول ، الارتفاع) ، أليس كذلك؟
حسنًا ، ليس حقًا.
وهكذا بدأت رحلتي إلى العالم الرائع لمسارات GPS وتتبع الأخطاء وبرمجة GIS بشكل عام.
تعد نظم المعلومات الجيومكانية (GIS) مجالًا ضخمًا ومعقدًا ، يشمل إسقاطات الخرائط والبيانات الجيوديسية)) ومعالجة بيانات raste و vecto والاستشعار عن بعد. مقدمة شاملة لهذا المجال ستكون خارج نطاق هذه المقالة. ونظرًا لأن التركيز على مشكلة معينة يمكن أن يكون غالبًا طريقة مفيدة لتقديم الذات إلى مجال جديد على أي حال ، فسوف أقدم بعض تحديات نظم المعلومات الجغرافية المحددة التي واجهتها وبعض الحلول الممكنة ؛ يسمى:
- كيفية التعرف على أخطاء تتبع GPS وفهمها وتصحيحها برمجيًا
- كيفية حساب واشتقاق معلومات مفيدة إضافية من مسارات GPS
بالنسبة للمبتدئين ، فإن مسارات نظام تحديد المواقع العالمي (GPS) ليست مجرد سلسلة من مجموعات (خطوط الطول والعرض والارتفاع) . ستوفر العديد من الأجهزة التي تدعم نظام تحديد المواقع العالمي (GPS) أيضًا بيانات وصفية مثل الوقت ومعدل ضربات القلب وما إلى ذلك. ستوفر بعض أجهزة GPS معلومات حول مدى دقة البيانات ؛ الملقب ، "تخفيف الدقة". ولكن ، لسوء الحظ ، فإن معظم أجهزة GPS - خاصةً الأجهزة المنخفضة التي تهيمن على السوق - لن توفر هذه المعلومات ويبقى أمامنا التحدي المتمثل في استنتاج دقة الجهاز بمفردنا (والتصحيح بشكل مثالي وفقًا لذلك ، حيثما أمكن ذلك) ).
لنبدأ بخوارزمية واحدة ممكنة لاكتشاف أجهزة GPS منخفضة الجودة (مثل معظم الهواتف الذكية) والتي عادةً ما تحتوي على بيانات GPS منخفضة الجودة.
أخطاء الارتفاع والخصوصيات
إذا كنت تعيش في أجزاء معينة من العالم ، فربما تكون قد لاحظت شيئًا غريبًا بشأن دقة ارتفاع نظام تحديد المواقع العالمي (GPS) عندما تقوم بتسجيل المسارات باستخدام هاتفك الذكي. عند التحقق من الارتفاعات ، يتم تسجيلها باستمرار على أنها أعلى أو أقل (بقيمة ثابتة) من الارتفاع الصحيح. على سبيل المثال ، أعيش في Višnjan (كرواتيا) ويواصل جهاز Android الخاص بي إخباري بأنني ما يقرب من 35-40 مترًا فوق الارتفاع الفعلي.
على سبيل المثال ، إليك رسم بياني لارتفاع GPS من رحلة قصيرة قمت بها قبل بضعة أشهر:
شيئين لملاحظة هنا.
أولاً ، تم تصنيع "التل" في الجزء الأول من بيانات GPS المسجلة بالكامل بواسطة الجهاز . في حين أن الرسم البياني يبدو أنه يشير إلى أن أعلى نقطة في ارتفاعنا كانت على بعد بضع مئات من الأمتار من البداية ، فقد كانت في الواقع بعد حوالي 4 كيلومترات.
ثانيًا ، ربما يكون الأمر الأكثر أهمية ( وغير المرئي على الرسم البياني) هو أن الرسم البياني بأكمله غير دقيق . تم الإبلاغ عن قيم الارتفاع باستمرار على أنها أعلى بحوالي 30-40 مترًا مما كانت عليه في الواقع ، حيث سنناقش بمزيد من التفصيل في هذه المقالة.
هذه هي الأشياء التي يمكن أن تحدث مع أجهزة GPS الرخيصة. وعندما نكتشف أن المسار به هذه الأخطاء ، يمكننا أن نستنتج أن الجهاز ربما يكون عبارة عن نظام تحديد المواقع العالمي (GPS) منخفض الجودة ، وبالتالي يمكن توقع وجود أخطاء أخرى أيضًا - وليس فقط أخطاء الارتفاع - الشائعة في مثل هذه الأجهزة.
أخطاء ارتفاع بدء التشغيل
هناك تقنيتان أساسيتان تستخدمهما أجهزة GPS لتحديد الارتفاع: "ارتفاع GPS" (كما تم إبلاغ الجهاز بواسطة نظام القمر الصناعي GPS) و "الارتفاع البارومتري" (يتم حسابه بواسطة الجهاز بناءً على قراءات الضغط الجوي). كلاهما غير مثالي.
يمكن أن تحتوي قيم ارتفاع نظام تحديد المواقع العالمي (GPS) على العديد من الأخطاء الصغيرة (عادةً في النطاق +/- 10 أمتار) ، والتي يمكن أن تكون مشكلة بشكل خاص إذا قررنا لاحقًا حساب كسب الارتفاع التراكمي. من ناحية أخرى ، فإن الارتفاع البارومتري حساس ليس فقط للارتفاع ولكن أيضًا للظروف الجوية ، والتي يمكن أن تسبب مجموعة من عدم الدقة الخاصة بها.
لذلك تستخدم بعض الأجهزة نهجًا هجينًا ، باستخدام قراءات بارومترية لتسجيل الارتفاع ولكن باستخدام قراءات GPS للمساعدة (إعادة) معايرة هذه القيم ، للمساعدة في حساب تغيرات الطقس (الضغط) وما إلى ذلك. باستخدام مثل هذه الأجهزة ، عند بدء المسار ، يمكن أن يكون الارتفاع البارومتري خاطئًا تمامًا ، ولكن بعد ذلك من خلال إعادة معايرته مع المزيد والمزيد من بيانات الأقمار الصناعية لنظام تحديد المواقع العالمي (GPS) ، تصبح بيانات الارتفاع أكثر موثوقية. لذلك ليس من غير المألوف أن تواجه مثل هذه الأجهزة نوع خطأ بدء التشغيل "الوهمي التل" الذي لاحظناه سابقًا على الرسم البياني للارتفاع.
استمرار عدم الدقة في تحديد نظام تحديد المواقع العالمي (GPS)
لشرح الخطأ الثابت في تقرير الارتفاع ، نحتاج إلى العودة إلى جغرافيا مدرستنا الابتدائية. يشرح معلمو الجغرافيا عادة أن الأرض ليست كروية بل شكل بيضاوي. إذا كان هذا ، في الواقع ، صحيحًا تمامًا ، فسيكون من السهل حساب الارتفاع رياضيًا. لكنها ليست كذلك. الأرض غير منتظمة. في الواقع ، إنها تشبه البطاطس التي تشبه الشكل الإهليلجي أكثر من الشكل الإهليلجي المثالي ، مما يعني أنه بالنسبة لتطوير نظم المعلومات الجغرافية ، فإنك تحتاج إلى مجموعة بيانات مفصلة عن الارتفاع لكل نقطة على وجه الأرض تقريبًا. في الجيوديسيا ، هذا المرجع الإهليلجي (المعروف أيضًا باسم datum) هو سطح معرف رياضيًا يقترب من الجيود ، وهو الشكل "الحقيقي" للأرض.
علاوة على ذلك ، من المهم أن ندرك أنه حتى هذه الإسناد هي مجرد تقديرات تقريبية للشكل الفعلي لسطح الأرض. يعمل البعض بشكل أفضل في أجزاء معينة من العالم ، ويعمل البعض الآخر بشكل أفضل في أجزاء أخرى. على سبيل المثال ، تُظهر الصورة أدناه (التي تم إنشاؤها باستخدام مكتبة Ruby الخاصة بي) كيف تختلف الأرض عن أحد النماذج الإهليلجية الأكثر استخدامًا (مرجع WGS84). تمثل الأجزاء السوداء أجزاء من الأرض أعلاه ، ويمثل الأبيض أجزاء من الأرض أدناه ، وهي الشكل الإهليلجي المثالي (الخطوط القارية والجزرية الموضحة باللون الأحمر).
يمكنك أن ترى أن الهند أقل من WGS84 الإهليلجي مع الجزء الجنوبي يمثل الحد الأدنى المطلق (تقريبًا -100 متر!) وأوروبا فوقها.
نظرًا لأن أجهزة GPS منخفضة الجودة لا تستخدم أيًا من هذه البيانات ، فهي في الحقيقة تقوم فقط بحساب الارتفاع بافتراض شكل بيضاوي مثالي. ومن ثم ، عدم دقتها المتسقة.
كشف وتصحيح أخطاء ارتفاع نظام تحديد المواقع العالمي (GPS)
في تطوير تطبيق GPS ، يمكن اكتشاف أن الجهاز الذي سجل مسارنا يحتوي على هذه الأنواع من الأخطاء باستخدام مجموعة بيانات نموذج الجاذبية الأرضية EGM2008 ، والتي يشار إليها أحيانًا بمجموعة بيانات "تموجات الجيود". مع EGM2008 ، يمكننا تقريب الفرق بين سطح الأرض الفعلي والقطع الناقص المثالي.
ولكن لمعرفة ما إذا كان مسار GPS الخاص بنا به هذا الخطأ ، نحتاج إلى شيء آخر - الارتفاع الحقيقي . قاعدة البيانات العامة التي يمكن أن تكون مفيدة لهذا الغرض هي مهمة طوبوغرافيا الرادار المكوك (SRTM). SRTM هي قاعدة بيانات قائمة على البيانات النقطية توفر قيم ارتفاع بدقة تبلغ تقريبًا كل 30 مترًا (عند خط الاستواء) للولايات المتحدة الأمريكية وكل 90 مترًا لبقية العالم. على سبيل المثال ، عند حساب قيم SRTM للنقاط في المسار أعلاه ، يظهر رسم بياني مختلف (الخط الأزرق):
مصدر الإزعاج الصغير هنا هو الحواف الخشنة للرسم البياني ، ولكن يتم تسوية هذا الأمر بسهولة. لاحظ أنه من خلال التنعيم ، نفقد القليل من الدقة (إن وجدت) ، نظرًا لأن SRTM نفسه يوفر فقط نقاطًا منفصلة في مواضع متساوية البعد ، والتي نحتاج إلى الاستيفاء بينها في أي حال. فيما يلي نسخة من الرسم البياني السابق مع تراكب خط أحمر يمثل بيانات SRTM المتجانسة:
كل هذا يمكن القيام به بسهولة ، بالمناسبة ، باستخدام مكتبات بايثون GPS الخاصة بي:
- srtm.py: محلل بيثون لبيانات ارتفاع مهمة طوبوغرافيا المكوك (SRTM)
- gpxpy: مكتبة python بسيطة لتحليل ومعالجة ملفات GPX (GPX ، تنسيق تبادل GPS ، هو تنسيق بيانات XML خفيف الوزن لبيانات GPS)
بالنسبة لمستخدمي Ruby ، هناك أيضًا مكتبة محلل Geoelevations.rb الخاصة بي لتموجات SRTM و EGM2008.
بعد اكتشاف هذه الحالات الشاذة ، اعتمادًا على نوع البرنامج الذي نعمل معه ، يمكننا إما (أ) تصحيح الأخطاء تلقائيًا بأنفسنا أو (ب) ببساطة إبلاغ المستخدم بأنه تم اكتشاف أخطاء في بيانات الارتفاع الخاصة به.
أيضًا ، نظرًا لوجود خوارزميات مختلفة يمكن استخدامها لتصحيح أخطاء ارتفاع نظام تحديد المواقع العالمي (GPS) برمجيًا ، فقد نرغب في منح المستخدم خيار تحديد الخوارزمية التي يجب استخدامها (على سبيل المثال ، هل يريد المستخدم منا فقط استخدام بيانات SRTM المتجانسة "كما هي" أو هل يريد المستخدم منا استخدام بيانات SRTM للمساعدة في تصحيح الارتفاعات التي أبلغ عنها الجهاز).
تمهيد المسار وإزالة القيم المتطرفة
إذا كان لاعب كرة القدم يرتدي جهاز GPS ويسجل لعبة ، فإن المسار الناتج سيكون في حالة من الفوضى. سيكون ميدان اللعب ممتلئًا بشكل كثيف بمسار يتألف من الكثير من المنعطفات الحادة والتسارع والتباطؤ.
لحسن الحظ ، فإن معظم الحالات التي يستخدم فيها الأشخاص نظام تحديد المواقع العالمي (GPS) لن يكون لها نفس النمط - ستكون خطوط تتبع نظام تحديد المواقع العالمي (والتسارع) سلسة نسبيًا. في مثل هذه الحالات ، يمكن افتراض أن النقاط غير المنتظمة في مسارنا ناتجة عن خطأ ، وبالتالي يمكن إزالة هذه القيم المتطرفة بشكل معقول باستخدام وظيفة التنعيم.
بصفتك مطورًا لنظم المعلومات الجغرافية ، يتم تحقيق التجانس بشكل شائع عن طريق التكرار عبر النقاط وتغيير الإحداثيات بناءً على قيم الإحداثيات المجاورة. على سبيل المثال ، يمكننا تغيير كل خط عرض وخط طول باستخدام خوارزمية مثل ما يلي:
points[n].latitude = points[n-1].latitude * 0.3 + points[n].latitude * .4 + points[n+1].latitude * .3 points[n].longitude = points[n-1].longitude * 0.3 + points[n].longitude * .4 + points[n+1].longitude * .3
كلما زاد المعامل ، زاد تأثير النقطة المجاورة المقابلة على الموقع المعدل للنقطة الحالية. المعاملات التي أستخدمها في هذا المثال (0.3 ، 0.4 ، 0.3) هي إلى حد ما arbtitrary ، ولكن في معظم الحالات سوف تريد أن يساوي مجموعها 1.0. (من الأساليب الأكثر تعقيدًا ، على سبيل المثال ، استخدام المسافة بين النقاط ، وبعد ذلك ، كلما اقتربت النقطة ، زاد المعامل المقابل.)

فيما يلي مثال لمسار به الكثير من الأخطاء العشوائية:
لاحظ كيف أن المسار لا يتبع المسار جيدًا ، ولديه الكثير من المنعطفات الحادة والخشنة ، وأحيانًا ينحرف تمامًا عن المسار المتوقع.
بعد عدد قليل من التكرارات "السهلة" ، يتم تحويل هذا المسار نفسه إلى:
في حين أن هذا أفضل بكثير ، إلا أنه لا يزال غير كامل. لاحظ أنه لا تزال هناك أماكن (خاصة بالقرب من منتصف المسار) حيث لا يزال المسار ينحرف عن الطريق.
هناك أشياء أخرى يمكنك تجربتها. في مناطق معينة ، وتطبيقات GPS معينة ، يمكنك أيضًا استخدام بيانات OpenStreetMap (OSM) لمحاولة تخمين المسار الصحيح ثم "محاذاة" النقاط إلى هذا الخط الجديد. على الرغم من أن هذا قد يكون مفيدًا في كثير من الأحيان ، إلا أنه قد يكون أيضًا غير كامل ، كما هو الحال في الحالات التي تحتوي فيها بيانات OSM على خطين متوازيين (على سبيل المثال طريق سريع وطريق قريب) أو العديد من المسارات القريبة.
في مثل هذه الحالات ، قد يكون أحد الحلول الممكنة هو محاولة اكتشاف نوع النشاط ، باستخدام بعض الأساليب التي تمت مناقشتها بمزيد من التفصيل في هذه المقالة. إذا استطعنا ، على سبيل المثال ، أن نستنتج أن المسار كان مسارًا للمشي لمسافات طويلة ولديه خيار الانجذاب إلى طريق سريع أو مسار قريب ، يمكننا أن نفترض بأمان أن الارتفاع كان على طول المسار وليس الطريق السريع.
لاحظ أيضًا أنه على الرغم من أن هذا المثال يوضح تجانس إحداثيات السطح (مثل خطوط الطول / خطوط العرض) ، يمكن أن يكون التنعيم أسلوبًا صالحًا بنفس القدر للقضاء على الانحرافات في بيانات الارتفاع أو البيانات الزمنية ، أو حتى في بيانات معدل ضربات القلب وإيقاع الدراجات.
يمكن أن تتضمن أمثلة الفوائد والاستخدامات الإضافية للتنعيم ما يلي:
- حساب كسب الارتفاع الكلي. لحساب كسب الارتفاع الإجمالي في مسار ما ، لا يكفي مجرد جمع كل "القفزات" الصغيرة صعودًا لأنها غالبًا ما تحتوي على أخطاء صغيرة. غالبًا ما تساعد تسوية الارتفاع قبل إجراء المبلغ في تخفيف هذه المشكلة.
- إزالة الناشز. بعد "التنعيم" ، يمكن بسهولة اكتشاف النقاط البعيدة جدًا عن المسار. غالبًا ما يمكن افتراض أن هذه القيم متطرفة ويمكن مطالبة المستخدم بالسؤال عما إذا كان ينبغي إزالتها.
هناك نوع واحد من المشاكل حيث تقصر هذه الخوارزمية: في بعض الحالات سيسجل GPS مسارًا سلسًا ، لكن المسار سيتم "إزاحته" بفارق ثابت في بعض الاتجاه. في مثل هذه الحالات ، قد يؤدي التنعيم إلى زيادة سلاسة الخط ولكنه لن يصحح خطأ التحول هذا.
هناك مشكلة أخرى أقل وضوحًا ، لكنها مهمة ، تتعلق بتقنية التنعيم المبسطة التي وصفناها وهي أن التحويل يعدل جميع (أو جميع) النقاط في المسار ، حتى تلك التي قد لا تكون مخطئة. على الرغم من أن هذا النهج الأبسط يميل إلى أن يكون حلاً معقولاً لمستخدم GPS العادي ، إلا أنه من المؤكد أن خوارزميات التنعيم الأكثر تعقيدًا قابلة للاستخدام في برمجة نظم المعلومات الجغرافية. في بعض الحالات ، قد يكون من الأفضل إزالة القيم المتطرفة ببساطة دون إجراء أي تجانس اعتمادًا على المستخدم والجهاز والتطبيق.
الكشف عن السرعة القصوى
يعد اكتشاف السرعة القصوى للمسار أمرًا بسيطًا إلى حد ما إذا كان لدينا الإحداثيات والطوابع الزمنية لجميع النقاط على الطريق. ما عليك سوى حساب السرعات بين النقاط والعثور على أعلى قيمة. يبدو واضحًا.
لكن تذكر أننا نتعامل مع أجهزة GPS منخفضة الجودة ولا نثق تمامًا في البيانات ، والتي يمكن أن يكون لها تداعيات كبيرة على حساباتنا. إذا كان الجهاز يسجل موقعًا كل 5 أمتار ، وفي وقت ما أخطأ عن طريق وضع النقطة في غير مكانها بمقدار 10 أمتار ، فقد يبدو أن هذا الجزء من المسار أسرع بثلاث مرات مما كان عليه!
أحد الأساليب الشائعة في عالم تطوير نظم المعلومات الجغرافية هو استخراج جميع السرعات بين النقاط ، ثم إزالة أعلى 5٪ فقط (أي استخدم النسبة المئوية 95) على أمل أن تمثل نسبة 5٪ المحذوفة غالبية الأخطاء. لكن من المسلم به أن هذا غير علمي ولا يضمن النتائج الصحيحة. في تجربتي مع هذه التقنية ، جربت قيمًا مختلفة للنسب المئوية ووجدت أن بعضها يعمل جيدًا لجهاز GPS واحد ، والبعض يعمل جيدًا مع البعض الآخر. يعمل بعضها جيدًا للمشي لمسافات طويلة والبعض الآخر لركوب الدراجات. لكن في معظم الحالات ، لم تكن النتائج صحيحة بالنسبة لي.
بعد تجربة العديد من الخوارزميات ، كان ما نجح بالنسبة لي بسيطًا: إضافة مرشح آخر لإزالة التطرف ، ليس فقط بالسرعة ، ولكن أيضًا بالمسافة ، على النحو التالي:
- فرز النقاط حسب المسافة بين الجيران وإزالة أعلى 5٪.
- (اختياري :) قم بسلاسة المسار (أفقيًا و / أو رأسيًا).
- فرز النقاط حسب السرعة بين الجيران وإزالة أعلى 5٪.
من واقع خبرتي ، فإن هذه الخوارزمية تعطي نتائج موثوقة إلى حد ما ، حتى بالنسبة للمسارات من أجهزة GPS الرخيصة ذات الأخطاء العشوائية.
استنتاج نوع النشاط
في كثير من الحالات ، يكون متوسط السرعة كافياً لتحديد نوع النشاط. إذا كان متوسط السرعة 5 كيلومترات في الساعة ، على سبيل المثال ، فمن المحتمل أن يكون مسارًا للمشي / المشي لمسافات طويلة ، بينما إذا كان متوسط السرعة هو 30 كيلومترًا في الساعة ، فمن المحتمل أن يكون مسارًا لركوب الدراجات ، وما إلى ذلك.
ولكن إذا كان متوسط السرعة 12 كيلومترًا في الساعة ، فلا يمكنك أن تكون متأكدًا مما إذا كان المستخدم يمارس رياضة الجري أو ركوب الدراجات في الجبال. في مثل هذه الحالات ، يمكن أن تساعد السرعة القصوى أحيانًا في التمييز بين نوعي الأنشطة. على وجه التحديد ، يمكننا استخدام حقيقة أن العدائين نادرًا ما يصلون إلى سرعة تزيد عن ضعف متوسطهم ، في حين أن راكبي الدراجات يفعلون ذلك بانتظام (على سبيل المثال ، أثناء الانحدار في مسار غير صعب للغاية).
وفقًا لذلك ، تم تسجيل مسار بمتوسط سرعة 12 كيلومترًا في الساعة وسرعة قصوى تبلغ 18 كيلومترًا في الساعة أثناء الجري ، في حين تم تسجيل مسار بمتوسط سرعة 12 كيلومترًا في الساعة وسرعة قصوى تبلغ 30 كيلومترًا في الساعة أثناء ركوب الدراجات الجبلية. (بالطبع ، يجب أن نتأكد من أن السرعة القصوى المحسوبة لدينا صحيحة ، حتى يعمل هذا بشكل موثوق.)
النسبة المئوية للسماء المرئية: وكيل ذكي لاكتشاف أخطاء نظام تحديد المواقع العالمي (GPS)
تعتمد دقة كل قياس GPS (أي خطوط الطول والعرض والارتفاع) إلى حد كبير على عدد الأقمار الصناعية التي كانت مرئية وقت التسجيل. لذا ، إذا تمكنا بطريقة ما من تحديد عدد الأقمار الصناعية التي كانت "مرئية" في وقت كل تسجيل ، فيمكننا استخدام ذلك كطريقة لتقريب دقة ذلك التسجيل. إذا علمنا بطريقة ما ، على سبيل المثال ، أن جميع الأقمار الصناعية اللازمة لنظام تحديد المواقع العالمي (GPS) كانت معروضة ، فيمكننا افتراض درجة عالية من الدقة لبيانات GPS المقابلة. على العكس من ذلك ، إذا علمنا بطريقة ما أنه لا توجد أقمار صناعية لنظام تحديد المواقع العالمي (GPS) ، فيمكننا افتراض أن البيانات عرضة للخطأ.
ولكن قبل أن تشعر بالحماس الشديد ، فكر في مدى تعقيد محاولة حل مشكلة نظم المعلومات الجغرافية. بادئ ذي بدء ، ستحتاج إلى معرفة نظام (أنظمة) الأقمار الصناعية لنظام تحديد المواقع العالمي (GPS) الذي كان جهازك قادرًا على الاتصال به. يوجد نظام تحديد المواقع العالمي الأصلي ومقره الولايات المتحدة الأمريكية ونظام Gallileo الأوروبي ونظام GLONASS الروسي. تعمل بعض الأجهزة مع جميع أنواع الأقمار الصناعية هذه ، لكن العديد منها لا يعمل. والعديد من الأجهزة لا تبلغ حتى عن النظام (الأنظمة) الذي تستخدمه.
ولكن هناك طريقة ذكية للتحايل على هذا التعقيد وتحقيق تقدير تقريبي لعدد الأقمار الصناعية المعروضة: استخدم النسبة المئوية للسماء المرئية كبديل لعدد الأقمار الصناعية المرئية . تعني السماء الأقل وضوحًا أن نظام GPS الخاص بنا يمكنه "الرؤية" (أو الرؤية) بواسطة عدد أقل من الأقمار الصناعية. لكن كيف يمكننا حساب النسبة المئوية للسماء المرئية في أي نقطة على الأرض؟ الحل في الواقع بسيط للغاية: يمكننا حساب خط الأفق من حولنا باستخدام بيانات SRTM التي تمت مناقشتها مسبقًا.
على سبيل المثال ، هذا هو الأفق إذا كنت في وادي تريغلاف (أعلى قمة في سلوفينيا) كما تم حسابه باستخدام SRTM:
(للمهتمين ، يمكن العثور على الكود الخاص بي لإنشاء هذه الصورة هنا.)
تتكون هذه الصورة أساسًا من طبقات من الرسوم البيانية للارتفاع متساوية الأبعاد كما تُرى من نقطة مركزية. كلما كانت المنطقة الزرقاء أغمق ، زادت بعد طبقة الارتفاع ؛ كلما كانت المنطقة الزرقاء أفتح ، كلما اقتربت طبقة الارتفاع. تمثل أعلى النقاط المرسومة خط الأفق. إذا كان أحد الأقمار الصناعية لنظام تحديد المواقع العالمي (GPS) أسفل هذا الخط في السماء ، فمن المحتمل أن جهازنا لا يمكنه رؤيته (أو رؤيته). (لاحظ ، مع ذلك ، أنه على الرغم من رسم الصورة كمستطيل مسطح ، إلا أنك في الواقع ستحتاج إلى بعض المعرفة الأساسية بالهندسة الكروية لحساب المنطقة الواقعة أسفل الأفق بشكل صحيح.)
شيء آخر يجب مراعاته هو أن هذه ليست رصاصة فضية لاكتشاف أخطاء ارتفاع نظام تحديد المواقع العالمي (GPS). بادئ ذي بدء ، فإن معظم أجزاء الأرض ليست جبلية ، وحتى عندما تكون كذلك ، فإنه في علم النفس لدينا نبالغ في تقدير الارتفاعات ؛ النسبة الفعلية للسماء المرئية أكبر من 75٪ في الغالبية العظمى من المناطق المأهولة . ومع ذلك ، يمكن أن تكون هذه الطريقة مفيدة في مواقف معينة ، مثل المشي لمسافات طويلة في الجبال حيث قد تنتقل من التواجد في واد عميق (مع استقبال ضعيف لنظام تحديد المواقع العالمي (GPS)) إلى التواجد على سلسلة من التلال الجبلية (حيث ربما يكون استقبال القمر الصناعي أفضل بكثير). في حين أن هذه الطريقة ليست مقياسًا مطلقًا لعدد الأخطاء في المسار ، إلا أنها يمكن أن تكون مؤشرًا مفيدًا لأجزاء المسار التي قد تكون أكثر عرضة للخطأ من غيرها.
يتم إحتوائه
لقد ناقشنا بعض الأنواع الأكثر شيوعًا من أخطاء تتبع نظام تحديد المواقع العالمي (GPS) التي يمكن توقعها مع أجهزة GPS منخفضة الجودة. لقد قدمنا فهمًا لأسبابها بالإضافة إلى بعض تقنيات برمجة نظم المعلومات الجغرافية لتصحيحها.
في بعض الحالات ، يمكننا تصحيح المسار بدرجة عالية من الثقة. في حالات أخرى ، يمكننا على الأقل تنبيه المستخدم إلى أجزاء من المسار تبدو مشكوك فيها. في الحالات التي نكون فيها غير متأكدين ، هناك دائمًا خيار تمكين المستخدم من إصلاح المسار بنفسه ، بمساعدة الصور الجوية والخرائط. يمكن أن تساعد تخميناتنا الاحتمالية في إبراز تلك الأجزاء من المسار حيث اكتشفنا احتمالية أعلى لوقوع أخطاء.
في كثير من الحالات ، يمكن أن تكون التقنيات التي أوضحناها "حلاً بنسبة 80٪" مرضيًا ، حيث توفر لمستخدمي أجهزة GPS منخفضة الجودة مستوى معقولًا من التحسين الآلي لدقة مسارات GPS الخاصة بهم.