СТРУКТУРА МОДЕЛИ КОМПОНЕНТА СИСТЕМЫ АВТОМАТИЗИРОВАННОГО МОДЕЛИРОВАНИЯ РОБОТОТЕХНИЧЕСКИХ КОМПЛЕКСОВ
А.Н. Горитов
Одним из важнейших элементов системы автоматизированного моделирования робототехнических комплексов (архитектура которой предложена на с. 17-19 настоящ. ном. журн.), является библиотека моделей компонентов (БМК). Основу БМК составляет базисный набор моделей компонентов, который включает в себя минимально необходимое множество моделей, достаточных для моделирования широкого круга различных механических устройств. Модели БМК можно разделить на следующие классы: трехмерные твердотельные примитивы, кинематические узлы, источники идеальной скорости, источники усилий, динамические компоненты и измерители.
Трехмерные твердотельные примитивы (параллелепипед, цилиндр, конус, усеченный конус, шар, цилиндр с осевым отверстием) служат основой для конструирования пространственных исполнительных механизмов робототехнических комплексов (РТК), объектов манипулирования и технологического оборудования.
Кинематические узлы задают подвижные соединения двух типов: линейное перемещение и вращение, то есть перемещение вдоль одной из осей координат или вращение вокруг одной из осей координат. Допускается последовательное соединение моделей кинематических узлов, с тем чтобы задавать сложные законы перемещения твердотельных примитивов.
Источники идеальной скорости состоят из следующих моделей: постоянной скорости, постоянной скорости с плавным включением, постоянной скорости с плавным включением и задержкой, импульсной скорости, поступательного движения с синусоидальным законом изменения скорости.
Источники усилий состоят из моделей постоянной силы, постоянной силы с плавным нарастанием, импульсной силы и с синусоидальным законом изменения силы.
Динамические компоненты (такие как упругость, демпфер, инерционность) учитывают упругодемп-фирующие силы, возникающие в реальных механизмах в процессе их работы.
Измерители составляют компоненты, измеряющие координаты текущего пространственного положения заданной точки звена исполнительного механизма РТК и относительного линейного перемещения и вращения в звеньях исполнительного механизма.
Перечисленный набор моделей компонентов составляет основу БМК и базисный набор моделей компонентов, с помощью которого формируются математические модели исполнительных механизмов моделируемых РТК и их рабочего пространства. Методы, положенные в основу системы моделирования,
позволяют каждому пользователю самостоятельно строить модели необходимых механических конструкций. Пользователь может дополнять библиотеку моделей и развивать ее в соответствии со спецификой решаемых задач.
В реальных конструкциях используется большое количество однотипных объектов, состоящих из совокупности жестко связанных между собой элементов механической конструкции. Одни и те же совокупности элементов могут встречаться в различных механических устройствах, отличаясь друг от друга значениями параметров. Такие объекты будем называть деталями [1]. Эффективность системы моделирования значительно повышается, когда наряду с базовыми моделями компонентов в нее записываются и модели деталей. Это позволяет накапливать библиотеку довольно сложных деталей, что упрощает и делает нагляднее описание сложных механических объектов. Одновременно происходит настройка системы моделирования на специфику исследуемых механизмов и РТК.
С помощью предложенного способа формируется описание рабочих сцен [2], таких как совокупность компонентов, деталей и изделий. Составные части рабочих сцен могут быть описаны в виде деталей или изделий и затем включены в библиотеку. Таким образом, БМК позволяет накапливать отлажен-
Вход
Вычислить номер компонента в списковом описании цепи
Сформировать начальные данные вычислительной модели компонента
у/ Я=2 Г"
Сформировать ис- Проверить те- Рассчитать
ходные данные кущую точку на динамические
для вычисления геометрическое параметры
матриц перехода противоречие компонента
Рис. 1. Структура модели компонента
20
ные математические модели деталей и изделии и затем использовать их как составные части при построении моделей сложных РТК и рабочих сцен.
Модель компонента представляет собой достаточно сложный вычислительный модуль, который тесно взаимодействует с вычислительным блоком системы моделирования. Для обеспечения такого тесного взаимодействия разработана обобщенная структура модели компонента и определены режимы ее работы. Обобщенная структура модели компонента приведена на рисунке 1. Текущий режим работы модели задается вычислительным ядром системы моделирования и передается в модель компонента значением переменной Я.
Рассмотрим основные блоки модели компонента.
1. Блок задания начальных значений формирует начальные значения переменных, используемых вычислительными моделями компонентов.
2. Блок вычисления функций перехода с помощью подпрограмм модуля формирования модели вычисляет матрицы перехода между локальными системами координат связанных компонентов и между локальной системой координат компонента и неподвижной системой координат. Компонент может быть базовым или присоединенным. Положение базового компонента задается относительно неподвижной системы координат, которая служит основой для формирования всей рабочей сцены, включающей РТК, объекты манипулирования и различное технологическое оборудование. Положение присоединенного компонента задается относительно локальной системы координат компонента, к которому присоединяется текущий компонент.
Для базового компонента выполняются следующие операции:
а) вычисление матрицы перехода из связанной системы координат компонента (ССК) в неподвижную систему координат (НСК) и вектора координат центра НСК в ССК;
Выполнить развертку
по объему (подпрограммы вычислительного блока системы моделирования)
Выполнить развертку по
поверхности (подпрограммы вычислительного блока системы моделирования)
Выход
Рис. 2. Развертка модели компонента
б) занесение в стек координаты всех точек присоединения (точек связей) для присоединенных компонентов.
Для присоединенного компонента выполняются следующие операции:
• выбор из стека координаты точек связи предшествующего компонента с текущим компонентом;
• вычисление матрицы перехода из ССК текущего компонента в НСК, а также координаты центра ССК в НСК;
• занесение в стек координаты всех точек связей с присоединенными компонентами.
3. Блок развертки модели компонента обеспечивает выдачу координат точек Р(хР,уР,гР), принадлежащих заданному компоненту. В зависимости от значения управляющего параметра развертка может выполняться по объему или по поверхности моделируемого компонента. Шаг развертки является переменным и автоматически выбирается в пределах Ишт-Нмах, значения которых указываются в задании на моделирование. Развертка модели компонента выполняется подпрограммами вычислительного блока системы моделирования. Обобщенная структурная схема блока развертки модели компонента приведена на рисунке 2.
4. Блок проверки на геометрическое противоречие выполняет пересчет координат проверяемой точки в ССК текущего компонента, а также проверку на попадание в область компонента. Если точка попадает в область компонента, то формируется сообщение об имеющем место взаимопересечении компонентов с помощью программы блока выходной информации. Для того чтобы избежать повторных сообщений о взаимопересечении пары компонентов, происходит запоминание информации о каждой паре взаимопересекающих-ся компонентов с помощью подпрограммы вычислительного блока системы моделирования. Эта же подпрограмма следит за общим числом взаимопересечений среди объектов моделируемой рабочей сцены. Геометрический анализ РТК рассмотрен в [3]. Структурная схема блока проверки на геометрическое противоречие приведена на рисунке 3.
5. Блок кинематических расчетов включает в себя уравнения для вычисления линейных и угловых скоростей и ускорений, а также уравнения для вы-
Пересчитать координаты проверяемой точки в ССК проверяюще]
Рис. 3. Проверка на геометрическое противоречие
21
числения сил и моментов. Уравнения записаны в рекуррентной форме. Вычисление кинематических параметров механизма выполняется в два прохода. Первый проход обеспечивает вычисление линейных и угловых скоростей и ускорений, второй служит для вычисления сил и моментов [4,5]. Использование уравнений в рекуррентной форме позволяет провести кинематические расчеты без составления матричной системы уравнений и последующего ее решения.
6. Блок динамических расчетов модели компонента включает в себя уравнения, обеспечивающие расчет функционирования исследуемого устройства с учетом упруго-инерционных сил, возникающих в процессе функционирования исследуемого механизма. Как и в блоке кинематических расчетов, уравнения представлены в рекуррентной форме. Решение дифференциальных уравнений осуществляется на основе явных формул численного интегрирования, что позволяет сохранить рекуррентную форму уравнений, по которым выполняются динамические расчеты.
7. Блок планирования траектории. Данный режим используется моделями компонентов, участвующих в работе алгоритмов построения плана траектории перемещения схвата манипулятора.
Планирование траектории перемещения схвата манипулятора при выполнении заданной технологической операции является одним из этапов синтеза законов управления манипулятором. Данная задача может решаться для рабочей среды без препятствий,
с известным расположением препятствий и в среде с неизвестным расположением препятствий.
Подытоживая, отметим, что мы рассмотрели основные принципы построения БМК, способов ее развития и единой программной организации модели компонента. Каждый компонент работает в тесном взаимодействии с управляющим модулем системы моделирования РТК. Совокупность компонентов является важнейшей составной частью системы автоматизированного моделирования РТК, так как обеспечивает описание геометрии исследуемого механизма, различного типа кинематических звеньев, внешних силовых воздействий, упруго-демпфирующих свойств исследуемых РТК и тому подобное.
Список литературы
1. Горитов А.Н., Дмитриев В.М. Анализ управляемых механических систем с геометрической интерпретацией рабочего пространства. Геометрический и кинематический анализ. -Томск: Изд-во ТУСУР, 1998. - 120 с.
2. Горитов А.Н. Имитационное моделирование управляемой механической системы и ее рабочего пространства. // Приборы и системы. Управление, контроль, диагностика. -2000.- № 5. - С. 11-13.
3. Горитов А.Н. Геометрический анализ механизмов и управляемых механических систем. // Приборы и системы. Управление, контроль, диагностика. - 2000. - № 10. - С. 19-22.
4. Филонов И.П., Анципорович П.П., Акулич В.К. Теория механизмов, машин и манипуляторов. - Мн.: Дизайн ПРО, 1998. - 656 с.
5. Фу К., Гонсалес Р., Ли К. Робототехника. / Пер. с англ. -М.: Мир, 1990.
РЕШЕНИЕ ЗАДАЧИ КОММИВОЯЖЕРА МЕТОДОМ РАСШИРЕНИЯ ЦИКЛА И ОЦЕНКА ЕГО ЭФФЕКТИВНОСТИ
Е.А. Берзин, Д.В. Смирнов
Особенностью многих комбинаторных задач является проста и наглядность их содержательной постановки и в то же время сложность формализации и решения. Классическим примером подобной задачи является задача коммивояжера, которая состоит в определении такой последовательности однократного посещения всех п-1 пунктов с возвращением в исходный пункт Ак, при которой суммарная длина пройденного пути минимальна. Расстояния Сщ между каждой парой пунктов Аi Аj
известны и заданы матрицей с=||с| j || •
В комбинаторной постановке задача состоит в поиске кратчайшего маршрута, проходящего через все вершины графа, с возвращением в исходную вершину
Ак (вместо ЦВк)=Ц<к,..., У,...,к>) для краткости пишется
Ь<к,...,,у,...,к>):
Ь(Бк) = Ь(кг..,и...,к) =
2 Сщ
№Бк
> ш1п,Бк е {БкЬ
Бк
где Вк=(к,...,1,Щ,...,к) - упорядоченная последовательность номеров пунктов (кортеж), посещаемых коммивояжером при их последовательном обходе; Ь(Бк) -длина проходимого при этом пути (при постановке в фор-
ме задачи математического программирования громоздкость записей значительно возрастет).
Поскольку между начальным и конечным пунктами находятся п-1 остальных, то общее число возможных замкнутых маршрутов (циклов) равно (п-1)!, что практически исключает возможность перебора всех возможных вариантов при значениях п, представляющих практический интерес.
К настоящему времени существует достаточно большое число точных и приближенных методов решения задачи коммивояжера. Точные методы [1] требуют больших объемов вычислений, а известные приближенные не гарантируют точность решения, и объем счета остается весьма значительным. Наиболее успешные реализации приближенных алгоритмов, полностью автоматизированные на ЭВМ, связаны с двумя схемами решения: схемой улучшения исходного цикла (схема А) и схемой последовательного построения цикла (схема В).
Предлагаемый метод расширения цикла (МРЦ) ближе примыкает к схеме В, однако отличается от нее тем, что в качестве исходного берется уже готовый цикл с одной промежуточной вершиной: Бк = (к; щ; к). На
22