Д. Е. ОХОЦИМСКИИ, А. К. ПЛАТОНОВ, Г. К. ВОРОНИН,
И. И. КАРПОВ, Е. И. КУГУШЕВ, Ю. М. ЛАЗУТИН,
В. Е. ПАВЛОВСКИЙ, В. С. ЯРОШЕВСКИЙ
Электронная версия – Тимонов А.В.
Для обеспечения возможности достаточно автономного функционирования автоматический шагающий аппарат должен быть оснащен системой сбора информации о местности, по которой ему надлежит перемещаться. Предполагается, что измерительная система способна определять расстояние от фиксированной точки аппарата до точки пересечения измерительного луча с опорной поверхностью. Направление луча может изменяться, когда это необходимо для получения более полной информации о местности. Первичные измерения проходят несколько стадий обработки и фильтрации для выделения объектов и принятия решения о целесообразном характере движения аппарата с учетом свойств местности и параметров преодолеваемых препятствий.
Схематическое изображение шестиногого шагающего аппарата [1,2] с дальнометрической измерительной системой представлено на рис.1.
На рис. 2 дана структурная схема системы управления движением аппарата. Система информационного обеспечения (ИС) получает и перерабатывает информацию о местности, взаимодействуя с системой построения движения (СПД), которая на основе полученной информации строит движение корпуса аппарата, выбирает точки постановки ног на местности, определяет следовое расписание, обеспечивающее заданный запас статической устойчивости аппарата, и формирует движение конечностей [2].
Исполнительная часть системы управления реализует синтезированное движение с учетом информации от тактильных датчиков, расположенных на концах конечностей. При моделировании системы на ЭВМ функцией исполнения является также построение движущегося изображения на экране дисплея для отображения результатов моделирования в виде, удобном для разработчика.
Под задающим блоком понимается система более высокого уровня, определяющая цели перемещения аппарата и формирующая для него более близкую двигательную задачу. Так, например, это может быть блок, передающий информацию о трассе и скорости движения в случае, когда эти величины задаются водителем-оператором. При автоматическом выборе трассы и скорости перемещения их формирование должно происходить на основе данных, получаемых системой информационного обеспечения.
Исследования показывают, что организация системы управления получается более удобной и гибкой, если обмен между ИС и СПД происходит не непосредственно, а через специальный монитор, координирующий работу ИС и СПД и обеспечивающий их взаимодействие, что оказывается особенно существенным в трудных ситуациях при движении по местности со сложным рельефом.
На ранних этапах исследования было сделано предположение о цилиндрическом характере препятствий, причем предполагалось, что движение происходит перпендикулярно направлению препятствий (рис. 1). В этом случае осмотр местности вдоль трассы движения оказывается достаточным, чтобы обеспечить получение информации, необходимой как для выбора закона движения корпуса, так и для выбора мест постановки ног на местность и траекторий переноса ног. Для местности более общего вида принятие решения о движении аппарата требует, вообще говоря, более сложной процедуры осмотра. Отметим, что при этом в большинстве случаев процесс осмотра может быть сведен в основном к измерениям вдоль правой и левой следовой колеи и проверке проходимости для пространства между колеями.
Следует отметить, что рассмотрение цилиндрических препятствий явилось чрезвычайно полезным, так как позволило на более простом случае отработать рациональную логику работы ИС и логику взаимодействия между ИС и СПД, а также произвести необходимые доработки в СПД. Это существенно облегчило завязку алгоритмов управления движением при перемещении шагающего аппарата по поверхности более общего вида.
При построении логики работы информационной системы был принят
принцип многоуровневости. Процесс получения информации о местности включает три уровня: измерение и формирование подробной модели местности; предварительная обработка и построение огрубленной модели; опознавание типов препятствий с формированием их признаков и формальных параметров (рис. 3). Координация работы уровней ИС осуществлялась монитором ИС.
Процесс измерений заключался в формировании направления линии визирования и определении отвечающей этому направлению наклонной дальности. В регулярном случае направление линии визирования выбиралось постоянным с таким расчетом, чтобы обеспечить просмотр поверхности вдоль трассы вперед по движению аппарата на расстояние порядка 1.5 длины корпуса. Сканирование местности при постоянном направлении измерительного луча происходило за счет перемещения аппарата.
Подъем измерительного луча производился в тех случаях, когда необходимо было ускорить получение информации о местности. Логическое условие подъема луча имеет вид
{[С Д (нет информации Vнельзя прервать обработку) ]V
V [скачок дальности] V [наклон поверхности резко изменился]}
(подъем луча не завершен}.
Здесь С — запрос СПД через монитор о рельефе местности на большем удалении от шагающего аппарата, чем, то, для которого информация о местности была сообщена СПД.
Если в процессе измерений возникали скачки дальности, то невидимые части поверхности либо квалифицировались, как преодолимая щельг либо, если скачок дальности был достаточно велик, включался режим ожидания для дополнительного осмотра после более близкого подхода аппарата к препятствию. Принятие решения об этом производилось монитором, координирующим работу ИС и СПД.
При «заглядывании» за препятствие в процессе дополнительного осмотра измерительный луч приводится первоначально в предельно низкое положение, допускаемое препятствием, а затем в процессе измерений постепенно поднимается.
Обработка измерительной информации проводилась в несколько этапов. Первый этап обработки проводился на нижнем уровне ИС (рис. 3), и заключался в преобразовании результатов измерений наклонной дальности в декартовы координаты поверхности и формировании буфера подробной модели местности. Степень подробности модели определялась частотой измерений. Если участок памяти ЭВМ, отведенный под буфер подробной модели, заполнялся весь, то новая информация поступала на место наиболее старой.
На следующем этапе путем переработки подробной модели строилась огрубленная модель рельефа, состоящая из отрезков большей длины. Цель построения огрубленной модели состояла в отсеивании несущественных деталей и сохранении лишь тех особенностей рельефа, которые существенны для принятия решения о движении аппарата.
Построение огрубленной модели проводилось следующим образом. Пусть z(х) —подробная модель поверхности, ε — величина допустимой погрешности. Было установлено пять классов крутизны наклона профиля, (рис. 4)
1. Наступать нельзя — крутой подъем.
2. Наступать можно — подъем.
3. Наступать можно — ровно.
4. Наступать можно — спуск.
5. Наступать нельзя — крутой спуск.
Номер класса обозначался буквой N. Крутизна наклона s участка профиля между опорной точкой обработки аi(x0, z0) и текущей точкой ai(xi,zi)
определялась по формуле
По величине крутизны s участок а0аi относился к одному из перечисленных пяти классов.
Вершины Ak(xk zk) огрубленной модели получались путем использования фильтра с памятью. Фильтр был настроен на какой-то один из классов крутизны, и в нем хранилась опорная точка а0. При обработке текущей точки иг вычислялась крутизна для участка а0аi. Если вычисленная крутизна принадлежала тому же классу, на который был настроен фильтр, то точка а0 из дальнейшего рассмотрения исключалась и заменялась точкой at. Если крутизна принадлежала к другому классу, то точка а0 оставалась неизменной.
Перенастройка фильтра на другой класс крутизны происходила при одновременном выполнении двух условий: 1) переход отрезка а0аi в другой класс по крутизне; 2) выход точки аi — из круга радиуса е с центром в точке а0 (рис. 4).
При перенастройке фильтра опорная точка а0 рассматривалась как конец очередного отрезка огрубленной модели профиля и пересылалась в массив {Ak}.
Участок огрубленной модели оканчивался также в случае, если его проекция на ось х начинала превышать некоторую фиксированную длину. Эта длина была подобрана так, чтобы погрешность огрубленной модели по вертикальной координате не превышала ε.
Если в текущей точке at наблюдался скачок дальности, то отрезок а0аi заносился в огрубленную модель со специальным значением номера класса N=6.
Результатом построения огрубленной модели являлась последовательность вершин {Ah} и последовательность номеров классов крутизны {Nk} Последовательность {Nh} использовалась верхним уровнем ИС для опознавания типов препятствий.
Для ускорения процесса опознавания участки последовательности {Nh} специальным образом кодировались. Допустим, что необходимо идентифицировать k последовательных отрезков огрубленной модели, определив их принадлежность к определенному типу препятствий. Имеем последовательность номеров M(Nit N2, …,#ft). Если тi — максимальное значение элемента с индексом i этого набора, ni — его минимальное значение, а kmax — максимальное значение, которое может принимать число k
для различных участков ломаных, входящих в рассмотрение, то точке М в k-мерном пространстве можно взаимно-однозначно поставить в соответствие число Lм по следующей формуле:
Смысл ее заключается в том, что вектор M(N1, N2j . . . , NА) записывается в экономной системе счисления, основание которой, вообще. говоря, переменно от разряда к разряду. В качестве таких оснований для записи отличия компоненты Ni (при 1≥2) от ее минимального значения пi выбра-
Рис. 5. Организация связей словаря «ситуация — объект»
но произведение увеличенных на единицу разностей максимального и минимального значения предшествующих компонент. Последнее слагаемое, отвечающее старшему разряду, вводит в LM дополнительную информацию о количестве компонент вектора M(N1 N2, …,Nk), отвечающего рассматриваемому набору отрезков огрубленной модели.
При отработке алгоритмики взаимодействия ИС и СПД было взято kmax=3,mi=6,ni=1. Формула для определения LM приобретает тогда вид
С помощью описанного процесса перенумерации все возможные ситуации взаимного расположения нескольких последовательных отрезков огрубленной модели, соответствующие рассматриваемым типам препятствий, были сведены в упорядоченный список их номеров L. Построенный таким образом словарь «ситуация — объект» можно легко изменять и наращивать.
Ситуации, получающейся в результате обработки измерений, отвечает вычисленное по формуле число LM. Если эта ситуация входит в комплект ситуаций, занесенных в словарь, то число LM должно совпасть с одним из номеров L во входном массиве словаря. Так как идентификаторы препятствий L, хранящиеся в этом массиве, упорядочены, то на идентификацию препятствия затрачивалось максимум log2l+l операций, где l — длина массива. Если во входном массиве словаря число L не было найдено, то производилась попытка идентифицировать участок огрубленной модели, получаемый из ранее рассмотренного добавлением одного нового отрезка.
Структура словаря приведена на рис. 5. Для внесения в словарь новых идентификаторов препятствий и установления их связей через указатели с соответствующими программами использовалась специально созданная система диалоговых подпрограмм.
Для уменьшения загрузки ЭВМ при обработке измерений и построении огрубленной модели был использован принцип программируемой фильтрации. Поступающие измерения сравнивались в специальном фильтре с ожидаемыми значениями, прогнозируемыми заранее по результатам проведенного опознавания характера опорной поверхности. При совпадении (в пределах принятой допустимой погрешности) прогнозируемой и поступающей измерительной информации программа обработки, предназначенная для формирования огрубленной модели, не включалась. Это позволило примерно на порядок увеличить скорость получения информации о рельефе, необходимой для нормальной работы СПД. В случае несовпадения поступающей и прогнозируемой информации включалась программа обработки, затем программа идентификации, после чего монитор ИС осуществлял прогноз профиля поверхности н производил настройку фильтра. Подобный фильтр функционально соответствует аппарату акцептора действия, описанному в [3]. Использование принципа программируемой фильтрации позволяет резко сократить потоки информации внутри информационной системы.