Рекурсивный метод поиска базовых инерционных параметров манипуляционных механизмов - page 19

для пятизвенного механизма с вращательными сочленениями это зна-
чение равно
47118
×
50
. Для приведения матрицы координат к ступен-
чатому виду применяется модифицированный алгоритм исключения
Гаусса с частичным выбором ведущего элемента
7
.
Из определения матриц
˜
A
следует, что они содержат много нуле-
вых элементов. Это, очевидно, справедливо и для остальных матрич-
ных коэффициентов, вычисляемых на основе
˜
A
. Поэтому еще одним
источником повышения быстродействия является специализирован-
ное представление всех этих разреженных матриц, ориентированное,
главным образом, на минимизацию времени выполнения операции
умножения матриц. В данной реализации использовалось упрощен-
ное представление в виде ассоциативного массива, содержащего в ка-
честве данных ненулевые элементы матрицы, а в качестве ключей
— соответствующие им линейные индексы. Под линейным индексом
здесь понимается натуральное число, вычисляемое как
l
=
in
+
j
,
где
i
— номер строки,
j
— номер столбца, а
n
— число столбцов ма-
трицы. Очевидно, что при известном размере матрицы номер строки
и столбца определяется однозначно для каждого значения линейного
индекса:
i
=
l/n, j
=
l
%
n,
где под операцией «
/
» понимается целочисленное деление, а под опе-
рацией «
%
» — остаток от целочисленного деления. Отметим, что ин-
дексы
i, j, l
отсчитываются от нуля. Это позволяет исключить избы-
точные операции при пересчете матричных индексов в линейный и
наоборот. Недостатком этой реализации является необходимость по-
стоянного извлечения матричных индексов элемента из его линейного
индекса при выполнении операции матричного умножения. Но, по-
скольку такая реализация применяется к разреженным матрицам не-
большого размера (и соответственно с небольшим числом ненулевых
элементов), заметного понижения быстродействия не происходит. Од-
нако, если такое допущение не справедливо, необходима полноценная
реализация механизма разреженных матриц с хранением обоих ин-
дексов
8
.
Пример работыприложения.
Автором разработана программа на
языке C++, осуществляющая поиск базовых инерционных параметров
манипулятора, если заданы его кинематические параметры
9
. Создан-
7
Этот алгоритм является стандартным и широко распространен в матричных вы-
числениях, поэтому в настоящей статье он не описывается. Подробнее об алгоритме
см, например, в работах [8, 9].
8
См., например, [10].
9
В случае манипулятора с неветвящейся кинематической схемой достаточно за-
дать типы сочленений и параметры Денавита–Хартенберга.
56 ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2012. № 1
1...,9,10,11,12,13,14,15,16,17,18 20,21,22
Powered by FlippingBook