Содержание к диссертации
Введение
Глава 1. Анализ методов и средств диагностики рельсового пути 9
1.1 Обзор современных средств диагностики рельсового пути 9
1.2 Система МИСД-РП 12
1.3 Концепция системы ИОСД-РП 14
1.4 Анализ компонентов погрешности 17
1.5 Специализированный навигационный алгоритм для применения на железнодорожных путях 1.5.1 Учёт требований к траектории пути 23
1.5.2 Использование ММД для оценки скорости движения 26
1.5.3 Использование стыков в качестве НО 28
1.5.4 Учёт зон искажения сигнала СНС 32
1.5.5 Сильно связанное комплексирование с ДП 33
1.6 Выводы 37
Глава 2. Разработка алгоритма коррекции внутриоборотной погрешности ДП для навигации на РП 39
2.1 Алгоритм построения профиля поверхности катания колеса 41
2.2 Комплексирование данных
2.2.1 Модель погрешностей СНС 47
2.2.2 Модель погрешностей БИНС 49
2.2.3 Модель погрешностей датчика пути 52
2.2.4 Анализ погрешностей фильтра Калмана
2.3 Вопросы вычислительной устойчивости 60
2.4 Выводы 62
Глава 3. Разработка алгоритма распознавания профилей головок рельсов 64
3.1 Алгоритм выделения профиля головки рельса в видеосигнале сканера 66
3.2 Влияние фоновой засветки и прочих шумов на надёжность распознавания 71
3.3 Проблемы устойчивости распознавания сильно зашумлённого изображения 77
3.3.1 Настройка алгоритма 80
3.4 Оценка погрешностей 81
3.5 Выводы 82
Глава 4. Экспериментальные исследования 85
4.1 Структура системы 88
4.2 Вопросы синхронизации 91
4.2.1 Взаимоотношения временных шкал 93
4.3 Корректность и производительность алгебраических примитивов 97
4.3.1 Тригонометрические функции 98
4.3.2 Специальные тригонометрические алгоритмы 104
4.3.3 Извлечение квадратного корня 105
4.3.4 Оценка погрешности 1 4.4 Программное обеспечение 109
4.5 Анализ погрешностей 111
4.6 Повторяемость результатов 113
4.7 Выводы 116
Заключение 117
Список сокращений и условных обозначений 118
Список литературы 119
Список рисунков 132
Список таблиц
- Система МИСД-РП
- Модель погрешностей СНС
- Проблемы устойчивости распознавания сильно зашумлённого изображения
- Корректность и производительность алгебраических примитивов
Введение к работе
Актуальность темы. Железнодорожные пути— стратегические транспортные артерии страны, за состоянием которых необходим непрерывный строгий контроль. Катастрофы на путях железнодорожного сообщения приводят к многочисленным жертвам, транспортным коллапсам, многомиллионным убыткам, а в случае аварий при перевозке ядовитых веществ — к значительному экологическому ущербу.
Главной причиной этих катастроф являются не обнаруженные вовремя дефекты рельсовых путей.
Как объём перевозимых грузов, так и скорость движения поездов постоянно растут, что приводит к постепенному моральному устареванию используемых методов и средств диагностики рельсового пути. Поэтому научные исследования в области разработки новых средств являются актуальными.
Из многообразия систем диагностики рельсового пути можно выделить две основные группы: средства контроля коротких (импульсных) дефектов поверхности катания рельсов (дефектоскопы) и системы измерения геометрических параметров рельсовых нитей (путеизмерители). Для всех современных представителей как первой, так и второй группы важнейшим узлом является бортовая инерциальная система ориентации и навигации (ИСОН), без которой невозможно точное измерение параметров пути, а также локализация найденных дефектов (т.е. их привязка к путейской координате). Кроме того, инерциальные технологии широко используются и при поиске дефектов поверхности катания.
Основной проблемой современного путевого хозяйства является порочный круг, вызванный увеличением загруженности путей: большее количество проезжающих по пути поездов требует большего количества диагностических проездов, в то же время оставляя меньше возможностей для их проведения. Наиболее перспективным путём решения данной проблемы является разработка малогабаритных автономных систем диагностики, пригодных для установки на обычные, регулярно курсирующие локомотивы.
В работах [—3] описана разработка и внедрение малогабаритной инерциальной системы диагностики рельсового пути (МИСД-РП). Данная система способна измерять импульсные дефекты поверхности катания рельсового пути (пробуксовки, смятия, рифли и т.д.), в то же время обладая малой массой и стоимостью. Дальнейшим направлением работ в данной области должно стать расширение функциональности МИСД-РП в область измерения геометрических параметров пути, таких как шаблон (ширина пути), рихтовка и т.д., что позволит такой системе выдавать исчерпывающий список параметров пути.
Целью работы является разработка инерциально-оптической системы диагностики рельсового пути, предназначенной для оснащения регулярно курсирующих железнодорожных составов.
Для достижения поставленной цели необходимо решить следующие задачи:
-
Анализ методов и средств диагностики рельсового пути;
-
Выработка концепции построения комплексированной инерциально-оптической системы диагностики рельсового пути;
-
Разработка алгоритма коррекции внутриоборотной погрешности датчика пути;
-
Разработка алгоритма распознавания профилей головок рельсов в за-шумлённом сигнале оптических датчиков;
-
Реализация разработанных алгоритмов в виде программного обеспечения, пригодного к работе в режиме реального времени;
-
Проведение экспериментальных исследований инерциально-оптической системы диагностики рельсового пути.
Научная новизна:
-
Предложен метод сильно связанного комплексирования оптических датчиков с ИСОН, позволяющий перейти от одновременного измерения положения рельсовых нитей в трёх физических сечениях к последовательным измерениям с последующей алгоритмической обработкой, что даёт возможность снизить количество используемых оптических датчиков;
-
Предложен метод увеличения точности и надёжности распознавания профилей головок рельсов в данных оптических датчиков, основанный на предварительной грубой оценке положения изображения на матрице камеры датчика при помощи данных, получаемых из геоинформационной системы (ГИС), а также показаний ИНС;
-
Развит специализированный навигационный алгоритм для применения на железнодорожных путях, предложенный в диссертационной работе Боронахина А.М. [], путём учёта состояния поверхности катания колес вагона, что позволяет получить требуемую точность выработки путейской координаты и скорости движения от датчика пути (ДП), установленного на несущей колёсной паре, имеющей низкие требования к качеству поверхности катания.
Практическая значимость:
-
Разработан и реализован алгоритм сильно связанного комплексирова-ния показаний лазерных сканеров головок рельсов с ИСОН, позволяющий получить требуемую точность вычисления геометрических параметров пути от 2 лазерных сканеров вместо 6;
-
Разработан и реализован алгоритм учёта профиля поверхности катания колеса, позволяющий получить требуемую точность вычисления путейской координаты (порядка 0,01% вместо 0,1 %...0,5%) при установке дат-
чика пути вместо высокоточной метрологической тележки на несущую колёсную пару обычного вагона;
-
Разработан и реализован алгоритм распознавания изображения профиля головки рельса в сигнале лазерного сканера на фоне засветок и шумов, позволяющий сохранить конечную точность вычисления геометрических параметров пути, несмотря на уменьшение количества используемых сканеров;
-
Разработан, сконструирован и испытан рабочий прототип системы, пригодный для установки на реальный вагон;
-
Разработанные математические алгоритмы реализованы в виде программного обеспечения, способного управлять и получать данные от аппаратного обеспечения, обрабатывать их в режиме реального времени и предоставлять потребителю с частотой до 1кГц, что обеспечивает выполнение требований стандартов путеизмерения на скоростях движения до 300 км/ч.
Mетодология и методы исследования. Решение поставленных задач базируется на использовании основных положений теории интегрированных навигационных систем, векторной и матричной алгебры, теории статистической обработки, методах численного интегрирования, математического и имитационного моделирования, теорий управления, распознавания образов, систем реального времени, а также программирования ЭВМ.
Основные положения, выносимые на защиту:
-
Сильно связанное комплексирование ИСОН и оптических датчиков позволяет уменьшить количество последних при сохранении точности измерений;
-
Построение и дальнейший учёт модели состояния поверхности катания колеса увеличивает точность определения скорости движения;
-
Использование ГИС и инерциальных данных от ИСОН повышает точность распознавания профилей рельсов в зашумлённом видеосигнале от оптических датчиков.
Реализация и внедрение результатов работы. Работа проведена в рамках выполнения государственного задания по проекту № 8.1068.2014/K, тема «Разработка концепций построения микросенсоров для систем диагностики рельсового пути». Тема диссертационной работы тесно связана с работами по созданию компактных диагностических комплексов, проводимых АО «Радиоавионика». Значительная доля наработок и нововведений была разработана по заказу ООО «ИНЕРТЕХ». Основные теоретические и практические результаты работы были внедрены в учебный процесс Санкт-Петербургского государственного электротехнического университета «ЛЭТИ» им. В.И. Ульянова (Ленина) на кафедре лазерных измерительных и навигационных систем.
Апробация работы. Основные положения диссертационной работы докладывались и обсуждались на следующих конференциях:
-
Международная молодёжная научная конференция «Физика и прогресс» (2010), Петергоф, Россия.
-
Первая международная научно-практическая конференция «Интеллектуальные системы на транспорте» (2011), Санкт-Петербург, Россия.
-
Научно-технические конференции профессорско-преподавательского состава Санкт-Петербургского государственного электротехнического университета «ЛЭТИ» им. В.И. Ульянова (Ленина) (2011, 2012, 2015, 2016), Санкт-Петербург, Россия.
-
XVIII, XXI, XXIII Санкт-Петербургские международные конференции по интегрированным навигационным системам (2011, 2014, 2016), Санкт-Петербург, Россия.
-
XIII, XVI, XVII, XVIII всероссийские научно-технические конференции молодых учёных «Навигация и управление движением» (2011, 2014, 2015, 2016), Санкт-Петербург, Россия.
-
XXVIII конференция памяти выдающегося конструктора гироскопических приборов Н.Н. Острякова (2012), Санкт-Петербург, Россия.
-
Международные конференции «Inertial Sensors and Systems» (2012, 2014), Карлсруэ, Германия.
-
Заседание объединенного учёного совета ОАО «РЖД» (2012), Москва, Россия.
-
Международная конференция «Sensor Data Fusion: Trends, Solutions, Applications» (2014), Бонн, Германия.
10. Международные конференции IEEE North West Russia Section Yong Researches in Electrical and Electronic Engineering Conference (EIConRusNW) (2015, 2016).
Публикации. Основные результаты по теме диссертации изложены в 41 печатных изданиях, 6 из которых изданы в журналах, рекомендованных ВАК, 32 — в тезисах докладов, 20 содержатся в библиографической ба зе данных «Российский индекс научного цитирования» (РИНЦ), 3 содержатся в реферативной базе данных Scopus, 2 учтены в поисковой платформе Web of Science, а также в 4 патентах РФ.
Объём и структура работы. Диссертация состоит из введения, четырёх глав, заключения и трёх приложений. Полный объём диссертации составляет 145 страниц, включая 44 рисунка и 8 таблиц. Список литературы содержит 110 наименований.
Система МИСД-РП
Подавляющее большинство современных путеизмерительных систем использует БИНС универсального назначения, полностью (включая алгоритмическое обеспечение) разработанные сторонними фирмами-производителями без учёта особенностей навигации на железнодорожных путях. Список сторонних источников информации, используемых для коррекции инерциального навигационного контура, как правило, ограничивается показаниями ПА СНС.
В то же время движение по рельсовому пути накладывает гораздо более жёсткие ограничения на степени свободы движения вагона, чем движение абстрактного подвижного объекта. Эти дополнительные связи могут быть использованы для уменьшения погрешности навигационного контура. Кроме того, путеизмерительный вагон обладает большим количеством дополнительных источников данных о своём местоположении, в первую очередь — ДП (датчиком пути).
В диссертации А.М. Боронахина [1] предложен специализированный навигационный алгоритм, позволяющий значительно повысить точность выработки параметров ориентации и навигации на рельсовом пути, или, что то же самое, снизить точностные требования к используемым ЧЭ, добившись таким образом уменьшения стоимости системы. Для решения этой задачи в работе применяются следующие подходы:
1. В соответствии с ГОСТ, траектория рельсового пути в плане должна описываться одним из трёх полиномов и быть либо прямолинейной, либо круговой, либо переходной из прямолинейной в круговую. Этот факт позволяет связать параметры вектора состояния системы дополнительным уравнением.
2. При движении поезда через рельсовый стык, две колёсные пары тележки будут проходить этот стык последовательно, с временным интервалом, зависящим от скорости движения поезда. Так как межосевое расстояние тележки известно, а время между ударами колёс о стыки может быть измерено с высокой точностью, это позволяет вычислить скорость движения вагона и оценить погрешности ДП.
3. Рельсовый путь является квазистационарным, т.е. путейские координаты рельсовых стыков и других характерных точек пути не меняются со временем (за исключением случаев проведённого ремонта). Это позволяет накапливать данные о координатах этих характерных точек в централизованной базе данных, а затем запрашивать эти координаты из неё, используя таким образом неровности пути в качестве навигационных отметчиков (НО).
4. Железнодорожные пути характеризуются значительными искажениями спутникового сигнала из-за обилия нависающей инфраструктуры, такой как контактная сеть. При этом из-за использования слабо связанного комплексирования искажённый сигнал зачастую не может быть определён приёмником СНС, работающим в отрыве от остального оборудования (автономно), как непригодный к использованию. В результате в потоке данных, выдаваемых ПА СНС, появляется «выброс», маркированный как «достоверный» и пригодный для использования в задаче коррекции. Будучи введённым в навигационный контур, этот выброс резко снижает точность выдаваемых параметров ориентации и навигации.
Экспериментальные исследования показывают, что искажения сигнала СНС локализованы в определённых зонах. Применение вышеописанной централизованной базы данных позволяет, накапливая и анализируя данные СНС от проезда к проезду, обнаруживать эти зоны. После этого можно во время проезда заранее узнавать о приближении зоны искажения и отключать коррекцию навигационного контура от СНС, а после выхода из зоны — вновь включать. 5. ДП, которым оснащены все путеизмерительные вагоны и который является важнейшим источником данных о положении вагона, зачастую вообще не комплексируется с БИНС; в тех редких случаях, когда применяемая БИНС обладает соответствующим разъёмом и способна получать данные от ДП, для комплексирования используется примитивная математическая модель погрешностей ДП, не отражающая истинного характера ошибок.
Тщательный анализ этих ошибок и разработка детализированной модели погрешностей ДП, а также сильно связанное комплексирование ДП с БИНС, СНС и НО, позволяет получить максимально возможную точность вычисления параметров ориентации и навигации.
Рельсовый путь в плане может описываться либо прямой линией, либо дугой окружности, либо переходной кривой из прямого участка в круговой. Наличие переходных кривых связано с необходимостью плавного сопряжения кривой с примыкающей прямой как в плане, так и в профиле пути. Переходная кривая имеет переменный радиус, уменьшающийся от бесконечно большого до радиуса круговой кривой.
Таким образом, траектория может быть представлена последовательностью прямолинейных и криволинейных участков; последние, в свою очередь, характеризуются серией переходных и круговой кривых (рис. 1.9). Рисунок 1.9 — Возможные конфигурации железнодорожных путей в плане: , — оси правой ортогональной декартовой системы координат с началом в точке соединения прямолинейного и криволинейного участков пути и осью , сонаправленной с прямолинейным участком пути; 0, 0 — координаты начала круговой кривой; — радиус круговой кривой; 0 — угол наклона касательной в точке соединения переходной и круговой кривых Для дальнейшего использования при обработке информации априорного знания конфигурации участка, по которому перемещается подвижная единица, необходимо знать функционал, которым кривая может быть описана.
Модель погрешностей СНС
Так как длина неровности колеса на данном этапе неизвестна, нормирование ускорения в блоке Н осуществляется только на величину (2-7ги)2. Таким образом, исключается влияние скорости движения средства измерения на результат измерений.
Нормированные показания акселерометров (af для впереди идущего колеса, af — для следом идущего; м-1) анализируются при помощи автокорреляционного алгоритма в блоке КА. При этом рассчитываются 3 коэффициента корреляции: Дп и - 22, характеризующие корреляцию сигнала акселерометров на соседних оборотах колеса вагона (сдвиг сигналов друг относительно друга по датчику угла Аа = 360); и R\2 — коэффициент взаимной корреляции показаний датчиков, закреплённых на буксах двух следом идущих колёс вагона при прохождении одного и того же элемента рельсового пути (сдвиг сигналов друг относительно друга по показаниям ДП А/ = 2,4м).
Погрешность задержки А/, вводимой по показаниям ДП для вычисления взаимной корреляции i?i2, исследована в [3], где делается вывод о том, что при прохождении расстояния 2,4 м точность некорректированного ДП является достаточной. Погрешность сдвига Аа определяется исправностью ДП, т.к. ДП представляет собой инкрементный датчик угла и в нормальном режиме работы не допускает пропусков и двойных регистраций отсчётов.
Далее полученные коэффициенты корреляции сравниваются в блоке „ “. Если корреляция сигнала датчика на двух соседних оборотах колеса превышает взаимную корреляцию показаний ММА, закреплённых на буксах следом идущих колёс вагона, делается вывод, что на протяжении двух оборотов колеса (720 по показаниям датчика угла) полученные значения ускорений формируются в большей степени не геометрией рельсового пути, а самим колесом вагона. В этом случае соответствующие данному участку измерения акселерометров (ai 2i — нормированное ускорение для впереди и следом идущих колёс на J -ом участке с превышением R\\ и R22 над Rw) отправляются в блок статистической обработки (Ст.Об.).
Блок статистической обработки начинает выдачу данных только после накопления десяти отрезков af 2?-, характеризующих геометрию колеса. Данное ограничение вызвано необходимостью обеспечить СКО вычисления профиля колеса в рамках 0,1 мм, и определяется минимальной рабочей скоростью движения вагона во время проведения измерений (1 м/с) и СКО используемых акселерометров (0,5 м/с2).
Результатом работы алгоритма является набор из 144 векторов, в каждом из которых содержится 20 последних результатов измерений af 2j на разных оборотах колеса. (Число векторов определяется размером пятна контакта между колесом вагона и рельсом, которое имеет длину около 20 мм, что соответствует углу поворота колеса 2,5). Каждый из векторов анализируется на наличие выбросов при помощи критерия Зет (используется допущение о нормальном распределении результатов относительно истинного профиля колеса). Оставшиеся после отбраковки значения усредняются и рассчитывается их среднеквадрати-ческое отклонение.
В [60] указано, что процессе эксплуатации на поверхности катания появляется от одной до четырёх волн неровностей, что приводит к некруглости колёс. Это соответствует пространственной частоте 0,3 м-1...1,3 м-1 (при длине окружности колеса 950 7Г 2984 мм). Таким образом, для получения профиля колеса в единицах длины полученные средние значения для каждой из 144 точек нормируются на квадрат соответствующей длины периодической неровности (в соответствии с (2.2)).
С учётом того, что полезная составляющая сигнала имеет низкие пространственные частоты (не более 1,3м-1), рассчитанные профили колес h\ и /І2 (для первого и второго по ходу движения колёс вагона; мм) сглаживаются в блоке ФНЧ (фильтр низких частот). Результатом являются маски колёс h\ и h\ (мм).
Пример работы алгоритма приведён на рисунках 2.4-2.6. На рис. 2.4 показан ненормированный (т.е. без учёта длины волны неровности (2.2)) профиль одного из колёс вагона, определённый при помощи корреляционного анализа и статистической обработки по показаниям ММА во время экспериментального проезда МИСД-РП в составе диагностического комплекса «ИНТЕГРАЛ» на одноколейном участке рельсового пути Дмитровоград — Обамза.
На рис. 2.5 приведён пространственный спектр данного профиля. В соответствии с [60], физический смысл в полученных профилях имеют низкочастотные составляющие; как видно из графика, профиль в данном случает имеет значительную (на фоне других частот) низкочастотную составляющую (до двух
На рис. 2.6 приведён результат выделения низкочастотной составляющей из ненормированного профиля, и его нормировки по длине волны. Рисунок 2.6 — Выделение огибающей профиля колеса
Полученные таким образом данные о некруглости колеса и о профиле его поверхности катания позволяют компенсировать погрешность ДП; следовательно, можно утверждать об увеличении точности выработки значения пройденной дистанции по показаниям ДП.
Используемая в системе ПА СНС предоставляет доступ к данным псевдодальностей и псевдоскоростей спутников, а также спутникового альманаха и другой информации. Это позволяет реализовать сильно связанное комплекси-рование данных.
В данной работе была применена единая модель погрешностей системы, включающая в себя параметры всех узлов. При этом фильтр Калмана используется для комплексирования измерений всех датчиков, и включает погрешности этих измерений. Обновление навигационного решения происходит при получении данных всех типов (псевдодальности, угловые скорости, ускорения, данные датчика пути и т.д.).
В промежутках между приходом данных от ПА СНС навигационное решение вырабатывается по показаниям БИНС, с использованием текущей оценки погрешностей ЧЭ. (При этом обновления матрицы ковариаций погрешностей оценивания могут проводиться реже, чем при поступлении каждого конкретного измерения от ЧЭ; зачастую такой подход является необходимым, т.к. обновление матрицы ковариаций является наиболее дорогостоящим этапом Калманов-ской фильтрации с точки зрения вычислительных ресурсов). При получении данных о псевдодальности от ПА СНС, навигационное решение также обновляется; одновременно обновляются наблюдаемые оценки погрешностей (задержки распространения спутникового сигнала, погрешности ЧЭ БИНС и т.д.).
Проблемы устойчивости распознавания сильно зашумлённого изображения
В качестве выходных данных лазерный сканер генерирует поток профилей, каждый из которых представляет собой массив точек в виде двухмерных координат (,). Количество точек определяется разрешающей способностью сканера; например, для модели scanCONTROL 2750-100 оно составляет 640.
В нормальном режиме работы (т.е. при отсутствии посторонних предметов — травы, мусора и т.д. — между сканером и рельсом) эти точки должны описывать поперечный профиль рельсовой нити. При этом форма этого профиля известна заранее, и определяется номинальным сечением рельса в соответствии с ГОСТ 10791-2011. В зависимости от положения сканера относительно рельсовой нити полученный сканером профиль может иметь разное положение и угол наклона. Именно эти параметры и необходимо получить в процессе анализа данных, получаемых от сканера.
Таким образом, задача распознавания профилей, получаемых от сканера, состоит в нахождении такого набора преобразований , который отображал бы номинальный профиль в множество имеющихся точек, при этом оптимизируя некоторый параметр (назовём его параметр оптимизации ).
Набор допустимых преобразований отличается в зависимости от диапазона возможных перемещений сканера относительно исследуемого объекта. Принято выделять два набора: жёсткое и нежёсткое. Жёсткое преобразование представляет собой конгруэнтную (изометрическую) трансформацию1; по сути это означает применение операций поворота и параллельного переноса. Нежёсткое преобразование, помимо этого, допускает аффинные трансформации — масштабирование, наклон и т.д. Так как сканеры, используемые в системе, закреплены на балке, жёстко связанной с тележкой вагона, то отклонением ГОО сканера от перпендикуляра к рельсовой нити можно пренебречь; это позволяет ограничиться жёсткими преобразованиями. Иными словами, результатом работы алгоритма распознавания изображения должны быть три значения — линейные координаты (x,z), описывающие положение изображения рельса на матрице камеры, и угол наклона а рельса относительно камеры.
В качестве параметра оптимизации можно выбрать сумму квадратов Евклидовых расстояний между точками измеренного профиля и аналитической моделью номинального профиля: а [1 (АЛ), о) = у у [т — s) , теТ(М) seS где d () —функция расстояния, АЛ — множество точек, полученных от сканера, S — множество точек, описывающих номинальный профиль. Оптимизация такой функции при использовании жёстких трансформаций соответствует классической задаче минимизации наименьших квадратов. Однако такой подход чрезвычайно чувствителен к выбросам, и основанный на нём алгоритм показывает нестабильное поведение при анализе зашумлённых данных.
Для повышения стабильности распознавания необходимо введение в алгоритм некоторой робастной функции д (). сіроб. U (АЛ) ,о) = у у [д [га — S)) . тпеТ(М) seS Такая формулировка задачи известна под названием M-оценивания [91]. Для нахождения оптимального решения может быть применена теория графов, а именно алгоритмы поиска паросочетаний. Такой подход позволяет найти глобальный оптимум параметра оптимизации. Однако это требует значительного объёма вычислений, что делает использование такого подхода невозможным в реальном времени; вместо этого обычно применяются алгоритмы, позволяющие найти локальный оптимум параметра оптимизации. Недостатком
Также употребляется термин «движение». таких алгоритмов является требование изначальной близости множеств и ; в противном случае результатом работы будет являться неверный локальный оптимум, или, иными словами, сбой распознавания.
Первым шагом построения алгоритма распознавания является аналитическое описание номинального рельсового профиля. На рис. 3.3 приведён чертёж наиболее распространённого на территории бывшего СССР рельса Р65. Как видно, каждая из двух сторон головки описывается десятью кривыми, восемь из которых являются дугами окружностей и две — отрезками; соответствующие параметры приведены в табл. 3.1, 3.2. На рис. 3.4 показано представление номинального профиля набором дуг и отрезков.
Далее необходимо ввести некоторый функционал, позволяющий найти точку алгоритмического (номинального) профиля, ближайшую к данной точке. Для дуг эта задача сводится к построению отрезка, соединяющего данную 20 0 -20 -40 -60 -80 NT
Аналитическое описание рельса Р65 по ГОСТ Р 51685-2013 в виде дуг и отрезков. Номера отрезков, обозначенные цифрами, соответствуют табл. 3.1, 3.2. точку с центром дуги, и нахождению точки пересечения окружности и отрезка; если точка пересечения лежит за пределами дуги, в качестве расстояния используется расстояние до ближайшего конца дуги. Для отрезков строится перпендикуляр, проходящий через данную точку; если этот перпендикуляр пересекает прямую, содержащую отрезок, вне отрезка, в качестве расстояния используется расстояние до ближайшего конца отрезка.
Код функции на языке MATLAB, вычисляющий ближайшую точку номинального профиля для данной координаты, приведён в прилож. Б.
Пусть q — вектор преобразования, трансформирующий множество точек АЛ, полученных от сканера, в множество «S, описывающее номинальный профиль; q = [gVl fr], где g V —вектор параллельного переноса, qn — кватернион единичной нормы (версор), описывающий поворот изображения, соответствующий матрице направляющих косинусов 1Z. Для оптимального совмещения АЛ с «S, необходимо минимизировать функцию потерь [92]
Корректность и производительность алгебраических примитивов
В процессе обработки данных вычисляется большое число математических функций, таких как синус и косинус угла, квадратный корень и т.д. Все широко используемые стандартные алгоритмы, реализующие эти функции, основаны на использовании сходящихся числовых рядов.
Проблема использования этих алгоритмов заключается в том, что число членов ряда (т.е. количество производимых итераций) определяется во время расчёта, на основе анализа разницы между текущим и предыдущим значениями. Это делает такие алгоритмы непрогнозируемыми с точки зрения времени выполнения.
Разрабатываемая система является системой жёсткого реального времени, что подразумевает тщательное планирование распределения ресурсов центрального процессора для вычисления тех или иных компонентов алгоритма. Для проведения такого планирования необходимо точно знать верхнюю временную границу вычисления каждого участка программного кода.
В свете этого, требуется использование специализированных математических алгоритмов для расчёта тригонометрических и трансцендентных функций, которые позволяли бы получить приемлемую точность вычисления результата, при этом предоставляя гарантию времени выполнения.
Другой проблемой широко используемых алгоритмов расчёта алгебраических функций является их значительная погрешность для некоторых диапазонов аргументов, вызванная низкими требованиями по точности для большинства применений. Иногда такая низкая точность вызвана желанием оптимизации алгоритма по времени выполнения, иногда — ошибками в программировании. С учётом того, что разрабатываемая система позиционируется как метрологическое средство измерения, необходим тщательный анализ точности вычисления всех алгебраических примитивов во всём диапазоне значений входных аргументов.
Наибольшие затруднения вызывают трансцендентные функции, имеющие большое число различных реализаций на ЭВМ, отличающихся производительностью и точностью. При этом стандартные реализации, используемые по умолчанию (clib, uLibC, fdlibm, модуль libm библиотеки glibc), не всегда дают корректные результаты во всей области определения; при определённых значениях аргумента погрешность таких стандартных реализаций может быть недопустимо большой для решаемых в рамках работы задач.
Начиная с модели i486(DX), все процессоры фирмы Intel линейки x86 предоставляют инструкцию fsin, которая использует алгоритм CORDIC (COordinate Rotation DIgital Computer — цифровой вычислитель поворота системы координат; также известен как алгоритм Волдера). Официальная документация фирмы Intel [106] указывает максимальную погрешность результата работы данной команды как 1 ulp, что, однако, не соответствует истине. Реальная погрешность может составлять до 1018 ulp, что соответствует менее чем четырём верным битам в мантиссе результата. Данная ошибка в документации привела к широкому использованию инструкции fsin в различных математических библиотеках1. Аналогичные проблемы имеют и другие тригонометрические инструкции процессоров Intel (fcos, fsincos, fptan) [107].
Проверка. Убедиться в большой погрешности инструкции fsin можно, используя метод Ньютона: если сложить представление числа двойной точности с результатом работы функции sin(), аргументом которой является это же представление, то такая сумма должна являться представлением числа чет-1Напр., в письме https://gcc.gnu.org/ml/gcc/2001-08/msg00679.html автор ядра Linux Линус Торвальдс ссылается на документацию ф. Intel в качестве аргумента о допустимости использования инструкции fsin. верной точности, т.е. иметь около 33 корректных значащих цифр после запятой. Причиной такого результата является тот факт, что при значениях аргумента, близких к , значение синуса равно ошибке в представлении числа .
Вместо этого метод Ньютона показывает результаты, показанные в табл. 4.1, 4.2. Графики абсолютной ошибки инструкции fsin приведены на рис. 4.7а, 4.7б. Очевидно, что такие погрешности недопустимы для высокоточных вычислений.
Приведение аргумента к области определения. Первым шагом в вычислении синуса является приведение аргумента (который, в соответствии с документацией фирмы Intel, может принимать значения до 1018) к диапазону ±2. Данная проблема сама по себе является нетривиальной [108], но в окрестности для этого достаточно вычесть аргумент из представления требуемой точности, используя целочисленные формы чисел с плавающей точкой. (Иными словами, извлечь мантиссу и вычесть её из заранее известного целочисленного
Абсолютная ошибка результата инструкции fsin в окрестности 7Г (а) и во всём диапазоне области определения (б) представления мантиссы числа 7Г, после чего произвести корректное округление и перевести мантиссу обратно в число с плавающей точкой). При этом даже наихудшее значение погрешности окажется ближайшим представимым значением 7Г. В случае использования чисел двойной точности это соответствует мантиссе длиной 53 бита, отличающейся от 7Г максимум на 0,5 ulp. Следовательно, для получения 53 бит точности необходимо использовать представление 7Г, имеющее точность не менее 106 бит (т.к. половина бит будет потеряна при вычитании).
Проблема заключается в том, что регистры FPU архитектуры x87 имеют длину 80 бит (64 бита мантиссы). Таким образом, необходимо вычитать приводимое число из как минимум 128-битного представления числа 7Г. Однако процессоры Intel используют для этого мантиссу 7Г длиной всего 66 бит: C90FDAA2 2168С234 С В результате при использовании чисел двойной точности (53 бита мантиссы) вводится погрешность около 164 109ulp (порядка 37 бит). В случае же использования аргумента расширенной точности (80 бит мантиссы) произойдёт полная потеря точности, и погрешность составит около 1,376 109шр.
После приведения аргумента FPU производит собственно вычисление синуса, значение которого в окрестности 7Г равно самому аргументу. Таким образом, погрешность результата в этой окрестности равна погрешности приведения аргумента и составляет чрезвычайно высокую величину.