GPS с гироскопом и одометром.

Точность проезда тоннелей ухудшается от многократного изменения скорости движения в тоннеле (типа пробки-маневров итп) а также при поперечном уклоне проезжей части на виражах или просто для водоотведения. Если первый фактор может нивелироваться при многократных прогонах одного тоннеля, то что делать со вторым - непонятно. Трехосевой гироскоп не предлагать - на нем изза вертикальной тряски такие огромные массивы паразитных данных образуются что работает еще хуже. Полумываю о гиростабилизированных платформах. :roll_eyes:

у китов юблоксовских ничего вроде особенного и нет,
а прошивку тесловскую было бы неплохо и скачать и опубликовать :O)
я хотел 8U перепрошить на 8L но так никак и не собрался.

Надо будет поглядеть как там поживает мой зоопарк из sirf2, 3 и 4.
“Базовую” неделю наверняка можно перепрошить (но я ее в свое время не нашел AFAIR).

А в чём проблема M8 чипа? Я понял что их много и их никто не решил, но не понял, что за проблемы.

Я притащил NEO M8L и пытаюсь разобраться.
Я правильно понимаю, что в него вместо wheeltick и fwd можно выдавать посылки UBX-ESF-MEAS (0x10 0x02) ?
И писать ему надо время, кол-во тиков и направление?
Похоже выдача ему тиков напрямую выглядит более как-то более точно.
Не могу найти даташит на него, везде пишут что вся документация на него закрыта… может есть у кого?

У меня проблем с ним никаких, он показывает вертящиеся свои гироскопы и считает нормальные пульсы по мере их поступления, а не через какое-то время пока их некий счетчик сосчитает. Кроме того можно теоретически убиться и сделать передачу цифр с одной машины-марки, при этом запуск системы на другой марке-модели выливается в полный ниокр с нуля. 10 автомобилей - 10 ниокров, в трех из них почти нерешаемый изза какихто дурацких особенностей протоколов корейцев/китайцев/французов/немцев таких, немцев сяких. А vss - это как общепринятый формат данных, готовыми блоками 99% машин обслуживается, на стандартных блоках собирается.

Пример интегрированного CAN-VSS адаптера.

С 8 чипом одна проблема - он по-умолчанию считает high-forward, то есть любая нормальная машина все время едет у него задним ходом, поэтому калибрация даже не начинается и узнать что он думает в тоннелях при этом невозможно.
Да, и проблема с документацией есть, все методом тыка и снифферов делается. Доков и ответов на вопросы нет.

Крайне сомнительно выглядит идея подключения трех гироскопов - кроме поворота авто вокруг вертикальной оси больше ничего в расчетах не участвует, а попытка сделать поправки главной оси из информации о бортовой и продольной качке кмк глупо также как и попытка выяснить истинную скорость по линейному акселерометру полному шумов и непонятно как определяющему нулевую скорость. В математике впринципе много нерешаемых задач, удивительного ничего нет.

Вторая сомнительная идея - засовывание гироскопов в сборку с кучей цифровых шумов. Сколько мы сломали копий раздвигая эти блоки, экранируя, снижая шумы, еле добились приемлимых результатов на LEA-6R, как все в помойку у 8ых, все свалили в одну кучу.

Я понимаю, маркетолухи требуют невозможного, но законы физики всеравно круче и их не отменит даже самый МВАистый маркетолух. Вот эта идея сделать инерциалку без поключения к одометру - чушь полнейшая. Также и с 8 чипом почти.

временная метка (прямо из CAN пакета), скорость и бит направления.

Для 6R была некая урезанная докуметнация остальное можно додумать из дизассемблированного
u-center.exe
Возьметесь описать в вики детали, я добавлю свои 5 копеек.
Приемник с LEA-6R (на старомодной плате Intel Galileo-1) и EVK-M8L (и M8U и M8F и F9T и тд) у меня есть.

На 6R как раз нормальная была документация, описание протокола и system integration manual. А что еще нужно?

Спасибо, примерно понятно. M8U вполне понятная история, очень много применений, где wheeltick даже рядом нет.
А GPS + инерционная система, это сильно лучше, чем только GPS. В последней прошивке, они пообещали, что без импульсов скорости она будет работать как m8u. Но у меня чип с предыдущей. И где найти свежую, не ясно.
В общем надо пробовать.

Посмотрел вчера/сегодня в can своего автобуса. Раз в 100мс он обновляет счетчик инкрементов и пишет скорость. И даже направление вращения колеса есть. (Как он определил напр. вращения по одному датчику, пока загадка) Всё по каждому колесу 48 импульсов на оборот. А вот общей скорости пока не обнаружил…

Надо все 4 колеса отдавать? Или два задних достаточно?

А что можно достать из дизассембл. u-center?

Писать в вики пока рано. Надо что-то запустить. Хотя бы в режиме proof-of-concept.

9 серия на 27% больше каналов и 4 одновременные спутниковые системы, любопытно…

+100

Раз в 100мс - это супер. 48пульсов на оборот - мега супер. Не знаю что за автобус, но скорее всего digitalcar can адаптер прочитает его и нагенерит пульсов. Он с переключаемыми частотами и настраеваемый. Задний ход в CANах обычно еще проще находится.

Берут сигнал с одного заднего колеса. Если нужен трек биже к осевой линии дороги - то на левое. Если в OSM чаще приходится отрисовывать рисунок бордюрных камней - то на правое. Антенну тоже есть смысл магнитить куда-то в районе этого же колеса.

Автобус Мерседес Виано.
Антенна уже стоит штатная, думаю что её и использую. Кан адаптер мне не нужен, я сам его его соберу, это для меня не сложно, а скорее интересно. Ну и чем меньше “черных ящиков” тем проще дебажить. Но, попробую, сначала, через meas сообщение закидывать ему данные. Думаю, возможно это лучше чем преобразовывать в тики и подсовывать тики.

Вот только мне кажется лучше два колеса ему подсовывать. Там же в сообщениях есть 5 полей. 4 колеса и общая скорость.
Думаю, что 4 не нужно, а вот 2 колеса, левое/правое, то что надо. В теории m8l может по ним понимать, поворачивает машина или нет.
А кстати остальные колеса, могут помочь при пробуксовках, автобус заднеприводный.

PS. А вы телеграмом не пользуетесь? Может туда перенести совсем технические обсуждения, они тут, по-моему, не совсем в тему?
Например сюда - @carpc

Да, были такие чипы, которые по разнице вращения задних колес определяли поворот, вместо гироскопа. Navis такие делал и достиг практических результатов. Но у них именно два счетчика стоит на входе.

10 лет катаюсь с инерциалками и оказалось очень сложно ее обмануть - даже 6чип четко отображает полный комплект скольжений, боевых-полицейских разворотиков итп. Единственный случай ошибки - если отключить антибукс и буксовать долго и упорно (привет акпп) - курсор на карте на секундочку убегает вперед и примерно за секунду оказывается в нужном месте после сцепления колес с дорогой – поворт же он не с руля берет, а истинный поворот корпуса всего авто считает.

В-общем при картографировании есть много проблем как вести машину с ИНС для качественных теков, но проблема пробуксовок в этом списке примерно на последнем месте. С автобусом кстати придется напрячься и избегать многочастных разворотов во дворах.

Спасибо за приглашение, @carpc, осваиваюсь…

Антенна (встроенная) на крыше обычно стоит над задней осью и прошивке надо (в идеале) сообщить
о смещении в ENU (смотрите мануал на u-blox8).
Передавать можно и 4 колеса, но этот DR вариант (ESFDWT) скорее всего не используется после LEA-4R.

Много чего. Например добавьте опцию “-sfdr” в u-center ‘Settings’ (Preferences->Program options).

Датчик должен знать вращается колесо по часовой или против часовой стрелки.

Не, датчик не может этого знать, импульсы симметричные, энкодерные зубцы ступицы пока не изобрели, зато любое CAN устройство видит включение задней передачи так как этот бит есть и CAN-high и в CAN-low, вобщем везде продублирован. Для проверки можете скатиться задом с горки на нейтралке не включая задней передачи. :smiley: только не забудьте тормозом полностью остановить машину прежде чем включать какие-либо другие передачи.

Положение антенны по-центру задней оси вообще ничем не ухудшит навигацию так как в dr режиме спутниковые сигналы играют лишь вспомогательную роль и плюсминус полметра без rtk не дадут. То есть если у Вас будет несколько треков одной и тойже дороги снятые в разные дни с разным расположерием спутников (возможно) эти все треки придется параллельным сдвигом положить друг на друга т.к. относительная точность ИНС на порядок выше абсолютной точности GPS.

Что-то я поискал ENU в protocol description и ничего не нашел.
Это смещение чего от чего? Антенны от модуля? Модуля от колеса?

Я так понимаю, что модуль M8L надо ставить как можно ниже, к оси колес, что бы он меньше ловил “паразитных” перемещений кузова при кренах и кочках. Или пофигу?
А расстояние от антенны до модулю, кроме ослабления сигнала, как-то еще влияет?
На взгляд дилетанта, длина провода добавляется к каждому “измерению сигнала спутника”. В моём случае это 4-5 метров. Должно же влиять.

Я был такого же мнения, пока позовчера не проснифил кан.

Машина поднята на подъемнике, включено зажигание, руками вращается колесо. АКПП на нейтрали, машина заднеприводная.
Руками вращается любое(!) колесо и я в кане вижу: счетчик импульсов, что-то пропорцианальное скорости вращение колеса и направление вращения(!!!) колеса.
Думаю, что датчики на ступице научились измерять направление вращения. Это догадка, но я обязательно это выясню.
Я сам прифигел, когда это увидел. Но вроде лажануть-то тут негде…

Старые датчики, что холла, что импульсные, конечно, этого не умели.

Там использутся NED (тот же ENU только EN переставлены местами а U заменено на D - вверх/вниз).
и обсуждается геометрическая связь VRP, CRP и IMU
Включите “-sfdr” и увидите установки ESFLA и т.п.
Кстати в ESF-MEAS сообщении 11 (Speed) скорость только положительная ?


0       No Data
1?      Front Wheel Angle
2?      Rear Wheel Angle
3?      Pitch
4?      Steering Wheel Angle
5       Gyroscope Z
6       Wheel Tick FL
7       Wheel Tick FR
8       Wheel Tick RL
9       Wheel Tick RR
10      Single Tick
11      Speed
12      Gyroscope Temp.
13      Gyroscope Y
14      Gyroscope X
15?     Proc. Latency
16      Accelerometer X
17      Accelerometer Y
18      Accelerometer Z
19?     Barometer
20?     Azimuth
21?     Roll
22?     Magnetometer X
23?     Magnetometer Y
24?     Magnetometer Z
25?     Barometer Temp.
26?     Compass Temp.
27?     Temperature

Что-то, ничего не меняется от добавления -sfdr в Tools->Preferences->Generic->Program options.
u-center v.19.08.01
Судя по даташиту:
поля 6-10 bit 0-22 unsigned int; bit 23 direction.
поле 11 m/s * 1e-3 signed.

Должны появиться дополнительные сообщения в F9->UBX типа CFG-ESFLA.

Это для тиков (6,7,8,9), тогда надо вычислять их из скоростей отдельных колес, зная средний радиус колеса.
Я имел в виду Speed (11), что такое “24бита signed”, старший 24бит это знак/направление ?

Простите, немного оффтоп. А для смартфона бывает что то вроде инерционных систем определения положения? В программном виде. Или это фантастика?

Это не оффтоп, это практически FAQ уже.

  1. В инерционных (инерциальных) системах основной первичный компонент - система счисления пути. Одометр, обороты винта подлодки или торпеды, что угодно, но считаемое. Гироскопы-акселерометры это уже вторичное, даже самое неточное, что требует постоянной коррекции от GPS, итп. То есть для построения минимально-работающей системы нужно как минимум подключиться к пульсам скорости. Вычислять скорость по mems акселерометрам более 2х минут - это действительно фантастика (в программном виде нерешаемая задача)

  2. Для качественной спутниковой навигации нужна хорошая антенна и желательно чтобы у нее был хороший обзор неба. То есть мобильник под крышей в салоне, где полнеба закрыто крышей, полгоризонта торпедой, а остальное экранируется стеклами с металлическим напылением - самая плохая комбинация из всех возможных. Да еще и в городе дома мешают, в лесу мокрые деревья итп. То есть получение качественных спутниковых сигналов в кармане, сумке или бардачке - это фантастика (в программном виде нерешаемая задача)

  3. Гироскопы - да, есть в мобильнике, их много, у кого-то получше, на андроиде похуже, но это относительно недорогие детали (особенно барахло в мобильниках). То есть при острой проблеме счисления пути и острой необходимости качественных спутниковых сигналов они уже ничем не помогают.

У смартфона есть куча неоспоримых достоинств, в-основном связанных с мобильностью и приватностью. Поэтому идеальная система для мобильника - внешнее вычисление координат инерциальными методами где-то в недрах авто, с антеннами где надо и сигналами одометра откуда надо, а потом, готовые координаты можно по блютусу без проводов передать в любимый смартфон с любимым навигационным софтом, или софтом про камеры и т.п. Тогда проводов действительно никаких к телефону не нужно, в крайнем случае в дальних поездках - зарядка для мобильника, но это уже не в “программном виде” ))) пример установки

ps. Вчера на внутреннем ТТК на выезде из лефортовских тоннелей смартфон оборался про камеру на скорость 60кмч. Как ее отследить без инерциалки - непонятно. https://mapcam.info/speedcam/point.php?idm=hgJWwpqzD8p

У нас в гидрографии в эпоху до RTK GPS, да и сейчас тоже вдали от берега, используются т.н. компенасторы качки для эхолота, чтобы компенсировать вертикальное перемещение трансдьюсера с точностью ~5 см. Это по сути акселерометр с двойным интегрированием. Внутри чувствительное пъезокерамическое кольцо размером емнип 6-8 см. Размер прибора - металлический цилиндр диаметром 10-12 см, высотой около 30 см, вес около 5 кг. Его запрещено класть горизонтально. На верхней грани приклеена стеклянная колбочка (примерно как советский предохранитель), если во время перевозки прибор тряхнули свыше определённой ударной нагрузки - колбочка лопается и краснеет, значит прибор непригоден к использованию т.к. пьезоэлемент мог выйти из строя.

А теперь смартфон со своим MEMS-сенсором (сколько там микрометров ?) и магнитным компасом, который роняют, крутят на 360° и пр. У инженера, хоть немного понимающего в INS, это г.но, кроме улыбки, ничего не вызывает. При двойном интегрировании ошибки нарастают в геометрической прогрессии.

Импульсы с колёс это практически измерение расстояния. Без интегирования, даже без одиночного интегрирования. Отсюда продольная точность. Поперечная (курс) естественно деградирует со временем, т.к. тоже двойное интегрирование “гироскопов”. В кавычки я взял, т.к. если использовать нормальный гирокомпас (на основе раскрученного маховика), как в военных топопривязчиках, то там будет только одиночное интегрирование т.к. курс - абсолютный.

Спасибо за ответы.