SASGIS - SAS.Планета
View Issue Details
0003175SAS.Планета[All Projects] Багpublic08-02-2017 12:4609-02-2017 19:33
netsky 
zed 
normalminoralways
resolvedfixed 
WindowsXPProfessional SP3
160707 
181221181221 
0003175: NMEA: Игнорируется статус "V" в RMC и GLL, и Position Fix Flag "0" в GGA
При холодном старте приёмник данные:
$GPGGA,123939.00,0000.0000,N,00000.0000,E,0,,,-18.0,M,18.0,M,,*59
$GPRMC,123939.00,V,0000.0000,N,00000.0000,E,00.00,000.0,,,,N*41
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,2,1,05,05,00,000,31,07,00,000,47,08,00,000,35,28,00,000,39*72
$GPGSV,2,2,05,30,00,000,47*4C
$GLGSV,1,1,03,66,00,000,50,75,00,000,50,76,00,000,43*52
Но SAS почему-то игнорирует флаги о не валидности координат V и 0 и показывает, что я нахожусь в точке с координатами 0,0 и на высоте -18м. (Скрин 1)

Когда приёмник вычисляет верные координаты и SAS их читает, то я мгновенно перемещаюсь из 0,0 в текущие координаты. При этом пройденный путь возрастает на 7000км. (Скрин 2)

Есть другой приёмник, который при холодном старте выдаёт:
$GPGGA,235950.010,,,,,0,00,,,M,0.0,M,,0000*5F
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,12,02,00,000,48,06,00,000,50,12,00,000,47,19,00,000,43*7A
$GPGSV,3,2,12,01,00,000,,03,00,000,,04,00,000,,05,00,000,*78
$GPGSV,3,3,12,07,00,000,,08,00,000,,09,00,000,,10,00,000,*7D
$GPRMC,235950.010,V,,,,,,,070810,,,N*4A
И SAS отрабатывает правильно.

Возможно SASPlanet не нравится, что приёмник выдаёт 00,0000.0000,N,00000.0000,E,0,,,-18.0,M вместо пустых полей или всё же она не распознаёт флаги V и 0 в GPRMC и GPGGA?
gpx, nmea
png 1.png (67,450) 08-02-2017 12:46
https://bugtracker.sasgis.org/file_download.php?file_id=2143&type=bug
png

png 2.png (70,514) 08-02-2017 12:47
https://bugtracker.sasgis.org/file_download.php?file_id=2144&type=bug
png

patch 3175.patch (1,449) 08-02-2017 14:34
https://bugtracker.sasgis.org/file_download.php?file_id=2145&type=bug
Issue History
08-02-2017 12:46netskyNew Issue
08-02-2017 12:46netskyFile Added: 1.png
08-02-2017 12:47netskyFile Added: 2.png
08-02-2017 12:49netskyNote Added: 0017809
08-02-2017 14:33zedNote Added: 0017810
08-02-2017 14:34zedFile Added: 3175.patch
08-02-2017 19:10netskyNote Added: 0017811
09-02-2017 19:29zedNote Added: 0017812
09-02-2017 19:30zedStatusnew => resolved
09-02-2017 19:30zedFixed in Version => 181221
09-02-2017 19:30zedResolutionopen => fixed
09-02-2017 19:30zedAssigned To => zed
09-02-2017 19:32zedTarget Version => 181221
09-02-2017 19:32zedSummaryИгнорирование статуса V в RMC и Position Fix Flag 0 в GGA => NMEA: Игнорируется статус "V" в RMC и GLL, и Position Fix Flag "0" в GGA
09-02-2017 19:33zedTag Attached: gpx
09-02-2017 19:33zedTag Attached: nmea

Notes
(0017809)
netsky   
08-02-2017 12:49   
P.S. Трек пройденного пути тоже рисуется, но при создании скринов забыл включить его отображение.
(0017810)
zed   
08-02-2017 14:33   
Да, эти параметры не учитывались. Поправил, но не уверен что все правильно. Потестируйте вот этот бинарник: https://yadi.sk/d/5AuL8qVS3DXs6g
(0017811)
netsky   
08-02-2017 19:10   
Не гуру в коде, но вроде похоже на правду!
Да и само тестирование подтвердило правильность решения - всё работает как часики!
Старые приёмники так же были протестированы - замечаний в работе не выявлено.

P.S. А для справки какие вообще сообщения распознаёт SAS?
Я так понял RMC, GGA, GSV, GSA точно, а есть ещё какие?
(0017812)
zed   
09-02-2017 19:29   
Раз заработало, то ок, будет в ночнушке.

>RMC, GGA, GSV, GSA точно, а есть ещё какие
Ещё GLL только я в тестовом билде не добавил проверку флага для этого типа сообщений. В ночнушке будет и там проверяться.