umots DGPS не использует фазу, там в принципе не может быть float/fixed решения. Разве что в RTKNav режиму DGPS даётся какое-то иное определение...
у меня есть эталонное решение, сейчас на память не помню, завтра если не забуду, выложу сюда результаты работы РТКлиба. Базовая линия 33 км
Добавлю, что расхождение на средней широте между значениями по Ln или по Le: в 0.1 секунды = 3 м. в 0.01 =0.3 м. в 0.001 =0.03 м. и т. д..
а) 37,00557 37,00560 расхождение (если оно есть) 0,0001 - 3мм б) 49,76490 49,7647 0,0002 - 6 мм Паспортная точность РТК - 10+33км*1мм/км=43 мм плановая какие-то фантастические показания точности в РТК режиме.
Alex_jet Так вы выбрали мгновенное значение, которое оказалось близко к эталонному. У вас на скриншоте разброс как раз и есть около 3см в разные стороны.
да это я понимаю, но все равно, довольно точные результаты. Учитывая что РТК либ через одно место работает с ГЛОНАСС. Это режим без ГЛОНАСС, т.к. РТКлиб не дает решение с ГЛОНАСС. То ли ГЛОНАСС "портит" решение, толи РТКлиб коряво работает, толи у меня руки толи все вместе взятое)))
На моей памяти вы первый кто провел такую точную проверку алгоритмов RTKLib на хорошо измеренной базе и с профессиональными приемниками/антеннами, по крайней мере в RU-сегменте. Отличные результаты, искреннее спасибо.
Следующая задача состоит в том, чтобы "вскрыть" алгоритмы и решить РТК режим от двух базовых станций. Эталоны у меня есть. Кто может помочь - велком. Делаю сам для себя - вне рамок коммерческих исследований, если это получиться - то решение будет доступно для всех (если делать на библиотеках РТКлиб)
имхо самый "простой" (но не простейший) способ - считать два (и более, в зависимости от количества станций) вектора и делать уравнивание. Веса автоматически подстраивать в зависимости от условий: - длина базы, например по приведенной выше формуле 10мм+1мм/км; - float/fixed решение для конкретного вектора.
соглашусь с вами. у меня ход размышлений следующий: 1. устанавливая две базовых станций на точки с известными пространственными координатами получаем эталонное расстояние, через которое мы можем контролировать вообще качество решения гнсс путем сравнения с известной длиной, и, если получиться, вводить поправки на разницу гнсс-вектора и расчетного по координам. 2. одновременно решаем два вектора и сравниваем, если получаем, например, больше чем 2 см - то решение не принимаем и пишем, что идет сбой решения даже не смотря на то, что все решения фиксированные. Если меньше 2 см - то осредняем с учетом веса. 3. решаем сразу неоднозначность путем добавления в одну систему уравнений данных с двух базовых станций и одного ровера. Либо ускоряем решение либо увеличиваем надежность решения (?). Наверно, этот путь более правильный, но требует программирования и умения решать неоднозначность. 4. комбинировать все 3 способа. Профессор ответил, почему глонасс плав.решение дает: Dear Alexei If you use difference receiver for base and rover, IFB (inter frequency bias) in receiver disturb GLONASS ambiguity fixed. Next probability is GLONASS ephemeris errors which is relatively larger than GPS. Tomoji TAKASU Tokyo University of Marine Science and Technology 2-1-6 Etchujima Kohtoh-ku, Tokyo, Japan, 135-0044 Email: ttaka@yk.rim.or.jp, Tel/Fax: 03-5245-7365 WWW: http://gpspp.sakura.ne.jp
Подскажите, может ли эта программа помочь мне решить эту задачу: http://geodesist.ru/forum/threads/Преобразование-gps-координат-в-линейное-расстояние.16566/
Нет. Это скорее исследовательский софт, не имеющий пока практического применения. Функции счисления расстояния в нём нет, интерфейс далёк от реальных геодезических/ГИС задач.
IMHO Межканальные сдвиги у Глонасса влияют только если брать оборудование разных производителей, при работе с одинаковыми приёмниками межканальные сдвиги взаимно уничтожаются, также как и неточности эфемерид на коротких базах. Тем не менее за более чем 12 часов в RTKLib все флоат решения легли в круг радиусом 30 см, что заслуживает только уважение. Использовался только Глонасс L1/L2, длина базовой линии ~ 18м. На графике - отклонение от базы в плане.
камрад, подскажи, это какая библиотека в матлабе? не из easy? как данные с приемника загнал туда?(я профан в матлабе) как сохранил данные и передал в отрисовщик?
скоро будут готовы результаты обработки от двух базовых станций (моделирование). http://ustinov.fr/forum/viewtopic.php?f=2&t=4235&start=10
ult Первые результаты, 4 измерения в разное время, РТКлиб, 2 станции имитируют базовые станции, 1 база - имитирует ровер. Ориентация приемников - "в линейку" (не треугольник): База А - 20 км База Б - 33 км. База А -> Ровер <- База Б РТК - 1 сек. B и L урезаны, т.к. повторяются. Остались одни секунды. КОНТР - эталонное значение. 12,84427" 14,05638" 152,73600 м Оценка = Решение-Эталон. Пример: Вектор А - реш. фикс 12,8447 14,0555 152,749 Вектор Б реш фикс 12,8433 14,0588 152,748 Вес вектора А - 0,6119 Вес вектора Б - 0,3880 Решение по весам: А*0,6119+Б*0,3880= 12,844157 14,056781 152,748612 Эталон: 12,84427" 14,05638" 152,73600 м Разница: B-0,00011" L-0,00040" H-0,01261м 0.00011"= 3,3 мм 0.001=0.03*с0s() 0.0004"=0.003мм*4=0.012mm*cos(?)=6 mm? Разница только по вектору А: 12,8447 12,84427 -0,00043 =12мм 14,0555 14,05638 0,00088 152,749 152,7360 -0,01300 Разница только по вектору Б: 12,8433 12,84427 0,00097 14,0588 14,05638 -0,00242 152,748 152,7360 -0,01200 Разница по "весовому" вектору АБ: 12,84416 12,84427 0,00011 = 0,00 1 0,003 14,05678 14,05638 -0,00040 152,74861 152,73600 -0,01261 Относительное улучшение решения: по B -1,0 -3,8 8,6 по L -1,0 -2,2 6,0 где 1 - это решение по вектору АБ, остальные улучшение по вектору А и Б соответственно. Вывод, по вектору А улучшение решения в 2,2-3,8 раза, по вектору Б - 6-8,6 раз!!! Критикуйте, очень хочу разобраться и "добить" РТК от двух баз.
>> На графике - отклонение от базы в плане Alex, спасибо за внимание, только до корифеев этого форума мне ещё очень далеко. Вот RTKLib никак не заставлю выдавать фикс для Глонасса :( А с графиком всё просто. 1. В RTKLib в диалоге "Output Streams" (кнопка "O" в правом верхнем углу) в лист-боксе "Format" выбираем "E/N/U - Baseline"- выдача относительных измерений Output file path: sol1_05_ml.log 2. Записываем сессию; 3. В Matlab'e пишем: parse_rtklib('sol1_05_ml.log'); , где parse_rtklib - название функции в файле parse_rtklib.m 'sol1_05_ml.log' - файл решения Собственно parse_rtklib.m файл: находим индексы standalone решений ( r - red ), float ( b - blue) fixed (g - green) k5 = find(A(:, 6) == 5); 6 - столбец качества решения; 5 - standalone собственно строим график plot(A(k5,3), A(k5,4), 'or','MarkerFaceColor','r'); 3 - столбец east 4 - столбец north Писался только чтоб работал