Промежуточный драйвер GPS постоянно возвращается 0 0 LAT LNG

Я в замешательстве, потому что знаю, что состояние моего устройства GPS и состояние обслуживания включены, но спутники в поле зрения и широта / долгота не указаны. Я настроил мои программы для использования порта GPD1и мое оборудование использует COM7, Кажется, это правильная конфигурация. Почему я ничего не возвращаю?

1 ответ

Решение

Широта и долгота заполняются, только если есть Фикс (действительная географическая позиция):

            // call native method passing in our native buffer
            int result = GPSGetPosition(gpsHandle, ptr, 500000, 0);
            if (result == 0)
            {
                // native call succeeded, marshal native data to our managed data
                gpsPosition = (GpsPosition)Marshal.PtrToStructure(ptr, typeof(GpsPosition));

                if (maxAge != TimeSpan.Zero)
                {
                    // check to see if the data is recent enough.
                    if (!gpsPosition.TimeValid || DateTime.Now - maxAge > gpsPosition.Time)
                    {
                        gpsPosition = null;
                    }
                }
            }

Для определения местоположения (действительной позиции) GPS требуется как минимум три действительных спутника.

Посмотрите мой пример GPS, который я связал с другим вашим вопросом. Он покажет дополнительную справочную информацию о том, что происходит с сигналами GPS.

Совет: время первого исправления (TTFF) может длиться до 15-20 минут при свободном обзоре неба, если нет альтернативного источника данных EE, а модуль GPS не перемещается слишком сильно. Данные EE строятся из спутниковых трансляций, скорость передачи данных очень низкая. Данные EE также могут быть предоставлены через Интернет-соединение для передачи данных, но их использование зависит от используемого модуля GPS. Эти данные EE указывают реальное положение всех спутников GPS за две недели. Если приемник GPS выключен и перемещен на ~200 км, местоположение должно быть рассчитано по базе (может быть еще 15 минут).

В действительности, современные GPS-приемники предоставляют альтернативные "каналы" для данных EE, например, GPSeXtra (интернет-данные) или GPS-помощь с помощью MS (идентификатор и местоположение башни сотового телефона).

Другие вопросы по тегам