Текст
                    А.И. Корендясев Б.Л. Саламандра Л .И. Тывес

РОССИЙСКАЯ АКАДЕМИЯ НАУК ИНСТИТУТ МАШИНОВЕДЕНИЯ им. А.А. БЛАГОНРАВОВА А.И. Корендясев Б.Л. Саламандра Л.И.Тывес ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РОБОТОТЕХНИКИ В ДВУХ КНИГАХ КНИГА 2 Под редакцией доктора технических наук С.М. КАПЛУНОВА е МОСКВА НАУКА 2006
УДК 621.867.87 ББК 32.816 К66 Рецензенты: доктор технических наук В.К, Асташев, доктор технических наук В.Л. Жавнер Корендясев А.И. Теоретические основы робототехники. В 2 кн. / А.И. Корендясев, Б.Л. Сала- мандра, Л.И. Тывес ; отв. ред. С.М. Каплунов ; Ин-т машиноведения им. А.А. Бла- гонравова РАН. - М. : Наука, 2006. - ISBN 5-02-033952-0. Кн. 2. - 2006. - 376 с. - ISBN 5-02-034445-1 (Кн. 2). Монография представляет собой фундаментальное издание в двух книгах, посвященное теоре- тическим основам робототехники и практическим аспектам проектирования роботов. Каждая из тринадцати глав издания содержит обзор наиболее ярких работ в соответствующем направлении, оказавших заметное влияние на развитие науки о роботах. Во второй книге рассмотрены динамика цикловых промышленных роботов с рекуперацией механической энергии, вопросы устойчивости многомерных систем автоматического регулирования и программирования движений робота, модели систем очувствления роботов и особенности интерфейса человек-робот. Для конструкторов, исследователей и инженеров в области робототехники, а также преподавателей вузов. По сети "Академкнига" Научное издание Корендясев Альфред Иванович, Саламандра Борис Львович, Тывес Леонид Иосифович ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РОБОТОТЕХНИКИ Книга 2 Утверждено к печати Ученым советом Института машиноведения им. А.А. Благонравова Российской академии наук Зав. редакцией Н.А. Степанова. Редактор Т.П. Трифонова. Художник Ю.И. Духовская Художественный редактор В.Ю. Яковлев. Технический редактор ТА. Резникова Корректоры З.Д. Алексеева, Г.В. Дубовицкая, Т.А. Печко Подписано к печати 31.01.2006. Формат 70 х ЮО1/^. Гарнитура Таймс. Печать офсетная Усл.печ.л. 30,6. Усл.кр.-отт. 30,6. Уч.-изд.л. 30,6. Тип. зак. 3128 Издательство "Наука". 117997, Москва, Профсоюзная ул., 90 E-mail: secret@naukaran.ru www.naukaran.ru Отпечатано с готовых диапозитивов в ГУП "Типография "Наука" 199034, Санкт-Петербург, 9 линия, 12 lSBN 5-02-033952-0 ISBN 5-02-034445-1 (Кн. 2) © Корендясев А.И., Саламандра Б.Л., Тывес Л.И., 2006 © Институт машиноведения им. А.А. Благон- равова РАН, 2006 © Редакционно-издательское оформление. Издательство "Наука", 2006
Глава 9 ДИНАМИКА ЦИКЛОВЫХ РОБОТОВ С РЕКУПЕРАЦИЕЙ МЕХАНИЧЕСКОЙ ЭНЕРГИИ 9.1. АНАЛИЗ СВОЙСТВ И ПРЕДЕЛЬНЫХ ВОЗМОЖНОСТЕЙ ПРИВОДА ЦИКЛОВЫХ РОБОТОВ Для цикловых промышленных роботов характерна малая доля дви- жений с постоянной скоростью в общем цикле движений. Преобладающими являются режимы интенсивного разгона и торможения. При традиционном построении привода в цикловых системах с преобладанием инерционной нагрузки основная мощность двигателя идет на разгон системы и. впослед- ствии рассеивается на демпферах и упорах. При этом с увеличением быстродействия требования к прочностным и энергопоглощающим харак- теристикам этих элементов ужесточаются. Как отмечено в гл. 2, представляется целесообразным на этапе тормо- жения аккумулировать механическую энергию в специальных устройствах - рекуператорах, а на этапе разгона "выдавать" ее в систему, оставляя за двигателями лишь функции подкачки энергии для компенсации потерь на трение и совершение полезной работы. Эта идея лежит в основе перспективных двцгательных систем робототехники, которые позволяют одновременно повысить скорости движений рук и сэкономить энергию [1,2,7]. Наиболее простые технические решения в реализации высказанной идеи связаны с организацией приводов робота, при которой используют- ся свойства колебательных систем. Известно, что в колебательных систе- мах энергия, затрачиваемая на разгон инерционной массы, не теряется (не превращается в тепло), а из кинетической переходит в потенциаль- нуюг Для перевода робототехнических систем в класс колебатель- ных конструкция робота должна обладать минимальными демпфи- рующими свойствами, и в нее должны быть введены упругие элементы - рекуператоры механической энергии. Цикловой робот является машиной дискретного действия, а не непрерывного (как в обычных колебательных системах), поэтому его конструкция должна быть оснащена управляемыми фиксаторами. Схемы традиционного привода звена и привода с рекуператором меха- нической энергии представлены на рис. 2.4, а и 2.4, в соответственно. Дви- жение традиционной системы в общем виде можно описать уравнением пгЯ24 = Мдв + Мдем(4) + Мтр, (9.1) 3
где R - радиус инерции, q - координата, Мяв, Мяеы, - соответственно мо- менты двигателя, демпфера и трения в передачах и опорах. Ориенти- ровочный график зависимости изменения моментов Мяв, Мяеы и Л/тр показан на рис. 2.4, б. С увеличением быстродействия за счет повышения Мяв значительно быстрее увеличивается требуемый момент демпфера, по- скольку он работает на существенно меньшем участке перемещения. При этом в соответствии с уравнением (9.1) и графиком (см. рис. 2.4,6) существенно возрастают ускорения, а следовательно, нагрузки в системе на участке торможения. Как следствие реализуется несимметричный закон движения звена. Но главным является то, что повышать быстродействие системы за счет увеличения мощности приводного двигателя можно лишь до определенного, довольно низкого предела. Этот предел обусловлен выбором привода: при выборе всегда явно или неявно в качестве ограничений выступают его весогабаритные показатели и установленная или потребляемая мощность. Критерий максимума быстродействия без до- полнительных ограничений приводит к выбору двигателя с бесконечно большой мощностью и редуктора с бесконечно большим повышающим передаточным отношением [8], что не имеет, естественно, никакой практической ценности. В системе с рекуператором (см. рис. 2.4, в) реализованы два источника энергии, функции которых четко разделены. Первый источник - дви- гатель - восполняет потери в системе, обусловленные трением. Пример зависимостей изменений моментов Мяв и Мтр приведен на рис. 2.4, г. В дан- ной схеме двигатель не используется для разгона инерционных масс, на что в традиционных системах затрачивается основная мощность. Поэтому структуры, построенные по такой схеме, отличаются существенно меньшей мощностью привода. Для обеспечения работоспособности системы необхо- димо согласовать направления момента двигателя и скорости движения звена, т.е. организовать автоколебательную систему. Второй источник - рекуператор механической энергии (пружинный двигатель) - берет на себя функции разгона и торможения звена, заклю- чающиеся в уравновешивании инерционных нагрузок. Первоначально за- пасенная в нем энергия (при "взводе" системы) не расходуется в полном цикле движений, включающем прямой и обратный ход звена, и движение такой системы определяется уравнением mR2q+cq = M№+MTp. Если в любой момент времени Мяв = -Л/Тр (см. рис. 2.4, г) и пружина имеет линейную характеристику, то быстродействие системы (время выполнения движения Т) определяется простым соотношением T = n^mR2/c. (9.2) В соответствии с общими свойствами автоколебательных систем, если условие Л1дв = -Мтр не выполняется, а справедливо лишь условие по работе этих сил (5j = 53) (см. рис. 2.4, г), то полупериод Т существенно не изме- няется. 4
Рис. 9.1. Закон движения модели робота с рекуператором энергии (а) и модель робота с электроприводом и рекуператором механической энергии (б) 1 - приведенная масса звена робота; 2 - управляемые упоры-фиксаторы; 3 - упругая система (рекуператор); 4- электродвигатель постоянного тока ((/я - напряжение питания электродвигателя); 5 - редуктор Таким образом, быстродействие системы не зависит от мощности двигателя, а полностью определяется собственными динамическими свойст- вами механического колебательного контура. При известной инерцион- ности системы mR2 можно подобрать жесткость с пружины рекуператора такой, чтобы обеспечить требуемое быстродействие. Закон движения масс т иллюстрирует рис. 9.1, а. Здесь Тв} - время выстоя в позиции q = -qA\ Т\ - время прямого хода; Тв2- время вы стоя в позиции q = qA\ Т2- время обратного хода. За периоды Тв1 и Тв2 ро- бот выполняет технологическую операцию, например, берет или укла- дывает заготовки, при этом положение звена определено упором- фиксатором. Времена Tt и Т2 движения руки могут отличаться вследст- вие изменения общей массы руки из-за массы переносимого объекта. При любых изменениях массы m системы с рекуперацией механической энер- гии автоматически обеспечивают такие важные выходные характерис- тики, как плавность разгона и торможения, их симметрию относитель- но среднего положения звена и выход на упоры-фиксаторы практичес- ки с нулевой скоростью. (Пунктиром на рис. 9.1, а показан возмож- ный перебег 0.) В результате существенно уменьшаются нагрузки на элементы передач и устраняется необходимость в демпфирующих уст- ройствах. Если из рассматриваемого закона движения масс исключить времена выстоев ТВ| и Тв2, что при идеальной настройке не повлияет на динамику 5
системы, то получим график установившегося колебательного процесса. Такое искусственное (модельное) превращение прерывистого движения в непрерывное колебательное движение позволяет использовать для расчета подобных систем аппарат теории колебаний. В технической литературе, чтобы подчеркнуть колебательную природу привода, наряду с термином "роботы с рекуперацией энергии" [7, 11, 12] для описания и исследования таких же систем используют термины "маятниковые роботы" [10], "резонансные манипуляционные системы" [1, 2, 3,4]. Выше были изложены основная идея, принцип действия и главные преимущества системы с рекуперацией энергии для привода одного звена. В роботах - системах с несколькими степенями подвижности - при одновременном движении нескольких звеньев, как правило, имеет мес- то динамическое взаимовлияние по степеням подвижности, приводящее к обмену энергией между парциальными системами. Это нарушает нормальную работу рекуператоров. Следовательно, в динамически связанных системах использование рекуператоров возможно только при последовательной работе отдельных степеней подвижности, что в ряде случаев лишает систему преимуществ по быстродействию, достиг- нутых за счет применения рекуперации энергии в схемах привода каждого звена. Одновременная работа нескольких степеней подвижности с рекупера- торами энергии возможна только в динамически развязанных структурах. В настоящее время проблема синтеза динамически развязанных систем реше- на для различных структур роботов [11]. Реализация условий динамической развязки (см. гл. 8) и использование принципов рекуперации энергии позволяют создавать роботы с предельными характеристиками по быстродействию и энергопотреблению. Анализ результатов эксперимен- тальных исследований роботов показал, что системы с рекуперацией энергии позволяют в среднем в 3-4 раза увеличить быстродействие и на порядок уменьшить энергопотребление по сравнению с традиционными машинами. Следует заметить, что в системах с рекуперацией энергии двигатель работает в специфическом режиме. В отличие от традиционных схем, где двигатель является ведущим элементом, определяющим закон движения механизма, в рассматриваемой схеме привода он выполняет функции "ведомого" элемента, компенсируя только диссипативные потери в системе, и мало влияет на закон движения, определяемый механическим коле- бательным контуром. Поэтому на практике чрезвычайно важно согла- совать характеристики механической колебательной системы со свойствами привода - параметрами двигателя и передаточным отношением редуктора. Для систем с пневмоприводом эта задача решена в работе [3], с электро- приводом - в исследованиях [2, 7, 12].
9.2. МЕТОДИКА ВЫБОРА ПАРАМЕТРОВ ЭЛЕКТРОПРИВОДА РОБОТА С РЕКУПЕРАЦИЕЙ МЕХАНИЧЕСКОЙ ЭНЕРГИИ. ОПТИМАЛЬНАЯ НАСТРОЙКА ПРИВОДА В отличие от методики работы [2], в которой выбор параметров был осуществлен на основе линеаризации полного уравнения движения системы, описанная ниже методика расчета [12] базируется на энергетическом балан- се в системе при движении по закону, близкому к закону движения ее консервативной части. Сначала рассматривается консервативная модель системы (без учета потерь и восполнения энергии в системе) и определяется закон ее движения, принимаемый за желаемый. Затем по условию энер- гетического баланса при желаемом законе движения полной неконсер- вативной модели определяются параметры двигателя и передаточное отно- шение редуктора i. В случае зависимости свойств консервативной модели от найденных параметров на последнем этапе уточняются параметры рекуператора. Расчетная модель соответствует схеме, приведенной на рис. 9.1, б. При- вод представляет собой модуль, содержащий электродвигатель 4 и редуктор 5 с передаточным отношением i. Полное уравнение движения системы в случае использования электродвигателя постоянного тока и редуктора после приведения всех инерционных составляющих к оси поворота ве- домого звена имеет вид (mR2 + /дв12 )<7 + Mrp sign q + cq = M^i, Мдв = Л/п sign <7Assign?, где M№ - момент, развиваемый на валу двигателя, /дв - момент инерции ротора двигателя, Мп = и Мхх - его пусковой момент и момент холостого хода, к} = ке к^ФЧИя - коэффициент вязкого трения двигателя, Ф - поток возбуждения, (7Я и йя- напряжение питания и сопротивление цепи якоря, ке и кы - коэффициенты пропорциональности, характеризующие соответственно конструкцию двигателя и магнитную проводимость магни- топровода [15]. Система (9.3) будет консервативной, если в любой момент времени сила сопротивления Assign равна силе M^Bi, развиваемой двигателем на выход- ном валу редуктора Мтр sign q - iMn sign q+kxqi 2 + iMxx sign q = 0. (9.4) При выполнении этого условия и с = const система (9.3) линейна и закон ее движения - гармонический q = qAcose)t, 0 < t < Т. Учитывая, что количество энергии, подкачиваемой в систему, существенно мало по сравнению с энергией, циркулирующей в системе с рекуператором, для нахождения искомых параметров Мп, к} и i вместо условия равенства сил (9.4) используем условие равенства их работ на заданном интерва- ле гармонического движения с амплитудой qA. Условие равенства работ 7
1 [А/^а]± [А/<?а]+ [А/^д]_ II О 'min 3 Чпах Рис. 9.2. Графики энергозатрат в приводе с рекуперацией энергии сил (9.4) получим в виде kt qA(£>n i 2/4 + Mxxi + Мтр = Mni, (9.5) где (0 = п/Т. Откуда <max,min = [(^п “ ^хх ) ± /Мп ~ М„)2 ~ /о.б^СОЯ. (9.6) Условие (9.5) графически представлено на рис.9.2. Кривая потерь в системе (левая часть уравнения (9.5)) в зависимости от i представляет собой параболу 1, отсекающую на оси ординат отрезок, равный А/тр. Правая часть (9.5) характеризует полезную работу двигателя и представлена прямой 2. Если эта прямая не пересекает параболу 1 (решения уравнения (9.5) не существует), то потери в системе на заданном перемещении при любом i превышают вклад энергии в систему, и работоспособность системы обеспе- чить невозможно. При пересечении параболы и прямой вся область зна- чений разбивается на три зоны. При i > imax (зона I) и i < imin (зона III) система будет неработоспособна по указанной выше причине. Только в зоне II при imax > i > imin вклад энергии превышает потери, и система будет работоспособной. В зависимости от конкретного значения i в зоне II будет меняться величина перебега 9 (см. рис. 9.1, а) звена 1 (см. рис. 9.1,6) за упоры- фиксаторы 2, характеризующая запас устойчивости системы. Очевидно, что максимальный запас устойчивости 0тах будет обеспечен, если разность 8
между вкладываемой двигателем энергией А+ и расходуемой в системе А_ достигнет экстремума. Исследование уравнения (9.5) на экстремум дает вы- ражение для передаточного числа редуктора, соответствующего 0тах, в виде Г = (Л/п-Л/хх)/0,5^лщо. (9.7) При полученном i * и номинальном режиме питания двигатель, как правило, оказывается перегруженным по моменту, так как работает в переходном режиме при малой скорости ротора, навязанном собственными свойствами системы. При таком выборе i далее следует учитывать времена выстоев и проверять интенсивность загрузки двигателя на повторно-кратковременных режимах. Возможен другой критерий определения передаточного числа редук- тора - минимум пускового момента. Снижение пускового момента произ- водится за счет снижения напряжения питания. Зададимся величиной 9 < бтах запаса устойчивости. Тогда работа сил упругости на пути 0 будет А = qAc&, что можно представить как работу постоянного дополнительного момента М = с0/2 на пути 2qA. С учетом этого получим соотношение (9.5) в виде 0,25&! дЛ71О)1‘2 + Mxxi + М^р + с0/2 = M„i. (9.8) Найдем передаточное отношение, соответствующее минимуму пуско- вого момента двигателя. Используя последнее выражение, запишем d(M„ - Mxx)!di = 0,25£,4Ллсо - (Л^ + О,5с0)/Р. Отсюда, положив d(Mn - Mxx)ldi = 0, получим выражение для опти- мального передаточного числа редуктора при заданном запасе устойчи- вости 0 U = д/(М Tp+O,5c0)/O,25^1^w. (9.9) При малых 0 передаточное отношение ionT ближе к i min, чем Г. Целесообразность выбора значения передаточного отношения редуктора, близкого к imin, обусловлена также следующими дополнительными преиму- ществами. 1. При меньших i вклад и потери энергии будут меньше, чем при i, близком к imax, т.е. коэффициент полезного действия системы возрастает. 2. Так как точка с imin ближе к основанию параболы, то ее чувстви- тельность к параметрам движения qA и Т будет меньше, чем при imax. Это означает, что при настройке системы на различные амплитуды qA, а также при работе системы с различным грузом, влияющим на быстродействие Т, перекомпенсация по вкладу энергии будет незначительной. Это же справедливо для параметров двигателя кх, Мхх и М„. Поэтому их флуктуации в процессе эксплуатации системы не нарушат ее работоспособность. Изменение коэффициентов в уравнении (9.5) деформирует параболу 7, либо сжимая ее к оси ординат (при их увеличении), либо приближая ее к прямой 3 (при их уменьшении). Необходимость обязательного пересечения прямой 2 и параболы 1 требует расчета параметров для экстремального случая, когда парабола предельно сжата. Это означает, что выбор пере- 9
даточного отношения i следует проводить, ориентируясь на случай, когда частота со и угол поворота звена qA максимальны. Заметим, что максимум со соответствует холостому ходу системы (без груза). Эти соображения определяют такую последовательность выбора двигателя и редуктора. 1. Зная минимальный период Т и максимальную амплитуду qA, после оценки момента трения в системе рассчитывают необходимую мощность двигателя = 2qAM^T. 2. По каталожным данным (см., например, [14]) выбирают двигатели различных серий соответствующей мощности. 3. Для каждого из двигателей при указанных значениях qA и Т по соот- ношению (9.6) вычисляют экстремальные значения /; если решение отсутствует, то выбирают двигатели с большим развиваемым моментом. 4. По соотношению (9.9) при 0 = 0 рассчитывают оптимальное пере- даточное отношение ionT 0. 5. Для каждого выбранного двигателя и редуктора, зная их параметры /дв и *опт.о> рассчитывают жесткость с упругого элемента. Для этого исполь- зуют решение уравнения консервативной системы. Для рассматриваемого случая это уравнение линейное (mR2 +I№i2mo)q+cq = 0, следовательно c = n2(mR2 + I^2mJ/T2. (9.10) 6. Задавшись величиной запаса устойчивости 0, по (9.9) вычисляют скорректированное значение 1опт. Оно должно укладываться в диапазон i, полученный для данного двигателя (см. пункт 3). Далее по (9.8) рас- считывают необходимый момент Ма двигателя и соответствующее ему напряжение питания Uom. Для иллюстрации методики рассмотрим пример выбора двигателя и расчета передаточного отношения редуктора для схемы маятникового привода, представленной на рис. 9.1, б. Примем следующие характеристики: амплитуда qA = 0,5 рад, время перемещения из позиции в позицию Т = 0,2 с, сосредоточенная масса m = 0,7 кг установлена на невесомом рычаге радиусом R = 0,1 м, момент трения в механизме Л7тр = 0,002 Н • м. По мощности, расходуемой на трение в механизме N = 2qAMTp/T = = 0,01 Вт, по справочнику [14] выбираем двигатель ДПМ 20-Н1/Н2-14. Технические характеристики этого самого маленького двигателя таковы: номинальное напряжение UH = 12 В, ток /н = 0,1 А, момент М„ = 0,001 Н • м, скорость п„ = 2500 об/мин, минимальный пусковой момент М„ = 0,002 Н • м, ток холостого хода /хх = 0,05 А, сопротивление якоря /?я = 71,5 Ом, момент инерции ротора /дв = 0,37 • 10"7 кг • м2. Мощность двигателя в номинальном режиме N„ = M„nJ9,15 = 0,26 Вт. Коэффициенты, характеризующие двигатель [14, 15]: кеФ = (UH - I„Rx) • 30/лин; &МФ/7?Я = M„/InRx. 10
Нас интересует коэффициент вязкого трения двигателя к\ = кйкыФг!Кя = 30MH(t/H - I„Rx)/imJuRn = 2,6 • Ю^Н • м • с/рад. Момент холостого хода двигателя Мхх = = 5 • 10"* Н • м. Диапазон возможных передаточных отношений редуктора, опреде- ленный по уравнению (9.6): imax = 92,5 > i > 1,25 = imin. Если ориентироваться на максимальный запас устойчивости (макси- мальную разность между энергиями, поступающей от двигателя и расхо- дуемой в системе на трение), то следует использовать формулу (9.7); в таком случае Г = 46,8. Получающийся при Г запас по вкладу энергии позволяет снизить пусковые моменты за счет уменьшения напряжения питания двигателя. Предельный пусковой момент (при запасе 6 = 0) при полученном Г, вычисленный из (9.5), будет М* = 1,29 • 10-3 Н • м. Но даже при 0 = 0 двигатель все равно перегружен по моменту (М‘ > Мн) и не позволяет достичь номинальной скорости ни в одном положении механизма. Таким образом, при Г выбранный двигатель можно использовать только при определенном режиме (периоде включения) ПВ. Если для расчета i использовать соотношение (9.9), то, как указано выше, обеспечивается не только меньшая чувствительность привода к флуктуациям параметров системы, но и, что наиболее важно, уменьшается необходимый момент двигателя. Используя (9.9) при 6 = 0, получим ionr.o = 11,17. Тогда в соответствии с уравнением (9.8) от двигателя потре- буется момент Мопт = 0,86 • 10’3 Н • м < Ми. Для получения такого момен- та двигатель следует запитывать напряжением не UH = 12 В, а (70ПТ = = UH • Мот/М„ = 5,15 В. Жесткость пружины для обеспечения заданного быстродействия в предположении, что система линейная, уточним с по- мощью уравнения (9.10): с = 170 Н • м/рад. Полученный запас по моменту двигателя можно использовать для обеспечения устойчивости системы. Если задать 0 = 0,2 • 10-4 рад, то из (9.9) получим ionT = 15,2, а двигатель будет развивать номинальный момент 0,001 Н • м при напряжении питания (70ПТ = 6 В. При изменении iom необходимо уточнить жесткость упругого элемента. Важно отметить, что момент трения Л/Тр и запас устойчивости 0 на этапе расчета определяют ориентировочно. Поэтому в системе следует пред- усмотреть регулировку напряжения питания двигателя, которую нужно проводить по результатам опытной эксплуатации созданной системы. Отметим также, что проведенный выбор двигателя осуществлен для случая максимальной амплитуды qA. При уменьшении qA вклад энергии в систему при таком выборе двигателя будет превышать потери. Это при- ведет к "перерегулированию" и к ударам об упоры. Поэтому естественно иметь в системе регулировку, позволяющую изменять пусковой момент двигателя в функции настраиваемого перемещения. В качестве регули- руемого параметра пускового момента целесообразно использовать ия. Для рассматриваемого случая легко получить аналитическое выраже- ние зависимости ия = ия(дя). Действительно, как следует из решения диф- 11
ференциального уравнения (9.3) при начальных условиях q(Q) = -qA, 4(0) = 0, величина рассогласования 9 между gmax и qA будет 9= - 1^л + /со2, где X = fy-2 /2(тЛ2 + I№i2); о = [(i(Mn -Мп)-/(mR2 + I№i2). При 0 -» 0 получаем уравнение регулятора напряжения двигателя в зави- симости от настройки упоров С/я = + ^тр + *Хх)> где к2 = со2 Q ) (mR2 + I№i^l^ + . Учитывая линейный характер зависимости напряжения питания двига- теля постоянного тока от амплитуды движения звена, определяемой установкой упоров при настройке системы, и малую мощность двигателей, в качестве автоматического регулятора можно использовать потенциометр. При этом корпус потенциометра должен быть жестко связан с одним упором- фиксатором, выходной вал потенциометра - с другим, электричес- кий вход - с источником стабилизированного напряжения, а выход - с двигателем постоянного тока. В процессе настройки положений упоров- фиксаторов, обеспечивающих требуемые положения звена робота, с изменением их относительного положения будет соответственно изменяться угол поворота выходного вала потенциометра, пропорционально изменится и величина напряжения питания двигателя. Выше приведены основные алгоритмы выбора параметров системы с рекуперацией энергии для случая исполнительного механизма с одной степенью свободы, обслуживающего всего две точки в рабочем простран- стве. При использовании цикловых роботов, как правило, требуется боль- шее число точек обслуживания. Многопозиционность в системах с рекупе- рацией энергии может быть обеспечена двумя путями. В соответствии с первым предполагаетсся увеличение числа степеней подвижности исполни- тельного механизма робота, в котором каждая степень снабжена реку- ператором, построенным в соответствии с описанным выше принципом. Второй путь связан с такой организацией механизма рекуперации в системе привода одной степени подвижности, при которой достигается возможность выхода в несколько (более двух) заранее определенных позиций (настроен- ных точек). 12
9.3. ОБЕСПЕЧЕНИЕ МНОГОПОЗИЦИОННОСТИ ПО ОДНОЙ СТЕПЕНИ ПОДВИЖНОСТИ РОБОТА Многопозиционность в системах с одной степенью подвижности может быть достигнута за счет специального выполнения механизма рекупе- ратора. Поясним принцип действия такой системы на простом примере рекуператора, построенного на основе кулачкового механизма (рис. 9.3, а). Здесь каретка 7 с массой т перемещается по направляющим 2 и несет на себе подпружиненный ролик 3. На каретке установлен двигатель 5, служащий для подкачки энергии, расходуемой на трение. Вдоль пути движения каретки установлены выдвигаемые двигателями 6 кулачки 7. В этой схеме рекуператор образован кулачковым механизмом 3 и 7 и пружиной 4. В начальном положении система взведена. При этом ролик 3 находится на одном из кулачков. Кулачок выполнен симметричным и имеет на вершине площадку выстоя. При необходимости движения в какую-либо сторону включается в соответствующем направлении двигатель 5. Ролик 3 сходит с площадки выстоя. При этом при взаимодействии ролика и кулачка на каретку передается горизонтальное усилие в направлении движения. Потенциальная энергия, запасенная в пружине, переходит в кинетическую энергию каретки. Скорость каретки на участке между кулачками под- держивается двигателем 5. При накатывании ролика 3 на следующий кулачок каретка тормозится, запасая потенциальную энергию. По достижении участка выстоя каретка останавливается и может быть за- фиксирована. Цикл может быть повторен в любую сторону на расстояния, определяемые выдвигаемыми по программе кулачками. Отметим, что момента двигателя 5 недостаточно для того, чтобы преодолеть усилие пружины рекуператора и завести систему с подножия на площадку выстоя, а на площадке выстоя момента двигателя хватает для перемещения каретки. Поэтому работоспособность системы обеспечи- вается только за счет использования кинетической энергии каретки. Двигатель используется для подкачки энергии и для вывода кулачка на тот или иной крутой участок в зависимости от выбранного направления движения. Таким образом, в данной конструкции реализован механизм рекуператора, обладающий важным свойством: во взведенном положении (максимум потенциальной энергии) он находится в состоянии неустойчивого равновесия. Отсюда следует, что любой механизм с упругими элементами, имеющий положение неустойчивого статического равновесия и симметрич- ную относительно этого положения статическую характеристику (потен- циальная функция - перемещение), может быть положен в основу рекупе- ратора энергии многопозиционного типа. Варианты систем с такими механизмами представлены на рис. 9.3, б, в. При повороте массы т (см. рис. 9.3, 6) два ролика двухлепесткового рекуператора всегда скользят по неподвижной поверхности 1. Если на этой поверхности выставлен упор 2, то ролик 3 остановится, и сила инерции массы т приведет к сжатию пружины 4. При этом механизм окажется в положении, показанном пунктиром, а рекуператор будет находиться во взведенном неустойчивом положении равновесия. В какую бы сторону 13
a Рис. 9.3. Варианты механизмов рекуперации энергии многопозиционного типа 14
в Рис. 9.3 (окончание) привод 5 не вывел массу т относительно положения равновесия, всегда после разрядки рекуператора несущее звено 6 займет исходное положение относительно массы т, а ролики 3 будут готовы для взаимодействия с управляемыми упорами. В конструкции в каждом фиксируемом положении устанавливаются два упора, управление которыми определено программой движения системы. Назначение упоров не только фиксировать положе- ние массы т, но и воспринимать опорные реакции при ее разгоне и тор- можении. Система, в которой все механизмы смонтированы на подвижной каретке 1, приводимой двигателем 2, представлена на рис. 9.3, в. Здесь рекуператор образован шарнирным механизмом 3, стянутым пружиной 4. На направ- ляющих механизмах 3 установлены управляемые от электромагнитов 5 и 5' упоры-фиксаторы 6 и 6'. Упоры-фиксаторы несут наконечники 7 и 7', поджатые пружинами 8 и S'. Каретка / перемещается по направляющим 9, а упоры-фиксаторы могут взаимодействовать с направляющей 10, имеющей фиксирующие пазы. При движении каретки рекуператор разряжен, а упоры-фиксаторы 6 и 6' максимально раздвинуты. При необходимости остановки каретки первый по ходу движения упор, например 6, выдвигается электромагнитом 5 до соприкосновения с направляющей 10 и поджимается к ней. При западании наконечника 7 в паз, каретка под действием сил инерции продолжает движение, взводя аккумулятор, который выводится в положение неустой- чивого равновесия. При этом упоры-фиксаторы 6 и 6' сближаются до тех пор, пока наконечник 7' не окажется над пазом направляющей 10. Магнит 5' опускает упор-фиксатор б', и каретка жестко стопорится в заданной позиции. По команде движения в какую-либо сторону, например вправо, упор 6 с наконечником 7 выводится из паза. Двигатель 2 развивает момент в сторону движения, при этом корпус каретки начинает двигаться вправо, а 15
упор 6' с наконечником 7', удерживаемый пружиной 8' остается непод- вижным. Рекуператор выводится из положения неустойчивого равновесия, а его усилие, замыкаясь на наконечник 7' и направляющую 10, разгоняет каретку. После полной разрядки рекуператора наконечник 7', складываясь, выходит из паза, упор 6' поднимается электромагнитом 5'. Система оказы- вается в исходном положении. Все рассмотренные выше примеры систем позволяют плавно выходить в любую позицию, определяемую положением упоров. Интенсивность разгона и торможения определяется жесткостью пружин рекуператора и ограничена прочностными свойствами конструкции. При высоком отношении перемещения звена между упорами к длине хода аккумулятора большую часть пути масса проходит с постоянной скоростью. Для уве- личения быстродействия (при ограниченности усилий аккумулятора) жела- тельно распространить участок разгона и торможения на весь путь перемещения массы. Обеспечение многопозиционности при указанном условии может быть достигнуто за счет дифференциальных схем привода одной степени подвижности [9,11]. Модель дифференциального привода представлена на рис. 9.4, а. Здесь масса т на пружине с3 может перемещаться под действием двух рекуператоров с пружинами С] и с2 ( сь с2 и с3 - коэффициенты жесткости пружин). Каждый из рекуператоров оснащен двумя регулируемыми упорами. Рекуператоры с выходными элементами массой тх и т2 подклю- чены к массе т по дифференциальной схеме через коромысло с плечом R и моментом инерции I (масса коромысла приведена к массе т). В зависимости от того, в каком состоянии находятся рекуператоры, масса т может занимать одно из четырех возможных положений, определяемых двоичным двухразрядным кодом 3]82. Перемещение Sm массы т определяется по уравнению Sm = 0,5(515] + 5252), где S| и S2 - перемещения масс и т2. Таким образом, в диапазоне перемещения массы т организованы четыре фиксированных позиции. Схема состояний системы, в которой т\ первого рекуператора может иметь координаты xt(0) и х,(1), а масса т2 второго соответственно х2(0) и х2(1), представлена на рис. 9, 6. При этих значениях координат масса т может занимать четыре положения, обозна- ченных кодами 00; 01; 10; 11. Однако произвольный переход из одной позиции в другую невозможен вследствие динамических особенностей дифференциальной схемы. Это обусловлено тем, что рассматриваемая модель имеет две степени свободы, ее состояние описывается координатами масс Ж], т2 и движения по ним динамически взаимосвязаны. Эта связь на- ходит отражение в уравнениях динамики. Введем координаты х, и х2 масс ж, и ж2 и запишем выражение для кинетической W и потенциальной U энергии модели W = AjX]2 +2Нххх2 + А2х2, U = а1х12+2hxxx2 + а2х2. 16
X 11- а Рис. 9.4. Модель дифференциального привода 17
Здесь значения коэффициентов Aj = mj/2 + m/8 + 7/8R2, j = 1,2; aj= Cjl2 + c3/8; H=mlZ-llZ^-, h = c3/8. Тогда дифференциальные уравнения движения модели запишутся в виде Ах + Нх7 + а}х} + hx? = О, (9.11) Нх{ + А2х2 + hxx + а2х2 = 0. Работоспособность модели обеспечивается поочередным включением рекуператоров. Такое поочередное включение всегда приводит к фикси- рованному изменению положения массы т и к ее выходу за одно или два включения в требуемую позицию, так как в этом случае система на каждом включении вырождается в систему с одной степенью свободы, для которой справедливо W = A;x2; U = ayx2. 9.4. КВАЗИСТАТИЧЕСКИЙ РЕЖИМ РАБОТЫ РЕКУПЕРАТОРОВ МЕХАНИЧЕСКОЙ ЭНЕРГИИ МОДЕЛИ ДИФФЕРЕНЦИАЛЬНОГО ПРИВОДА При существенном преобладании массы т над массами гщ, I/R2 и т2 модель дифференциального привода (см. рис. 9.4, а) также можно рассматривать как систему с одной степенью свободы, в которой реку- ператоры работают в квазистатическом режиме. Это означает, что динамическими процессами в рекуператорах можно пренебречь (его собственная частота несоизмеримо больше, чем частота системы в целом), а каждый из аккумуляторов представляет собой безмассовый элемент (см. рис. 9.4, в). Пренебрегая массами т}, т2 и I/R2, получим уравнения движения (9.11) системы в виде 0,25m(Xj +х2) + с1х1 =0, 0,25/п(х1 +х2) + с2х2 =0. Эта система эквивалентна следующей: С1Х1 ~С2Х2 =0’ 0,5/п(х1 +х2)+с1х1 + с2х2 =0. Первое уравнение является алгебраическим уравнением связи между перемещениями и жесткостями в аккумуляторах. Используя его, можно второе уравнение представить в виде т(хх +х2) /2+2с1с2(х1 + х2) /(q +с2) =0. 18
Таким образом, преобладание массы т действительно приводит к системе с одной степенью свободы. В такой системе из-за условия С|Х, = с2х2 допускаются либо одновременное перемещение обоих рекуператоров из состояния 00 в 11 и обратно, либо разделенное во времени включение рекуператоров. Это означает, что перевод массы т из состояния 01 в 10 и обратно возможен за два такта: 01-00-10 или 01-11-10. Все остальные переходы выполняются за один такт. При специальной настройке возможна одновременная работа двух рекуператоров исходной модели: либо при обеспечении условий дина- мической развязки системы по степеням свободы, либо за счет ее работы на двух собственных формах колебаний. В последнем случае система настраивается так, что при одновременном включении обоих акку- муляторов она движется в соответствии с одной из собственных форм колебаний. Анализ динамических свойств модели позволяет найти необходимые условия настройки для этих двух случаев. 9.5. ДИНАМИЧЕСКИЕ РЕЖИМЫ РАБОТЫ МОДЕЛИ ДИФФЕРЕНЦИАЛЬНОГО ПРИВОДА ОДНОЙ СТЕПЕНИ ПОДВИЖНОСТИ РОБОТА. ВОЗМОЖНОСТИ ДИНАМИЧЕСКОЙ РАЗВЯЗКИ В МОДЕЛИ Требование одновременной работы аккумуляторов при условии отсут- ствия взаимной "перекачки" энергии из одного рекуператора в другой эквивалентно сведению системы уравнений (9.11) к двум независимым уравнениям, из которых первое является функцией только хх и ее производных, а второе - х2 и ее производных. Это требование сводится к наложению некоторых ограничений на коэффициенты Aj, ctj, Н nh системы (9.11) за счет выбора параметров модели. Рассмотрим два упомянутых выше варианта. 1 .Как видно из (9.11), для динамической развязки системы можно использовать условие Н = h = 0. В параметрах модели это означает с3 = 0, т = IIR2. Таким образом, если удалить пружину с3 и выбрать соответствую- щий момент инерции коромысла, возможна одновременная независимая (в любом направлении) работа аккумуляторов. При этом не существует никаких ограничений на выбор пружин и с2, ходов Sj перемещений рекуператоров, и возможен произвольный переход из одной позиции массы т в любую другую. 2 . Тот же результат можно получить, если обеспечить пропорциональ- ность коэффициентов а}/А} = а2/А2 = h/H. (9.12) Тогда система (9.11) приводится к двум независимым уравнениям [13] (AiA2-H2)xl +(alA2-Hh)xl = 0, (А,А2 - Н2)х2 + (а2А{ - Hh)x2 = 0. 19
Выполнение равенств (9.12) можно обеспечить различными на- борами параметров. Одним из них может служить сх = с2, тх = т2, с3 = = 2с, [т - (Z/R2)] / [2wi! + (7/Я2)]. Оба приведенных варианта показывают возможность полной динами- ческой развязки системы, которая может быть произвольным образом переведена в любое из четырех фиксированных положений. При этом рекуператоры никак не влияют друг на друга, и каждый из них может включаться в любой момент независимо от положения другого рекупе- ратора или его состояния (находится ли он в движении или в покое). Для системы (9.11) уравнение собственных частот имеет вид [13] (AjA2 - Я2)®4- (А,а2 + А2а, - 2Hh)(i? + a,a2 - Л2 = 0. (9.13) Система имеет две частоты собственных колебаний соа(а = 1, 2) и, соответственно, две формы колебаний. С частотой <х>] совершаются син- фазные колебания масс т, и т2. При этом т перемещается синфазно с ними. С частотой о>2 массы т, и т2 колеблются в противофазе. Коэффициенты ка формы колебаний, характеризующие отношение амплитуд колебаний обеих масс с частотами <0] и со2 соответственно, определяются выражениями ка = -(а, - (ОаА) / (Л - со2Я) = (Ясо2 - Л) / (а2 - А2со2). (9.14) Колебания только по первой форме соответствуют переходу системы из состояния 11 в 00 и обратно; колебания только по второй форме - из состояния 01 в 10 и обратно (см. рис. 9.4, б). При этих формах амплитуды колебаний масс т, и т2 должны быть одинаковыми. Отсюда Л, = х2(1)/х,(1) = -к2 = х2(0)/х!(0). (9.15) Используя (9.13) и первое равенство (9.14), уравнение (9.15) можно записать в виде (а1Я-ЛА1)(А1а2-а1А2) = 0. (9.16) Если сомножители в выражении (9.16) одновременно равны нулю, то выполняются условия (9.12). В этом случае приходим к варианту с полной динамической развязкой. При а,Н = hA, нарушается второе равенство (9.14), поэтому единственным условием работы системы на собственных формах колебаний будет А1/А2 = а1/а2 = р. (9.17) В частном случае, когда упругость с3 отсутствует, и Л = 0, исходя из (9.14), с учетом (9.17) получим простое соотношение ^=-#. (9.18) Выбор параметров и настройка системы, работающей в режимах колебаний на собственных формах, производятся, исходя из координат позиций выходной массы т. Координаты позиций (см. рис. 9.4, б) всегда симметричны относительно среднего положения системы (когда усилия пружин рекуператоров равны нулю). В таком случае совокупность четырех позиций определяется двумя координатами DutE D = [х2(1) + х,(0)]/2; Е= [х2(1) +х1(1)]/2. 20
j = n Рис. 9.5. Дифференциальные системы многопозиционного привода, построенные по унитарной (а) и разрядной (б) схемам 21
Связь между ними и коэффициентом Л, определяется равенством (9.15), откуда к' = -(£ - D)/(E + D). Простые для настройки соотношения получаются при h = 0, когда для обеспечения координат заданных позиций необходимо реализовать только условие по параметрам (9.17), так как в этом случае (E-D)/(E+D) = Tp. Отметим, что одной и той же настройке системы р = const соответствует множество выходных координат позиций, удовлетворяющих условию ^ = [(1-7Р)/(1+7Р)]£- (9.19) Важным частным случаем является Ifc, I = Р = 1, когда параметры обоих рекуператоров одинаковы (А! = Д2, а} = а2), и система полностью сим- метрична. В этом случае перемещения обоих рекуператоров должны быть одинаковыми, что в итоге приводит к совпадению двух позиций массы т, соответствующих кодам 01 и 10 (из условия (9.19) видно, что D = 0 при Р = 1). Таким образом, при симметричной системе возможен произвольный переход из любого из состояний 00, 11, 01, 10 в любое другое из них, но состояния 01 и 10 соответствуют одной и той же позиции массы т. Выше были рассмотрены различные варианты действий одной ячейки дифференциального привода звена робота (степени подвижности робота), в которых количество возможных позиций не превышает четырех. Если необходимо получить большее число позиций, привод можно компоновать из таких ячеек, формируя регулярные структуры. Как условное обозначение дифференциальных ячеек можно использовать рис. 9.4, в. Из таких ячеек могут быть построены дифференциальные системы много- позиционного привода массы т (рис. 9.5). 9.6. ОСОБЕННОСТИ УПРАВЛЕНИЯ ДИФФЕРЕНЦИАЛЬНЫМ МНОГОПОЗИЦИОННЫМ ПРИВОДОМ ОДНОЙ СТЕПЕНИ ПОДВИЖНОСТИ РОБОТА Особенности управления дифференциальным многопозиционным при- водом рассмотрим, исходя из квазистатического режима работы рекуператора, т.е. предполагая, что выходная масса т несоизмеримо боль- ше, чем массы выходных элементов рекуператоров и элементов дифферен- циалов. Структуры привода можно организовать по унитарной схеме (см. рис. 9.5,«), в которой частные передаточные отношения от выходных элементов рекуператоров к массе т одинаковы, и по разрядной схеме, когда частные передаточные отношения образуют геометрическую прогрессию (см. рис. 9.5, б). Количество фиксированных состояний системы в обоих случаях будет равно 2", где п - число аккумуляторов. В унитарных схемах перемещение 22
массы т определяется соотношением j=i где 37 = 0 или 1 - параметр, характеризующий состояние j-ro аккумулятора; i - передаточное отношение от рекуператора к массе т; 57- - ход j-ro рекуператора, перемещение Sm отсчитывается от положения, при котором все рекуператоры имеют состояние 67 = 0. В разрядных структурах частные передаточные отношения от каждого рекуператора к массе т будут отличаться при различных j, в связи с чем перемещение Sm можно представить в виде п ^ = £‘>5 А- 7=1 Рассмотрим условия равновесия обеих систем. После приведения силы Fo, действующей на массу т, к выходным элементам рекуператоров получим п уравнений равновесия Fj/ij = F0 (j = 1,2,..., п). Для линейных упругих элементов рекуператоров Fj = CjXj, где с7 и х7- соответственно жесткость и деформация упругого элемента J-ro рекуператора. Объединив последние соотношения, получим: Cjx/ij = Fo. Отсюда следует, что для обеспечения работоспособности системы знаки дефор- маций Xj должны быть одинаковыми и соответствовать знаку Fo, т.е. включенные рекуператоры должны работать синфазно. Эти условия должны удовлетворяться и в крайних положениях рекуператоров, а именно при Xj = Sj. Исключив из уравнений равновесия Ло, получим (и - 1) равенств, устанавливающих соотношения между с7, Sj и C'S'/ii = c2S2/i2 = ... = c„Sn/in. Отсюда при заданной структуре построения дифференциальной схемы (унитарной, разрядной или их комбинации) и ходах Sj можно однозначно определить соотношения между жесткостями рекуператоров. Для простоты положим, что Sj = S, тогда в унитарной структуре вследствие равенства ij = i получим с7 = с, а в разрядной - с7 = (0,5/_1С|. При Sj, = S в унитарной структуре на диапазоне перемещений массы т получим последовательность п + 1 позиций с постоянным шагом. Если состояние всех рекуператоров в системе описать n-разрядным двоичным кодом, то любому к-му фиксированному положению массы т будет соответствовать множество состояний рекуператоров, для которых необходимо выполнение следующего условия: сумма единиц в разрядах кода должна быть равна к. В разрядной структуре величина перемещения массы т зависит от номера включаемого рекуператора j. При изменении Jot 1 до и переме- щение будет пропорционально (0,5/5. Всего масса т может занимать 2” 23
различных позиций, равномерно расположенных на оси с шагом (0,5)"5. Каждой позиции будет соответствовать только одно состояние рекупера- торов (один n-разрядный код). Чтобы создать одномерную систему с п равноудаленными позициями, в унитарной структуре необходимы п рекуператоров, а в разрядной - log2/i. Рассмотренные выше условия работоспособности системы в квазистати- ческом режиме определяют алгоритм управления рекуператорами в обеих системах. В системе с унитарной структурой переход массы т из одной позиции в любую другую можно совершать за один шаг. Действительно, в такой системе для изменения суммы единиц в разрядах кода всегда имеется тре- буемое (или большее) число рекуператоров, находящихся в состоянии 0 или 1, синфазная работа которых вносит изменения в сумму кода в желаемом направлении. Произвол в выборе состава группы рекуператоров для внесе- ния изменения в сумму кода разрешается назначением последовательности включения и установкой приоритетов срабатывания рекуператоров. В разрядной системе перехода массы т из одной позиции в любую другую можно произвести не больше, чем за два такта. Простейший алгоритм управления в такой системе заключается в "сбрасывании" кода в ноль и в "выставлении" нового кода. При этом масса т всегда переходит в требуемую позицию через нулевую. Возможен и другой алгоритм управления, при котором многие позиции массы т связаны друг с другом однотактным переходом, а двухтактные переходы требуют изменения состояния минимального числа рекуператоров. Алгоритм основан на поразрядном сравнении кодов исходной и целевой позиций. При этом выделяются рекуператоры (разряды), состояния которых в обеих позициях одинаковы. Эти рекуператоры остаются в своих состояниях. Остальные аккумуляторы меняют состояния, причем, в первом такте меняют состояния те из них, в которых осуществляется переход из состояния 0 в 1. Во втором такте меняют состояние аккумуляторы, в которых осуществляется переход из состояния 1 в 0. Естественно, если в изменяемых разрядах все изменения однонаправленные, то переход будет осуществлен за один такт. Принципиальная кинематическая схема циклового робота с двумя степенями подвижности, структуры приводов которого организованы по разрядной схеме, представлена на рис. 9.6. Рука образована звеньями горизонтального 1 и вертикального 2 пере- мещений, связанными приводными кинематическими передачами соответ- ственно с двигателями 4 и 3, и механическими кодовыми преобразователями (МКП). Механический кодовый преобразователь вертикального пере- мещения образован цепочкой дифференциалов 5-S, каждый из которых содержит кодовый диск 9; МКП горизонтального перемещения выполнен аналогично и образован дифференциалами 9 и 10. Упор 12 каждого кодового диска ограничивает угол его поворота, а когда кодовый диск подходит к упору 72, его положение фиксируется программно-управляемым фиксатором 13. Упоры 72 и фиксаторы 13 устанавливают так, чтобы обеспечить на выходе МКП перемещения в соответствии с желаемым кодом. Включая с 24
Рис. 9.6. Схема робота, приводы которого организованы по разрядной дифференциальной схеме 25
помощью программного устройства фиксаторы 13 кодовых дисков 9 в различных сочетаниях, можно обеспечить широкий набор фиксированных перемещений на выходе МКП и соответственно большое число положений звена 2. В данном случае с помощью всего четырех одинаковых устройств (дифференциалов с упорами) достигается 24 = 16 позиций руки по верти- кали. Механический кодовый преобразователь горизонтального переме- щения устроен аналогично и обеспечивает 22 = 4 позиции руки. Заметим, что здесь в каждом МКП один дифференциал представляет собой рядовую передачу вследствие фиксации колес 8 и 11. Каждый кодовый диск оснащен упругим элементом (пружиной) 14 с симметричной относительно нуля характеристикой; нулевое значение усилия пружины соответствует половине полного угла поворота диска. Усилие пружины в крайних положениях диска всегда направлено от упора и воспринимается фиксатором. Таким образом, кодовый диск с упругим элементом образует рекуператор механической энергии, который на половине пути выдает энергию в систему (фаза разгона), а затем, при подходе к заданной позиции, запасает ее (фаза торможения). В начальный момент звенья 7 и 2 руки находятся в крайних положениях, причем все кодовые диски 9 удерживаются фиксаторами 13 на упорах 12. Одновременно с включением двигателей 3 и 4 в направлении требуемого движения от программного устройства поступает команда освободить в соответствии с программным кодом какие-либо диски МКП. Звенья руки получают интенсивное перемещение (до половины полного поворота диска) вследствие перехода потенциальной энергии пружин в кинетическую энергию звеньев, а затем тормозятся, заряжая рекуператоры. Система плавно входит в заданную позицию (отпадает необходимость в демпферах) и фиксируется в ней. При сбросе кода и реверсе двигателей звенья аналогичным образом переходят на исходную позицию. Соответствующий подбор величин инерционных элементов < т обеспечивает работоспособность робота в квазистатическом режиме. Выше рассмотрены квазистатические режимы работы дифференциаль- ных систем многопозиционного привода. Такие режимы накладывают достаточно жесткие условия на конструкцию системы в части выбора ее инерционных и жесткостных параметров и, как следствие, на алгоритмы управления. В то же время, возможности системы можно расширить за счет использования принципов динамической развязки путем определенного выбора инерционных параметров рассматриваемых систем. 9.7. УСЛОВИЯ ДИНАМИЧЕСКОЙ РАЗВЯЗКИ ДИФФЕРЕНЦИАЛЬНОГО МНОГОПОЗИЦИОННОГО ПРИВОДА Условия динамической развязки для систем, представленных на рис. 9.5, получим из рассмотрения кинетической энергии. Для системы с восемью степенями свободы, приведенной на рис. 9.5, а, с учетом обозначений инерционных элементов и их конструктивной идентичности, уравнение для кинетической энергии может быть записано в виде w = W, + w2 +... + w7, 26
где 8 i 4 W2 = 0,5/3X[(x27_1-i27)2/47?32], 1 4 W3 =0,5m2£[(i2>_1 -x2jy /4], 1 2 W4 = 0,5/2^j[(*4 j-3 j-2 ~~*4 j-1 ~^4 j) /16Л2], 1 2 W5 = 0,5m} [(x4 J_3 + x4 J_2 + x4 Л1 + x4 J)2116], 1 Условия динамической развязки будут соблюдены, если выбрать пара- метры тк\ Ik\ Rk(k= 1,2, 3) такими, чтобы выражение кинетической энергии системы имело вид W = 0,5S>,.x2, 1 где Д,- - константа, определяемая параметрами системы. Нетрудно убедить- ся, что, выбрав инерционные параметры в соответствии с формулой (9.20) мы избавимся в выражении кинетической энергии от членов, содержащих произведение скоростей, и после преобразования получим W = l/2"- log2« л т+ У 2vmv £х2. \ v=l ) 7=1 (9.21) Формулы (9.20) и (9.21) справедливы для схем с унитарной структурой, имеющих число аккумуляторов п = 2*, где к - положительное число. Для этой структуры все Д2 равны между собой (см. выражения (9.21)). 27
Аналогичный анализ выражений кинетической энергии системы, представленной на рис. 9.5, б, показал, что выбор инерционных параметров системы согласно формуле (9.20) также решает задачу динамической развязки. Для кинетической энергии в этом случае получается следующее выражение п W = 0,5£ (m/2j)+^(mv/2J v) х*. V=1 Из этого выражения видно, что все Д, в разрядной структуре отличаются друг от друга. Проведенный анализ указывает путь модернизации кинематической схемы робота, направленной на обеспечение работоспособности системы при ее переходе из произвольного состояния в любое другое. Во-первых, необходимо на сателлитах дифференциалов кодовых преобразователей установить инерционные нагружатели-маховики, моменты инерции кото- рых удовлетворяют условиям (9.20) для каждого МКП. Во-вторых, следует установить на основании программно-управляемые двигатели, каждый из которых кинематически связан с одним из дисков кодовых преобразова- телей. В-третьих, желательно предусмотреть в системе возможность изме- нения моментов инерции нагружателей-маховиков на случай необходимости существенного изменения их инерционности. В соответствии со сказанным цикловой робот (рис. 9.7) состоит из установленных на основании 1 звеньев 2 и 3. Звено 2 связано с выходным валом 4 МКП посредством кинематической цепи, образованной звеньями 5-8, а звено 3 связано с выходным валом 9 второго МКП посредством кинематической цепи, состоящей из звеньев 10, 11, 12. Механические кодо- вые преобразователи установлены также на основании 1 и выполнены для вертикального перемещения звена 3 на дифференциалах 13-16, а для горизонтального перемещения звена 2 - на дифференциалах 17 и 78. Количество дифференциалов в каждом МКП определяется числом обслуживаемых манипулятором позиций по степеням подвижности. Каж- дый из дифференциалов МКП имеет кодовый диск 79. Диски могут перемещаться между регулируемыми и управляемыми от программного устройства (не показано) упорами-фиксаторами 10. Упоры устанавливают так, чтобы обеспечить перемещение выходного вала МКП в соответствии с желаемым кодом. Например, если в МКП вертикального перемещения углы поворота всех кодовых дисков одина- ковы, то полный угол поворота выходного вала 9 МКП равен Фмкп = Ф1 + (1/2)ф2 + (1/4)фз+ (1/8)ф4+ (1/8)ф5, где ф],..., ф5- углы поворота кодовых дисков дифференциалов 13-16 соответственно. Пружины 27, установленные между основанием и каждым кодовым диском 79, являются пружинными рекуператорами механической энергии. Усовершенствование робота с цикловым управлением связано с уста- новкой дополнительно индивидуальных двигателей 22, кинематичес- ки связанных с кодовыми дисками 27, и с введением в конструкцию инер- 28
Рис. 9.7. Модернизированная схема робота, учитывающая условия динамической развязки 29
Рис. 9.8. Кинематическая схема механизма изменения инерционности маховика ционных нагружателей, выполненных в виде маховиков 23, жестко связан- ных с сателлитами дифференциалов кодовых преобразователей. Кроме того, дополнительное усовершенствование может быть связано с наличием механизма изменения моментов инерции нагружателей (рис. 9.8). Этот механизм имеет собственный привод, связанный с устройством программного управления, в которое входят электромагнит 24, установ- ленный вдоль оси маховика 23, ползуны 25, имеющие возможность перемещения по радиальным направляющим относительно маховика, кине- матические передачи между якорем магнита и ползунами в виде тросов 26 и упругих элементов 27. Механизм изменения момента инерции нагружателя работает следующим образом. По сигналу от программного устройства втягивается якорь электромагнита 24 и тросами 26 ползуны 25 перемещаются к центру маховика 23, уменьшая в целом инерционность нагружателя. При этом растягиваются дополнительно установленные упругие элементы 27. Такая ситуация соответствует отсутствию объекта в схвате манипулятора. Если объект находится в схвате манипулятора, по сигналу от програм- много устройства электромагнит 24 отключается от сети питания, и ползу- ны 25 под действием упругих элементов 27 перемещаются вдоль радиусов маховика, увеличивая инерционность нагружателя. В фиксированных состояниях все кодовые диски 19 (см. рис. 9.7) при- жаты к упорам-фиксаторам 20. От программного устройства сигналы управления поступают на упоры-фиксаторы 20 и индивидуальные двигатели 30
22; в результате кодовые диски 19 в соответствии с заданным кодом растор- маживаются и переводятся в другие состояния, фиксируемые упо- рами-фиксаторами 20. Выходной вал 4 МКП повернется на заданный кодом угол и через передачи 5-8 переместит звено 2 робота. Аналогично осу- ществляется поворот выходного вала 9 второго МКП, который через пере- дачи 10-12 переместит звено 3. В результате рука робота совершит движе- ние по двум координатам. Так, попеременно фиксируя и отпуская по сигна- лам программного устройства различные кодовые диски 19 МКП, реку- ператорами энергии отрабатывается последовательность перемещений звеньев робота в соответствии с поступающим двоичным кодом. Двигатели 22 используются только для компенсации потерь на трение. Нагружатели в виде маховиков 23 служат для динамической развязки движений кодовых дисков 19 МКП, что позволяет независимо один от другого отпускать и перемещать в любом направлении кодовые диски. В связи с тем, что условия динамической развязки движений кодовых дисков 19 зависят от инерционных свойств руки и переносимого объекта, с помощью механизма изменения моментов инерции нагружателей по сиг- налу от программного устройства инерционность последних при наличии объекта в схвате манипулятора увеличивается и уменьшается в его отсут- ствие. Момент инерции звена руки приводится к валу рекуператора с коэф- фициентом 1/i2, поэтому не все нагружатели могут быть оснащены такими механизмами, а лишь нагружатели старших разрядов МКП. При однотактной работе кодовых преобразователей, возможной бла- годаря предложенным усовершенствованиям, производительность робота повышается в 1,5-2 раза. Важно подчеркнуть, что динамическая развязка на основе выбора инер- ционных коэффициентов позволяет не только произвольно во времени и в любом направлении включать рекуператоры, т.е. получать переход из любой позиции в любую другую за один такт, но и отказаться от требо- ваний линейности упругих элементов рекуператоров. Можно использовать рекуператоры с произвольными характеристиками упругих элементов, вы- годные, например, с точки зрения повышения быстродействия системы. Рассмотренный круг задач касался одномерных многопозиционных си- стем и сводимых к ним ортогональных систем. Такие системы могут быть использованы для обслуживания ячеек складов, стеллажей и т.д. Однако многие практические задачи робототехники требуют обеспечения много- позиционности не только по одному измерению, но и в многомерных прост- ранствах. Этот круг задач решается путем наращивания степеней подвиж- ности исполнительной системы, т.е. путем формирования соответствующей структуры скелета руки. 9.8. РЕАЛИЗАЦИЯ РЕКУПЕРАЦИИ ЭНЕРГИИ В ЦИКЛОВЫХ РОБОТАХ Схемы привода, проанализированные выше, обеспечивают множество позиций по одной степени подвижности робота. В системах с п степеня- ми подвижности, каждая из которых оснащена одним рекуператором меха- 31
б Рис. 9.9. Экспериментальный образец системы с тремя степенями подвижности а - общий вид; б - кинематическая схема 32
нической энергии, произвольный переход в любую из 2" позиций рабочего пространства возможен только при удовлетворении условий динамической развязки, рассмотренных в гл. 8. В динамически развязанных системах не ограничивается ни число степеней подвижности и, ни количество Nj реку- ператоров по любой 1-й степени из них. В этих системах общее число пози- п ций с произвольным доступом будет 2,=1 . Описанные ниже примеры реализации цикловых роботов с реку- перацией энергии позволили проверить основные положения разра- ботанных инженерных методик синтеза и расчета привода, рекуператоров энергии и исполнительных механизмов. Общий вид и кинематическая схема первого экспериментального образ- ца системы с тремя степенями подвижности, обеспечивающей позициони- рование захвата в 23 = 8 точках рабочей плоскости, представлены на рис. 9.9 [6]. Это частный случай схемы, приведенной на рис. 8.13, а при и = 3 с кине- матическими передачами от звеньев к рекуператорам энергии. Упоми- навшиеся обобщенные координаты , \|/2, Уз соответствуют установке ре- куператоров на основании. Подвижные звенья снабжены дополнительными уравновешивающими массами. Механическая рука установлена на основании и содержит после- довательно шарнирно соединенные звенья 2-4 руки и схват 5, укрепленный на звене 4. Звено 2 с помощью вращательной пары связано с основанием 1. Маховики 6-8 на валах приводов звеньев 2-4 руки установлены также на основании 1 и являются входными элементами соответствующих приводных кинематических цепей. При этом маховик 6 связан зубчатой переда- чей со звеном 2, маховик 7 связан зубчатой и тросовой передачами 9 со звеном 3, а маховик 8 связан зубчатой передачей и двумя тросовыми пере- дачами 10 и 77 со звеном 4. На звене 3 установлена уравновешивающая масса 72, а на звене 4 - уравновешивающая масса 13. На основании 7 смон- тированы регулируемые фиксаторы, ограничивающие движения маховиков б, 7и8. Рекуператоры для всех степеней подвижности выполнены одинаковыми по схеме, приведенной на рис. 9.10, а. Звено 7 скелета руки связано с двигателем 2 через редуктор - систему зубчатых колес 3-6, причем зуб- чатые колеса 4 и 5 установлены соосно и имеют возможность относи- тельного перемещения в пределах регулируемого зазора. Кроме того, колесо 4 несет два кулачка 7, взаимодействующие с толкателем 8 фикса- тора. Рекуператор содержит два упругих элемента 9 жесткости с, взаимо- действующих с рычагом 10, жестко связанным с колесом 5. На рычаге 10 смонтированы два зуба 77, служащие для фиксации рычага 10 в крайних положениях. Пружины 9 установлены с предварительным натягом, а зоны работы каждой из них разделены упором 72. Рекуператоры имеют две особенности. Во-первых, вследствие полной динамической развязки за счет соответствующего выбора инерционных параметров звеньев руки появилась возможность синтезировать упругую характеристику рекуператора по критерию максимального быстродейст- вия при ограничении динамических нагрузок. В данном случае она выбрана 2. Корендясев А.И. Кн. 2 33
Рис. 9.10. Схема рекуператора для квазиоптимального по быстродействию перемещения звена робота кусочно-линейной (рис. 9.10, б) М = -cq - Р sign q, (9.22) где М - момент, действующий на рычаг 10 от упругих элементов 9, q - угол отклонения рычага 10 от нейтрального положения, Р - предварительный натяг. Из формулы (9.22) следует: чем меньше с, тем ближе развиваемый упругими элементами момент М (определяющий динамические нагрузки в системе) к кусочно-постоянному ±Р. Это приводит к более форсированному режиму движения: ускорение и замедление становятся постоянными и максимально допустимыми на соответствующих интервалах движения. Во-вторых, управление фиксаторами 8 и подкачка энергии в систему осуществляются от одного двигателя 2. Для этого, как отмечалось, колеса 4 и 5 установлены с возможностью относительного перемещения в пределах зазора. При включении двигателя 2 и перемещении колеса 4 в пределах зазора связанный с ним кулачок 7 отводит толкатель 8 с фиксатором. Система освобождается и начинает движение под действием пружины 9, а двигатель 2, выбрав зазор между колесами 4 и 5, сообщает системе энер- гию, необходимую для компенсации потерь на трение. Экспериментальные исследования образца подтвердили преимущества системы с рекуператорами перед системами, построенными по традицион- ной схеме, как по критерию быстродействия, так и по потребляемой мощ- ности. При одинаковых характеристиках рекуператоров и мощности дви- гателей 6 Вт на руке общей массой 2,5 кг получены средние скорости: по первой степени подвижности 6 рад/с, по второй - 11 рад/с, по третьей - 34
20 рад/с. Эти значения не являются предельными. Таким образом, по сравнению с традиционными конструкциями цикловых роботов рассмотрен- ные технические решения позволяют повысить быстродействие ориенти- ровочно в 3-4 раза при одновременном уменьшении на порядок мощности установленных приводов. Экспериментально полученные законы движения звеньев отражают зависимости, приведенные на рис. 9.11-9.14. Записаны: законы изменений динамически независимых координат Vi(0 и V2W’ т-е- выходов рекуператоров первого и второго звеньев руки (кривые 7 и 2 соответ- ственно), а также токи в обмотках двигателей (кривые 3 и 4) этих звеньев и закон изменения координаты y3(f) (кривая 5 на рис. 9.14). Осциллограмма, представленная на рис. 9.11, а, соответствует работе только первой степени подвижности. Видно, что при включении двигателя (кривая 3) движение начинается с запаздыванием 0,03 с. При этом сначала выбирается зазор в системе механических передач от выходного элемента аккумулятора до звена (ступенька на кривой 7), затем осуществляются плавное перемещение, включающее перерегулирование, зависящее от настройки системы, и фиксация на упоре. Реверсирование момента двигателя приводит к обратному движению системы с фиксацией в исходной точке. При этом все особенности кривой при прямом ходе повторяются и при обратном ходе. Аналогичная ос- циллограмма для второй степени подвижности приведена на рис. 9.11, б. Движения здесь осуществляются за существенно меньшее время, поскольку упругая характеристика у второго рекуператора такая же, как у первого, а инерционность элементов второй степени значительно меньше. Одновременное движение по двум степеням подвижности иллюстрирует осциллограмма, приведенная на рис. 9.12. Видно, что характер движений по каждой степени подвижности не изменился. Это свидетельствует о малости динамических взаимовлияний в системе. Данный факт подтверждает осциллограмма на рис. 9.13, где движение по первой степени свободы осу- ществляется от одного фиксатора до другого, а по второй - совершаются затухающие колебания, обусловленные искусственным выключением из работы одного из упоров-фиксаторов. При этом соответствующий реку- ператор в процессе колебаний полностью разрядился. Отметим, что все осциллограммы, представленные на рис. 9.11-9.14, имеют одну особенность: токи двигателей практически не меняются. Это обусловлено малыми скоростями вращения двигателей по отношению к номинальным - токи двигателей равны пусковым. На рис. 9.13 уровни участков 7-777 выстоя кривой 2, соответствующие включению двигателя в положительном направлении, выключению двигателя и включению его в отрицательном направлении при разряженном рекуператоре, отражают незначительные моментные возможности двигателя по сравнению с моментными возможностями рекуператора. Момента, развиваемого двига- телем, достаточно лишь для того, чтобы сместить систему с участка II на участок 777 или на участок 7, в то время как момент, развиваемый рекупе- ратором, соответствует перепаду кривой между участками II и IV. Одновре- менные движения всех трех степеней подвижности иллюстрирует осцил- 2* 35
a Рис. 9.11. Осциллограммы движений в направлении первой (а) и второй (б) степеней подвижности лограмма, приведенная на рис. 9.14. Хорошо видны существенные различия между скоростями трех движений, обусловленные только разностью масс звеньев, так как упругие характеристики рекуператоров одинаковы. Эксперименты показали, что система обладает относительно малой чувствительностью к точности уравновешивания второго и третьего звеньев. При погрешности балансировки до 10% наблюдалась устойчивая работа системы при одновременном срабатывании рекуператоров. С учетом результатов теоретических и экспериментальных исследо- ваний создан цикловой робот для обслуживания быстродействующих прес- сов. В настоящее время прессы могут работать со скоростью 60-80 ударов в минуту, а обслуживающие их роботы, как правило, не более 10 циклов в минуту. Недостаточное быстродействие роботов ограничивает производи- тельность штамповочных робототехнических комплексов. 36
Рис. 9.12. Осциллограммы одновременного движения по двум степеням подвижности Рис. 9.13. Осциллограммы движения по первой степени подвижности при свободных колебаниях по второй степени Рис. 9.14. Осциллограммы одновременного движения по трем степеням подвижности 37
Рис. 9.15. Опытно-промышленный образец циклового ПР с рекуперацией энергии, пред- назначенного для обслуживания прессов Опытно-промышленный образец робота с рекуператором энергии, созданный совместно сотрудниками ИМАШ им. А.А. Благонравова и НИИТЕХНОприбор (г. Смоленск), представлен на рис. 9.15. Кине- матическая схема робота приведена на рис. 9.16. Схема структуры его руки соответствует схеме на рис. 5.14, г. Выполнение механической руки про- мышленного робота по предлагаемой схеме позволило с помощью допол- нительного звена упростить ввод захвата робота в рабочую зону. Это рас- ширяет его функциональные возможности, а также облегчает подвижные звенья руки (уменьшаются их габариты и массы), как следствие, улуч- шаются динамические качества руки, в первую очередь, ее быстродействие. Примеры возможной компоновки ПР на прессе приведены на рис. 9.17. Промышленный робот установлен на основании 1 (см. рис. 9.16) и представляет собой механическую руку, образованную подъемно-поворот- ным рычагом 2, соединенным с основанием 1 поступательной и вращатель- ной кинематическими парами 3 и 4, оси которых параллельны. Приводы поступательного и вращательного движений руки содержат двигатели 6, 5 и аккумуляторы механической энергии в виде пружин 7-10 и программно- управляемых упоров-фиксаторов 11-14 крайних положений звеньев. Дви- жение от привода поворота передается на звено кинематической цепью 15. Рука снабжена дополнительным звеном 17 (несущим захват 16), соеди- ненным вращательной кинематической парой 18 с рычагом 2 и кине- матической передачей 19, связывающей звено 17 с основанием 1. Приво- ды звеньев руки установлены на основании, а механизм развязки враща- 38
20 Рис. 9.16. Кинематическая схема циклового промышленного робота
a Рис. 9.17. Компоновка промышленного робота на прессе тельного и поступательного перемещений выполнен в виде соосной пере- дачи "винт-гайка", ось которой совпадает с осью вращения рычага 2. Один из элементов (винт 20) связан с приводом поступательного движения руки, а другой элемент (гайка 21) жестко соединен с рычагом 2 и кинематически связан с приводом вращательного движения руки. Кинематическая передача 19, связывающая звено 77 с основанием 7, выполняется на гибких эле- ментах, тросах, цепях или зубчатых ремнях, а ее передаточное отношение i и отношение £ длины звена 7 7 к длине I рычага 2 для схемы установки робота на прессе должны удовлетворять условию i = [л/(л-2агс8ш(1-£))] + 1, что соответствует перемещению захвата по траектории, близкой к прямой. Примерная компоновка робота на прессе при q = 0,293, i = 3, полном ходе по прямой 5 = 2/ и расстоянии до нее L= 0,707/ представлена на рис. 9.17, а. При повороте рычага 2 (см. рис. 9.16) на угол л/2 звено 77 повернется относительно вертикальной оси на л, а центр захвата будет двигаться по приближенной прямой 7-7. Примерная компоновка робота на прессе при i = 1 представлена на рис. 9.17, б. При наиболее рациональной компоновке (см. рис. 9.17, а) механическая рука за счет звена 77 и кинематической связи 79 этого звена с основанием 7 обеспечивает прямолинейное движение захвата 76, а не движение по окруж- ности. Таким образом, всегда можно расположить робот на боковой стороне станины пресса так, чтобы траектория захвата проходила между направляющими боковыми колонками штампа. Поворот руки осу- 40
ществляется от привода, включающего двигатель 6 и пружинные реку- ператоры 9, 10 (см. рис. 9.16). Благодаря тому, что привод подъема руки ро- бота вынесен на основание, перемещаемая масса руки уменьшена, а следо- вательно, ее собственная частота и быстродействие увеличены. При пово- роте рычага в передаче "винт-гайка" имеет место некоторое поступа- тельное перемещение руки в вертикальном направлении. Однако переда- точное отношение "винт-гайка" может быть принято достаточно большим, в результате чего достигается приближенная кинематическая развязка этих двух степеней подвижности. Таким образом, выполнение ПР по предлагаемой схеме позволяет с помощью дополнительного звена и кинематической передачи, связываю- щей звено с основанием, упростить ввод захвата в рабочую зону, а также облегчить подвижные звенья руки, уменьшить их габариты и массу за счет вынесения всех приводов на основание, и улучшить тем самым динами- ческие качества руки и ее быстродействие. Робот такой конструкции имеет грузоподъемность 0,3 кг, может увеличить производительность до 25 циклов в минуту, устанавливается на боковую поверхность станины пресса (не занимая зоны оператора- наладчика с лицевой стороны пресса) и позволяет загружать или выгружать изделия с пресса, пронося их между колонками штампов. 9.9. РЕКУПЕРАЦИЯ МЕХАНИЧЕСКОЙ ЭНЕРГИИ В РОБОТЕ С ПОЗИЦИОННОЙ СИСТЕМОЙ УПРАВЛЕНИЯ Очевидные преимущества рекуперации энергии в цикловом роботе сти- мулируют попытки оснастить рекуператорами энергии более сложные по- зиционные промышленные роботы. Управление движениями позиционных роботов осуществляется с помощью датчиков обратных связей - датчиков относительного положения звеньев руки робота, включенных в контур регулирования. Поэтому позиционные промышленные роботы могут реа- лизовывать программы с гораздо более сложным циклом, чем цикловые роботы, работающие по механическим упорам. Позиционные системы мо- гут выйти в любую точку рабочего пространства, заданную программой. Проблему оснащения позиционных роботов рекуператорами энергии осложняет именно невозможность использования стационарных програм- мно-управляемых упоров-фиксаторов. Вместо них необходимо применять различные тормозные программно-управляемые устройства, что сопряжено с трудностями обеспечения точности отработки программных значений обобщенных координат. Вторая проблема связана с созданием управляемых устройств с малым временем срабатывания, обеспечивающих связь рекуператоров энергии с кинематическими цепями привода звеньев. И, наконец, должны быть решены также вопросы подзарядки рекуператоров. Одна из схем привода звена с рекуперацией энергии, которая предназ- начена для позиционных робототехнических систем, приведена на рис. 9.18, а. При разработке этой схемы использованы результаты теорети- ческих исследований и накопленный экспериментальный опыт. 41
a Рис. 9.18. Схема привода одной степени подвижности для позиционного робота с рекупе- рацией энергии Привод смонтирован в автономном блоке 1, который, как правило, устанавливается на основании. Выходным звеном 2 он связан с кинемати- ческой цепью привода ведомого звена. Основным силовым элементом, обеспечивающим разгон и торможение звена, является пружинный двигатель-рекуператор механической энергии 3. (Его упрощенную схему см. на рис. 9.18, б.) Рекуператор 3 снабжен неподвижными упорами-фикса- торами, программно-управляемыми от электромагнитов 4 и 5, и датчиками б и 7, связанными с системой управления и регистрирующими конечные положения рекуператора. Для компенсации потерь в системе используют электродвигатель 8, установленный на валу 2. При необходимости между двигателем и валом 2 устанавливается редуктор с требуемым передаточным отношением. На валу 2 смонтирован также механизм реверса, состоящий из конических зубчатых колес 9-11 и двух программно-управляемых электромагнитных муфт 12 и 13. Входной элемент механизма реверса - колесо 11 связано с выходным 42
Рис. 9.19. Этапы отработки программного движения в позиционном роботе с рекупера- цией энергии валом 14 рекуператора через управ- ляемую муфту сцепления 75. Таким образом, если муфта 75 включена, то направление момента рекупера- тора энергии на выходном валу 2 будет определяться тем, какая из муфт 72 или 13 включена. Если все три муфты включены, то вал 2 и рекуператор заторможены - система теряет степень подвижности. На выходном валу 2 установлен датчик 16, регистрирующий положение ведомого звена. Алгоритм работы привода рассмотрим совместно с диаграммой, приведенной на рис. 9.19. На диаграмме условно показаны различные по- ложения ведомого звена, регистрируемые датчиком 16, и рекуператора 14 в двух крайних положениях, фиксируемых датчиками б и 7. В исходном положении пружина рекуператора взведена и удерживается фиксатором 4 в крайнем положении, что регистрируется датчиком 6. Если все муфты 72, 13 и 7 5 включены, система заторможена. Реверсивный дви- гатель 8 обесточен, датчик 16 регистрирует положение 7 ведомого звена робота. При получении команды на перемещение в прямом направлении на угол Р по сигналу от системы управления включается муфта 72. Система готова к движению. Далее при срабатывании фиксатора 4 освобождается пружина рекуператора, звено робота начинает разгоняться в прямом направлении под действием момента пружины рекуператора. Одновременно с действием фиксатора включается в соответствующем направлении двигатель 8, мо- мент которого компенсирует трение и погрешности включения муфт во времени (по расчетам, энергия, поступающая от двигателя, должна быть на 10-15% больше энергии потерь на трение). На этапе разгона движение передается от рекуператора 3 через муфту 75, конические колеса 77, 10 и муфту 13 на выходной вал 2 и далее к ведомому звену. Колесо 9 свободно вращается в противоположную сторону относительно вала 2, поскольку муфта 72 отключена. Разгон продолжается до некоторого положения 77 ведомого звена. В этом положении система управления отключает муфту 75. В результате рекуператор будет отключен от системы на некоторый период 11-111, в течение которого выходное звено будет продолжать перемещаться в том же направлении под действием сил инерции и момента двигателя 8. Моменты времени II и 777 можно рассчитать. При положении 777 ведомого звена пружина рекуператора переходит из фазы сжатия в фазу растяжения, происходит выравнивание скоростей вала 14 рекуператора и колеса 77, а муфта 75 по команде от системы управления практически без относи- тельного скольжения соединяет вал 14 и колесо 7 7. Начинается фаза тор- 43
можения, в которой кинетическая энергия ведомого звена тратится на зарядку аккумулятора. В положении IV скорость звена близка к нулю, а флажок аккумулятора достигает фиксатора 5, что регистрируется датчиком 7. По сигналу датчика 7 отключается муфта 75 и под действием момента двигателя 8 система отрабатывает на ползучей (малой) скорости остав- шийся до программного задания угол а. При достижении заданной позиции V по сигналу датчика 16 двигатель 8 обесточивается и включаются муфты 75 и 72. Система кинематически зафиксирована, а приводной блок вышел в исходное состояние и готов к отработке следующего программного движения. Как видим, возможность перемещения звена в любом направлении обес- печивается механизмом реверса, а дозирование перемещений, т.е. возмож- ность выхода в любую позицию (или отработки любого угла) достигается за счет слежения за показаниями датчика 16 и релейного управления муфтой 75 в зависимости от этих показаний. Расчет моментов 77 и 777 переключения муфты 75 достаточно прост: они должны быть симметричны относительно биссектрисы программного угла поворота. ЛИТЕРАТУРА 1. Акинфиев Т.С., Бабицкий В.И., Крупенин В.Л. Манипуляционные системы резонансного типа И Машиноведение. 1982. № 1.С. 3-8. 2. Акинфиев Т.С. Резонансные манипуляционные системы с электроприводом// Там же. 1983. №6. С. 18-23. 3. Акинфиев Т.С., Пожаринский А.А. Динамика манипуляционной системы, управляемой резонансным пневмоприводом И Там же. 1984. № 6. С. 10-15. 4. Акинфиев Т.С., Корешкова И.А. О влиянии массы переносимого груза на динамику резонансного манипулятора И Там же. 1985. № 1. С. 37-40. 5. Акинфиев Т. С., Пожаринский А.А. Динамические свойства резонансной манипуляционной системы с односторонним пневмоприводом // Там же. № 2. С. 24-30. 6. Болотин Л.М. и др. Механическая рука. А.с. № 1006208 СССР И Б.И. 1983. № 11. 7. Болотин Л.М., Корендясев А.И., Саламандра Б.Л., ТывесЛ.И. Цикловые роботы с аккумуляторами энергии. Основы построения привода // Станки и инструмент. 1984. № 4. С. 7-10. 8. Каган В.Г. Электроприводы с предельным быстродействием для систем воспроизведения движений. М.: Энергия, 1975. 240с. 9. Корендясев А.И., Саламандра Б.Л., ТывесЛ.И. Особенности построения кинематических схем автоматических манипуляторов И Станки и инструмент. 1981. № 2. С. 9-13. 10. Корендясев А.И., Саламандра Б.Л., ТывесЛ.И. Маятниковые роботы// Изобретатель и рационализатор. 1985. № И. С. 6-9. И. Корендясев А.И., Саламандра Б.Л., ТывесЛ.И. Цикловые роботы с аккумуляторами ме- ханической энергии. Многопозиционные системы с одной и несколькими степенями подвижности И Станки и инструмент. 1984. № 6. С. 4-8. 12. Корендясев А.И., Саламандра Б.Л., ТывесЛ.И. Методика расчета быстродействующих роботов с рекуперацией механической энергии И Механизация и автоматизация ручного труда / МДНТП им. Ф.Э. Дзержинского. М., 1984. С. 14-25. 13. Мандельштам Л.И. Лекции по теории колебаний. М.: Наука, 1972. 470 с. 14. Микроэлектродвигатели для систем автоматики (Техн, справ.) / Под ред. Э.А. Ладоч- никова, Ю.М. Юферова. М.: Энергия, 1969. 272 с. 15. Стародуб К.Я., Михайлов Н.Н. Синхронные передачи и следящие системы И Машино- строение, 1971. 280 с.
Глава 10 УСТОЙЧИВОСТЬ МНОГОМЕРНЫХ СИСТЕМ АВТОМАТИЧЕСКОГО РЕГУЛИРОВАНИЯ ПРОМЫШЛЕННОГО РОБОТА 10.1. ИДЕОЛОГИЯ ПОСТРОЕНИЯ. КОНЦЕПЦИЯ АВТОНОМИЗАЦИИ Задача качественной отработки траекторий движения и позициониро- вания рабочего органа манипуляционной системы, задаваемых программой, решается на нижнем уровне системы управления роботом многомерной системой автоматического регулирования. Качество отработки програм- мных значений обобщенных координат системой автоматического регули- рования характеризуется устойчивостью и величинами ошибок в устано- вившихся режимах, статической точностью, поведением системы в переход- ных режимах и динамической точностью [37]. Важнейшая из этих характе- ристик - устойчивость - представляет собой минимальное требова- ние, которому должна удовлетворять система. Для неустойчивых сис- тем остальные параметры в общем случае теряют смысл. Часто поведе- ние сложных систем характеризуют двумя словами: система устойчива [35]. Устойчивость системы означает, что малые изменения входного сигнала, начальных условий или параметров системы не приводят к значительным отклонениям выходной координаты. Устойчивость много- мерных систем автоматического регулирования промышленного робота (МСАР ПР) - почти всегда необходимая предпосылка для получения желаемого качества процесса управления. Именно с ней в первую очередь связана более чем вековая история развития теории автоматического регулирования. Накоплен большой опыт построения, анализа и синтеза систем регули- рования, позволяющий создавать системы автоматического регулирования с заданными характеристиками качества отработки программы. Основные трудности в использовании этого опыта при разработке МСАР ПР обусловлены не только сложностью и многомерностью объекта регули- рования, но и специфическими особенностями методов теории автомати- ческого регулирования. Дело в том, что при построении систем регулиро- вания даже относительно несложных одномерных объектов образуются нелинейные динамические системы с большим числом степеней свободы. Их математическое описание требует существенной идеализации. В то же время результаты анализа и синтеза регуляторов весьма чувствительны к степени идеализации элементов системы регулирования. Поэтому методы теории систем автоматического регулирования зачастую дают возмож- ность, используя модели, получить лишь приближенный результат, кото- 45
рый необходимо в дальнейшем уточнить, например, путем моделирования на ЭВМ. Построение и анализ упрощенных моделей, а также уточненный расчет системы регулирования на ЭВМ - основные этапы при создании МСАР ПР. Настоящая глава посвящена общим вопросам построения МСАР ПР. Поэтому основное внимание уделено проблемам первого этапа. Эти проб- лемы касаются выбора рациональной схемы системы регулирования и ее ориентировочных параметров, а также улучшения динамических свойств систем регулирования; решаются они на основе рекомендаций теории авто- матического регулирования. Заметим, что системы регулирования ПР в силу специфики объекта и требований к режимам его движений ставят мно- го новых практически важных задач перед теорией автоматического регу- лирования, решение которых способствует развитию последней. В силу отмеченной специфики методов теории систем автоматического регулирования наибольшее развитие получили методы анализа и синтеза одномерных систем регулирования. Основные рекомендации по приданию желаемых свойств многомерному регулятору направлены на обеспечение независимости регулируемых параметров друг от друга, т.е. автономности отдельных регуляторов. В настоящее время проблема автономизации в МСАР ПР решается главным образом не за счет специальных корректирующих связей между отдельными (сепаратными) контурами регулирования, а за счет мер, предусмотренных в конструкции механической руки и привода (см. гл. 8), и максимального сближения точек управления и наблюдения в сепаратных контурах регулирования [18]. Эти меры направлены на уменьшение динамического и кинематического взаимовлияния между сепаратными регуляторами. Обоснованность принимаемых конструктивных мер следует из анализа коэффициентов в уравнениях динамики (типа (8.19)) объекта регули- ровании, дополненных уравнениями регуляторов. Преобразуем уравнения динамики (8.19) объекта регулирования, учитывающие податливость меха- нических передач руки робота, абстрагируясь от конкретной характе- ристики двигателя. Вектор обобщенных внешних сил и сил трения в кине- матических парах скелета руки представим в виде QB = -[diagfcp,]q + Qrp(q) (Qrp(q) - вектор гравитационных сил), учитывая таким образом лишь вязкое трение в кинематических парах руки. Учтем также силы вязкого трения на валах двигателей. Эти силы в системе обобщенных координат ф имеют вид Ф = [diag^J^. Теперь, используя соотношения Ц, (q, 5) = [АЧ-'П^А-1, b4,(q,q,g) = [A7T1b(q,q,£), QBV=[Arr1QB,Qnv=Cv[^B-(|/], 46
где вектор параметров манипулятора ПР, запишем уравнения (8.19) в координатах ф валов двигателей в виде IIv(q)g)4r+bv(q,q,g) + [Ar]-,[diagfepi.][A-1]ij/-[Arr1Qrp(,<D + + СДф-фдв] = 0, (ЮЛ) [diag(/„B/)]фдв + [diag^B/]^B + Cv[i|inB - ф] = Фдв. Здесь Фдв = [*РДВ1...ХРДВ/...'РДВП]Г - вектор управляющих воздействий, при- ложенных к валам двигателей. Совмещение точек наблюдения и управления, т.е. установка датчиков обратных связей на валах двигателей (фдв), и организация сепаратных об- ратных связей вида Чв./ = МФпР/-фдвг)> (Ю-2) где Мдв/ s Ч*дв z - момент, развиваемый двигателем l-й степени подвижности ПР, предопределяют устойчивость МСАР ПР на уровне идеологии ее построения. Действительно, уравнения (10.1) и (10.2) можно интер- претировать как уравнения динамики диссипативной механической систе- мы, находящейся в гравитационном поле, не содержащей дополнительных источников энергии и связанной с подвижным основанием (упр z) упругими элементами жесткости kt. При любом фиксированном положении осно- вания (фпр(= const при любом фиксированном векторе программных значений координат) характер равновесия такой системы, находящейся под действием только потенциальных сил, определяется характером экстремума ее потенциальной функции. Согласно теореме Лагранжа-Дирихле, положение равновесия' будет устойчивым, если потенциальная функция в положении равновесия имеет минимум. Если в конструкции механической руки, например с помощью уравновешивающих механизмов (см. гл. 6), обеспечена независимость потенциальной функции от конфигурации руки, то достаточным условием минимума потенциальной функции для системы уравнений (10.1) и. (10.2) будет положительное значение коэффициентов kt в цепях сепаратных обратных связей. В общем случае, из-за медленного изменения компонент вектора [A^-'Q^q) и, следовательно, малого изменения гравитационной составляющей потенциальной функции, устойчивость системы сохраняется. Статический увод (статическая ошибка, см. гл. 7) тем меньше, чем больше абсолютные величины kt и чем большей жесткости кинематические переда- чи привода. Описанная организация обратных связей в МСАР ПР - первый шаг на пути автономизации отдельных регуляторов: связь между ними осуществляется через объект регулирования, причем, как видно из вто- рого уравнения (10.1), после подстановки в него (10.2) и выражения С1|((фДв - ф), определенного из первого уравнения (10.1), взаимовлияние только по регулируемым параметрам определяется вектором гравита- 47
ционных сил [diag(ZHB, )]фдв + [diag^B,]»i»w + Ц,(ф^)ф+bv(q,q,^) + +[ A7']"1 [diag^pJ А-’ф- [A'r’CMq) = [diag k,( VnpZ - Ждв,)]. (10.3) Естественно, уравновешивание гравитационных сил повышает авто- номность регуляторов. Требование повышения точности отработки координат, характе- ризующих конфигурацию скелета руки, ф (а не фдв) определяет необхо- димость повышения жесткости передач. С увеличением жесткости уменьшается статическое и динамическое рассогласование между коор- динатами фдв и ф, и при Су —> получим Ф~Фдв=0- Из уравнения (10.3) видно, что взаимовлияние между регуляторами через объект регулирования сохраняется и при Су —> «>, однако степень влияния при этом уменьшается (см. гл. 8), что находит отражение в увеличении диагональных коэф- фициентов в матрицах инерционных и диссипативных коэффициентов nv(q^) = [diag(/flB,)] + nv(q^)I bv = [diag^B, ]+[ A7]4 [diagfep,] А'1. Таким образом, увеличение жесткости передач также способствует достижению автономности отдельных регуляторов. Дальнейшее повышение автономности МСАР ПР базируется на двух не исключающих друг друга подходах. Один из них направлен на уменьшение влияний со стороны объекта регулирования и основан на идеях и методах динамической развязки движений механических рук ПР. Второй направлен на обеспечение удовлетворительной работы регуляторов в условиях ши- рокого диапазона изменений взаимовлияний и связан с созданием в приводе, в том числе с помощью регулятора, свойств астатического УПУ (см. гл. 8). В последнем случае закон регулирования выражает собой кинема- тическое соотношение, которое не зависит от динамики объекта и от дей- ствующих в системе сил. Естественно, что для астатического УПУ вместо второго уравнения в (10.1) следует записать закон регулирования типа Фдв = МФпр - Фдв]>к = [diag(kz)], kt = const, [фпр - Фдв] = [diag(Vnp I - I = Если закон регулирования в каждом регуляторе можно представить в виде кинематического соотношения, зависящего только от одного регули- руемого параметра и его производной, то такой регулятор автономен. Для того, чтобы это кинематическое соотношение характеризовало поведение выходных координат механической руки ПР, необходимо существенно увеличить жесткость передаточных механизмов, либо совсем отказаться от них (direct-drive). Тогда динамику ПР вместо системы (10.1) можно удовлет- ворительно описать системой Ф = к[Фпр-»И- 48
Ярко выраженными свойствами астатического УПУ обладает следящий гидропривод. Массогабаритные свойства гидропривода позволяют устанав- ливать его непосредственно на звеньях механической руки. При этом, так как А = Е, вместо последней системы можно записать q = kfanP-q] Известны [13, 29, 46] способы построения регуляторов, приводящие к эффекту астатического УПУ и в случаях применения электродвигателей. Один из них, к которому относятся большинство регуляторов электро- приводов ПР, базируется на идее бесконечного (а практически достаточно большого) коэффициента усиления [26]. Реализовать бесконечно большой коэффициент усиления в регуляторе, при котором обеспечивается его нечувствительность к изменениям нагрузки (а, следовательно, и к взаимо- влияниям в МСАР ПР), весьма труднно, так как из-за нелинейностей в контуре регулирования регулятор склонен к автоколебаниям. Кроме того, реализация высоких коэффициентов усиления связана с необходимостью иметь большие мощности в приводе. На практике стрем- ление повысить коэффициенты усиления противоречит различным огра- ничениям, которым должны удовлетворять процессы в двигателе. Другие способы построения регулятора, обладающего аналогичными свойствами, связаны с использованием высокочастотных автоколебательных и сколь- зящих режимов его работы. Известны попытки реализовать их в релейных (двухпозиционных) системах регулирования [44] и в системах с переменной структурой [13]. Если в приводе ПР используют электродвигатель, то существенное значение для автономности регуляторов имеют меры, способствующие динамической развязке объекта регулирования. Так, приближенная динамическая развязки в ПР электромеханическим приводом, достигаемая за счет высоких передаточных отношений редукторов (100-200), сущест- венно уменьшает (в ~i2 раз) приведенные к координатам ф инерционные ха- рактеристики механической руки (nv(q, £)) ив/ раз снижает влияние кори- олисовых и гироскопических сил bv(q,q,£). Полная динамическая развязка обеспечивает равенство нулю векторов [A^-'QrpCq) и bv(q,q,£), а также диагональность и постоянство матрицы nv(q,© = [diag(7t/(g))]. Полная динамическая развязка в механической руке, приводит к высо- кой степени автономности отдельных регуляторов независимо от переда- точного отношения редуктора. При этом уравнения МСАР ПР согласно (10.1) и (10.2) будут [diag(nX?))]^ + [Ar]-1[diag(Z>pJ][A-1]^ + [diag(cv;)][i]i-»|/flB] = O, (10.4) [diag(/aBZ )]фдв + [diag(^BZ)]»jiJ1B + [diag(cv ,)][фдв - ф] = [diag^(vnp/ - Ждв/)] • При малом трении в шарнирах руки членом [Ar]-1[diag(Z>p,)][А-1 ]ф мож- но пренебречь. Тогда, как видно из (10.4), каждый сепаратный регулятор будет полностью автономен. На него не будут оказывать влияние процессы 49
Рис. 10.1. Динамическая модель одной степени подвижности руки в случае динамической развязки и схема внешнего контура регулирования сепаратного регулятора Автономизация сепаратного регулятора определена постоянством параметров динамической мо- дели* Л/, Cyj, /дв I регулирования по другим степеням подвижности. Эффект автономности в этом случае не связан ни с особенностями построения регулятора, ни с выбором закона регулирования. И то, и другое можно использовать для повышения качества функционирования ПР, тем более, что по каждой степени подвижности объект регулирования сепаратного регулятора в общем случае представляет собой систему с двумя степенями свободы (рис. 10.1), а точность функционирования ПР определяется ненаблюдае- мыми координатами руки у, = Vz(q), I = 1,2,...,п. Нами рассмотрены основные идеологические предпосылки построения традиционных МСАР ПР, а именно организация сепаратных контуров регу- лирования, охватывающих приводы, и комплекс мер по обеспечению их автономности. Перечисленные меры автономности в той или иной степени находят практическое воплощение в конструкциях роботов, приводов и регуляторов. Они определяют не только работоспособность МСАР ПР, но и возможность ее представления как совокупности не связанных друг с другом одномерных систем регулирования. Для более глубокого анализа и синтеза последних могут быть применены наработки (и их уже применяют), а также методы теории систем автоматического регулирования [31, 37]. Для графического представления особенностей построения МСАР ПР, в частности сепаратных регуляторов, мы будем пользоваться принципиаль- ными блок-схемами, например такими, как на рис. 10.1. В каждой из них нетрудно выделить силовую и управляющую части, а также измерительно- преобразовательные устройства. Силовая часть в общем случае включает двигатели Дв; (/ = 1,2,..., п), например, двигатели постоянного тока с тирис- торными преобразователями ТП/ и исполнительный механизм робота, описываемые уравнениями динамики. Вычислительные устройства, ограничители и устройства сравнения, усиления, дифференцирования и интегрирования сигналов в управляющей части схемы будут представлены только на уровне блоков. С целью легкого 50
восстановления структуры закона управления (управляющего воздействия) для обозначения устройств усиления, дифференцирования и интегрирования будем использовать их передаточные функции - кц (j = 1,2,I =1,2,..., n), p и 1/p соответственно. Для блоков сравнения и ограничителей сигналов воспользуемся обозначениями, принятыми в теории систем автоматическо- го управления (САУ) [31]; а в блоках "вычислительные устройства" будем указывать общий вид вычисляемой функциональной зависимости. Входами в управляющую часть систем служат, с одной стороны, программа, вырабатываемая на верхнем уровне системы управления, а с другой - выходы измерительно-преобразовательных устройств, таких как датчик положения Dh датчик скорости Тг, (тахогенератор), датчик тока ДТ, и т.д. На входных каналах управляющей части укажем измеряемые дат- чиками величины. С учетом сказанного общие коэффициенты усиления по отклонению к^ или по скорости kv будут представлять собой произведения некоторых наборов коэффициентов усиления согласующих усилителей в /-м сепаратном регуляторе. В частности, общий коэффициент усиления по отклонению для схемы 1-го регулятора, представленной на рис. 10.1, будет ку = ки. 10.2. СТРУКТУРА СЕПАРАТНЫХ РЕГУЛЯТОРОВ В ЦИКЛОВЫХ, ПОЗИЦИОННЫХ И КОНТУРНЫХ СИСТЕМАХ УПРАВЛЕНИЯ РОБОТАМИ Рассмотрение применяемых в ПР структур сепаратных регуляторов начнем с разомкнутых систем. Под разомкнутыми системами регулиро- вания ПР понимают такие системы, в которых управляющее воздействие, развиваемое двигателем, не формируется с помощью обратных связей по положению как функция измеряемого рассогласования текущих и програм- мных значений обобщенных координат. Иными словами, разомкнутая система регулирования не содержит измерителей текущего состояния регу- лируемой величины с блоками сравнения этого состояния с программным. В разомкнутой системе нельзя обеспечить точность и устойчивость движения, требуемого программой, только за счет управления усилием двигателя, рассчитанным по уравнениям динамики (например, по (10.1)). Этот эффект легко объяснить факторами, не учтенными в динамической модели (да и невозможностью их достаточно точного учета), а также огра- ниченной точностью воспроизведения управляющих воздействий. Сказан- ное не означает, что разомкнутые системы не применяют в робототехнике. Следует отметить, что во всех случаях применения разомкнутой системы регулирования в районе программного положения организуется (не за счет обратных связей) упругая восстанавливающая сила, действие которой в конечном счете эквивалентно закону регулирования в замкнутой системе. Все цикловые системы управления ПР работают по разомкнутой схеме. Для обеспечения точности и устойчивости в точках позиционирования для создания упругой восстанавливающей силы используется совместное дей- ствие на звено руки (или на выходное звено двигателя) усилия привода и реакции упора. Эти два воздействия в области программного значения обоб- 51
щенной координаты создают суммарное усилие, зависящее от рассогласо- вания текущего и программного положений звена руки. Разомкнутая система регулирования с успехом применяется в системах и позиционного, и контурного управления ПР. Для этого используют приводы с ярко выраженными свойствами позиционных УПУ, например шаговые электродвигатели. Точность положений звеньев руки относительно дискретных программных позиций и траекторий обеспечивается в этих случаях организованной в конструкции в пределах каждого шага двигателя упругой восстанавливающей силы и ограничениями на программные значения скоростей и ускорений при отработке траекторий. В остальных случаях в позиционных и контурных системах управления ПР применяют замкнутые системы регулирования, которые обязательно содержат датчики положения, считывающие значения обобщенных коор- динат (например, уда/ см. рис. 10.1), сепаратные обратные связи и сум- маторы (блоки сравнения) программных и действительных значений обоб- щенных координат. Сепаратные обратные связи призваны обеспечить слежение за програм- мными значениями соответствующих обобщенных координат, но им неиз- бежно сопутствуют статические и динамические ошибки, поскольку сигнал управления начинает вырабатываться лишь при наличии рассогласования. Уменьшение ошибок требует увеличения коэффициентов усиления в законах регулирования (10.2), а последнее чревато потерей устойчивости. Для повышения запаса устойчивости в каждый сепаратный контур ре- гулирования вводится контур обратной связи по скорости. При этом сепа- ратный регулятор оснащается специальным датчиком скорости. Пример построения и структура таких регуляторов с обратной связью по скорости рассмотрен в гл. 8 (см. рис. 8.1,б). Очень часто, когда используют электро- привод, датчиком скорости служит тахогенератор, устанавливаемый на валу двигателя (рис. 10.2, а). В некоторых случаях (в зависимости от конструкции датчика положения) сигнал, пропорциональный скорости изменения поло- жения, может быть получен дифференцированием сигнала датчика положе- ния, либо сигнала рассогласования текущего и программного значения регу- лируемой координаты (рис. 10.2, б). Недостатком этого способа получения информации о скорости изменения обобщенной координаты является низкая точность дифференцирующих устройств при малых скоростях. В позиционных системах управления, когда все внимание обращается в основном на точность отработки программно задаваемой позиции, в сепа- ратные контуры регулирования вводят блок интегрирования сигнала рассо- гласования. При этом реализуется закон регулирования в виде линейной комбинации собственно рассогласования, скорости изменения рассогла- сования (либо положения) и интеграла рассогласования [4]. Структуры, представленные на рис. 10.2 - позиционные, интегральные и дифференциальные регуляторы - ПИД-регуляторы. Введение интеграла в закон регулирования снижает запас устойчивости системы (может вызвать и неустойчивость) за счет повышения порядка дифференциального уравнения относительно регулируемой величины, описывающего регуля- тор, но позволяет скомпенсировать постоянную составляющую внешней нагрузки, т.е. повысить статическую точность системы регулирования. 52
a Рис. 10.2. ПИД-Регуляторы ПР с использованием датчика скорости Trz выходного вала дви- гателя (а) и с дифференцирующим устройством сигнала рассогласования (6). Выделены схемы 1-го сепаратного регулятора (Z = 1, 2,..., п) Характерная особенность большинства сепаратных регуляторов в по- зиционных системах управления ПР заключается в том, что описанный регулятор (ПД- или ПИД-регулятор) включается лишь при достижении некоторой е-окрестности программного значения обобщенной координаты, в то время как при больших рассогласованиях сигнал датчика обратной связи по положению используется для программного управления усилиями (акселерационное УПУ) или скоростями (астатическое УПУ), обеспечивая плавные разгоны и торможения [1]. В таких системах высокое быстродействие достигается за счет исполь- зования разомкнутой системы регулирования при |Vnp/_ Удв/|>е/’ а ВЫСО- 53
Рис. 10.3. Схема изменения общего коэффициента усиления по скорости 1-го сепаратного регулятора за счет изменяемого коэффициента усиления цепи обратной связи кая точность позиционирования - за счет включения ПИД-регулятора при |Vnp/~Ждв/|—е/- Плавность движения зависит от программы разгона и торможения. Такая программа изменения усилий или скоростей мо- жет иметь вид функции времени (например, рассчитана по динамической модели объекта (8.10)), но может быть задана (например, пересчитана) как функция положения звена и реализована с помощью датчика положения. В последнем случае на интервале до |vnpz_ Ждв/|>е/ систему регули- рования можно отнести к классу разомкнутых, так как, несмотря на наличие датчика обратной связи, отсутствует блок сравнения с программным значением обобщенной координаты и, соответственно, управляющее воздействие не формируется как возвращающая сила в функции рассогласования. Тем не менее задание программы измене- ния воздействий в функции положения звена уменьшает влияние возмущений по сравнению со случаями реализации такой программы как функции времени [1]. Аналогичный эффект удачного сочетания высокой точности позицио- нирования и высокого быстродействия при больших перемещениях дости- гается за счет изменяемого в процессе движения коэффициента усиления в цепи обратной связи по скорости в зависимости от сигнала датчика скорости Тг; (рис. 10.3). При использовании в приводе ПР электродвигателей постоянного тока в структурах сепаратных регуляторов появляются внутренние контуры регуляторов тока (рис. 10.4), реализующие ограничения на функцио- нирование двигателей. Ограничения обусловлены в основном такими явле- 54
Рис. 10.4. Схема современного комплектного электропривода с подчиненным токовым контуром ae(\pz) - переменная величина ограничения напряжения U2 на входе в токовый контур, - выходное напряжение скоростного контура, внешнего по отношению к токовому Механические передачи руки робота
ниями, как коммутация обмоток якоря (чтобы предотвратить искрение и пробой изолирующих материалов, необходимо ограничить нарастание тока и скорость вращения двигателя) и нагрев двигателя. Чтобы двигатель не нагревался, ток в якоре должен быть ограничен, а следовательно, ограни- чен и момент двигателя на низких скоростях вращения и в заторможенном режиме. Не лучшая характеристика момент-масса электродвигателя делает необходимыми максимальное использование всех возможностей двигателя и работу на предельно допустимых режимах. Именно для этого используют регулятор тока. Сплошными линиями на рис. 10.4 показаны основные блоки современ- ного комплектного электродвигателя, встраиваемого в сепаратные контуры МСАР ПР. Упомянутые ограничения реализуются в нем с помощью подчиненного токового контура [3], охватывающего тиристорный преобра- зователь ТП/. Обратная связь по току осуществляется от датчика тока ДТЛ устанав- ливаемого на выходе тиристорного преобразователя ТПЛ Датчик тока пре- образует ток якоря в пропорциональное ему напряжение, выполняя одно- временно функцию гальванической развязки якорной цепи и цепи управ- ления. С учетом малой постоянной времени токового контура по сравнению с электромеханической постоянной времени привода можно организовать ограничения на ток в виде ограничения напряжения на входе в токовый контур. Действительно, при таких условиях, если задание ограничено, то и соответствующий ему ток будет ограничен практически так же. Ограничения в функции скорости ф; двигателя отражены на графике х = х(ф(). Вторая особенность схемы, представленной на рис. 10.4, связана с пере- менным коэффициентом усиления в интегрирующем контуре. Больший коэффициент усиления к21(у) при малых скоростях позволяет уменьшить запаздывание реакции привода на изменение постоянной составляющей внешней нагрузки, а также быстрее нейтрализовать постоянную состав- ляющую нагрузки при подходе к программной позиции. Так как увеличение коэффициента усиления в интегрирующем контуре к2! может привести к ухудшению качества регулирования и потере устойчивости, необходимо синхронно изменять и коэффициент усиления контура регулирования скорости ки. Этим одновременно достигается эффект малого демпфирования на высоких скоростях движения и большого на низких скоростях (см. выше, рис. 10.3). Здесь следует напомнить, что описываемые технические решения в большинстве случаев не препятствуют слишком энергичным процессам разгона и торможения, вызывающим механические колебания конструкции руки ПР, сопровождаемые соударениями элементов в кинематических парах и передачах. Это обстоятельство требует введения в позиционные системы управления ПР дополнительных устройств, позволяющих программировать процессы разгона и торможения. Такие устройства обычно выносят за контур регулирования скорости (за комплектный электропривод), а иногда и на верхний уровень системы управления, т.е. в "программу". 56
Наряду с рассмотренными выше структурами сепаратных регуляторов ПР, выполненных в виде разомкнутых и замкнутых систем регулирования и их не одновременно действующей совокупности, находят применение более совершенные системы регулирования (особенно для контурных систем управления ПР), построенные в соответствии с идеями комбинированного управления [15] при параллельной работе замкнутой и разомкнутой систем. Повышение качества регулирования в таких системах достигается не за счет введения интегралов в замкнутый контур регулирования и различных корректирующих устройств, нейтрализующих негативные явления, вы- званные, например введением интегралов, а за счет параллельного исполь- зования разомкнутой системы, с помощью которой можно учитывать имеющуюся или дополнительно получаемую информацию о внешних воздействиях на систему (нагрузках, программе). Сущность комбинированного управления состоит, таким образом, во введении в замкнутую систему регулирования, работающую по отклонению Зфпр(Г) = Фпр “ Фдв’ Дополнительного сигнала управления, нейтрализующего действующие на ПР возмущения (Фвозм на рис. 10.5, а) или ускоряющего реакции привода на программные значения (Фдв.Пр на рис. 10.5,6). Не исключается и их одновременная реализация. Регулирование по возмущению (см. рис. 10.5, а) предполагает измерение с помощью специальных датчиков DB параметров возмущающих воздействий на исполнительный механизм робота (или факторов, его определяющих, например направления а и скорости потока внешней среды V). По сигналам датчиков и известному состоянию (фиф) механизма руки робота рассчитывают приведенные к обобщенным координатам возмущающие воздействия Фвозм и с соответствующим знаком аддитивно добавляют к сигналам управления двигателями. Регулирование по управляющему воздействию (см. рис. 10.5, б) предпо- лагает расчет управляющего воздействия Фдвпр по динамической модели ПР и известной программе |фпр,фпр,фпр} и добавление (аддитивно) соот- ветствующего ему сигнала к сигналам управления двигателями. Сигнал Ф'дв.пр получается от модели разомкнутого привода, т.е. в рассматриваемых случаях из уравнений (10.1) решением первой задачи динамики по известной программе движений |фпр,фпр,фпр|. К полезным свойствам комбинирован- ных следящих систем регулирования в первую очередь относится умень- шение ошибки Зфпр реализации программы вследствие прогнозируемого действия разомкнутой части системы. Ошибки в прогнозе (или в расчете Фвозм), вызванные неадекватностью модели и системы, не приводят к неустойчивости системы, так как условия устойчивости определены только свойствами ее замкнутой части [4]. В этом случае комбинированные системы являются инвариантными к программе (возмущениям). Особенности комбинированного управления приводят к тому, что даже частичный и лишь приближенный учет компонентов уравнений Лагранжа (10.1) позволяет больше чем на порядок повысить точность движений по отдельным координатам [30]. 57
Рис. 10.5. Комбинированные системы регулирования ПР с дополнительной цепью регулиро- вания по возмущению (а) и с дополнительной цепью регулирования по управляющему воз- действию (6) 58
Рис. 10.6. Комбинированная система регулирования ПР с дополнительными цепями регули- рования по приближенно определяемым возмущению от гравитационных сил Ч'гр и управ- ляющему воздействию [diag(/^;)] фпр Структурная схема сепаратной системы регулирования, описанной в работе [30], представлена на рис. 10.6. Для ее реализации в предположении cvl —> °® и, следовательно, фдв = ф определены диагональные элементы матрицы инерционных коэффициентов, которые для случая электропривода с большим передаточным отношением редуктора являются доминирующими в матрице. Эти коэффициенты приняты за эффективные моменты инерции ПР по степеням подвижности /эф/. Укороченная, система уравнений Лагранжа, полученная из (10.3), по которой производили расчет управляющих воздействий, имеет вид [diagC^ + [Arr1Qrp(qnp) = Фдв.пр. (10.5) Здесь кроме эффективных моментов инерции учтены лишь потенциальные силы - силы тяжести звеньев (согласно [30], в ПР не были использованы уравновешивающие механизмы). Для удобства получения программных значений Фдв пр выражения /эф t и Qrp(q) путем подстановки q = q (ф) (см. гл. 5) представляют только как функции координат ф. 59
Существенный резерв повышения точности в комбинированной системе регулирования связан с учетом действия сил сухого трения. Регуляторы, рассмотренные в гл. 6, позволяют ввести в систему аддитивную добавку Мтр к 'Рдв.пр, зависящую от текущих значений обобщенных скоростей ф систе- мы. Расчет Мтр производится по показаниям датчиков скоростей в процессе движения системы. Для такой комбинированной системы регулирования необходима реализация вычислительного устройства (аналогового или цифрового) в контуре регулирования. 10.3. СТРУКТУРЫ МСАР ПР С ОХВАТОМ МЕХАНИЧЕСКОЙ РУКИ КОНТУРОМ ОБРАТНОЙ СВЯЗИ Проектировщики систем регулирования ПР обычно склонны использовать описанные выше проверенные временем структуры. Однако такие факторы, как все возрастающие требования к качеству функцио- нирования ПР, в первую очередь к его точности, жесткая конкуренция на мировом рынке, возросшие мощности применяемых вычислительных средств и возможности дозирования управляющих воздействий, стиму- лируют попытки модернизации описанных структур. Наиболее часто эти попытки связаны с желанием перенести точку наблюдения ближе к рабо- чему органу робота, положения которого в конечном счете и должны удов- летворять требованиям точности. Действительно, установка датчиков об- ратных связей на валах двигателей неизбежно приводит к снижению точности позиционирования рабочего органа робота из-за погрешностей и податливостей кинематических передач, особенно если двигатели привода установлены на основании. Часто неудачные попытки приблизить точку наблюдения к рабочему органу робота путем измерения с помощью датчиков относительных положений звеньев руки можно объяснить действием двух основных факторов: зависимостью между точками управления и наблюдения, обусловленной кинематикой передач привода звеньев руки, и податливостью этих передач. Вернемся, например, к самой простой системе - с полной динамической развязкой механической руки, динамика которой описывается уравнениями (10.4). Предположим сначала, что мы имеем возможность непосредст- венного измерения координат ф (см. рис. 10.1). В каждом автономном регу- ляторе переместим точку наблюдения и будем измерять положение массы л, (рис. 10.7). Автономность каждого сепаратного регулятора при этом сохра- нится, так как пока мы оперируем с координатами ф, а не с координатами q. При указанном смещении точки наблюдения и малом трении в шар- нирах руки Z-й сепаратный регулятор в соответствии с (10.4) можно описать уравнениями 0 (106) Удв/^дв/ + " V) = Шор / - V/)- 60
Рис. 10.7. Перенос точки наблюдения в модели, представленной на рис. 10.1, к выходному звену 7С/ При разомкнутом регуляторе и тождественно равном нулю управ- ляющем воздействии Фдв t полученная двухмассовая модель с двумя степе- нями свободы имеет две собственные частоты [40], одна из которых равна нулю. В этом отражается возможность движения центра масс по инерции с постоянной скоростью, а также синфазное движение масс Л/ и /дв/. Вторая собственная частота + ^дв /)с^ Ii 0 (Ю-7) характеризует колебания масс и 7ДВ t относительно центра масс модели, которые совершаются в противофазе. При замкнутом регуляторе (рис. 10.7) воздействие на массу /дв/ зависит от положения массы л;. Последнее представляет собой сумму смещения центра масс модели и колебаний массы л, относительно центра масс. Таким образом, согласно (10.6) усилению (к)) подвергается не только синфазное смещение масс л; и /дв z, но и движения с собственной частотой сог/. когда точки наблюдения и управления колеблются в противофазе. В результате на этой частоте обратная связь будет работать как положительная [10], т.е. относительные отклонения (относительно центра масс) массы Л/ будут вызывать такое направление управляющих воздействий на массу /дв/, кото- рое стремится увеличить отклонение, что ведет к неустойчивости системы и к возникновению автоколебаний. Казалось бы, эта сложность всегда сопутствует любой следящей системе, поскольку абсолютно точно совместить точку наблюдения и точку управления нельзя. Однако положение спасают реальные свойства усили- телей и механических систем. Усилители обеспечивают высокое усиление сигнала лишь в некотором диапазоне частот. Причем с увеличением коэффициента усиления обычно растет мощность усилителя и расширяется диапазон пропускаемых частот в усиливаемом сигнале, при этом в него могут попасть и собственные частоты колебаний системы. Именно поэтому в большинстве случаев безграничное повышение коэффициента усиления приводит к неустойчивости. Из сказанного следует необходимость повы- шения жесткости передач и, следовательно, повышения собственных частот 61
колебаний рассматриваемой модели, а также потребность в фильтре низких частот в структуре регулятора. В системах с акселерационным УПУ некоторые фильтрующие свойства в регуляторе обусловлены конечной величиной момента инерции вала двигателя. С уменьшением момента инерции /дв/ эти свойства ухудшаются, но растет собственная частота колебания со2/ (см. (10.7)) и уменьшаются их амплитуды при том же самом силовом воздействии, а значит, уменьшается и доля колебательной составляющей в сигнале датчика обратной связи. Поэтому для таких УПУ влиянием податливостей можно пренебречь и, записав \|/z = \|/дв ,, уменьшить порядок уравнений динамики модели, которая становится одномассовой (*/© + А1в/)У/+^>М + М'/ = МЛ1р/- (10.8) Из этого уравнения следует ограничение на высокочастотные состав- ляющие во входном сигнале \|/пр i- Чтобы замкнутая система регулирования с акселерационным УПУ могла качественно обработать эти составляющие, они должны быть ниже собственной частоты замкнутой системы СОс=^/(Я( + /дв;). При известном частотном спектре входного сигнала полученное равенство дает возможность назначить минимально необходимое значение fcz. Почти противоположная картина наблюдается в системах с астати- ческими УПУ. Идеология автономности (см. уравнение (10.1)) сепаратных регуляторов, связанная с созданием и использованием астатических УПУ, ведет к такому увеличению коэффициента усиления и мощности усили- телей, что задание движений (скоростей) ведущего элемента модели (см. рис. 10.7) можно считать кинематическим. Для рассматриваемой модели это эквивалентно стремительному росту /дв/. Таким образом, наряду с понижением частоты co2Z собственных колебаний модели при разомкнутом регуляторе имеет место расширение частотного диапазона усилителя-преобразователя. Степень устойчивости таких регуляторов по указанным выше причинам снижается, поэтому при их анализе и синтезе необходимо учитывать податливость. Для модели, представленной на рис. 10.7, в случае активного астати- ческого УПУ вместо системы (10.6) получим 7r/(^)v/+cvZ(y/-vflB;) = 0, V„B/=^/(VnP/-V/)> ИЛИ ^/(ъ)Ж/ +S/V/ = S^/Vnp/- Последнее уравнение, в котором отсутствует член с у из-за того, что мы пренебрегли трением в кинематических парах, указывает на неустой- чивость регулятора. Согласно критерию устойчивости Рауса-Гурвица [31], 62
Рис. 10.8. Схема МСАР ПР с приведением информации датчиков относительного положения звеньев руки робота к системе координат ф выходных валов двигателей Программа на отработку движений МСАР поступает также в координатах ф, т.е. фпр(г). При вы- полнении условий динамической развязки механической руки эта схема приводит к автономным сепаратным регуляторам, представленным на рис. 10.7 для устойчивости линейного дифференциального уравнения третьего порядка необходимо и достаточно, во-первых, чтобы все коэффициенты при ijiz,Vz,Vz и ф/ были положительны, и, во-вторых, чтобы произведение коэффициентов при средних членах (т.е. при \|7Z и \j/z) было больше произведения при крайних членах (т.е. при \jiz и Для обеспечения ус- тойчивости регулятора (см. рис. 10.7) в случае астатического УПУ необ- ходимо ввести демпфирование массы ttz (£) и ограничить коэффициент Лф. 63
Рис. 10.9. Принцип организации ’’простой" МСАР ПР, охватывающей механические пере- дачи робота Программа qnp(r) и информация датчиков относительного положения звеньев соответствуют одноименной системе обобщенных координат q, вычислительные устройства отсутствуют, а вектор управляющих воздействий, развиваемых двигателями (система координат ф), имеет вид 4х дв = [кj(<?пр1 - кц(Япрп~ Яп)]Т- Приведение этого вектора управляющих воздействий к системе координат q осуществляется с помощью несимметричной матрицы А 7 и, следовательно, получаемые позиционные восстанавливающие силы при наличии кинематических перекрестных связей не консервативны. МСАР ПР может оказаться неустойчивой 64
Теперь можно перейти к анализу влияния на устойчивость МСАР ПР второго фактора - зависимости между точками управления и наблюдения, обусловленной кинематикой передач привода звеньев руки. Рассматривая модель регулятора, представленную на рис. 10.7, мы можем предположить, что измеряются координаты ф механической руки. На практике достаточ- но просто измерить обобщенные координаты q. Напрашивается естествен- ное решение: используя кинематическое соотношение ф = Aq, организо- вать в цепи обратных связей вычислительное (пересчетное) устройство, как показано на рис. 10.8, и свести систему регулирования к совокупности рассмотренных выше (см. рис. 10.7) сепаратных регуляторов. Введение такого пересчетного устройства (конечно, если матрица не диагональная) представляет собой один из способов автономизации сепаратных регулято- ров [25, 27], основанных на построении прямых и обратных перекрестных, корректирующих связей. Наряду с таким, можно сказать нормальным, построением МСАР ПР имеют место попытки [12] не вводить в цепь обратной связи по положению пересчетное устройство, а задавать программу движений ПР непосредствен- но в координатах q или qnp (рис. 10.9). Такая организация системы регулирования привлекательна тем, что не требует "информационных" затрат не только в виде пересчетного устрой- ства в цепи обратной связи (см. рис. 10.8), но и затрат, связанных с необхо- димостью пересчета программы, формируемой обычно в координатах q, в программу для отработки приводами, задаваемую в координатах ф (см. гл. 5). В этом случае сама МСАР ПР представляет собой решающее устрой- ство: в процессе движения находятся и устанавливаются такие положения выходных валов двигателей (координаты фдв), которые соответствуют равенству обобщенных координат руки робота программным значениям, т.е. q = qnp. Здесь особое внимание следует обратить на тот факт, что вместо п одномерных сепаратных систем автоматического регулирования (см., на- пример, рис. 10.1), связанных друг с другом только через динамику объекта регулирования, получается n-мерная система автоматического регулирова- ния, содержащая в прямом канале перекрестные связи, - кинематические передачи. Анализ устойчивости МСАР ПР, построенных по описанному принципу, и синтез рациональных схем, компенсирующих перекрестные связи для них, проведем на примере простейших динамических моделей механических рук (см. гл. 8) с двумя степенями подвижности [34, 36]. 10.4. УСТОЙЧИВОСТЬ МСАР ПР С КИНЕМАТИЧЕСКИМИ ПЕРЕКРЕСТНЫМИ СВЯЗЯМИ И АКСЕЛЕРАЦИОННЫМИ УПРАВЛЯЮЩИМИ УСТРОЙСТВАМИ Чтобы выявить влияние кинематических зависимостей между коор- динатами управления и координатами наблюдения на устойчивость МСАР ПР в наиболее "чистом" виде, рассмотрим простейшие базовые модели рук с двумя степенями подвижности (ортогональные и антропоморфные, как на 3. Корендясев А.И. Кн. 2 65
рис. 8.2, г,д) и различными типовыми кинематическими структурами пере- дач привода (см. рис. 5.1, a-в; рис. 5.2, а,г,д). Напомним, что инерционные свойства объекта регулирования моде- лируются массой т, сосредоточенной на звене в месте крепления схвата. Гравитационные силы не учитываются, а движение моделей обусловлено инерционностью объекта, силами трения, пропорциональными относитель- ным скоростям и моментами двигателей Т, (z = 1, 2). Пусть законы регулирования - это уравнения идеальных регуляторов, удовлетворяющих схеме, приведенной на рис. 10.9, с введением производной Ч*,. = где Д#(=0 Ад, = <7пр,-<?,,£, = const, rt- const. Движение системы будем рассматривать в режиме стабилизации, когда программные значения обобщенных координат постоянны qnpi = const. Для ортогональных структур механических рук, а в более общем случае для систем со всеми циклическими обобщенными координатами, свойства объекта не меняются с изменением конфигурации, т.е. с изменением qnpi. В этих случаях примем ?пр: = 0- Приведение к обобщенным координатам <?,• моментов 'Р,- (z = 1,2) (см. гл. 6) дает где Ф = [Ч^, A.J - транспонированная j-я (j = 1,2,3) типовая бинарная [2 х 2]-матрица частных передаточных отношений (см. гл. 5) моделей: при j = 1 матрица А - диагональная, следовательно, система кинематически развязана; при j = 2 матрица А - треугольная, при j = 3 матрица А - кососимметричная. Все эти случаи отражают различную степень кине- матической связанности координат q и ф. .Для ортогональных моделей (см. рис. 5.2, а,г,д) выполняются не только условия цикличности обобщенных координат q, но и условия ортогональ- ности. Из описывающей их системы линейных дифференциальных уравнений ’т<71 уп<72 видно, что особенности обусловлены только прямыми перекрестными связями, т.е. структурой матриц Ау (у = 1,2,3). При j = 1 система (10.9) распадается на два независимых уравнения. Это случай полной автономности сепаратных регуляторов, в каждом из которых процесс регулирования устойчив, если г}+Ьх> 0 и г2 + Ь2> 0. Кинематическая развязка в этом случае фактически превращает в одно- именные координаты управления и наблюдения, перекрестные связи отсутствуют. При j = 2 из системы (10.9) выделяется одно независимое уравнение (по координате q2 система регулирования автономна). Прямая перекрестная Mi + rtqt 1 \b^' *2^2 + Г2?2 (Ю.9) = 0 66
связь обуславливает особенности регулирования только по координате q2. Пусть сначала гх = г2 = Ьх = Ь2 = 0, тогда из уравнений (10.9), записанных в символической форме, получим (тр2 + кх )qx + k2q2 = 0, (тр2 + k2)q2 = 0, где р = d/dt - алгебраический оператор дифференцирования. Далее получим соответствующее характеристическое уравнение р4 + (кх + к2)р2I т + (кх + к2)1 т2 = 0. Все корни этого уравнения мнимые и попарно сопряжены. Следо- вательно, движения модели характеризуются незатухающими колебаниями, амплитуды которых в общем случае ограничены и зависят от начальных условий. При равенстве коэффициентов усиления кх и к2 (кх = к2 = к) корни характеристического уравнения становятся попарно равными. В этом слу- чае незатухающим колебаниям с постоянной амплитудой по координате q2 будет соответствовать резонансная раскачка по координате qx. Пусть теперь гх = г2 = 0, bx = b2 = b 0 , т.е. движение модели сопровож- дается трением в кинематических парах. Второе уравнение (10.9) описывает в этом случае в зависимости от величины b либо затухающие колебания, либо апериодическое движение по координате q2. Решение этого уравнения можно рассматривать как возмущение системы регулирования по коор- динате qx. Коэффициенты получаемого в данном случае характеристического уравнения удовлетворяют критериям Рауса-Гурвица: действительные части корней уравнения отрицательны, а система регулирования в целом устой- чива. Не теряет она устойчивости и при настройке: кх = к2 = к. Динамическая ошибка системы регулирования по координате qx имеет при такой настройке вид q, = (Л, + Л20е(-г,/2"')+^2/4",)-(Н",)' + (Л3 + A40e(’Z,/2'")+^2/4'"2)’(V"')', ApA2,A3,A4 - постоянные, определяемые начальными условиями. Отсюда следует, что в зависимости от величины b и начальных условий ошибка может сначала возрасти (произойдет перекачка энергии из одной парциальной системы в другую), а затем уменьшиться. Из этого следует, что при одинаковой настройке контуров регулирования, одинаковых внешних сопротивлениях и одинаковых начальных условиях стабилизация рассматриваемой модели происходит медленнее, чем в случае полностью автономной системы, т.е. при j = 1. Введение производной в законы регулирования (rz^ 0, i= 1, 2) новых качественных результатов не дает. Таким образом, рассматриваемый под- ход к организации МСАР ПР может быть реализован в системах без потери устойчивости, когда прямые перекрестные связи носят односторонний характер взаимодействия парциальных систем, отраженный в треугольной матрице А2. Наконец, при j = 3 система (10.9) не содержит независимых уравнений. з* 67
В простейшем случае, когда r1 = r2=bi=b2 = 0, система в символической форме имеет вид (тр2+Л1)^1+^2=0, -krft + (тр +k2)q2= 0. Характеристическое уравнение этой системы - биквадратное / + [<Л + *2) / "»]Р2 + 2*, V "»2 = 0. а его корни соответственно равны р = +л]-(к1 + к2)/2т±^/(к^+к2)2 /4т2 -2к,к2/т2 . Отсюда видно, если (к1+к2)2/4-2к1к2>0, то все корни характеристического уравнения чисто мнимые, в противном случае корни характеристического уравнения - сопряженные комплексные числа р = ±(-u ± iv)0,5, где u = (kl+k2)/2m; v = [(к, + к^2 / 4т2 -(2^ /т2)]0’5. Если комплексное число представить в тригонометрической форме и возвести в степень, то корни характеристического уравнения могут быть выражены в виде р12 = ±y°,5(cos|3/2+ isin|3/2), р3 4 = ±у0,5 (cos а / 2+i sina / 2), где Y = (m2 + v2)0,5; cosP = -u/y; sinp = v/y, cosa = u/y; sma = -v/y. Следовательно, на комплексной плоскости они располагаются во всех четырех квадрантах. Таким образом, соотношение параметров (kl + k2)2-Sklk2 <0 соответствует неустойчивости системы регулирования. Границы области устойчивости в плоскости параметров к{, к2- прямые, проходящие через начало координат (рис. 10.10), а зона неустойчивости определена не- равенством (3-2j2)kt < *2 <(3 + 2л/2)к{. Как видно, система может быть неустойчива и при малых значениях коэффициентов усиления (к} и к2) цепей обратных связей. 68
Рис. 10.10. Клиновидная форма зоны неустой- чивости. Системы регулирования с кососим- метричной матрицей частных передаточных отношений теряют устойчивость даже при малых значениях коэффициентов усиления се- паратных регуляторов Наличие затухания в системе = = г2 = 0, Ьх = Ь2 = Ь) приводит к расши- рению области устойчивости системы. Коэффициенты характеристического уравнения тр4 + 2mbp3 + [т(кх + к2) + Ь2]р2 + +Ь(кх + к2)р + 2кхк2 = 0 системы регулирования в этом случае удовлетворяют критериям устойчивости Гурвица в области (к\ + к2У- - Ъкхк2 > 0 при всех значениях Z? > 0, а в области (кх + Л2)2 - 8&1&2 < 0 при b > [zn(6fc к, - fc2) - к} / 2( к. + £,)]0’5. (10.10) Введение производной в закон регулирования (rj = г2 = г, Ьх = Ь2 = 0) в рассматриваемом случае прямых перекрестных связей более эффективно влияет на расширение областей устойчивости, чем сопротивление переме- щениям звеньев скелета руки. Характеристическое уравнение системы регулирования принимает вид тр4 + 2тгр3 + [т(кх + к2) + 2г2]р2 + 2г(кх + к2)р + 2кхк2 =0, а условие устойчивости приводит к соотношению г>[ткхк21{кх+к2)}^\ (10.11) При равенстве коэффициентов усиления обратных связей кх = к2 условия (10.10) и (10.11) соответственно будут b > (2тк)0'5 и г > (тк)0'5. Следовательно, рассматриваемый подход к организации МСАР ПР приводит к устойчивости лишь при значительном демпфировании (в том числе и за счет введения производной в закон регулирования), что не всегда желательно. Другой путь повышения устойчивости МСАР ПР, не при- водящий к увеличению потерь в системе, связан с автономностью се- паратных регуляторов, например, с введением в прямой канал механизма кинематической развязки (см. гл. 5), либо электронных корректирующих устройств. Прежде чем перейти к построению последних, рассмотрим модели с неортогональной структурой скелета механической руки. В этих моделях существенное влияние на устойчивость МСАР ПР может оказать динамическое взаимодействие между парциальными системами. Линеаризуем уравнения движения простейшей базовой модели - двойного маятника (см. рис. 8.2, д) в окрестности стабилизируемого прог- раммного значения нециклической обобщенной координаты qnp2 = qQ2. 69
Совместив начало отсчета обобщенных координат со стабилизируе- мыми значениями в предположении малых отклонений обобщенных координат и скорости их изменения, получим следующую линейную систему дифференциальных уравнений, описывающую движение моделей, приве- денных на рис. 5.1, a-в, в режиме стабилизации где тт/ Т^ЪАтГМ1+зд' П(?02) .. +А, _?2j L*"2?2 + Г2^2. 'Mi' Ь2Я2. = 0, (10.12) т(1^ + l2 + 2/j/2 cos q02) m(l% + \l2 cos g02) ml2 При j= 1 в отличие от (10.9) система (10.12) не распадается на два независимых уравнения, но остается заведомо устойчивой. Согласно критерию Рауса [9], для устойчивости системы (10.12) достаточно, чтобы матрицы П(д02), Ajdiag(r1,r2) + diag(fe1,Z>2) и Ajdiag(^,,^2) были симметрич- ными и одного знака. Так как Af - диагональная матрица, то при положи- тельности коэффициентов гь г2, к}, к2иЬь Ь2 достаточные условия устойчи- вости имеют место. При j = 2 в системе (10.12)между регуляторами существует не только динамическая инерционная связь, обусловленная свойствами объекта регулирования, но и позиционная, а при г, Ф 0 (i = 1,2) и диссипативная. Существование последних обусловлено треугольным видом матрицы А2. Позиционные силы в (10.12) при этом не консервативны и даже в случае kt > 0 и к2 > 0 могут содействовать развитию колебаний. Пусть г\ = г2 = = Ь\ = Ь2 = 0. Тогда уравнения (10.12) в символической форме принимают вид (л J1Р2 + fcj )^J + (л l2p2 + fc2 )q2 = 0, + (п22р2 +k2)q2=0. Характеристическое уравнение этой системы (ЛцЛ22 —л12)р + [^л22 + Л2(Лц — Л12)]р +&[&2=0 будет иметь комплексные корни с положительными действительными частями при [^л22 +Л2(ли -л12)]2 -4/:1Л2(л11л22 -л22)<0. (10.13) Как показал анализ этого неравенства, в отличие от аналогичного случая при ортогональной динамической модели здесь возможна потеря устойчивости при <72np = q<}2 в диапазоне л/2 < q02 < Зл/2. Положив, например, к{ = к2 = 1 и /| = /2 = 1, получим после подстановок последнее неравенство в виде cos qQ2 (4 + 3 cos д02) < 0. 70
При л/2 < qQ2 < Зтт/2 оно удовлетворено. Если параметры системы (в част- ности д02) таковы, что неравенство (10.13) не удовлетворено, то звенья мо- дели будут совершать незатухающие колебания. При учете вязкого сопротивления в кинематических парах, а также при учете производной в законе регулирования (Z?t #= 0, #= 0) области неустойчи- вости, равно как и диапазон возможных неустойчивых конфигураций, модели, сужаются. Рассмотренный пример иллюстрирует также интересную возможность обеспечения условий устойчивости во всей зоне изменений конфигура- ций руки (естественно при 0 и/или г, * 0) за счет обеспечения условия цикличности обобщенной координаты q2 модели, а в общем случае антро- поморфных рук - за счет обеспечения условий цикличности координат 1). Изменим динамическую модель: пусть центр масс второго звена совпа- дает с центром второго шарнира (см. рис. 5.1,6), масса второго звена - т, а центральный момент инерции этого звена будет равен I. Тогда характе- ристическое уравнение системы (10.12) при Z?, = 0, г, = 0 ( / > 1, 2) примет вид Iml2 р4 + (kxI + к2т!2^р2 + к{к2 = 0. Нетрудно показать, что дискриминант этого биквадратного уравнения всегда больше (или равен) нуля, а все четыре корня - мнимые и попарно сопряжены. Наличие, например, сопротивления в кинематических парах (Z?! Ф 0 и Z?2 #= 0) делает эту систему заведомо устойчивой. Переходя к результатам анализа системы (10.12) при j = 3, заметим, что при /j < 12 и cos qQ2 = - 1\Н2 рассматриваемая система идентична системе (10.9) и обладает всеми присущими последней свойствами. Вместе с тем, вопреки ожиданию, свойства системы (10.12) при j = 3, касающиеся устойчивости, оказались очень близкими к свойствам этой же системы при j = 2. Неустойчивость системы может также наблюдаться лишь при отрица- тельных значениях cos qQ2, хотя и в более широкой области, и также при выполнении условий цикличности обобщенных координат (i > 1) рассмат- риваемой динамической модели получим устойчивую систему регули- рования. Приемлемым способом обеспечения устойчивости МСАР ПР с аксе- лерационным типом привода для всех рассмотренных в этом разделе моделей ПР (кроме моделей с матрицей частных передаточных отношений Aj) является способ частичной автономности регуляторов за счет ком- пенсации эффектов кинематической связи систем координат управления \|/ и наблюдения q. Если, например, в кинематические передачи привода звеньев (для j = 2, 3) ввести устройство кинематической развязки (см. гл. 5), области неустойчивости будут исключены. Ниже мы рассмотрим другой вариант частичной автономности регу- ляторов, связанный с введением дополнительных перекрестных связей между контурами регулирования на участках прямых каналов между устройствами сравнения и двигателями. Эти дополнительные перекрестные связи могут быть реализованы аппаратурно в виде самостоятельного электронного блока - электронного компенсирующего устройства (ЭКУ). 71
а Программа ^(0 Программа ?пр (г) Рис. 10.11. Структура электронного компенсирующего устройства а - матрица частных передаточных отношений произвольная; б - матрица частных передаточных отношений треугольная 72
Остановимся подробнее на синтезе ЭКУ для промышленного робота с п степенями подвижности, матрица частных передаточных отношений которого А. Пусть выход каждого усилителя сепаратных регуляторов (рис. 10.11, а) связан через дополнительные согласующие усилители Л,7 (i, 1=1, 2, ..., п) с сумматорами Е, (i = 1,..., п), установленными на входах У ПУ,. Эти дополнительные усилители и сумматоры образуют ЭКУ. Для такой МСАР ПР позиционные силы в уравнении динамики регулятора (типа уравнения (10.12)) можно записать в виде Q=ArKV[q-qnp], где К = diag (Л(, к2,..., к„) - матрица коэффициентов усиления сепаратных усилителей, ft - [я х п]-матрица преобразования сигналов в ЭКУ, или передаточная матрица ЭКУ. Развязка позиционных сил в многомерном регуляторе, т.е. обеспечение независимости каждой позиционной силы в 1-м сепаратном регуляторе от положений и программных заданий в остальных сепаратных регуляторах, будет достигнута, если результирующая матрица АГКП диагональна АГК£1 = diag (ех, е2,..., е„). Следовательно, структура и параметры необходимых перекрестных связей определены уравнением SI = [АТКГ* = diag (еь е2,еп). Так как матрица К - диагональная, последнее уравнение можно представить в виде = diag (1Д], 1Д2,..., 1/к„) [A7]’1 diag (еь е2,..., е„). Отсюда следует, что передаточная матрица ЭКУ должна иметь структуру обратной транспонированной матрицы частных передаточных отношений А. Например, для механических рук ПР с кинематической струк- турой передач, описываемой треугольной матрицей частных передаточных отношений а, а3 . ап получим передаточную матрицу ЭКУ в виде ех! ахкх ^2 1 ^2^1 0 0 0 0 ^2 / б?2^2 <?3 / ^^^2 0 0 £1 = 0 0 £3 / -е4/аЛ . 0 0 0 0 0 • еп!апкп 73
Таким образом, для частичной автономности регуляторов в ЭКУ необходимо в этом случае организовать (и - 1) перекрестную связь с коэффициентами усиления, равными (1 = 2, и) и, кроме того, дополнительно установить согласующие усилители в прямых каналах с коэффициентами усиления е,/а(Л(. Если в этом случае отказаться от исходных усилителей сигналов рассогласований K = diag(l, 1,...,1) = Е и оснастить ЭКУ входными усилителями с коэффициентами усиления е,/а(, то не потребуются усилители в перекрестных связях (см. рис. 10.11, 6). 10.5. УСТОЙЧИВОСТЬ МСАР ПР С КИНЕМАТИЧЕСКИМИ ПЕРЕКРЕСТНЫМИ СВЯЗЯМИ И АСТАТИЧЕСКИМИ УПРАВЛЯЮЩИМИ УСТРОЙСТВАМИ Мы рассмотрели системы регулирования ПР, обратные связи которых охватывают кинематические передачи привода, а идеализированная харак- теристика приводов (или УПУ) представляет собой характеристику источ- ника момента. Выше отмечалось, что характеристики приводов сущест- венно влияют на динамические свойства системы регулирования (вплоть до изменения структуры уравнений динамики этих систем). Поэтому, а также в связи с широким применением в робототехнике приводов, близких по характеристикам к астатическим УПУ, т.е. управляемых по скорости, целесообразно оценить их влияние на устойчивость МСАР ПР рассматриваемых структур. Напомним, что на динамику систем с астатическим УПУ (в отличие от систем с акселерационным УПУ) существенно влияют не только кинема- тические особенности передач привода, но и их податливости. Будем рассматривать только модели с ортогональной структурой скелета механической руки (см. табл. 6.1). Блок-схема системы регулиро- вания соответствует представленной на рис. 10.9, где датчики обратных связей установлены на звеньях руки робота, а сигналы от них через блоки сравнения поступают на приводы. Как и в предыдущем разделе инерцион- ные свойства систем будем моделировать массой т, сосредоточенной в схвате робота, диссипативные свойства - линейным трением в кинемати- ческих парах скелета руки. Элементы кинематических цепей привода моделей не являются абсо- лютно жесткими, их податливости заданы (см. гл. 6, табл. 6.1) - известны [2 х 2]-матрицы Сф упругих коэффициентов j-й типовой модели (j = 1, 2, 3) в системе обобщенных координат q. Идеализированные характеристики астатических приводов (см. гл. 8), замкнутых указанными обратными связями по положению, описываются соотношениями 4» = K[qnp-q], (10.14) где ф - n-мерный вектор скоростей выходных элементов УПУ, К - [п х nJ- матрица коэффициентов преобразования УПУ. 74
Уравнения движения рассматриваемых моделей (п = 2) в режиме стабилизации, когда qnp = 0, представляют собой систему линейных диффе- ренциальных уравнений с постоянными коэффициентами. С учетом (10.14) имеем n<,q + b9q + C(Z/[q-q'] = 0, q' = -A-1Kq, где Ц? - диагональная [2 х 2]-матрица инерционных коэффициентов, Ь7 - диагональная [2 х 2]-матрица коэффициентов демпфирования, q' - вектор положений выходных элементов УПУ, приведенных к обобщенной коор- динате q. Продифференцируем первое из этих уравнений по времени и, подставив в него второе, получим П/q + bqq + c^.q + Сф-AyKq = 0, j = 1,2,3, (10.15) устойчивость которого будем анализировать для различных структур кинематических передач привода. Для типовой модели с приводами, установленными непосредственно на звеньях скелета руки робота (j = 1), система уравнений (10.15) вследствие 0 С22 _ диагональности матриц распадается на два независимых уравнения. Характеристическое уравнение для каждого из них (i = 1, 2) имеет вид тр3 + typ2 + сир + = 0. Согласно критерию Гурвица, устойчивость системы регулирования в этом случае имеет место при bi > mki. Как видно, в случае автономности регуляторов жесткостные характе- ристики передач не оказывают влияния на устойчивость системы регулирования. Напомним, что единичной матрице Aj частных передаточных отноше- ний могут соответствовать различные структуры передач при установке механизма компенсации (МК) (рис. 10.12). Для каждой такой модели с МК матрицы С^- имеют одинаковую структуру и в общем случае с12 = с21 #=0. Взаимовлияние между регуляторами для этих моделей вследствие Aj = Е обусловлено только податливостью элементов передач привода (см. табл. 6.1). В частном случае при Ьх = Ь2 = Ь, кх = к2 = к, как показал анализ, система регулирования неустойчива при произвольно выбранных положи- тельных значениях b и к. Для достижения устойчивости системы регулирования моделей с МК необходимо обеспечить несимметричную настройку коэффициентов преобразования УПУ (рис. 10.13), чтобы получить кх > к2 или к2 > кх. Од- нако такая настройка УПУ вступает в противоречие с требованием обеспечения заданного быстродействия ПР. Исключение составляет схема с 75
a Рис. 10.12. Модели МСАР ПР с вынесенными на основание астатическими УПУ, содер- жащие механизмы компенсации Исходная кинематическая схема передач содержит перекрестные связи, описываемые матрицами А2 (а) и А3 (б). Сепаратные обратные связи охватывают кинематические перекрестные связи руки и механизмы компенсации механизмом компенсации для кинематических передач руки с матрицей А3 - 1 -1 1 1 При одинаковой жесткости кинематических цепей матрица упругих коэффициентов С9 становится диагональной, а следовательно, и условия устойчивости будут идентичны условиям для модели с приводами на звеньях руки. В общем случае применение механизмов компенсации для 76
Рис. 10.13. Область неустойчивости МСАР ПР моделей, представленных на рис. 10.12, в плоскости коэффициентов усиления сепа- ратных регуляторов повышения устойчивости МСАР ПР с астатическими УПУ в отличие от моделей, рассмотренных в разде- ле 10.4, сопряжено с большими огра- ничениями. Для моделей с приводами на ос- новании, не содержащих МК (/ = 2, 3), исследование устойчивости МСАР связано с анализом корней полинома шестой степени, что сопряжено с известными трудностя- ми и требует привлечения численных методов. На рис. 10.14 для моделей с типовыми матрицами частных передаточных отношений А2 и А3 в случае к]=к2 = к и b ] = b2 = b представлены области устойчивости в плоскости параметров к и Ь, полученные методом D-разбиения. Для модели j = 2 область устойчивости ограничена сплошной линией, для модели j = 3- пунктирной, причем штриховка расположена в области устойчивости. Этот пример показывает, что обеспечение условий устойчивости с помощью кинематической развязки накладывает более жесткие ограни- чения на соотношения параметров системы, чем для моделей без развязки. В общем случае, учитывая сложность взаимодействия парциальных систем и связанную с ней сложность анализа и обеспечения устойчивости регулятора в целом, представляется целесообразным снова обратиться к синтезу ЭКУ, делающих сепаратные регуляторы частично автономными. Под частичной автономностью сепаратных регуляторов понимается независимость членов, линейных относительно регулируемых величин или рассогласований и их первых производных, в уравнении (типа (10.15)), соответствующем г-му регулятору, от /-й регулируемой величины и ее первой производной для всех l*i (i,j = l,n). Как видно из (10.15), такая частичная автономность учитывает (и компенсирует влияние) структуру кинематических передач привода и их жесткостные характеристики. Введем в уравнения (10.15) вектор управлений согласно (10.14) и, опустив индекс j, запишем их в виде n,q + b,q = - CJq + A-1K[q - q пр]]- (10.16) Видно, что взаимовлияние частично автономных сепаратных регуля- торов может проявляться только за счет коэффициентов при высших производных обобщенных координат. Для рассмотренных выше ортого- нальных (в координатах q) моделей частичная автономность приводит к полной автономности регулятора. Ввиду диагональности матриц П9 и Ь9 условия их устойчивости идентичны условиям устойчивости системы регулирования этих моделей при установке двигателей в шарнирах скелета руки (/= 1). 77
Рис. 10.14. Области устойчивости моделей МСАР ПР с приводами, вынесенными на основание, не содержащих МК, при b\ = b2 = b и к} = к2 = к Методика построения ЭКУ в изучаемых системах регулирования сводится к следующему. Чтобы привести матричное, вы- ражение C9q + C9A-1K[q-qnp] к виду diag(T|1,T|2,...,r|n)q + diag(p1p2,...,pn)x х K[q - qnp],необходимо, во-первых, автономизировать сигналы рассогла- сований по положению, во-вторых, компенсировать взаимовлияние пар- циальных систем по обобщенным скоростям q, обусловленное податли- востью кинематических цепей. Постоянные т|, и р, характеризуют желаемые свойства системы. Очевид- но, для диагонализации С9А-,К целесообразно организовать ЭКУ-1 в!виде прямых перекрестных связей между каналами управления анало- гично ЭКУ, синтезированным выше (см. раздел 10.4). Однако для упро- щения соотношений настройки параметров ЭКУ-1 поместим его на входах усилителей. Таким образом, получим структурную схему, представленную на рис. 10.15, а. Матрица О размерности [и хи], описывающая структуру этих связей, должна удовлетворять условию С^А-’П = diag(p1,p2,...,p„), (10.17) откуда £1 = AC;1diag(p1,p2,...,p„). При этом правая часть уравнения (10.16) принимает вид C9q+diag(p1,p2,...,p„)K[q-qnp]. Развязку парциальных систем по обобщенным скоростям удобнее осуществить в два этапа. На первом этапе найдем структуру матрицы G обратных перекрестных связей по обобщенным скоростям, образующих ЭКУ-2, полностью исключающих из уравнения движения рассматриваемой системы член, содержащий первую производную по обобщенной коорди- нате C^q. Заметим, что в зависимости от места подключения обратных связей в прямые каналы управления, правая часть получаемых уравнений движения меняется. Так, при подключении обратных связей на входы УПУ она станет Cf/q + diag(p,, р2,..., р„ )K[q - q„p ] - Cq A-1KG1q, 78
a б Рис. 10.15. Этапы синтеза электронного компенсирующего устройства для частичной автономизации сепаратных регуляторов а - организация ЭКУ-1 в виде прямых перекрестных связей между каналами управления ана- логично устройствам, представленным на рис. 10.11; б- окончательный вид структурной схемы системы регулирования; Р - блок дифференцирования сигналов; с,- - усилители (z = 1,м) 79
а при подключении обратных связей перед ЭКУ-1 получим C9q+diag(p, ,р2.р„ )K[q- qnp] + С(/ A*ftKG2q = = C?q + diag(p,, p2,..., p„ )K[q - qnp ] + diag(p!, p2,..., p„)KG2q. По условию задачи структуры матриц G! и G2 для каждого из этих случаев находятся соответственно из уравнений c,A-,KG1q=-c,q. diag(p1,p2,...,p„)KG2q = -C9q, откуда G, =-К-'А, G2 = -K~1[diag(p1,p2,...,pn)]“1C(?. (10.18) В связи с тем, что построение ЭКУ-2 со структурой G] требует меньшего числа перекрестных связей из-за обязательного наличия нулевых элементов (см. структуры матриц А в гл. 5) при п > 3, целесообразно использовать первый из рассмотренных вариантов подключения ЭКУ-2. На втором этапе достаточно организовать сепаратные связи по скорости (пропорциональные q), параллельные обратным сепаратным связям по положению. Структурная схема системы регулирования принимает вид, представленный на рис. 10.15, б. Действительно, для такой схемы правая часть уравнения (10.16) будет C9q + С9 A-1 {OK[[q - qnp ] + diag(o1,02,..., о„ )q] + KG,q} = = diag(p,, p2,..., p„ )K[q - qnp ] + diag^, T|2. • •> Пл )Ч> где с, = Tj( /р,Л,., что и требовалось для решения поставленной задачи. Для синтеза ЭКУ-1 и ЭКУ-2 с использованием приведенных выше матриц дополнительных связей (10.17) и (10.18), введем следующие правила построения: для построения прямых перекрестных связей, согласно струк- туре матрицы ft, необходимо организовать передачу сигналов управления от 1-го канала к г-му каналу с коэффициентами усиления, равными элементам ft,7 матрицы ft. Кроме того, в сепаратные каналы управления необходимо встроить усилители с коэффициентами усиления, равными диагональным элементам матрицы ft. Таким образом, необходимое число усилителей будет равно числу ненулевых элементов матрицы ft. Пере- крестные связи и сепаратные усилители должны находиться внутри контура обратных сепаратных связей по положению. Для организации обратных перекрестных связей согласно структуре G| необходимо передавать сигналы, равные q, на входы УПУ с коэффи- циентами усиления, равными величинам элементов матрицы G|. При этом связь должна быть положительной, если Ga- отрицательная величина, и наоборот. Кроме перекрестных обратных связей, согласно диагональным элементам матрицы Gb необходимо построить сепаратные обратные связи 80
по скорости с коэффициентами усиления G„ соответственно. Обратные перекрестные и сепаратные связи, реализуемые в ЭКУ-2, по скорости не должны охватывать ЭКУ-1. Последним этапом синтеза является организация обратных сепаратных связей по скорости, параллельных сепаратным связям по положению с коэффициентами усиления о, (см. рис. 10.15, б). Для этого нужно продиффе- ренцировать сигналы рассогласований [q- qnp] по времени (блок Р) и просуммировать их с исходными рассогласованиями [q- qnp] на входах ЭКУ-1. Таким образом, при управлении активными силами с помощью акселерационных и астатических УПУ, когда точки наблюдения и уп- равления в МСАР ПР разнесены, их положения описываются разно- именными (связанными кинематическими соотношениями) системами координат, а программа движений сформулирована в координатах наблю- дения, для повышения устойчивости МСАР ПР необходимо предусмотреть организацию ЭКУ частичной автономизации. Существует еще одна возможность приближения точек управления к точкам наблюдения, когда наблюдаемыми являются относительные положения звеньев скелета руки робота не за счет установки двигателей в шарнирах руки, а за счет установки управляемых тормозных устройств (см. гл. 8). Силовые двигатели, установленные на основании, связаны со звеньями скелета руки механическими передачами и имеют характеристику источника момента. Управление силами сопротивления (тормозами) позволяет создавать устойчивые МСАР ПР без ЭКУ или с менее сложными ЭКУ. Необходимо лишь, управляя направлением моментов силовых двигателей или отключая их, обеспечить соответствие моментов силовых двигателей, приведенных к координатам q, с программой или текущими рассогласованиями [q-qnp]- Эти выводы подтверждаются результатами приведенного ниже анализа динамики МСАР ПР при управлении силами сопротивления [41]. 10.6. УСЛОВИЯ ФУНКЦИОНИРОВАНИЯ И УСТОЙЧИВОСТЬ МСАР ПР с позиционными, АСТАТИЧЕСКИМИ И АКСЕЛЕРАЦИОННЫМИ УПРАВЛЯЮЩИМИ УСТРОЙСТВАМИ ПРИ УПРАВЛЕНИИ СИЛАМИ СОПРОТИВЛЕНИЯ Применение способа пассивного управления ПР с приводами, вынесенными на основание (см. гл. 8), открывает дополнительные возмож- ности для улучшения качества регулирования. При реализации этого способа в каждом шарнире скелета руки устанавливают управляемый тормоз, а приводные двигатели, которые могут быть установлены на основании, развивают постоянные по величине и управляемые по знаку усилия, обеспечивая натяжение кинематических цепей и постоянную готовность к выполнению движения. При поступлении программных сигналов шарнир растормаживается, и мощность передается от двигателей к соответствующему звену. Управление 81
тормозом осуществляется системой регулирования по разности сигналов программы и датчиков обратной связи, установленных также в шарнирах скелета руки. При этом реализуется закон управления, обратный по отношению к системе с управлением активными силами, - с увеличением рассогласования сила торможения уменьшается. В процессе движения тормозное устройство демпфирует систему, а в заданном положении оно ее запирает. Перенесение управления к месту наблюдения (в шарнир) при надле- жащем выборе величины усилий, развиваемых силовыми двигателями, позволяет исключить влияние податливостей элементов передач, зазоров и трения на динамику системы. Действительно, в этом случае при пози- ционном УПУ уравнения движения системы будут q = qnp (Ю.19) при sign б,-= sign^np,. и ie, l> + . (( = 1,2,...,И). (10.20) Здесь Qt - усилие приводов, приведенное к i-й обобщенной координате, л,7 - элементы [п х м]-матрицы П4 инерционных коэффициентов, Ьа- элементы [и х и]-матрицы Ь? коэффициентов демпфирования. Невыполнение необходимых условий (10.20) по какой-либо координате приводит к ее фиксации, при этом соответствующие уравнения из (10.19) принимают вид Qi = Qoi = const, где qOi - значение обобщенной координаты в момент нарушения условий (10.20). Отсюда следует, что при управлении по разомкнутой схеме в этих случаях возможна потеря управляющей информации, а при управлении по замкнутой схеме - резкие скачки системы. При использовании астатических УПУ уравнения движения идеализи- рованной системы будут q = N(qnp-q) при sign Qi= sign(<7np;- q,) и IQ,l> пр/ (z,Z = l,n), (10.21) где N(qnp-q)- /z-мерная вектор-функция рассогласований (дпр - q), элементы которой 2V, (дпр/. - д,) не имеют разрывов при ^пр/ = ^/- Линеари- зацией этих функций при малых значениях рассогласований получим q=K[qnp-q] В этом случае невыполнение условий (10.21) не приводит к фиксации соответствующих обобщенных координат, а ведет к увеличению рассогла- сования qnp - q. 82
Наконец, при использовании акселерационных УПУ в системах с управлением пассивными силами при соблюдении условий (10.21) соот- ветствующие уравнения движения будут n9q + b9q = Q-L[(qnp-q),q]. (10.22) Здесь L[(qnp - q),q] - n-мерная вектор-функция рассогласований (qnp - q) и скоростей q, элементы которой нелинейны при использовании фрикцион- ных тормозных устройств. Во всех рассматриваемых случаях условия (10.20) или (10.21) в ПР с вынесенными на основание силовыми двигателями могут быть обеспечены с помощью механизма кинематической развязки [17] и введения ограни- чений на программные значения скоростей qnp и ускорений qnp обоб- щенных координат. При этом задача сводится к разработке, исследованию и выбору конкретного УПУ, обеспечивающего достаточно высокий коэффициент усиления мощности, равный отношению мощностей силового и управляющего двигателей. Решение такой задачи имеет самостоятельное важное значение [22]. Попытаемся выяснить, можно ли отказаться от использования меха- низма кинематической развязки, утяжеляющего и усложняющего конст- рукцию, в ПР с сепаратными обратными связями для управления знаками приведенных усилий приводов и тормозами. Для этого рассмотрим движения упрощенных моделей манипуляторов с двумя степенями свободы с ортогональной структурой скелета руки и двумя различными структурами кинематических передач (рис. 10.16). В суставах скелета руки установлены УПУ и датчики D\ и D2 обратных отрицательных сепаратных связей, определяющих обобщенные координаты руки q} и q2. Двигатели Дв, и Дв2 развивают постоянные по величине усилия Т, и Ч'г, направленные в соответствии с управлением по дополнительным обратным связям на уменьшение рассогласования между программными сигналами #пр] и ^пр2 и обобщенными координатами qx и q2, измеренными соответственно датчиками Dt и D2 Подвижные звенья руки и элементы кинематических цепей привода этих звеньев считаем безинерционными. Инерционные свойства объекта моделируем массой т, сосредоточенной на втором подвижном звене в месте крепления схвата С. Гравитационные силы и силы трения в кинематических парах не учитываем; считаем, что движение модели обусловлено только инерционностью массы т, силами Т, (г = 1, 2), развиваемыми двигателями Дв, и Дв2, а также силами сопротивления (пассивными силами), разви- ваемыми УПУ, и УПУ2. Структура кинематических цепей упрощенных моделей описывается типовыми матрицами частных передаточных отношений А2 = ’1 О' 1 1 (см. рис. 10.16, а) и А3 = '1 -Г 1 1 (см. рис. 10.16, б). Рассмотрим сначала модели автоматических манипуляторов, осна- щенные наиболее простыми акселерационными УПУ, используемыми в настоящее время в робототехнике. Пусть управление таково, что силы 83
a Рис. 10.16. МСАР упрощенных моделей ПР с различными матрицами частных передаточных отношений А2 (а) и А3 (6) при управлении силами сопротивления и акселерационными У ПУ 7, 2- подвижные звенья модели руки ПР; У ПУ! и У ПУ2 - управляемые электромагнитные тормоза; Дв| и Дв2 - силовые двигатели с характеристикой источника момента 84
сопротивления, развиваемые этими УПУ, при малых рассогласованиях линейно зависят от последних ^i ~ Qi )> Qi) “ = (Р. - ki । Qi ~ Qapi О sign qt при I $npi. -qi\<Pi/ki} "\0 при I^,.-<7,. I>/?/*,]’ (1023) где Р,- максимальное значение тормозного усилия в i-м УПУ, Л,— коэффициент усиления в i-й сепаратной цепи обратной связи (г = 1, 2). Уравнения (10.22) и (10.23) при описании динамики упрощенных моде- лей автоматических манипуляторов в режиме стабилизации в точке, принятой за начало отсчета обобщенных координат (дпр| = дпр2 = 0), можно представить в виде ’^i "I _ . т ^•j \mq2\ ’Т,sign^ I I’Ll’ _T2sign 32J [Zjj (10.24) |(^ - k, I q( I)signqt при I д,-1 < ^ / k- (0 при I qt: I > Pt I£. Эти уравнения при j = 2 соответствуют модели, приведенной на рис. 10.16, а, а при j = 3 — модели на рис. 10.16, б. При j = 2, система регулирования по координате q2 автономна. Колебания по этой координате, вызванные произвольными начальными возмущениями, затухают, но возможна зона нечувствительности. Величина зоны нечувствительности определена соотношением 1д21 = (Р2-'Р2)/Л2<0. Анализ первого из уравнений (10.24) показал, что колебания системы по координате qx также затухают лишь при Ч*2 < Ч*), так как приведенная активная сила <2i = 'I>1sign q} + T2sign q2 приводов всегда будет направлена на уменьшение рассогласования между стабилизируемым и текущим значениями координаты qx. В противном случае стабилизации по координа- те qx не происходит, система в целом неустойчива. При Тг < Т, гарантированная зона нечувствительности системы по координате qx определяется соотношением 1911=|[Р1-(Т1+'Р2)]/^2|. Таким образом, в автоматических манипуляторах, кинематические передачи которых описываются треугольными матрицами частных пере- даточных отношений А2, можно обеспечить устойчивость системы регули- рования без механизма кинематической развязки и без введения электрон- ного компенсирующего устройства в систему. Алгоритм выбора номиналь- ных значений усилий 'Р, приводов сводится к условию п v=i+l 85
При j = 3 система уравнений (10.24) не содержит независимых уравнений mqx + Lj + sign qx + *Р2 sign q2 = 0, mq2 + L2-'¥l sign^ + T2 sign<?2 = 0. (10.25) Условие работоспособности регулятора связано с необходимостью существования зон нечувствительности. Положив в (10.25) <?, = 0, получим гарантированные границы этих зон (при любом возможном сочетании отклонений qx и q2) в виде 2 i9ii= Д>о. \ 1 7/ Наличие таких зон нечувствительности, и следовательно, устойчи- вых равновесных состояний по каждой отдельной координате в малой окрестности начала координат еще не означает, что рассматриваемая нелинейная система (10.25) не является автоколебательной системой с жестким возбуждением. Действительно, анализ поведения решений системы (10.25) при всевозможных начальных условиях показал, что система не- устойчива. Этот результат свидетельствует о том, что при выборе структуры системы регулирования автоматических манипуляторов без механизмов кинематической развязки с акселерационными УПУ нельзя ограничиться только сепаратными обратными связями для управления направлением моментов силовых двигателей. Поэтому необходим поиск новых решений. Опыт построения прямых перекрестных связей при автономизации систем регулирования для управления активными силами показал, что возможен подход к стабилизации систем регулирования, связанный с необходимостью обеспечения каждым приводом набора дискретных значений развиваемых усилий. Для этого в системе регулирования необходим логический блок, управляющий набором одного из возможных усилий каждого привода и его направлением по релейным сигналам обратных связей. Так, для стабилизации системы в рассмотренном примере достаточно иметь возможность отключать один из приводов и управлять направлением действия номинального усилия включенного привода в зависимости от положения массы т (изображающей точки) в том или ином квадранте пространства конфигураций. Пусть, как и раньше, направление усилий приводов соответствует знакам отклонений обобщенных координат от нуля и пусть при совпадении знаков этих отклонений отключается привод, развивающий усилие Р2, а при несовпадении - привод, развивающий усилие Р,. Нетрудно убедиться, что в этом случае система (см. (10.24) при j = 3) работает так, как если бы она была снабжена механизмом кинематической развязки. Здесь всегда по каждой координате действует постоянная по величине приведенная актив- ная сила Qh направленная на уменьшение рассогласования, т.е. удовлет- воряющая условиям (10.20), (10.21). Заканчивая рассмотрение МСАР ПР, отличающихся от традиционных принципами организации контуров регулирования и способом дозирования 86
управляющих воздействий, заметим, что аппаратурно-программная реали- зация синтезированных электронных компенсирующих устройств частич- ной автономизации может быть легко осуществлена с помощью универ- сальных или специальных цифровых вычислительных машин. Их применение открывает возможности для полной автономности сепаратных регуляторов как в рассмотренных системах, так и в случае традиционного построения регуляторов, когда точки наблюдения и уп- равления совмещены на двигателях. Перспективность этого направления подкреплена широким использованием именно цифровых МСАР ПР. Следует, однако, ясно представлять, что дискретность цифровых систем регулирования может стать причиной неустойчивости МСАР ПР, даже построенных по традиционной схеме, из-за квантования управляющих сигналов во времени. 10.7. ВЛИЯНИЕ ДИСКРЕТНОСТИ ЦИФРОВЫХ СИСТЕМ РЕГУЛИРОВАНИЯ НА УСТОЙЧИВОСТЬ И ДИНАМИЧЕСКУЮ ТОЧНОСТЬ РОБОТА. ДИНАМИКА И УСТОЙЧИВОСТЬ МОДЕЛИ РЕГУЛЯТОРА ПРИ КВАНТОВАНИИ СИГНАЛОВ УПРАВЛЕНИЯ ВО ВРЕМЕНИ Современные системы управления роботами, в том числе подсистемы регулирования, выполняют на основе цифровых ЭВМ. Структурная схе- ма цифровой системы регулирования представлена на рис. 10.17, а. Осо- бенность такой системы заключается в том, что в ней при преобразова- нии непрерывных физических величин в дискретные сигналы осуществ- ляется квантование сигнала по уровню и времени [5, 32]. Это преобра- зование на структурной схеме представлено соединением нелинейного эле- мента квантования по уровню (НЭ) и импульсного элемента (ИЭ) с тактом работы V. Статическая характеристика НЭ представлена на рис. 10.17, б. Пусть контур регулирования охватывает только двигатели. Тогда цифровой сигнал ошибки A\j7;, равный разности цифровых значений программы упр/ и результата измерения контролируемых положений выходного вала двигателя \j7;, поступает на цифровой аналоговый преобразователь (ЦАП) и после него - в виде ступенчатого аналогового сигнала на вход УПУ. Длительность ступеней входного сигнала УПУ кратна периоду кван- тования V. Если в системе используют многоразрядные цифровые датчики, то при анализе цифровых регуляторов из-за малости величины дискреты d (рис. 10.17, б) можно пренебречь квантованием по уровню. Пренебречь квантованием сигнала по времени нельзя. Управление роботом от цифровой вычислительной машины связано с формированием за некоторый фиксированный отрезок времени управляющих сигналов приводов, обес- печивающих реализацию требуемых программных траекторий. В тече- ние этого периода времени (такта управления Т) управляющие сигналы 87
Рис. 10.17. Особенности цифровой МСАР ПР а - структура сепаратного регулятора: АЦП - аналого-цифровой преобразователь; б - статическая характеристика нелинейного элемента (J - величина дискреты) 88
привода остаются постоянными, т.е. используется экстраполятор нулевого порядка. Стремление повысить точность отработки траекторий путем прибли- жения свойств динамической модели, используемой для управления, к свойствам реального объекта - манипулятора робота - приводит к увели- чению такта управления [19, 20,49]. При этом частота входных воздействий приводов уменьшается, и свойства системы резко изменяются. Вследствие этого может происходить ухудшение качества регулирования, увеличение ошибки слежения, а также потеря устойчивости системы. Кроме того, в дискретной следящей системе всегда существует задержка во времени между моментами регистрации датчиками обратных связей измеряемых фазовых координат системы и приложения приводами управляющих воздействий, рассчитанных по показаниям последних. Это запаздывание также ужесточает условия устойчивости системы [46]. В связи с этим важное значение приобретают задача определения максимально допустимой величины такта управления с учетом запазды- вания в системе, при которой обеспечивается устойчивость следящей системы приводов робота, и обратная задача - определение ограничений на параметры регуляторов приводов, при которых не нарушаются условия устойчивости при заданной дискретности управления. Задачу выбора времени тактов управления в силу сложности обычно решают методами компьютерного моделирования [43]. Ниже приведено аналитическое решение этих задач [8] с использованием метода припасовы- вания [2, 14, 16], что дает возможность, с одной стороны, получить конеч- ные формулы для определения допустимых времен тактов управления, а с другой - выявить общие физические закономерности основных параметров регулятора и механической части ПР на его устойчивость и динамическую точность. В связи с тем, что меры ведущие к полной или приближенной дина- мической развязке движений руки в системе координат ф (см. гл. 8) все больше находят воплощение в конструкциях роботов, будем считать, что такие условия выполняются. Тогда система регулирования может быть представлена в виде п автономных подсистем, а исследование эффектов квантования управляющих сигналов приводов можно проводить на модели одной степени подвижности робота (в координатах ф). Будем рассматри- вать модели с акселерационным УПУ при определенных законах регулиро- вания, а именно линейный закон регулирования по отклонению, иногда с введением производной регулируемой величины [37]. Уравнение движения модели привода одной степени подвижности ПР на fc-м такте управления (между Л-м и (к + 1)-м входными воздействиями привода) будет Гук + byk = Мк= const, (10.26) где I = /дв + 7p/i2 - момент инерции подвижных частей ПР, приведенный к валу двигателя (координате \g); /дв - момент инерции ротора двигателя; 1р - момент инерции звена манипулятора; i > 1 - передаточное число редуктора; b - приведенный коэффициент демпфирования; Мк - вращающий момент на валу двигателя, формируемый регулятором положения привода на к-м такте 89
управления. Общее решение уравнения (10.26) у* = С. к + С, к е~р,+ Mktlb, • к к 7 (10 27) ^к~~Р^2,к^ Р +Мк1Ь, где р — ЬИ — единственный ненулевой корень характеристического полинома уравнения (10.26); С1Д ,С2Д- константы. Условия непрерывности движения V*(D = (0), v,(T) = v,+1(0), (10.28) где Т - продолжительность такта управления, позволяют записать систему линейных разностных уравнений относительно С] и С2 G,*+i “ Q* + Ct,к “ = 0, 4 -ХЪ+1 ч- рСиН + Мк+Х / В - Мк / b = 0, ( } где Н = е-^7’. Пусть регулятор положения формирует момент М*+1 двигателя как функцию Мк+Х =^(vnp,+1-^(YT))-^(YT), (10.30) где Ку и Къ - коэффициенты усиления обратных связей по положению и скорости соответственно; упрЛ+1 - программная уставка по положению на (к + 1)-м такте управления; \|/*(у7) и \|/ДуТ) - положение и скорость, регист- рируемые датчиками обратных связей в момент времени уГ, 0 < у < 1, на к-м интервале движения: у = 1, если нет запаздывания в системе, и у = 0, если запаздывание на один такт. Рассмотрим режим стабилизации около точки \|/пр = 0- Подставив в последнее уравнение выражения для ^(уТ) и найденные из (10.27), представим функцию (10.30) в виде Мк+Х = -Ky(CiJc + С2 кНу 4- MjpfTIb) - К^-РС2кНу 4- мк /ь\ где Ну= е~^г. Добавив это уравнение к (10.28) и соответственно к (10.29), получим систему линейных однородных уравнений в конечных разностях ~С\,к + Qjt+i ~С2 кН — МкТIb = Q, < ~РС2,к+1 + Рс2,кн + Мм /Ь-Мк/Ь = 0, (10.31) КуСи + С2кНу(Ку - Kvp)4- Мк+Х 4- Мк(ВхуТ + В2) = о, где В, = Ку lb, В2 = KyJb.Ee решение отыскивается в виде С2Л=^2х\ A/t=^x\ где £2, - коэффициенты независящие от к; х - постоянное число. Ненулевые решения i^2 и существуют только при равенстве нулю характеристического определителя системы х-i х-н о р(Н-х) Ку Н7(Ку-К,р) -т/ь Х + В1'/Г + В2 = 0. 90
Отсюда получим характеристическое уравнение системы разностных уравнений (10.31) в виде «оХ3 + а1%2 + а2Х + «з=0’ (10.32) где а0 = -р, а,= pH- pBrfT- рВ2 + р + В,- НуВ,+ НуВ2р, а2 = В{{ГрН + В2рН - pH + pBrfT+ +рВ2 - НВ, — В,— В,рТ+2НуВ, - 2НуВ2р, а3 = -рНВ,”(Г - рНВ2 + В,Н + В,ТрН - НуВ, + НуВ2р. Решение задачи устойчивости следящей системы с дискретным управ- лением сводится к оценке корней характеристического уравнения (10.32). Если корни этого многочлена лежат внутри круга единичного радиуса, т.е. 1%1<1, то исследуемое движение устойчиво. При этом корни, равные единице, должны быть простыми. Для разностного уравнения третьей степени алгебраический критерий устойчивости Шура [16] представляет собой условия, налагаемые на коэффициенты а0, а,, а2, а3 многочлена (10.32), и имеет следующий вид: (У]):1а3/а0 I<1, (у2): \(а0а2-а3а,) I -а}) 1< 1, (10.33) (у3): I (аоа, - а3а2) /[а0 (а0 + а2) - <я3 (<я3 + а,)] < 1. Заметим, что при у = 1 коэффициент а3 = 0. Тогда характеристическое уравнение типа (10.32) системы (10.31) будет второго порядка и условия устойчивости, аналогичные (10.33) упростятся. Путем непосредственной подстановки выражений для коэффициентов а0, а,, а2 и а3 в условия (10.33) и решения трансцендентных уравнений не представляется возможным анали- тически определить критическое значение периода квантования Т, при котором обеспечивается устойчивость системы. Попытаемся получить приближенное решение задачи. Разложим функции Н = еГрТ иНу =&~р^г в ряд Тейлора. Имея в виду, что Т - малая величина и рТ< 1, /гуТ< 1, в пренебрежении малыми величинами второго порядка и выше можно записать Н = 1-рТ, ну=1-руг. Тогда, раскрыв условия (10.33), получим приближенные условия устойчивости (Х):1р7’(1-у)(В17’-В2)1<1, (у2): 11 - рТ[1 + В2 - ТВ,(2 - у)] I < 1, (10.34) 91
причем третье условие выполняется всегда. Каждое из условий (10.34) эквивалентно выполнению двух неравенств: -1<(у<)<1, г = 1,2. Решив их для (X) и (>’2) с учетом ограничения Т> 0 и возвращаясь к первоначальным обозначениям, найдем из первого условия (у[) Т< (Kv /2К^ + ^/4^) + [Z/Kv(l-y)], (10.35) из второго условия (у'2) T<(b + KJ/[Kv(2-y)]. (10.36) Сравнив полученные условия, можно заметить, что и при у = 1 и при у= 0 неравенство (10.36) является более сильным для определения допусти- мой продолжительности такта управления, обеспечивающей устойчивость системы регулирования с учетом запаздывания. Так, при у = 1 условие (10.35) не ограничивает эту величину (Т < + °°), а (10.36) ограничивает. Можно убедиться, что допустимое время такта управления Т, опреде- ляемое из приближенных условий устойчивости (10.36), удовлетворяет и точным условиям (10.33), но лежит не на границе области устойчивости, а внутри ее. Например, при у = 1 точке Ткр = (Ь + ^)/Kv соответствует не граница зоны устойчивости, а экстремум (минимум) функции у2, лежащий внутри области устойчивости. Исследование функции у2, показало, что У2 |т=-~=+оо> У21т=о=1’ Уг 1т=ткр = min > °> У2 |т=+~=тах^>1- Теперь нетрудно установить характерный вид этой функции (рис. 10.18) в зависимости от величины такта управления Т. Таким образом, условие (10.36) может служить хорошей оценкой границы устойчивости. Как видно, при дискретном управлении даже без учета запаздывания коэффициенты усиления всегда ограничены. Увели- чение позиционного коэффициента усиления Kv, как и собственной частоты непрерывной части системы, требует уменьшения времени такта управ- ления, а скоростной коэффициент Ки и вязкое трение b способствуют его увеличению. Запаздывание в системе также требует значительного умень- шения времени такта управления. При запаздывании на один такт время TIY=0 в два раза меньше времени такта управления, определенного без запаздывания, Т1т=1. Рассмотрим, как изменится вид основного неравенства (10.36) при учете характеристики двигателя. Пусть имеется двигатель постоянного тока с независимым возбуждением. Добавив к уравнению (10.26) дифферен- циальное уравнение двигателя (см. гл. 8), получим 1ук+Ьук=Мк, \мк = Км1я, ик = К^ + гя1я, где Км - коэффициент электромагнитного момента, KL- коэффици- ент противоэлектродвижущей силы; гя, 1Я - сопротивление и ток якоря; Uk - управляющее напряжение обмотки возбуждения, формируемое регуля- тором на k-м такте управления. 92
Рис. 10.18. Определение области устойчи- вости модели регулятора с квантованием сигнала управления по времени Последнюю систему можно за- писать одним уравнением i.yk+btyk = uk, где I,=rHK, b* = rb/K +KL. Если регулятор положения формирует тот же закон управле- ния, а именно изменяет напряжение Uk по закону ик+1 = = Ку (Уп₽*+1 - ук W) - у, (ут), то для нашей модели получим условие устойчивости в виде Т<(Ь,+К^/[К^2-у)]. Обычно для двигателей постоянного тока с независимым возбуждением, используемых в роботах, гя/Км = 10*400 В/(Н • м), KL = 0,03...0,09 В • с/рад (например, для двигателя ПЯ-250Ф, применяемого в ПР ТУР-ЮК: г,/Км = 17,5 В/(Н • м), KL = 0,085 В • с/рад), а b = 0, поэтому b < Ь» и, следова- тельно, условие устойчивости (10.36) остается более жестким. Контрольные эксперименты, проведенные на роботе ТУР-ЮК, подт- верждают результаты, полученные аналитически. Мы акцентировали вни- мание на особенностях поведения дискретных цифровых систем регу- лирования с целью обратить внимание разработчиков МСАР на необхо- димость выполнения условий устойчивости при использовании цифровых систем управления. Полученный результат верен, однако, лишь для оговоренного типа систем регулирования, а именно в случае импульсной линейной системы с линейным законом регулирования по отклонению и его производной при наличии запаздывания. Результат очень важен, но не исключает иных подходов к построению, анализу и синтезу других типов систем и законов регулирования, приводящих иногда к неожиданным результатам. Ниже будут рассмотрены МСАР ПР, разработанные в соот- ветствии с методом структурного синтеза нелинейных систем автомати- ческого управления, реализация которых также немыслима без исполь- зования управляющих компьютеров. 93
10.8. ПРИМЕНЕНИЕ МЕТОДА СТРУКТУРНОГО СИНТЕЗА НЕЛИНЕЙНЫХ СИСТЕМ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ ПРИ СОЗДАНИИ МСАР ПР Другое направление в теории и практике систем автоматического управления, уходящее корнями в комбинированное управление и синтез корректирующих устройств линейных систем автоматического регулиро- вания, связано со структурным синтезом нелинейных систем автома- тического управления [7], а именно с синтезом закона управления нели- нейной системой по заданным (или желательным) переходным процессам регулируемых величин. При этом информация, содержащаяся в динами- ческой модели объекта, используется непосредственно в контуре регули- рования по отклонению Aq, т.е. в замкнутой части системы, а вычисления ведутся в одном темпе с процессом движения по измеряемым (и восстанавливаемым по доступным измерениям) характеристикам движения ПР (q,q,q или ф, ф, ф). Частично элементы этого метода уже были нами использованы в разделах 10.4 и 10.5 при синтезе многомерных систем регулирования ПР для обеспечения устойчивости при наличии кинематических связей между сепаратными регуляторами. Модели систем автоматического регулирова- ния, построенные на основе метода структурного синтеза нелиней- ных систем автоматического управления, перспективны для робототехники [38, 47], поэтому рассмотрим подробнее основные положения данно- го метода. 10.8.1. Основные положения метода структурного синтеза МСАР и его применение в робототехнике Всякое управление - это навязывание объекту желаемого движения, которое должно быть каким-либо образом сформулировано или задано. Например, можно задать ограничения или уравнения, в соответствии с которыми регулируемая величина должна изменяться во времени. Эти урав- нения могут быть конечными (например, в виде программы), либо дифференциальными, причем такими, что их решения дают желаемую зависимость регулируемой величины от времени. Очевидно, в первом случае приемлемые результаты получим только для конкретных начальных условий движения. Дифференциальной же форме задания соответствует не одно, а целый класс движений, обладающих об- щими свойствами. Действительно, например, линейное однородное диф- ференциальное уравнение второго порядка с постоянными положительны- ми коэффициентами описывает множество (в зависимости от начальных условий) одинаково затухающих движений с устойчивой в нуле точкой рав- новесия. Таким образом, дифференциальная форма задания желаемого дви- жения определяет не только программу движения (стабилизация системы в нуле в предыдущем примере), но и качество выполнения этой программы. Дифференциальная форма задания желаемого движения нашла отраже- ние в методах синтеза автоматических систем регулирования. Системы 94
задают передаточной функцией, удовлетворяющей условиям качества регу- лирования, а затем по ней и известным передаточным функциям исходных разомкнутой и замкнутой систем находят корректирующие устройства [33]. Аналогичный подход применим и при синтезе нелинейных систем. При этом из-за наличия нелинейностей возможности применения частотных методов (аппарат передаточных функций) становятся ограниченными. В этом случае исследование системы и решение поставленной задачи синтеза управления предпочтительнее проводить во временной области с помощью переменных состояния (фазовых обобщенных координат), ис- пользуя дифференциальные уравнения объекта. Применение матриц и векторов позволяет компактно записывать как уравнения объекта (см. гл. 8) и системы управления, так и их решения. Кроме того, во временной области исследования уравнений могут быть проведены численными методами с применением ЭВМ. Для целей синтеза управления нелинейной системой ее описание с помощью переменных состояний тем более удобно, что задание или требуемое поведение системы формируется в виде дифференциального уравнения, а процедура синтеза управления сводится к алгебраическим операциям. Существо метода связано с особым свойством высшей производной регулируемой величины. Здесь для управления объектом в каждый момент времени мы можем целенаправленно изменять лишь высшую производную регулируемой величины. Только она в данный момент времени явно зависит от управляющего воздействия. Задаваемое значение высшей производной должно при этом соответствовать требуемому движению, т.е. зависимости высшей производной от фазовых координат объекта, получаемой из дифференциального уравнения заданного движения. Из-за причинно-следственных связей между управляющим воздействием и высшей производной мы не можем измерять высшую производную и одновременно нейтрализовать управляющим воздействием члены в урав- нении объекта, содержащие высшую производную, - она сама зависит от управления. Поэтому задание должно быть сформулировано как зависи- мость высшей производной от фазовых координат, а порядок получаемого уравнения, описывающего желаемое поведение системы, должен быть равен порядку уравнения объекта регулирования. Выбор требуемого дифференциального уравнения (или системы дифференциальных уравнений для многомерного объекта управления) движения замкнутой системы дол- жен обязательно удовлетворять условию устойчивости. Кроме того, часто желательно, чтобы требуемая система дифферен- циальных уравнений, описывающая МСАР ПР, отражала, во-первых, авто- номность парциальных систем [47], т.е. динамическую развязку, осуществ- ляемую системой регулирования; во-вторых, инвариантность относительно внешних воздействий и программы движения; в-третьих, нужное качество регулирования, например, реализацию минимума интегральной квадра- тичной ошибки [6]. Судить об устойчивости решения уравнения (или системы уравнений) проще всего в случае линейных дифференциальных уравнений. Для по- следних легко решается задача оптимизации - выбора оптимальных коэф- фициентов в требуемой системе дифференциальных уравнений, минимизи- 95
рующих интегральный квадратичный критерий качества. Наиболее частое использование линейных дифференциальных уравнений в качестве требуемых обусловлено во многих случаях указанными особенностями. Вместе с тем известно, что нелинейные дифференциальные уравнения описывают динамику систем, обладающих более высоким качеством регулирования, чем линейные системы того же порядка. Это относится, в частности, к системам (оптимальным, или близким к оптимальным) по быстродействию. Для повышения быстродействия демпфирование таких систем при больших ошибках следует уменьшить, а при малых - увеличить. Однако в общем случае выбор в качестве требуемых нелинейных дифференциальных уравнений представляет сложную задачу. Поэтому для этой цели целесообразно использовать уже хорошо изученные нелинейные системы соответствующего порядка. Правило синтеза требуемого управления объектом заключается в следующем: в уравнение объекта вместо высшей производной регули- руемой величины следует подставить ее значение, определенное из требуе- мого дифференциального уравнения системы. Это правило предполагает проведение двух алгебраических операций: нахождение требуемого значения высшей производной регулируемой величины и его подстановку в уравнение объекта. Рассмотрим в качестве примера объект управления (механическую руку ПР с электроприводом), динамика которого описывается матричным диф- ференциальным уравнением (8.18), разрешенным относительно управляю- щих воздействий Qn и линейное относительно вектора q старших произ- водных. Потребуем, чтобы замкнутая система удовлетворяла следующему линейному матричному дифференциальному уравнению того же порядка: Eq + Glq + G2[q-qnp] = 0, (10.37) где Е - единичная [п х и]-матрица, Gb G2 - [их м]-матрицы с постоянными элементами. Выразим вектор q из этого уравнения q = -Giq-G2[q-qnp] и, подставив полученное выражение в соотношение (8.18), найдем управ- ляющее воздействие Qn =-n(q,^)[G1q + G2[q-qnp]] + b(q,q,g)-QB. (10.38) Таким образом, получен закон управления, в соответствии с которым поведение МСАР ПР будет описываться системой (10.37). Реализация закона управления (10.38) требует измерения векторов q и q, а также организации соответствующих вычислений с помощью аналоговых или цифровых средств вычислительной техники. Все основные свойства си- стемы регулирования определены уравнениями (10.37), а именно элемен- тами матриц G, и G2. Так, выбрав элементы матриц G] и G2 такими, чтобы удовлетворялись критерии Рауса-Гурвица, обеспечивают устойчивость систем регулирования. Нетрудно обеспечить и автономность парциальных систем регулирования, для чего достаточно потребовать, чтобы матрицы G( 96
и G2 были диагональными. В этом случае устойчивость системы до- стигается при положительных диагональных элементах этих матриц. Качество (точность, быстродействие) переходного процесса сущест- венно зависит от программы qnp. Изменим желаемое поведение системы. Учитывая, что во многих случаях qnp и qnp известны заранее и преиму- щества комбинированных систем регулирования, потребуем, чтобы же- лаемое поведение замкнутой системы удовлетворяло уравнению E[q-qnp] + G1[q-qnp] + G2[q-qnp] = 0. (10.39) Согласно правилу синтеза, чтобы система вела себя заданным образом, необходимо реализовать следующий закон управления: Qn=-n(q,©[-qlip+G1[q-qnp] + G2[q-qnp]] + b(q,q,©. (10.40) В соответствии с (10.39) полученная замкнутая система регулирования инвариантна к программе движения q^, поскольку (10.39) - это система п дифференциальных уравнений второго порядка относительно вектора ошибки £ = q - qnp. Наложив те же условия на элементы матриц G! и G2, что и в предыду- щем случае, получим асимптотическую устойчивость программного движе- ния qnp и добьемся полной автономности системы. При этом время переход- ного процесса можно существенно сократить. Укрупненная блок-схема МСАР ПР, отвечающая синтезу законов управления (10.38) или (10.40), представлена на рис. 10.19. Она обязательно содержит устройство, реализующее вычисления по выражениям (10.38) или (10.40), а кроме того, если матрица А частных передаточных отношений не единичная, то и пересчет управлений Qn в управления Фп йнЧА'Г’О,,. Для ПР с традиционно устанавливаемыми на валах двигателей датчи- ками положения ф и скорости ф программу движений, уравнения динамики ПР и желаемое поведение системы целесообразно формировать в коорди- натах ф. Процедура синтеза закона управления Фп при этом не изменится. Простота описанной процедуры синтеза закона управления для системы регулирования робота порождает ложное ощущение вседозволенности, возможности пренебрежения многими накопленными знаниями в области механики и систем регулирования, ставшее во многих случаях причиной преждевременных разочарований. Широкому распространению таких систем регулирования в робото- строении препятствуют определенные ограничения, которые следуют как из существа метода, так и из возможностей средств вычислительной техники, необходимой для его реализации. Во-первых, процедура синтеза не предусматривает задания ограничений на управляющие воздействия; предполагается, что движения синтезируемой системы таковы, что объект по своим мощностным данным может их реализовать. 4. Корендясев А.И. Кн. 2 97
Рис. 10.19. Блок-схема МСАР ПР с синтезируемым в вычислительном устройстве законом регулирования по информации о состоянии ПР и о выполняемой программе в соответствии с требуемым поведением Во-вторых, нелинейные уравнения модели объекта управления могут отличаться (даже структурно) от уравнений действительного объекта (см. гл. 8), что вызывает отклонение формы переходного процесса от желаемого и может вызвать неустойчивость. В-третьих, для требуемого управления объектом необходимо измерение регулируемых величин и их производных. Неточности измерения производ- ных регулируемых величин могут вызвать те же последствия, как и несоответствие модели и объекта. В-четвертых, только для очень простых робототехнических систем даже с применением микропроцессорной вычислительной техники удается без существенного запаздывания реализовать вычисления по выражениям синтезированных законов управления, а значит управлять процессом в реальном времени. Для успешного применения метода необходимо учитывать эти огра- ничения и принимать меры, нейтрализующие отрицательные последствия. К таким мерам в первую очередь относится необходимость введения на уровне составления программы движения ПР ограничений на управляющие воздействия [23, 28, 42]. Желательно также для уменьшения времени счета и упрощения вычислений использовать концепцию динамической развязки - динамическая развязка средствами механики (см. гл. 8) приводит к существенному упрощению уравнений объекта. Во многих случаях также можно отказаться от полной автономности систем регулирования, а до- биваться лишь частичной с обязательным обеспечением устойчивости МСАР [18, 21]. Улучшению функционирования МСАР ПР, синтезированных с по- мощью рассмотренного метода, в случаях, когда вектор параметров в уравнениях динамики объекта неизвестен или меняется непредсказуемым 98
образом, способствует организация адаптивного контура, позволяющего темнили иным способом, например, уточняя информацию о параметрах объекта регулирования, "подстраивать" соответствующим образом закон управления. В общем случае проблема адаптации в робототехнике охва- тывает ряд конкретных задач, решаемых на различных уровнях системы управления. Чаще всего для этого применяют датчики внешней среды (см. гл. 8). Реже [38, 39, 45, 48] уточняющую информацию получают косвенно. Как правило, используют либо известную структуру модели объекта, либо результаты отработки объектом дозированных воздействий, когда иден- тифицируется вектор £ параметров модели и изменяется закон управления. Ниже мы остановимся на некоторых идеях и проблемах адаптивного управления ПР на основе идентификационного подхода. Однако перед этим сделаем небольшое отступление и покажем, как, используя идеи метода структурного синтеза нелинейной системы автоматического управления, можно отстроиться от ограничений на величину такта управления дискретной системой. 10.8.2. Закон регулирования в дискретной цифровой системе, обеспечивающий устойчивость при заданном периоде квантования Пусть неизменяемая часть дискретной системы автоматического регулирования задана уравнениями типа (10.29), полученными из решения дифференциального уравнения движения объекта управления (10.26) и условий непрерывности (10.28). Требуется синтезировать такой закон регулятора, чтобы поведение системы с заданными частотой 1/Т тактов управления и запаздыванием 0 < уТ < Т было устойчивым. Качество переходных процессов дискретных систем регулирования определяется значениями коэффициентов характеристического уравнения системы разностных уравнений, одним из которых является закон регулирования (см., например, (10.31)). Поэтому на первом шаге решения задачи необходимо выбрать (назначить) коэффициенты характеристи- ческого уравнения синтезируемой системы регулирования Х^ + ^треб 1Х2 + ^треб 2% + ^треб 3 — (10.41) ГДе ^Треб 1> ^треб 2’ ^треб 3 КОНСТаНТЫ. Для выбора коэффициентов требуемого характеристического полинома (10.41) можно применять различные методы. Представляется целесо- образным использовать для этого опыт назначения таких коэффициентов в случае линейных дифференциальных уравнений, свойства которых, и особенно вопросы устойчивости и качества регулирования, достаточно хорошо изучены. Каждому линейному дифференциальному уравнению можно поставить в соответствие разностное уравнение (и наоборот), причем так, чтобы их решения точно совпадали в дискретные моменты времени 0, Г, 2Г,... [8]. При этом необходимо, чтобы такт повторения дискретных значений 4* 99
квантованной функции Т удовлетворял условию теоремы Котельникова: Т < Mfn. vwfn - полоса пропускания системы. Пусть характеристический полином третьей степени линейного диф- ференциального уравнения непрерывной системы с желаемыми свойствами будет р3 4- S{p2 4- S2p 4- 53 = 0. Чтобы решения линейного дифференциального уравнения в моменты 0, Т, 2Т,... совпадали с решениями разностного уравнения, соответ- ствующего характеристическому полиному (10.41), необходимо для корней соответствующих характеристических полиномов выполнить равенство Х, = ер,т, i = l, 2, 3. Теперь по корням %, (i = 1, 2, 3) характеристического уравнения с помощью теоремы Виета можно определить и коэффициенты этого же уравнения Дтреб1 = “(Х1 + Х2 + Хз) = -(еР1Г+ еР2Г+ еРзГ), а1реб2 = Х1Х2 + Х1Хз + Х2Хз = е(р’>+р’2)Г+е(«+^)Г+е(^+^)Г, «требз = (-1)3Х1Х2Хз = (-1)3е(*+^з)Г. Видно, что коэффициенты a^i, 0^2, атребз зависят как от корней характеристического полинома линейного дифференциального уравнения, так и от выбранного интервала дискретности Т. После того как определены коэффициенты характеристического полинома (10.41), можно приступить непосредственно к синтезу закона регулирования. Желаемая система регулирования описывается линейными разностными уравнениями, в том числе и линейным уравнением закона регулирования. Для удобства проведения дальнейшей процедуры синтеза запишем управляющий момент Mk+i двигателя, формируемый регулятором, в виде Мм = -КхСх.к-К2С2,к-К2Мь (10.42) где Кх, К2, К3- неизвестные коэффициенты, подлежащие определению. Добавив это уравнение к системе (10.29), с учетом известного вида решения разностного уравнения получим систему линейных однородных уравнений относительно £(, £2, £з (см. ВИД решения системы (10.31)), определитель которой имеет вид Х-1 х-Я -TIB о Р(Я-Х) (х-1)/в . /с, к2 к3+х Раскрыв определитель и приравняв коэффициенты при одинако- вых степенях % коэффициентам атреб1, атреб2, «требз уравнения (10.41), получим систему линейных неоднородных уравнений относительно 100
неизвестных Ку, К2, К3 -1/рВ \1рВ 1 -1 ^треб j “Ь “Ь1 /с2 — (Я + 1)/ рВ+Т ID 2/В -(Я + 1) атреб2 Лз. (J-\lp)HIB МрВ Н ^требЗ Обычно управляющий момент двигателя на (£+1)-м интервале дви- жения определяется в функции фазовых координат \|1^(у7) и Vj.(yT’), регист- рируемых в момент уТ на k-м интервале движения. Тогда, подставив t = уТ в уравнения (10.27), нетрудно выразить С1Л, С2>* в функции координаты \|^(у7), скорости <Й4(уТ) и управляющего момента Мк на предыдущем интервале движения с2,к=[мк/в-^кт]/рнг \си = ук(уг)-[мк/В-укмп]р-мкуг/в. Подставив выражения для Cl jt и С2к в закон регулирования (10.42) и приведя подобные члены, окончательно получим требуемое управление в режиме стабилизации в виде уравнения MM=-KwXfk^-K^ WT) + KfTpe6Mk, (10.43) где Ку треб = Ку - ПОЗИЦИОННЫЙ коэффициент усиления, /^Tpe6 = -Kylp - KJpHy- скоростной коэффициент усиления, а Х/-Треб = [(ЛутребУТ + + требУЯ] -&3- Закон (10.43) импульсного регулирования в рамках рассматриваемой модели (10.26) следящего привода (без учета возможных ограничений) обеспечивает устойчивость и требуемые качества переходного процесса для заданной величины такта управления Т и запаздывания уТ в системе. При этом частота 1/7 должна быть не меньше удвоенной частоты пропускания эквивалентной непрерывной системы. 10.9. АДАПТИВНОЕ УПРАВЛЕНИЕ РОБОТОМ ПО УПРОЩЕННЫМ ИДЕНТИФИЦИРУЕМЫМ МОДЕЛЯМ В предыдущем разделе мы строили системы управления, основываясь на знании динамической модели объекта регулирования. Вместе с тем известно, что динамическая модель робота, во-первых, принципиально не может быть абсолютно полной (см. гл. 8), а, во-вторых, определена лишь с точностью до вектора параметров и постоянно действующих возмущений [39]. В связи с этим правомочна постановка двух вопросов: как управлять объектами в условиях неопределенности параметров их динамических моделей и какая степень структурной полноты динамической модели объекта является целесообразной. Ответ на первый вопрос можно найти в теории автоматического управления. Разработаны методы адаптивного управления объектами в условиях неопределенности параметров модели на основе идентификации [45]. Во многих случаях процесс идентификации неизвестных параметров 101
совмещается с процессом управления. При этом управление используют и как пробное воздействие (дозированное) на объект, позволяющее по реакции последнего идентифицировать параметры модели, и как средство достижения цели управления (дуальное управление). В связи с тем, что модель неполная, а управляющая система располагает лишь информацией о состоянии объекта управления с некоторой по- грешностью, идентификацию - оценку неизвестных параметров модели - проводят на основе некоторого идентификационного критерия оптималь- ности. В этом случае состояние модели должно служить наилучшей оценкой состояния объекта управления, например, в смысле сохранения минимума интегральной квадратичной ошибки векторов состояний модели и объекта на интервале идентификации. Условие минимума этой ошибки позволяет составить систему алгебраических уравнений относительно неизвестных оценок параметров системы, для решения которой обычно используют рекуррентные алгоритмы. Для такого объекта управления, каким является промыш- ленный робот с его сложной динамической моделью (см. гл. 8) и малым временем выполнения отдельных операций, описанная процедура часто оказывается неприемлемой. Действительно, в случае сложных моделей значительное время требуется как для расчета управляющих воздействий на каждом шаге движения, так и для решения сложных алгебраических уравнений, получаемых в процессе идентификации. Использование при этом медленно сходящихся рекуррентных алгоритмов еще более обостряет проблему затрат времени. Поэтому для систем робототехники актуален вопрос о целесообразной полноте динамических моделей ПР при использовании адаптивного управления с идентификацией параметров модели объекта. Однозначного ответа на него нет. Вместе с тем некоторые эвристические соображения и результаты [7] позволяют сформулировать следующие требования к динамической модели. 1. Для управляемости системы порядок модели по каждой степени сво- боды должен быть не ниже порядка полного дифференциального уравнения той же степени свободы объекта относительно регулируемой величины. Если, например, осуществляется управление механической системой, в ко- торой привод развивает усилие, пропорциональное управляющему воз- действию, то порядок динамической модели должен быть не ниже второго. 2. Для уменьшения времени расчета управляющего воздействия динами- ческая модель должна иметь аналитическое решение, допускающее пред- ставление управляющего воздействия в явном виде, считая его кусочно- постоянными функциями на интервале квантования Г. 3. Для уменьшения времени счета при идентификации параметров модели, последняя должна быть линейной относительно этих параметров. Всем этим условиям заведомо удовлетворяет линейная динамическая модель. В большинстве случаев модели объектов, удовлетворяющие перечис- ленным требованиям, относятся к разряду упрощенных. Все они позволяют избавиться от итерационных процедур вычисления как управляющих воздействий на предстоящий период движения, так и идентифицируемых 102
параметров по прошедшему периоду. Это уменьшает время работы управляющего компьютера, затрачиваемое на реализацию управления движением на нижнем уровне. Значительное отклонение свойств упрощенной модели от свойств реального объекта может привести к необходимости непрерывной иденти- фикации параметров модели, заняв тем самым все время управляющего компьютера. Чтобы этого не произошло, необходимо и в упрощенной модели, и в желаемом характере ее движения учесть наиболее сущест- венные физические особенности реальной системы. Материал, приведенный выше (см. гл. 8), свидетельствует о том, что к таким особенностям ПР, управляемым от цифровых ЭВМ, целесо- образно отнести динамические взаимодействия между степенями подвиж- ности; сравнительно медленное изменение кориолисовых и гироскопи- ческих сил, сил трения и позиционных сил, обусловленных гравитацией; квантование по времени входных и выходных сигналов ЭВМ и связанного с ним кусочно-постоянного характера управляющих воздействий. Первые две особенности можно учесть матрицей инерционных коэффициентов Па с постоянными на а-м интервале идентификации эле- ментами и постоянным на этом же интервале вектором медленно меняющихся кориолисовых и гироскопических сил Na. Упрощенная модель ПР в системе обобщенных координат ф при этом будет Щф+N^^. (10.44) Третью особенность учтем в желаемом характере движений этой модели, сформулировав его не в виде некоторого дифференциального (или разностного уравнения), а в виде, отражающем решение следующей оптимизационной задачи: движение модели на каждом заданном программном интервале времени должно быть таким, чтобы в конце каждого интервала состояние модели соответствовало программному со- стоянию робота, достигаемому при условии минимума кусочно-постоянных управляющих воздействий Фа. При этом предполагается, что для простой модели (типа (10.44)) задача поиска таких управляющих воздействий имеет аналитическое решение. Следующий возможный шаг в упрощении структуры модели с иденти- фицируемыми параметрами - это автономность отдельных дифференци- альных уравнений (с введением в каждое уравнение членов, зависящих от обобщенных скоростей ф). Эффективность той или иной модели про- веряется с помощью известных или задаваемых типовых программных движений имитационным моделированием на ЭВМ. Во всех случаях независимо от принятой конкретной структуры упрощенной модели общая структура алгоритма дуального управления одинакова [19]. Рассмотрим ее на примере отработки роботом с п степенями подвижности (рис. 10.20) траектории, заданной параметрически в виде вектор-функции Ф = Ф(*>- Каждое уравнение линейной динамической модели имеет j настраи- ваемых параметров. Исходными данными для работы схемы управления 103
Рис. 10.20. Общая структура алгоритма дуального управления с использованием идентифи- цируемых упрощенных моделей ПР Исходные данные 104
являются: начальный интервал Дт0 квантования (период идентификации), значения параметров модели, начальные значения обобщенных координат ф и их скоростей ф, а также параметрические уравнения заданной траек- тории. При запуске программы по заданному закону движения производится расчет координат ф и скоростей ф, которые должны определить состояние системы через время Дта при а = 0, 1, 2,... . Далее по линейным моделям определяется такой вектор управляющих воздействий Фа, который должен привести систему в заданное программой (в конце интервала Дт0) положе- ние. Рассчитанные значения Фа выдаются на п приводов, вычисляются моменты времени опроса датчиков Stk = Дта/ J, запускается таймер, и робот начинает выполнять движение. Интервалы квантования следуют друг за другом. В процессе движения через каждый период 8^ производится опрос датчиков двигательной системы робота, который позволяет собрать информацию, необходимую для выполняемой впоследствии идентификации j параметров динамической модели. Информация, полученная в конце интервала Дта, характеризует состояние, в которое пришла двигательная система. Она содержит начальные условия для расчета уравнений на следующем шаге и используется для расчета отклонений Два от заданных законов в момент времени Дта. Кроме того, иногда полезно выполнять интервал Дта переменным в зависимости от погрешности реализации движения на предыдущем интервале Дта_]. Полученное значение Два используют для вычисления интервала Дта+1 на следующем интервале движения. Зависимость между Дта+1 и погреш- ностью Два заранее неизвестна. Поэтому при расчете значения интервала ее целесообразно строить, основываясь на величинах ДБ и Дт на предыдущих интервалах движения. Циклы движения, выполненные со времени последней идентификации параметров модели, накапливаются в счетчике ID. Когда ID станет равным наперед заданному числу х, производится идентификация параметров моде- ли. Для этого, используя информацию о характеристиках движения, полу- ченную датчиками системы, решается п систем из j линейных уравнений. Таким образом, идентификация производится принудительно один раз в х циклов. Значения х могут устанавливаться также в процессе управления в зависимости от того, вышло ли значение Два за заданный допуск. После расчета очередного интервала Дта+1 или идентификации модели снова рассчитываются требуемые значения координат ф, скоростей ф, и цикл повторяется. Рассмотренная блок-схема описана в достаточно общем виде. В качестве составных частей она включает целый ряд алгоритмов, в значительной сте- пени определяющих успех работы программы как в смысле совместимости с реальным временем, так и в смысле точности реализации заданных дви- жений и устойчивости процесса управления. Описанный алгоритм путем имитационного моделирования опробован на простейших моделях с двумя степенями свободы. Имитационное моделирование показало [19], что 105
"система” при значительно более простой структуре ее модели достаточно хорошо отрабатывает программный закон движения. На этом знакомство с вопросами организации и устойчивости функ- ционирования нижнего уровня системы управления закончим и перейдем к задачам, решаемым на более высоком уровне - уровне планирования движений робототехнической системы (или составления программы ее движений). Существенная особенность условий функционирования этого уровня - отсутствие в большинстве случаев проблемы реального времени. Так как программа движений составляется до начала движений, в прог- рамме могут быть учтены особенности достаточно полных динамических моделей ПР. ЛИТЕРАТУРА 1. Андре П., Кофман Ж.-М., Лот Ф. и др. Конструирование роботов. М.: Мир, 1986. 360с. 2. Андронов А.А., Витт А.А., Хайкин С.Э. Теория колебаний. Изд. 2-е. М.: Физматгиз, 1959.915 с. 3. Башарин А.В., Новиков В.А., Соколовский Г.Г. Управление электроприводами: Учеб, пособие для вузов. Л.: Энергоатомиздат, 1982. 392 с. 4. Бесекерский В.А., Попов Е.П. Теория систем автоматического регулирования. М.: Наука, 1975,768 с. 5. Бесекерский В.А. Цифровые автоматические системы. М.: Наука, 1976. 576 с. 6. Бойчук Л. М. Оптимальные системы автоматического регулирования. Киев: Наук, думка, 1965. 342 с. 7. Бойчук Л.М. Метод структурного синтеза нелинейных систем автоматического управления. М.: Энергия, 1971. 113 с. 8. Болотин Л.М., Тывес Л.И. Влияние такта управления на устойчивость и динамическую точность промышленного робота И Пробл. машиностроения и надежности машин. 1992. №2. С. 105-110. 9. Булгаков Б.В. Колебания. М.: ГИТТЛ, 1954. 891 с. 10. Вибрации в технике: Справочник: В 6-ти т. М.: Машиностроение, 1981. Т. 6: Защита от вибрации и ударов / Под ред. К.В. Фролова. 456 с. И. Воронов А.А. Основы теории автоматического управления: Особые линейные и нелинейные системы. М.: Энергоиздат, 1981. 304 с. 12. Гейшерик В.С. Компенсация кинематического взаимодействия в системах привода роботов-манипуляторов // Машиноведение. 1977. № 4. С. 54-58. 13. Емельянов С.В. Системы автоматического управления с переменной структурой. М.: Наука, 1967. 336 с. 14. Иванов В.А., Ющенко А.С. Теория дискретных систем автоматического управления. М.: Наука, 1983. 336 с. 15. Ивахненко А.Г. Кибернетические системы с комбинированным управлением. Киев: Техника, 1965. 304 с. 16. Кобринский А.Е. Механизмы с упругими связями. М.: Наука, 1964. 390 с. 17. Кобринский А.Е., Корендясев А.И., Саламандра Б.Л., Тывес Л.И. Принципы построения двигательных систем автоматических манипуляторов с программным управлением промышленных роботов // Станки и инструмент. 1976. № 4. С. 3-10. 18. Коловский М.З. Автоматическое управление виброзащитными системами. М.: Наука, 1976. 320 с. 19. Корендясев А.И., Саламандра Б.Л., Тывес Л.И. Особенности построения систем управ- ления робототехническими устройствами // Станки и инструмент. 1981. № 12. С. 6-10. 20. Кулаков Ф.М. Супервизорное управление манипуляционными роботами. М.: Наука, 1984. 448 с. 21. Кулешов В.С., Лакота Н.А. Динамика систем управления манипуляторами. М.: Энергия, 1971.304 с. 106
22. Кулябко В.В. О нелинейных характеристиках и свойствах некоторых позиционных демпферов скольжения // Машиноведение. 1980. № 5. С. 29-32. 23. Манолов О.Б., Тулепбаев В.Б. Моделирование движений робота-манипулятора по заданным траекториям // Моделирование и оптимизация сложных систем управления / ИПУ. М.: Наука, 1981. С. 216-222. 24. Медведев В.С., Лесков А.Г., Ющенко А.С. Системы управления манипуляционных роботов. М.: Наука, 1978. 415 с. 25. Мееров М.В. Системы многосвязного регулирования. М.: Наука, 1965. 316 с. 26. Мееров М.В. Синтез структур систем автоматического регулирования высокой точности. М.: Наука, 1967. 423 с. 27. Морозовский В.Т. Многосвязные системы автоматического регулирования. М.: Энергия, 1970. 288 с. 28. Орлянский В.Ю., Перфильева И.М., Тулепбаев В.Б. Гибридно-ориентированные алгоритмы формирования программного движения исполнительного органа робота // Применение вычислительной техники при управлении сложными объектами / ИПУ. М.: Наука, 1978. С. 97-105. 29. Петров Б.Н., Рутковский В.Ю., Крутова И.Н. и др. Принципы построения и проектирования самонастраивающихся систем управления. М.: Машиностроение, 1972. 260 с. 30. Пол Р. Моделирование, планирование траекторий и управление движением робота- манипулятора. М.: Наука, 1976. 104 с. 31. Попов Е.П. Автоматическое регулирование и управление, М.: Наука, 1966. 388 с. 32. Попов Е.П. Теория нелинейных систем автоматического регулирования и управления. М.: Наука, 1978. 256 с. 33. Соколов Н.П. Аналитический метод синтеза линеаризованных систем автоматического регулирования. М.: Машиностроение, 1968. 231 с. 34. Столин Ю.В., Тывес Л.И. Об устойчивости систем регулирования автоматических регуляторов // Машиноведение. 1981. № 2. С. 53-59. 35. Сю Д., Мейер А. Современная теория автоматического управления и ее применение // М.: Машиностроение, 1972. 544 с. 36. Столин Ю.В., Тывес Л.И. Динамика автоматических манипуляторов с приводами, управляемыми по скорости//Станки и инструмент. 1981. № 12. С. 10-13. 37. Техническая кибернетика. Теория автоматического регулирования. Кн. 1. Математическое описание, анализ устойчивости и качества систем автоматического регулирования / Под ред. В.В. Солодовникова. М.: Машиностроение. 1967. 770 с. 38. Тимофеев А.В. Построение адаптивных систем управления программным движением. Л.: Энергия, 1980. 88 с. 39. Тимофеев А.В. Управление роботами. Л.: Изд-во ЛГУ, 1986. 240 с. 40. Тимошенко С.П. Колебания в инженерном деле. М.: Наука, 1967. 444 с. 41. ТывесЛ.И., Столин Ю.В. Особенности регулирования в автоматических манипуляторах при управлении силами сопротивления // Машиноведение. 1983. № 3. С. 53-59. 42. Тывес Л.И., Маркевич С.В. Управление движением робота по собственной траектории. М.: Препринт Лаборатории робототехнических систем ИМАШ АН СССР, 1985, 38 с. 43. Филиппов Г., Фрейдзон И.Р., Давидович Л.И. и др. Мини- и микро- ЭВМ в управлении промышленными объектами. Л.: Машиностроение, 1984. 336 с. 44. Цыпкин Я.З. Теория релейных систем автоматического регулирования. М.: Гостехиздат, 1955. 376 с. 45. Цыпкин Я.З. Адаптация и обучение в автоматических системах. М.: Наука, 1968. 309 с. 46. Цыпкин Я.З. Основы теории автоматических систем. М.: Наука, 1977, 570 с. 47. Freund Т. Fast nonlinear control with arbitrary pole-placement for industrial robots and manipulators // Intern. J. of Robotics Res. Vol. 1. № 1. P. 65-78. 48. Horowitz. R., Tomizuka M. An adaptive control seheme for mechanical manipulators-compensation of nonlinearity and decoupling control // ASME J. Dynam. Syst., Measur. and Control. Vol. 108, June. P. 127-135. 49. Paul R. Manipulator path control // IEEE Trans. Syst., Man, and Cybem. 1979. Vol. SMC-9. P. 702-711.
Глава 11 АВТОМАТИЗАЦИЯ ПРОГРАММИРОВАНИЯ ЭЛЕМЕНТАРНЫХ ДВИЖЕНИЙ РОБОТА. ЗАДАЧИ, МОДЕЛИ, ПРИНЦИПЫ РЕШЕНИЯ, АЛГОРИТМЫ 11.1. ПЛАНИРОВАНИЕ ДВИЖЕНИЙ РОБОТА И ЭЛЕМЕНТАРНЫЕ ДВИГАТЕЛЬНЫЕ ОПЕРАЦИИ. ПРОБЛЕМА ИЗБЫТОЧНОСТИ Планирование движений ПР - это составление программы движений ЧпР(0 (или Фпр(О) робота по степеням подвижности, необходимых для выполнения некоторого технологического задания и реализуемых с по- мощью нижнего (исполнительного) уровня системы управления (см. гл. 10). Нетрудно представить, сколь широк круг вопросов, возникающих при составлении такой программы даже для решения простых технологических задач. Технологическое задание необходимо трансформировать в задание для рабочего органа ПР, описать требуемое движение рабочего органа в пространстве и во времени (иногда в виде временной последовательности его отдельных положений), а также с учетом внешних препятствий, внутренних ограничений (на относительные положения и скорости) и свойств робота выработать программу движений по степеням подвижности. Методически оправдано (часто применяется при построении систем и алгоритмов управления ПР) для уточнения, разделения и решения всех этих вопросов использовать по меньшей мере двухуровневую иерархическую структуру планирующей части системы управления (см. гл. 2). На верхнем (стратегическом) уровне определяется, что должен сделать робот для решения конкретной технологической задачи, и строится последова- тельность действий ПР: сначала грубо, в виде задания состояний рабочего органа, а затем более обоснованно, в виде задания состояний звеньев скелета руки робота. При этом, если на первом этапе больше учитываются технологические особенности выполняемого задания безотносительно к типу используемого робота, то на втором - условия функционирования (внешние условия, ограничения), а также внутренние ограничения и особенности конкретного типа ПР. Из-за конкретизации условий решения технологической задачи на втором этапе число программных позиций рабочего органа после первого этапа может быть меньше числа програм- мных конфигураций руки робота. Поясним сказанное на примере простого технологического задания: перенос объекта манипулирования из одного положения в другое [21, 22]. По заданным устойчивым положениям объекта манипулирования устанав- ливают две программные позиции рабочего органа: исходную и конечную. 108
В этих позициях по каким-либо технологическим причинам относительные положения рабочего органа и объекта могут отличаться друг от друга. Следовательно, необходимо предусмотреть промежуточное устойчивое положение объекта манипулирования на предметном столике и перехват его рабочим органом робота. Далее путем решения обратной задачи о положениях (см. гл. 3) для конкретной кинематической схемы скелета руки робота прогнозируется возможность реализации найденных программных позиций рабочего органа и возможность перевода руки из одной конфи- гурации в другую. При этом необходимость обхода препятствий и, возможно, смены типа конфигураций руки при переводе рабочего органа от одной программной позиции к другой могут потребовать организации дополнительной про- граммной конфигурации руки робота (см. гл. 4). Стратегия решения поставленной конкретной технологической задачи в конкретных условиях выработана и сформулированы условия (или задание) для лежащего ниже тактического уровня системы управления в виде последовательности узловых состояний системы. На тактическом уровне системы управления по известным страте- гическим решениям окончательно формируется программа движений по степеням подвижности, которая и поступает для отработки на испол- нительный уровень системы (см. гл. 10). Каждый переход манипуляционной системы из одного узлового состояния в другое, определенный на стра- тегическом уровне, будем рассматривать как элементарную операцию, автоматическое программирование выполнения которой должно быть осуществлено на тактическом уровне системы управления. Технологическое назначение промышленного робота определяет набор элементарных операций, среди которых можно выделить основные опера- ции, характерные для данной технологии. Например, для промышленного робота-перекладчика характерная элементарная операция - перевод исполнительного органа с объектом манипулирования или без него из одной позиции в другую. Для сварочного промышленного робота эта же элементарная операция имеет место, но является не основной, отвечая лишь переходу исполнитель- ного органа от одного сварочного шва к другому. Основные элементарные операции промышленного робота-сварщика при дуговой сварке связаны с точным воспроизведением концом электрода заданной траектории и режима движения вдоль нее. При точечной сварке основная характерная операция - перенос сварочных клещей из одного положения в другое, близкое к первому, вдоль некоторой заданной траектории с обязательными остановками. Круг характерных элементарных операций еще более расширяется в связи с необходимостью использования во многих роботизируемых про- цессах информации, полученной в системе очувствления: соединение дета- лей при сборке требует, например, учитывать при осуществлении малых перемещений рабочего органа робота текущую информацию датчиков силы и момента. В зависимости от технологического назначения промышленного робота меняется набор выполняемых им элементарных операций. Разнообразие 109
функциональных возможностей робота, таким образом, существенно зависит от числа программ автоматического выполнения различных эле- ментарных операций, а квалификация робота - от качества решения задач автоматического программирования элементарных операций, т.е. от принятых моделей, от критериев оптимальности выполняемых элемен- тарных движений, от методов и алгоритмов решения задач автоматического программирования. Перечень элементарных операций, возможность автоматического цро- граммирования которых подкреплена соответствующим математическим обеспечением, отраженный в паспортных данных ПР, является одной из важных технических характеристик современных ПР и влияет на стоимость последнего. Неудивительно поэтому, что все перечисленные выше элемен- тарные операции были объектами исследований, составляющих теорети- ческую (или программно-алгоритмическую) основу тактического уровня системы управления робота. Мы не будем рассматривать все подряд элементарные операции и приводить алгоритмы их автоматического про- граммирования, а рассмотрим лишь некоторые из них в качестве примеров, иллюстрирующих общие подходы к задачам автоматического программи- рования движений ПР.* Упомянутые выше общие подходы в первую очередь связаны с так называемой проблемой избыточности. Суть проблемы заключается в определении соотношения между заданием и возможностями конкретного ПР, предназначаемого для его выполнения. Эти возможности определены паспортными данными: число степеней свободы, структурная схема скелета руки, размеры и вид рабочей зоны, точность позиционирования, мак- симальные скорости по степеням подвижности, тип системы управления (цикловая, позиционная, контурная) и т.д. Если задание превышает воз- можности конкретного ПР, то оно невыполнимо. Если задание соответст- вует или ниже возможностей ПР, то оно выполнимо. Последний случай, а именно когда возможности ПР перекрывают задание, означает избыточ- ность возможностей ПР. Проблема избыточности - это проблема исполь- зования имеющихся избыточных возможностей. Иногда в технической литературе термину "избыточность” придают более узкое значение - только как разность между числом задаваемых координат [12], необходимых для выполнения элементарной операции, и числом обобщенных координат скелета руки робота, т.е. только как кинематическая избыточность. Представляется оправданной более широкая трактовка избыточности, скрупулезно учитывающая все реальные характе- ристики конкретной модели ПР. Всякое превышение возможностей ПР по отношению к заданию несет в себе резерв улучшения функционирования ПР не в ущерб качеству выполняемого задания. Обратимся к примеру. Два робота с одинаковой плоской структурой скелета руки с тремя степенями подвижности должны перемещать объект манипулирования из одной заданной позиции в другую. Каждой позиции соответствует набор из трех программных значений обобщенных * В этой главе при рассмотрении задач автоматического программирования элементарных двигательных операций будем полагать, что система управления ПР контурная. 110
координат. Пусть имеется различие только в системах управления ПР на исполнительном уровне. У первого робота система управления позицион- ная, у второго - контурная. И первый, и второй роботы могут справиться с заданием. При этом возможности первого робота полностью соответствуют заданию. Он не обладает избыточностью по отношению к заданию, про- грамма перехода из одной позиции в другую "зашита" в систему управления. Возможности второго робота существенно превышают задание. Они соответствуют такому заданию, в котором определены не только траек- тория перемещения объекта манипулирования из одной позиции в другую и ориентация его в каждой точке траектории, но и режим перемещения объекта вдоль этой траектории. Очевидно, чтобы ПР с контурной системой управления мог выполнить первоначальное простое задание, это задание необходимо дополнить программой перехода из одной позиции в другую. При этом мы можем (и должны) использовать предоставляемые возможности для улучшения эксплуатационных свойств ПР. В большинстве случаев избыточные возможности определяют некоторое множество различных решений, каждое из которых отвечает условиям задания и условиям выполнения элементарной двигательной операции. Задача выбора из этого множества решений единственного, наиболее целесообразного, должна быть решена тем или иным способом разработчиком. При этом разработчик в первую очередь руководствуется здравым смыслом. Зачастую ему удается четко сформулировать критерий оптимальности в виде некоторого математического выражения, позволяю- щий, используя в зависимости от условий задачи и вида критерия регулярные методы вариационного исчисления, динамическое программи- рование, принцип максимума и т.д., оперативно выбрать единственное решение из множества. Следует отметить, что проблема формирования критерия оптималь- ности выполняемого движения не так проста. Дело в том, что человек руководствуется при выборе каких-либо решений не одним, а множеством различных критериев и чаще всего может лишь расплывчато указать, чтобы он хотел получить. При этом в наборе пожеланий есть такие, выполнение которых требует прямо противоположных действий. Мы, например, хотим, чтобы некоторое движение осуществлялось очень быстро и при этом с минимальными энергозатратами. Априори ясно, что минимуму энергозатрат соответствует полный покой, т.е. бесконечно большое время выполнения операции. Выход из этой ситуации - в принятии компромиссного решения, отвечающего многокритериальной оптимизации. В теории многокритериальной оптимизации большое значение имеют границы области критериев - области Парето [20]. Область Парето - это область в пространстве критериев, в которой каждая точка есть вектор значений критериев по крайней мере одного из возможных случаев реализации из допустимого множества. Примерный вид области Парето при двухкритериальной оценке возможных решений конкретной двигательной задачи для конкретной манипуляционной системы представлен на рис. 11.1. Решалась задача [12] о переводе объекта вдоль заданной траектории манипуляционной системой с кинематической избыточностью из одного положения в другое. 111
Объем движений Рис. 11.1. Характерный вид области и границы Парето Различные возможные реализа- ции оценивали двумя критериями: временем выполнения движения (т) и "объемом движений" - аналогом затрат энергии (е) для математичес- кой модели манипуляционной систе- мы. Область, заштрихованная на рис. 11.1, и есть область Парето. Имеющиеся в математической моде- ли манипуляционной системы огра- ничения по скоростям, ускорениям и т.д. обуславливают наличие двух точек Л и Б на границе Парето. Одна из них соответствует решению с минимальным возможным значением одного критерия, вторая - другого критерия. Отрезок границы области оценок всех возможных решений задачи, лежащий между точками А и Б, является границей Парето. Соответствующие им решения задачи являются "не улучшаемыми" в том смысле, что уменьшение значения одного из критериев обязатель- но связано с увеличением значения другого критерия. Все соответствую- щие точкам границы Парето решения задачи можно рассматривать как вполне допустимые при данной двухкритериальной оптимизации. Выбор в качестве оптимальной единственной точки кривой А Б связан с волевым переходом к однокритериальной задаче. Свою волю разработчик может выразить в разной форме. Можно, например, два критерия заменить их сверткой К = к^ + к2х, (11.1) где к} и к2- положительные числа (весовые коэффициенты), назначаемые разработчиком. Можно просто зафиксировать величину одного из крите- риев и рассматривать его как дополнительное ограничение. Оптимизируя по второму критерию, получим решение, соответствующее также неко- торой точке границы Парето. В связи с тем, что точки границы Парето определяют множество оптимальных решений, не исключена возможность и обратного подхода при доказательстве оптимальности предлагаемого решения. В этом случае разработчик осуществляет выбор решения, руководствуясь не четким критерием оптимальности, например вида (11.1), а некоторыми общими физическими соображениями и здравым смыслом. Тогда для подтверждения целесообразности предлагаемого решения разработчику достаточно доказать (или показать), что оно принадлежит границе Парето в много- критериальной задаче с известными (и неоспоримыми, хотя и проти- воречивыми) критериями. Тем не менее приводимые ниже алгоритмы программирования элементарных операций построены на основе опти- мального решения однокритериальной задачи. Второй важный вопрос, на который приходится отвечать разработчику при создании математического обеспечения для автоматизации программи- 112
рования конкретной элементарной операции, связан с целесообразным уровнем сложности математической модели манипуляционной системы. Как следует из предыдущего материала, эти уровни сложности модели следующие: кинематический, статический, динамический. В числе факто- ров, влияющих на выбор типа модели, в первую очередь следует отметить скорости перемещения звеньев руки и нагрузки приводов манипуляционной системы, обусловленные выполняемой элементарной операцией. Если скорости перемещения звеньев руки малы, а манипуляционная система статически уравновешена (случай соответствует основной эле- ментарной операции при дуговой сварке), то целесообразно восполь- зоваться кинематической моделью манипуляционной системы с ограни- чениями перемещений, скоростей и ускорений. Затраты энергии на борьбу с трением в передачах и кинематических парах пропорциональны переме- щениям в шарнирах скелета руки и поэтому могут быть оценены "объемом движений" [12] п г е = £ P.J 4,(ОА, (11.2) £=1 О где pf - весовой коэффициент i-й обобщенной координаты, t- время движения. Статическая неуравновешенность массивных звеньев руки робота и переносимого груза при малых скоростях перемещений определяет область целесообразного использования статической модели [11]. Существенными становятся статические характеристики приводов и ограничения развиваемых ими моментов. С увеличением скоростей движений важное значение для выбора типа модели имеет вид привода. Так, в отсутствие больших статических нагрузок и при ярко выраженном астатическом типе привода (например, электро- привод с большим передаточным отношением редуктора) вполне оправдано использование кинематических моделей. Лишь очень высокие скорости и ускорения перемещений звеньев при акселерационном типе привода (например, безредукторный электропривод) определяют область целесообразного использования динамических моделей ПР при разработке алгоритмов автоматического программирования движений. Прежде чем перейти к описанию методов, применяемых для автомати- зации программирования элементарных движений на основе математи- ческих моделей ПР различной сложности, выделим задания, наиболее часто встречающиеся в постановках задач программирования. Эти задачи формулируются для рабочего органа ПР в соответствии с требованиями выполнения технологических операций. Независимо от того, касается ли задание всех или части координат рабочего органа ПР как твердого тела в пространстве (см. гл. 3), т. е. Хпр — 1Лпр> Упр, ^Пр, ОСцр, [3Пр, Упр] — 1Л1> -^2» 3’ -*4> -^5» -^б] » О 1-3) будем различать точечные и непрерывные (или контурные) задания. В первых содержатся отдельные точки в пространстве задаваемых коорди- нат или в пространстве состояний рабочего органа, во вторых - траектории. 113
Не случайно, что этому принципу разделения заданий соответствуют различные типы системы управления: позиционные и контурные. На ранних стадиях развития робототехники массовость точечных заданий и дороговизна систем управления и их программного обеспечения привели к необходимости приспособления систем управления к ним на нижнем, исполнительном, уровне. В настоящее время себестоимость контурных систем управления мало отличается от себестоимости позиционных, а ценятся они дороже. В программном обеспечении контурных систем управления в связи с тем, что типы заданий со временем не изменились, разница между ними должна учитываться. Естественно, при большом числе задаваемых точек на малом общем перемещении исполнительного механизма робота будем иметь локально- точечное задание, приближающееся по свойствам к непрерывному заданию. Многие алгоритмы планирования движений связаны с необходимостью и обратного перехода от непрерывного задания к локально-точечному. Вместе с тем, несмотря на указанную близость между локально-точечным и непрерывным заданиями, между ними существует принципиальная разница: в первом случае в промежутке между точками движение заданием не определено. Второй важный признак - зависимость задаваемых координат рабочего органа от времени. В реономных заданиях программные значения задаваемых координат являются, а в склерономных - не являются функцией времени. Для одного и того же ПР при одинаковом числе задаваемых координат рабочего органа наименьшей определенностью (следовательно, наибольшим разнообразием возможных движений, удовлетворяющих заданию) отличаются точечно-склерономные задания. Затем по степени неопределенности задания идут точечно-реономные, непрерывно-склеро- номные и, наконец, наиболее определенные - непрерывно-реономные. Заметим, что большая свобода в выборе программного движения в основном связана с большей сложностью решения соответствующих оптимизационных задач. Поэтому при разработке алгоритмов автоматического программирования элементарных движений часто трансформируют исходное задание к заданиям с большей определенностью, сначала к непрерывно-склерономным, а затем к непрерывно-реономным. Например, точечно-склерономное задание - перевести рабочий орган из одного (исходного) состояния в другое (конечное) при отсутствии ограничений - иногда [9, 22] трансформируют в непрерывно-склерономное на основе известной в механике теоремы Шаля: всякое перемещение свободного твердого тела из одного положения в другое может быть получено посредством поступательного перемещения вместе с произвольно выбранным полюсом и поворота вокруг некоторой оси, проходящей через этот полюс. При этом в качестве поступательного перемещения назначается прямо- линейное в неподвижном декартовом пространстве перемещение начала системы декартовых координат, связанной со схватом (см. рис. 3.2,6). Век- тор, относительно которого осуществляется поворот такой системы, и величина угла поворота определены ее начальной и конечной ориентацией. Распределив равномерно угол поворота вдоль прямолинейного переме- 114
щения начала этой системы координат, получают задание в виде непрерывно-склерономного. Далее, задавшись законами разгона и торможения и ограничив скорость полюса системы координат, связанной со схватом, определяют скоростной режим движения вдоль траектории и, следовательно, задание в виде непрерывно-реономного. Именно с таких заданий мы начнем рассмотрение методов автомати- ческого программирования элементарных движений ПР. 11.2. АВТОМАТИЗАЦИЯ ПРОГРАММИРОВАНИЯ ЭЛЕМЕНТАРНЫХ ДВИЖЕНИЙ РОБОТА НА ОСНОВЕ КИНЕМАТИЧЕСКИХ МОДЕЛЕЙ 11.2.1. Позиционный метод построения программы движений. Интерполяция Пусть непрерывно-реономное задание Хпр(г) полностью соответствует кинематической структуре скелета руки робота, т.е. число компонент вектора-функции задания равно числу степеней свободы рабочего органа как твердого тела, а структура руки не имеет избыточных кинематических пар (см. гл. 3). Для определенности будем, например, считать, что число степеней подвижности руки равно шести. Позиционный метод построения программы движений в этом случае - это решение обратной задачи о положении (3.14), когда ЧпР(0=/[Хпр(0]. (11.4) Если структура руки такова, что существует и найдено решение обратной задачи о положении в явном виде, а получаемые при этом выражения и быстродействие используемой вычислительной техники позволяют вести вычисления в реальном времени, то проблема исчерпана. Во всех остальных случаях, когда либо явный вид выражений (11.4) очень громоздок, либо быстродействие вычислительной техники невысоко, либо структура руки не допускает решения обратной задачи в явном виде и для определения программных значений необходимо решать систему трансцендентных алгебраических уравнений, используя различные итера- ционные процедуры, и расчет qnp(r) в реальном времени невозможен, процедура определения программных значений обобщенных координат на основе позиционного метода выносится за пределы движения, т.е. осу- ществляется предварительно. Возможна ситуация, когда объема памяти вычислительного устройства отведенного для хранения массива программных значений дпр/(/)) (/ = 1, Л; / = !,«); 4np((r0) = 4np(o, 4np(('*) = 4np(i при г,- < Т (см. гл. 10), вполне хватает. Тогда проблема построения программы движений для рассматриваемых заданий и манипуляционных систем решена [10]. В противном случае используют комбинированный подход, заключающийся в следующем. В сравнительно небольшом числе назначаемых узловых точек траектории предварительно решают обратную задачу о положении. По 115
найденным решениям для каждой обобщенной координаты определяются коэффициенты интерполирующих полиномов на участках ее изменения между узловыми точками. Последние образуют хранящийся в памяти массив информации о программном движении. По этим данным и по общей формуле принятого интерполирующего полинома уже в процессе движения системы, т.е. в реальном масштабе времени, ведется расчет программных значений обобщенных координат с периодом квантования Г. Платой за экономию объема памяти и повышение скорости вычислений (фактически за реальное время) является ошибка найденных с помощью интерполяции программных значений обобщенных координат и, возможно, разрывы производных получаемых программных функций обобщенных координат. Последнее может отрицательно сказаться на динамической точности воспроизведения программных движений. Связь между точностью и гладкостью программной траектории, объемом требуемой памяти и быстродействием средств вычислительной техники, с одной стороны, и порядком интерполирующих полиномов и числом точек интерполяции (или интервалом интерполяции) такова: - при фиксированном интервале интерполяции чем выше порядок полинома, тем выше точность и гладкость программных значений обобщенной координаты и тем больше должны быть объем памяти и быстродействие вычислительного устройства; - при фиксированном порядке интерполирующего полинома чем больше число точек интерполяции, тем больше должен быть объем памяти для хранения программы и выше точность программных значений обобщенных координат. Быстродействие вычислительного устройства с числом узловых точек непосредственно не связано. Оно ограничивает сверху степень интерполирующего полинома. При выбранном порядке интерполирующего полинома, удовлетворяющем требуемой гладкости программного "дви- жения", заданную точность программной траектории можно обеспечить за счет как числа узловых точек, так и их места расположения, т.е. за счет вариации интервалов интерполяции. Обычно эта задача решается с помощью предварительных расчетов методами последовательных приближений и параметрической оптимизации. При фиксированном числе узловых точек варьируемыми параметрами являются величины интервалов. На каждом шаге решения задачи выбора числа узловых точек и интервалов интерполяции необходимо решать задачу собственно интерполяции, поскольку только ее решение позволяет определить достигаемую при фиксированном наборе варьируемых пара- метров точность программных движений. Учитывая важность решения задачи интерполяции, рассмотрим ее подробнее. Разобъем полное время движения рабочего органа от до tk в планируемой элементарной операции на к интервалов так, что длительность j-го интервала - tj_} > Т (/=1,2,..., к). Моменты времени tQ и tj определяют в параметрической форме узловые точки заданной траектории движения рабочего органа. При решении обратной задачи о положении получим независимые наборы ^(^0), ^(^) (i = l, и) одноименных обобщенных 116
координат в узловых точках. Для каждой обобщенной координаты, вернее для набора ее значений в узловых точках, будем решать задачу интер- поляции, т.е. искать функцию приближения. Для этого воспользуемся "сплайнами" [2]. Сплайном PjS(f) порядка 5 называют функцию, являющуюся мно- гочленом степени s на каждом из отрезков [r7_b г7] ^(г) = ауо+а^ + ... + ау/, tj_l<t<tj (11.5) и удовлетворяющую условиям непрерывности функции и ее производных до порядка s - 1 в точках t2,..., tk~\ = (И.6) при г = 0, 1,..., 5- 1;у = 1, 2,..., k-i. Число неизвестных коэффициентов ajp (р =0, 1, ..., s) в (11.5) равно (s+V)k, а соотношения (11.6) образуют систему из (&-1)$ уравнений. Остальные уравнения для определения коэффициентов ajs получают из условий близости к приближаемой функции, например из условия совпаде- ния значений сплайна с известными значениями i-й обобщенной координа- ты <?,(г0), в узловых точках. Прежде чем перейти к подробному описанию процедуры определения коэффициентов сплайна на конкретном примере, отметим, что искомые приближения можно рассматривать как результат решения вариационной задачи [3]: найти функцию q^t) с непрерывной (5-1 )-й производной, удовлетворяющую условиям ?,((,) = q^tj) (j = 0, 1,..., к) и минимизирующую интеграл 1к 2 Z = J [<7^(0] dt, (11.7) 'о представляющий собой средний квадрат производной порядка 5 функции на траектории. Действительно, уравнение Эйлера для этого функционала приводит к уравнению ^i+1)(r) = 0, (11.8) решение которого имеет вид (11.5). Те же уравнения получим, минимизируя сумму средних квадратов производных порядка s всех п функций q{t) на траектории. В качестве примера, имеющего практическое значение, на котором можно продемонстрировать составление и решение уравнений для опре- деления коэффициентов сплайна, выберем критерием (11.7) - средний квадрат ускорений функции qt (г) на траектории (или, согласно (11.8) и (11.5), сплайн второго порядка). В этом случае получим быстро вычисляемую и в то же время достаточно гладкую функцию qt (г) с непрерывной первой производной и разрывной кусочно-постоянной второй производной (рис. 11.2). Резкие импульсы третьей производной на границах интервалов интер- полирования не вызовут перегрузок в системе при отработке получаемых 117
a Рис. 11.2. Интерполяция сплайнами второго порядка. Вид функции q^t) (а), ее первой (б) и второй (в) производных программных движений. Они обуславливают лишь быстрое, но конечное изменение управляющих воздействий и, вообще говоря, присущи большин- ству цифровых систем автоматического регулирования ПР (см. гл. 10). Итак, имеем сплайн второго порядка <7(0 = Pj2 (0 = aj0 + aj\t + а)2*г ’ (11 -9) Число параметров, подлежащих определению, в этом случае будет Зк, а число условий непрерывности и приближения равно Зк-2: (11.10) р12(0) = ?,0о)> Р)2^^ = Я^^ 7 = 1, 2, ...» к. Одного условия не хватает. Систему (11.10) можно дополнить желае- мыми граничными условиями - скоростями в начальный или в конечный моменты движения. Если задаться начальной и конечной скоростями движения (обычно нулевыми, характеризующими начало и конец выполнения элементарной операции), то число условий будет превышать число искомых параметров. Для обеспечения соответствия между числами условий и искомых параметров на практике к крайним сплайнам РХ2 и Ркг (или к одному из них) добавляют специальные функции в виде многочленов более высокого порядка. Это равносильно увеличению порядков крайних сплайнов. 118
В нашем случае для удовлетворения дополнительным граничным условиям, например I\2(tQ) = 0 и достаточно вместо сплайна Рк2 использовать сплайн Р кЗ = ак0 + ak\t + + а^3 • Мы не будем задаваться скоростью Pk2(tk), а зададимся лишь Pi2(^o) = O (ИИ) и определим параметры сплайнов (11.9) из условий (11.10) и (11.11). Для удобства введем в рассмотрение величины vy = Pj2(tj)- Поскольку функция Pj2(tj) линейна на интервале [Zy_b г;], получим Pj2(P) = v/'- + v^tj - f)/hj9 где hj = tj- tj_}. В данном выражении уже учтено условие непрерывности первых производных из (11.10). Теперь нетрудно, учитывая равноуско- ренное изменение координаты g/Z) на интервале tj] с ускорением ?,(0 = (v7 - Vy.J/Ziy и начальными условиями q.(tj_1) = и ?/(0 = Vy_1, записать выражение для сплайна в виде ^2(O = ?1(ry_1) + v7._1(r-ry_1) + (v7-v7_1)(r-zy_1)2/2hy. (11.12) Здесь учтены условия совпадения значения сплайна Р^У) в момент tj_\ со значением (см. (11.10)). Соответственно искомые коэффициенты сплайна (11.9) будут «уо =4,(',-i) + [v4-i + 'Л-1]/2А<’ aji=(yj-itj~vjtj-i)/hi’ (11.13) «7-2 = (vy-vy_1)/2/i,.. Как видим, задача свелась к определению неизвестных пока значений Vj(j= 1, 2, ..., к). Подстановив в (11.12) t = tj, при условии непрерывности Pjitlj) = Pj +1,2(0) (см- (! 1Л°)) получим Vj+Vj_l=2[qi(tj)-qi(tj-l')]/hj=dj. (11.14) С учетом принятого условия v0 = 0 (11.11) к соотношений (11.14) образуют систему линейных алгебраических уравнений с к неизвестными V,- (/ = 1,2, ..., к): '1 0 0 . . 0 0 О’ 1 1 0 . . 0 0 0 0 1 1 .. 0 0 0 0 0 0 .. 1 1 0 0 0 0 . . 0 1 1 ч V2 V3 Vt_i Ук . = 1 1 7 _, СЧ СП 43 43 43 . . 43 43 I 1 119
Данная система решается методом последовательной подстановки. После определения всех v;, в соответствии с (11.13) можно найти выражения коэффициентов сплайнов Pj2(f) для всех А: интервалов. Элементарные операции, выполняемые ПР, часто требуют его работы по замкнутому циклу. В этом случае исходные данные должны содержать условие <7z(r0) = q^), которое не вносит принципиальных изменений в правую часть последней системы уравнений. Условие замыкания траекто- рии по производной На первый взгляд, никакими особенностями полученная система не обладает. Однако нетрудно убедиться, например последовательным исключением переменных vb v2, vk_2 путем попеременного вычитания и сложения уравнений, что эта система не вырождена лишь при нечетном числе интервалов интерполирования. Из получающейся таким образом системы двух уравнений относительно vk_} и vk также видно, что при четном числе интервалов интерполирования существуют условия, касающиеся взаимного расположения точек интерполирования, dk=0 и (-1)4=°’ ;=i при выполнении которых допустимо четное число интервалов. Получающаяся при этом многозначность решений может быть использована для введения еще одного дополнительного требования к характеру движения, например на к-м интервале. Существует еще одна возможность увеличения числа краевых условий при применении сплайнов второго порядка. Она связана с переходом к такому сплайну, узлы которого находятся посредине между узлами интерполяции, т.е. к сплайну Р2(г), для которого Р02 = const, r0 < t < (r0 +t{)/2 Pj2 = const, (гЛ1 +1 )/2< t< (tj + ry+1)/2, j = 1,2, ...Д-1, Pk2 = const, (rjt_1 + rjt)/2< t< tk. 120
Условия приближения и непрерывности в этом случае отличаются от (11.10) и имеют вид Р,.2(г>) = ^.(гу), 7 = 0,1,2, >,-2[('у+1 + tj} /2] = Р,+1.2[(Г,+1 + Г,) /2], /2] = Р,+,2[(Г>+1 + tj)/2], j = 0,1,2,...Д-1. Как видно, число условий увеличилось и стало равным 3&+1, но и число искомых параметров в связи с увеличением числа многочленов на единицу теперь будет Зк+З. Следовательно, имеется возможность задавать два граничных условия, например, желаемые скорости в начальный и конечный моменты движения. Методика определения коэффициентов сплайна остается прежней. В случае замкнутого цикла дополнительную возможность задания еще одного граничного условия можно использовать для выравнивания ускорения на первом и последнем интервалах. Вход и выход из замкнутого цикла движения во всех рассмотренных случаях сплайнов планируют отдельно. Как отмечалось выше, для обеспечения перехода из некоторого известного состояния к первой узловой точке цикла с рассчитанной в соответствии с (11.15) скоростью в ней можно воспользоваться сплайном более высокого порядка. То же относится и к выходу из цикла. После того как найдены коэффициенты сплайна-функции на всех интервалах программного движения по всем обобщенным координатам, можно приступить к оценке и, если потребуется, к коррекции построенной программы. Во-первых, следует проверить, не превышают ли максималь- ные скорости и ускорения по обобщенным координатам на каждом интервале известные ограничения: |J<<7/пред> |^|-?/пРед- Во-вторых, решением прямой задачи о положении (см. гл. 3) по известным сплайн- функциям рассчитать получающееся программное задание, т.е. оценить точность епр программы. Во всех случаях выхода получаемого программного движения за ограничения программу корректируют: сначала за счет смещения узловых точек, а затем, при отсутствии положительного результата, за счет увели- чения числа узловых точек. Здесь следует напомнить, что, у программиста должна быть уверенность в том, что исходное непрерывно-реономное задание удовлетворяет ограничениям по 4/пред и <7,пред • Поэтому в процессе подготовки программы в первую очередь необходимо по исходному заданию решить обратную задачу о скоростях (см. гл. 3). По ее решению можно оценить и обобщенные ускорения, необходимые для выполнения исходной программы. Порядок последо- вательного решения задач при автоматическом программировании эле- ментарных операций в рассмотренном выше случае представлен в виде алгоритма на рис. 11.3. На основе этого алгоритма планируется движение ПР и при непре- рывно-склерономном задании, причем свобода в режиме движения рабочего органа по траектории используется, например, для повышения быстро- действия. Задавшись узловыми точками на траектории, назначим времена 121
Рис. 11.3. Укрупненная блок-схема алгоритма автоматического программирования элемен- тарной операции позиционным методом с интерполяцией сплайнами второго порядка а^а'^а^ - коэффициенты сплайн-функции i-й обобщенной координаты на j-м интервале. Пунктирная линия охватывает блоки подготовительного этапа движения между ними: [r0, ], [Л, •••> lA-i, Пусть мы выбрали такое к и такой порядок сплайна, что полностью использовали возможности при- меняемой вычислительной техники в смысле отведенного для хранения программы объема памяти и обеспечения вычислительных процедур для управления в реальном времени. Тогда, взяв в качестве варьируемых параметров времена [r0, fi], |>i, lA-i, hL будем решать задачу программирования, изменяя эти времена до тех пор, пока на каждом интервале интерполирования не выйдем хотя бы на одно из ограничений <7/пРед’ ^пред’ £пР0 = 1’п)- Процедура поиска оптимального режима должна включать и варьирование положений узловых точек на заданной траек- тории. Если бы возможности ПР не требовали использования интерполяции, то оптимальный режим движения был бы другим. В этом случае условие оптимальности по быстродействию при исключении допуска на ошибку программирования (£пр = 0) сводится к тому, чтобы в каждой точке 122
траектории обеспечить максимально допустимую скорость при ограничениях по ^.пред и йпред. Построение оптимальной программы движений нелинейной системы высокой размерности удобнее проводить, опираясь не на сходные позиционные уравнения кинематики (3.1) (или (3.14)), а на получаемые из них дифференциальные уравнения первого порядка (3.5). Методы построения программы движений, в основе которых лежит использование уравнений типа (3.5), называют скоростными, либо линеаризованными позиционными, если эти уравнения рассматривают не относительно обобщенных скоростей, а относительно малых приращений обобщенных координат. Область целесообразного применения таких методов программирования движений по кинематическим моделям охватывает как кинематически полные непрерывно-реономные задания, так и кинематически неполные непрерывно-склерономные, когда имеет место кинематическая избыточ- ность манипуляционной системы. 11.2.2. Скоростной и линеаризованный позиционный методы построения программы движений в случае кинематически полного задания Построение программы движений ПР на основе скоростного и линеаризованного позиционного методов производится в процессе движе- ния по заранее рассчитанным опорным точкам на заданной траектории рабочего органа Хпр(Г). Эти методы моделируют процесс решения обратной задачи о положении и в принципе не требуют ее априорного решения (даже в опорных точках траектории рабочего органа). Система сама находит решение, используя соотношения V = J(q)qK или AS = J(q)AqK, (11.16) где V = [x,y,z,0x,0y,0z]r - командный вектор скорости, AS = = [Ах, Ay, Az,0A.,0y,0z]r - командный вектор приращений положения схвата, qK и AqK - искомые векторы командных обобщенных скоростей и приращений обобщенных координат соответственно, J(q) - матрица Якоби, зависящая от фактической конфигурации робота в рассматриваемый момент времени. Основной проблемой, от решения которой существенно зависит ка- чество движений системы вблизи заданной траектории, является алгоритм формирования командного вектора скорости V или его аналога - командного вектора приращений положения схвата AS. Очевидно, что формировать командные векторы V или AS следует как функцию ошибки положения рабочего органа робота относительно текущего програм- много Хпр(Г). Идеология формирования командного вектора при скоростном и линеаризованном позиционном методах построения программ движения 123
одна и та же. Однако имеется некоторое отличие в реализациях систем управления, построенных на этих принципах. Поэтому сначала подробно остановимся на скоростном методе. Алгоритм автоматического формирования командного вектора скорос- ти V можно строить по-разному. Один из популярных подходов связан с ге- ометрическими представлениями и с планированием элементарного движе- ния рабочего органа робота на основе упоминавшейся выше теоремы Шаля [22]. Математическое выражение теоремы Шаля нетрудно получить, поль- зуясь известными [19] формулами преобразования координат твердого тела при его повороте на угол 8 относительного единичного вектора п = [пр и2, Из]г, проходящего через начало системы координат где Х' = В(п, 8)Х, П[П2 «22 «3«2 «Л Из2 (И-17) Для случая перевода рабочего органа робота из начального положения, соответствующего его текущему состоянию, описываемому матрицей (см. гл. 3) м06 = *06: б"Т1’. в конечное, соответствующее программному состоянию, описываемое матрицей Мпр ’кпр ! хпр- используя (11.17), можно записать Кпр =8(5,8)!^. Кроме того, имеем ДХ = Хпр - X - вектор переноса центра системы координат, связанной со схватом. При известных Кпр и КОб легко определить элементы [by] матрицы В(п, 8) = Кнр и далее в соответствии с (11.17) = (b32 -b32) /2sin8, 0 < 8 < л, (11.18) и2 = (b13 -b31) /2sin8, п3 = (b21 -b12)/2sin8. 124
В случае 8 = 0 и 5 = п компоненты вектора п соответственно либо не вычисляют за ненадобностью, либо определяют по формуле п = С(Кпр,. + К06(.)/1Кпр(. + К06(.|, где Кпр,и К об, - любые одноименные столбцы матриц Кпр и К06, для ко- торых указанная в последнем выражении сумма соответствует ненулевому вектору. Задавшись временем t перехода из текущего положения в целевое при условии движения к цели с переносной линейной скоростью и скоростью вращения рабочего органа, по соотношениям (11.18) определяют команд- ный вектор скорости V = [i,y,z,0x,0y,02]r=(l/r)[AXr ! 8пг]Г. Если известны максимально допустимые угловая (<отах) и линейная (втах) скорости движения рабочего органа, то минимальное время перехода t может быть определено как t = rnax[l8l/(0max, 1ДХ1/'1)1пах]. Для малых отклонений текущих положений от программных при фор- мировании командного вектора скорости можно воспользоваться резуль- татами, полученными выше (см. раздел 3.2). При этом получим приближен- ное значение того же самого командного вектора скорости. Определим Тогда имев' г место соотношение ’ 0 —0г 0у * Дх" ог о -0Л ; Ду 1 ДКоб^ЛЖ;’ ! AX(qnp,q)" -°, 0Х 0 | Ди ° : 1 0 0 о ! которое тем точнее, чем меньше текущее положение отличается от про- граммного. Из соответствующих элементов правой матрицы и их после- дующего деления на время перехода t компонуется командный вектор скорости V. Сформированный командный вектор V по известному вектору текущих значений обобщенных координат согласно (11.16) позволяет приступить к определению командных значений обобщенных скоростей qK=[J(q)F‘V. (11.19) В случае кинематически полного задания, когда размерности векторов qK и V равны, уравнение (11.19) позволяет определить вектор qK, если J(q) имеет обратную матрицу. 125
a б Рис. 11.4. Структурная схема тактического уровня системы управления на основе ско- ростного метода а - с использованием следящего привода на исполнительном уровне, б- с использованием астатических УПУ Реализация системы управления на основе скоростного метода приводит к структурной схеме тактического уровня, представленной на рис. 11.4. Для получения программных значений qK обобщенных координат, поступающих на исполнительный уровень, сигналы, полученные в соответствии с (11.19), интегрируются (см. рис. 11.4,а). Наряду с такой структурной схемой системы управления в случаях, когда свойства двигателя соответствуют астатическому УПУ (см. гл. 10), можно использовать упрощенную схему без следящего привода на ис- полнительном уровне и без интегратора (см. рис. 11.4,5). Это упрощение фактически сводит тактический уровень системы управления к исполни- тельному, что подтверждает условность разбиения системы на уровни. Одно из отличий позиционного линеаризованного метода заключается в том, что с его помощью вырабатываются командные значения обобщенных координат, а не скоростей. Поэтому он ориентирован на такую испол- нительную систему, в которой используется следящий привод по положе- нию, а не астатическое УПУ. Логика построения системы управления на основе позиционного ли- неаризованного метода с использованием командного вектора приращений положения рабочего органа AS принципиальных отличий от схемы, при- веденной на рис. 11.4,а не имеет (рис. 11.5). Однако, несмотря на использо- вание тех же формул, меняются требования к командному вектору AS. Его 126
Рис. 11.5. Структурная схема тактического уровня системы управления с использованием позиционного линеаризованного метода (К - тактовые ключи) абсолютная величина на каждом шаге должна быть достаточно мала. Дело в том, что конечный поворот твердого тела нельзя представить в виде вектора, "угловые компоненты" не подчиняются закону коммутативности сложения. И лишь при очень малых поворотах относительно осей системы 0XYZ их можно считать компонентами вектора AS. Это обстоятельство влечет за собой необходимость уменьшения вре- мени такта, в течение которого осуществляется цикл вычислений, и соот- ветственно величин АХ и 5пг, рассчитываемых по (11.18). Таким образом, движение системы к цели при данном методе осуществляется после- довательными корректировками положения с ярко выраженными элемен- тами рыскания. В зависимости от полученных величин компонент команд- ного вектора AS это движение может оказаться и неустойчивым. При использовании скоростного метода движения системы более гладкие (отсутствует скачкообразное изменение командных координат), но тем не менее гарантировать их устойчивость при описанном алгоритме формирования командного вектора скорости нельзя. Поэтому развитие скоростного и линеаризованного позиционного методов построения движения на тактическом уровне связано с переходом от геометрического к дифференциально-алгебраическому способу формирования командных векторов [14]. Этот способ лишен наглядности геометрического метода, зато позволяет таким образом сформировать командный вектор, что движение системы (рассматриваемой на тактическом уровне) будет устойчивым. Идею дифференциально-алгебраического способа формирования ко- мандного вектора рассмотрим для случая скоростного метода построения движений на примере некоторой структуры манипулятора с тремя сте- пенями подвижности, обеспечивающей пространственное перемещение конечной точки. Здесь текущие координаты точки - X; задана трехмерная вектор-функция программного движения этой точки - Хпр(0- Командный вектор скорости для такой системы V = Хк = [xK,yK,iK]r предлагается формировать в виде XK=R[Xnp-X], (11.20) где R - [3 х 3]-матрица постоянных параметров которые необходимо 127
найти, исходя из требования обеспечения устойчивости алгоритма работы системы управления на тактическом уровне. Для грубой оценки устойчивости алгоритма допустимо принять сле- дующие предположения: время считывания и преобразования информации в системе бесконечно мало, привод за бесконечно малое время обеспе- чивает выполнение равенства Хк = X. В таком случае система будет описываться линейным неоднородным дифференциальным уравнением X = R[Xnp-X]. Следовательно, задача обеспечения устойчивости алгоритма работы системы управления сводится к обеспечению устойчивости решения по- лученного дифференциального уравнения. Последнее устойчиво, если кор- ни %, характеристического уравнения, отвечающего однородному диффе- ренциальному уравнению X = -RX, (11.21) лежат в левой полуплоскости Re %, < 0. В нашем распоряжении элементы матрицы R, с назначением которых и связано формирование командного вектора скорости. Так как свойства системы (11.21) определены только набором корней характеристического уравнения, то из всех возможных подобных матриц с одинаковым ха- рактеристическим полиномом в качестве матрицы R имеет смысл взять матрицу Фробениуса вида ’0 1 ; ; о 1 г 1 1 О' , pji = 1, п) = const, 0 0 1 [ 0 1 РП Рп-\ ! ! Рг Р\_ потому, что для такой матрицы характеристический полином просто вы- ражается через коэффициенты Я(х) = (-1)П(ХП ~Р\Т~Х~РзТ~2 - - -Рп)- При этом, согласно теореме Виета, коэффициенты p,(z = l,n) являются известными функциями %,. Так, для рассматриваемого примера при п = 3 ^(Х) = -Х3 + Р1Х2+Р2Х+Рз, Р\ = Xi + Х2 + Хз, Pi = -Х1Х2 - Х1Хз- ХгХз> Рз = Х1ХгХз- Таким образом, остается задаться величинами %i, %2 и Хз так> чтобы Re %, < 0 и по значениям рх, р2, рз и структуре матрицы 0 1 0 R= 0 0 1 (11.22) Рз Рз Р\ синтезировать командный вектор скорости (11.20). 128
При подстановке (11.22) в (11.20) нетрудно убедиться, что мнемоничностью геометрического способа формирования командного вектора скорости получаемое решение не обладает хк=-Ду, yK = ~Az, + (Х1Х2 + Х1Х3 + Х2Х3 )ДУ - (Xi + Х2 + Хз )Az, а устойчивость и качество переходных процессов повышает. Скорость затухания переходного процесса определяется модулями значений х, • По определенному тем или иным способом командному вектору скорости V (или приращений AS положений схвата) не всегда удается найти векторы командных обобщенных скоростей qK (или приращений AqK обобщенных координат). Задача (11.16) решается только при |[J(q)]-1| * 0. Однако, как известно (см. раздел 3.6), возможны конфигурации, в которых |[J(q)]-1| = 0 и, следо- вательно, система (11.16) вырождена. Очевидно, алгоритм управления дол- жен учитывать это обстоятельство, оценивать величину определителя обратной матрицы J(q) и включать правила входа и выхода из особых конфигураций. Это, конечно, усложняет задачу построения движений. Один из способов уменьшения влияния этих особенностей связан с переходом к кинематически неполному заданию либо за счет введения дополнительных степеней подвижности манипулятора, либо за счет уменьшения размерности командного вектора скорости V. 11.2.3. Скоростной и линеаризованный позиционный методы построения программы движений в случае кинематически неполного задания Пусть вектор задаваемых программных координат рабочего органа Хпр имеет размерность т (т < 6), а число степеней подвижности руки п = 6, т.е. имеет место случай кинематически неполного задания. Выделим из мат- рицы Якоби частных передаточных отношений J(q) размерности [и х и], отвечающей шестикомпонентному вектору положения рабочего органа, подматрицу размерности [т х п], которая отвечает компонентам вектора Хпр так, что V = J(q)qK, (11.23) либо AS = J(q)-AqK. Командный вектор скорости V (или перемещений AS) находится одним из описанных выше способов, а основная трудность решения задачи поиска командных векторов qK или AqK связана с тем, что теперь матрица J(q) - 5. Корендясев А.И. Кн. 2 129
прямоугольная и IJ(q)] 1 не определена. Вместе с тем из множества ре- шений (11.23) можно выбрать определенное решение с помощью разумного критерия. Обычно вводимые критерии имеют глобальный интегральный харак- тер, т.е. физический смысл критериев соответствует результату выпол- нения элементарной операции - законченному движению. В силу высокой размерности манипуляционных задач глобальное применение критериев для определения оптимальных движений сопряжено с большими затратами времени и предполагает проведение расчетов до совершения движения. Это противоречит скоростным и линеаризованным позиционным методам построения программ движений, которые позволяют и чаще всего используются для решения задач планирования в процессе движения. Уйти от противоречия можно за счет отказа от глобальности критерия оп- тимальности и придания ему свойств локального (или мгновенного дифференциального). Таким образом, получим локально-оптимальные движения, для которых экстремальное значение критерия характеризует не траекторию в целом, а лишь каждый ее малый участок. В работе [12] отмечено, что закон, полученный при таком использовании критерия движения системы, обес- печивает хорошее приближение к оптимальному значению критерия на всей траектории^ В этом разделе мы используем локально-оптимальный подход. Заметим, что под рациональностью критерия понимают не только чет- кий физический смысл и характер воздействия на решения, ;но и возможность получения последнего в аналитическом виде. Поэтому очень часто [12, 13, 28] в качестве такого критерия используют мгновенные квад- ратичные критерии вида minX’ = qrCq (11.24) ИЛИ min К = AqrCAq, где С - постоянная симметрическая положительно определенная матрица весовых коэффициентов. Неоспоримые преимущества (11.24)- гладкость функции, единствен- ность оптимума при соблюдении (11.23) и аналитическое решение. Полу- чаемое решение в силу критериев (11.24) не допускает высоких значений скоростей вблизи особых конфигураций при использовании такого подхода в качестве вспомогательного в задачах с кинематически полным заданием. Рассмотрим процедуру получения решения на примере линедризо- ванного позиционного метода. Используем метод множителей Лагранжа в задаче поиска стационарного решения системы, имеющей функцию Лаг- ранжа (11.24), при наложении связей (11.23). По числу т уравнений связи (11.23) вводят т множителей Лагранжа X и записывают новый критерий, которому должно удовлетворять решение min К - AqrCAq + [AS - J(q) • Aq]r X. 130
Из условий экстремума этой функции 2CAq-(j(q))rX = 0 найдем Aq = C-1(J(q))rX./2. Подставив (11.25) в (11.23), получим X = 2[(J(q))C-1(J(q))r]’1AS, а следовательно (см. (11.25)) AqK = Aq = C“1(J(q))r[(J(q))C“1(J(q))r]1 AS. (11.25) (11.26) Если С = E, то AqK = (j(q))r[( j(q))( J(q))r]-1 AS = [j(q)]+AS, где [j(q)]+ - псевдообратная матрица матрицы J(q). Аналогичные выражения получим и для скоростного метода построения программы. Аналитические зависимости вида (11.26) сразу приводят к воз- можности использования структурных схем тактического уровня управ- ления, представленных на рис. 11.4 и 11.5, с заменой командных векторов V или AS на укороченные V или AS и формул определения qK или AqK. Если критерий не допускает аналитического решения задачи построе- ния оптимальной программы, то схема тактического уровня управления претерпевает существенные изменения в алгоритме определения командных значений qK или AqK. Рассмотрим, например, критерий миниму- ма "объема движений" (см. (11.2)). Технологические условия использования робота и технические особенности конструкции, при наличии которых этот критерий имеет четкий смысл потерь энергии, описаны в разделе 11.1. Рассмотрим случай непрерывно-реономного задания Хпр(г). Для ис- пользования линеаризованного позиционного метода построения програм- мы движений перейдем от непрерывно-реономного задания к точечно- реономному с большим числом достаточно близко расположенных точек Xr(t) = Xnp(Q, г = 0,р. Предполагая монотонность изменения командных значений обобщенных координат на малых интервалах [гг + н />], представим критерий (11.2) в виде п Г р-1 ттЕ = ^р, £|яА+1)-4А)| ;=1 |_г=о Из-за глобального характера этого критерия необходимо одновременное определение всех оптимальных конфигураций qr (г Ф 0), соответствующих всем точкам р траектории (исходная конфигурация q0 задана). Придадим этому критерию локальный характер, т.е. будем минимизировать "объем 5* 131
движений" на каждом r-м интервале minEr+i = У - Яг,\ = У Р;|Дг+1^|- (11-27) 7=1 7=1 В этом случае каждая из оптимальных конфигураций qr+1 (или вектор при- ращений Ar+1q) находится последовательно минимизацией функции ег+1 (г = = 0, р - 1) п переменных. Используя (11.23), можем для (г + 1 )-го интервала (г = 0, р -1) записать A^S = j(9rJ)-Ar+1q. (11.28) Как следует из (11.27), ег+1 - функция не гладкая, ее частные про- изводные претерпевают разрывы в точках 0. Поэтому необходимые условия минимума ег+1 отличаются от условий экстремума для гладких функций. В работе [12] доказана теорема, дающая необходимые условия минимума функции ег+1: необходимым условием минимума Ег+1 (11.27) яв- ляется равенство нулю (и - т) из приращений Дг+1^-, где т - число компо- нент вектора AS. Теорему легко доказать методом от противного. Предположим, что при некоторых (т + 1) приращениях &r+\qj, не равных нулю, и (л - т + 1) оставшихся приращениях, равных нулю, имеет место минимум ег+1. Выразим с помощью (11.28) т приращений через (т + 1)-е и свободный член Ar+1S, и подставим в (11.27). Получим линейную зависимость ег+| от этого (т + 1)-го приращения, которое указывает на отсутствие экстремума в рассматри- ваемой точке, что противоречит исходному предположению. Таким образом, согласно необходимому условию минимума ег+1, сущест- вуют С" комбинаций обобщенных координат, меняющихся на интервале движения и анализируемых на экстремум. Перебор этих комбинаций с последующим решением (11.28) и оценкой (11.27) позволяет выбрать локально-оптимальный вариант. Критерий минимума объема движений привел к тому, что на каждом интервале движение должно осуществляться за счет минимально-необходимого числа обобщенных координат. Иная картина наблюдается при реализации локально-оптимального по быстродействию движения манипуляционной системы в задачах с непре- рывно-склерономным заданием. Пусть {сф - скорость отработки пере- мещений по j-й координате. Тогда время тг+1, необходимое для перемещения манипуляционной системы из конфигурации qr в qr+\, будет тг+1 = тах(|дг+1^|/(^у>), 1 < j < п. (11.29) Задача заключается в минимизации выражения (11.29) с учетом (11.28). Функция тг+1(Дг+1^у ), как и е№|, не является гладкой. Для нее разрывы част- ных производных обусловлены совпадением величин |Аг+1^|/(^у) для раз- личных j, а не изменением знака Дг+1^-. Необходимые условия экстремума определены теоремой [12]: равенство по модулю (n-m+1) величин IAr+itf; iXtfp значению тг+1. 132
Число анализируемых на экстремум точек равно в этом случае 2п~тС™~1. В соответствии с критерием быстродействия, в отличие от кри- терия ’’объема движений", необходимо равномерное (с учетом скоростей (<7;)) распределение приращений по максимальному (n-m + V) числу обобщенных координат. В заключение отметим, что нами приведены лишь основные положения строящихся алгоритмов планирования движений. Многие из них должны быть дополнены алгоритмами обхода препятствий (в общем случае алго- ритмами учета ограничений), алгоритмами повышения точности выполне- ния задания и т.д. Например, рассматривая задачу планирования движений с использованием критерия минимума "объема движений", мы не акценти- ровали внимание на том, что примененный способ определения командного вектора перемещений Ar+1S без обратной связи может привести в процессе перемещения к сколь угодно большой ошибке. Это надо иметь в виду при разработке рабочих алгоритмов и программ. 11.3. АВТОМАТИЗАЦИЯ ПРОГРАММИРОВАНИЯ ДВИЖЕНИЙ РОБОТА НА ОСНОВЕ ДИНАМИЧЕСКИХ МОДЕЛЕЙ 11.3.1. Необходимость учета динамических свойств робота при программировании движений с большими ускорениями и (или) скоростями. Проблемы учета динамики До последнего времени благодаря невысоким скоростям движения и широкому применению привода, близкого по свойствам к астатическому, простота получения решения задачи автоматического программирования элементарных движений определяла уровень сложности используемых моделей и подходов. Так, во многих случаях с целью ликвидации из- быточности исходного точечно-склерономного задания на этапе трансфор- мации его к непрерывно-реономному применяется волевой, а не крите- риальный подход, основанный на простых геометрических представлениях и на упомянутой выше (см. раздел 11.1) теореме Шаля. Далее на основе кинематической модели, задавшись законами разгона и торможения, а также ограничениями обобщенных скоростей и ускорений, например с помощью интерполяции, определяют программу в виде зависи- мости обобщенных координат робота-манипулятора от времени. На последнем этапе используют критериальный подход, в частности критерий быстродействия. Простота получения решения в описанном варианте с использованием геометрических представлений и кинематических моделей роботов (если его применить для автоматического программирования быстрых элемен- тарных движений при использовании привода, близкого по свойствам к акселерационному), оборачивается при реализации программных движений нерациональной затратой энергии, потерей быстродействия, а иногда 133
точности отработки траекторий. При больших ускорениях и скоростях движений ПР в структуре компонент нагрузок на приводы становится слиш- ком большим вес инерционных нагрузок (см. гл. 8) по сравнению с трением и остаточной неуравновешенностью. Критерии оптимальности, рассмотренные выше и имеющие ясный физический смысл для систем, хорошо представляемых кинематическими моделями, теряют его. Можно ли теперь утверждать, что критерий мини- мального объема движений эквивалентен затратам энергии, если нагрузки на приводы не постоянные, а зависят от скоростей и ускорений по всем обобщенным координатам? Наверное, нет. Кроме того, неадекватность кинематической модели, проявляющаяся в рассматриваемых случаях в игнорировании изменения инерционных характеристик в зависимости от конфигурации манипулятора, снижает действенность критериев. Так, закладывая в кинематическую модель некоторое ограничение ускорения по обобщенной координате, мы либо очень занижаем его, чтобы оно годилось для всей рабочей зоны, либо берем некоторым средним. В первом случае мы потеряем уже на этапе планирования в производи- тельности высокоскоростного робота, во втором - не сможем отработать программу и потеряем точность. Наконец, большие динамические нагрузки в рассматриваемых быстрых движениях определяют целесообразность новых критериев, например мини- мума нагрузки на приводы, позволяющего снизить нагрузки на элементы передач привода, особенно при использовании приводов, близких по свой- ствам к астатическим. Такие постановки задач диктуются требованиями по- вышения надежности и долговечности конструкции и имеют смысл лишь при учете динамических свойств систем. С учетом сказанного понятно, почему в последнее время предприни- маются все более настойчивые попытки оптимального планирования дви- жений роботов на основе их динамических моделей [9]. Однако положительные эффекты, которые сулит использование адек- ватных решаемым задачам динамических моделей ПР при автоматизации программирования движений, недостижимы без преодоления трудностей решения задач оптимального управления сложными динамическими систе- мами. Они связаны с высокой размерностью нелинейных дифферен- циальных уравнений динамики объекта управления и определяемыми ими скрытыми особенностями (существованием и неединственностью решения, наличием локальных минимумов и т.д.). Упомянутые трудности ограничивают возможности использования для решения задач планирования движений метода динамического програм- мирования (Веллмана) или принципа максимума Понтрягина [5] (дающие лишь необходимые условия оптимума) и обуславливают поиск и приме- нение различных подходов к решению задачи. Автоматизация программирования движений на основе динамических моделей в первую очередь коснулась самых простых заданий - непрерывно- склерономных, в отсутствие кинематической избыточности. Здесь требу- ется определить оптимальный (глобально-оптимальный) режим движения модели по заданной траектории с известными (заданными) состояниями модели в начальной и конечной точках [4, 25, 31]. 134
Развивается подход, основанный на линеаризации уравнений объекта в окрестности заданной траектории движения. Этот подход оправдан при точечно-реономном или точечно-склерономном заданиях без кинематиче- ской избыточности при малом изменении обобщенных координат, соот- ветствующих соседним точкам задания, например, при точечно-склеро- номном задании ПР, предназначенного для точечной сварки. Задача сво- дится к автоматическому программированию перехода от одной точки свар- ки к другой с минимальным временем. Сами точки могут находиться в различных зонах рабочего пространства робота. Поэтому в линеаризованной модели инерционные коэффициенты будут изменяться в функции обобщенных координат от точки к точке. При решении данной технической задачи можно пренебречь в модели гиро- скопическими, кориолисовыми и центробежными силами, так как в прерывистом сварочном процессе из-за малых перемещений между точ- ками сварки обобщенные ускорения обычно очень велики, а скорости не успевают вырасти сколько-нибудь значительно. В этом случае доста- точно линеаризовать только компоненты матрицы инерционных коэф- фициентов. Задача существенно усложняется при точечно-склерономном задании и расстояниях между точками, исключающими описанный выше линеари- зованный подход. Эта задача наиболее общая, поэтому рассмотрим ее постановку более подробно. Как и раньше, заданы динамическая модель системы, ограничения на управляющие воздействия, а также начальное и конечное состояния, но не задана траектория движения в пространстве конфигураций системы. Тре- буется определить эту траекторию и режим движения по ней, а в конечном счете - программу движения системы в виде функций обобщенных координат от времени, таких, что переход из начального состояния в ко- нечное осуществляется при заданных ограничениях, например за мини- мальное время. Упомянутые выше трудности решения оптимизационных задач в полной мере проявляются при их такой постановке. Из всех подходов, при- менявшихся при поиске решения [1, 24, 25, 30], остановимся на двух, идеологически противоположных. При одном из подходов ставится задача отыскания квазиоптимального режима, поиск которого осуществляется либо на основе прямых методов вариационного исчисления Ритца, Галеркина и др., либо путем сведения данной задачи к набору задач с непрерывно-реономным заданием. В обоих случаях поиск решения ведется в некотором выбираемом классе функций, причем выбранные функции удовлетворяют начальным и конечным условиям. Пусть, например, выбранный класс функций - многочлены и-й степени. Тогда при каждом фиксированном наборе коэффициентов многочленов задача поиска минимума времени движения при непрерывно-склерономном задании есть задача, упомянутая выше. Далее, с помощью методов параметрической оптимизации можно найти наилучший для данной степени многочлена набор коэффициентов (следовательно, траекторию и режим движения по ней), а, сравнив лучшие результаты при многочленах разных степеней, найти квазиоптимальный. 135
В этом варианте отражен широкий подход. Он не связан с конкретным видом критерия оптимальности и в принципе не требует знания особен- ностей динамической модели и ее свойств. Успех во многом зависит от удачного выбора класса функций, в котором ищется решение. Однако получаемое решение - лишь квазиоптимальное той или иной степени при- ближения. Другой подход целиком основан на предварительном изучении динами- ческих особенностей робототехнических систем и использовании их соб- ственных свойств. Этот подход конкретен - в качестве программной траек- тории (непрерывно-склерономного решения исходной задачи планирования) предлагается использовать одно из собственных движений идеализиро- ванной динамической модели робота-манипулятора, удовлетворяющее условию прохождения модели через исходное и целевое положения. Под собственным движением такой модели понимается движение по инерции, т.е. в отсутствие диссипации и тождественно равной нулю вектор-функции управляющих воздействий. Суть подхода - в согласовании цели движения с собственными динамическими свойствами объекта управления. Изучение собственных свойств связано с исследованием моделей роботов различной степени сложности, начиная с простейших, отражающих те или иные специфические свойства исполнительных механизмов, проявляющиеся в задачах оптимального управления. Ниже, по методическим соображениям, мы сначала рассмотрим реше- ние задачи автоматического программирования движений при точечно- реономном и точечно-склерономном заданиях на основе метода Ритца. Затем перейдем к проблемам планирования движений при непрерывно- склерономном задании в случаях произвольного задания траектории и в случае, когда она совпадает с собственной. Наконец, опять вернемся к точечно-склерономным заданиям и алгоритмам планирования движений на основе собственных свойств моделей. Отметим еще одно важное обстоятельство. Роботы-манипуляторы от- личаются друг от друга не только кинематической схемой скелета руки, но и организацией кинематических передач от двигателей к звеньям скелета руки (см. гл. 5 и 8). Пусть, как и раньше, число подвижных звеньев разомкнутой кинематической цепи скелета руки, а следовательно, число степеней подвижности и число двигателей равно п. Тогда перемещения \|/z (z = 1, 2, ..., и) выходных элементов двигателей образуют вторую (по отношению к относительным перемещениям (i = 1, 2,..., и) звеньев ске- лета руки) систему обобщенных координат. Связь между системами обобщенных координат ф и q определена струк- турой передач и описывается матрицей частных передаточных отношений А (см. гл. 5). Последняя определяет также преобразование управляющих воздействий двигателей Ф в обобщенные силы Qh приведенные к коор- динатам qt. Поэтому далее, если нет специальной необходимости, не на- рушая общности рассуждений, будем считать, что двигатели развивают силы Qh 136
11.3.2. Программирование движений робота с использованием прямых методов вариационного исчисления Уже из краткого описания алгоритма поиска квазиоптимального ре- шения с использованием прямых методов вариационного исчисления в слу- чае точечно-склерономного задания (см. раздел 11.3.1) видна его громозд- кость, обусловленная необходимостью на каждом шаге решать задачу оптимального управления для непрерывно-склерономного задания. Поэто- му чаще этот способ поиска решения применяется в случае точечно- реономного задания в отсутствие (или при игнорировании) ограничений на управляющие воздействия. При этом динамика модели может быть учтена за счет введения управляющих воздействий в критерий качества плани- руемых движений. В такой постановке задачи и рассмотрим применение прямого метода вариационного исчисления [23, 30]. В этом случае заданы: - динамическая модель ПР, например, в виде уравнения (8.10), которую относительно управляющих воздействий (2П/ = Q- можно записать в виде = (11.30) - граничные условия q(0)=4” (1131) q(O) = qo, q(fK) = qK, где tK - время движения из начальной конфигурации в конечную; - функционал качества программного движения К = A'(q.Q). Требуется найти программное движение дпр(г), удовлетворяющее гра- ничным условиям (11.31) и минимизирующее функционал k(q,Q), или, согласно (11.30), К(q,q,q), так что min AT(q(r)) = A'(qnp(0). Прямой метод вариационного исчисления заключается в том, что назначается способ построения минимальной последовательности функций ^о(1)Л1Ю^2(0,-,^(0 таких, чтобы lim /C(^(r)) = minA:(q(r)), N—»°° т.е. ищется решение той или иной степени приближения. Дальнейшая конкретизация прямого метода, в частности метод Ритца, основывается на возможности аппроксимации неизвестной функции (в нашем случае qnp(0) последовательностью известных базисных функций с весовыми коэффициентами С. Набор коэффициентов С, определяющих конкретное программное движение qnp(r) = q(C, г), можно назвать парамет- рами программного движения. При любом конкретном значении числа членов последовательности известных функций N функционал A7(q(r)) ста- новится функцией параметров программного движения К(С). Задача, таким образом, сводится к поиску значений параметров С, минимизирующих эту функцию, т.е. к задаче многопараметрической оптимизации. 137
Достоинство прямого метода при решении двухточечной краевой задачи в том, что он позволяет за счет специального выбора базисных функций учесть граничные условия (11.31) и при отыскании приемлемых про- граммных движений qnp(r) уже не заботиться об их удовлетворении. В соответствии с методом Ритца программное движение qnp(r) в до- статочно общем виде можно представить как w __ 9пр,(О<о+£%, 1 = 1, п, iG[0,rK], (11.32) 2=1 где Су, i = l,и, j = l,N - матрица искомых параметров; ^,оЛ,1Л,2>—>^ ” известные n-мерные вектор-функции, выбранные в качестве базисных. В соответствии с условием задачи базисные функции должны удовлет- ворять следующим требованиям. 1. Функции должны быть таковы, чтобы программное движение (11.32) удовлетворяло граничным условиям (11.31) при любом выборе параметров Су. 2. Функции линейно независимы. 3. Система аппроксимирующих функций, на основе которой строятся базисные функции, должна быть полной в пространстве непрерывно диф- ференцируемых функций. Первое требование облегчает решение двухточечной краевой задачи, второе и третье определяют возможность сколь угодно точного пред- ставления искомого программного движения в виде (11.32). Они гаран- тируют существование натурального числа N и постоянных коэффициентов Cu,Cj2,...,CiN таких, что для произвольной функции q,{t) из класса не- прерывно дифференцируемых функций и положительного числа е будет иметь место соотношение 9,(0 ;=i Полную систему функций образуют, в частности, функции Бесселя, алгебраические и тригонометрические многочлены и др. При построении функций Л/n можно руководствоваться следующим правилом. В качестве выбрать непрерывно-дифференцируемые функции, удовлет- воряющие граничным условиям (11.31), а в качестве остальных - функции £; (г) из некоторой полной системы функций, удовлетворяющие однородным граничным условиям £,.(0) = £,.(гк) = 0; £y(0) = £,(rK) = 0, j = UV. (11.33) Так, четырем граничным условиям (11.31) нетрудно удовлетворить, выбрав в качестве £|0 полином третьей степени [30] (siO = ai0 + ail{ + ai2^ + а13* • Приравняв значения этой функции и ее производных в моменты времени 0 138
и tK граничным значениям qt(t) и #.(г), получим Л/о — — 9/0’ ^/2 {3[9/к 9/0-1 / гк + ^9/к }’ (11 34-) &И ~ { [<7/0 + 9/к] ~ 2[<?/к — 9/о1 / М • Условиям (11.33) и принадлежности к полной системе функций удов- летворяют тригонометрические функции Cy(r) = l-cos(2j7U/rK). Окончательно (11.32) в этом случае принимает вид N пр, (0 = Qi (О = «,о + aiif + ai2{2 + ai3{3 + У, cij [1 - cos(2 jut / rK)], (11.35) ;=i где ai0, ац, ai2 и a, 3 определены соотношениями (11.34). В числе возможных критериев качества движений X"(q,Q), используе- мых в рассматриваемой постановке задачи планирования, отметим два, имеющие четкий физический смысл: К =max{l<2i UС2 1,...,1<2„ I}, ге(О.,к) > (11.36) к = J (^й+q2Q2 ++qnQn № О Первый минимизирует моменты приводов, нагрузки в передачах, а вто- рой - выходную мощность, соответствующую данному движению. Подста- вив (11.35) в (11.30), а затем в критерий, например, в один из (11.36), полу- чим нелинейную зависимость К от искомых параметров Су (z = l,n, j = 1,N) программного движения. Необходимые условия минимума К, а именно равенство нулю частных производных ЪК!ЪСу = 0, определяют систему не- линейных алгебраических уравнений, решаемую одним из численных методов. Эта задача относится к задачам невыпуклого программирования. Поэ- тому алгоритмы, применяемые для поиска корней системы алгебраических уравнений могут привести к локальному, но необязательному глобальному минимуму функции К. Следует задавать несколько начальных точек в процедуре поиска решения и, если все решения сойдутся к одному и тому же минимуму, то его (с некоторыми оговорками) можно считать глобальным. Это общая сложность задач невыпуклого программирования. Каким образом прозрачную идеологию (и описанный алгоритм) при- менения метода Ритца для получения квазиоптимального решения задачи автоматического программирования движений ПР при точечно-реономном задании можно использовать при более сложном точечно-склерономном задании? Очевидный путь связан с организацией внешнего цикла расчетов, в котором изменению подлежит время движения гк. Его следует уменьшать от расчета к расчету до тех пор, пока в получаемом квазиоптимальном дви- жении одно из управляющих воздействий не достигнет ограничений max <2, <[£>,], Гб[О,Гк]. 139
На этом закончим описание алгоритма планирования движений с ис- пользованием прямого метода вариационного исчисления, представляющего собой весьма результативный [30], но "ограниченный" из-за явной зависимости критерия от управляющего воздействия вариант квазиопти- мального подхода. Как отмечалось выше, в широком варианте этого подхода на каждом шаге приходится решать задачу планирования движения ПР при непре- рывно-склерономном задании. Учитывая, что такие задания с требованием обеспечения минимального времени движения имеют и самостоятельное значение в теории [25, 31] и практике робототехники, перейдем к рас- смотрению особенностей решения задач оптимального планирования при непрерывно-склерономном задании. Обратим также внимание на прояв- ление этих особенностей в случаях, когда задание совпадает с собственной траекторией - траекторией движения системы по инерции, т.е. при управ- ляющих воздействиях, равных нулю. 11.3.3. Особенности оптимального по быстродействию режима движения робота по заданной траектории Одна из традиционных задач оптимального управления [4, 9, 25, 27, 29, 31, 32] ставится применительно к роботам следующим образом. Известна динамическая модель исполнительного механизма робота, заданная урав- нениями Лагранжа. Управляющие воздействия - правые части уравнений Лагранжа, ограничены по величине. Иногда в качестве дополнительных ограничений, отражая некоторые свойства реальных двигателей, высту- пают ограничения обобщенных скоростей. При этом в пространстве обоб- щенных координат (иногда в параметрической форме) задается траектория движения робота с определенными начальной и конечной точками. Кроме того, заданы совместимые с траекторией начальные и конечные обоб- щенные скорости робота, в частном (но практически важном) случае равные нулю. Требуется определить законы изменения управляющих воз- действий в функции времени (или обобщенных координат), обеспечиваю- щие движение по траектории с заданными начальными и конечными обобщенными скоростями за минимальное время. Даже при такой прозрачной постановке задачи успех решения (в том числе с помощью известных методов, например принципа максимума) во многом зависит от особенностей системы, проявляющихся в требуемом движении. Рассмотрим наиболее характерные из этих особенностей. Пусть задана в параметрическом виде траектория q{ = <?,(ф), 0<ф<фк, i = 1,п.Предположим (и алгоритм базируется на этом), что из- вестны dqjdy, d2qild^2. Если траектория задана таблично т.е. (точками), то она представляется сплайнами не ниже третьего порядка, чтобы не было разрывов по второй производной. В общем случае параметр ф не может служить мерой длины заданной траектории, т. е. при движении системы по этой траектории с постоянной кинетической энергией она будет проходить за равные промежутки времени неравные отрезки Дф. Параметр, об- 140
ладающий таким свойством, получим, используя выражение кинетической энергии W = °’5 / / J(P4 Р2 = О’5С<Ф)Ф2’ где ay = Оу (q) - инерционные коэффициенты, ф = dtp / dt. Отсюда скорость изменения параметра ф = д/2А¥/С(ф). (11.37) Следовательно, при движении системы по заданной траектории с по- стоянной кинетической энергией W = Wo время движения из начального положения ф0 = 0 в текущее ф определяется интегралом ф ____ф r=J d<p/9 = (l/^/2Wo)j7G(^)J<p. ФО о Это время, для определенности при Wo = 0,5, примем за параметр т- аналог длины траектории ф т(ф) = J о Данный параметр является мерой длины траектории изображающей точки в пространстве Римана, задаваемой квадратичной формой W. За- висимости т = т(ф) и ф = ф(т) получим, подставив значения ф от 0 до фк, а выражения для производных, - используя зависимость (11.37). Уравнения для скоростей и ускорений обобщенных координат с исполь- зованием параметра т принимают вид qt = (dq^fp I d<pdx)x = q'x, (11.38) qt = [(dq, I г/ф)( d<p I Jt)]t + [(d1qi I d<p2)(d<p I dx) + (dqt I Лф)(</2ф I dx2 )]i2 = Заметим, что, выражая кинетическую энергию системы через параметр т, получим W = 0,55(т)т2, где 5(т) = 1 = const. Далее подстановка (11.38) в уравнения Лагранжа приводит к соотно- шениям Д.(т)т + В,(т)т2 = (2,.. (11.39) При известном законе движения модели по заданной траектории си- стема (11.39) определяет значения всех обобщенных сил. Вместе с тем, задавая закон изменения одной из обобщенных сил, например ин- тегрированием i-го уравнения системы (11.39) можно найти закон движения т = т(1). Остальные уравнения определят необходимые для этого законы изменения других обобщенных сил. Напомним, что оптимальное быстродействие в рассматриваемых моде- лях достигается на режимах, когда в каждый момент времени по меньшей 141
мере одна из обобщенных сил имеет предельное значение. Поэтому система (11.39) оказывается весьма удобной: задают граничное значение одной из обобщенных сил, интегрированием соответствующего ей урав- нения из (11.39) при заданном состоянии модели (т,т) определяют уско- рение т, а по остальным уравнениям (11.39) находят требуемые значения других обобщенных сил и их соответствие заданным ограничениям. Если одна из сил вышла за ограничения, то процедуру повторяют при старых начальных условиях, но на ограничении задают другую обобщенную силу и интегрируют соответствующее ей уравнение. Если бы не существовало ограничений на скорость модели (т.е. силы в пределах своих ограничений были бы в состоянии на любой скорости удержать модель на заданной траектории), то ее движение состояло бы из двух этапов - разгона и торможения, и единственного переключения управления с разгона на торможение. Однако в общем случае это не так: для каждой точки заданной траектории т существует область возможных скоростей т. Поэтому в процессе движения может потребоваться пере- ключение управления с разгона на торможение более одного раза. Поиск точек переключения управления требует предварительного анализа. Не нарушая общности, ограничимся рассмотрением системы с двумя степенями подвижности. С учетом ограничений Р, на управляющие воз- действия I Qi 1< уравнения (11.39) приводят к неравенствам -7><А1(т)т+В1(т)т2<7’, -Р2 < А2(т)т + В2(т)т2 < Р2. Эти неравенства для каждой точки траектории т определяют область допустимых значений тит2 (рис. 11.6). Данная область представляет собой трапецию, вершины а и b которой расположены на оси т. Движению с .максимально возможными разгоном и торможением соответствуют точки границы области. Поэтому, решая задачу максимального быстродействия, всегда будем выбирать управление, соответствующее границе области. Каждая прямая границы определяет граничное значение одного из управ- ляющих воздействий и ускорение т, сообщаемое системе. При разгоне на интервале значений т2 от 0 до id (см. рис. 11.6) для определения режима движения интегрируется одно уравнение, а на ин- тервале от T2d до т2 - другое. Точка d соответствует моменту, когда оба управляющих воздействия находятся на ограничениях, и линии склеивания листов фазовой плоскости (т,т2) (рис. 11.7). Для торможения используется первое из соотношений (11.40) с ограничением по силе противоположного знака. Точка с определяет максимально возможное значение кинетической м • 2 • 2 энергии системы в данной точке траектории тс - ттах. Фактически из-за отсутствия возможностей управления системой при т^ах она характеризует на фазовой плоскости точки схода с заданной кри- вой, либо точки недосягаемости. Возможен случай, когда при некотором т имеет место двойное равенство Bj(t) = В2(т) = 0 и, следовательно, т2 = «>. 142
Рис, П.6. Области допустимых значений квадрата скорости т2 и ускорений т для некоторой точки т траектории а - общий случай; б- случай, соответствующий особой точке Рис. 11.7. Характерные кривые, точки и траектории в плоскости (т, т2) Если это равенство выполняется в отдельных точках траектории, то имеют место перегибы, а если для целых отрезков, то эти участки совпадают с собственными траекториями движения. Если в качестве заданной выступает собственная траектория, то ограничение на т2 отсутствует: по собственной траектории можно разгоняться до т —> <*>. Другой, более важный частный случай имеет место, когда в интегри- руемом уравнении А,(т) = 0, i = 1 или 2. Границами области допустимых значений т и т2 в этом случае будут стороны параллелограмма (см. 143
рис. 11.6,6), а текущему интегрируемому уравнению будет соответствовать отрезок вертикальной прямой. Естественно, для этого значения х = ха полу- чим tu = т2 = т2 . На многолистной фазовой плоскости точка (т„,т2._) является особой точкой. Она замечательна тем, что именно через нее может проходить фазовая траектория с предельно допустимыми скоро- стями тпр - предельная фазовая траектория. Предельная фазовая траек- тория справа и слева от особой точки принадлежит одному и тому же листу фазовой плоскости, состоящему из двух частей, соединенных особой точкой, т.е. определяется одним и тем же уравнением из (11.40) без из- менения управляющего воздействия. Для определения в особой точке угла наклона предельной фазовой траектории d(x2)/dx = 2dW/dx и ускорения т = 0,5d(t2) / dx = dMIdx = W' рассмотрим интегрируемое уравнение в малой окрестности та. С точностью до малых первого порядка можем записать а(т - Ta)W' + 2[b + с(х - Ta)]W = Р, где а,Ь,с - коэффициенты разложения функций А(т) = а(т-та) + ... и В(х) = Ь + с(х - та) +... в ряд по степеням (т - tJ. Подстановкой D = P- 2bW получим линейное уравнение D' + [2b / а(х -xa)]D = (2c/a)P. Однородное уравнение имеет решение Dlx-Ta Г2Й/й=С, что соответствует особой точке, называемой седлом. Физически приемле- мым решением для нас является С = 0, D = 0. Частное решение неодно- родного уравнения имеет вид D = |_2c/(a + 2&)jp(T-Ta). Отсюда W;=xa=-cP/b(a + 2b). Значение ха в особой точке позволяет построить (интегрированием) предельную фазовую траекторию как справа, так и слева от особой точки. Примерный вид характерных кривых, точек и траекторий в плоскости (т,т2) представлен на рис. 11.7. Здесь I - ломаная кривая II и II'- от- резки кривых, по которым происходит склеивание листов фазового порт- рета, at и Ог - особые точки; 1,2- предельные фазовые траектории, про- ходящие через особые точки и получаемые интегрированием соответ- ствующего уравнения из (11.40); 3 и 3'- фазовые траектории начального 144
разгона; 4 и 4' - фазовые траектории конечного торможения; П1, П2, П3 и IT - точки переключения управления. Фазовая траектория при переводе системы из точки т01 в Тк1 содержит три точки переключения: и П3- выход и сход с предельной фазовой траектории, П2 - переход с одного участка предельной траектории на дру- гой. Фазовая траектория из точки т02 в тк2 содержит одну точку пере- ключения ГГ с участка разгона на участок торможения. Таким образом, алгоритм поиска оптимального по быстродействию управления сводится к такой последовательности вычислений: 1) параметризация уравнений движения системы и приведение их к виду (11.39); 2) вычисление т^ах; 3) определение особых точек а; 4) построение предельной фазовой траектории и определение точек переключения при движении по ней; 5) построение кривой разгона из т0 с максимальным ускорением до пересечения с предельной фазовой траекторией; 6) построение кривой торможения из тк с максимальным замедлением и определение первого пересечения с кривой разгона либо с предельной фазовой траекторией; 7) получение окончательного результата как последовательности от- резков фазовых траекторий между точками переключения. Описанный алгоритм позволяет получить высокую точность решения задачи оптимального по быстродействию управления движением по за- данной траектории. Следует, однако, иметь в виду, что практическая реа- лизация движения по предельным фазовым траекториям (проход через особые точки) не представляется осуществимой. Отступление же в область низких скоростей чревато не только потерей быстродействия, но и до- полнительными точками переключения управления. В заключение еще раз отметим, если заданная траектория совпадает с собственной, то пространство состояний не имеет ограничений по кине- тической энергии, и решение задачи несколько упрощается. Напомним, что в случае простейших базовых моделей собственные тра- ектории очевидны: для моделей, представленных на рис. 8.2,а-г - это прямые, для модели на рис. 8.2,д - винтовая линия на цилиндре, для модели на рис. 8.2, е - геодезическая линия на торе, и, наконец, для модели на рис. 8.2, ж - геодезическая линия на сфере. Собственные траектории дви- жений более сложных моделей нельзя представить столь наглядными и простыми геометрическими образами. 11.3.4. Особенности оптимальных по быстродействию движений моделей роботов с циклическими обобщенными координатами при точечно-склерономном задании Рассмотрим класс голономных консервативных динамических моделей робота, удовлетворяющий следующим условиям: потенциальная функ- ция модели - константа; все обобщенные координаты модели циклические; 145
Рис. 11.8. Модели робототехнической системы с циклическими обобщенными координа- тами: случай динамической развязки движений по степеням подвижности (а) и общий случай модели (6) моменты приводов, приведенные к обобщенным координатам модели, не зависят от ее конфигурации. Этот класс динамических моделей робота описывается системой линей- ных дифференциальных уравнений вида Ilq = Q, где П = [п х и]-матрица инерционных коэффициентов; q - вектор-столбец и обобщенных ускоре- ний системы; Q - вектор-столбец п управляющих воздействий. Собственные движения таких моделей суть прямые в пространстве обобщенных коор- динат. Поэтому, не нарушая общности рассмотрения, в качестве наглядного примера возьмем одну из этих моделей в виде точечной массы т, способной перемещаться без трения по горизонтальной плоскости под действием сил безынерционных приводов, выполненных в виде силовых цилиндров, прямолинейных направляющих и ползунов. В зависимости от угла между направляющими получим либо ортогональную систему (рис. 11.8,а), либо косоугольную (рис. 11.8,6). Пусть для описанной динамической модели заданы ограничения на управляющие воздействия, начальное и конечное положения покоя модели, но не задана траектория ее движения в пространстве обобщенных координат. Требуется определить и эту траекторию, и режим движения по ней такие, чтобы переход из начального состояния (^!0, д2о) в конечное (^!к, д2к) осуществлялся за минимальное время. В такой постановке решение задачи для рассматриваемого класса моде- лей обладает особенностью: в зависимости от начальных и конечных зна- чений обобщенных координат задача может иметь или бесконечное множество решений, или единственное решение. При этом, если имеется бесчисленное множество решений, представляющих одну и ту же величину критерия, то среди этих решений есть движение по собственной траектории. Если же решение единственное, то оно совпадает с собственной траек- торией. 146
Действительно, для ортогональной модели (см. рис. 11.8,а) из-за распада системы на две независимые подсистемы тУ2~@2’ минимум времени перехода системы из начального состояния в конечное определен одной из подсистем - именно той, для которой решение извест- ной оптимальной задачи быстродействия [5] соответствует большему времени. Таким образом, оптимальное управление по этой координате определено: на половине перемещения по ней сила равна ограничению с одним знаком 2] =Р] sign(01K-tflo), а на второй половине - ограничению с обратным знаком. Имеющийся запас по времени движения по другой координате опреде- ляет континуум движений (и соответственно траекторий движения) с одним и тем же общим временем движения системы в целом. Среди этих траек- торий находится и собственная - прямая линия. Очевидно, она реализуется при выборе кусочно-постоянного управления по второй координате, синфазного с изменениями управления по первой координате. Модуль управляющего воздействия по второй координате при этом выбирают из условия коллинеарности вектора ускорения массы т прямой, связывающей начальное и конечное положения массы на плоскости. Теперь, опираясь на достигнутое понимание возможностей системы, можно построить вокруг начального положения (</10, <?2о) линии, каждой точке которых соответствует одно и то же минимальное время перехода из исходного положения. Для модели, представленной на рис. 11.8,я это, очевидно, прямо- угольники с центром в исходном положении, подобные прямоугольнику, ограничивающему возможные управляющие воздействия. Если бы область допустимых значений управляющих воздействий имела форму круга, то это были бы концентрические окружности, а единственным движением с максимальным быстродействием было бы движение по собственной траектории. Множество движений с одними и теми же начальными и конечными состояниями системы, равноценных по критерию быстродействия, можно различать по величинам других критериев, например по энергозатратам, максимальным значениям нагрузок в системе и т.д. Отметим, что вопрос оценки энергозатрат на совершение того или иного движения имеет достаточно ясный ответ, только если на входе приводов имеется счетчик потребленной энергии. Иными словами, не имея реальных характеристик приводов, нельзя судить о затратах энергии. В зависимости от свойств привода на одно и то же движение робота потребуется разное количество энергии. При этом и оптимальное движение с точки зрения энергозатрат может зависеть от характеристик привода [1]. Тем не менее попробуем оценить движения по критерию энергозатрат, приняв следующую модель: энергозатраты равны сумме абсолютных 147
величин работ, совершаемых обобщенными силами /=1 1=1 о где п - число обобщенных координат, Н, - работа i-й обобщенной силы <2„ гд - время движения. Эта модель учитывает затраты энергии приводами как при разгонах, так и при торможениях. Нетрудно показать, что при такой модели энергозатрат оптимальные по быстродействию движения по собственной траектории не являются наилучшими с точки зрения энергозатрат. Дейст- вительно, при принятых на рис. 11.8, а обозначениях для собственной траек- тории движения энергозатраты будут ^i = pi?iK> н2 = ^1к // = /’1^1K(l + tg2a). Рассмотрим другой режим движения, который состоит из трех интер- валов управления по второй координате: разгон с максимальным ускорением (Q2 = Р2), движение по инерции (Q2 = 0) и торможение (Q2 = -PzY Такой режим характеризуется минимумом максимальной скорости и реа- лизуется за время движения по qx. Для этого режима движения энергозатраты будут Я1=^1К, Z/2 = Pl91l(tg2p(l-Vl-tga/tgp)2, Н = Р19]к[1 + tg2 р(1 -д/1 -tga/tgp)2 . При a = 0 и a = Р второй режим совпадает с движением по собственной траектории, поэтому затраты равны. При a < Р затраты, как показал анализ, для второго режима меньше, причем тем меньше, чем больше tg р. При tg Р =1 (Р] = Р2)> что соответствует практике построения приводов робототехнических систем, выигрыш не превышает 30%. Переходя к оценке равнобыстрых движений по критерию минимальных нагрузок, отметим, что минимум максимальных ускорений по всем обоб- щенным координатам, достигаемый на собственных траекториях, делает эти движения оптимальными. Все полученные выше результаты справедливы и для косоугольной модели (см. рис. 11.8,6). С использованием ортогональной системы обоб- щенных координат задача сводится к предыдущей. При этом геометри- ческое место точек на плоскости обобщенных координат, которые могут быть достигнуты за равное минимальное время, представляет собой парал- лелограмм, подобный параллелограмму граничных значений управляющих воздействий. Таким образом, для моделей роботов со всеми циклическими обобщенными координатами движение по собственной траектории опти- мально по быстродействию и по минимуму максимальных нагрузок в системе. 148
11.4. ПРОГРАММИРОВАНИЕ ДВИЖЕНИЙ РОБОТОВ В СООТВЕТСТВИИ С ИХ СОБСТВЕННЫМИ ДИНАМИЧЕСКИМИ СВОЙСТВАМИ 11.4.1. Постановка задачи планирования траекторий движения роботов в соответствии с собственными динамическими свойствами их механической части Поставим задачу: при точечно-склерономном задании с нулевыми на- чальными и конечными скоростями использовать в качестве программной одну из собственных траекторий движения динамической модели робота- манипулятора, удовлетворяющую условию прохождения модели через ис- ходное и целевое положения. Рассмотрим, какими особенностями будут обладать программные движения в этом случае [23, 24]. Рассматриваемые идеализированные модели исполнительных меха- низмов роботов представляют собой голономные консервативные системы, на которые действуют потенциальные силы - силы тяжести. Согласно принципу наименьшего действия Мопертюи-Лагранжа [6, 7, 16], действи- тельное движение голономной консервативной системы между двумя конфигурациями q0 и qK характеризуется тем свойством, что для него не- которая функция, выражаемая определенным интегралом и называемая действием по Лагранжу, имеет минимум в отличие от других кинематически допустимых движений, совершаемых между теми же конфигурациями с той же энергией. Выражение действия А в форме Якоби, отличающееся тем, что в нем при помощи интеграла энергии W = U + Л исключено время, имеет вид Як П Л= J л/2(и + Л) чо »'z=1 Здесь W - кинетическая энергия W = 0,5X n^dq^dt2, i.j=i U = U(q) - потенциальная функция системы, h = const - суммарная энергия системы, Яу = fty(q) - инерционные коэффициенты, t - время. Обозначив by = 2(U + Л)л(у, можно записать Як П Як A=J = <1L41) qo 1 яо где dS2 = ^bijdqidqj, (11.42) и=1 dS2 - фундаментальная метрическая форма пространства Римана (Rn). 149
Известное представление [7, 16] движения материальной системы в терминах римановой геометрии позволяет интерпретировать выражения (11.41), (11.42) следующим образом: движение рассматриваемой системы соответствует движению по инерции изображающей точки в пространстве Римана, определяемом фундаментальной метрической формой (11.42). Со- гласно принципу наименьшего действия, это движение происходит по геоде- зической линии пространства Rn. Современные роботы-манипуляторы оснащены устройствами статичес- кого уравновешивания веса звеньев (см. гл. 6), поэтому можно ограничиться рассмотрением случая U = 0. При этом, как следует из выражений дейст- вия Л в форме Якоби, величина h = W = const сообщенной системе энергии выносится за знак интеграла и не влияет на получаемую метрическую форму п dS2 = ^7Cryd?,^, W=1 следовательно, с изменением h геодезическая линия не изменяется. Другими словами, изменение темпа движения изображающей точки в пространстве Rn не приведет к изменению программной траектории. Это дает право произвольно назначать и изменять скорость движения системы по программной траектории. Задача программирования движений ПР при такой модели, а мы будем рассматривать именно такие модели, делится на две составляющие. Пер- вая - поиск траектории собственного движения, удовлетворяющего началь- ному и конечному положениям модели, и вторая - поиск оптимального по быстродействию движения модели по найденной собственной траектории. Некоторые особенности решения второй задачи рассмотрены в раз- деле 11.3.3. Она более простая, чем первая, и мы к ней вернемся после того, как определим собственную траекторию. Из проведенного рассмотрения также следует, что первая задача в рассматриваемой постановке представляет собой задачу поиска геодези- ческой линии между точками q0 и qK риманова пространства, заданного фундаментальной метрической формой (11.42) при U = 0. Такая трактовка задачи, т.е. сведение ее к известной задаче вариационного исчисления, к сожалению, не дает быстрого решения из-за характерных трудностей решения вариационных задач и отсутствия регулярной процедуры, га- рантирующей решение [15]. С одной стороны, при проведении и обосновании прямых методов ва- риационного исчисления трудность заключается в выборе минимизи- рующей последовательности и в том, что минимизирующая последо- вательность может не сходиться к некоторой предельной функции. С другой стороны, применяемые косвенные методы отражают только необходимые, но не достаточные условия, которым должна удовлетворять искомая функ- ция, чтобы заданный интеграл достиг своего экстремума. Можно еще воспользоваться тем, что (из-за независимости собственной траектории от темпа движения по ней) в движении по инерции система "описывает" собственную траекторию. Необходимо только, чтобы она прошла через целевую конфигурацию. 150
Попытка решить задачу прямым образом, т.е. свести к решению си- стемы обыкновенных дифференциальных уравнений с заданными гранич- ными условиями и с использованием метода "пристрелки" успеха не имела из-за трудностей оценки результатов подобных движений системы и от- сутствия обоснованных алгоритмов коррекции начальных условий. Таким образом, задача остается сложной и требует разработки эффективных вы- числительных алгоритмов, учитывающих специфические свойства рассмат- риваемых систем. 11.4.2. Особенности собственных движений упрощенных моделей роботов с двумя степенями подвижности и алгоритм планирования траекторий их движения В соответствии с принятой методикой решения задач робототехники на основе специфических свойств робототехнических систем (от простейшего к простому, от простого к сложному) начнем решение поставленной в разделе 11.4.1 задачи с рассмотрения упрощенных моделей роботов с двумя степенями подвижности (см. рис. 8.3) [25, 26]. 1. Наличие двух интегралов движения W = h = const и pj = а = const (см. (8.21), (8.22)), свойственных всем рассматриваемым моделям, позволяет ис- пользовать регулярный метод для определения начальных обобщенных импульсов, при которых модели в свободном движении из исходной кон- фигурации попадают в целевую. Этот метод связан с интегрированием модифицированных уравнений Гамильтона-Якоби в частных производных [19] и приводит к уравнениям 42 j (d\j7/3/i)<fy2=t-r0, (11.43а) 420 42 - j (ЭV / Эа)</<?2 = - ql0. (11.436) «20 Здесь q} и q2- текущие значения обобщенных координат; \j7 находится решением уравнения H(g2, р2, a) = h относительно р2 = \jj(g2,/i,a); Н = Н(д2,р2,а) - функция Гамильтона; t0 - начальный момент времени. При заданных начальной и целевой конфигурациях модели и фиксированном значении h уравнение (11.43 б)- это уравнение с одним неизвестным, а именно a /(a) = A<7r (11.44) Определив а, можно построить программную траекторию, опять-таки используя уравнение (11.43 б). Основная трудность численной реализации полученного алгоритма обусловлена свойствами подынтегральной функции Эу/ Эа и как следствие видом функции Да). Найдем общий для моделей, представленных на рис. 8.3, вид подын- тегральной функции Эу/Эа. Так как для рассматриваемых моделей союз- 151
ное выражение W равно гамильтониану Н и, следовательно, Н = h, то у(^2,Л,а) = р2 = (я12/л11)а± ^(2hitn - а2)(л11л22 - л22 )/Пц, (ЛцЯ|2 - л22) > 0, так как W суть квадратичная положительно определенная форма, р2 - величина действительная, поэтому lai < 2/гЛц. Продифференцировав y(q2,h,a) по а, получим —(Эф / да) = -(л12 / п । j) ± (а / Ян )Л/(я11л22 - k22)/(2/zkh -а2). (11.45) Свойства этой функции и физический смысл знака в правой части можно выяснить путем анализа свободных движений моделей, который мы проведем на примере двойного плоского маятника (рис. 8.3,а). 2. Уравнение кинетической энергии (8.21) характеризует свободные движения модели и описывает однопараметрическое (параметр q2) семей- ство эллипсов в координатах (qlt q2). В зависимости от q2 эллипс энергии (рис. 11.9) меняет угол наклона и размеры главных полуосей. Он пересекает ось q2 в точках 1 и 2 = 0, q2 = ±^2Л/л22), а так как л22 для рассмат- риваемой модели не зависит от q2, то, следовательно, все эллипсы семейства пересекают ось q2 в этих точках. Ось q{ пересекается эллипсом в точках 3 и 4 [q} = ±^2h/nu, q2 = О). В этих точках для данного эллипса (т.е. для данной конфигурации модели) кинетический момент а принимает макси- мальное (точка 4) и минимальное (точка 3) значения атах(?2) = л/2^ч7 и amin(92) = -A/2/m11. Точкам 5 и 6 с координатами <71 = “^2ЙЯ12 /(7^1 ^22 “ ^22)^11 ’ <?2 = /(7^1^22 “ ^12) И <71 = /(7Гц7Г22 “ ^22)^11 ’ #2 = /(ЯцЯ22 ^12^ соответствуют значения а = 0, а любая прямая, которая пересекает эллипс и параллельна прямой, соединяющей точки 5 и 6, определяет две точки с равными кинетическими моментами. Свободному движению модели соответствует в плоскости (^,^2) траек- тория изображающей точки, которая принадлежит семейству эллипсов, и совпадает с теми их точками, которые соответствуют равным кинетическим моментам. Используя свойства точек 3 и4, найдем max (amax {q2)) = amax (0) = amax, -Tt<^2 <H min (amin(^2)) = amin(0) = ainin =-amax, (11.46) —1t<q2 <11 min (amax(?2)) = amax(n) = a„, - 1l<q2 <n max (amin {q2)) = amin (л) = -a„, —H<q2<71 152
Рис. 11.9. Эллипс энергии модели ’’двойной плоский маятник" Отах и Omin определяют при заданном значении W = h область возможных кинетических моментов. Найденные из (11.46) характер- ные значения кинетического момен- та делят область существования свободных движений по а на три интервала: -остах < а < -ос^, -оц. < а < < ак, а* < а < Отах. Движение с атах (или с amin) соответствует вращению модели как единого целого вокруг оси первого шарнира (д2 = 0 = const). При а, заданном в первом и третьем интервалах, существуют такие уг- лы ± q2 max, при которых q2 = 0. Это означает, что в свободном движении мо- дель по координате q2 совершает колебания с амплитудой g2max- При ос, ле- жащем во втором интервале, не существует значения q2, при котором q2 = 0 и, следовательно, q2 сохраняет при движении постоянный знак. Далее, если для а, лежащего в первом и третьем интервалах, возможна единственная траектория изображающей точки, то для а, лежащего во втором интервале, возможны две траектории изображающей точки, каждая из которых опре- деляется знаком начального значения q2. Естественно, что эти траектории могут пересекать ось q2 только в точках 1 и 2 (в зависимости от знака а). Параметрические уравнения траектории изображающей точки имеют вид (^2) = (а / Л11) ± (л и / л 11 ^(гЛцЛ-аЪ/СЛпЛгг-л^), Qi (#2)— ® )/(Л1]Л22 ^12)- Теперь видно, что подынтегральное выражение (11.45) равно отношению обобщенных скоростей -Эу / Эа = qx / q2 и можно утверждать, что знак перед корнем соответствует знаку q2. Для доказательства воспользуемся следующими рассуждениями. На малых интервалах времени Дг приращения обобщенных координат можно записать в виде ti+st tj+& ^Qm = f qxdt~qu&t, &q2i= [ q2dt«q2i&. Исключив Дополучим ^q{i=(qXi/q2i)^q2i- Суммирование этих выражений по i на заданном интервале изменения q2 дает численное решение интеграла <72 к д<71 = j (.qj<h)dq2, (П-47) <720 который и соответствует интегралу в (11.43 б). 153
Таким образом, в результате проведенного анализа движений динами- ческой модели стали понятны характер движений в зависимости от вели- чины кинетического момента, физический смысл знака перед корнем в выражении (11.45) и необходимость при решении уравнения (11.43 б) разби- вать пределы интегрирования на интервалы, на которых q2 сохраняет постоянный знак. 3. Рассмотренные свойства модели указывают на возможность раз- личных режимов перехода из начальной конфигурации в конечную. Дейст- вительно, Ад, = (<?|К - <7ю) + 2я^, Дд2 = (?2к_ <?2о) + , где £, и £ могут при- нимать любые целые значения, а обобщенные координаты д10, <ho и <71 к, <?2к модели в исходной и целевой конфигурациях заданы в интерва- ле -л л. Ограничимся поиском тех решений, которые удовлетворяют ус- ловию £ = 0, либо £ = 1 при <72к - <?2о < 0 и £ = 1 при q2K ~ <7го > О, что соответст- вует условию |Д^2|<2л. (11.48) В отношении £ ограничения не принимаются. Оно определяется в процессе решения задачи. Однако и при выполнении условия (11.48) возможны различные режи- мы, характеризуемые различной картиной изменения q2. Мы ограничимся рассмотрением режимов I, II, III и IV, которые схематично представлены на рис. 11.10,а. Отметим, что q2 не для любого aG[amin,amax] может изме- няться в соответствии с тем или иным режимом. Поэтому для каждого режима необходимо определить интервал а. Зная а и режим, который определяет знак q20 (для режимов I и IV q20(q2K - q20) > 0, а для режимов II и III q20(q2* -q2Q)<0), можно однозначно определить и начальные условия (<?10, <720). Интервал а для режима I определяется граничными условиями и соответственно равен amax(<7J], где qm = тах(1^201, 1<?2к1), а О^тах ~ Режим II характеризуется тем, что координата q2 проходит значение ±я. Следовательно, в этом случае интервал а будет (-ос^, aj. Наконец, для режимов III и IV, в которых двойной маятник совершает колебательные движения по координате q2, значение а может находиться в двух интервалах (-a^xC^, -oQ и (ал, Покажем, что для режимов I и II можно предложить регулярный алгоритм решения нашей краевой задачи. Предположим, что искомое движение соответствует режиму I. Докажем, что в этом случае функция (11.47) непрерывная и монотонная. Так как подынтегральная функция (ЭЩ/Эа) = F(a,q2) непрерывна на прямоугольнике -(Хщах < a < 0^, q20 < q2< < q2K, то и функция A^i(a) непрерывна на интервале -a^x < ос < 0^. Для доказательства монотонности воспользуемся известной теоремой: если функции/(х) и#(х) интегрируемы в интервале [а, Ь], удовлетворяют для ь ь а < х <Ь неравенству/(х) < g(x), то J f(x)dx < J g(x)dx. Следовательно, для а а доказательства монотонности функции Ад/ос) достаточно доказать моно- тонность функции F(a, q2) по параметру а. Положив cq < 0С2 и д20 > О, 154
a б Рис. 11.10. Схемы простых режимов возможных собственных движений моделей "двойной плоский маятник" (а) и "полярная система" (б) уравнение (11.45) можем записать в виде F(a2,^2)-F(a1,^2)=^7t117t22 -я^2 / (а2/“а2 -а2 j . Первый сомножитель в полученном выражении всегда больше нуля, так как яп > 0 при любом q2. Выражение в квадратных скобках при принятых условиях также больше нуля. Таким образом, функция F(a) в этом случае монотонная, а следовательно, и Дд/а) - также монотонная функция. Тот же результат нетрудно получить для случая д20 < 0, а также для режима II. Такой вид функции Д#1(а) позволяет сразу для режимов I и II пред- ложить алгоритм поиска решения краевой задачи: вычисляются значения Д<7! на границах интервала а для режима I (или II) и, если требуемое изменение координаты qx лежит между этими значениями, то определить величину а можно с помощью любого численного метода. В противном случае решения с режимом I (или II) не существует. Для режимов III и IV зависимость Д#1(а) в общем случае не является монотонной, т.е. нельзя по значениям &qx на концах интервалов а строго утверждать, что решение отсутствует. Если решение существует, мы не можем утверждать, что оно единственное на данном интервале. В этом случае для регулярного решения задачи требуется разбить интервалы а на участки, на которых функция Д#1(а) монотонная. Однако строгое решение такой задачи затруднено вследствие того, что Д#1(а) представляет собой сумму двух несобственных интегралов, у которых один из пределов интегрирования зависит от а, а подынтегральное выражение на этом пределе стремится к бесконечности. Поэтому предлагается, используя численные расчеты, строить зависи- мость Д<?1(а) с некоторым шагом ка, т.е. а, = ос^ + лса и по ней искать в последующем для задаваемого значения &qx величину а, предполагая функ- 155
Рис. 11.11. Расчетные зависимости = Д^|(а) (в) и Дг = Д/(а) (б) для модели "двойной плоский маятник" при заданных <?2о =1,5708, <?2к = 1 цию Д<7|(ос) на каждом шаге монотонной. Результаты расчета зависимостей Д<7,(а) для различных режимов представлены на рис. 11.11 ,а. 4. В связи с тем, что зависимости Д<?| (а) для режимов III и IV получаются или монотонными, или имеют локальный экстремум вблизи ±атах, мало отличающийся от Д^](± Отах), был применен единый алгоритм решения задачи для всех режимов движения модели, предполагающий монотонность функции Д^)(а). В соответствии с этим алгоритмом по краевым условиям и параметрам системы определяют все возможные интервалы а и находят приращения Дд, и Д<?, на границах этих интервалов. Если требуемое приращение Д^ удовлетворяет условию Д<у, < &qx < Д^ на каком-либо интервале а, то решение на нем существует, его находят методом поло- винного деления. Если Д^г, не удовлетворяет этому условию, то решение на этом интервале а не существует, и рассматривают следующий интеграл. По найденным таким образом значениям Oj(j = 1,2,...) определяют значения начальных обобщенных скоростей модели (qw, <j2o)> траектории 156
движения в пространстве обобщенных координат (q}, q2), а также времена движений между исходной и целевой конфигурациями. Представив интеграл (11.47) в виде суммы 92 к <720+'> 920+21) 92к J = j + J +... j , и = const, 420 920 920+1) <?2k-v получим траекторию движения, которую и будем считать программной траекторией движения системы. Для определения времени движения уравнение (11.43 а) можно записать так 92к At= j(l/q2)dq2. 920 По величине данного интеграла, пропорциональной длинам соответствую- щих геодезических траекторий, можно выбрать минимальную из траек- торий. 5. В соответствии с этим алгоритмом разработана программа, учиты- вающая также специфические особенности остальных динамических моде- лей, представленных на рис. 8.3. Для эллиптического маятника amax = const, так как не зависит от q2, и при а= атах движение системы вырождается в поступательное со скоростями qY = const и q2 = 0 = const. При lai < amax второе звено будет вращаться, причем q2 будет сохранять постоянный знак. Из этого следует, что для эллиптического маятника возможны лишь два режима - I и II (см. рис. 11.10,а) и для обоих режимов интервалы а одинаковы ““CXfnax < a < Отах. Нетрудно проверить, что для модели тороидального маятника при 1Х > 12 существуют те же режимы, что и для модели плоского двойного маятника, а интервалы а для них вычисляют аналогично. Если Ц < Z2, то д2пред не равно я, а находится из условия Ц + Z2cos ^2пред = 0 (это значение q2 соответствует такому положению второго звена, при котором масса т2 находится на оси вращения первого звена). В этом случае число режимов и соответствующие им интервалы а определяются в зависимости от граничных условий. Например, при lg20l < 1д2 пред и к?2к1 > к?2 пред I возможны лишь режимы I и II, а интервалы а для них одинаковы и равны -апред < а < 0Спред. Наконец, для полярной системы, отличие которой от остальных состоит в том, что q2 не является круговой координатой q2 пред = 0 и режима II не су- ществует. Схематично возможные режимы движения полярной системы представлены на рис. 11.10,5. Для всех моделей для режимов I и II зависи- мость A#i(a) является монотонной. Упомянем об особом случае задания граничных условий q2Q = q2*. В этом случае для всех моделей отсутствует режим I, а вместо него и режима II рассматриваются движения, при которых по координате q2 совершается полный оборот (q2 - круговая координата). Имеют место также частные случаи g20 = q2K = q^ когда в моделях наряду с рассмотренными режимами 157
Рис. 11.12. Траектории собственных движений "двойного плоского маятника" при различных граничных условиях существует и режим движения с q2 = 0 = const. Для двойного плоского ма- ятника q2s может принимать значения 0 и ±л, для полярной системы q2s = О, для эллиптического маятника такой режим возможен при любом значении q2s, когда а = ±атах и, наконец, для тороидального маятника q2s может принимать значения 0, ±л, а в случаях 1Х < 12 также и при q2s -±qi пред- 6. Результаты многочисленных расчетов показали хорошую работу предложенного алгоритма и программы, созданной на его основе. Собст- венные движения двойного плоского маятника =1,1; 12 =1; тх =1; т2 =1) представлены на рис. 11.12, а-д. Физические величины заданы в системе СИ при различных граничных условиях. При переводе системы из начально- го положения в конечное (рис. 11.12,6) конфигурация, определяемая углом q2, меняется незначительно: q2Q =1,5708, ^2к=1, Д<71 = —1- Именно этим краевым условиям при тех же параметрах модели соответствуют графи- ки Д^|(а) и Дг(а), приведенные на рис. 11.11. Заметим, что для задан- ного значения \qx = -1 собственного движения модели в режиме I не существует, а минимальное время движения достигается в режиме III. Именно ему соответствует график, приведенный на рис. 11.12,6. Траектория движения модели в пространстве обобщенных координат дает наглядное представление о том, насколько собственная траектория в этом случае отличается от линейной программной траектории в тех же координатах. 158
На рис. 11.12 также представлены специфические примеры планиро- вания траектории движения двойного плоского маятника: 1. Поворот модели на некоторый угол qx с одинаковой конфигурацией в начальном и конечном положениях д20 = <?2к (см. рис. 11.12/г). 2. ’’Зеркальное” изменение конфигурации руки при Aq} = 0, Дд20 = -Д#2к (см. рис. 11.12,в). 3. "Зеркальное” изменение положения руки относительно оси, соеди- няющей точку подвеса маятника и центра тяжести второго звена (см. рис. 11.12,г). 4. Изменение положения модели, при котором центр тяжести второго звена в начальном и конечном положениях лежит на одной прямой, про- ходящей через точку подвеса (см. рис. 11.12,3). Приведенные примеры иллюстрируют работу программы. Следует отметить, что при программном движении, соответствующем режиму I (рис. 11.12,в, г, д), траектория изображающей точки в пространстве обобщен- ных координат близка к прямолинейной, а в случае отсутствия режима I (рис. 11.12,5, режим III) траектория изображающей точки существенно отличается от таковой. В рассмотренных упрощенных моделях одна координата нецикличес- кая, что позволило свести задачу к уравнению (11.44) с одним неизвест- ным и решить его. Очевидно, в более сложных системах с большим чис- лом степеней подвижности, но содержащих лишь одну нециклическую координату, можно использовать полученные результаты. С этой точки зрения, а также учитывая упрощение уравнений динамики для систем с большим числом циклических координат, представляет интерес проведение исследования и классификации структур исполнительных механизмов роботов по числу циклических координат, обусловленных именно структурой. Такое исследование коррелирует с проведенным в главе 8 анализом структур ПР на возможность реализации динамической развязки наиболее простыми средствами. Вместе с тем оно не преследует цели полной дина- мической развязки и охватывает более широкий спектр структур роботов. Центральное место при этом занимает анализ структур с тремя степенями подвижности, предназначенных для обеспечения региональных (динами- чески наиболее нагруженных) движений. 11.4.3. Классификация структур исполнительных механизмов роботов по числу циклических обобщенных координат. Обобщение разработанного алгоритма планирования на системы с (и - 1)-й циклической обобщенной координатой Рассмотрение начнем со структур с тремя степенями подвижности. 1. Образование любой трехзвенной структуры исполнительного меха- низма манипуляционного робота связано с присоединением к соответст- вующей двухзвенной структуре (ядру) одного звена с помощью кинематической пары пятого класса. Все возможные структуры роботов с двумя степенями подвижности, в которых жесткие звенья соединены 159
вращательными и поступательными кинематическими парами пятого класса с параллельными, либо перпендикулярными осями, представлены в табл. 8.1. В эту таблицу не включена лишь схема с двумя поступательными кинематическими парами, имеющими параллельные оси. Такая схема обладает двумя степенями подвижности, однако не обеспе- чивает возможности двумерного движения исполнительного органа (вто- рого звена) манипуляционного робота и потому с практической точки зрения интереса не представляет. При рассмотрении моделей с тремя степенями подвижности также исключим схемы, в которых оси поступа- тельных кинематических пар остаются параллельными при любой возможной конфигурации модели. Отметим важное для всех рассмотренных моделей свойство: при выборе в качестве обобщенных координат величин, характеризующих относитель- ные положения смежных звеньев модели, первая обобщенная координата (<?i) - циклическая. В этом проявляется один из законов сохранения коли- чества движения или момента количества движения. Вторая обобщенная координата (Д<72)> опять-таки вследствие действия тех же законов, является циклической для вращательной пары, если ее ось не меняет положения в пространстве (см. схему 7 в табл. 8.1), а для поступательной пары, если ее ось во всех возможных конфигурациях остается параллельной самой себе (см. схемы 4 и 9 в табл. 8.1). Соответственно задача планирования движений на основе собственных траекторий для схем 4, 7 и 9 в табл. 8.1 решается просто. Это прямые в пространстве обобщенных координат Выше было показано (см. гл. 8), что общий вид выражений кинети- ческой энергии (для нас - функции Лагранжа) руки робота той или иной структуры можно получить, используя модели, в которых каждое звено в структуре руки представлено точечной массой. Этим приемом мы и воспользуемся в дальнейшем, рассматривая модели с сосредоточенными массами звеньев руки. Оставив принцип назначения обобщенных координат прежним, класси- фицируем синтезируемые модели с тремя степенями подвижности по количеству циклических координат на группы: - группа А - все обобщенные координаты циклические; - группа В - две обобщенные координаты циклические; - группа С - две обобщенные координаты не циклические. Отметим, что, как и в моделях с двумя степенями подвижности, в рассматриваемых моделях первая обобщенная координата - циклическая, следовательно, трехзвенных моделей с тремя нециклическими координа- тами нет. Предлагаемая классификация моделей обусловлена зависимостью слож- ности уравнений динамики и решения задачи планирования (решения краевой задачи) от числа циклических координат. Действительно, для модели с тремя циклическими координатами (группа А) решение краевой задачи тривиально: динамика такой модели описывается системой трех линейных уравнений относительно обобщенных скоростей с постоянными коэффициентами (уравнения, определяемые выражениями обобщенных кинетических моментов). Поэтому собственной траекторией здесь бу- дет прямая, соединяющая исходную и конечную точки в пространстве обоб- 160
6. Корендясев А.И. Кн. 2 Таблица 11.1 Структуры моделей с тремя степенями подвижности и с двумя циклическими обобщенными координатами
Таблица 11.2, а Кинематические структуры с тремя степенями подвижности и с одной циклической обобщенной координатой
Таблица 11.2, б Кинематические структуры с тремя степенями подвижности и с одной циклической координатой
Рис. 11.13. Структура с тремя цикли- ческими координатами: структура с фиксированным расположением на- правления оси вращательной пары щенных координат. Для моде- лей группы В, как будет пока- зано ниже, решения краевой за- дачи может быть получено на основе алгоритмов и решений, разработанных для моделей с двумя степенями подвижности. Наконец, для моделей группы С решение краевой задачи требует разработки новых алгоритмов и новых подходов. В соответствии с предложенной классификацией все возможные модели с тремя степенями подвижности, за исключением единственной модели группы Д вида ППП, с учетом оговоренных ограничений на взаимную ориентацию осей кинематических пар представлены в табл. 11.1 и 11.2,а, 11.2,5. В таблице 11.1 представлены модели, относящиеся к группе В\ в табл. И.2,а и 11.2,5- модели наиболее многочисленной группы С, включающей все антропоморфные структуры. Анализ моделей табл. 11.1 показал, что для них, как и для моделей с двумя степенями подвижности, характерно следующее: Таблица 11.3 Инерционные коэффициенты для моделей с ортогональной циклической координатой (см. табл. 11) Номер модели в табл. 11.1 *п *22 1 тх + m2 + т3 т2 + т3 2 тх 4- т2 + т3 т2 + тз 4 тгц + т2 + т3 m2l2 + m3q3 5 mj + т2 + т3 (т2 + т3 )/2 6 mj + т2 + т3 т2/2 4- m3(l2 + q3) 7 + т2 + т3 Ш2/2 + М3(12 + ^3 + 2l2l3 COS<?3 ) 10 r^l2+m2l2+m3(l{+q3)2 т2 + т3 11 m^l2 + (т2 +m3)q2 т2 + т3 12 т\1\ + (^2 + т3 М? + #2) т2 +т3 13 m^l2 + m2l2 + m3(l2 +l2 + 21^13 cos#3) т2 +т3 16 т{12 +(m2 + m3)(l2 +l2 4-2/^ cos #2) (т2 4-т3)/2 164
- если обобщенная координата, соответствующая вращательной кинематической паре циклическая, то ось этой пары не меняет своего положения в пространстве при любом возможном движении модели; - если обобщенная координата, соответствующая поступательной кине- матической паре циклическая, то ось этой пары остается параллельной некоторой прямой, жестко связанной с неподвижной системой координат при любом возможном движении модели. В таких моделях сохраняется качество (цикличность или нецикличность) обобщенных координат исходной модели (ядра) для образования из нее модели с тремя степенями подвижности. В группе В - 16 моделей, в одиннадцати из которых одна из циклических координат ортогональная, в группе С - 30 моделей. Из всевозможных структур с четырьмя степенями подвижности можно выделить всего одну схему с тремя циклическими координатами (рис. 11.13). Здесь ось вращения пары может быть параллельна любой из посту- пательных осей. Модель состоит из трех динамически независимых подсистем, имеющих не более двух степеней подвижности каждая. Среди моделей с пятью степенями подвижности не удалось найти ни одной с четырьмя циклическими координатами. 2. Возвращаясь к моделям с тремя степенями подвижности, покажем, что решение краевой задачи для любой модели группы В (с двумя циклическими координатами, см. табл. 11.1) сводится к найденному выше решению краевой задачи для моделей с двумя степенями подвижности. Среди моделей, представленных в табл. 11.1, можно выделить два вида. К первому относятся модели, у которых хотя бы одна из циклических координат ортогональная (эти модели отмечены звездочкой). Ко второму л33 Л12 7113 ^23 m3z3 0 -m3Z3 sin 0 m3Z3 0 0 -m3Z3 sin<73 т3 0 0 0 m3 -(m2 + m3)Z2sing2 0 0 m3 0 0 m3Z2 m3Z3 0 0 m3(Z3 +Z2Z3 cos?3) m3 0 0 0 m3 0 0 0 m3 (m2 +m3)Z1 0 0 wi3Z3 0 w3(z3 +lll3 cos 43) 0 m3 (m2 + m3 )(Z2 + Zj Z2 cos q2) 0 0 165
виду относятся модели, не содержащие ортогональных координат. В таблице 11.3 представлены выражения инерционных коэффициентов л,„ л#, пкк, ^ij> ltjk (i, j, к могут принимать не равные друг другу значения 1, 2, 3) для моделей первого вида, приведенных в табл. 11.1. Рассмотрим сначала решение задачи для моделей первого вида. Кине- тическая энергия для каждой модели с двумя циклическими координатами (<?,, одна из которых (<?*) является ортогональной, имеет вид W = 0,5(л,-,^2 + 2 л,-,<7,<7у + Ttjjq] + ли<?2) = const. (11.49) Для всех одиннадцати схем, отмеченных в табл. 11.1 звездочкой, выпол- няются следующие условия: обобщенные координаты и qk - циклические, Пкк = const. Для каждой из рассматриваемых моделей, помимо интеграла энергии, могут быть записаны еще два интеграла обобщенных кинетических момен- тов по циклическим координатам Р( = кн + nyQj = = const, (11.50) Pjt = Kkkqk = а* = const. Из выражения (11.50), если учесть, что для всех этих моделей itkk = const, следует, что qk = const. Выражение (11.49) с учетом (11.50) может быть преобразовано к виду W = W| + w2, где W! = 0,5(л„q~ + 'lltijqiqj + Л^2) = const, W2 = 0,5ли<?2 = const. Следовательно, система распадается на две независимые подсистемы, одна из которых соответствует модели с двумя степенями подвижности, для Таблица 11.4 Инерционные коэффициенты для моделей без ортогональных циклических координат (см. табл. 11.1) Номер модели в табл. 11.1 а\\ й22 3 т2 + т3 8 т{+т2+ ^2^2 + ^3 ^2 + ^3 COS Q3 9 + m2 + 2 2 ^2^2 + "Ь (^2 +13 COS (/3 ) 14 ГП\1\ +^2^1 +12^ + /2)^ + ^3 OOS^/з ] ГП2 +ГП3 15 + Z3 COS 6/3 )~ m2 +т3 166
которой алгоритм решения краевой задачи подробно рассмотрен выше. Определив при некотором значении Wt и заданных граничных условиях (<7,о, ?i K> Qjk) траекторию <?, (/), q/j) и время движения Гд, нетрудно найти начальное условие для граничных условий (q^, q^) из выражения 9к0 ~ (9кк ЯкО Тем самым в параметрическом виде определена траектория собственного движения модели, удовлетворяющая заданным граничным условиям q^f), qj(t)n qk(t) = q2k0t. Рассмотрим теперь планирование движения для моделей с двумя цикли- ческими координатами, ни одна из которых не является ортогональной (второго вида). Таких моделей в табл. 11.1 всего 5 (модели 3, 8, 9, 14, 15). Значения инерционных коэффициентов для моделей группы В второго вида представлены в табл. 11.4. Переобозначив в моделях 14 и 75 порядок обобщенных координат qx и q2, можно записать выражение кинетической энергии для всех этих моделей в общем виде W = 0,5(тс11^)- + TC22<j2 + ^зз*?з +2л13(?1(?з+2л2з(72*7з)= const. Для всех схем (с учетом новой нумерации для моделей 14 и75)ли = = const, a q3 - нециклическая координата. Так как q} и q2 - циклические координаты, запишем еще два интеграла движения в виде Pi = +л1з<?з =ai = const, (11.51) Р2 — ^22^2 ^23^3 — 0^2 — COHSt. Учитывая, что = const, уравнение кинетической энергии для моделей этого вида можно записать как сумму w = Wi + w2, где — 0,5(7^22^2 + ^^23^2^3 + (язз к1з 1 J= const, W2 = а2 /2ян = const. а33 а\2 й13 23 т313 0 m3Z3 cos<?3 -m3Z3sin<?3 т313 0 m3Z3cos<?3 -ти3/3 sin<?3 т313 0 cos<73 0 т313 0 + Z2)Z3sin<?3 m3/3 cos<?3 т313 0 0 m3/3 cos<?3 167
Следовательно, решение краевой задачи в этом случае опять-таки сво- дится к решению краевой задачи для модели с двумя степенями подвиж- ности с одной циклической координатой, для которой можно записать два интеграла движения W] = 0,5(£>22<?2 + Zb23q2q3 + bi3qf) = const, р2 = b22q2 + b23q3 = a2 = const, где Z?22 = tt22, Ь23 = Л23, b33 = TC33 — Ли / лп. Определить начальную скорость по первой координате можно, используя соотношения (11.51). Результатом решения первой задачи являются функции ?2=?2(0, ^2=?2(0, q3=^3((), 4з=4з((), а также время движения гд. Проинтегрировав (11.51) по времени от 0 до найдем значение а. гд где Jnl3q3dt определяется численно по найденному ранее q3 = q3(f). Зная aj о и q3Q, легко установить и начальное значение #10. Таким образом, решение краевой задачи для любой модели с тремя степенями подвижности при наличии двух циклических координат зависит только от решения краевой задачи для двухзвенной модели и не представляет принципиальных сложностей. Отметим, что относительную легкость ее решения для рассмотренных случаев можно объяснить наличием всего одной нециклической коорди- наты, т.е. рассмотренные системы представляют собой известный случай интегрируемости уравнения Гамильтона-Якоби [7,19]. Очевидно, что и для н-мерных систем с (п - 1) циклической координатой решение краевой зада- чи может быть определено с помощью алгоритма, аналогичного найден- ному выше при решении краевой задачи для двумерных моделей. Поэтому прежде чем перейти к обсуждению особенностей решения краевой задачи для моделей группы С, рассмотрим обобщенный алгоритм планирования движения n-мерной модели с (п - 1) циклическими координатами. 3. Обобщение алгоритма решения краевой задачи на n-звенные модели (и > 2), у которых пх = п - 1 циклических координат, в отличие от пре- 168
дыдущих доказательств, проведем, не предполагая, что какие-либо инер- ционные коэффициенты постоянны. Переобозначим в модели номера обобщенных координат так, что qn будет единственной нециклической координатой. Для такой системы можем записать п интегралов п п W = °’ 5Х X 71 ij№j = COnSt’ ,=! у=1 п . Pj = 3W / dqx = У 7С1у^. = cq = const, (11.52) P„-1 = aw / bqn_x = У Tt^jqj = a„_, = const, j=i где л(у = 7Су(^п). Разрешив систему (11.52) относительно обобщенных скоростей, по- лучим 41 =oq.-и W), ?n=/n(?n.a1,...)a„_1,W). Далее, повторяя рассуждения, использованные при анализе двухзвенной модели, краевую задачу для n-звенной системы можно свести к системе (и - 1) интегральных уравнений Чпк = J (Qj^dq,,, ЧпО <.................... Чпк А?„-1 = J {Qn-\lQn)dqn, ЧпО что эквивалентно системе уравнений ^(a1,...,a„_1,W) = 0, [F„_1(a1,...,a„_1,W) = 0, где ^(a1,...,an_1,W) = A9,.- j {qjqjdq^ (z = l,2,...,n-l). ЧпЪ Такая система может быть решена различными численными методами. При этом следует иметь в виду, что специфика рассматриваемого класса 169
механических систем требует определения (и - 1)-мерной области сущест- вования а {а],..., а„_]} и выделения внутри этой области подобластей, которым соответствуют различные режимы изменения qn, аналогичные полученным при анализе двухзвенных систем. В заключение еще раз отметим, что имеющийся алгоритм решения краевой задачи (и тем самым планирования траектории) модели с п степенями подвижности с (и - 1) циклической координатой не решает проблемы полностью и пока имеет ограниченное практическое значение. Действительно, как показал анализ, большинство из приведенных трех- звенных схем имеют лишь одну циклическую координату (см. табл. 11.3). Для таких систем разработанный нами алгоритм решения краевой задачи неприменим. Исключение из рассмотрения этих схем существенно обедняет рассматриваемый класс систем, причем исключаются наиболее перспек- тивные в робототехнике схемы с тремя вращательными парами (см. табл. 11.3). Напомним, однако, что рассмотренные выше условия цикличности обобщенных координат (см. гл. 8), обеспечиваемые выбором параметров инерционных характеристик звеньев в таких структурах, и их достаточно простая практическая реализация могут существенно расширить область применения изложенных алгоритмов. К этому следует добавить также, что для решаемых задач не требуется все п обобщенных координат превращать в циклические. Достаточно провести такую процедуру для (п - 2) обобщенных координат: для трехзвенных структур группы С - лишь для одной координаты, для четырехзвенных структур - в худшем случае для двух, и т.д. Вместе с тем задача поиска собственной траектории движения исполни- тельного механизма робота в общем случае, когда имеются свыше одной нециклической координаты, имеет самостоятельное значение. Ведь боль- шинство конструкций исполнительных механизмов современных промыш- ленных роботов удовлетворяет именно этому условию. С учетом сказанного понятно, что необходима разработка алгоритмов планирования траекторий на основе собственных движений моделей более общего вида. В решении этой задачи нам опять-таки поможет представление о динамически уравновешенных исполнительных устройствах, когда все их обобщенные координаты становятся циклическими (см. гл. 8). Ниже будут рассмотрены исполнительные механизмы, у которых только одна обоб- щенная координата циклическая. Модели механизмов будем характери- зовать параметрами, отражающими степень неуравновешенности, и строить последовательные приближения в решении исходной граничной задачи. При этом в качестве нулевого приближения примем элементарно полу- чаемое решение для уравновешенного исполнительного устройства. Алго- ритмы, построенные выше, можно использовать для проверки правиль- ности работы создаваемых общих алгоритмов. 170
11.4.4. Общий алгоритм планирования траекторий движений роботов в соответствии с собственными динамическими свойствами моделей исполнительных механизмов Известны [18] различные методы решения граничных задач*, но нет универсального метода, позволяющего решать такие задачи для произволь- ной системы дифференциальных уравнений. Успешное применение того или иного метода зависит от специфических свойств изучаемых систем и вида дифференциальных уравнений, которыми они описываются. Воспользуемся моделями, представленными на рис. 8.13,а,б. Они содержат жесткие звенья, соединенные идеальными кинематическими па- рами. Относительные углы qj(J = 1, 2, 3) между звеньями, включая стойку, образуют систему обобщенных координат. Длины звеньев - /,(/ = 1, 2, 3), массы звеньев методом замещающих точек приведены к сосредоточенным в шарнирах и схвате массам nij. Предполагается, что модели оснащены механизмами, компенсирующими действие гравитационных сил в любой конфигурации (см. гл. 6), т.е. механизмами статического уравновешивания веса звеньев. Кроме того, дополнительно к третьему звену каждой модели присоединены массы М3 на расстоянии Ц от оси шарнира, обеспечивающие при отсутствии в схвате объекта манипулирования цикличность координаты q3 (на рис. 8.13,я,б показаны пунктиром). Соответствующие условия приведены в гл. 8. Динамика рассматриваемых моделей описывается системой трех нелинейных дифференциальных уравнений второго порядка. Для таких моделей известно решение граничной задачи, когда последнее звено не взаимодействует с объектом манипулирования и поэтому динами- чески уравновешено. Задача заключается в определении собственной траектории движения модели между теми же точками при изменении присоединяемой к последнему звену массы на Ат = ц, приводящем к расстройке системы и нарушению условий цикличности третьей обобщен- ной координаты q3. Если величина |1 - мала, то представляется оправданным, используя метод малого параметра, упростить систему путем ее линеаризации в окрестности известного решения граничной задачи (ц = 0). Для решения граничной задачи для линеаризованной системы можно использовать без- итерационный метод, например метод суперпозиции [18]. Такова идеология предлагаемого алгоритма решения поставленной задачи. Заметим, однако, что метод малого параметра, приводящий к решению исходных дифференциальных уравнений в виде ряда по степеням пара- метра, с точки зрения удобства его использования для решения поставлен- ных задач с помощью вычислительной техники, обладает существенными недостатками. Во-первых, он требует определения частных производных высоких порядков, и, во-вторых, быстрая сходимость ряда возможна лишь при достаточно малых |х, в то время как желателен метод, менее критичный к величине |1. * Под методами решения граничных задач понимают способы сведения их к более простым задачам, например к задаче Коши, а также построение в случае необходимости подходящих итерационных процессов. 171
Поэтому воспользуемся родственным методом - методом дифферен- цирования по параметру. Этот метод применяется для решения дифферен- циальных уравнений с параметром (не обязательно малым), входящим в само уравнение или в граничные условия [18]. Взяв сначала известное ре- шение для некоторого значения параметра, интегрированием производной решения по параметру можно найти решение для другого значения пара- метра. Вычисления на каждом шаге проводят при малом изменении пара- метра, при этом исходные уравнения линеаризуют, и для решения гранич- ной задачи используют метод суперпозиции. Путем последовательного увеличения значения параметра на малый шаг достигают его заданное значение. Удобство метода с точки зрения программирования для последующих вычислений на ЭВМ заключается в том, что линеаризованные уравнения, получаемые дифференцированием исходных уравнений и граничных усло- вий по параметру, одни и те же на всех шагах. Рассмотрим более подробно алгоритм метода дифференцирования по параметру применительно к моде- лям исполнительных механизмов роботов с тремя степенями подвижности и вспомогательный алгоритм метода суперпозиции для решения поставлен- ных граничных задач. Пусть для заданной модели (например, представленной на рис. 8.13,а) трехзвенного исполнительного механизма робота в результате уравновеши- вания путем выбора соответствующей геометрии масс последнего звена, когда объект манипулирования отсутствует, выполняется условие циклич- ности двух обобщенных координат q{ и q3. Требуется определить собст- венную траекторию между точками q = [<?10, q^, q^]T и qK = [?1к, q1K, q3K]T для случая, когда схват удерживает объект манипулирования массой ц. Движение модели в этом случае описывается системой дифферен- циальных уравнений = О, Z = 1,2,3, (11.53) в которых ц принимается за параметр системы. Решение граничной задачи для ц = Цо = О известно, т.е. известны время движения h и функции Qj(t\ QjW) (j = 1,2,3), причем з/О) = qj0 и ^/гд) = qjK. Введем в рассмотрение новые функции ф.(0 = Э^/Э|1, j = 1,2,3. (11.54) Тогда, продифференцировав уравнения (11.53) по Ц, получим 3 3 7 Ч ХчЛ+ 7Ч Vo + С11-55) 7=1 ;=1 +^(Э7'./Э^)ио ф,- +dFt /Эц = 0, i = 1,2,3. Граничные условия после дифференцирования по ц принимают вид Ф/О) = фуо=О, ф/гд) = фЛ=О. (11.56) 172
Поскольку функции Ft и их производные берутся при ц = цо и поэтому известны, а система уравнений (11.55) линейна, сформулированная гра- ничная задача может быть решена без итераций. Найдя ее решение <p/f) с учетом (11.54), получим решение исходной задачи при Ц = Цо +Д|1 ?/^мо+Дн=^(0|Цо+Ф/01Ио-ДЦ, 7 = 1,2,3. (11.57) Далее, повторяя описанную процедуру, будем искать последовательно решения для ц = |До + 2Дц,..., ц = Цо + МДц. Таким образом, метод дифференцирования по параметру путем раз- биения величины параметра на N частей позволяет найти решение задачи и в случае, если параметр не мал. Заметим, что метод дифференцирования по параметру позволяет лишь упростить граничную задачу: вместо граничной задачи для нелинейной системы дифференциальных уравнений требуется решить такую задачу для линейной системы дифференциальных уравнений с переменными коэффи- циентами. Последнюю будем решать методом суперпозиции, сущность которого заключается в сведении граничной задачи к двум или нескольким задачам с полным набором начальных условий, т.е. к задачам Коши, кото- рые решаются одним из прямых методов. Решение исходной задачи получают как комбинации решений задач Коши. Применение метода суперпозиции к решению граничной задачи, заданной системой уравнений (11.55) и граничными условиями (11.56), приводит к следующему. Представим решения <р/7) (/ = 1, 2, 3) в виде суперпозиции некоторых частных решений = (11.58) к=\ где набор функций (j = 1, 2, 3) с одним и тем же индексом к характеризует одно из частных решений; о4 = 1, а о2 и о3- не известные пока константы. Подставив (11.58) в (11.55), получим следующие уравнения: (11.59) i= 1,2,3. Приравняв каждое выражение, заключенное в квадратные скобки, нулю, получим четыре системы линейных дифференциальных уравнений, каждая из которых содержит только одно частное решение и его про- изводные 3 з 3 У ^Fi / )ljk + У, I bqj )ijk + У (dF, / dqj )^jk .7=1 7=1 7=1 = 0, k = 1,2,3, (11.60) 173
f/dFJdq^ +£(ЭТ=;/Э^)^ + jjdFi/dq}^4 + ^/3g J=l j=\ j=\ = 0, i = 1,2,3. Первое из граничных условий (11.56) принимает вид 4 2<Т^=О = Ъ. > = 1.2,3, к-\ поэтому можно положить ^•4(0) = <р,0, ^(0) = 0, j,k = 1,2,3. (11.61) Продифференцировав (11.58) и положив t = 0, получим ф/0) = £аДА, j = 1,2,3. к = \ Считая начальные значения производных частных решений равными w СО, если к Ф L ^4(0) = 0, £,,(()) = ... (11.62) J J [1, еслик = ; (у,к = 1,2,3), можем записать ф1(0) = а1, ф2(0) = о2, ф3(0) = о3, т.е. неизвестные константы совпадают с искомыми начальными условиями. Значения же констант ак (к - 1,2,3) определяются решением системы линейных алгебраических уравнений, составленной по второму граничному условию (11.56) £°ЛЛ'л)=фЛ)-М'А / = 1.2,з, (И.63) к = \ в которых коэффициенты ^jk и £у4 определяются решением задачи Коши для уравнений (11.60) с начальными условиями (11.61) и (11.62) р момент времени Гд. Для окончательного построения алгоритма решения исходной гранич- ной задачи необходимо рассмотреть вопросы, связанные с повышением точности получаемых решений. Дело в том, что интегрированием исходной нелинейной системы дифференциальных уравнений (11.53) с фиксиро- ванным значением параметра ц = ц0 + Др с начальными условиями, опреде- ляемыми по (11.57) при t = 0 ?,<„.АЦ=Ч,(О)|Ц/Ф/О)|Ц(ЛЦ. (11.64) в интервале 0 < t < tд можно найти ошибки попадания в целевую точку по всем обобщенным координатам модели. Как показали расчеты, величи- ны этих ошибок, обусловленные проведенной линеаризацией исходной 174
системы и конечными величинами шагов Д|1, могут быть весьма значительными, и, что более важно, катастрофически увеличиваются с ростом номера шага и приближением (Цо + £Д|Л) (к= 1,2...) к требуемому значению ц. Сформулируем для нашей задачи требования к точности следующим образом: определить такие начальные условия q0 = [<71О,<72О’?зо]Г> ПРИ которых модель для значения параметра, равного |1, за время гд попадает из начальной точки q0 в заданную 8-окрестность целевой точки q^ т.е. 5 = (Гд ) - к ]2 + [?2 ('д ) - ?2к ]2 + [?3 (^ ) - ?3к ]2 < £• Погрешность решения 5 определяется после интегрирования системы дифференциальных уравнений (11.53) движения модели с найденными на- чальными условиями (11.64). Таким образом, она является суммой двух погрешностей: погрешности начальных условий, получаемых мето- дом дифференцирования по параметру, и погрешности, возникающей в результате численного интегрирования системы дифференциальных уравнений. Для интегрирования систем дифференциальных уравнений целесообраз- но использовать метод прогноза и коррекции второго порядка, кото- рый позволяет оценить ошибки из-за ограничения шага интегрирования [3,17]. Уменьшив шаг интегрирования, можно повысить точность интегри- рования. При этом в целях экономии машинного времени желательно использовать мелкий шаг интегрирования только для конечного значения параметра ц. Что касается первой составляющей погрешности 5, то она также зави- сит от шага Дц. Однако путь повышения точности, связанный с уменьше- нием Др, приводит, во-первых, к большим затратам машинного времени,, а, во-вторых, не всегда позволяет достичь поставленной цели из-за накопле- ния ошибки на шагах. Поэтому более предпочтительным является путь, связанный с разработкой и применением алгоритма коррекции начальных условий на каждом шаге. При создании такого алгоритма воспользуемся аналогией между реше- ниями граничных задач и нелинейных уравнений и возьмем за основу один из методов, применяемых при решении систем нелинейных уравнений [3,8]. Действительно, представим формально решение поставленной граничной задачи в виде системы нелинейных уравнений Z(41O> <?2о> ?зо) = ^Од)-^к =0» / = 1,2,3, (11.65) аргументами которых являются начальные условия. Запишем (11.65) в краткой форме Р(4о) = [/„/2.Л1Г = О- Путем дифференцирования по параметру найдем начальное прибли- жение решения QoO), для которого /(0) определим интегрированием систе- 175
мы дифференциальных уравнений (11.53) с начальными условиями q^. Если J~3 ~ Z(Z"”) <е. 1=1 то решение получено с заданной точностью. В противном случае потре- буется определить новое приближение q^. Для этого воспользуемся мето- дом Ньютона [8]. Определим матрицу Якоби системы (11.65) ЛЧо) = [Э//Э^о], ЛУ = 1,2,3. Очевидно, частные производные Э/ /Э^о (i, j = 1,2,3) аналитически определить нельзя, поскольку неизвестен вид функций fh Поэтому заменим частные производные разностными отношениями ^fil А^ю = [У/(?ю + ^Ю’?2О’?Зо) ““ УХ *710’920 ’*7зо)]/ e ^fi ! ^*710’ А// / А?20 = [У/ (?10’^20 + Д?2О’#Зо) “ Z'(?lO’?2O’?3o)^ ^#20 e ^fi I ^*?20’ А// / А^зо = [fi (^0, #20 ’ *?30 +^?Зо)"“У/(91О’?2О’?Зо)]^?ЗО e ^fi ! ^*7зо» которые получим путем поочередного изменения только одного аргумента qjQ на малую величину Ag;0 (j =1,2,3). После определения матрицы J(Qy0)) для нулевого приближения новые начальные условия вычисляют по формуле q*0 =<^0) - ГЧЧоЪ-^Чо”)- Аналогично находятся следующие приближения q<*+1) =q<t)-J-,(q<t))-F(q<t)). (11.66) Процесс продолжается до тех пор, пока не будет достигнута заданная точность. Существенным неудобством метода Ньютона является необходимость на каждом шаге для определения матрицы Якоби Kq^) три раза инте- грировать систему дифференциальных уравнений (11.53). На практике, если нулевое приближение дает результат, близкий к исходному решению, часто используют модифицированный метод Ньютона, когда матрица Якоби и обратная ей матрица определяются лишь один раз для нулевого прибли- жения. В этом случае последующие приближения находят по формуле <+I) =<)-J’1(q^0))-F(C). (11.67) Сходимость процессов (11.66) и (11.67) существенно зависит от начального приближения 4оО). Поэтому, если последовательность QoO), ••• будет расходящейся, необходимо вернуться к предыдущему решению и уменьшить шаг Ар. Действительно, практическая проверка при 176
расчетах на ЭВМ показала, что при больших Дц, которые приводят к грубому начальному приближению, возникают случаи, когда модифици- рованный процесс Ньютона становится расходящимся. Однако уменьше- ние Дц позволяет, уточнив нулевое приближение, с успехом использовать этот метод и получать решение граничной задачи с любой заданной точ- ностью. Алгоритм решения граничной задачи, заданной системой дифферен- циальных уравнений (11.53) и граничными условиями q0 и qK, в оконча- тельном виде включает такую последовательность процедур. а. Используя известное решение для некоторого значения параметра ц0, с помощью метода суперпозиции решают граничную задачу для линеаризо- ванной системы дифференциальных уравнений (11.55) и граничных условий (11.56). При этом интегрируют четыре системы уравнений (11.60) с начальными условиями (11.61) и (11.62) от г= 0 до t = гд и определяют значения ^(£д) (J =1, 2, 3; к = 1, 2, 3, 4). С применением формулы Крамера решают систему (11.63) и определяют константы о2 и аз, которые равны начальным условиям ф^О), ф2(0) и ф3(0) соответственно. б. Используя метод дифференцирования по параметру, из (11.55) нахо- дят в нулевом приближении начальные условия qo°)=[?io)» Ям’ЯзоТ для нового значения параметра Щ = Цо + Дц. в. С учетом требуемой точности е с помощью модифицированного мето- да Ньютона (см. (11.67)) корректируют начальные условия qg0), получен- ные в пункте б в качестве нулевого приближения. г. Интегрированием (11.53) получают новое "известное" решение для параметра Ц] = Цо + Дц. Далее алгоритм повторяется до тех пор, пока не будет получено ре- шение для Ц* = Цо + Мц = ц. Завершая построение алгоритма решения поставленной граничной задачи и,хследовательно, алгоритма планирования траектории движения робота, отметим еще одно обстоятельство, позволяющее использовать этот единый алгоритм для решения задачи с самого начала. Для достаточно широкого класса робототехнических систем (в частности, систем с тремя степенями подвижности) цикличность всех обобщенных координат можно обеспечить соответствующим выбо- ром геометрии масс звеньев. В таком случае решение граничной зада- чи простое - это равномерные движения по всем обобщенным координа- там с прохождением через исходную конфигурацию, а затем - через целевую. Если теперь выбрать вектор параметров ц {ц(2), ц(3),...}, каждая компо- нента которого характеризует "степень" нецикличности обобщенной коорд- наты, начиная со второй (ц(2)), то очевидно, что разработанный алгоритм можно применять последовательно: сначала "разбалансировать" вторую обобщенную координату, затем полученное решение взять за известное, "разбалансировать" третью обобщенную координату и т.д., пока задача не будет полностью решена. 177
11.4.5. Примеры решения задачи поиска собственной траектории движения руки робота между заданными позициями Используем описанный выше алгоритм для планирования траектории движения модели "тройной плоский маятник", схема которой представлена на рис. 11.14. На этом рисунке /2 и /3 - длины звеньев; тх, т2 и т3- сосредоточенные массы, расположенные в шарнирах и схвате манипуля- тора. Для исключения влияния сил гравитации расположим модель в горизонтальной плоскости. Второе и третье звенья уравновешены дополни- тельно массами (М2 - |1(2)) и (Л73 - |1(3)), расположенными на продолжении звеньев на расстояниях и L$ от соответствующих шарниров. Для заданных значений М2 и М3 расстояния и L3, как отмечено в гл. 8, выбирают таким образом, чтобы выполнялись следующие условия: M3L3 — т313, M2L2 = (т2 + т3 + Л/3)/2. При ц(2) = ц(3) = 0 выполнение этих условий приводит к тому, что все обобщенные координаты q2, q3) становятся циклическими. Ненулевые 178
значения ц(2) и ц<3) характеризуют "разбаланс" системы и при |1(2) = М2 и |1(3) = М3 мы получаем модель без уравновешивающих масс, для которой и должна быть решена граничная задача. Напишем дифференциальные уравнения (11.53) движения данной модели АА1 "* ААг "* АзАз — >«42 \а22 Аг)]-^ААзМ^ >Аз ~ -?12[Ц(2)«42 + Н(3)(«22 + Ь22)] - ?з|1(3)^3 “ ^зН^Аз = О, 4 #1А1 #2 Аг <7зАз >«42 + \«22 Аг)]- (11.68) —^23 “4зЦ( ^23 — >с23 = О’ А1 + 2гАг + ААз + 21 ^33 + 2г ^23 + ^212гН( ^23 ~ О’ где А1 = мх1\ + Л + 7з - н(2)«з - н(3) («1 + bi)’ А2 — А-21 — ^2 + ^3 И «4 И («2 "I” А)’ Аз — А1 “4~Н( ^А’ А2 = Л + /з-Н(2)^-Н(3)ср Аз = Аг = Аз )с2’ А33 = /3-|1(3)^, Л/Е = тх + т2 + т3 + М2 + М3, 12 — (аи2 + т3 + M3)l2 + М21^, I3 = m3lj + М31^, щ = 1^ +12 + 2,1^12соз q2, а2 =^2 + AAC0S?2’ а3 = Zj2 + - 21^ cosq2, /j Z^ cos q2, bx = Z^-2/jZ^ cos(^2+^3)-2/2Z3Cos^3, b2 = -libs cos(g2 +q3)-2l2Li cos<?3, b3 Zg /j Z^ cos(^2 4“ q3) l2 Z^ cos q3, q = l2 + Z^ - 2121^ cos<?3, c2 = -/2A cos?3,' «22 — A A sm^2> «42 =liL2sinq2, b22=llL}sin(q2+q3), Z?33 = Zj A sin(g2 + <7з) + Z2 A sin q3, c23 ~ A A sin^3. 179
Из приведенных уравнений движения модели (11.68) видно, что "стар- товое" решение граничной задачи, соответствующее значениям параметров |Л(2) = |Ло2) = 0 и ц(3) = (I® = 0, тривиально: искомой траекторией является прямая в пространстве обобщенных координат, соединяющая исходную и целевую точки. Недостающие начальные условия определяются выра- жениями ?;0=Чк-^0)/^дО' = 1,2,3), 11.69) где гд назначается произвольно. Задача решается последовательно в два этапа: на первом этапе в качестве параметра берется ц(2) и промежуточное решение соответствует ц(2) = д/2, ц(3) = 0, а на втором - наращивается ц(3) до ц(3) = М3. Поэтому ли- неаризованные уравнения вида (11.55), получающиеся дифференцирова- нием по параметру, для двух этапов будут различаться. Объединенная запись этих уравнений имеет вид Ф1А1 Ф2А2 ФзАз = + ^2^12 ^3^13’ Ф1^21 + Ф2^2 + Фз^З = + ^2^22 + ^3^23 ’ (11.70) фИз1 Ф2А32 ФзЛзЗ = R3+ ^2^32 ^з4зЗ* Здесь /?1 = 2ф1(д2£^ + ^зН( ^33) + 2ф2[(^1 + *"^зН( ^33] + +2фз(^ + q2 +?з)Н( ^зз +Ф2К2?! + Q2W + 9зН( ^22 + +g2(2#i +#2)^0 + #з(2#1 +2^ +#з)Ц( ^20 ] + +ф3[(2^1 +#2)^зз '*^2^23 +(2^1 + ^2)^2й2о +(2^1 +2^ + ^з)?з^зо1Н( >> /?2 = ^ф^^Ь/ — д3ц( ^23) + [2ф2^3 + 2ф3(д1 + q2 + q3 )]Ц( ^с23 + +Ф2(^1^“^1 Ц)) +Фз[#1^23 +(2^2 +9з)С23 ~Я\ ^20 +б7з(2<71 +2<72 +#з)С2о]Н( \ /?3 = [—2ф! (qxb33 +^2С23) — 2ф2(д1С2з + ^2С2з) + Ф2(#1^22 ~Ц\ ^2о) + +ф3 (^^зз + (?2с23 “ Я\ ^зо “ Я2с20 “ 2g1g2c2o )]Ц( )» 6?i2 = qxci3 + ^2л4 + <j2 (2^ + q2 ; ^13 = ^1) #2(^2 + ^2) 9з^3 2^1^2^22 ^22) + <?2 (^22 + ^22^ ~*~ +^з(2^+2^2+<7з)йзз’ ^22 = 91^4 + ^2^2 ” Я\ ^42’ ^23 = ?1(а2 + ^2) + ^2С1 ЯзС2 ~ (^22 + ^22^ + 9з(2#1 + 2^2 + ^з)С23» 6?32 = 0, ^33 = 91^3 + Я2С2 + Яз^З ~ Я\ ^33 “ %2С23 ~^Я\Я2С23^ Uq = ц/ ^40 + ц/ 4^20 + ^20 )’ 180
U = p.(2)a42 + il(3)(a22+b22), ^20 — COS ^2» Я40 — /j 1^2 COS (fa j ^20 = ААз C0S(ft + ft)’ Z?20 — ^-3 COS(^2 ^3 ) ^2 Аз COS ^3, C20 = ^2^3 COS(J3, ^2 “ 1, 0, 0, < 1, если ц(2) < M2 если ц(2) = М2 если |1(2) < М2 если |1(2) = М2. Коэффициенты систем линейных дифференциальных уравнений (11.60) определены коэффициентами системы уравнений (11.55) и, следовательно, коэффициенты в (11.70) полностью определяют уравнения вида (11.60) для нашей модели. Входящие в коэффициенты уравнений (11.70) величины <?,, <7< > Q, ~ известные функции времени. В соответствии с разработанным алгоритмом на основе уравнений (11.68) и (11.70) создана программа RGZ для персонального компьютера. Переходя к ее описанию, заметим, что под выражением "изменение пара- метра ц" в дальнейшем понимается изменение |1(2), если ц(2) < М2 (ц(3) = const), и изменение |1(3), если ц(2) = М2. Укрупненная блок-схема программы RGZ приведена на рис. 11.15. Программа начинается вводом исходных данных: параметров модели {/,, т, } (i =1,2,3), величин уравновешивающих масс {М2, М3}, шага изменения параметра Др; граничных условий {q0, qK}, времени движения 1Д, требуемой точности решения е, шага интегрирования Дг (блок 7). Вектору параметров И = [Ц(2), Ц(3)]Г присваивается нулевое значение и определяются (11.69) стартовые начальные скорости q0 (блок 2). В блоке 3, с которого начинается основное тело программы, интегриру- ется система дифференциальных уравнений (11.68) с найденным вектором начальных скоростей. Интегрирование осуществляется методом прогноза и коррекции. При этом с заданным шагом запоминается информация g,(7), <тД7), Qj(t)- По информации о qj(ta) определяется погрешность 8. Сравнение погрешности 8 с заданной точностью решения осущест- вляется в блоке 4. Если погрешность велика, то в блоке 5 модифициро- ванным методом Ньютона осуществляется коррекция вектора начальных скоростей, и вновь в блоке 3 интегрируется система (11.68) при скорректи- рованных начальных скоростях. Цикл повторяется, пока не будет удовлет- ворено соотношение 8 < е. В блоках 6 и 7 устанавливается номер этапа последовательности из- менения параметра |1. По окончании второго этапа на печать (блок 10) вы- даются найденные функции q}(t) (j =1, 2, 3). В противном случае в блоке 8 методом суперпозиции (интегрированием систем дифференциальных урав- 181
нений вида (11.60) с коэффициентами системы уравнений (11.70), с учетом определенных в блоке 6 значений к2 и къ и в блоке 3 - функций определяются начальные значения производных функций (р/0, т.е. ф/0). 182
По ним в блоке 9 в соответствии с (11.64) находится вектор q0 началь- ных скоростей для нового значения параметра |х. Информация поступает в блок 3, где интегрируется система уравнений (11.68) для возросшего значения параметра цис найденными начальными скоростями. Циклы повторяются, пока не будет получено окончательное решение, когда ц(2) = = М2иц<3) = М3. Время работы программы зависит от величины выбранного шага интегрирования, числа шагов изменения параметра ц и заданных граничных условий. Многочисленные примеры планирования траектории движения модели показали хорошую работу программы. В связи с тем, что программирование движений осуществляется впредь до начала движения, время подготовки программы существенного значения не имеет. Работу программы проиллюстрируем на примере тройного плоского маятника, звеньями которого являются невесомые жесткие стержни с сосредоточенными массами на концах. Параметры модели соответственно равны (см. рис. 8.13, а): 1Х = 1,1 м, /2 = 1 м, 13 = 0,1 м, тх = 1 кг, т2 = 0,8 кг, т3 = = 0,1 кг. Требуется определить собственную траекторию модели между точками (^10 = 0; q20 = 1,5708; ?30 = 0) и (^|к= -1; д2к = 1; q3K = 1,5708). В качестве "стартового" использовано решение для модели, представ- ленной, на рис. 11.14, когда второе и третье звенья уравновешены массами М2 = 1 кг, М3 = 0,1 кг, расположенными на продолжениях звеньев 2 и 3 на расстояниях = 1 м, L3 = 0,1 м от шарниров соответственно. В процессе счета было получено промежуточное решение для модели, в которой уравновешивающие массы М2 = 0, М3 = 0,1 кг, т.е. уравновешено только третье звено (на рис. 8.13, а показано пунктиром). Сам пример выбран с таким расчетом, чтобы иметь возможность сравнить результаты работы программы решения граничной задачи для моделей с двумя степенями свободы (см. раздел 11.4.2) с результатами работы программы RKZ для двухзвенной модели. Действительно, для модели, у которой М2 = 0 и М3 = 0,1 кг, можно записать три интеграла движения W = 0,5{qx [тх1х + (т2 + т3+М3 )(1Х + l2 + 2l2 cos q2) + (jn3lj + M3L^)] + +<72 [(j?i2 + + М3 )12 + (гп313 + M3g)] + q3 + M3L^) + +2(7^2[(ап2 +m3 + M3)(l2 +lxl2 CQsq2) + (m3l3 +M3Z^)] + +2qxq3(m3ll + M3l33) + 2q2q3(m3ll + M3I^)} = const, ttj = dW/dq{ = q{[mxlx + (m2 + + M3)(lx + l2 + 21^ cos g2 ) + (m3Z3 + M3Z^)] + +g2[(^2 + ^3 + M3)(Z2 + ZjZ2 cosg2) + (jn3/32 + M3I%)] + q3(jn3l3 + M3L^) = const, 0C3 = 3WI dq3 = (q{ +q2+ q^irn^j +M3I^) = const. Используя выражение oc3, преобразуем выражение кинетической энергии к виду W = 0,5{qx[mxlx + (^2 +т3 + A/3)(Z2 + Z2 + 2lxl2 cosg2)] + +2^2 (т2 +т3 + М3 )(l2 + l{l2 cos q2) + 183
+ W3 + ^3)^2 } + а3 / + ^3^) = W1 + W2‘ Как видим, система распадается на две динамически независимые под- системы, одна из которых соответствует двухмассовой модели двойного плоского маятника с длинами звеньев 1Х = 1,1 м, /2 = 1 м и сосредоточенными массами т{ = 1 кг, т2 = тх + т3 + М3 = 1 кг, т.е. модели, рассмотренной в разделе 11.4.2, собственная траектория которой между точками (#10 = О, ^2о = 1,5708) и (g1K = -1, д2к = 1) представлена на рис. 11.12, б. Вторая подсистема описывает движение третьего звена, причем выбранные граничные условия соответствуют а3 = 0 (иными словами, третье звено при движении модели остается параллельным самому себе) и значение кинетической энергии W2 = 0. Таким образом, собственная траектория модели с уравновешенным третьим звеном в пространстве обобщенных координат (дн q2) должна совпадать в этом случае с траекторией двухзвенной модели, а времена движения между граничными точками должны быть равными при равенстве кинетических энергий моделей. Этот результат и был получен в процессе работы программы: зависимости qt(f) для значения W = 1 изображены на рис. 11.16 сплошными линиями, собственная траектория для промежуточного решения совпала с представленной на рис. 11.12,6. Пунктиром на рис. 11.16 приведена зависимость q3(f) для окончательного решения при М2 = М3 = 0. Зависимости и q2(t) в окончательном решении практически не изменились, что объясняется малым значением массы третьего звена по сравнению с инерционными характеристиками двух первых звеньев. Отметим, что в соответствии с разработанным алгоритмом, в отличие от описанного в разделе 11.4.2, нет необходимости проведения анализа возможных режимов движения, отличающихся различным характером изменения одной или нескольких обобщенных координат (колебательный или монотонный) при ограничении на Д^. Однако из-за периодичности круговых координат даже при ограничении Д^- < 2л одна и та же целевая конфигурация может быть задана, например, для тройного плоского маятника 23 = 8 наборами обобщенных координат. Если конструктивных ограничений на обобщенные координаты нет, то для определения кратчайшей траектории необходимо найти собственные траектории, соответствующие каждому набору обобщенных координат целевой конфигурации, с последующим выбором минимальной. В заключение остановимся на специфике решения рассматриваемой граничной задачи для электромеханических роботов с большим передаточным отношением редукторов. Инерционные свойства элементов привода влияют на собственные траектории движения систем и должны учитываться при составлении расчетной модели робота. В качестве примера рассмотрим схему механической руки с двигате- лями, установленными на основании (см. рис 8.24). Структура манипулято- ра - плоский трехзвенный маятник. От двигателей к звеньям скелета меха- нической руки протянуты приводные кинематические цепи, выполненные в виде гибких звеньев (тросов) и роликов, установленных на осях кинемати- ческих пар. Частные передаточные отношения этих цепей равны 1. Для 184
Рис. 11.16. Результат работы программы расчета собственной траектории движения модели манипулятора, удовлетворяющей граничным условиям удобства дальнейшего изложения введем систему обобщенных коорди- нат ф - абсолютные угловые пере- мещения звеньев скелета руки Vi - V2 - 91 + 9г, Жз - 91+ 92 + 93- Это не что иное, как углы пово- рота первого звена руки и входных роликов приводных кинематических цепей. Выберем эти элементы в качестве звеньев приведения масс и моментов инерции двигателей. На рис. 8.24 указаны все инерционные характеристики системы, учтенные при составлении выражения для кинетической энергии системы (см. гл. 8). Отметим также, что в принятых обобщенных координатах ф диагональные элементы матрицы инерционных коэффициентов суть константы. Чем больше их значения по сравнению с амплитудными значениями недиаго- нальных элементов, тем более динамически развязана система по этим координатам и тем ближе собственные траектории движения системы к прямым в пространстве обобщенных координат. Именно к такому эффекту зачастую приводит применение электропривода в робототехнических устройствах. Как было отмечено выше при использовании высокооборотных электродвигателей в качестве приводных необходима установка редукторов с большим передаточным отношением /ред = 100-200. В этом случае даже при малом моменте инерции ротора двигателя /дв приведенный к обобщенным координатам робота момент инерции ротора двигателя Znp/(z = = 1, 2, 3) превышает приведенные к обобщенным координатам инерцион- ные характеристики звеньев системы и их изменения в процессе смены конфигураций. Следствием этого является лишь незначительное отклонение собственных траекторий от прямолинейных в пространстве обобщенных координат, которые выбираются и в этом случае в качестве нулевого приближения. Преобладание приведенных моментов инерции двигателей в рассмат- риваемых случаях позволяет в качестве варьируемых параметров выбрать любые параметры механической руки (или их комбинации), нулевые значения которых соответствуют вырождению системы. Такими парамет- рами могут быть, например, длины звеньев. Это видно и из приведенного в гл. 8 выражения W для рассматриваемого примера. Выбрав в качестве параметров, по которым следует вести дифференцирование для уточнения собственной траектории, например М2 и М3 или /2 и Z3, можно использовать весь предложенный алгоритм решения граничной задачи без изменений. Таким образом, в рассматриваемых случаях подготовительная часть задачи поиска собственной траектории значительно упрощается - не надо уравновешивать механическую руку. Кроме того, зачастую достаточно знать и использовать лишь простое приближенное решение. 185
11.4.6. Программирование оптимального по быстродействию движения робота по собственной траектории. Учет свойств привода и использование идей комбинированного ^управления В разделе 11.3.3 были изложены особенности поиска оптимального по быстродействию управления при движении робота по заданной траектории. После определения собственной траектории системы, связывающей исходную и целевую позиции, для оптимального управления движением вдоль нее можно было бы использовать изложенный в 11.3.3 общий подход. Однако в этом случае были бы проигнорированы многие физические закономерности, свойственные рассматриваемым системам. Такой подход может привести к нерациональным затратам времени решения задачи на компьютере. Рассмотренные ниже алгоритмы основаны на анализе физи- ческих закономерностей управляемого движения систем, на разложении вектора обобщенных управляющих сил на аддитивные составляющие и правилах их определения. Уравнения движения идеализированной модели рассматриваемых сис- тем удобно представить в виде II(q)q + B(q,q) = Q, (11.71) где n(q) - матрица инерционных коэффициентов, q - вектор обобщенных ускорений, B(q,q) - вектор гироскопических и кориолисовых сил, Q- вектор обобщенных управляющих сил. Ускорения входят в уравнения линейно, а силы B(q,q) и Q - аддитивно. Поэтому ускорения можно представить в виде q = q0 + q, где q0- ускорение свободного движения, определяемое вектором B(q,q) и, следо- вательно, состоянием системы, a q - управляемая составляющая обобщен- ного ускорения. Очевидно также, что вектор Q можно представить в виде суммы двух векторов Q = QT + Q", первый из которых - тангенциальная составляющая вектора обобщенных управляющих сил, а второй - нормальная составляющая этого вектора. Тангенциальные составляющие обобщенных сил соответствуют движению по геодезической траектории, определенной состоянием системы. Именно эти составляющие вызывают изменение кинетической энергии системы. Нормальные составляющие обобщенных сил обуславли- вают уход с названной геодезической траектории и не вызывают изменения кинетической энергии. Каждому из этих векторов обобщенных управляю- щих сил соответствует свой вектор обобщенных ускорений § = §T + q". Если траектория движения системы совпадает с собственной, то Q" = О и q"=0. Вектор тангенциальных ускорений коллинеарен вектору обобщенных скоростей qT = cq, о = const. (11.72) 186
Это соотношение позволяет найти отношения компонент вектора тангенциальной силы и, следовательно, отношения между управляющими воздействиями при движении по собственной траектории. Действительно, из сказанного следует, что (11.71) можно записать в виде уравнений II(q)qo+B(q,q) = O, n(q)§T = QT, II(q)q" = Q", (11.73) q = <io+§x+§" Подставив (11.72) во второе уравнение записанной системы, получим an(q)q = QT. (11.74) С учетом того, что n(q)q - вектор обобщенных импульсов p(q,q) системы, приходим к утверждению: тангенциальная составляющая вектора обоб- щенных управляющих сил с точностью до постоянного множителя равна вектору обобщенных импульсов системы QT=op(q,q). На простейших базовых моделях (см. рис. 8.2) нетрудно убедиться в справедливости этого утверждения. Пусть движение системы с п степенями подвижности соответствует некоторой заданной траектории, определенной (п - 1) соотношением вида Z(q) = O, z =1,2,..., и - 1. (11.75) При определении нормальных составляющих управляющего воздействия из рассмотрения можно исключить тангенциальные составляющие, положив, например, QT = 0, что соответствует движению системы по заданной траектории с постоянной кинетической энергией. Воспользовавшись аналогией между программным движением по заданной траектории и движением системы с наложенными конечными связями, с учетом (11.73) и (11.75) запишем n(q) [q0 + f ] - Dr(q) • X = -B(q, q), D(q)[q0 + §”] = -C(q,q). (11.76) Здесь вторая группа уравнений получена двукратным дифференцированием (11.75) по времени, п-1 Dr(q)X = Q”, Ш^Х,., j = 1,2,...л; 1 = 1,2,...Л-1, 1=1 X - вектор множителей Лагранжа. Система (11.76)- это система (2п - 1) линейных неоднородных уравнений относительно (2н - 1)-го неизвестного [q0 + q"]7 и Х;. Определив Х„ найдем Q". Таким образом, нормальные составляющие обобщенных управляющих сил являются функцией фазовых координат системы, т.е. функцией состояния системы. При наличии ограничений на управляющие воздействия вектор последних можно найти из соотношений Р < Q = Q" + op(q, q) < Р. 187
Знак о определяет разгон и торможение системы, а его величина - модули тангенциальных составляющих управляющих воздействий, Р и Р - векторы верхнего и нижнего ограничений управляющих воздействий. Приведенное соотношение, в отличие от алгоритма поиска управляющих воздействий, рассмотренного в разделе 11.3.3, при максимально возможных разгоне и торможении позволяет отказаться от перебора граничных зна- чений управляющих воздействий по обобщенным координатам. Перейдем к программе расчета оптимального по быстродействию движения робота по собственной траектории. Нормальная составляющая при таком движении естественно равна нулю. Блок-схема программ расчета оптимального по быстродействию управления движением робота по собственной траектории представлена на рис. 11.17. В этой программе используют результаты расчета собственной траектории, а именно результаты интегрирования системы уравнений свободного движения с найденными начальными условиями и кинетической энергией W. При постоянном шаге интегрирования можно определить векторы qj=[qij,q2j,...,qnj]T и qy = [qXj,q2j,...,qnj\T в точках (/= О, 1,..., N) собственной траектории, равноотстоящих друг от друга по длине последней. Используя эти данные по соотношению (11.74) и заданным ограничениям на управляющие воздействия Р, можно найти как величину о, так и все управляющие воздействия QLJ(j = 1, 2,..., п) в равноотстоящих друг от друга точках (j = 0, 1, 2,..., 2V). В предположении, что расстояние между j-й и (j + 1)-й точками траектории мало, рассчитываются управляющие воздействия на интервале между ними с помощью линейной интерполяции и определяются приращения кинетической энергии &Wj на каждом шаге прямого хода п awj+i = У KG/j+i+Qu) / 2]Д<7у, Му = qiJ+i - qy i=l и далее W,+1 = W, + AWa1,j = 0, 1. По найденной величине кинетической энергии в (/+ 1)-й точке траектории определяются обобщенные скорости qi j+l в этой точке ?1,у+1 ~ ^у'+1 • По этим значениям скоростей qiJ+l можно приближенно опр17еделить время движения между j-й и (j + 1)-й точками траектории Дгу+1 = 2Д^/(^.у+1+^), взяв скорость и приращения по одной из координат. Далее приближенно находится время движения системы до (/ + 1)-й точки rJ+1 = tj + A{,+i О’ = 0, 1,..., N- 1). Описанные процедуры определения W7+1 и г7+1 применяются для всего прямого хода системы от Wo = W(0). После этого определяются 188
Начало Рис. 11.17. Блок-схема программы расчета оптимального по быстродействию движения модели по собственной траектории 189
кинетические энергии для обратного движения от WN= WK. При этом на каждом шаге сравниваются значения кинетических энергий в j-й точке пря- мого и обратного движений. Их равенство определяет точку и соответствен- но момент переключения системы из режима разгона в режим торможения. Программные значения управляющих воздействий Q^t) определяются интегрированием исходной системы дифференциальных уравнений с правой частью, определяемой (11.74) и ограничениями Р, на двух участках движения: первый определен моментом переключения, а второй - заданным конечным значением кинетической энергии. Момент переключения найден приближенно, поэтому окончательно программные значения управляющих воздействий Q^t) определяются с помощью итерационной процедуры. Она основана на изменении момента переключения режимов в ту или иную сторону в зависимости от положения последней точки, полученной в процессе интегрирования, по отношению к целевой точке. При этом минимизируется величина Jn 1=1 где qiK - обобщенные координаты системы в последней точке процесса интегрирования. Процесс завершается при достижении коррекцией времени переключения заданного значения Дк < [Дк]. Работа программы проверена на многочисленных примерах. На рис. 11.18 приведены полученные в результате расчета программные управляющие воздействия и законы изменения во времени координат мо- дели, представленной на рис. 8.1, параметры и граничные условия для кото- рой соответствуют примеру, рассмотренному в разделе 11.4.5, при ограничениях на управляющие воздействия I Qx I < 0,5; I Q21 < 0,2; I Q3 I < 0,1, а начальное и конечное значения кинетической энергии равны нулю (мягкие взлет и посадка). Интересен частный случай, когда задано ограничение только на одну обобщенную силу, а именно силу, соответствующую циклической обобщен- ной координате модели. В процессе оптимального по быстродействию дви- жения обобщенная сила, соответствующая циклической координате, прини- мала только граничные значения. В принципе можно считать поставленную задачу планирования движе- ний на основе собственных динамических свойств исполнительного меха- низма ПР решенной: найдены законы изменения обобщенных координат во времени с учетом ограничений на управляющие воздействия в виде Qi < I Pt4. Это ограничение, однако, представляет собой, во-первых, очень грубое приближение к реальным свойствам привода, а во-вторых, нами при поиске g/np(7) никак не учитывались свойства системы регулирования (см. гл. 10). Таким образом, если система регулирования разомкнута, необходимо по крайней мере более точно учесть свойства привода, а если система регулирования замкнута, то дополнительно при определении программы движения следует учесть свойства регулятора. Пусть, например, в приводе ПР используются электродвигатели посто- янного тока. Найдем на основе их статических характеристик ограничения 190
Рис. 11.18. Результат расчета программных управляющих воздействий (а) и законы изме- нения во времени координат модели "тройной плоский маятник" (6) управляющих воздействий для последующего учета в программе расчета оптимального по быстродействию движения. Имеем (рис. 11.19, см. также (8.Ю)) Л/, = k{iUi - k2fs>i при sign Ut = sign co, , - KU ПРИ sign Ui* sign co,. Здесь М,- момент, развиваемый i-м двигателем, (7,- напряжение, со,- угловая скорость, kti- коэффициент пропорциональности пускового момента двигателя, k2i- коэффициент демпфирования двигателя. Для кинематически развязанных механических систем обобщенные скорости пропорциональны угловым скоростям двигателей со,. Поэтому ограничения на управляющие воздействия Q, для интервала скоростей -fch I Uimm \/k2i < < со, < к,: I Uitna. \/к2: можно записать в виде ~Ki । Цщах l< Qi IР, < kli 1 Цтах । ~k2i®i При СО,- > 0; ~кИ I Цтах I ~k2i®i < Qi ' Р. < Ki I Цтах I ПрИ СО,- < 0, где pt - передаточное отношение редуктора. Эти соотношения легко учитываются в программе. Когда скорости выходят за ограничения, система двигается свободно, с выключенными двигателями. Результатом работы программы являются зависимости q^q^nU^U^t). Для разомкнутой системы найденное Uj = U^t) и будет искомой программой. В замкнутой же системе необходимо обеспечить найденное движение исполнительного механизма q{f), которое выступает в роли требуемого qiTp(f). Замкнутые системы работают по рассогласованию. По- этому, если в качестве программного взять требуемое движение qiTp(t), гарантируется ошибка отработки. В этом случае, как и в более общем случае учета податливостей в кинематических цепях привода, целесообразно использовать идею комбини- рованного управления и реализовать ее так, чтобы учесть свойства замк- нутого контура регулирования или его отдельных элементов (податливость) 191
Рис. 11.19. Статическая характеристика двигателя постоянного тока на уровне составления программы. Для замкнутой программно-управля- емой робототехнической системы можно поставить такую задачу: оп- ределить программные значения обобщенных координат <7, np(Z), i = = 1,п, подлежащие отработке в замк- нутой системе регулирования (см. рис. 8.1,6) так, чтобы движение системы соответствовало требуемо- му ^1Тр(0, i = 1>п. Здесь qiTp(t) - прог- рамма движения робота, построенная на уровне планирования движений с учетом ограничений в приводах по модели разомкнутой системы. Зная закон регулирования, например б, = ^<д,-9,пр), где Iq - коэффициент усиления, требуемое движение ?,= 9.тр(0 и соответствующее ему изменение управляющего воздействия Qb найдем программные значения обобщенных координат Qi пр = ((2(0 4“ Заметим, что #1Пр = #/ тр только при Q^t) = 0. Следовательно, в начальный и конечный моменты #/пр будет меняться скачком. Может показаться, что такой подход соответствует шагу назад - отказу в некоторой степени от положительных свойств замкнутой системы регулирования с внесением дополнительной ошибки ^1Пр(0- ?1Тр(0 в составленную на уровне планирования движений программу. Однако это не так. Подход имеет смысл для быстрых интенсивных движений робота, когда моменты, развиваемые двигателями, близки к предельно допустимым, и, конечно, при хорошем соответствии начальных условий системы про- граммным. Кроме того, следует иметь в виду, что при медленных движе- ниях, когда усилия приводов малы, малыми будут и рассогласования между требуемыми <7<тр(0 и программными qinp(t) значениями обобщенных ко- ординат. Следовательно, дополнительно вводимая ошибка будет невели- ка, а при остановках системы она будет равна нулю. ЛИТЕРАТУРА 1. Акуленко Л.Д., Болотник Н.Н., Каплунов А.А. Оптимизация режимов управления манипуляционными роботами. (Препринт ИПМ АН СССР, № 218. М., 1983. 72 с.) 2. Альбер г Дж., Нильсон Э., Уолш Дж. Теория сплайнов и ее приложения. М.: Мир, 1972. 342 с. 3. Бахвалов Н.С. Численные методы. Т. 1. М.: Наука, 1973. С. 631. 4. Болотник Н.Н., Каплунов А.А. Оптимальные прямолинейные перемещения груза при помощи двухзвенного манипулятора// Изв. АН СССР. Техн, кибернетика. 1982. № 1. С. 71-78. 192
5. Болтянский В.Г. Математические методы оптимального управления. М.: Наука, 1966. 308 с. 6. Бухгольц Н.Н. Основной курс теоретической механики. Ч. 2. М.: ОНТИ, 1937. 223 с. 7. Голдстейн И. Классическая механика. М.: Гостехтеоретиздат, 1957. 408 с. 8. Демидович Б.П., Марон И.А. Основы вычислительной математики. М.: Наука, 1966. 664 с. 9. Зенкевич С.Л., Ющенко А.С. Управление роботами. Основы управления манипуля- ционными робототехническими системами. М.: МВТУ, 2000. 400 с. 10. Игнатьев М.Б., Кулаков Ф.М., Покровский А.М. Алгоритмы управления роботами- манипуляторами. Л.: Машиностроение, 1972. 247 с. 11. Кобринский А.Е., Степаненко Ю.А. Некоторые проблемы теории манипуляторов// Тр. I Симпозиума по теории и принципам устройств манипуляторов. М.: Наука, 1967. С. 15- 22. (Механика машин; Вып. 7/8.) 12. Кобринский А.А., Кобринский А.Е. Манипуляционные системы роботов: Основы устройства, элементы теории. М.: Наука, 1985. 344 с. 13. Козлов В.В., Макарычев В.П., Тимофеев А.В., Юревич Е.И. Динамика управления роботами. М.: Наука, 1984. 336 с. 14. Крутько П.Д., Попов Е.П. Кинематические алгоритмы управления движением манипуляционных роботов // Изв. АН СССР. Техн, кибернетика. 1979. № 4. С. 77-86. 15. Курант Р., Гильберт Д. Методы математической физики. Т. 1. М.: ГГГИ, 1933. 525 с. 16. Лурье А.И. Аналитическая механика. М.: Физматгиз, 1961. 824 с. 17. Мак-Кракен Д., Дорн У. Численные методы и программирование на Фортране. М.: Мир, 1977.584 с. 18. На Ц. Вычислительные методы решения прикладных граничных задач. М.: Мир, 1982. 296 с. 19. Парс Л. Аналитическая динамика. М.: Наука, 1971. 312 с. 20. Подиновский В.В., Ногин В.Д. Парето-оптимальные решения многокритериальных задач. М.: Наука, 1982. 254 с. 21. Пол Р. Моделирование, планирование траекторий и управление движением робота- манипулятора. М.: Наука, 1976. 104 с. 22. Попов Е.П., Верещагин А.Ф., Зенкевич С.Л. Манипуляционные роботы. Динамика и алгоритмы. М.: Наука, 1978. 400 с. 23. Тимофеев А.В. Управление роботами. Л.: Изд-во ЛГУ, 1986. 240 с. 24. Тывес Л.И., Маркевич С.В. Управление движением робота по собственной траектории. М., 1985. 38 с. (Препр. / ИМАШ АН СССР.) 25. Тывес Л.Т., Маркевич С.В. Планирование движений роботов с учетом динамических свойств исполнительных устройств. М., 1985. 71 с. (Препр. / ИМАШ СССР.) 26. Тывес Л.И., Маркевич С.В. Планирование движений робототехнических систем с учетом собственных динамических свойств // Автоматизация эксперимента в динамике машин. М.: Наука, 1987. С. 113-125. 27. Тывес Л.И., Маркевич С.В. О преимуществах реализации управляемых движений робототехнических систем по собственным траекториям // Пробл. машиностроения и надежность машин. 1994. № 2. С. 75-83. 28. Уитни Д.Е. Математические основы координатного управления протезами и манипуляторами // Тр. Амер, о-ва инженеров-механиков. Динам, системы и управление. М.: Мир, 1972. Т. 94, № 4. С. 19-27. 29. Черноусько Ф.Л., Болотник Н.Н., Градецкий В.Г. Манипуляционные роботы: Динамика, управление, оптимизация. М.: Наука, 1989. 363 с. 30. Шмит Д., Сони А.Х., Сринивасан В., Наганазен Г. Программирование оптимального движения роботов-манипуляторов // Конструирование и технология машиностроения. М.: Мир, 1985. Т. 107, № 2. С. 242-248. 31. Bobrow J.E., Dubowsky S., Gibson J.S. Time-optimal control of robotic manipulators along specified paths // Intern. J. Robotics Res. 1985. Vol. 4, N 3. P. 3-17. 32. Shiller Z., Dubowsky S. Robot path planning with obstacles, actuator, cripper and pay load constraints // Ibid. 1989. Vol. 8. N 6. P. 3-18. 7. Корендясев А.И. Кн. 2 193
Глава 12 МОДЕЛИ СИСТЕМ ОЧУВСТВЛЕНИЯ РОБОТОВ, ПРОЦЕССОВ ОБРАБОТКИ ИНФОРМАЦИИ И ПРИНЯТИЯ РЕШЕНИЙ 12.1. АДАПТАЦИЯ В РОБОТОТЕХНИЧЕСКИХ СИСТЕМАХ. ПРОБЛЕМА РЕАЛЬНОГО ВРЕМЕНИ В терминах "робот" и "искусственные органы чувств" явно просматри- вается сравнение с человеком, стремление оснастить механическую руку сенсорными системами, воспринимающими информацию о внешней среде. Однако это не означает, что разработчики хотят расширить двигательные и информационные возможности робота до уровня человека. Оснащение робота искусственными органами чувств преследует практические цели, вытекающие из требования рационального, экономически наиболее оправданного выполнения автоматизированных технологических операций, а именно: 1) сократить номенклатуру и количество специальной технологической оснастки, стоимость которой в робототехнических комплексах составляет в среднем до 40% от стоимости робота; повысить гибкость робота, приспо- собляемость его к новой номенклатуре изделий и операций, особенно в изменяющихся производственных условиях; 2) расширить спектр роботизируемых технологических операций, вклю- чив в него такие "тонкие" процессы, как сборка изделий с малыми зазорами, контрольные операции, сварка, абразивная зачистка, разбор навала, кассетирование и т.д.; 3) улучшить качество и надежность выполняемых операций за счет повышения устойчивости робототехнического комплекса к возмущениям, обусловленным неточным расположением деталей и оснастки, колебаниями режимов и параметров технологического процесса. При оснащении механической системы датчиками система приобретает адаптивные свойства. Будем различать адаптивность к внутреннему со- стоянию машины и адаптивность к внешней среде, в которой функциони- рует машина. Адаптивность первого типа, как правило, направлена на совершенст- вование самого робота, действующего как бы в свободном пространстве, безотносительно к конкретной технологической задаче, которую он выполняет. При этом за счет использования информации о текущем состоянии отдельных механизмов двигательной системы или о результатах выполнения отдельных элементов цикла движений может быть уточнена 194
управляющая модель самого робота и за счет этого улучшены его абсолютные характеристики, такие как точность позиционирования, быстродействие, электропотребление и т.д. Именно так решались задачи определения геометрических и жесткостных параметров руки (см. гл. 7) и управления рукой робота по упрощенным динамическим моделям (см. гл. 10). Требования к программе движений и действий робота, которую составляет оператор для выполнения конкретной технологической операции, для роботов с внутренней адаптацией такие же, как и к программе движений и действий традиционных, жестко программируемых машин. Оператор должен полностью определить все связи робота с внешними объектами: координаты позиций обслуживания, времена выстоя в этих позициях, последовательность переходов, моменты срабатывания захвата и т.д. Исходная программа и зависимости, заложенные в систему управления (например, законы разгона и торможения, интерполяция и формирование траекторий), составляют полное информационное описание двигательной задачи. Таким образом, в традиционных машинах все элементы, необходимые для выполнения двигательной задачи, известны заранее (до начала движения) или могут быть получены с помощью вычислительных процедур без привлечения дополнительной информации от датчиков внешней среды. Для систем, адаптивных к внешней среде, рассматриваемых в настоящей главе, характерно неполное описание задачи, т.е. исходная программа движений робота в той или иной степени недоопределена. Эта нехватка информации в исходной программе компенсируется путем опроса датчиков внешней среды и обработки полученных сигналов с целью выделения недостающей информации. Поэтому такие робототехнические устройства отличаются практически важными особенностями. С одной стороны, для функционирования они используют информацию о фактическом состоянии внешней среды в текущий момент времени, а не о предполагаемом, зафиксированном на этапе программирования, а с другой - отличаются меньшим объемом требуемой исходной информации. Именно первая особенность (использование информации о текущем состоянии внешней среды) позволяет роботу приспосабливаться к изменяющимся условиям технологического процесса. Следует заметить, что при расположении датчиков на руке робота получаемая информация характеризует состояние внешней среды относительно фактического положения руки. Поэтому в рассматриваемых системах достигается адаптация как к погрешностям расположения объектов в зоне движения робота, так и к погрешностям положения исполнительного звена самого робота. Вторая особенность (уменьшенный объем требуемой исходной информации) позволяет понизить требования к исходной программе движений и к квалификации оператора, а также сократить время подготовки управляющих программ. Это качество в свете современных требований к быстро переналаживаемым гибким производствам особенно ценно. При достаточной сенсорной оснащенности вся управляющая 7* 195
программа уменьшается до уровня целеуказания, а достижение этой цели обеспечивается автоматически. Сенсорная система и ее математическое обеспечение составляют ’’интеллект” робота. Чем он богаче, тем проще управляющая программа и выше универсальность робота. Схема экспериментальной робототехнической установки [57], отражающая уровень работ в области систем очувствления и обработки сенсорной информации, описана в гл. 2 (см. рис. 2.9). Обилие сенсорики приводит к необходимости использования в системе управления мощных вычислительных средств. Опыт разработки и использования различных сенсорных систем показал, что, несмотря на возросшее быстродействие современных компьютеров, основной проблемой, препятствующей широкому распространению ’’квалифицированных" систем очувствления, в частности систем технического зрения, является проблема реального времени. Данная проблема заключается в том, что большой объем информации, доставляемой датчиками, обрабатывается современными компьютерами в течение времени, которое часто соизмеримо, а иногда и превышает время выполнения двигательных актов. Так как роботы, как правило, являются вспомогательным оборудованием, то вследствие указанного, они начинают сдерживать основное технологические оборудование, снижая производительность автоматизированного комплекса. До настоящего времени не существует общих методов проектирования сенсорных систем и выбора алгоритма обработки информации, обеспечивающих получение недостающей информации для выполнения управляющей программы за минимальное время. При создании системы разработчики опираются в основном на изобретательность, интуицию и опыт. В настоящем разделе мы попытаемся, не претендуя на полноту охвата всевозможных вариантов систем очувствления, на основании наиболее полных обзоров [17, 23, 36, 37] дать читателю представление о конструкции датчиков, их организации в сенсорные системы для решения "типовых" робототехнических задач. При этом постараемся показать влияние этих факторов на алгоритмы обработки информации и время вычислений, проанализировать описанные ниже известные технические решения с точки зрения использования информации, и на основании такого анализа дать некоторые общие рекомендации, способствующие решению проблемы реального времени. 12.2. СХЕМЫ ПОСТРОЕНИЯ ДАТЧИКОВ И СИСТЕМ ДАТЧИКОВ Датчики и устройства первичной обработки информации (фильтры, аналого-цифровые преобразователи и т.п.) образуют самый нижний уровень системы очувствления робота - уровень "ощущений". Информа- ционные возможности системы очувствления адаптивного робота на уровне ощущений зависят от числа и типа используемых датчиков, физическая природа которых может быть различна. Датчики могут осуществлять как 196
дискретные, так и непрерывные измерения; они могут быть сосредоточены в отдельных местах рабочего объема, либо рассредоточены по элементам робота и обслуживаемого им оборудования. Датчики состояния внешней среды принято разделять на тактильные и локационные. Тактильные датчики используют для регистрации физического контакта (усилия, соприкосновения) объектов со схватом или с заранее организованными поверхностями внешней среды. При установке таких датчиков на схвате робота информацию о среде собирают в процессе движений, обеспечивая взаимодействие с объектом, заданное технологичес- кими условиями. Информацию об объектах обычно получают в системе координат, связанной с механической рукой. Локационные датчики, включая сенсоры систем технического зрения, позволяют определить местоположение объектов бесконтактным спосо- бом. Их, как правило, используют для управления региональными дви- жениями схвата и его ориентацией по отношению к системе координат, связанной с окружающей средой. Получение информации от таких датчиков обычно предшествует выполнению целенаправленных двига- тельных актов. При информационном анализе систем очувствления удобно разделить применяемые в роботах датчики на следующие классы. 1. Логические датчики состояния, которые дают информацию в виде "да-нет", "включено-выключено" и т.п. В зависимости от решаемой задачи такие датчики могут быть установлены отдельно или группами. Условно назовем их двухпозиционными. 2. Датчики, которые дают информацию, пропорциональную измеряе- мой величине независимо от того, изменяется эта информация непрерывно или дискретно. Эти датчики назовем пропорциональными. Условность такого разделения определяется тем, что часто пропорцио- нальные по своей физической природе датчики используют в качестве двухпозиционных, сравнивая в устройстве первичной обработки текущее значение сигнала с датчика с некоторым заранее заданным порогом. Если значение сигнала меньше порогового, то датчик неактивизирован, его значение "О", если значение сигнала больше порогового, то датчик акти- визирован, его значение "1". Например, многоградационные системы очувствления на основе телекамер можно рассматривать как совокупность пропорциональных датчиков, каждый из которых выдает код, про- порциональный освещенности объекта в данной точке, а при наличии по- рога, или при использовании ПЗС-камеры, - как совокупность двухпози- ционных датчиков, каждый из которых регистрирует наличие или отсутствие объектов в данной точке пространства. При информационном подходе телекамера, представляющая собой матрицу чувствительных элементов (каждый элемент измеряет освещен- ность в определенной точке рабочего пространства), дискретное поле на ультразвуковых элементах и матрица из пропорциональных датчиков перемещений, предназначенная для определения формы локальной поверх- ности [10], образуют один класс систем очувствления. Информацию, полу- ченную от этих датчиков, после соответствующей обработки можно ана- лизировать по одному и тому же алгоритму. 197
12.2.1. Двухпозиционные датчики проскальзывания Существует множество конструкций датчиков, действие которых основано на различных физических эффектах. В принципе все известные датчики [1, 30, 38] можно успешно использовать в робототехнике. В настоящем разделе мы остановимся на некоторых оригинальных конструкциях, которые еще недостаточно полно описаны в технической литературе и которые были созданы для решения специфических задач робототехники. В частности, требование надежно удерживать объект в схвате обусловило появление группы специальных датчиков проскаль- зывания. Одна из оригинальных конструкций датчика [42] представляет собой шар из немагнитного материала, установленный в сферической полости одной из губок схвата. В теле шара укреплены магнитные штифтьц. а в корпусе губки - считывающая магнитная головка. Проскальзывание объекта относительно губок сопровождается проворотом шара, штифты движутся мимо головки, которая генерирует электрические импульсы. Направление проскальзывания можно определить с помощью датчика, схема которого представлена на рис. 12.1. Использован электропроводящий диск 7, к которому прикреплен щуп 2. Под диском 7 равномерно по окружности распределены 16 контактных точек 3. Щуп касается шара 4, поверхность которого имеет впадины. Проскальзывание объекта вызывает поворот шара в опоре 5. При этом отклоняется щуп 2, и замыкаются один или группа соседних контактов 3. Номера задействованных контактов опре- деляют направление проскальзывания. Впадины на шаре вызывают пре- рывание контакта. В результате на выходе получают последова- тельность импульсов, число которых характеризует величину, а частота - скорость проскальзывания. Сигналы обрабатываются микропроцессором. Для проверки наличия предмета в схвате, а также для "нащупывания" объектов применяют датчик [83], вы- полненный в виде легкого упругого щупа (рис. 12.2), который может вы- двигаться пневмосистемой при поиске объекта, и убираться при выполнении манипуляций с объектом. При сопри- косновении с объектом щуп откло- нится, замкнув один из контактов сег- ментированного кольца. Номер сег- мента определит здесь направление, в котором расположена граница объекта. Рис. 12.1. Датчик проскальзывания 1 - электропроводящий диск; 2 - щуп; 3 - контактные точки; 4 - шар; 5 - шаровая опора 198
7 6 Рис. 12.2. Датчик наличия объекта с пневмоприводом 1 - щуп; 2 - датчик давления; 3 - источник питания; 4 - управляющее устройство; 5 - клапан, 6 - камера высокого давления; 7 - камера низкого давления; А - контакт сегментированного кольца Рассмотренные датчики проскальзывания и контакта с объектом регистрируют состояние взаимодействия схвата и среды. Изменение сигнала, поступившего от датчика, вызывает программу реакции робота на данное изменение состояния. В принципе такой сигнал не требует ка- кой-либо серьезной математической обработки. Для более сложных задач, в частности для определения формы и положения объекта, в ра- бочем объеме робота или на его схвате устанавливают сетку дат- чиков. При использовании двухпозиционных датчиков необходимая инфор- мация содержится в полном двоичном массиве, доставляемом матрицей чувствительных элементов. Из этого массива с помощью математических методов необходимо выделить информацию о типе объекта (это опреде- лит дальнейшую стратегию поведения робота) и о его ориентации и координатах центра тяжести (это определит координаты позиции, в кото- рую должен выйти схват). Именно на переход от исходного двоичного мас- сива сенсорной информации к небольшому набору данных, необходимых для доопределения исходной программы, и затрачивается основное время вычислителя. В данном случае решение проблемы реального времени зависит от того, насколько удачно будут решены основные этапы алгоритма обработки информации. Требования к алгоритмам и основные этапы обработки информации для решения задач идентификации объекта изложены ниже. Здесь только отметим, что обычно для решения таких задач используют системы технического зрения на основе телекамер. Основной недостаток таких систем - повышенный уровень помех в связи с неравномерностью освещенности и возникающими тенями. Фильтрация помех - один из основных этапов обработки информа- ции, на который затрачивается существенная доля рабочего времени 199
процессора. Это заставляет многих исследователей искать оригинальные технические решения матричных сенсорных систем, лишенных указанного недостатка. Ниже рассмотрены наиболее интересные из этих решений. 12.2.2. Матричные сенсорные системы на основе двухпозиционных и пропорциональных датчиков Обычно матричный сенсор образуют соединением двухпозиционных или пропорциональных датчиков, расположенных по прямоугольной сетке. Положение каждого датчика определяется его адресом, т.е. номерами строки и столбца, на пересечении которых он находится. Совокупность адресов задействованных датчиков (имеющих состояние "1") несет информацию о форме, положении и ориентации объекта, с которым контактирует датчик. Тактильные матричные датчики можно разделить на игольчатые и типа "искусственная кожа". Игольчатые датчики образованы матрицей из игл, каждая из которых перемещается по своей направляющей. На рис. 12.3, а показана конструкция [51], в которой иглы, контактирующие с объектом, замыкают гибкую металлизированную мембрану с соответствующим эле- ментом матрицы контактов. В результате датчик выдает двоичный сигнал. В ряде конструкций перемещение игл регистрируется с помощью пропорциональных датчиков или как сумма дискретных перемещений [68, 70]. Тогда разность в длине игл при контакте с объектом позволяет восстановить его рельеф (рис. 12.3, б). В работе [79] описан датчик для схвата робота, содержащий две матрицы по 8x10 игл в каждой (рис. 12.3, в). Если регистрировать величину раскрытия схвата, то такой датчик позволяет получить информацию о форме объекта. В основе действия датчиков типа "искусственная кожа" лежат свойства упругих полимеров [53]. Датчики могут быть реализованы на контактных устройствах или на свойстве электропроводящего полимера менять свое сопротивление в зависимости от деформации при приложении нагрузки. На рис. 12.4, а,б представлены различные конструкции одного элемента датчика контактного типа. Объект устанавливают на поверхность, образованную выступами датчиков, покрытых упругим полимером 7. Под действием усилия F взаимодействия с объектом деформируется упругая металлическая мембрана 2, замыкая контакты 3 и 4. На рис. 12.4, в приведен датчик [33], в котором электропроводящая резина 7, находящаяся между электродами 2 и 3, меняет свое сопротивление под действием приложенной силы. По изменению тока, проходящего по контуру, судят о наличии или отсутствии детали по адресу данного элемента. Во многих случаях для организации матричной сенсорной поверхности элементарные датчики объединяют общими электродами. При этом обычно обеспечивается матричный опрос состояния сенсора, что умень- шает время регистрации его состояния и число выходных проводников. Одна из первых конструкций [42] такого типа представлена на рис. 12.5, а. Датчик построен по принципу "сэндвич". Он состоит из двух взаим- но перпендикулярных прямолинейных рядов тонких плоских электродов, 200
a Рис. 12.3. Схемы игольчатых матричных сенсоров а - схема на основе двухпозиционных датчиков; б - схема на основе пропорциональных датчиков; в - компоновка сенсора в губках захвата робота 201
a Рис. 12.4. Матричные сенсоры типа "искусственная кожа" с изолированными электродами на основе контактных датчиков (а, б) и на основе электропроводящего полимера (в) разделенных слоем электропроводящего полимера. Если к электродам приложить напряжение, то в контуре потечет ток. Под действием нагрузки сопротивление полимера изменяется, что может быть зарегистрировано как логическая единица (”Г) по адресу соответствующего элемента. Центр каждого чувствительного элемента находится в точке пересечения элек- тродов. В описываемой конструкции электроды шириной 2 мм, разделен- ные зазором в 2 мм, образуют чувствительный элемент 4x4 мм. Другой вариант искусственной кожи [42] образован отдельными электродами 1 (рис. 12.5, б) и общим электродом-матрицей 2, состоящим из небольших квадратных "окон”. Размер окна равен размеру чувствительно- го элемента. Электроды вставлены в поверхность из стекловолокна 3. Под 202
Рис. 12-5. Матричные сенсоры типа "искусственная кожа" с общими электродами типа "сэндвич" (л) и на основе чувствительных "окон" (б) действием давления на проводящий полимер 4, покрывающий чувстви- тельную поверхность, изменится ток между электродами 7 и 2. Датчик содержит 4x8 элементов на площади 12 х 24 мм2. Можно регистрировать давление в диапазоне 2-50 Н/м2. Недостатками рассмотренных конструкций матричных сенсоров, препятствующими их распространению, являются несовершенство электропроводящих полимеров (нелинейность характерис- тики, гистерезис), а также "размытость" пятна контакта и относительно низкая чувствительность. Лучшими характеристиками обладают матричные сенсоры, действие которых основано на пьезоэффекте. Одна из первых конструкций такого 203
Рис. 12.6. Матричный сенсор на пьезоэлектрических датчиках типа [59] представляет со- бой совокупность регуляр- но расположенных пьезо- электрических кристаллов, погруженных в эластич- ный полимер (рис. 12.6). При приложении нагрузки к кристаллу на его выхо- дах изменится напряжение. Изменяя пороговое напряжение, можно фиксировать превышение удельно- го давления над некоторой неизменяемой величиной и получать при этом силовые отпечатки объекта, близкие к эквидистантным. В последних разработках пьезоэлектрических матричных датчиков в основном используют новые гибкие полимерные пьезопленки [46, 64, 65]. Поливинилфторид в силу своих упругих и пьезоэлектрических свойств привлекает особое внимание. Данный полимер серийно выпускается в виде металлизированной фольги толщиной от 10 мкм до 1 мм. Схема матричного датчика на основе пьезоэлектрической пленки поливинилфторида пред- ставлена на рис. 12.7, я. Эластичный слой Общий электрод Пленка поливинилфторида Слой клея Печатная плата с контактами Основа Рис. 12.7. Матричные сенсоры на основе пьезопленки поливинилфторида (а) и со встроенными микросхемами и процессором (6) 204
Пьезоэлементы Рис. 12.8. Матричный сенсор с ультразвуковыми чувствительными элементами (а) и блок- схема системы управления сенсором (б) Миниатюризация электронных элементов и новые технологии их изготовления позволили создавать многослойные интегральные структуры, которые объединяют в одной конструкции или элементе (модуле) непосредственно чувствительный элемент и электронные устройства, обеспечивающие первичную обработку сигналов. Такие сенсоры получили 205
название ’’интеллигентных” [55]. Типичным примером является много- слойная матрица [71], представленная на рис. 12.7, б, верхний слой которой изготовлен из электропроводящего полимера, изменяющего сопротивление под действием нагрузки. Затем следует матрица металлических электродов и далее - залитый набор интегральных схем для фильтрации сигналов и преобразования аналогового сигнала в цифровой. В жесткой кремниевой обложке сенсора устанавливают микропроцессор для последовательной обработки и передачи информации с отдельных элементов матрицы. В результате матричный сенсор обладает повышенной надежностью, поме- хоустойчивостью и связан с системой управления роботом только одним каналом. Для построения матричных датчиков нашел применение также обрат- ный пьезоэлектрический эффект, когда при приложении высокочастотного переменного напряжения пьезокристалл начинает генерировать ультра- звуковые колебания. Один из вариантов такого датчика, реализующий эхо- импульсный метод ультразвуковой локации, представлен на рис. 12.8, а. Ультразвуковые преобразователи образуют информационную поверх- ность, на которую могут поступать объекты работы робота. Объект мо- жет перекрывать некоторое число преобразователей. Зная адреса перекрытых преобразователей, можно получить информацию о площади и конфигурации основания объекта. Сенсор позволяет также определять и третью координату - высоту объекта в точке по заданному адресу. Для этого на ультразвуковые преобразователи последовательно посту- пают зондирующие импульсы - короткие импульсы (< 1 мкс) большой амплитуды (100-150 В). Возбужденные этим импульсом преобразователи посылают ультразвуковую волну. Волна распространяется в детали и, достигнув препятствия в виде границы двух сред (например, верхняя по- верхность объекта), отразится от него. Отраженные ультразвуковые колебания будут восприняты тем же преобразователем, что приводит к появлению эхо-импульса на его выходе. При известной скорости распространения ультразвуковых колебаний в материале объекта (в) его высота (z) в данной точке определяется соотношением z = ги/2, где t- интервал времени между подачей зондирующего импульса и появлением эхо-импульса. Блок-схема, по которой можно судить об объеме электронной аппара- туры для управления описанным сенсором, представлена на рис. 12.8, б. Зондирующие импульсы от генератора поступают последовательно на пьезодатчики через коммутатор. Одновременно зондирующий импульс поступает на триггер, формируя на его выходе сигнал повышенного уровня. Эхо-импульс после усиления также поступает на триггер, сбрасывая указанный сигнал. Таким образом, длительность выходного сигнала триггера пропорциональна высоте z объекта в точке по адресу х, у, определяемому коммутатором. Для преобразования этой длительности в цифровой код импульс триггера открывает ключ, через который на вход соответствующего счетчика, подключенного коммутатором, от высокочастотного генератора поступают счетные импульсы, накопленное число которых до появления эхо-импульса пропорционально высоте объекта. 206
Преобразователи и счетчики подключаются на время^ определенное максимально допустимой высотой объекта. В отсутствие эхо-импульса (объекта в данной точке нет) счетчики переполняются. Сигнал переполнения используется для сброса счетчика и для коммутации следующих датчика и счетчика. Из блоков 4x4 ультразвуковых элементов создан матричный датчик, содержащий 1024 элементов, образующих чувствительную поверхность 160 х 160 мм2. Сенсор позволяет работать на высоких частотах зондирующих импульсов (106-109 Гц), что определяет его быстродействие. Дополнительное преимущество заключается в том, что очувствленный робот, оснащенный таким сенсором, при необходимости может производить контроль по размерам и скрытым технологическим дефектам материала деталей (например, выявлять наличие трещин и раковин). 12.2.3. Силомоментные сенсоры-фильтры и сенсоры-смесители. Схема построения сенсора-фильтра Объем информации от пропорционального датчика в систему управления роботом значительно превышает объем информации от двух- позиционного датчика. Если двухпозиционный датчик является дискретным элементом с двумя состояниями, то пропорциональный датчик можно представить дискретным элементом, у которого число состояний d/Д, где d - диапазон измерений, Л - чувствительность датчика. Большое многообразие пропорциональных датчиков обусловлено тем, что они построены на различных физических эффектах. Некоторые из таких датчиков были описаны выше (их двухпозиционность достигается введением порогового элемента). В настоящем разделе остановимся только на построении на базе пропорциональных датчиков силомоментных сенсоров - многокомпонент- ных измерительных устройств. В силу потребности измерения и управления силовыми параметрами взаимодействия исполнительного органа со средой возникла необходимость разработки новых оригинальных конструкций силомоментных датчиков и сенсоров на их основе [18, 36, 37, 66]. Более того, конструкции этих сенсоров в значительной степени определяют алгоритм обработки получаемой информации, а соответственно, и быстродействие системы. Наибольшее распространение в робототехнике получили силомомент- ные тензорезисторные датчики. Они представляют собой тензосопро- тивления, наклеенные на упругие элементы конструкции руки и объе- диненные по мостовой схеме. Можно выделить две крайние стратегии в разработке силомоментных сенсоров. Одна из них - построение отдельных модулей, измеряющих с высокой точностью только одну компоненту многокомпонентной нагрузки в какой-либо системе декартовых координат. Каждый модуль представляет собой датчик-фильтр, поскольку он отфильтровывает все остальные компоненты нагрузки. Последовательное соединение таких модулей в 207
сборную конструкцию позволяет практически без дополнительной обработки (вычислений) получать конечный результат. Вторая крайняя стратегия связана с построением упругих конструкций параллельной топологии, оснащенной чувствительными элементами, каждый из которых реагирует на все или на несколько компонент многокомпонентной нагрузки. Такой сенсор будем называть сенсором- смесителем. Для получения значений компонент необходимо пересчитывать показания, полученные со всех чувствительных элементов. Каждый подход имеет свои недостатки и преимущества. Сенсоры- фильтры, как правило, несовершенны по своей точности вследствие огра- ничения фильтрующих свойств каждого датчика. Устранение взаимо- влияния между чувствительными элементами обеспечивается конструк- тивно и существенно зависит от точности изготовления датчика. Сенсоры- смесители несколько точнее, поскольку взаимовлияние учитывается в алгоритме пересчета информации, поступившей от элементов, но тре- буется больше времени для ее обработки. Следует отметить одну важную особенность всех конструкций сило- моментных сенсоров: так как эти сенсоры представляют упругую конструк- цию, устанавливаемую обычно между схватом и последним звеном руки, то при проектировании всегда должен достигаться компромисс между податливостью, обеспечивающей чувствительность датчика, и структурной жесткостью, уменьшающей ошибки позиционирования. Рассмотрим модуль, реализованный в ряде силомоментных сенсоров фирмы IBM [83]. Его основная часть - упругая балка (рис. 12.9, а), де- формацию которой измеряют тензорезисторы. Балка обладает избира- тельностью, поскольку деформации под действием продольной силы много меньше деформаций под действием изгибающего момента. Вытянутая форма поперечного сечения обеспечивает механическую избирательность только к одному боковому изгибающему моменту. Четыре полупровод- никовых тензорезистора, из которых два установлены на верхней, и два - на нижней поверхности балки, образуют электрический мост сопротивлений. Выходное напряжение этого моста будет прямо пропорционально дефор- мации балки и, следовательно, изгибающему моменту. Если необходимо определять не только силу сжатия, но и точку приложения силы, можно использовать измерительную систему из двух таких модулей, последовательно соединенных промежуточным блоком (рис. 12.9, б). Тензорезисторы, укрепленные на упругих пластинах этих модулей, измеряют деформации, пропорциональные изгибающим моментам МА и Мв. Моменты созданы силой F и отличаются между собой на величину Fd, где d = 1А- 1В - расстояние между модулями. Зная показания тензорезисторов и величину d, можно вычислить силу F = (Мв - M^/d, и расстояние до точки приложения силы I = MAdl(MB - МА). С промежуточным блоком, как показано на рис. 12.9, б, жестко связаны две защитные пластины, предотвращающие разрушение измерителей под действием перегрузки и увеличивающие диапазон работы датчика. При малой нагрузке защитные пластины не будут контактировать с блоком измерения силы, и датчик сможет измерять нагрузку <10-2Н. При большой силе защитные пластины будут контактировать с блоком измерения силы, 208
принимая на себя ее бблыпую часть. При этом несколько снижается чувст- вительность датчика. Датчик способен измерять силу от 10”2 до 15 Н, вли- яние других компонент нагрузки на его показания составляет не более 1%. Для измерения всех необходимых компонент силы и момента был разработан шестистепенной силомоментный сенсор-фильтр, использующий описанный стандартный одностепенной модуль. Эта сенсорная система (рис. 12.10) характеризуется взаимозаменяемостью модулей, технологич- ностью и низкой стоимостью. Неисправный модуль может быть легко заменен другим. Достоинство модульной конструкции заключается также в возможности собирать датчики различной конфигурации на любое число измеряемых компонент. Ортогональность структуры датчика упрощает расчет сил и моментов по показаниям тензорезисторов. Обозначим показания каждого из модулей соответственно s2,..., s6. Эти показания зависят от сил и моментов, действующих со стороны объекта (см. рис. 12.10) 5i = ^(zT -Zj) + Му, s2 = Fx(zT-z2) + My, s3 = Fy{zx-z3) + Fz(yy-y3) + Mx, s4 = Рх(ут-у4) + Мх, (12.1) 55 = Fy(ZT ~Z5^ + Mz’ S6= Fy<Zr - Z6> + a Рис. 12.9. Чувствительный элемент силомоментного датчика (а) и модуль для измерения двух компонент нагрузки (б) 7 - упругая балка; 2 - тензорезистор; 3 - защитные упругие пластины 209
где ут, zT- координаты точки приложения силы, у, zz- координаты i-ro модуля. При решении системы (12.1) определяют компоненты нагрузки. Формулы просты, но уже свидетельствуют об условности классификации фильтров-смесителей. 12.2.4. Силомоментные сенсоры-смесители, построенные по ортогональной схеме К сожалению, многокомпонентные сенсоры-фильтры слишком гро- моздки. Поэтому в робототехнике широко применяют сенсоры-смесители. Схемы многих из них, особенно при ограниченном числе измеряемых ком- понент, близки к схеме сенсора-фильтра. Как правило, сохраняются орто- гональность расположения чувствительных элементов и однотипность воспринимаемого вида деформаций. Явное отличие заключается в пре- вышении числа чувствительных элементов над числом измеряемых компонент нагрузки. В качестве примера на рис. 12.11, а приведена схема сенсора, уста- новленного на роботе Hi-T-Hand фирмы Хитачи (Япония). Датчик измеряет 210
три компоненты силы, но имеет четыре чувствительных элемента, размещенных на плоской крестообразной пружине. Центр пружины прикреплен к руке робота, внешние края - к круглому фланцу на схвате. Фактически датчик измеряет не боковые силы, а изгибающие моменты, вызванные эксцентриситетом приложения боковых сил [52]. Близкий по схеме сенсор (рис. 12.11, б) предложен в работе [66]. Он устанавливается в запястье механической руки и представляет собой четыре крестообразно расположенные упругие балки, жестко связанные со схватом. В наружном кольце на сферических опорах установлены балки с возможностью их свободного перемещения вдоль своих осей. Деформация каждой балки измеряется с помощью четырех тензорезисторов, установленных на противоположных сторонах балки в сечении, близком к жесткой заделке. Основной недостаток описанного сенсора - гистерезис, обусловленный трением в подвижных опорах. Этот недостаток в значительной степени устранен в конструкции, представленной на рис. 12,11, в [77]. Вмес- то шаровой опоры внешние концы балок укреплены в тонких опорных Рис. 12.11. Трехкомпонентные силовые сенсоры-смесители 1 - упругий элемент; 2 - тензорезистор; 3 - опорный элемент 211
Рис. 12.12. Шестикомпонентные силовые сенсоры-смесители, построенные по ортогональ- ной схеме пластинах, податливых в радиальном направлении. Пластины отделены от фланцев прорезями. Поэтому каждая упругая балка может легко перемещаться в осевом направлении, как в поступательной паре, но без трения скольжения. Сенсор не имеет составных элементов и полностью выполнен монолитно из дюралюминия. Шестикомпонентные датчики имеют более сложную конструкцию. Сенсор [47], представленный на рис. 12.12, а, выполнен в виде кольца- основания, соединенного четырьмя радиальными упругими балками с центральной площадкой, которая, в свою очередь, связана с нагрузочным фланцем аналогичными балками с тензометрами, измеряющими дефор- мацию от сил, действующих в плоскости, параллельной основанию. Сигналы с выходов восьми тензометрических мостов после 1000-кратного усиления обрабатываются микропроцессором. В результате получают 6 компонент нагрузки. Схема еще одной распространенной конструкции шестикомпонентного сенсора приведена на рис. 12.12, б [75]. Она представляет собой ажурно выфрезерованные втулки, собранные на крестообразном подвесе. Каждая из втулок измеряет по три компоненты усилия. Втулка обработана так, чтобы образовать упругие балки, работающие на изгиб. Всего в сенсоре на эти балки наклеено 8 пар тензорезисторов. Оставив вне обзора еще ряд оригинальных конструкций силомоментных датчиков [36], отметим одну важную особенность. Во всех датчиках в качестве "наследства" от сенсоров-фильтров осталась ортогональность 212
расположения чувствительных элементов. Как показано ниже это условие выполнять совсем не обязательно. Более того, описанная ниже методика позволяет выйти на конструкции сенсоров-смесителей, алгоритмы обработки информации с которых по числу необходимых операций и по быстродействию близки к алгоритму типа (12.1) для сенсоров-фильтров. 12.2.5. Методика тарировки сенсора-смесителя и определения компонент нагрузки Определение зависимостей для расчета компонент нагрузки по показаниям отдельных чувствительных элементов сенсора обычно связано с экспериментальной тарировкой каждого сенсора [37]. Один из способов получения этих зависимостей сводится к следующему [48]. Задается система декартовых координат 0т|4£> связанная со звеном руки робота, к которому присоединяется сенсор со схватом. В соответствии с законом Гука в линейной области зависимость между деформациями S,(i = 1.2,..., п) упругих элементов и вектором нагрузки F = [F^F^F^M^M^M^]7 линейна S, = bnFn + bi2F^ + bi3F^ + bi4Mn + bi5M^ + bi6M^, где by (/=1» 2,..., 6) - константы. Для n упругих элементов с датчиками получим систему п уравнений вида S = BF, (12.2) В - матрица размерности [п х 6], называемая матрицей взаимовлияния, S - вектор размерности п. Если л = 8, как это имеет место в датчиках, схемы которых представлены на рис. 12.12, то S [8x1]- вектор из восьми элементов, а В - матрица размерности [8x6]. Уравнение (12.2) является основой для расчета компонентов вектора F по показаниям S, (i = l,n) чувствительных элементов при произвольной нагрузке. Однако им нельзя воспользоваться, поскольку неизвестна матрица взаимовлияний В. Поэтому матрицу В определяют экспериментально путем тарировки сенсора. Так как элементы матрицы by являются частными передаточными отношениями, то их определяют путем последо- вательного нагружения датчика шестью линейно независимыми известными силомоментными нагрузками F* (к =1,..., 6) и соответствующего измерения каждый раз «-мерного вектора Sv На основании (12.2) результаты тарировки записывают в виде матричного уравнения N = BG. (12.3) Размерности матриц N (ее столбцы- S*) и G (ее столбцы- Ft) соответственно [п х 6] и [6 х 6]. Матрица G- неособенная и имеет обратную матрицу G-1. Умножив правую и левую части (12.3) на G-', получим матрицу взаимовлияний В В = NG1. 213
Так как матрица В - не квадратная, то у нее нет обратной матрицы. Однако, если ранг полученной таким образом матрицы В равен 6 (для шестикомпонентного датчика), то для матрицы В можно построить псевдообратную матрицу В* [2] В+ = (ВГВ)-1ВГ. Это искомая матрица для расчета компонент вектора F F = B+S. 12.2.6. Силомоментные сенсоры-смесители, построенные по неортогональной схеме В соответствии с изложенной выше методикой совсем не обязательно обеспечивать ортогональность расположения датчиков (это условие приводит к обнулению ряда членов матрицы В+). Более того, можно совсем отказаться от специального упруго-механического типа конструкции для датчика, а использовать вместо него какую-либо часть несущей конструкции руки робота, произвольно (даже хаотично) оснащенную большим числом чувствительных элементов с различным направлением их осей. При этом сенсор будет простой, но быстродействие алгоритма обработки информации не снизится из-за увеличения размерности матри- цы В+. Если же важно быстродействие системы, то главным направлением совершенствования силомоментных сенсоров является создание таких конструкций, для которых матрица В* имеет минимальную размерность, и большинство членов которой обращается в нуль. В этом случае будет достигнуто максимальное быстродействие алгоритма. Указанное направление предполагает отказ от конструктивных мероприятий, обусловленных борьбой с влиянием компонент нагрузки на деформацию упругого элемента датчика (ортогональность расположения элементов - одно из следствий этих мероприятий) и учет этого влияния в алгоритме обработки информации [29, 35]. При таком подходе конструкция многокомпонентного силового сенсора становится близкой к конструкциям известных амортизирующих упругих подвесов приборов, широко используемых на судах, самолетах и т.д. [4]. Чтобы их применить как основу силомоментного сенсора, необходимо обеспечить следующее: 1) одинаковый вид напряжений (и деформаций) элементов упругого подвеса; 2) простоту расчетных соотношений, т.е. максимальное быстродействие; 3) одинаковую жесткость подвеса (с точностью хотя бы до одного порядка) по отношению к различным компонентам нагрузки. Выполнение последнего условия позволит получить узкий спектр собственных частот колебаний схвата на упругом подвесе и легко отстраиваться от внешних периодических воздействий известной частоты, снижая тем самым уровень помех. 214
Рис. 12.13. Шестикомпонентные сенсоры- смесители, построенные по неортого- нальной схеме на основе стержневой фермы (а) и на основе упругих струн (б) Схема одного из первых вариантов сенсора-смесителя, удовлетво- ряющих указанным условиям, представлена на рис. 12.13, а [22] (см. также гл. 7). Датчик содержит фланцы 7 и 2, соединенные шестью стержнями с помощью сферических шарниров. Конструкция образует упругую ферму. На стержнях установлены тензодатчики 3 для измерения одноосной деформации растяжения-сжатия. Если один из фланцев связать с захватом, а другой - с последним звеном руки, то нагрузка на захвате будет уравновешена осевыми силами, возникающими в стержнях. Эти силы и измеряют тензорезисторы. Недостатком конструкции является необхо- 215
димость в устранении зазоров в сферических шарнирах путем нагружения датчика постоянным усилием, превышающим измеряемое. Кроме того, вследствие трения в шарнирах в стержнях появляются крутильные и изгибные деформации, искажающие информацию о деформации сжатия. В усовершенствованной конструкции датчика один из фланцев пре- образован в цилиндр 7; упругая подвеска выполнена из четного числа упру- гих элементов растяжения-сжатия, например, из струн, укрепленных концами в двух сечениях цилиндра и протянутых вдоль образующих одно- полюсного гиперболоида (рис. 12.13,6). Струны попарно пересекаются в горловом сечении гиперболоида и прикрепляются в точках пересечения к фланцу 2. Такое выполнение упругой подвески позволяет обойтись без дополнительных нагружающих устройств, обеспечить симметричность упругой подвески относительно координатных плоскостей трехмерного декартова пространства и идентичность элементов подвески, что сущест- венно упрощает математические зависимости, описывающие связи между компонентами передаваемых через подвеску усилий и деформациями струн. Из-за малого диаметра струн изгибные, крутильные и сдвиговые деформации в них незначительны. Струны передают нагрузки только в направлениях осей, соединяющих точки их крепления к цилиндру 1 и фланцу 2. Это и обеспечивает повышение точности многокомпонентного сенсора. При необходимости увеличения податливости упругой подвески струны разрезают, в разрезы встраивают пружины растяжения. Для повышения точности датчика измеряют изменение длин пружин растяжения. Отметим, что для определения шести компонент усилий и моментов внешней нагрузки независимо от числа струн, достаточно шести датчиков деформации. Следовательно, минимальное число струн в подвеске в этом случае также равно шести. 12.2.7. Определение матрицы жесткостей упругого подвеса силомоментного сенсора Определение расчетных зависимостей для вычисления компонент усилий и моментов внешней нагрузки в функции линейных деформаций упругих элементов описанных выше конструкций связано с построением матрицы жесткостей упругого подвеса С. Укрепив цилиндр 1 (см. рис. 12.13, 6) на основании, введем неподвижную систему координат 0т|££, связанную с основанием, и подвижную 0XYZ, жестко связанную с фланцем 2 так, что в отсутствие нагрузки на фланец 2 обе системы совпадают. Рассматриваемые упругие подвесы состоят из п элементов, а каждый i-й элемент (i = 1, 2,..., п) имеет главную ось жесткости X,, направленную вдоль элемента. Внешняя сила, приложенная к i-му элементу подвеса в направлении главной оси жесткости, деформирует его по направлению силы. Внешние силы, действующие в направлениях, перпендикулярных главной оси i-ro упругого элемента, не вызывают его деформации. Обозначим координаты точки крепления i-ro упругого элемента к фланцу 2 через Т|„ д,-, и будем задавать ориентацию оси X, в системе 0т|^£ направляющими косинусами а,, у, соответственно. Приняв коэффициенты жесткостей упругих элементов с( одинаковыми и равными с, 216
получим выражения для элементов Cjk(j, к = 1, 2,..., 6) матрицы С жесткости подвеса [3,22, 35] Сц=с£а?: =<£$-, c33=c^yj-, 1 1 1 Ci2 = с21 = с± а,р,; с13 = с31 = с± а,у,; с23 = с32 = р,у,; 1 1 1 q4=c4i = <^ - аМ.); ci5 = c5i = (а^<-" a.Y,n,); 1 1 С16 = с61 = («/Р.П, - cfe с24 = С42 = с± (р,у,< - pfc); 1 1 С25 = С52=СХ <аА4-₽,7,п,); с26 = с62 = <4 Ф.Ч-а.РД); 1 1 <34 = С43 = (уХ - р,у,С,); <35 = <33 = (аД4- - Y?n,); 1 1 С36 = сбз = (P'YA - «AU (12.4) 1 <34 = с£ (У%- + Р%,2 -2p,.y,<Q; 1 с55 = -2а,.у1п1<); 1 ^66 = (₽^?+ " 2а,р,т|14,); 1 с45 = <34 = (а/гЛ,4 + P.Y " Т?ПЛ, - а.Р.Ф; 1 ^46 = С64 = СХ (Р/Т.пЛ, + а.РЛЛ,- - Р?пЛ/ - а,у,4?); 1 С56 = с65 = СХ («/Р/П,< + а,7,пЛ." а^Л/ - Р,Т,П? )• 1 Матрицей С связан вектор-столбец F нагрузки с вектором-столбцом Х = [т|0,^0,^0,ф0,\|/0,/б0]г малых перемещений подвижной системы коорди- нат 0XYZ относительно неподвижной системы координат 0г|^ F = CX. (12.5) Здесь Т|о, ^о, - линейные смещения центра подвижной системы координат 0XYZ, связанной с фланцем 2, относительно неподвижной системы координат 0т|^ вдоль координатных осей Т|, £ и £ соответственно; ф0, Vo, i}0- углы поворота фланца 2 вокруг координатных осей ц, £; и £ соответственно. 217
Вектор-столЪец X относительных смещений фланца 2 однозначно определяет изменение координат точек крепления упругих элементов к фланцу 2 и, следовательно, деформации 5/всех упругих элементов. Значит, по линейно-независимым деформациям S, шести упругих эле- ментов можно определить вектор-столбец X. Выберем 6 упругих элемен- тов (для определенности i = 1, 2,..., 6) в качестве измерительных и с учетом малости перемещений построим матрицу В частных передаточных отно- шений, связывающую вектор-столбец X микроперемещений фланца 2 с вектором-столбцом S деформаций упругих элементов, выбранных в качестве измерительных S = BX, Э^/ЭтДо SSj/Э^о dSx/d^Q dSJd(pQ dSJdx^Q — Э£>/Эп0 в= . ° . . . (12.6) _Э56 / Эт|0 Э56 / дО0_ Определение элементов матрицы В, как и в методиках рассмотренных в разделах 3.3 и 5.7, связано с анализом шести механизмов с одной степенью свободы, каждый из которых получается, если положить, что в рассматри- ваемой системе изменяется только один элемент вектора X, т.е. только одна из обобщенных координат. В каждом из шести полученных таким об- разом механизмов легко определить шесть передаточных отношений от свободного элемента вектора X к шести деформациям выбранных упругих элементов. Эти шесть передаточных отношений образуют столбец в матрице В. Преобразовав (12.6), найдем зависимость элементов вектора X от деформаций шести выбранных упругих элементов X = B 'S. Условие существования этого преобразования | В | # 0 отражает требование линей- ной независимости деформаций St (i= 1, 2,..., 6). Подставив последнее равенство в (12.4), получим интересующие нас зависимости F = CB'S. (12.7) При симметричном расположении упругих элементов подвес может иметь центр жесткости и, если совместить с ним начало координат неподвижной системы осей 0т|££ и направить оси Т], £ вдоль главных центральных осей жесткости подвеса, то матрица С принимает диаго- нальный вид. Это существенно упрощает зависимости (12.7). При диаго- нальном виде матрицы С целесообразно оснастить упругий подвес отдельно датчиками непосредственного измерения компонент вектора X, что позво- лит сразу определять компоненты вектора F. 218
12.2.8. Упрощенные схемы сенсора-смесителя. Определение расчетных зависимостей Упрощенные схемы многокомпонентного силового датчика-смесителя, обеспечивающие быстродействие вычислений вследствие диагональности матрицы жесткости элементов С, представлены на рис. 12.14. Упругая подвеска сенсора (рис. 12.14, а) образована шестью упругими элементами растяжения с жесткостью с, протянутыми вдоль диагоналей боковых сторон прямоугольной призмы, имеющей в основании равносторонний треугольник со стороной а. Высота призмы ал/З. Поэтому упругие эле- менты пересекаются попарно под углом 60°. Упругая подвеска второго сенсора (рис. 12.14, б) образована восемью упругими элементами жесткости с, протянутыми вдоль диагоналей сторон куба с ребром а. Для обоих сенсоров центр неподвижной системы коорди- нат 0ц^ совпадает с центром площадки, ограниченной точками пересе- чения упругих элементов; ось т| перпендикулярна одной из боковых по- верхностей сенсора, а ось £ перпендикулярна его основанию. При указанном на рис. 12.14 направлении осей упругих элементов х, несложно получить направляющие косинусы этих осей по отношению к системе коорди- нат 0г|££. Для удобства направляющие косинусы а,, 0, и У| приведены в табл. 12.1 - для сенсора на рис. 12.14, а и в табл. 12.2- для сенсора на рис. 12.14, б. Там же даны координаты точек крепления упругих элементов к подвижному фланцу. С помощью соотношений (12.4) нетрудно убедиться, что для приве- денных в таблицах значений матрицы жесткостей С становятся диаго- нальными: для схемы, приведенной на рис. 12.14, а C = diag(3c/4, Зс/4, 9с/2, Зса2/16, Зса2/16, 5са2/32), (12.8а) для схемы, приведенной на рис. 12.14, б C = diag(2c, 2с, 4с, са2 /2, са2/2, са2). (12.86) Таким образом, можно вычислить компоненты нагрузки по простой формуле (12.5), где матрица С определена выражением (12.8), если оснастить подвес соответствующими измерителями смещений подвижного фланца относительно неподвижной системы координат. Если же использовать в качестве измерителей собственно упру- гие элементы подвеса и рассчитывать компоненты нагрузки по уравнению (12.7), то необходимо построить матрицу частных передаточных отношений В. Приняв в качестве положительной деформации деформацию сжатия в направлении оси с учетом равенств Э5, / Эг)0 = а,, Э5,- / Э£о = Р„ Э5, / Э£о = у,-, Э5(. / Эср0 = ^у,-, dSi / Э\Ио = . 9S, / Э1% = -£,а, + т|,р„ (12.9) после обращения (для операции обращения матрицы применена стан- дартная программа ЭВМ) и преобразований получим 219
Рис. 12.14. Упрощенные схемы дат- чиков-смесителей, отличающиеся по- вышенным быстродействием обра- ботки информации для схемы, представленной на рис. 12.14, а 0,435с 0 0 0 0 0 0 0,25с 0 0 0 0 - , 0 0 0,864с 0 0 0 СВ = 0 0 0 0,22са 0 0 0 0 0 0 0,1 Зог 0 0 0 0 0 0 0,18с<я ' 0 0 1-1-1 Г 2-2-1 1-1 1 -1 -1 -1 -1 -1 -1 Х 0 0 1 1 -1 -1 ’ 2 2-1-1 -1 -1 1-1 1-1 1-1 220
Таблица 12.1 Направляющие косинусы и координаты точек крепления струнных упругих элементов сенсора, представленного на рис. 12.14, а i 1 2 3 4 5 6 ai 0 0 л/з/4 -л/З/4 -л/З/4 л/З/4 и, 1/2 -1/2 -1/2 1/4 -1/4 1/4 Y; -V3/2 -V3/2 -л/з/2 -л/З/2 -л/3/2 -л/3/2 П/ ал/3/6 ал/3/6 -ал/з/12 -ал/3/12 -ал/3/12 -ал/З/12 0 0 -а/4 -а/4 а/4 а/4 0 0 0 0 0 0 Таблица 12.2 Направляющие косинусы и координаты точек крепления струнных упругих элементов сенсора, представленного на рис. 12.14, б i 1 2 3 4 5 6 7 8 а, -1/71 1/72 0 0 1/72 -1/72 0 0 Pi 0 0 1/72 -1/72 0 0 -1/72 1/72 Yi -1/72 -1/72 -1/72 -1/72 -1/72 -1/72 -1/72 -1/72 lli 0 0 a/2 a/2 0 0 -a/2 -a/2 Si a/2 -a/2 0 0 -a/2 -a/2 0 0 0 0 0 0 0 0 0 0 для схемы, представленной на рис. 12.14, б (в качестве измерительных приняты первые шесть упругих элементов) 0,707с 0 0 0 0 0 0 0,707с 0 0 0 0 _ . 0 0 1,414с 0 0 0 СВ” = х 0 0 0 0,35са 0 0 0 0 0 0 0,35с<я 0 О 0 0 0 0 0,707са_ ’-I 10 0 1 -Г -1 12-2-1 1 -1-10 0 -1 -1 Х -1 -1 0 0 1 1 ’ -1-12 2 -1 -1 1-10 0 1-1 221
Как видно из приведенных соотношений, схема на рис. 12.14, б пред- почтительней, поскольку у нее меньший Гразброс коэффициентов усиления (элементов диагональной матрицы) и меньше число операций (больше нулевых членов в матрице В-1). Компоненты нагрузки для этой схемы вычисляют по следующим простым соотношениям: = 0, 707с($2 - Sj + S5 - S6), = 0, 707c(S2 - 5, + 2S3 - 254 - S5 + 56), = 1,414c(-S, - S2 - S5 - S6), = 0,35az(-S] — S2 + Sj + Sg), = 0,35ca(-S, - S2 + 2S3 + 2S4 - S5 - S6), = 0,707ca(55 - S6 - S2 + 5j). В заключение отметим, что в связи с необходимостью определять усилия, приложенные не в центре жесткости подвеса, а в некоторой другой точке 0] (обычно в центре схвата), необходим пересчет полученных компонент усилий. Так, если точка 0[ имеет координаты (0,0,d), как показано на рис. 12.14, вектор F] будет иметь следующие компоненты, выраженные через компоненты вектора F: (12.10) Соотношения (12.5)-(12.10) достаточны для построения вычисли- тельного устройства и для тарировки тензорезисторов. Следует отметить также, что в рамках рассмотренных структур сенсоров можно искать параметры (например, угол пересечения упругих элементов), при которых достигается минимальный разброс коэффициентов усиления или обеспе- чивается максимальное быстродействие вычислений компонент вектора нагрузки. 12.3. ПРИНЦИПЫ ОРГАНИЗАЦИИ СИСТЕМ ОЧУВСТВЛЕНИЯ РОБОТОВ 12.3.1. Системы очувствления на основе двухпозиционных датчиков Системы очувствления с двухпозиционными датчиками и разнообразие их функций рассмотрим на примере позиционного робота, загружающего заготовки в технологическое оборудование. Практически все современные роботы такого типа оснащены двухпозиционными датчиками, обеспечи- вающими синхронность работы ПР и технологического оборудования. В качестве примера на рис. 12.15 приведена схема робота, в программе которого предусмотрены следующие позиции и действия: а - взять заготовку в накопителе; b - ждать; с - установить заготовку в станок. Робот работает в цикле b-a-b-c.... 222
Рис. 12.15. Синхронизирующие информационные связи промышленного робота с оборудо- ванием Позиция а оснащена тактильным датчиком 1, регистрирующим наличие заготовки; позиция с - датчиками 2 и 3, регистрирующими момент оста- новки шпинделя, сброса обработанной детали и открытия щитков ограж- дения. Координаты трех позиций указаны в программе. Начало перехода в очередную позицию определяется только состоянием датчиков, а соответст- вующие моменты времени в программе не указаны. Переход из позиции b в позицию а возможен только, если датчик 1 имеет состояние "1" - заготовка в накопителе имеется (на рис. 12.15 и далее состояние датчиков указано цифрами в рамках), переход из позиции b в позицию с - если датчики 2 и 3 имеют состояние "1" (шпиндель остановлен и щитки ограждения открыты). Для реализации такого режима в системе управления роботом предусмотрено логическое устройство, анализирующее состояние датчиков. Рассмотренные в данном примере информационные связи осуществляют синхронизацию действия робота и обслуживаемого им оборудования. Схемы применения двухпозиционных датчиков для анализа прост- ранственного расположения объектов среды приведены на рис. 12.16. Допустим, что роботу, изображенному на рис. 12.15, подаются заготовки в позицию а без фиксирования их по оси X. Тогда программа движений робота, подготавливаемая оператором, уже не содержит координаты х в позиции а, а сама позиция организуется по схеме, приведенной на рис. 12.16, я. В направлении оси X устанавливают N датчиков (например, фотодиодов), и каждому датчику ставится в соответствие определенная координата х, которая либо запоминается в памяти робота, либо вы- числяется в зависимости от номера датчика, имеющего состояние "О". Ту же информацию можно получить, сканируя данное направление одним датчиком (см. рис. 12.16, г). Тогда, зная скорость сканирования и, всегда можно определить координаты объекта. Если заготовка не фиксируется по двум осям, то необходимо восполнить недостающую в программе информацию, используя систему датчиков, предложенную на рис. 12.16,5. Аналогичная схема, но со сканированием, приведена на рис. 12.16, д. 223
I У? X? Форма? Ориентация? Рис. 12.16. Схемы применения двухпозиционных датчиков для анализа пространственного расположения объектов среды а, г - при одной неизвестной координате объекта; б, д - при двух неизвестных координатах; в, е - при неизвестных координатах, форме и ориентации объектов; а-в - без сканирования, г-е - со сканированием X? В системах, изображенных на рис. 12.16, а, б, наличие заготовки и ее координаты определяются положением проекций заготовки на координат- ные оси, реализованные в виде рецепторных линеек из двухпозиционных датчиков. Никакой информации о форме и ориентации заготовки в общем случае эти проекции не несут. Если же поставлена задача выбора заготовки определенной конфигурации из группы различных объектов, задача сортировки деталей на группы и т.п. при их произвольной ориентации, то необходимо строить рецепторное поле, содержащее N2 двухпозиционных датчиков (см. рис. 12.16, в). Вариант той же системы с разверткой показан на рис. 12.16, е. Здесь линейка с двухпозиционными датчиками установлена над лентой транспор- тера, несущей объекты произвольной формы и произвольно ориентиро- ванные, т.е. для сканирования использовано технологическое движение. 224
Такая система была опробована, в частности, при сортировке и укладке изделий в фарфорово-фаянсовом производстве, при сортировке и контроле пресс-матриц в производстве абразивных изделий, при обслуживании кузнечно-прессовых линий и т.п. [14]. Во всех рассмотренных выше примерах информация о среде собирается за время, предшествующее движению руки очувствленного робота. При установке датчиков непосредственно на руке информация собирается в процессе движения руки, а система управления содержит программу реак- ций на изменение состояния датчиков. В этом случае время на выполнение операции несколько увеличивается за счет цикла "ощупывания" детали, однако относительная простота системы и алгоритмов управления опре- деляют широкое распространение систем такого класса в промышленности. Простой пример: очувствленный робот должен последовательно брать заготовки из штабеля и устанавливать их на позицию обработки в пресс, иллюстрирует рис. 12.17, а. Схват робота оснащен двухпозиционным датчи- ком 7; программа действия робота в позиции накопителя не содержит информации о координате х. Неопределенность в исходной программе разрешается состоянием датчика: "О" означает двигаться вниз, "1"- остановиться, взять деталь и переместиться в позицию обработки. Оснастив захват датчиками 7, 2 и 3 по осям X, Y и Z соответственно, можно достаточно просто решить задачу укладки изделий в прямоугольную тару произвольных размеров (рис. 12.17, б). Алгоритм движений строится так, чтобы конечное состояние датчиков в результате всех возможных движений было 111. При состоянии ООО схват движется вниз по оси Z. Положению, в котором он достиг дна ящика или уже уложенного ряда, соответствует состояние 001. Реакцией на новое состояние датчиков будет остановка по оси Z и включение движения по оси У. В результате, когда схват достигает стенки тары или уже уложенного ряда, датчики имеют состояние 011, а после движения вдоль оси X- конечное состояние 111. Задача решается последовательным выполнением таких циклов. Необходимое число датчиков и алгоритм движения часто можно установить, анализируя конкретную технологическую операцию. Для ее надежного выполнения необходимо, чтобы при всех возможных состояниях датчиков алгоритм сходился к такому состоянию, которому соответствует конечная позиция. Пример использования очувствленного робота при установке круглых плоских объектов в полое коническое приспособление, которое относи- тельно неточно расположено на позиции загрузки, приведен на рис. 12.17, в. Схват очувствленного робота оснащен четырьмя датчиками касания 1-4, размещенными по окружности. Основное движение выполняется вниз (по оси Z) при состоянии 0000. При любом другом состоянии датчиков движение по оси Z прерывается и схват удаляется от стенок конуса в плоскости ХУ, т.е. осуществляется возврат в состояние 0000. Алгоритм движения всегда приводит в конечном счете к состоянию 1111, т.е. к определению поло- жения оси симметрии конуса и требуемого сечения по оси Z. Таким очувств- ленным схватом оснащен робот "Универсал-5", используемый на операции термической обработки оптических стекол. 8. Корендясев А.И. Кн. 2 225
a б Рис. 12.17. Схемы использования двухпозиционных датчиков для сбора информации об объектах среды в процессе движения руки робота а - захват объекта из штабеля; б- укладка объектов в прямоугольную тару произвольных размеров; в - установка плоских круглых объектов в приспособление конической формы; г - определение формы паза объекта 226
Рассмотрим ситуацию^ когда достаточно простые системы и алгоритм позволяют решить сложную задачу транспортировки объекта в относи- тельно узком плоском коридоре (рис. 12.17, г). Робот оснащен датчиком касания 1. Система управления позволяет перемещать схват в любом направлении в плоскости коридора (на рисунке препятствия заштрихованы). Алгоритм строится следующим образом: при касании препятствия рука очувствленного робота выполняет фиксированное перемещение в отрица- тельном направлении, после чего направление движения изменяется на небольшой угол по часовой стрелке и осуществляется перемещение в положительном направлении до нового касания. Траектория движения захвата показана ломаной линией. По аналогичному алгоритму робот может "ощупывать" отверстия различной конфигурации в деталях и собирать информацию об их контуре. Для этого в моменты касания запоминаются координаты хи у. Системы, содержащие двухпозиционные датчики, могут работать в двух режимах. Центральный процессор системы управления роботом на фоне выполняемых текущих вычислений, например по управлению двигателями робота, может периодически, по сигналу от таймера, прерывать работу и опрашивать состояние датчиков. В этом случае, пользуясь терминологией разработчиков ЭВМ, центральный процессор работает в режиме ожидания. Он постоянно ожидает изменения сигнала с датчика, получив который, вызывает и выполняет программу реакции системы на это изменение. При этом датчик является "пассивным". Очевидно, в режиме ожидания значительная доля времени процессора будет потрачена на сканирование датчиков, а такая важная характеристика как реактивность системы, характеризующая время ее реакции на появ- ление сигнала, будет зависеть от частоты опроса датчиков. Важно отметить также, что эти две характеристики взаимосвязаны: чем выше частота опроса, тем выше реактивность системы, но тем большие вычислительные ресурсы будут потрачены на опрос датчиков. Второй режим, наиболее целесообразный для экономии ресурса процессора, называется режимом прерывания. Процессор все свое основное время затрачивает на выполнение текущих вычислений, но датчик является "активным". При его активизации (при изменении состояния) датчик вырабатывает сигнал прерывания, который заставляет процессор пре- кратить выполнение текущей программы и отработать программу преры- вания. Последняя, как правило, содержит подпрограмму выделения датчика, от которого поступил сигнал прерывания, опрос его состояния и собственно подпрограмму реакции системы на данное изменение состояния. 12.3.2. Системы очувствления на основе пропорциональных датчиков Системы очувствления с пропорциональными датчиками, как правило, позволяют автоматизировать "тонкие" технологические операции, требую- щие малых перемещений схвата, дозирования усилия взаимодействия с объектами, анализа ситуации в зоне контакта деталей при сборке и т.п. 8* 227
Рис. 12.18. Схемы систем очувствления роботов, оснащенных пропорциональными дат- чиками а - автоматическая сборка цилиндрических деталей при зазорах менее 20 мкм; б - работа с объектом, на который наложены внешние связи; в - сварка изделия при неточном базировании элементов 228
Рассмотрим особенности таких систем на примере очувствленного робота, оснащенного датчиками усилия и широко используемого в двух случаях: 1) когда по условиям выполнения технологической операции необхо- димо регулировать усилие взаимодействия с объектами; 2) когда по параметрам силового взаимодействия можно получить информацию о положении или траектории движения захвата относительно объектов. На практике часто бывает необходимо, чтобы один и тот же робот мог манипулировать как тяжелыми, прочными, так и легкими, хрупкими или легко деформируемыми объектами. Такая универсальность достигается благодаря установке датчика усилия в запястье робота и организации контура управления усилием зажима в зависимости от массы объекта. В этом случае робот может успешно манипулировать стальными заготовками, но не раздавит и не выронит колбу, наполненную жидкостью [10,14]. Типичная область использования датчика усилия - автоматизированная сборка деталей при зазорах 20 мкм и менее (рис. 12.18, а). Робот [52], несущий штифт, который требуется посадить во втулку, имеет три степени свободы в декартовой системе координат и оснащен упругим элементом с трехкомпонентным сенсором, измеряющим моменты относительно трех осей. Цикл сборки начинается с опускания штифта на торец втулки (этапы 1—1Г) до достижения некоторого заданного значения усилия по оси Z. Вследствие частичного перекрывания отверстия схват со штифтом полу- чает некоторый перекос относительно оси отверстия, допускаемый упругим элементом (этап III). По соотношению усилий, возникающих при этом по осям X и У, можно определить направление, в котором находится ось отверстия относительно фактического положения схвата. Двигаясь в этом направлении, схват точно вводит штифт в отверстие (этап IV). Момент входа штифта в отверстие, определяемый по изменению составляющей усилия по оси Z, разделяет две стадии процесса: поиск отверстия (этапы I-IV) и собственно сопряжение (этап V). На первой стадии рука очувствленного робота движется в направлении увеличения изгиба схвата относительно горизонтальных осей; на второй, наоборот, для предотвращения заклинивания осуществляются микроперемещения в направлении уменьшения изгиба схвата. Вся операция занимает ~3 с. Описанная система решает весьма трудную технологическую задачу и позволяет существенно снизить требования к точности положения втулки на рабочей позиции и штифта в губках схвата. Однако система весьма чувствительна к погрешностям ориентации оси сопряжения. Указанный недостаток устраняется при использовании шестикомпонентного сенсора усилия, измеряющего три составляющие усилия вдоль координатных осей и три момента относительно этих осей. Анализ полной картины силового взаимодействия позволяет оце- нить условия контакта сопрягаемых деталей, организовать направленный поиск оси сопряжения и избежать заклинивания деталей при произвольном начальном положении осей. Например, с помощью датчика (см. рис. 12.12, б) автоматизирован процесс сборки генератора переменного тока из 17 различных деталей [49]. Весь цикл сборки генератора составля- ет 3 мин. 229
Во всех рассмотренных выше примерах силовая система восприятия выполнена на упругих элементах, вмонтированных в запястье. Информа- цию о силовом взаимодействии можно получить также, рассредоточив датчики составляющих результирующей нагрузки по приводам всех степеней свободы ПР. При этом необходимая для работы податливость обеспечивается путем управления усилиями, развиваемыми приводами звеньев. Именно так решается специфическая для робота задача взаимо- действия с объектами, на которые наложены внешние связи. Так, вращение маховика на неподвижной оси, перемещение длинного стержня в неподвижных направляющих и другие подобные операции превращают разомкнутую по своей исходной структуре руку в замкнутый механизм, число степеней свободы которого уменьшается на величину, равную числу накладываемых при этом связей. К примеру, при переме- щении стержня по направляющим с помощью робота (рис. 12.18, б), имею- щего три степени свободы (соответственно приводы 7, 2 и 3), вследствие связей, накладываемых направляющей и условиями жесткого захвата стержня, образуется механизм с одной степенью свободы. Программное управление перемещениями по всем трем степеням свободы в этом случае невозможно, поскольку необходимо точно выполнять прямолинейное движение захвата, и малейшие погрешности траектории вызывают ’’кинематическую несовместимость” системы робот-объект-среда, и, как следствие, значительные нагрузки и деформации руки. В данном случае для перемещения стержня достаточно развивать момент только в приводе 7, а приводы 2 и 3 необходимо превратить в свободные шарниры. Однако при определенных углах между звеньями такой механизм часто заклинивается из-за трения в ndpax и неблаго- приятных углов давления. Для предотвращения заклинивания все привод- ные цилиндры оснащают датчиками давления, а получаемую при этом информацию используют для регулирования приводов 2 и 3. В результате при ведущем приводе 7 приводы 2 и 3 автоматически компенсируют силы сопротивления движению и заклинивания не происходит. Как видно, очень часто датчики усилий, требующие непосредственного контакта с объектом, используют для получения информации о положениях и перемещениях. Для этих целей широко применяют также бесконтактные датчики. Например, очувствленный робот для дуговой сварки (рис. 12.18, в) [40] снабжен двумя ортогонально расположенными индуктивными датчи- ками 7 и 2, установленными в непосредственной близости к зоне сварки и измеряющими расстояние до плоскостей деталей, свариваемых под прямым углом. Датчики отслеживают траекторию шва, которая может существенно отклоняться от заданной из-за неточности самих деталей и их базирования. Обработка информации от датчиков позволяет вычислять корректирующие поправки и вводить их в систему управления роботом, обеспечивая заданное положение электрода относительно шва. Рука имеет пять степеней свободы: три ортогональные поступательные кинематические пары и две вращательные, приходящиеся на запястье. Коррекцию вводят, управляя вращательными шарнирами запястья. Обработку информации в системе осуществляет микропроцессор. 230
Первоначально очувствленный робот программируется методом обучения: оператор грубо проводит электрод по траектории будущего шва. Затем в процессе сварки все неточности обучения и базирования автома- тически компенсируются. Скорректированная программа запоминается и может быть многократно использована как с коррекцией, так и без коррекции. Анализ различных систем очувствления показал, что при использовании пропорциональных датчиков в основном решают следующие задачи: 1) обеспечение требуемых характеристик движения руки путем организации контура регулирования по измеряемому датчиком параметру (примеры решения именно таких задач рассмотрены выше); 2) определение требуемых параметров среды по показаниям датчика (например, массы и положения объекта, находящегося в схвате). Если первая группа задач непосредственно связана с формированием закона движения, то вторая носит больше информационный характер, когда в зависимости от результатов обработки показаний датчика может быть изменена структура цикла движения робота, например, выбрана какая-либо одна точка позиционирования робота из заранее запрограммированного набора. В задачах первой группы обработка информации наиболее часто осуществляется на уровне аналоговых схем (если это допустимо по точности), что снимает проблему реального времени. В задачах второй группы, как правило, используются численные методы вычислений, на что расходуется ресурс центрального процессора. Ниже на конкретных примерах рассмотрены особенности построения систем очувствления для решения задач обоих типов. 12.3.3. Организации искусственной податливости руки робота Многие тонкие технологические операции типа абразивной зачистки заготовок, сборки, отслеживания контуров (и, соответственно, измерения) заранее неизвестных объектов решают с использованием так называемой искусственной податливости [11, 74, 85]. Принципы организации искусст- венной податливости рассмотрим на примере поступательной степени подвижности одного звена портальной механической руки [12] (рис. 12.19), несущей в запястье силовой сенсор С в виде упругой пластины, на которую наклеены тензодатчики. Привод звена осуществляется от двигателя Дв, оснащенного тахогенератором Тг, через редуктор Р. В простейшем случае (без учета индуктивных процессов в обмотках двигателя и в отсутствие внешних сил, за исключением силы взаимодействия F упругого датчика с объектом) движение системы описывается уравнением второго порядка Mx + k4x + F = k3U, (12.11) где х - координата поступательного перемещения, М - приведенная масса всех подвижных частей манипулятора, U - управляющий сигнал, подавае- мый на привод, к^ и к3- соответственно, положительные коэффициенты вязкого трения в системе и коэффициент усиления в контуре управления. 231
Рис. 12.19. Схема организации одной степени подвижности робота с искусственной податливостью Если обозначить координату точки контакта упругой пластины с предметом х0 и пренебречь массой пластины, то в соответствии с законом Гука определим силу F F = k(x-x0) при х>х0, (12.12) F = 0 при х < 0. Закон управления также примем линейным, например, в виде C/ = -^(F-Fnp)-jl2x; ^>0, к2>0. (12.13) Здесь Fnp - некоторое программное усилие взаимодействия сенсора с объектом, формируемое системой управления (СУ) робота, к} и к2- коэффициенты усиления. Силе Fnp соответствует некоторая программная координатахпр > х0, определяемая выражением (12.12), т.е. Fnp = £(хпр -х0). Таким образом, создан некоторый контур регулирования, в котором регламентировано не положение конечного звена, а некоторое усилие взаимодействия звена робота с внешней средой. Действительно, уравнение (12.11) с учетом (12.12) и (12.13) можно преобразовать к следующим: Мх + (к4 + к2к2)х + к2кхк{х0 -хпр) = 0 при х<х0, (12.14) Мх + (к4 + k3k2)x + k{x-x0) + k2kxk{x-xnp)-=Q при х>х0. (12.15) 232
Последнее слагаемое в (12.14) показывает, что при Fnp > 0 и х < х0 в системе действует постоянная сила, пропорциональная Fnp. Это означает, что положение руки, в котором сенсор не контактирует с объектом, неустойчиво, и звено будет перемещаться в некотором направлении, определяемом знаками коэффициентов в (12.13) (в данном случае вправо). После выхода на контакт с объектом в системе начинается упругое взаимодействие пластины сенсора с объектом (предпоследнее слагаемое в (12.15)). Оно соответствует действию обычной механической пружины (датчик с жесткостью к) и ’’электрической" пружины (последнее слагаемое (12.15)), эквивалентной механической с жесткостью к3к}к. Таким образом, линейная обратная связь по силе влияет на движе- ние звена так же, как обычная механическая пружина. Достоинством та- кой пружины является возможность программного управления ее жесткостью за счет изменения коэффициента кх. В положении статического равновесия обеспечивается постоянное усилие F на контакте, равное ^^пр/(1+^). Оставив в стороне ряд интересных вопросов, связанных с условиями устойчивости системы при различном уровне детализации динамической модели, ее колебательности, возможных законах управления*, отметим некоторые эффекты следящих систем по силе, позволяющие создавать на их базе робототехнические устройства различного назначения. Если установить двухкомпонентный сенсор, имеющий одинаковую жесткость по обоим направлениям, то щуп сенсора будет отклоняться по нормали к контуру детали (при пренебрежении силой трения). Полученной информации о компонентах силы, действующей по нормали, достаточно для организации автоматического движения исполнительного звена робота по касательной к контуру неизвестного объекта. При этом обеспечивается постоянное усилие в зоне контакта. Эти свойства системы позволяют использовать робототехническую установку для обдирочных или шлифо- вальных работ абразивным инструментом. Периодически опрашивая датчи- ки положения звеньев робота при таком движении, можно измерить объект, далее его идентифицировать и определить положение и ориен- тацию. Используя следящий контур по усилию, можно поддерживать контакт с подвижными объектами, находящимися, например, на транспортере. При этом выполнение технологической операции по времени совмещено с транспортным движением заготовок. Таким образом, существует принци- пиальная возможность выполнения, например, сборочных операций на подвижном конвейере. За счет обратной связи по усилию можно создать разнообразные системы обучения промышленных роботов. Если программное усилие Fnp = 0, то положение устойчивого равновесия может быть в любой точке свободного пространства. При воздействии рукой оператора на сенсор, выполненный в виде соответствующей рукоятки, система придет в движение. Обеспечив мнемоничность движений путем соответствующей обработки информации и конструктивным выполнением сенсора, оператор * Эти вопросы подробно рассмотрены в работах [9, 12]. 233
проведет руку робота по требуемым позициям. Запомненные показания датчиков положения звеньев составят программу движения, которая затем будет отрабатываться автоматически. 12.3.4. Влияние схемы размещения датчиков на алгоритм обработки информации Организация сенсорной системы существенно влияет на алгоритмы обработки информации, получаемой от датчиков, и соответственно, на время вычисления параметров, необходимых для полного определения исходной программы движений. Понятие "организация сенсорной системы" включает следующее: - схема размещения элементарных датчиков в сенсоре; - место сенсора в робототехнической системе; - число установленных датчиков; - дискретность пространственного расположения датчиков (если они объединены в матричные сенсоры). Первые два фактора влияют, главным образом, на "глубину" вычис- лительных процедур, т.е. на сложность и число необходимых преоб- разований (одним из таких преобразований является, например, переход из подвижной системы координат в абсолютную). Вторые два фактора определяют количество информации, доставляемой системой датчиков, т.е. ее размерность. Несмотря на некоторую нечеткость приведенных определений, интуитивно ясно, что объем требуемых вычислений будет пропорционален произведению "глубины" вычислительных процедур на размерность систе- мы. Чтобы уточнить влияние первых двух факторов на алгоритмы обра- ботки информации, рассмотрим различные способы размещения силомо- ментных датчиков для решения лишь одной задачи - определения массы объекта и абсолютных координат его центра тяжести. Способ 1. Пусть сенсорная система организована из шести однокомпо- нентных датчиков, каждый из которых регистрирует момент в соответст- вующем шарнире руки с шестью степенями подвижности. Неизвестный объект зажат в захвате робота. Рука находится в свободном пространстве (на нее не действуют никакие силы, кроме сил тяжести звеньев и объекта) и имеет известную (неособую) конфигурацию. При установке двигателей в шарнирах в отсутствие самотормозящихся передач момент в шарнире может быть измерен, например, по току двигателя. В состоянии равновесия в отсутствие объекта момент Qk(k = 1,..., и) привода в Л-м шарнире руки равен сумме моментов от силы тяжести звеньев относительно оси к-го шарнира gM'(dzOi/dqk), (12.16) i=k где - масса z-ro звена, zOi - положение по вертикали центра тяжести z-ro звена в абсолютной системе координат. Если робот взял объект массой Моб и рука выведена в ту же конфигура- 234
цию, то регистрируемые моменты будут Q'k = -£моб(^об sMi(bzQi /dqk), (12.17) i=k где zo6 - положение центра тяжести объекта по вертикали в абсолютной системе координат, dzo6/dqk- к-п элемент третьей строки матрицы Якоби частных передаточных отношений (см. выражение (3.5)). Этот элемент имеет геометрический смысл кратчайшего расстояния между осью fc-ro шарнира и линией действия силы тяжести объекта gMo6. Если из (12.16) вычесть уравнение (12.17), получим шесть исходных соотношений для определения неизвестных массы объекта и координат его центра тяжести Qk - Q'k = \Qk = gMo^zo6lbqk), (12.18) Очевидно, для определения абсолютных координат хоб, уоб, zo6 центра тяжести объекта достаточно знать координаты хоб, уоб, zo6 в системе координат схвата. Тогда, используя соотношение (3.1), можно вычислить искомые неизвестные. Здесь важно отметить, что в общем случае уравнений (12.18) больше, чем необходимо для определения четырех неизвестных Моб, хоб, уоб, zo6, однако система позволяет вычислить только три параметра, определяющие массу объекта Моб и положение линии действия силы тяжести. Это связано с отсутствием информации о координате точки приложения силы, так как при любом смещении силы вдоль этой линии ее моменты относительно осей шарниров не изменятся. Формально это проявится в том, что определитель системы, составленной из любых четырех уравнений (12.18), будет равен нулю. Поэтому будем определять только положение линии действия силы тяжести объекта. В предположении zo6 = 0 = const будем искать хоб и уоб, т.е. найдем след линии действия силы на плоскости Х606У6. Для примера возьмем руку со структурой 1-3"-2+ (см. рис. 3.15, а). В соответствии с (3.1), используя матрицы, приведенные в табл. 3.1, получим следующие соотношения для расчета абсолютных координат точки, заданной в системе координат схвата вектором [хоб,уоб,0]г Хоб = Хоб(С1С2+3+4С5С6 + SiS5C6 + ClS2+3+4S6^~ -Яб(С1С2+3+4С5^6 +^1^6 -С152+3+4Сб)+ (12-19) +^б(55С1С2+3+4 — 55С5^~ £*1 (^4^*2+3+4 ^2^2+Э > Уоб = •Хоб(‘У1С2+3+4С5С6 ~C1S5C6 ~‘у1‘у2+3+4‘уб)“ ")об(‘У1С2+3+4С5‘У6 “ ^Л^б + ‘У1‘У2+3+4Сб) + (12.20) +^б(51С2+3+4‘У5 +С1С5) + +s}(a4c 2+3+4 +6Z3C2+3 +а2С2 +й1) ^4С1 ’ 235
Zo6 ~ Хоб(‘У2+3+4С5С6 С2+3+4‘Уб) ”Уоб (‘У2+3+4С5С6 + С2+3+4С6)+ (12.21) +^6‘У2+3+4‘У5 + Л4^2+3+4 + a3S2+3 + <72‘У2’ Продифференцировав (12.21) по qb получим систему уравнений (12.18) в следующем виде: Д£1=0; А(22 ~ 8^об^Хоб^2 ~ Уоб^2 + ^6С2+3+4‘У5 + Л4С2+3+4^3С2+3 + а2С2^> (12.22) Дбз = 8Моб(ХобЬ2 ~ Уоба2 + ^2+3+4^ + «4С2+3+4 + Л3С2+з)> (12.23) Абд = 8^об(Хоб^2 ~ Уоб^2 + ^6С2+3+4‘У5 + Л4С2+3+4 )» (12.24) А05 = <?^об(“Хоб‘У2+3+4‘У5С6 + Уоб‘У2+3+4‘У5‘У6 + ^6‘У2+3+4С5 )» (12.25) А^ = Л(хоЛ-уоб^б)- (12.26) Здесь ^2 ~ С2+3+4С5С6 + ‘У2+3+4‘У6» d2 ~ С2+3+4С5С6 “ ‘У2+3+4С6’ ^6 = С2+3+4С5‘У6 “ С2+3+4С6» d6 = ‘У2+3+4С5С6 “С2+3+45’б- Используя уравнения (12.22)-(12.24), можно вычислить массу объекта по любому из следующих выражений: Моб = (А<22 — дез) / ga2c2 = (А<22 — де4) / #(а3с2+3 + а2с2) = = (Де3-Дб4)/^2+3. (12.27) Видно, что для определения Моб конфигурация руки должна быть такой, чтобы одновременно не выполнялись условия с2 = с2+3 = 0. Решив систему (12.25) и (12.26), получим еще две искомые неизвестные Хоб = А<2б(С552+3+4 “ c6d6^ ^Л)б&с5‘у2+3+4^6 “ ~(d6 ‘У2+3+455 )(Де5/Моб^2+3+4с5-г6), (12.28) Уоб = (^6 ! ‘У2+3+4‘У5)(^6 “ А(25 / ^06^2+3+4^5)“ - ДОбС6 /Mo6gc552+3+4. (12.29) Для вычисления проекции центра тяжести объекта на горизонтальную плоскость в абсолютной системе координат следует подставить выражения (12.28) и (12.29) в уравнения (12.19) и (12.20). Способ 2. Пусть робот той же структуры оснащен шестикомпонентным сенсором усилий F, размещенным в запястье. Сенсор может быть выпол- нен, например по схеме, приведенной на рис. 12.14, б. Для него справедливы расчетные соотношения (12.9). Будем считать, что вес объекта значительно превосходит вес схвата, поэтому последним пренебрегаем. Для простоты 236
расчетных соотношений положим также, что система координат схвата совпадает с системой координат основания сенсора, т.е. Х6 = £, У6 = Т|, Z6 = £. Задача та же: по информации, полученной от датчика, определить массу и координаты центра тяжести объекта. Очевидно, если сенсор регистрирует только силу тяжести объекта в схвате, то массу объекта можно легко определить по формуле Моб = (l/^^ + F^ + F2, (12.30) где Fn, F;., F^ определены (12.9). Для расчета координат центра тяжести объекта воспользуемся соотношениями Mr\ = ^yo6-F^zo6, M^F^-F^, (12.31) ^ = ^об-Л1Уоб- Так как определитель этой системы равен нулю (вследствие того, что моменты МА, М^, Mr не изменяются от перемещения точки приложения силы вдоль линии ее действия), будем искать точку хоб = [*об>Уоб>2Об]Г пере- сечения линии действия силы тяжести, направляющий вектор которой F = [7^, F^, F^], с перпендикулярной ей плоскостью, проходящей через начало координат системы Q6X6Y6Z6. Уравнение этой плоскости FnJo6 + F^o6 + F;Zo6=0. Добавив его к каким-либо двум уравнениям из (12.31), найдем координаты точки пересечения линии действия силы F с этой плоскостью Хб' -1 'м^ Уоб = 0 м, /"об . 0 Наконец, используя преобразования координат (3.1), найдем абсолют- ные координаты Xq, у0 точки плоскости ХоОо^о, через которую проходит вертикальная линия действия силы тяжести объекта. Сравнение полученных соотношений (12.30), (12.31), а также (3.1) с выражениями (12.27), (12.28) и (12.29) показало, что размещение датчика в запястье руки робота сопровождается существенным упрощением расчет- ных зависимостей и уменьшением числа вычислительных операций. Способ 3. Силоизмерительные датчики размещают вне робота на основании и объединяют в специализированное устройство, называемое динамометрической платформой. Платформа представляет собой жесткую плиту, подвешенную на упругих опорах, оснащенных датчиками силы. Конструкции платформ разнообразны. Они могут быть построены на одно-, двух- и трехкомпонентных датчиках [37]. По отношению к рассмотренным способам организации систем силомоментного очувствления, динамомет- 237
z Рис. 12.20. Схема размещения силомоментных датчиков для получения информации о массе и положении объекта с помощью силоизмерительной платформы рические платформы выделяются повышенной точностью измерений и простотой обработки информации для получения параметров силового взаимодействия робота с внешней средой. Поэтому данное решение часто используют для выполнения операций сборки [56, 84]. Если динамометрическая платформа шестикомпонентная, то она позволяет определить модуль и абсолютные координаты точки приложения результирующей силы при произвольной нагрузке на платформу. При определении координат центра тяжести объекта, устанавливаемого на платформу, можно обойтись меньшим числом измеряемых компонент, поскольку для получения этой информации не нужен момент относительно вертикальной оси. Общая схема динамометрической платформы, установленной на четы- ре симметричные опоры, с двухкомпонентными датчиками представлена на рис. 12.20. При установке объекта датчики зафиксируют 8 составляю- щих нагрузки cS{ = sb cS2 = s2, ..., cS% = s8. Для вычисления компо- нент нагрузки в абсолютной системе XYZ используют простые соотноше- ния Fx=S8~S4’ Fy = s2 -s6, F2 =-{sx +53 +55 +57), (12.32) Mx = (a/2)(sx + s7 -s3 -s5), My = (a / 2')(sl + s3 — s5-s7), M2 = (a/2)(52 + s4 +56 +58), где a - расстояние между опорами. Из (12.32) легко получить искомые массу 238
и координаты центра тяжести объекта Моб = Fz > g = -(*1 + S3 + s5 + s7)/g, Хоб=-му/Рг=(а/2)(5{+53 - 55 +s3 +55 +57), Уоб = Mx ! Fz = («/ 2)(^1 + S7 - S3 - 55)/(5! + s3 + $5 + 57), Zo6 = При необходимости захватить объект, установленный на платформе по полученным координатам хоб, уоб, zo6, решается обратная задача о положе- ниях - вычисляются обобщенные координаты звеньев робота и осуществ- ляется требуемое движение. Если объект несимметричен относительно линии действия силы тяжести, то дополнительную информацию об ориента- ции объекта и о месте его захвата получают с помощью дополнительных локационных средств, размещенных, как правило, на схвате робота [28]. 12.3.5. Количество информации, доставляемой сенсорами. Информационные оценки системы очувствления Технические средства любой системы должны быть адекватны кругу решаемых задач. Для информационной системы, какой является система очувствленного робота, это означает, что количество информации, которое поступает от датчиков, не должно быть несоизмеримо больше, чем количество информации, необходимой для устранения неопределенности в исходной программе движений робота. С ростом избыточной информации увеличивается время и усложняются алгоритмы ее обработки. Избыточность информации в сенсорных системах может быть обуслов- лена несколькими причинами. Наиболее часто к избыточности приводит стремление к универсальности системы. В любой универсальной системе, допускающей решение группы технологических задач, количество исполь- зуемой и перерабатываемой информации всегда больше, чем необходимо для решения любой конкретной задачи из этой группы. Точнее, для каждой такой задачи всегда можно создать более экономную (в смысле количества доставляемой информации) сенсорную систему. В этом плане избыточность информации и связанные с ней потери быстродействия- "плата" за универсальность. Другая причина - недостоверность получаемой информации. Здесь проявляется известная в технике альтернатива качество-быстродействие [23]. Если используются совершенные технологические средства, обеспе- чивающие точное и надежное измерение существенных параметров, то далее можно применить простые алгоритмы, позволяющие быстро и без помех вырабатывать команды управления для робота. Если же измерения выполняются с низким качеством, то эту недостоверность необходимо компенсировать избыточным количеством измерений и лучшими методами их обработки. В результате алгоритмы усложняются, а время обработки информации увеличивается. И, наконец, последняя причина - стремление повысить надежность. В этом случае система оснащается резервными датчиками, которые перио- 239
Таблица 12.3 Коэффициенты использования информации для различных схем сенсоров и условий задач Условия задачи Схема Число датчиков Известна ориентация объекта. Определить расстояние до него Известна ориентация объекта. Определить его координаты в пространстве Один объект поступает на одну из N позиций. Определить, на какую именно На ^позиционном рецепторном поле имеется п точечных объектов. Определить положение (номер позиции) каждого То же, но объекты различаются, например цветом На TV-позиционной рецепторной линейке имеется п объектов, причем i-й объект занимает соседних позиций и все раз- личны mt<N . Определить координаты объектов 1 1 J На A/TV-позиционном рецепторном поле расположен объект, занимающий тп позиций. Определить координаты объекта На MV-позиционном рецепторном поле расположены два одинаковых объекта, причем каждый занимает тт позиций. Определить координаты объектов Примечание. Буквами С и Р обозначены соответственно число соч См. рис. 12.18, а См. рис. 12.18, б См. рис. 12.18, в См. рис. 12.16 См. рис. 12.17, а См. рис. 12.17, а См. рис. 12.17, а См. рис. 12.17, в См. рис. 12.17, в етаний и перестанов 1 3 4 N N N 1 W MN if ок. дически опрашиваются, и на основе полученной информации проверяется правильность функционирования основной группы датчиков. На опрос резервных датчиков и выполнение тестовых и диагностических программ дополнительно тратится ресурс вычислителя. Чтобы количественно оценить, насколько техническая оснащенность системы очувствления робота соответствует решаемой задаче, введено понятие информационной емкости системы на входе /вх, которая опреде- ляется числом SBX возможных состояний датчиков [19]. Двухпозиционный датчик имеет только два состояния. Любой пропорциональный датчик может быть представлен дискретным элементом с п состояниями (так как он имеет определенный диапазон I измерения и разрешающую способность А, то в любой момент времени он может находиться в одном из п = Z/A возможных состояний). Поэтому где N и к - число соответственно двух- и и-позиционных датчиков в системе. 240
Число позиций Информационная емкость Коэффициент использования информации А»х /вых п 1 1 1 п 3 2 0,66 2 4 log210 0,83 2 N log TV log27V/7V 2 N log2C£ log2Cft//V 2 с (N >«.- -' log2(n!C£) | log2(n!) + C}/ + logn) п 2 N logz^A ^lPnCnAIN A = 7V + n-^ mi 1 2 MN 10g2[(^-m + 1)(N- И + 1) + B/MN +(M-n + + 1)] = B 2 Л/2 log 2 {(N - m + 1 )4 - (m2/4)x D/N1 x [27V-3(m - l)]2} = D Количество информации на выходе /вых, необходимое для устранения неопределенности исходной программы очувствленного робота, можно определить числом состояний среды 5ВЫХ, различаемых в программе как /вых = 1g SBbIx. Величина ZBX характеризует максимальные возможности системы восприятия информации, /вых - количество информации, необхо- димое для решения поставленной задачи, а их отношение Т| = /ВыДвх представляет собой коэффициент использования информации в системе очувствления робота. Чем Т| ближе к 1, тем лучше соответствует система восприятия информации поставленной задаче. Заметим, что задача может быть решена только при /вх > /вых. Например, для очувствленного робота, представленного на рис. 12.15, переход из одной позиции в другую осуществляется при определенном сочетании сигналов двух датчиков. Неопределенность в программе заклю- чается в выборе одного из двух действий: либо остановиться в позиции Ь, либо перейти в позицию с. Следовательно, для этой операции SBbIX = 2, SBX = 4, Т| = 0,5, а для всего очувствленного робота, оснащенного тремя датчиками, SBX = 8, SBbIX = 3, Т| = 0,53. 241
Расчет /вх, как правило, не представляет особых трудностей. Для вычис- ления /вых применяют методы комбинаторики. Однако точные аналитичес- кие выражения для нахождения /вых в различных робототехнических задачах получить не всегда удается. В таких случаях /ВЬ1Х можно оценить при- ближенно. В таблице 12.3 приведены формулы и численные значения оценок /вх, /вых и Т| для некоторых частных задач, решаемых с помощью очувствленного робота. На основе анализа описанных выше очувствленных роботов и ряда примеров, приведенных в таблице в порядке возрастания числа датчиков и сложности решаемых задач, можно сделать следующие выводы. При малом числе датчиков N и Т| ~ 1 удается организовать контуры обратной связи, которые могут по программе включаться и выключаться на различных этапах цикла. С увеличением N быстро растет число возможных состояний системы на входе и уменьшается количество информации, закладываемой оператором в программу движений робота. Соответственно уменьшается и число ориентирующих и базирующих приспособлений и требований к ним. Повышение универсальности робота при решении конкретных задач, как правило, приводит к уменьшению коэффициента использования информации Т|. Это означает, что в системе должна быть организована фильтрация информации, позволяющая из всего массива данных, поступивших от датчиков, отобрать необходимые для решения конкретных задач. Очевидно, в ряде случаев целесообразно иметь возможность управлять чувствительностью датчиков, чтобы не бороться с избыточной информа- цией, применяя сложные алгоритмы и затрачивая машинное время. Именно по этой причине в системах с телекамерами распознавание даже простых объектов требует значительного времени, которое часто превышает время движений. Усложнение задач, решаемых очувствленным роботом, неразрывно связано с ростом числа различаемых в программе ситуаций, которые должны запоминаться в системе управления робота. При небольших зна- чениях /вых требуется небольшой объем памяти и относительно про- стое логическое устройство сравнения. Повышение универсальности ро- бота неразрывно связано с ростом /вых, а следовательно, с ростом объема памяти. Например, можно, конечно, заранее вычислить и запомнить весь набор ситуаций на рецепторном поле (см. рис. 12.16), возникающих при всех возможных положениях объекта типа квадрата и круга. Тогда для каждой ситуации практически в момент ее возникновения можно указать тип объекта, положение его центра тяжести и ориентацию. Однако даже при сравнительно небольших значениях N число 5ВЫХ будет настолько велико, что запоминание не может быть обеспечено никакими техническими средствами. Поэтому для классификации и идентификации объектов информацию с рецепторных полей обрабатывают по определенным алго- ритмам для выделения характерных признаков распознаваемых объектов, и только эти признаки заносят в память. 242
12.3.6. Некоторые общие соображения и рекомендации, направленные на повышение быстродействия сенсорных систем роботов Сенсорные системы по связи с исходной программой движений робота и его системой управления условно можно разделить на следующие классы. 1. Сенсорные системы нижнего уровня, в которых сигналы от датчиков используются непосредственно в контуре регулирования привода исполни- тельного органа. Эти системы применяют как для отслеживания заранее неизвестной траектории, так и для формирования специфических харак- теристик движения, например для создания искусственной податливости [11, 12], широко используемой при операциях автоматической сборки, сварки, абразивной обработки деталей. Примерами сенсорных систем нижнего уровня являются схемы, приведенные на рис. 12.18 и 12.19. 2. Сенсорные системы тактического уровня, в которых с помощью датчиков дополнительно определяются временные или пространственные параметры элементов цикла движения робота. Это широкий класс систем, обеспечивающий безопасность работы ПР, его синхронизацию с техноло- гическим оборудованием, адаптацию элементарных этапов цикла к факти- ческому расположению деталей и оснастки и т.д. Примеры систем такого класса приведены на рис. 12.15 и 12.17. 3. Сенсорные системы стратегического уровня, в которых на основе информации, поступившей от датчиков, формируется модель внешней среды, и по результатам анализа этой модели вырабатывается или доопре- деляется структура движений и действий робота, позволяющих решить поставленную оператором технологическую задачу (см., например, систему на рис. 2.8). Поскольку для сенсорных систем характерна цифровая обработка информации, одной из важных характеристик является дискретность систе- мы. Следует различать дискретность по уровню, по времени и по прост- ранству. Дискретность по уровню сигнала датчика определяется аналого- цифровым преобразователем, быстродействие которого, как правило, зависит от числа разрядов цифрового представления аналогового сигнала. Поэтому при вводе информации от большого числа датчиков следует стремиться к уменьшению числа разрядов, если это допустимо по точности. В предельном случае при уменьшении дискретности любой пропорцио- нальный датчик сводится к бинарному, информация от которого вводится и обрабатывается за минимальное время. Дискретность по времени, точнее период квантования системы по времени, во многом определяется условиями выполнения технологической задачи, для которой предназначена данная система. Для сенсорных систем нижнего уровня, где управляющие воздействия выдаются в темпе движения, период квантования по времени, как правило, в 5-8 раз меньше периода собственных колебаний механической части (70-100 мс). В противном случае контур регулирования становится неустойчивым (см. гл. 10). Для систем тактического уровня период квантования соизмерим со временем выполнения элементарных движений цикла (0,1-0,3 с), для систем страте- 243
гического уровня - со временем выполнения всего цикла движений (1 с и более). Указанные в скобках оценки ориентировочные. Их конкретные значения зависят от свойств рассматриваемой механической системы и от условий выполнения роботом технологической задачи. Дискретность по пространству определяется числом и расположением датчиков, составляющих сенсорную систему. Наиболее естественна эта характеристика для регулярных систем датчиков типа линеек и матриц (см. рис. 12.16). Увеличение шага таких регулярных структур при осмотре поверхности приводит к повышению быстродействия, но сопровождается потерей информации. Задача разработчика заключается в том, чтобы найти и реализовать оптимальную дискретность, обеспечивающую максимальное быстродействие при гарантированном решении поставленной задачи. Время ввода и обработки информации зависит от дискретности системы по уровню и дискретности по пространству. Это время должно быть меньше или равно допустимому периоду квантования системы по времени. Тогда система будет работать в реальном масштабе времени. Опыт показал, что наиболее часто данное условие выполняется для сенсорных систем такти- ческого уровня. Здесь, как правило, коэффициент использования информа- ции близок к единице, а объем обработки минимален. Для систем нижнего и стратегического уровней условие работы в реальном масштабе времени часто не выполняется. В первом случае объем обработки, как правило, велик, но чрезвычайно мал допустимый период квантования по времени, а его увеличение может привести к неустойчивости системы. Во втором случае период квантования достаточно большой, но несоизмеримо возрастают объем перерабатываемой информации и сложность алгоритмов ее обработки. В результате нарушаются временные параметры цикла - робот становится "тугодумом", его движения определяются уже не темпом технологической операции, а скоростью вычислений. С учетом сказанного, а также проведенного выше информационного анализа различных систем очувствления и основных положений работ [14, 23, 24, 27], можно предложить следующие рекомендации, направленные на повышение быстродействия сенсорных систем роботов. 1. Следует стремиться к уменьшению объема обрабатываемых данных, к снижению информационной избыточности, как при синтезе сенсорной системы, так и при вводе информации. Это можно реализовать путем отсева малоинформационных данных, что приведет к повышению коэффициента использования информации. 2. Не следует увлекаться высокой разрешающей способностью сенсор- ной системы на уровне как аппаратных, так и программных средств. Система должна быть как можно более "грубой" по всем указанным выше характеристикам дискретности. Предел загрубления системы - заданная точность и надежность выполнения технологической операции. 3. Фильтрацию и сжатие (аппроксимацию) информации целесообразно осуществлять по возможности на более низком уровне, лучше всего - по мере ее поступления. Целесообразно управлять процессом ввода инфор- мации в зависимости от текущих результатов ее обработки и анализа. Для матричных сенсорных систем желательно использовать сенсоры с произвольной выборкой состояний отдельных элементов. 244
4. Следует строить сенсорную систему так, чтобы ее выходная инфор- мация получалась в виде, требуемом для доопределения исходной прог- раммы движений и действий робота. Целесообразно избегать промежуточ- ного кодирования и дешифровки информации. 5. Целесообразно информацию обрабатывать на уровне логических операций, по возможности избегая прямых вычислений, тем более с плавающей арифметикой. Вычисления целесообразно строить на рекур- рентных процедурах, при этом достигается экономия памяти и имеется возможность прекратить процесс при выполнении заданных условий. Следует избегать итерационных процедур, отдавая предпочтение явным формулам для расчета требуемых параметров. 6. В программном обеспечении следует предусматривать процедуры, позволяющие адаптировать применяемые алгоритмы к конкретным условиям функционирования системы. Рационально формировать пара- метры применяемых алгоритмов, обеспечивающие оптимальность системы по быстродействию, используя этап обучения робота. Если все же не удается вписаться в реальное время, то следует пересмотреть проект сенсорной системы, программное обеспечение и организацию вычислительных процессов по следующим направлениям. 6.1. Уменьшение универсальности сенсорной системы, так как обычно универсальность системы сопровождается увеличенным объемом сенсорной аппаратуры и повышенной сложностью алгоритмов обработки информации. 6.2. Если допустимо по точности, то рационально хотя бы часть объема вычислений перенести на аналоговые схемы. 6.3. Если используется один процессор, то следует попытаться уплот- нить вычисления за счет отказа от режима ожидания и перехода на режим прерываний. Например, после запуска на выполнение операции, следует переключить процессор на обработку информации, введенной ранее. Возврат на программу обработки кода АЦП и его повторный запуск производить по завершении преобразования - по сигналу прерывания от АЦП. 6.4. Использование сопроцессора для ускорения выполнения операций плавающей арифметики. Автономность отдельных подзадач, составляю- щих алгоритм обработки сенсорной информации, и реализация каждой из них на своем процессоре. Это означает переход к двух- или мульти- процессорной системам обработки данных. Распараллеливание вычисли- тельных операций. Ниже проведен сравнительный (по быстродействию) анализ сущест- вующих алгоритмов обработки информации в системах технического зрения роботов, а также рассмотрены усовершенствованные алгоритмы идентификации объектов, быстродействие которых существенно повышено за счет использования некоторых из приведенных рекомендаций. 245
12.4. АЛГОРИТМЫ ОБРАБОТКИ ИНФОРМАЦИИ В РОБОТОТЕХНИЧЕСКИХ РАСПОЗНАЮЩИХ СИСТЕМАХ 12.4.1. Задачи, решаемые роботом с помощью технических видеосистем. Идеология построения алгоритма распознавания Независимо от типа выполняемых технологических операций задачи, решаемые роботом с помощью системы технического зрения, как правило, состоят из небольшого набора элементарных подзадач, связанных с определением - размера объекта или его элемента, - положения объекта в пространстве, - его ориентации, - принадлежности объекта или его элемента (может быть, части контролируемой поверхности объекта) к одному из заранее определенного набора классов. Практически все технологические операции типа сборки, сварки, кассетирования, сортировки, определения дефектов поверхности и конт- роля качества деталей, выполняемые с применением видеосенсоров, тре- буют решения одной или некоторого набора из указанных подзадач [31]. Несмотря на такой малый набор задач, известно множество разно- образных алгоритмов обработки информации, библиотека которых по- стоянно пополняется новыми разработками [5]. Это обусловлено разно- образием объектов и производственных условий, в которых функционирует видеосистема (например, переменная освещенность объекта, наиболее сильно проявляющаяся на операциях сварки; недостаточная контрастность объектов по отношению к фону; блики и тени на различных частях объекта в зависимости от качества обработки поверхности его элементов; частичное перекрывание одних элементов другими вследствие широко распростра- ненного в промышленности хранения объектов навалом и т.д.). Разно- образие условий приводит к необходимости пересмотра технологических процессов, их организации на предмет стабилизации освещенности и упорядочивания поступления объектов, что порождает множество алго- ритмов обработки информации, направленных на программный учет и компенсацию этих переменных факторов. При решении любой из указанных выше задач мы имеем дело с анализом и программной обработкой изображений. Возникает естествен- ный вопрос - почему в робототехнических системах зрения не распрост- ранены классические методы и алгоритмы, созданные более чем за 50-летний период развития такой области знания, как техническая кибер- нетика, точнее ее раздела - распознавания образов [13, 34]? Оказывается, что традиционные методы распознавания созданы и работают в основном в таких условиях, которые существенно облегчают решение задачи, но практически никогда не выполняются в робототехнических системах [23]. Во-первых, при разработке классических методов распознавания и их использовании, например, для обработки аэрофотоснимков, на время 246
выполнения вычислений не накладывают жестких ограничений. Для роботов же обязательна обработка сенсорной информации в реальном масштабе времени, поскольку ритм работы современного технологического оборудования требует реакции робота на предъявленную сцену в течение десятых долей секунды. Данное обстоятельство усугубляется тем, что стандартное применение известных методов распознавания образов пред- полагает использование мощных ЭВМ с большими памятью и быстро- действием. Для обеспечения работы классических алгоритмов в реальном масштабе времени необходимо быстродействие вычислителя порядка 1- 100 млрд операций [72]. Робот же может быть оснащен вычислительным устройством существенно меньшей мощности, поскольку стоимость такого устройства должна быть соизмерима со стоимостью механики робота. Второе обстоятельство состоит в том, что при классическом подходе результаты обработки изображений передаются человеку для дальнейшего анализа и проверки. В робототехнических системах после обработки изображений сразу же вырабатывается соответствующее действие. Здесь неправильное решение может иметь катастрофические последствия. Поэтому существенно возрастают требования к надежности и уровню достоверности результатов анализа. И, наконец, не менее важным является тот факт, что цель обработки при классическом подходе - получение как можно большего количества существенной информации из представленного снимка, а в робото- технических системах, как следует из проведенного выше информационного анализа, - получение минимального количества информации, достаточной только для доопределения исходной программы движений робота. Таким образом, простой перенос методов и алгоритмов, известных из теории распознавания образов, на робототехнические видеосистемы, как правило, не дает удовлетворительных результатов. Применительно к роботам классические методы требуют существенной переработки на предмет использования адекватных роботу технических средств и сущест- венного сокращения времени вычислений при одновременном повышении уровня достоверности результатов. Многие разработки в области распознавания робототехническими видеосистемами, как правило, опираются на специфические особенности формы предъявляемых объектов, проявляющиеся на простых, быстро вычисляемых геометрических и топологических признаках: числе и взаимном расположении отверстий, площади объекта, длине его периметра, расстояниях от центра тяжести фигуры до некоторых характерных точек на контуре и т.д. Выбор этих признаков зависит от конкретного набора распознаваемых деталей и обычно пересматривается программистом при изменении номенклатуры объектов. Таким образом, достижение требуе- мого быстродействия оплачивается при таком подходе достаточно дорогой ценой, а именно потерей общности метода распознавания, универсальности разрабатываемого алгоритма и гибкости в его применении. Будем исходить из сложившегося мнения, что робот - универсальная машина, которая может быть программно приспособлена к выполнению достаточно широкого класса технологических задач. Распространив это же 247
качество на робототехнические видеосистемы, можно прийти к выводу, что создаваемые алгоритмы должны также обладать некоторым уровнем универсальности и общности, а достижение быстродействия должно обеспе- чиваться за счет автоматической адаптации (или конкретизации) алгоритма на этапе обучения системы в рамках номенклатуры предъявленных объектов. Таким образом, исходный алгоритм должен быть достаточно общим и вычислять, например, большое число разнообразных признаков, характе- ризующих каждый класс объектов. После предъявления системе конкрет- ной совокупности объектов дополнительная обработка информации о полученных на этапе обучения признаках позволит выделить среди всех вычисленных признаков минимальное число наиболее существенных для разделения предъявленной совокупности объектов. Специфические особенности формы объектов отразятся на этом выборе. В результате будет автоматически синтезирован некоторый алго- ритм (в данном случае число и набор признаков), наилучший для предъявленной совокупности объектов. В основу данного подхода положен тот факт, что требование к быстродействию системы на этапе обучения значительно ниже, чем на этапе распознавания, когда темп обработки информации диктуется технологическим процессом. Поэтому некоторые дополнительные затраты времени на обучение могут дать существенный выигрыш в быстродействии уже на этапе идентификации при одно- временном сохранении универсальности алгоритма. Все методы и алгоритмы, используемые для распознавания образов, в том числе и для робототехнических видеосистем, можно разделить на три класса: - интегральные: всю получаемую от сенсора информацию вводят в ЭВМ и используют для вычисления признаков объекта или непосредст- венно параметров его положения и ориентации; - контурные: на одном из первых этапов выделяют контур предъявлен- ного объекта, тем самым существенно уменьшают размерность обрабаты- ваемой информации; - характерных точек: положение или класс объекта определяют по состоянию некоторой совокупности элементарных датчиков, расположение которых в пространстве находят на этапе проектирования системы по известному набору объектов или их положений. Поскольку в интегральных методах отсутствует сколько-нибудь сущест- венная фильтрация входной информации, а, как показал информационный анализ, при большой размерности видеосенсора фильтрация информации является основным средством повышения быстродействия, в дальнейшем мы исключим интегральные методы из рассмотрения. Остановимся только на методе характерных точек и контурном методе. Первый относится к смешанным методам и предназначен для распозна- вания объектов различной формы, занимающих фиксированное положение в пространстве (идентификация класса объекта), и одного и того же объекта, который может занимать одно из известных фиксированных положений (идентификация положения объекта). Второй метод универсальный, его быстродействие повышено за счет реализации 248
рекомендаций, вытекающих из информационного анализа (см. раз- дел 12.3.6), и за счет адаптивного алгоритма обучения системы при предъявлении ей распознаваемого набора объектов. Несмотря на разнообразие применяемых видеосенсоров, а также методов ввода информации и ее первичной обработки, в качестве входной информации для описываемых ниже алгоритмов примем отображение объекта на дискретное поле чувствительных элементов, т.е. некоторый бинарный массив ("О" и "1” - соответственно отсутствие и наличие объекта в данной точке), адрес каждого элемента которого определяет координаты данной точки на плоскости сцены. Дискретное поле чувствительных элементов может быть упорядо- ченным и неупорядоченным. Упорядоченное поле - аналог матричных сенсоров. Отметим, что базовая ячейка дискретного поля может быть вы- полнена на основе квадрата, прямоугольника, равностороннего треуголь- ника, или других простых геометрических фигур. От формы ячейки и дис- кретности по обоим направлениям зависит так называемая инструменталь- ная точность поля [20], характеризующая погрешность представления объекта, обусловленную пространственным квантованием изображения. В методе характерных точек, как правило, используют неупорядо- ченное чувствительное поле. Кажущаяся, на первый взгляд, хаотичность расположения отдельных бинарных датчиков (например, излучателя и приемника) на самом деле определена специфическими особенностями формы и возможного расположения предъявляемых системе объектов. 12.4.2. Идентификация объекта по методу характерных точек. Определение положения бинарных датчиков Метод характерных точек дает эффективный и быстрый алгоритм распознавания объектов или их фиксированных положений. При нало- жении вариантов сцены в полученной совмещенной картине появятся области, общие для различных объектов. На этом факте и основан рассматриваемый метод. Можно попытаться найти среди данных областей такую, которая будет общей только для половины представленных объектов. Эта область будет пространственно определять границы установки первого бинарного датчика. Сигнал с этого датчика разделит всю совокупность объектов на два класса. Далее можно попытаться найти область, которая разделит каждый из классов на два примерно равных подкласса, - это зона установки второго бинарного датчика. На данном этапе по сигналам с двух датчиков можно идентифицировать четыре группы объектов. Продолжая процесс выделения областей, делящих группы объектов пополам, придем в конечном итоге к такой ситуации, когда число объектов в группе выродится до единицы. В конечном итоге будут найдены области размещения всех бинарных датчиков, а их общее количество определится простым соотношением N = entier(log2 5), (12.33) 249
в [Р1Р2] = ю 7///Y////// Рис. 12.21. Возможные положения объекта в оснастке (я-г) и определение положения бинарных датчиков (д) где 5 - число распознаваемых объектов, символ entier обозначает мини- мальное целое, превосходящее значение выражения, стоящего в скобках. В данном случае S - это число ситуаций, которое должно различаться с помощью сенсорики системой управления робота. Следовательно, для данной системы количество информации /вх, доставляемой датчиками, будет равно количеству информации /вых, необходимому для устранения неопределенности в исходной программе движений робота. Коэффициент использования информации Г| равен единице. Для таких систем обработка 250
информации полностью исключена, поскольку двоичный код, считываемый со всех N датчиков, образует некоторый шифр, однозначно определяющий фактическую ситуацию в зоне действия робота. Пример идентификации положения детали, имеющей ось симметрии иллюстрирует рис. 12.21 [17]. С помощью простой оснастки (прямоугольной призмы) добиваются того, чтобы деталь занимала некоторый набор фиксированных положений (рис. 12.21, а-г). В зависимости от фактичес- кого положения детали робот должен изменять программу движений для ее захвата. На этапе синтеза системы осуществляется поиск места расположения датчиков. Для этого выполняется схема совмещенных положений детали (рис. 12.21, д). Зоны размещения датчика Рь разделяющие совокупность положения объекта на два класса, показаны двойной штриховкой. Возможные области размещения датчика Р2> выделяющие в каждом из этих классов фактические положения детали, показаны одинарной штри- ховкой. В результате коды, полученные с датчиков, однозначно идентифи- цируют фактическое положение объекта (см. рис. 12.21, а-г). Эти коды не требуется подвергать дополнительной обработке. Они могут быть исполь- зованы в качестве содержимого младших разрядов адреса ячейки памя- ти, в которой хранится адрес подпрограммы реакции робота на данную ситуацию. Выше был рассмотрен идеальный алгоритм распознавания объектов по методу характерных точек, дающий минимальное число N бинарных дат- чиков. На самом деле при большом числе S распознаваемых ситуаций практически никогда не удается до конца провести итерационную процедуру деления класса пополам (процедуру дихотомии) из-за отсутствия на каких- либо итерациях областей, общих для половины возможных ситуаций. Поэтому выражение (12.33) дает только нижнюю оценку числа требуемых датчиков. Верхняя оценка вытекает из предельного случая, когда ни одна пара объектов из данной совокупности S не имеет общей области. В таком случае необходимо, чтобы N = 5. Увеличение числа датчиков обусловлено также тем, что на практике границы объектов несколько размыты вследствие нечеткости фиксации положения объектов. Возникает также проблема повышения надежности системы за счет установки избыточного числа датчиков. Тем не менее количество информации, доставляемое таким неупорядоченным набором датчиков, существенно меньше, чем матричным сенсором, поэтому быстро- действие системы значительно выше. Здесь построение процедуры клас- сификации выполнено на этапе проектирования системы, а само распозна- вание ситуации, как правило, сводится, к дешифровке полученного кода, которая выполняется простыми аппаратными средствами. При большом числе распознаваемых ситуаций применение графиче- ского метода определения положения датчиков, как это выполнено на рис. 12.21, становится невозможным. Задачу синтеза системы в этом смысле решает ЭВМ. Исходные данные об объектах для работы програм- мы синтеза целесообразно получать с помощью специальных стендов [7,15]. 251
a б № линии визирования Объект № 1 2 3 4 • • • 0000 0 0 1 1 • • • 0001 1 0 0 1 • • • • • • • • • • • • • • • • • • • • • • 2317 1 1 1 0 • • • 2318 0 1 0 0 • • • Адрес излучателя Рис. 12.22. Схема стенда для получения исходной информации об объектах (а) и структура характеристической матрицы (б) 252
Такой стенд может быть образован матрицей осветителей и рецеп- торным полем светочувствительных элементов (рис. 12.22, а). Объект уста- навливают между осветителями и приемниками в положении, соответ- ствующем технологическому процессу. Каждый осветитель, начиная с пер- вого, последовательно направляется на светочувствительные элементы, с которых снимается код нуля, если элемент освещен, и код единицы, если элемент находится в тени объекта. После того, как получат информацию по всем линиям визирования от первого осветителя, включают второй и т.д. Информация от объекта отправляется в ЭВМ в виде характеристической матрицы, структура которой приведена на рис. 12.22, б. Для повышения надежности системы один и тот же объект можно обрабатывать на стенде несколько раз, чтобы зафиксировать флуктуации характеристической матрицы вследствие неточностей положения объекта, допускаемых технологической оснасткой для его фиксации. Элементы характеристической матрицы, которые изменяются при таких колебаниях положения объекта, заполняются специальным символом, например, Эти символы образуют некоторый ореол "размытости" контура изображе- ния - зону недостоверной информации. Блок-схема обработки характеристической матрицы объектов пред- ставлена на рис. 12.23 [7]. Сначала в блоке 2 выполняется предварительная обработка матрицы, позволяющая удалить строки (линии визирования), не удовлетворяющие конструктивным условиям на расположение излучателей и приемников. Если матрица имеет хотя бы два одинаковых столбца (с точ- ностью до символов "-"), то данные два объекта не различимы, и программа заканчивает свою работу (блок 3). Если одинаковых столбцов нет, то в блоке 4 по формуле (12.33) вычисляется нижняя оценка числа датчиков и производится очистка характеристической матрицы от неинформативных строк (блок 5). Таковыми являются строки, содержащие коды "О" и или "1" и Если встречаются одинаковые строки, то в матрице оставляется только одна из них. Далее (блок 6) для каждой строки матрицы вычисляется коэффициент различающей способности кр = 2min{n0, «1}/S, где По и Л] - число символов "О" и "1" в строке соответственно. Если сим- волы отсутствуют, а п0 = = 5/2, то £р принимает максимальное значе- ние, равное единице. Из всех строк выбирается та, которая имеет макси- мальный кр. В соответствии со стратегией дихотомии ей отдается предпоч- тение в разбиении совокупности объектов на два класса по признаку "О" и "1". Такое разбиение выполняется в блоке 7. Объекты, содержащие в этой строке, заносятся в оба класса. Там же для каждого из классов Sj по (12.33) вычисляется соответствующее значение нижних оценок Nj, и форми- руется своя (усеченная) характеристическая матрица. В блоке 8 общее чис- ло датчиков, необходимых при данном разбиении, вычисляется как сумма Z Nj. В блоке 9 выполняется проверка (совпадение) Z Nj с текущим значе- нием N. Если совпадение отсутствует и просмотрены не все строки харак- теристической матрицы (блок 10), то выбирается следующая строка с мак- 253
1 Начало Рис. 12.23. Блок-схема алгоритма определения минимального числа бинарных датчиков и их пространственного расположения 254
симальным кр (блок 77). Если же просмотрены все строки, то значение N наращивается на единицу (блок 72). Если условие блока 9 выполняется, и число характеристических матриц меньше, чем число объектов (блок 73), то процесс разделения на классы продолжается. Когда каждому объекту будет соответствовать своя характеристическая матрица, то блоком 14 бу- дет сформирована результирующая таблица, содержащая 5 двоичных кодов, каждый из которых идентифицирует соответствующий объект. Разрядность кода равна минимальному числу датчиков, необходимых для распознавания заданной совокупности объектов. Коды адресов этих дат- чиков определяют пространственное положение излучателей и приемников. Как видно в приведенном алгоритме также использовано основное средство повышения быстродействия - фильтрация информации. Но она выполняется не за счет отсева несущественной информации на этапе ввода или обработки, а непосредственно на этапе проектирования за счет удале- ния из исходного матричного сенсора чувствительных элементов, порож- дающих несущественную (для данного набора объектов) информацию. Однако повышение быстродействия здесь сопровождается потерей весьма важного для современного производства качества - гибкости. При любом изменении набора объектов необходимо повторить этап проектиро- вания и заново сформировать совокупность бинарных датчиков. Кроме того, метод позволяет решать задачи распознавания только при фиксиро- ванных положениях объектов. Все это несколько сужает область при- менения метода характерных точек в робототехнике. Ниже рассмотрен алгоритм распознавания, относящийся к классу контурных, который отли- чается большей гибкостью и универсальностью применения. В алгоритме использованы классические подходы, известные из теории распознавания образов, а повышение его быстродействия достигается за счет реализации рекомендаций, изложенных в разделе 12.3.6. 12.4.3. Идентификация объекта по информации, содержащейся в его контуре Укрупненная блок-схема алгоритма, реализующего контурный метод распознавания объекта, представлена на рис. 12.24. В алгоритме всегда присутствуют четыре этапа (номера этапов соответствуют номерам блоков на рис. 12.24): 7) выделение контура объекта; 2) его аппроксимация; 3) вычисление характеристических признаков представленного объекта; 4) собственно идентификация - определение принадлежности объекта к тому или иному классу. Код распознанного объекта и, если это необходимо, параметры его положения и ориентации, вычисляемые в блоке 5, передаются в систему управления роботом для доопределения его исходной программы. Парал- лельно результаты работы алгоритма могут быть использованы (блок 6) для адаптации видеосенсора к изменяющимся условиям освещенности, для изменения его дискретности, для управления его положением и т.д. (на 255
Рис. 12.24. Укрупненная блок-схема алгоритма распознавания объектов по контурному методу 256
схеме блоки, в которых вычисляются данные, и блоки, которые их исполь- зуют, связаны штриховыми линиями). Режим обучения, в отличие от автоматического режима идентификации, является наладочным режимом работы системы. Обучение проводит оператор. Его задача - с помощью блока 7 получить эталонные данные о новом объекте и скорректировать, если это необходимо для задачи и до- пускается системой, классификатор - набор правил, по которым произво- дится разделение исходной совокупности объектов на отдельные классы. Скорректированный классификатор и эталонные характеристические при- знаки, вычисленные в блоке 7, используются в блоке 4 при автоматическом распознавании объектов. Вся программа направлена на последовательное сжатие видеоинфор- мации. Процедура распознавания объекта есть ни что иное, как преобра- зование исходного массива данных, доставляемых сенсором, всего лишь в одно число, являющееся кодом объекта, предъявляемого сенсору. Исход- ный объем информации, поступающей с сенсора, в современных робото- технических системах составляет 104-106 бинарных (при двухградационном отображении) или восьмиразрядных (при фиксировании 255 уровней яр- кости) чисел. На этапе выделения контура объекта из данного массива остается уже 102-103 чисел. Далее при аппроксимации контура в текущем массиве остаются только точки, в которых наблюдается существенное изменение контура. Участки контура, близкие к прямым (при линейной аппрокси- мации), отфильтровываются. Как правило, при этом остается не более 50 чисел. Вектор характеристических признаков - это некоторая свертка аппроксимированного объекта, т.е. дальнейшее сжатие информации. На этом этапе обработки обычно получают не более 7-10 чисел. И, наконец, процедура классификации позволяет по вычисленным и эталонным при- знакам установить принадлежность объекта к одному из классов, т.е. сжать информацию до одного числа - кода представленного объекта. Следует отметить, что сложность и объем вычислительных операций, выполняемых над каждым числом в этой цепочке убывающих массивов, растет с номером этапа. Поэтому для повышения быстродействия алго- ритма в целом стремятся как можно больше отфильтровать информацию на предыдущем этапе. Тогда вычислительные затраты на последующем этапе будут минимальны. Наибольшей эффективностью обладает алго- ритм, в котором наибольшая степень сжатия информации достигается на начальных этапах обработки. Множество методов и алгоритмов выполнения каждого этапа из изло- женной последовательности породило большое разнообразие контурных алгоритмов распознавания объектов в робототехнических системах. Ниже проведен краткий анализ существующих методов реализации основных этапов (№ 1, 2, 3, 4 и 7) с целью выявить преимущества и недостатки каж- дого подхода; отобрать наиболее перспективные методы по быстродей- ствию и наметить дальнейшие пути их совершенствования. Выделение контура объекта (этап 7) может осуществляться как аппа- ратными, так и программными средствами. Примером аппаратного выде- ления контура является система [24], в которой информация от сенсора 9. Корендясев А.И. Кн. 2 257
вводится порциями в виде грубых (с большим шагом) матриц отсчетов яркости: при вводе следующего кадра каждая из точек отсчета смещается из предыдущего положения на расстояние, значительно меньшее шага грубой матрицы. Элементы матрицы, значения которых при таких сдвигах меняются, рассматривают как точки, принадлежащие контуру объекта. Для "подвижной" матрицы [10x10] и сдвиге, равном 1/20 шага матрицы, эффективная разрешающая способность системы не уступает "непод- вижной" матрице размерностью [200 х 200]. Для получения полного кон- тура необходимо выполнять сдвиги в нескольких направлениях. Здесь фильтрация осуществляется непосредственно при вводе информации с сен- сора, но ее объем, вследствие ряда сдвигов по нескольким направлениям, велик. Кроме того, данный алгоритм требует дальнейшей обработки - для сшивки отдельных участков в непрерывный силуэт объекта. Более распространенным для робототехнических систем является про- граммное выделение контура. Оно основано на выделении областей изобра- жения с разным изменением интенсивности освещенности. Часто контур выделяется за счет последовательной обработки каждой строки изобра- жения и выделения точек, в которых имеет место переход от "0" к "1" и обратно [39, 63, 76]. Недостаток этого традиционного способа заклю- чается в необходимости просмотра и анализа всего объема вводимой информации. Иной подход использован в методе отслеживания контуров. В качестве начальной точки выбирается первая встреченная при осмотре изображения точка контура. Затем осуществляется движение вдоль границы объек- та, например, в соответствии с правилом сохранения объекта справа. По мере движения вдоль границы формируется массив координат контурных точек объекта. Для выделения последующей контурной точки обычно просматривают, например по часовой стрелке, ближайшие точки по отношению к предыдущей, уже найденной контурной точке. Как правило, просматривают четыре или восемь соседних точек, последовательно перемещаясь в найденные точки контура [58]. Движение заканчивают при совпадении координат найденной точки с координатами первой, обеспе- чивая замкнутость контура [80]. Преимущество метода отслеживания контура состоит в том, что обра- ботке подвергаются только области, граничащие с объектом, а наиболь- шие по площади зоны фона и поверхности объекта отфильтровываются без всякого анализа. Кроме того, обработка этого существенно сокращенного объема информации выполняется на уровне логических (булевых) операций, которые выполняются на ЭВМ за 1-2 такта работы процессора. Важно и то, что в результате работы алгоритма получают не отдельные участки контура, а непрерывную последовательность его соседних точек, что уменьшает объем последующей обработки. Для уменьшения объема памяти, необходимого в данном методе для запоминания координат точек контура, часто используют цифровое коди- рование, в основе которого лежат цепи Фримена для четырех ближайших соседей [13]. Цепь Фримена позволяет каждой ближайшей точке контура поставить в соответствие цифровой код (рис. 12.25, а), что существенно сокращает описание. 258
Код: 122212123232343434441414 б 2 Код: 42233211077666655 Рис. 12.25. Представление контура объек- та цепью Фримена (а), цифровым кодированием на основе состояния восьми соседних точек (б) и производной от цепи Фримена (в) в Код: 1231311313113131213131 9* 259
Известен метод описания контура, построенный на цифровом кодиро- вании состояния восьми ближайших точек [13] (рис. 12.25, б). В работе [43] для этой же цели использованы производные цепи Фримена, когда выпук- лому участку контура ставят в соответствие цифру 1, прямолинейному участку - 2, вогнутому участку - 3 (рис. 12.25, в). Подобное описание кон- тура зависит от дискретности и ориентации сетки чувствительных эле- ментов. Найдены производные цепи Фримена [41,43], инвариантные к этим параметрам, что полезно для установления идентичности двух контуров и их идентификации. Аппроксимация контура (блок 2 на рис. 12.24) - вычислительная (в отличие от предыдущего этапа) процедура, содержащая "длинные" операции типа умножения и деления, которая, с одной стороны, уменьшает объем обрабатываемой информации, а с другой, что не менее важно, - сглаживает контур, обеспечивая меньший разброс в характеристических признаках при различных положениях объекта. Наиболее распространен- ной является линейная аппроксимация [17, 32]. Уравнение прямой, проходящей через совокупность точек контура, ищется в виде ах + by = с. Коэффициенты а, b и с для очередной (i + 1)-й точки с координатами xi+ (, yi+1 вычисляются по формулам а = КхК5- К2К3, Ь = К2К4-КХК3, с = К4К5-К%, где *2= £у,, K3=J^xjyj, К4=^х>, K5=Jj. 7 = 1 7 = 1 7=1 7=1 7=1 При этом (i + 1)-ю точку относят к прямой, если среднеквадратическая ошибка такого приближения не превысит заданной величины. Ошибка определяется по формуле е = с (ic + с - аКх - bK2)l(i + 1)(а2 + Ь2). Как только ошибка выйдет за заданный предел, (i + 1)-й точке при- сваивается индекс 1 и аппроксимируется следующий участок контура. Линейно-круговая аппроксимация контура - более сложная задача. В работе [58] для нахождения точек сопряжения дуг или участков прямых определяют и исследуют кривизну контура в функции его длины. Кривизна R, в i-й точке контура вычисляется по соотношению п 7?,. = [(2п-1)/п] £е,- Si + n-S,_„ + где Qj- угол наклона касательной в j-й точке контура; 5,+„, Sj_n+1 - длина контура на двух примыкающих к i-й точке участках, имеющих по оди- наковому числу точек п, т.е. соответственно от точки i до i + п и от точки i до i - п + 1. Точки сопряжения двух прямых имеют локальный пик в кри- 260
Рис. 12.26. Аппроксимация контура объекта участками прямых и дуг окружности (а) и функция кривизны контура объекта (б) визне. Если он превышает 40°, то в данной точке строится узел сопряже- ния. Дуги окружностей выявляются там, где изменение кривизны на вели- чину установленного порога происходит плавно на заданном интервале из 10 точек контура. Контур объекта и функция его кривизны, полученная дифференци- рованием угла касательной к контуру в различных точках, приведены на рис. 12.26. Объект в этом случае может иметь описание Р]О.\Р2о^—, где а- элемент связи между двумя последовательными сегментами, несущий ин- формацию о длине участка. Такое описание получило название синтаксиче- ского представления кривой [73]. Как видно из приведенных соотношений, аппроксимация контура дается весьма дорогой ценой. Поэтому совершенствование алгоритмов аппрокси- мации в направлении уменьшения объема вычислительных операций может существенно повысить быстродействие программы распознавания объек- тов. Наиболее перспективно выполнение аппроксимации непосредственно на этапе его выделения [26]. При этом, во-первых, сокращается число этапов обработки информации, а, во-вторых, удается обойтись без продол- жительных машинных операций типа умножения, за счет выделения точек сопряжения аппроксимирующих прямых только с помощью логических 261
условий, проверка которых выполняется на управляющих ЭВМ зна- чительно быстрее. Такой модернизированный алгоритм рассмотрен ниже. Определение набора характеристических признаков (блок 7 на рис. 12.24), вычисление которых выполняется на этапе 3, не является обяза- тельным. Появление этого этапа стало прямым следствием требования со- кращения времени вычислений при распознавании объектов. Действи- тельно, полученное силуэтное отображение сцены содержит полную ин- формацию об объекте, поскольку по этой информации исходное состояние сцены может быть восстановлено. Если в памяти ЭВМ в таком же силуэт- ном отображении хранится эталонное представление различных объектов, то определение принадлежности представленного объекта к тому или иному классу может быть выполнено методом сравнения с эталонным. В данном случае в соответствии с этим методом предполагается установ- ление совпадения (или близости, поскольку изображения подвергнуты пространственному квантованию) двух точечных отображений. Данная процедура требует продолжительного машинного времени из-за необходимости выполнения плоских сдвигов и поворотов эталонного или представленного отображений с целью их наилучшего совмещения. В ра- боте [69] рассмотрены алгоритмы, позволяющие методом сравнения с эталоном идентифицировать частично закрытые объекты по участкам видимого контура. Здесь задачи идентификации объектов и определения их положения и ориентации совмещены, что и приводит к очень длительной процедуре. Для уменьшения времени вычисления эти две задачи целе- сообразно разделить, т.е. отодвинуть идентификацию объекта на следую- щий этап, а силуэтное отображение представленного объекта подвергнуть дальнейшей обработке с целью получения значений некоторого набора характеристических признаков, не зависящих от положения и ориентации объекта. Как правило, такой набор включает площадь объекта, длину его периметра, главные центральные моменты инерции, минимальное и макси- мальное расстояния от геометрического центра силуэтного отображения до его контура, число отверстий и т.д. В ряде случае реализуются некоторые функции от указанных параметров, за счет которых добиваются инва- риантности признаков не только к сдвигам и поворотам, но и к масштабу объектов. Последнее позволяет уменьшить число массивов, описывающих эталонные классы, и сократить объем памяти. Назначение признаков для идентификации объектов - прерогатива программиста. Пока это не формализованная процедура, которая строится на основе опыта программиста, литературных данных и совокупности объектов, подлежащих распознаванию. Задача решается, как правило, методом проб или моделированием на ЭВМ. Среди множества предпола- гаемых признаков пытаются найти такой набор, каждый элемент которого имеет наиболее различающиеся числовые значения для распознаваемых объектов. Данный эвристический метод не дает гарантии того, что в случае из- менения состава распознаваемых объектов назначенный ранее набор признаков позволит надежно разделять объекты. При неудачной ситуации приходится либо пересматривать состав признаков, либо расширять набор. 262
В результате при большой степени "похожести” объектов набор признаков существенно увеличивается и в ряде случаев достигает 50 [82]. Причина несовершенства такого подхода заключается в том, что любой набор эвристических признаков, как бы удачно он не был назначен, является некоторой сверткой представленного контура объекта в соответствующий набор чисел. При таком подходе информация о контуре будет потеряна, поскольку нет однозначности в обратном переходе, так как нельзя по имеющимся числовым значениям эвристических признаков восстановить контур объекта. Указанное замечание побудило многих авторов искать представление контура в виде разложения в некоторой системе функций и использовать коэффициенты разложения в качестве характеристических признаков. Для этого выбирают функции, однозначно описывающие дискретное изобра- жение объекта независимо от его положения и ориентации на рецепторном поле. При идентификации объектов используют только первые члены ряда. С увеличением степени "похожести” объектов число учитываемых членов ряда возрастает. Здесь важно следующее: если дискретные отображения двух объектов имеют хотя бы небольшое устойчивое различие, то всегда существует такой номер члена разложения, по значениям которого можно различить эти объекты. Данный метод получения регулярного ряда признаков, основанный на аналитическом описании функции контура, может быть полностью формализован и не требует вмешательства оператора. При изменении состава распознаваемых объектов необходимо только на этапе обучения определить число членов ряда, используемых при идентификации, т.е. ограничить ряд справа. В настоящее время используют описание контура с помощью преобра- зования Фурье [13, 44], разложения Карунена- Лоэва [34], ряда полярных [78] или декартовых [45, 50, 62] моментов и др. Такие разложения при ограниченном числе членов дают некоторую аппроксимацию контура. Входными данными для процедуры разложения в ряд является массив координат точек, составляющих силуэтное изображение. Таким образом, разложение контура в ряд предполагает совмещение этапов 2 (аппроксимацию контура) и 3 (вычисление признаков) в одной процедуре. Поскольку массив точек, составляющих силуэт, достаточно велик, а получение коэффициентов ряда связано с вычислением степенных или тригонометрических зависимостей для каждой точки, то общее время выполнения этой процедуры значительно. Его можно уменьшить за счет сокращения числа точек, определяющих контур, т.е. за счет кусочно-ли- нейной аппроксимации, выполненной ранее на этапе выделения контура с помощью быстрых логических процедур (см. раздел 12.4.4). Однако разложение в ряд контура, составленного из участков прямых, как правило, требует численного интегрирования, а это также длительная процедура. Можно избавиться и от этой неприятности, если раскладывать в ряд не сам контур (например, его полярное уравнение), а некоторую функцию от него, допускающую явное представление коэффициентов ряда в зависимости от координат вершин линейчатой фигуры, аппроксимирую- щей объект [21]. Такое решение позволяет повысить быстродействие 263
алгоритма за счет вычисления регулярного ряда признаков по рекуррент- ным формулам при малом числе точек, определяющих контур объекта. Построение классификатора выполняется блоком 7 (см. рис. 12.24) на этапе обучения. Термин "построение" несколько условен: алгоритм класси- фикации остается неизменным - его выбирают при синтезе системы. Здесь речь идет о вычислении ряда параметров алгоритма, определяющих число используемых при идентификации признаков, их номера, весовых коэф- фициентов, пороговых значений, последовательности просмотра признаков и т.д. С помощью этих параметров алгоритм адаптируется к данной совокупности объектов, обеспечивая успех решения задачи распознавания. Важно, чтобы за счет выбора параметров алгоритма на этапе обучения успех достигался при максимальном быстродействии работы алгоритма на этапе идентификации. Далеко не все алгоритмы, используемые в робото- технике, обладают таким качеством. Рассмотрим два наиболее распространенные метода в робототехни- ческих видеосистемах: метод ближайшего соседа и метод дерева принятия решения. Суть задачи заключается в следующем. В оперативной памяти хранится двумерный массив эталонных признаков, характеризующих клас- сы объектов, подлежащих распознаванию С11 С12 •" С1т С21 с22 ... С2т эт ^п2 ”• Спт ) где т - число признаков, п - число классов объектов. В результате обра- ботки информации от сенсора получен набор признаков С* = (cf,с2,..., с*), характеризующий представленный объект. Необходимо принять решение об отнесении этого объекта к одному из классов. В соответствии с методом ближайшего соседа предполагается зачисле- ние представленного объекта в класс, к которому принадлежит его бли- жайший сосед. Мера близости в пространстве признаков может быть вы- брана на основе различных метрик. Наиболее часто используют эвклидову метрику 2 2(с,у-с*). (12.34) ;=1 В реальных программах квадратный корень не вычисляется. Из полу- ченного ряда расстояний L* (7 = 1, п) определяют минимальное. Полу- ченное значение / является решением. В меру близости (12.34) обычно вводят коэффициенты, обеспечивающие нормирование признаков, если отдельные их совокупности имеют различную физическую природу и раз- личаются диапазонами значений. Коэффициентами учитывается также раз- личие в относительной точности измерений каждого признака: более точ- ные признаки должны вносить больший вклад в формирование расстояния. Эти коэффициенты назначаются на основе опыта и интуиции разработчика 264
после тщательного изучения свойств и особенностей распознаваемых объ- ектов. Важно отметить, что вследствие дискретности отображения объекта, некоторой нестабильности относительного положения вершин аппрокси- мирующего контура при различных положениях и ориентации объекта, а также из-за других возмущений, действующих в системе, каждый из признаков czy, полученный на этапе обучения, будет характеризоваться неко- торой вариацией, т.е. занимать область допустимых значений, характе- ризуемую некоторым законом распределения. Поскольку расстояние L* есть свертка признаков по каждому клас- су в одно число, то диапазон изменения такой результирующей вели- чины всегда будет больше, чем диапазон изменения любого из слагае- мых (12.34). Большая удача разработчика системы, если диапазоны из- менения L* для соседних классов не пересекутся, либо если один из них не будет превышать половины расстояния между этими классами. В пер- вом случае (рис. 12.27, а) существует область (см. зону с двойной штриховкой), в которой идентификация невозможна, а во втором (рис. 12.27, б) - область, в которой часть объектов класса А будет ошибочно отнесена к классу В. В классической теории распознавания образов созданию и исследова- нию вероятностных методов решения задач идентификации уделяется много внимания. Наиболее часто используют байесовский классификатор [8, 13, 34], в котором мерой близости служит риск принятия ошибочного решения. Применение оптимального байесовского классификатора в робо- тотехнических системах часто наталкивается на трудности, связанные со сбором большого объема экспериментальных данных для получения много- мерных плотностей распределения. При любом изменении состава объ- ектов объем этих работ необходимо повторить, теряя при этом основное достоинство промышленного робота - возможность быстрой перестройки на новую технологическую операцию. Стремление использовать наиболее простые процедуры принятия реше- ний с целью повышения быстродействия выполняемой операции и обес- печения возможности быстрой переналадки приводит к отказу от вероят- ностных методов распознавания на современном уровне развития робото- техники. Наиболее широко используют детерминированный подход. Это совсем не означает, что при решении задач распознавания не учитывают возможные колебания значений признаков объектов. Обычно решение за- дачи осуществляется на основе средних значений признаков, а их диапазоны изменений учитываются при назначении порогов, ограничивающих максимальное расстояние между представленным объектом и ближайшим классом. В случае неблагоприятных ситуаций, проиллюстрированных на рис. 12.27, как правило, пересматривается набор признаков. Если задан набор признаков т, то лучший поднабор признаков к<т может быть найден при исследовании всех комбинаций из т по к признаков путем выделения среди них поднабора, обеспечивающего максимум минималь- ного расстояния L между двумя ближайшими классами. Рассматривая воз- 265
a Рис. 12.27. Ситуации, приводящие к ошибкам распознавания при использовании метода ближайшего соседа а - вследствие перекрывания диапазонов изменения расстояний; б - вследствие превышения диапа- зона изменения L* половины расстояния между соседними классами А и В; L*A и L*B - расстояния, вычисленные по усредненным значениям признаков сА}-сВр АВ - линия, равноудаленная от точек L*A и L*B, разделяющая классы А и В растание этого расстояния как функцию к (1 <к<т), можно определить значение к, при котором включение дополнительного признака дает несущественное увеличение расстояния. Таким образом определяют оптимальный набор признаков. На основе диапазонов изменения признаков рассчитывают порог, определяющий максимально допустимое расстояние до ближайшего класса. Если вычис- ленное расстояние превышает значение порога, то представленный объект отбрасывается как нераспознанный. Процедуры, реализующие метод бли- жайшего соседа, приемлемы с точки зрения временных характеристик при т < 10 [60]. Метод построения дерева решений является более быстрым, позволяет использовать большее число признаков, а на этапе идентификации исполь- зовать только часть из общего набора признаков. В отличие от преды- дущего метода, где признаки по каждому классу объектов сворачиваются в одно число, имеющее смысл меры близости, данный метод позволяет найти решение непосредственно в пространстве признаков. Метод основан на последовательном исключении классов или групп классов, которые по значению какого-либо одного признака не могут претендовать на имя представленного объекта. Алгоритм распознавания строится в виде дерева решений. В каждой вершине исследуется один из признаков и в зависимости от установленно- го порога и значения признака для представленного объекта выбирается 266
Рис. 12.28. Конфигурации объектов (а) и дерево решений задачи распознавания объектов по признакам (6) С| - периметр объекта; с2 - полная площадь отверстий; с3 - минимальный размер от центра тяжести до контура; с4 - максимальный размер 267
очередная ветвь, при этом классы, наверняка не являющиеся решениями отбрасываются. В работе [39] для идентификации набора деталей, каждая из которых может наблюдаться в одном из нескольких стабильных положений, использовано дерево решений на базе четырех признаков (рис. 12.28). Решение отыскивается в реальном масштабе времени. Преимущество в быстродействии метода построения дерева решений очевидно. Оно связано со следующими факторами. 1. Число выполняемых сравнений зависит от представленного образа. Например, для объектов 1 и 2 достаточно всего двух сравнений. Может оказаться так, что число используемых признаков для вынесения решения по любому представленному образу будет меньше общего числа признаков, необходимых для разделения всей совокупности объектов, т.е. число при- знаков в любой ветви дерева будет меньше числа признаков, используемых во всем дереве. 2. Этап идентификации можно совместить с этапом вычисления призна- ков. Иными словами, можно отказаться от формирования полного вектора признаков, а вычислять их последовательно в том порядке, как это требуют вершины дерева решений. 3. В процессе принятия решения не вычисляются сколько-нибудь слож- ные функции от признаков. Каждое локальное решение принимается на основе простейшего сравнения значения признака с заранее установленным порогом. При этих достоинствах опыт использования данного метода показал повышенный уровень ошибок распознавания по сравнению с методом ближайшего соседа. В соответствии со схемой построения такого класси- фикатора любая деталь, не принадлежащая ни к одному из классов, всегда будет отнесена к какому-либо из них. Чтобы избежать возможных ошибок, в систему включают фазу контроля [81], в которой после проведения распознавания выполняется вторичный проход по дереву, но уже снизу вверх. При таком подходе в каждом узле проверяется, находится ли зна- чение соответствующего признака представленного объекта в пределах отклонений, установленных на этапе обучения для класса, имя которого соответствует найденному конечному узлу дерева. При отрицательном результате деталь заносится в неопределенный класс. Время, затрачиваемое на такую проверку, превышает время просмотра дерева решений в прямом направлении. Поэтому при использовании данного метода в робототехнике с помощью специальных технологических приемов целесообразно обеспечить гарантированное отсутствие объектов, не принадлежащих к распознаваемой совокупности. Метод дерева решений является гибким и эффективным инструментом для решения задач распознавания объектов в случае как эвристических, так и регулярных признаков [61]. Его простота и высокое быстродействие на этапе идентификации являются следствием глубокого и тщательного изу- чения поведения признаков при пробных представлениях объектов на этапе обучения. Построение дерева решений и определение пороговых значений признаков - сложная задача, которую выполняет квалифицированный оператор на основе комбинаторного анализа, исходя из информативности (разделяющей способности) каждого признака, диапазонов их вариаций, 268
возможности наложения диапазонов одноименных признаков для разно- именных классов [16,23]. К сожалению, оптимальных схем построения дерева решения в настоя- щее время не существует [6]. Метод полного перебора даже при относитель- но небольшом числе признаков и объектов не может быть реализован на микропроцессорах, применяемых в робототехнике, несмотря на некоторую "свободу" в отношении времени вычислений, допускаемую на этапе об- учения. Ниже рассмотрен алгоритм автоматического построения дерева воз- можных решений задачи идентификации объектов [27]. Достоинствами алгоритма являются полная автоматизация процесса создания классифи- катора для конкретной совокупности объектов; автоматическое выделение из заданного набора минимального числа признаков, необходимых для распознавания данной совокупности, и, наконец, повышенное быстро- действие алгоритма идентификации за счет использования процедур разде- ления классов на основе дихотомии. Алгоритм является адаптивным в том смысле, как это упоминалось в начале главы: он формирует быстродействующую процедуру принятия решения по любой совокупности объектов, представляемых в режиме обучения. Результаты моделирования алгоритма и сравнение его быстро- действия с быстродействием других известных методов (см. раздел 12.4.8) позволяют рекомендовать алгоритм автоматического построения дерева решений для использования в робототехнике. 12.4.4.Алгоритм отслеживания и аппроксимации контура Блок-схема алгоритма отслеживания и аппроксимации контура пред- ставлена на рис. 12.29. Входной информацией для алгоритма является двоичный массив, отображающий состояние элементов сенсора и описы- вающий сцену. Выходной информацией является массив координат вершин некоторой линейчатой фигуры, аппроксимирующей контур объекта. Вы- ходной массив упорядочен, его элементы соответствуют обходу контура по часовой стрелке. Особенность алгоритма заключается в том, что отслеживание контура и его аппроксимация совмещены в одной процедуре и выполняются на основе логических условий, осуществляемых на управляющих компьютерах достаточно быстро. Здесь не используются, как это обычно принято, длинные вычислительные операции. В результате время обработки ин- формации существенно короче. Рассмотрим данный алгоритм на примере выпуклого объекта в виде произвольного пятиугольника ABCDK, расположенного на бинарном рецеп- торном поле (рис. 12.30). Первоначально осуществляется поиск объекта сканированием датчиков с большим шагом. После того, как найден хотя бы один элемент с состоянием "1" (рис. 12.30, а, точка Е), просматриваются элементы, расположенные на той же строке матрицы слева (пунктирной линией показана траектория просмотра). Обнаружение элемента с состоя- нием "0" свидетельствует о нахождении границы объекта. 269
Рис. 12.29. Блок-схема алгоритма отслеживания и линейной аппроксимации контура пред- ставленного объекта (раскрывает содержимое блоков 7 и 2 схемы, приведенной на рис. 12.24) 270
a Рис. 12.30. Отслеживание и аппроксимация выпуклого объекта, лежащего на рецепторном поле (а), звездочка возможных направлений движения первого порядка (б), звездочка второго порядка (в) После этого в последнюю точку с состоянием " 1 " (точка F) помещается центр так называемой звездочки возможных направлений движения по контуру объекта. Такая звездочка образована векторами, связывающими ее центр с ближайшими соседними точками. Эти этапы выполняются блоками 1 и 2 схемы, представленной на рис. 12.29. Звездочка первого порядка, приведенная на рис. 12.30, б, имеет 8 на- правлений, причем каждые два соседних направления образуют сектор в 45°. Отслеживаемый отрезок контура, если он прямолинеен, всегда будет находиться в одном секторе, определяемом только углом наклона данной прямой. В рассматриваемом случае объект ограничен прямой АВ, имеющей угол наклона 90° < 0 < 135° (рис. 12.30, а). Поэтому прямая АВ всегда лежит в заштрихованном секторе 1-F-2 звездочки, и хотя бы одна из точек 1 или 2 будет иметь состояние "1" (на примере состояние "1" имеет точка 2). Таким образом определяется следующая точка рецепторного поля, в которую перемещается центр звездочки. Поиск текущего рабочего сек- тора звездочки выполняется блоком 3 (см. рис. 12.29), а движение звез- дочки по контуру в пределах одной аппроксимирующей прямой осуществ- ляется за счет цикла, включающего блоки 4-9. Такое движение по контуру объекта с просмотром на каждом шаге состояний точек 7, 2 и перемещением центра звездочки в точку с состоя- 271
нием " 1" происходит до тех пор, пока состояние точек 7 и 2 на одном из шагов одновременно не станет нулевым (проверку выполняет блок 4). Это означает, что отслеживаемый контур вышел за пределы рабочего сектора звездочки и найдена зона, в которой имеется излом в контуре объекта. При соблюдении определенных условий, о которых будет сказано ниже, абсолютные координаты центра звездочки запоминаются и принимаются за координаты вершин аппроксимирующего объект многоугольника (см. рис. 12.29, блок 70; рис. 12.30, точка В). Далее ищется следующий сектор звездочки, в котором хотя бы одна из точек имеет состояние "1" (блокЗ, сектор 3-В'-4}. Считая, что прямая, ап- проксимирующая контур, лежит в указанном секторе, происходит движе- ние, как было указано выше, но анализируется только состояние точек 3 и 4. Отслеживание контура от момента смены сектора до получения очередной вершины многоугольника назовем этапом движения. Отметим, что рабочий сектор в некоторых случаях может быть опреде- лен ошибочно, вследствие чего может быть получена "фальшивая" вершина объекта. Это происходит, если прямая, образующая контур, имеет направление, близкое к направлению одного из векторов звездочки, и су- щественно удалена (естественно, не более чем на дискрету) от предва- рительно найденной вершины. Для прямой ВС рабочим является сектор 4-В'-5, но вследствие указанных причин в качестве рабочего был принят сектор 3-В'-4, в результате чего получена "фальшивая" вершина (см. рис. 12.30, а, точка G). Несмотря на то, что "фальшивые" точки также лежат на контуре объекта, необходимость их удаления обусловлена двумя обстоятельствами: во-первых, время обработки "фальшивых" вершин превышает время их отфильтровывания (формулы приведены ниже) и, во-вторых, присутствие "фальшивых" вершин приводит к возникновению в дискретном представ- лении контура изломов, несуществующих в непрерывном контуре. Послед- нее значительно ухудшает рассчитываемые характеристики объекта и признаки, получаемые для идентификации [25]. Поэтому существует ряд логических условий, по которым, используя информацию, полученную на предыдущих шагах движения, можно судить о достоверности найденной вершины объекта. Для этого на каждом z-м этапе движения по контуру ведется счет ша- гов по опережающему и отстающему (в данном случае перебор секто- ров осуществляется по часовой стрелке) векторам текущего сектора. Например, на этапе движения от точки/7 (см. рис. 12.30, а) до точки В', в которой точки 7 и 2 одновременно имеют состояние "0", было выполне- но по опережающему направлению (вдоль вектора В'2-Со„) три шага, а по отстающему (вдоль вектора В'1-Сот) один шаг. Для формирова- ния логических условий принадлежности точки контура к вершине аппроксимирующего многоугольника под записью [7j = 0] или [Pj= 1] бу- дем понимать соответственно состояние "0" или "1" датчика информационного поля по опережающему вектору на J-м шаге i-ro этапа движения. Для отстающего вектора звездочки форма записи будет аналогична: [Л/, = 0] или [Л/7 = 1]. Тогда условием проверки точки контура на совпадение с вершиной аппроксимирующего многоугольника в случае 272
выпуклого участка контура является [Р7=0 AND Mj = Q]. (12.35) Условие (12.35) проверяется блоком 4. При его удовлетворении текущая точка считается вершиной, если выполняется хотя бы одно из следующих условий: [Соп*0 AND Сот*0]„ (12.36) [Соп # О AND Сот = 0] AND (Л = 0 AND Мх = 0]1 + ь (12.37) [Соп * 0 AND Сот = 0]AND [Р, = 1 AND Мх = 0], + ь (12.38) AND [Р2 = 1 AND Мг = 0]/+1. Выполнение условия (12.36) свидетельствует о том, что при отслежи- вании участка контура в текущем секторе к движение происходило по двум направлениям рабочего сектора. Следовательно, если удовлетворяется (12.35), следующий участок контура будет определен по крайней мере в(Л+ 1)-м секторе, а точка контура будет его вершиной. Выполнение условия (12.37) означает наличие значительного излома в контуре объекта (не менее чем на один сектор), что также определяет вершину. Условия (12.36) и (12.37) проверяются блоком 72. Если хотя бы одно из них вы- полняется, то счетчики Соп и Сот сбрасываются (блок 13), и происходит пере- ход к блоку 3. В противном случае вершина считается подозрительной (блок 14). Окончательное решение о достоверности вершины будет принято на основании (12.38) на следующем этапе движения. Условие (12.38) необходимо проверять, если существует неопределенность при отнесении точки к массиву вершин. Эта проверка осуществляется в тех случаях, когда при отслеживании участка контура движение происходило только по опережающему направлению сектора и нельзя однозначно определить, в каком рабочем секторе начато отслеживание отрезка. С использованием логического оператора (12.38) анализируется положение участка контура, лежащего за предполагаемой вершиной (реализуется блоком 7), что позволяет установить, является вершина фальшивой или истинной. Если точка является фальшивой вершиной, то ее координаты сбрасываются (блок 75); флаг подозрительности вершины сбрасывается (блок 8). Точка В' на рис. 12.30, а в соответствии с условием (12.35) является предполагаемой вершиной аппроксимирующего многоугольника. Она при- нимается за вершину, так как выполняется условие (12.36). Аналогично в точке D' выполняется условие (12.37), а в точке К - условие (12.38). В дру- гих точках, где также соблюдается условие (12.35), ни одно из логических условий (12.36) - (12.38) не выполняется, и все они являются фальшивыми вершинами. В этом случае происходит переход в следующий сектор звездочки, а координаты точки не запоминаются. Таким образом осуществляется обход всего контура. Точки, образую- щие контур, фильтруются, а в памяти ЭВМ остаются только координаты вершин объекта (точки А, В, С, D и К). Обход контура заканчивается при встрече вершины, координаты которой совпадают с координатами первой вершины массива (блок 77). Для облегчения понимания материала рассмотрим пример отслежива- ния и аппроксимации выпуклой линейчатой фигуры. При обработке вогну- 273
тых участков контура задействованы те же самые блоки программы, но условия проверки инвертируются. Например, если в случае выпуклого контура условием появления точки, предполагаемой в качестве вершины, является одновременное получение "О" на опережающем и отстающем направлениях рабочего сектора звездочки, то в случае вогнутого контура таким условием является одновременное получение "1". Аналогичным образом изменяются условия (12.36)—(12.38), проверяющие истинность найденных вершин. Сделаем несколько замечаний относительно точности аппроксимации. Из рассмотренного примера видно, что для линейчатых фигур в результате аппроксимации будет получен контур, близкий к эквидистантному отно- сительно исходного контура объекта. Удаленность аппроксимированного контура от исходного колеблется в пределах одной дискреты рецепторного поля. Если использовать признаки, инвариантные к масштабу объекта, то указанные погрешности практически не повлияют на диапазон вариаций признаков. В связи с тем, что звездочка первого порядка имеет 8 направлений, на выпуклом контуре можно получить 8 вершин в зонах, где касательные к контуру имеют угол наклона, кратный 45°. Например, с помощью рас- смотренного алгоритма окружность будет представлена правильным вось- миугольником, причем погрешность аппроксимации будет зависеть от радиуса кривизны (г) отслеживаемого участка контура и не превысит 0,08г. Точность аппроксимации криволинейных контуров может быть повышена при введении звездочки второго порядка (рис. 12.30, в), имеющей ^на- правлений. При этом погрешность аппроксимации уменьшится в 4 раза и не превысит 0,02г, а окружность будет представлена шестнадцатиугольником. Важно, что число операций и, соответственно, быстродействие алго- ритма зависят только от длины контура и практически не зависят от вы- бранного порядка звездочки. Повышение точности аппроксимации за счет использования звездочки второго порядка дается здесь "безвозмездно" - без затрат временных ресурсов. Отметим также, что рассмотренный алгоритм обеспечивает повышенную плотность вершин аппроксимирующего многоугольника именно на тех участках контура, где он наиболее сильно изменяется (где радиус кривизны мал), а там, где угол наклона касательной к контуру постоянный, плотность точек минимальна. Для дальнейшего использования результатов работы алгоритма полез- ным является то обстоятельство, что в выходном массиве данных коор- динаты вершин расположены в порядке обхода контура. Это позволяет производить определение центра тяжести объекта и характеристических признаков по рекуррентным соотношениям в функции номера вершины аппроксимирующего многоугольника и ее координат. 12.4.5. Определение центра тяжести контура и площади объекта Задачи определения центра тяжести контура и площади объекта доста- точно просты. Однако мы приведем их здесь для того, чтобы на конкретном примере показать элементарные приемы получения и преобразования 274
расчетных соотношений, выполняемых на компьютере за минимальное время. Да простят нас искушенные в программировании читатели за простые и естественные советы, но борьба за реальное время есть не только выбор соответствующих методов, алгоритмов и средств решения поставленной задачи, но и правильная организация вычислительных про- цессов. Пренебрегать преобразованиями исходных соотношений неразумно, поскольку расчеты выполняются в цикле, в данном случае по числу точек N контура, а ликвидация каждой операции в формуле дает экономию времени вычислений, увеличенную в N раз. Сначала отметим, что широко используемые для расчета координат центра тяжести контура элементарные соотношения x0 = ^xi/N, N Уо^У,/^ N где Xi и yi - координаты точек контура, в рассматриваемом случае не пригодны. Они определяют координаты центра тяжести системы ма- териальных точек (с одинаковым весом), которые совпадут с координа- тами центра тяжести контура только в случае равномерной плотности точек на контуре. При линейной аппроксимации контура плотность то- чек существенно неравномерна. Поэтому исходные соотношения для расчета достаточно просто можно получить, определяя центры тяжести и площади трапеций, составленных одной из осей координат и участ- ками прямых, образующими контур (рис. 12.31). После преобразований получим искомые соотношения в функции координат i-й и (i + 1)-й точек контура N хо = ~ [х<(2»+у.-м)+х<+1<2^+1+у, )]/6г; i = l W = [5]CJI+[3]yM, (12.39а) Уо=£и,-^+1)[(У,+У. + 1)2-У,>’. + 1]/б7’; W = [3]OT + [3]ум, (12.396) 1 = 1 Т = £(х,. -х, + 1)(у,. +у,.+1)/2; W = [3]^ + [1]ум. (12.40) 1 = 1 Здесь Т- площадь линейчатой фигуры, W- число операций сложения ([ ]сл) и умножения ([ ]ум), необходимых для расчетов по приведенным формулам. В принципе соотношения (12.39) и (12.40) можно использовать в программе вычислений. Но здесь не следует торопиться: число операций можно существенно сократить, если выразить хь и у0 через координаты не двух, а трех соседних точек контура. Предоставив читателю самому сде- лать эти преобразования, приведем окончательные соотношения. Первый 275
Рис. 12.31. К определению центра тяжести, площади и разложения Фурье произвольного линейчатого контура вариант N 6rx0 = Xy,(x,-i-xi+i)(x,-i + x,+x.+i); W=[4L + [2]Ум> (12.41) 1 = 1 N 6Гуо = £Ш+1-У,-1)(>’,+У1 + 1+У,-1 ); ^ = [4]сл+[2]ум, (12.42) 1 = 1 27’ = Х^(У. + 1 = -*, + 1); W = [2]сл + [1]ум. (12.43) 1=1 1=1 Второй вариант w 6Тх0 = Хх'[х'^< + 1 _Х-1) + У,(х<-1 -х. + 1)]> (12.44) 1 = 1 бТУо = Х^[х‘(>’' + 1 -У1-0 + У1(х,-1 " Х1 + 1)]- (12.45) < = 1 По каждому из последних соотношений требуется W = ([4]^ + [3]ум) операций, не превышающее число операций, необходимое для вычисления координат по формулам (12.41) и (12.42). Тем не менее соотношениям (12.44) и (12.45) следует отдать предпочтение для использования в про- грамме, поскольку у них сомножители, находящиеся в квадратных скобках, одинаковы, а слагаемые совпадают с выражениями (12.43). За счет этого достигается минимум общего числа операций, необходимый для вычисления всех параметров Т, х& у0. Далее по логике решения задачи распознавания следует перевод всего массива вершин в систему координат, центр которой совпадает с центром тяжести контура, и расчет характеристических признаков представленного объекта. 276
12.4.6. Выбор характеристических признаков Успех решения задачи распознавания объектов в значительной степени зависит от выбора признаков идентификации. Такой выбор является весьма серьезной задачей, выполняемой на этапе разработки алгоритма по виду представленных к распознаванию объектов. Всегда имеющаяся при эври- стическом подходе неоднозначность между любой сверткой первичной информации в выбранный признак и самим контуром разрешается, как правило, за счет увеличения числа признаков. При этом остается вероятность того, что при увеличении числа рас- познаваемых объектов принятый набор признаков одинаково будет опре- делять какие-либо два (или более) объекта из заданной совокупности. В этом случае необходимо найти новые признаки идентификации и пере- работать на их основе алгоритм распознавания. В связи с упомянутыми замечаниями, одной из важных задач в распоз- навании образов является разработка алгоритмов и программ, позволяю- щих автоматически формировать признаки идентификации независимо от числа объектов в совокупности и их геометрии. К настоящему времени из- вестно только одно решение этой задачи, построенное на основе теории мо- ментных инвариантов [13, 67], в которой доказаны, во-первых, однозначное соответствие между последовательностью двумерных моментов некоторой функции от координат накрытых объектом точек и конфигурацией данного объекта, а во-вторых, - инвариантность моментов к плоскому повороту, смещениям и масштабным преобразованиям. Как правило, при использова- нии теории моментных инвариантов для получения требуемой точности необходимо обеспечить равномерную и достаточно высокую плотность распределения точек на контуре объекта. Как указывалось выше, при линейной аппроксимации контура это условие не выполняется. В настоящем разделе рассматривается достаточно "быстрый" регуляр- ный метод получения инвариантных признаков объекта, с помощью неко- торой функции его контура, разложенной в ряд Фурье. Поскольку при бесконечном числе членов ряд однозначно определяет контур, то для любого набора различающихся объектов всегда существует конечное число членов ряда, однозначно определяющих любой объект из совокупности. Признаками идентификации являются коэффициенты Фурье и вторые разности соседних фаз, а сами фазы используют для определения ориен- тации объекта. Информация для распознавания плоского образа после предварительной аппроксимации контура представляется в виде массива координат х„ yh i = 1, ..., N вершин произвольного замкнутого линейчатого контура в декартовой системе координат ХЦУЦ с полюсом, совпадающим с центром тяжести контура (см. рис. 12.31). В качестве функции, характеризующей контур объекта, принимают безразмерное отношение р(ф) = plr(q>) (р - периметр контура, г(ф) - его полярное уравнение), представленное в виде ряда Фурье р(ф) = р/г(ф) = (с0/2) +sinyp (12.46) J = i где у, = уф + cij. Здесь следует отметить, что такой вид функции р(ф) позво- 277
ляет, с одной стороны, получить признаки, инвариантные к масштабу объ- екта, а с другой - существенно сократить машинное время за счет устра- нения такой трудоемкой операции, как численное интегрирование. Дейст- вительно, для любого г-го отрезка контура справедливы соотношения р(<р) = р(/,. coscp + rc,. sincp); (pi+1 ><р>(р,.; ф^^фр (12.47) где li и - коэффициенты полярного уравнения z-ro отрезка, зависящие только от координат х/? у., х/+1, у/+1 и меняющие свои значения при переходе к следующему отрезку =(У. + 1 -Z)/Uy/+1 -^+1У(); tni=(xi-Xi+l)/(xiyi+l-xi+lyi'). Все члены разложения (12.46) определяются через коэффициенты а, и bj Cj=^+bJ-, tga^aj/bj. С учетом (12.47) для коэффициентов а, и bj получим следующие фор- мулы, не содержащие интегралов: при j = О 21Г к с0 = (1 / я) j Р(ф) d Ф = (р/ я) У (/, sin Ф - mt cos ф)£'+1; О ‘ = 1 при;= 1 2ти N ах = (1 / я) f р(ф) cos ф d ф = (р / 2я)^Г [/.ф + (Z, / 2) sin 2ф - 12) cos 2фЦ'+1, о ‘ = 1 2ти дг bx = (1 / я) j р(ф)sin ф d ф = (р / 2я)^Г [m-ф + (zrz- / 2)sin 2ф - (Z- / 2) cos 2ф]^ +1; о 1 = 1 при j > 2 2ти Clj = (1/ Я) |р(ф)СО8 уф б/ф = О N = (р/ 2я)У {/, [sin (У +1)ф/(У +1) + sin (У -1) ф/(У -1)] + 1 = 1 + mt [cos (j -1) ф/С/ -1) - cos (У +1) ф/(У +1)]}’' , 2ти bj = (1 / я) j Р(ф) sin Уф d Ф = О = (р/ 2я)У [cos (У +1)ф/(У +1) + cos (У -1)ф/(У -1)] + 1 = 1 + m,. [sin (У -1) ф/(У -1) - sin (У +1) ф/(У +1)]}*'+1. (12.48) 278
Здесь везде (pN+ j = + 2л. Полученные коэффициенты Cj и фазы а7 могут служить признаками идентификации, поскольку при j —> они однозначно определяют контур объекта. Инвариантность этих признаков по отношению к плоскопараллельному переносу обеспечена за счет того, что контур объекта описан относительно точки, жестко связанной с объ- ектом (центром тяжести его сечения), а по отношению к масштабному фактору - за счет введения безразмерного отношения р/г(ф). Что касается поворота объекта, то коэффициенты инвариантны по отношению к это- му параметру, а фазы а7 существенно от него зависят. Однако имеется возможность на основе полученного ряда а7 сформи- ровать некоторый новый ряд 07, инвариантный к повороту объекта, и при- нять его в качестве признаков идентификации. При повороте фигуры на угол Дф относительно своего начального положения коэффициенты с7 не изменяются, а углы у, определяются соотношением Y;=J<P+jA<P + C9. (12.49) Анализ показал, если взять вторые разности от соседних значений %, то полученный результат не будет зависеть от Дер Р, = (Yy+i - Y?-(Y; - Y,-i) = <*>+i “2a,. + j > 2. Таким образом, в качестве признаков идентификации можно исполь- зовать значения Cj и (3, На практике всегда ограничивают число членов ряда к, которое определяется числом объектов в распознаваемом наборе и степенью их ’’похожести”. Во многих случаях для конкретных наборов объектов при идентификации достаточно использовать только значения су, игнорируя ру. Если в режиме обучения установлено, что при расширении набора объектов значения Cj для нового объекта совпадают или близки к соот- ветствующим коэффициентам для какого-либо объекта из старого набора, то по формулам (12.48) без пересмотра программы можно получать зна- чения q+1, ck + 2 и т.д. до тех пор, пока не будет достигнута достоверная идентификация этих двух объектов. Определение ориентации объекта после его распознавания осуществ- ляется путем сравнения вычисленного значения а7 с эталонным а;эт, хра- нящимся в памяти ЭВМ и полученным на этапе обучения. Как следует из соотношения (12.49), угол ориентации Дф предъявленного объекта можно получить следующим образом: Дф = (а>эт-а,)//. (12.50) Угол Дф можно определять по любому члену ряда (при произвольных значениях у). Здесь важно отметить, что для членов ряда с коэффициентами близкими к нулю, значения угла а, при расчетах получаются плохо обусловленными. Наибольшая точность определения угла ориентации до- стигается, если в расчете учитываются члены ряда с максимальными значениями Дальнейшего повышения точности определения Дф можно добиться, усреднив результаты вычислений, полученных по различным чле- нам ряда со значениями 279
Таблица 12.4 Зависимость коэффициентов ряда Фурье от номера члена разложения для двух фигур при различной дискретности рецепторного поля i Для равностороннего треугольника Для квадрата Ci расч Ci ид расч С1 ид 0 8,24-8,7 8,59 7,12-7,27 7,2 1 0,102-0,298 0 0-0,28 0 2 0,206-0,632 0 0-0,193 0 3 1,98-2,14 2,149 0-0,117 0 4 0,05-0,111 0 0,923-0,96 0,96 5 0,05-0,164 0 0-0,049 0 6 0,412-0,489 0,491 0-0,184 0 7 0,025-0,063 0 0-0,041 0 8 0,03-0,097 0 0,188-0,228 0,228 9 0,159-0,212 0,215 0-0,032 0 10 0,018-0,042 0 0-0,102 0 11 0,021-0,069 0 0-0,026 0 12 0,082-0,118 0,12 0,061-1,0 0,1 13 0,014-0,033 0 0-0,023 0 14 0,016-0,053 0 0-0,065 0 15 0,053-0,074 0,076 0-0,019 0 16 0,012-0,026 0 0,019-0,056 0,056 Данные, приведенные в табл. 12.4, показывают, как изменяются коэф- фициенты Cj в функции номера j и каков их разброс при различной дис- кретности рецепторного поля. В таблице приведены идеальные значения Cj (при дискретности, стремящейся к нулю) и результаты расчетов cj для простых фигур типа квадрата и равностороннего треугольника, располо- женных произвольно на дискретном поле. Размеры сторон этих фигур варьировались в пределах от 7 до 15 дискрет. Как видно из таблицы, для значимых членов ряда разброс рассчитанных коэффициентов с;, отвечаю- щих разным положениям распознаваемых объектов, незначителен. Это позволяет использовать коэффициенты Фурье в качестве признаков иден- тификации при распознавании плоских объектов. Применение коэффициентов разложения в качестве характеристиче- ских признаков объекта не исключает возможности использования и стан- дартных эвристических признаков для распознавания широкого класса объектов. В дальнейшем одномерным массивом признаков С будем обозначать полный набор признаков, расположенных в порядке возрастания трудо- емкости их вычисления: чем меньше операций затрачивается на вычисление j-ro признака с7, тем меньше номер j. Такое упорядочивание позволяет, исходя из конкретной совокупности объектов, определить на этапе обучения границу к ряда признаков, достаточных для разделения данной совокупности. 280
Очевидно, в связи со сложностью коэффициенты Фурье, сохранив свою последовательность, сдвинутся в полном ряду вправо, пропустив вперед такие быстро вычисляемые эвристические признаки, как безразмерные минимальное и максимальное расстояния от центра тяжести до контура, отношение квадрата периметра к площади и т.д. При таком построении признаков обеспечивается максимальное быстродействие процесса рас- познавания за счет использования минимального числа наиболее быстро вычисляемых признаков. 12.4.7. Алгоритм обучения системы. Автоматическое построение дерева решений задачи распознавания В данном разделе рассмотрены алгоритм определения минимального числа признаков, достаточного для распознавания объекта из известного набора классов, и алгоритм автоматического построения дерева решений для идентификации. Обе задачи решаются на этапе обучения при любом изменении набора: либо когда из набора вычеркивается какой-либо класс, либо когда он расширяется. Результаты решения этих задач позволяют существенно ускорить этап идентификации. Блок-схемы алгоритмов пред- ставлены на рис. 12.32. Алгоритм определения минимального числа признаков. Исходная ин- формация о наборе классов объектов представляется двумерным массивом (матрицей) значений признаков идентификации С (табл. 12.5). Размерность массива [т х 2и], где т - число признаков, п - число классов. Так как отображение объекта в системе технического зрения является дискретным, то при обучении системы z-му классу путем представления объектов этого класса с различной ориентацией, местоположением и масштабом любой получаемый &-й признак будет лежать в некотором диапазоне с™™ < cik < <с™х, i<n, k<m. Поэтому в исходном массиве С каждый класс пред- ставлен двумя строками, определяющими границы диапазонов вариации признаков. В алгоритме не вычисляются средние значения признаков, а ис- пользуются непосредственно границы диапазонов. Вопрос о достоверности границ - особая задача. Ее нужно решать за счет выбора соответствующего числа представлений объекта в различных ситуациях. Для повышения надежности после проведения обучения системы новому объекту, полученная оценка вариации каждого признака может быть раздвинута на некоторую величину, гарантирующую попадание при- знака в диапазон при любом положении и ориентации объекта данного класса. Каждую границу можно сместить, например, на величину 0,1-0,2 от диапазона, полученного при обучении. Каждый раз после формирования массива С для сокращения времени идентификации необходимо найти минимальное число признаков I < т, достаточное для идентификации любого объекта из набора, содержащего п классов. Следует также учесть тот факт, что какие-либо объекты не могут быть идентифицированы с помощью т признаков: необходимо или увеличить число т, или, если это возможно по технологическим сообра- 281
Рис. 12.32. Блок-схема алгоритма определения минимального числа признаков и построения дерева решения задачи идентификации (раскрывает блок 7 схемы, представленной на рис. 12.24) 282
Таблица 12.5 Двумерный массив признаков идентификации С Номер класса Номер строки признаков(i) Значения признаков 7 = 2 j=m 1 1 „min С11 „min c12 „min clm 2 „max С11 „max c12 „max clm 2 3 „min С21 „min c22 „min c2m 4 „max С21 „max c22 „max c2m п 2/1-1 „min cnl „min cn2 min cnm 2/1 „max „max cn2 max Lnm жениям, удалить пересекающиеся классы из набора, т.е. уменьшить п. Поставленную задачу будем решать для случая, когда признаки распо- ложены в порядке возрастания затрат машинного времени на их вычис- ление. В эту же последовательность органически вставляются признаки, вычисляемые по рекуррентным формулам cik-j{cik_x), к которым сводятся как метод моментных инвариантов [67], так и изложенный выше метод преобразования контура в ряд Фурье. При упорядоченном ряде cik (к = 1, ..., т) поставленная задача заклю- чается не в выборе наиболее информативных I коэффициентов из ди, а в определении правой границы ряда признаков, т.е. в усечении массива С на (ди - 1) столбцов. Для решения задачи введем в рассмотрение два двумерных массива ^+1=(^+,) = В;ЛЧ + 1’ (12.51) (12.52) Здесь j = 0, ..., т - 1; В и R- квадратные массивы размерностью [пхп], составленные из нулей и единиц, начальные значения которых b?k = 1 и r®k = 1 для всех i'=l, ..., п; к = 1, ..., и; знак а обозначает логическое умно- жение одноименных элементов массивов. Массив (j = 1, ..., т; i, к = 1,..., п) формируется из j-ro столбца массива С по правилу О' ЛЛТТТ, /„max „min\Z min max \ n , если Д,у -ckj Дс.. -ckj )>0, 1 в противном случае. (12.53) Массив Mj логический, его элементы (12.53) определяют признак пере- сечения i-го и к-ro классов объектов по диапазонам вариации их j-ro признака. Если т-к = 0, то диапазоны вариаций i и к не пересекаются, и эти 283
классы можно разделить по признаку j. Если mJik = 1, то диапазоны пере- секаются, и идентификация объекта невозможна. В этом случае следует искать другой признак, который позволит разделить эти два класса. Вид массива Bj (/ = 1, ..., т) определяет возможность идентификации объекта в наборе из всех п классов по совокупности коэффициентов до j включительно. Наличие хотя бы одного элемента bjk =1 (7 Ф к) указывает на то, что классы i и к пересекаются по всем j признакам, а совокупности из j признаков недостаточно для разделения всего набора. Очевидно, необхо- димым и достаточным условием идентификации любого объекта из набора является Bj = I, где I - единичная матрица. Значение J, при котором впервые выполнится данное условие, будет равно минимальному числу I коэффи- циентов, достаточному для решения задачи идентификации. Поэтому рекуррентные выражения (12.51) и (12.52) вычисляются до тех пор, пока массив Bj не преобразуется к такому виду, определив тем самым значение Z. Если достигнуто j = т, а необходимое и достаточное условие идентифи- кации любого объекта не выполнилось, то это означает, что признаков для разделения заданного набора классов недостаточно и необходимо либо уве- личить т, либо удалить из набора класс i или к, для которых b™ = 1 (Z к). К моменту выполнения необходимых и достаточных условий иденти- фикации в массиве R накапливается информация о номерах признаков, разделяющих любые два класса из набора. Элемент массива 1 < rik <1, i*k суть номер признака (номер столбца массива Q, разделяющего классы i и к, а в элементах диагонали - rik = I + 1 (i = к). Массив Bj необходим только для нахождения минимального числа коэффициентов /ив дальнейшем не ис- пользуется. Массив 7?/, как будет показано ниже, необходим при решении задачи идентификации объектов. Алгоритм формирования дерева решений задачи идентификации объектов. В соответствии с этим алгоритмом на этапе обучения предпо- лагается выработка некоторой стратегии просмотра массива С по инфор- мации, содержащейся в массиве Rb с тем, чтобы на этапе идентификации уменьшить объем вычислений. Для выработки такой стратегии одновре- менно с построением массива Mj по формулам (12.53) будем искать наи- более информативный признак с номером i=f- номером столбца масси- ва С, который обладает наименьшим числом пересечений классов объек- тов. Очевидно, таким признаком является тот, у которого п п для />_/>!. (12.54) По полученному значению f модифицируется массив R,: для тех пар классов, которые разделяются признаком f, соответствующие элементы rik заполняются нулями, т.е., если элемент т/к = 0, то соответствующий элемент rik также обнуляется. В результате получаем модифицированный массив R*. Выделив из массива С столбец f, содержащий диапазо- ны вариаций наиболее информативного признака, расположим элементы 284
a Рис. 12.33. Варианты блок-схем, реализующих два способа формирования матрицы- стратегии S решения задачи идентификации (раскрывают блок 1 схемы, представленной на рис. 12.32) cif, i = 1,..., 2п в порядке возрастания cP1f <cP2f<cP3f <-<cP2nf <12-55> Тогда п пар значений с разбивают числовую ось на (2n + 1) интервалов. По результатам анализа этих интервалов можно построить дерево решений 285
б задачи идентификации объектов. Поставленная задача решается с помощью некоторого массива стратегии S, который содержит (2n + 1) столбцов и сформирован следующим образом. В первой строке содержатся значения индексов ряда (12.55): рх, р2, Рз,---, р2п, a 2я+| = 0- Вторая и последующие строки определяют номер класса или список номеров классов (в случае их пересечения по признаку f) для каждого интервала. Формировать вторую и последующие строки массива S можно двумя способами (см. блок-схему на рис. 12.33). 286
Таблица 12.6 Пример двумерного массива С при четырех признаках идентификации для пяти классов объектов Номер класса Номер строки признаков (i) Значения признаков с у J=1 J = 2 7=3 ;=4 1 1 0,21 0,12 0,1 0,18 2 0,72 0,8 0,6 1,4 2 3 0,61 0,7 0,8 0,68 4 1,21 1,54 1,6 1,3 Q 5 1,55 1,3 1,3 1,19 Э 6 2,32 1,87 1,8 1,76 Л 7 2,15 1,7 1,41 1,89 8 2,66 2,65 2,22 2,4 9 2,2 2,42 2,4 2,31 j 10 2,9 2,7 2,9 2,8 Способ 1 (рис. 12.33,а). В начальный момент список пуст и в первый элемент второй строки заносится нуль (52i = 0), так как в интервале i = 1 не существует ни одного класса объектов. Под номером N = 0 понимается дополнительный класс, к которому система будет относить все объекты, по своим признакам выходящие за пределы диапазонов вариаций признаков эталонных классов. Далее для каждого i =2, 3,..., 2п + 1 рассчитывается номер класса W = entier [($1Л1/2) + 0,6]. По полученному номеру анализируется и корректируется список пересекающихся классов в (i- 1)-м интервале. Этот список номеров классов содержится в (z- 1)-м столбце, начиная со второй строки и ниже. Коррекция осуществляется по правилу: текущий номер класса вычер- кивается из списка, если он там найден (интервал закрыт для данного класса), если не найден - заносится в список (интервал открыт). Скор- ректированный список записывается в i-й столбец. Таким образом, уста- навливается, что в i-й интервал признака/могут попасть объекты разных классов, номера этих пересекающихся классов также становятся извест- ными. Недостатком данного способа является то, что в результате получается массив 5 с изменяющейся длиной столбцов. Это увеличивает требуемый объем памяти и создает некоторые неудобства при програм- мировании. Способ 2 (рис. 12.33,6) лишен такого недостатка, но требует несколько большего объема вычислений. В соответствии с этим способом вторая строка заполняется некоторыми числами, характеризующими состояние каждого интервала по правилу s2i = Q > п, если в i-м интервале не су- ществует ни одного класса; s2i = к, если в i-м интервале существует только один класс с номером к, и s2i = Q + к, если в i-м интервале пересекают- ся несколько классов, номера которых составляют список, причем номер к 287
О J = 2 JL О Рис. 12.34. Области пересечения диапазонов вариаций j-ro признака Су (здесь i - номер класса) минимальный в этом списке. Построение дерева решений завершается формированием массива S. На этом этап обучения заканчивается. Для пояснения алгоритма рассмотрим относительно простой пример исходного массива С, описывающего диапазоны вариаций четырех призна- ков для пяти классов объектов (табл. 12.6). Определение минимального числа признаков Z, достаточного для распознавания любого класса из набора, и построение дерева решений выполняются на этапе обучения в такой последовательности. 1. По соотношениям (12.53) для каждого столбца массива С рассчи- тываются массивы М, фиксирующие факт пересечения диапазонов вариа- ций признаков для пяти классов (рис. 12.34) ' 1 1 0 0 0> ( 1 1 0 0 0) 110 0 0 1110 0 м1 = 0 0 111 , м2 = 0 1110 0 0 111 0 0 111 ,00111, ,00011, 288
м3 = ' 1 0 0 0 0" 0 1110 0 1110 0 1110 ,00001, , м4 = ' 1 1 1 00" 1110 0 1110 0 0 0 0 1 1 ,00011, 2. По соотношению (12.51) вычисляются массивы В. Нетрудно убе- диться, что массив В преобразуется к нужному "единичному" виду после логического поэлементного перемножения всех массивов М. Следова- тельно, для данного примера I = т = 4. 3. Используя (12.54), среди I признаков ищется наиболее инфор- мативный с номером/. Как видно из массивов Mi f= 3. 4. По соотношению (12.52) вычисляется массив Rb который затем мо- дифицируется в /?/ в соответствии с информацией массива М^3 г5 3 1 1 1" г5 0 0 0 0" 3 5 111 0 5 110 R,= 115 4 2 0 15 4 0 114 5 3 0 14 5 0 ,11235, ,00005, 5. В соответствии с (12.55) упорядочивается столбец /массива С. По- лученные индексы образуют первую строку массива стратегии S (рис. 12.35). При использовании способа 1 получим массив и соответствую- щее ему дерево решений, представленные на рис. 12.35, а, б. Способ 2 (при Q = 20) проиллюстрирован на рис. 12.35, в, г. В последнем случае дерево включает ненулевые элементы массива . Описанный алгоритм может быть использован не только, если признаки идентификации объектов получаются по рекуррентным соотношениям, но и в широко распространенном случае, когда набор этих признаков назначается произвольно из эвристических соображений. Выше указыва- лось, что к таким признакам часто относят площадь плоской фигуры, длину контура, компактность, а также различные геометрические параметры, получаемые из круговой гистограммы [54]. Хотя их и можно расположить в порядке возрастания числа затрачиваемых операций, особенность получен- ного ряда состоит в том, что каждый последующий признак не будет зависеть от предыдущих. Следовательно, если среди используемых при- знаков имеются неинформативные или малоинформативные, то для даль- нейшего повышения быстродействия алгоритма необходимо удалить эти признаки из общего списка. В таком модернизированном алгоритме прежде чем вычислять массив стратегии 5 и дерево решений, следует "перетасовать" эталонный массив признаков Сэт, выполнив следующую процедуру перебора. 1. Принимаем I = 1. По соотношениям (12.53) вычисляем массив Л/, (z = 1,..., т). 10. Корендясев А.И. Кн. 2 289
a Рис. 12.35. Различные представления матрицы-стратегии 5 (а, б) и дерева принятия решений задачи распознавания (в, г) для матрицы эталонных объектов, представленной в табл. 12.6 290
2. Исследуем, существует ли хотя бы одно сочетание vb Vj из I мас- сивов среди Mj, которое по соотношению (12.51) преобразует массив В к нужному "единичному" виду. 3. Если такого сочетания нет, то принимаем Z = Z + 1 и переходим к этапу 2. В противном случае Z равно минимальному числу признаков, разделяющих данный набор классов, a vb ..., Vj - номера этих признаков. Если I = т, а необходимое и достаточное условие идентификации любого объекта не выполнилось, т.е. массив В не получен в нужном "еди- ничном" виде, то признаков недостаточно для разделения классов. При удачном завершении процесса перебора на место первых Z столбцов мас- сива Сэт переписываются столбцы с номерами vb ..., vb В таком пе- ретасованном варианте массив Сэт используется на глубину Z для постро- ения дерева решений задачи идентификации по изложенному выше алгоритму. 12.4.8. Алгоритм идентификации объектов. Оценка объема вычислений В результате обработки информации о представленном объекте (после выделения и аппроксимации контура, см. раздел 12.4.4) рассчитывается одномерный массив признаков С* =(С*), j = 1, ...,Z. По значениям призна- ков необходимо сделать вывод о том, к какому классу принадлежит данный объект. Для решения этой задачи используется исходный массив С, массив раз- деляющих коэффициентов R* и массив стратегии 5, определяющий дерево решений по следующему алгоритму (рис. 12.36). Из массива С* выбирается элемент сД соответствующий наиболее информативному признаку, и методом дихотомии по числам натурального ряда от 1 до (2и + 1) через индексы slz ищется i-й интервал, включающий значение сД Если массив 5 сформирован по способу 1, то для каждого интервала известен список номеров заполняющих его классов. Из этого списка попарно берутся номера N] и N2 любых классов и по массиву 7?/ выделяется номер признака гД Л2, разделяющий эти классы. Так как анализ проводится по признаку, разделяющему эти классы, то один из них гарантированно не является решением, что проверяется условием А,-|л2-с‘|<0, А,2 (12.56) Здесь u = л , v = 2Л^ или 2N2 в зависимости от того, номер какого класса анализируется. Класс, для которого условие (12.56) выполняется, вычеркивается из списка возможных решений. Такая выборка осущест- вляется до тех пор, пока в списке не останется один класс, являющийся решением задачи идентификации. ю* 291
Рис. 12.36. Блок-схема алгоритма идентификации объекта (раскрывает блок 4 схемы, представленной на рис. 12.24) 292
При способе 2 элементы второй строки массива 5 содержат метки, определяющие в каждом i-м интервале одну из трех возможных ситуаций: 1) s2i = Q- предъявленный объект не принадлежит ни к одному из классов; 2) s2i < Q - в i-м интервале содержится только один класс, которому принадлежит предъявленный объект, s2l\ 3) s2i >Q- i-й интервал содержит несколько классов. После выявления способом дихотомии номера интервала, в который попадает c*f, анализируется элемент s2i по отношению к Q, и если установ- лена ситуация 7 или 2, то решение получают непосредственно в элементе s2i. Если же установлена ситуация 3, то требуется дополнительный анализ по массиву R*. Этапы этого анализа следующие. 1. Принимается = s2i-Q\Nz = s2i-Q + 1. 2. Если w = 0, то N2 := N2 +1 и повторяется этап 2 (при значении па- раметра N2, равном его старому значению плюс единица). 3. Если rN N *0 и выполняется условие (12.56) для класса N2, то переход на этап 2. Если условие (12.56) не выполняется, то := N2, a N2 := W2 +1; переход на этап 2. Цикл выполняется до тех пор, пока N2 не станет больше п. Тогда решением будет класс Nt. Изложенный алгоритм реализует дерево решений по массиву R*. При этом список классов, со- держащих решение, определен только элементами rN N ^0, а их просмотр осуществляется по условию (12.56) в направлении вправо и вниз до тех пор, пока список не будет исчерпан. Номер строки, на которой исчерпался список, и будет номером класса, к которому принадлежит предъявленный объект. В качестве примера вернемся опять к совокупности классов эталонных признаков, описываемых в табл. 12.6. На этапе идентификации после обработки сенсорной информации получен, например, массив значений признаков С* = (2,2; 1,7; 1,5; 1,6), характеризующих предъявленный к рас- познаванию объект. Первое, что выполняется в соответствии с алго- ритмом - определяют номер интервала, в который попадает значение cf = с3* = 1,5. Используемую для этой цели процедуру дихотомии проводят так: опре- деляют номер среднего интервала Gc = (6Л + 6^/2, где G„ и G п - номера левого и правого крайних интервалов. В начале процедуры для данного примера Gn = 1; G„ = 11, тогда Gc = 6. По элементу $16 = 4 находят значение с43 = 1,6. Так как с3 <с43, то признак представленного объекта попадает в левую половину интервалов. Тогда правая граница переопределяется как Gn = Go и цикл повторяют до тех пор, пока не определится номер интервала, включающего с3. В данном случае - это интервал с индексом 6, т.е. $16 = 4. Таким образом, попадают в вершину дерева с^. При способе 1 массив 5 в шестом столбце содержит список классов, пересекающихся в найденном интервале, а именно классы под номерами 2, 3 и 4 (см. рис. 12.35, а, б). С помощью разделяющих коэффициентов г23 и г34 293
массива R* убеждаются, что условие (12.56) выполняется для классов № 2 и № 4. Следовательно, решением является класс № 3. При способе 2 интервалу c4f соответствует метка s26 = 22 > Q. Следовательно, в этом интервале имеется несколько классов, и минимальный из них по номеру класс Nj = s26- Q = 2. Тогда, выполнив с помощью (12.58) все проверки по дереву на рис. 12.35, г, приходим к решению - вершине, соответствующей классу № 3. Анализ объема операций W изложенного алгоритма выполним при сравнении двух методов. Первый (традиционный) метод предполагает рас- чет по (12.34) расстояний С от точки в m-мерном пространстве, опреде- ляемом одномерным массивом С* коэффициентов предъявленного объекта, до точки, определяющей центр распределения объектов z-го класса. Решением считается тот класс /, у которого L* минимально. Для реализации этого метода необходимо IV] = [и(2т + 1)]сл + [и - т]ум операций. Второй метод предполагает просмотр массива Сэт и поиск такой его строки, в значения элементов которой укладываются признаки массива С* предъявленного объекта. При равновероятном законе поступления объек- тов число сравнений, необходимых для получения решения, W2 = [0,25пт]сл. В рассмотренном алгоритме для поиска интервала по информатив- ному признаку f методом дихотомии требуется log2(2n + 1) опера- ций сравнения, а для анализа списка классов, принадлежащих этому интер- валу, в самом неблагоприятном случае еще п операций. Таким образом, = [log2(2n + 1) + и]сл. Как видим, в последнем случае объем вычислений W3 не зависит от числа т признаков. Он меньше W2 и существенно меньше VZ]. Выигрыш в объеме операций и, соответственно, во времени решения задачи идентификации объектов растет с увеличением набора и классов и числа признаков т. 12.4.9. Дискретность рецепторного поля. Ее влияние на достоверность идентификации и погрешности определения размера, положения и ориентации объекта Выше указывалось, что одним из эффективных средств повышения быстродействия является загрубление сенсорной системы, т.е. увеличение дискретности рецепторного поля. Предельная дискретность соответствует такому значению, когда получаемая погрешность определения параметров объектов или достоверность их идентификации равны некоторым заданным величинам. Такая дискретность при прочих равных условиях определяет максимальное быстродействие системы. Задача определения предельной дискретности весьма трудоемкая. В настоящее время известны два подхода к ее решению. Первый [20] пред- полагает исследование погрешностей дискретного представления эталон- ного объекта, например круга. При таком подходе исключены все алгорит- мические погрешности, связанные с обработкой информации, и можно оценить инструментальную погрешность матричного датчика. В частности, показано, что среди различных типов правильных регулярных решеток 294
поля (треугольная, квадратная и шестиугольная) наименьшие погрешности дает треугольная решетка. Это означает, что при одной и той же заданной погрешности определения размера объекта, треугольная решетка датчиков может быть выполнена с большим шагом, и в связи с этим ее использование предпочтительней по быстродействию. Второй подход в определении предельной дискретности основывается на численном моделировании процесса представления произвольного объекта (или их совокупности) на рецепторном поле с различной дискрет- ностью и полном "проигрывании" математического обеспечения до полу- чения результата [25, 26]. Здесь получается интегральная оценка точности представления информации, отражающая конкретный набор объектов и включающая погрешности применяемых алгоритмов. Это позволяет определять не только предельную дискретность системы, но и выделять рациональные по быстродействию алгоритмы для решения конкретной задачи. Рассмотрим задачу определения предельной дискретности на примере матричной дискретной системы для идентификации и вычисления поло- жения, размера и ориентации небольшого набора простых геометрических фигур - круга, квадрата и равностороннего треугольника. Исходя из требований инвариантности признаков к размеру (масштабу) объектов, к их расположению и ориентации, в качестве признаков для идентификации примем безразмерные параметры: С{ = P2/S, где Р- периметр контура, S- его площадь, а также С2 = A2IS, где А - длина стороны. При дискретности поля 5, стремящейся к нулю, данные признаки стремятся к константам: Cf = = 4л; 16; 20,7846 и С2* = 1,8; 4,0; 6,92. Вследствие дискретности отображения предъявленного объекта харак- теристики Сь С2, рассчитанные по результатам опроса матрицы датчиков, не будут совпадать с указанными идеальными значениями, а при различных размерах и ориентации объекта будут определяться некоторой областью своих значений. При этом априорно ясно, что с уменьшением размеров объекта (или с увеличением шага а квадратной ячейки решетки поля) области этих оценок будут расти, для различных фигур начнут пересекаться, а в предельном случае будут совпадать. Очевидно, достовер- ная идентификация возможна только при таком соотношении дискретности системы и размеров объекта, при котором области характеристик различных объектов не пересекаются. Характеристики С, и С2 по смыслу близки. Их вычисляют для того, чтобы по результатам моделирования выбрать одну, имеющую наименьший разброс в зависимости от дискретности поля. Алгоритм моделирования состояния чувствительных элементов поля при наложении на него произвольного объекта приведен в работе [25]. Для выделения и аппроксимации контура по дискретному отображению объекта используют алгоритм, изложенный выше (см. раздел 12.4.4). Ориентацию объекта определяют по направлению максимальной стороны. В результате моделирования процесса идентификации найдена макси- мальная дискретность рецепторного поля, при которой обеспечивается достоверная идентификация заданного набора объектов, или при заданной 295
Рис. 12.37. Зависимость признака С\ = P2IS для различных объектов в функции а/5 а - размер объекта, 8 - дискрета дискретности 5 - ограничение снизу на размеры объектов. В качестве примера на рис. 12.37 приведена зависимость признака С} в функции выраженного в дискретах размера а стороны объекта (для окружности а - радиус). Как видно, при отно- шении 5/5 = 4,5 области признака С] для различных объектов не пересекаются. Любой объект из представленной совокупности при этом может быть автоматически распознан в любом положении и в любой ориентации на рецепторном поле. Результаты моделирования пока- зали также высокую эффективность алгоритмов отслеживания и аппроксимации контура, изложенных в под- разделе 12.4.4, по сравнению с алгоритмом [25], предусматривающим вы- деление контура на основе просмотра строк и столбцов бинарной матрицы состояния датчиков поля. В последнем случае предельная дискретность поля для тех же объектов составляет 5/5 = 8,5. При этом для иденти- фикации объектов меньших размеров на поле с предельной дискретностью необходимы дополнительные признаки. В модельных экспериментах показано, что области изменения ДС] и ДС2 признаков С| и С2 примерно одинаковы. Поэтому предпочтительнее исполь- зовать характеристику для которой относительная погрешность ДС|/С] существенно меньше. Погрешность определения координат центра тяжести рассматриваемого объекта зависит от его конфигурации и размеров (рис. 12.38). Для квадрата и треугольника она не превышает 0,55, для окружности с 5 > 115 -125 значение погрешности не превышает 0,155. При определении ориентации объекта по его максимальной стороне погрешность не превышает 0,12 рад и с увеличением 5 уменьшается. Для определения размера объекта после его распознавания можно использовать параметры Р или S. Анализ показал, что для рассмат- риваемого набора объектов более точные результаты дает параметр Р. Размер объекта при этом всегда определяется с недостатком. Чтобы исключить систематическую ошибку при расчетах размера 5 нужно использовать следующие соотношения: для треугольника 5 = PR + 1,5; для квадрата 5 = Р/4 + 1; для окружности 5 = Р/2тс + 0,5. 296
Рис. 12.38. Погрешности Дл, Ду определения координат центра тяжести объекта в зависи- мости от 5/5 В этом случае погрешность определения а для квадрата и треугольника не превысит 0,58, а для окружности - 0,28. Следует отметить, что средние значения признаков С\ и С2, полученные при моделировании, из-за погрешностей аппроксимации не совпадают с расчетными (идеальными) характеристиками. Так как эти систематические смещения характеристик зависят от конфигурации объекта, целесообразно в качестве эталонных принимать не идеальные характеристики, а средние, полученные автоматически в режиме обучения. Из приведенного примера видно, что моделирование процессов иден- тификации объектов в дискретных распознающих системах является эффективным средством для оценки принятых алгоритмов обработки ин- формации и для определения важных для проектируемой системы па- раметров. 297
12.4.10. Повышение быстродействия сенсорной системы за счет совершенствования организации вычислительных процессов До сих пор основное внимание мы уделяли структуре сенсорных систем и алгоритмам обработки информации. Не менее важную роль в достижении быстродействия системы играет архитектура используемых микропро- цессорных средств и организация вычислительных процессов. Рассмотрим варианты организации обработки сенсорной информации для микропроцессорной системы, структура которой представлена на рис. 12.39. Ядро системы составляют два процессора: Пр1 - периферийный процессор, обслуживающий все внешние каналы связи с периферийным оборудованием, и Пр2 - процессор для обработки данных. Пусть, например, процессор Пр1 имеет тактовую частоту 2 МГц, а Пр2 - 6 МГц. Оба про- цессора имеют свои ОЗУ и связаны между собой каналом, быстродействие которого 1 МГц. Сенсором является камера на базе ПЗС-матрицы размер- ностью [256 х 128]. Камера подключена к параллельному порту (обеспе- чивает побайтный ввод информации), который обслуживается специальным контроллером, оснащенным собственным таймером. Процессору Пр2 доступна память Пр1; имеется возможность также запустить на выполнение программу Пр1, хранящуюся в его ОЗУ. Задача заключается в том, чтобы, предельно используя мощность каждого из основных элементов структуры, обеспечить максимальное быстродействие системы в целом при обработке информации от видео- датчика. Соответствующие расчеты быстродействия системы мы приводить не будем, опишем лишь ряд вариантов организации вычислительных процессов на данной структуре, отметив свойственные им преимущества и недостатки. Вариант 1 - наиболее простой в программировании, но наименее быст- родействующий. В соответствии с этим вариантом предполагается исполь- зование только одного процессора для последовательного выполнения всех этапов обработки информации (см. блок-схему на рис. 12.24). На первый взгляд, кажется, что для этой цели целесообразно использовать процессор Пр2, поскольку он более быстродействующий. В этом случае Пр1 выполняет свои традиционные функции по обслуживанию ввода инфор- мации от сенсора как с периферийного оборудования. Однако существенного повышения быстродействия системы здесь ожидать нельзя, так как процессоры Пр1 и Пр2 связаны относительно "медленным" каналом и передача 256 х 16 байт информации потребует времени, соизмеримого с выигрышем, полученным от использования более быстродействующего процессора. Поэтому обработку следует производить на процессоре Пр1, а результаты решения задачи идентификации и опре- деления положения объектов передавать на процессор Пр2 для исполь- зования, например, в расчетах управляющих воздействий на приводы ро- бота. Тогда объем информации, передаваемой по каналу, существенно сократится. Вариант 2 предполагает уплотнение режима процессора Пр1 за счет учета такта работы сенсора. В соответствии с блок-схемой, приведенной на 298
Рис. 12.39. Вариант микропроцессорных средств для обработки информации с видеосенсора рис. 12.24, обработка начинается после ввода всей сенсорной информации. По логике работы ПЗС-матрицы и отображения в памяти ЭВМ всего рецепторного поля, время необходимое для формирования сигнала на каждых восьми элементарных датчиках, зависит от освещенности сцены и в среднем составляет 15 мкс. Данное время отсчитывается таймером конт- роллера; процессор Пр1 при этом находится в режиме ожидания Таким образом, на ввод всей информации от сенсора требуется около 0,06 с. Боль- шую часть этого времени процессор простаивает. Целесообразно перевести процессор Пр1 в режим прерываний и, не дожидаясь конца ввода всей ин- формации, заполнить имеющиеся при вводе "окна” обработкой ранее введенной информации, например программой отслеживания и аппроксима- ции контура. Естественно, программное обеспечение усложняется, так как необходимо создать программы прерываний. Более того, так как ПЗС- камера не обеспечивает произвольной выборки элементов, а выдает инфор- мацию байтами по столбцам, необходимо модернизировать программу отслеживания контура объекта (см. блок-схему на рис. 12.29) так, чтобы она могла выделять вершины аппроксимирующей линейчатой фигуры при указанной последовательности получения информации от сенсора. Вариант 3 наряду с уплотнением режима работы процессора Пр1 использует вычислительную мощность быстродействующего процессора Пр2. Весь объем вычислений разбивается на две части, каждая из которых выполняется независимо на отдельном процессоре. На процессор Пр1 возлагается ввод информации и ее первичная обработка (в основном, на уровне логических операций) до получения координат точек аппроксимации контура. Дальнейшая обработка, связанная с вычислением ха- рактеристических признаков объекта и процессом его идентификации, выполняется на процессоре Пр2. Преимущества такой организации системы заключаются в следующем. Во-первых, "медленный" процессор выполняет в основном "быстрые" логические операции по фильтрации входной сенсорной информации. "Быстрый" процессор Пр2 выполняет "медленные" арифметические опе- 299
рации, в том числе и с плавающей запятой. Это позволяет приблизиться к равенству периодов выполнения обеих частей программы и почти в два раза увеличить частоту обращения к видеосенсору. Во-вторых, потери времени на передачу данных между процессорами с помощью "медленного" канала будут незначительными, так как весь объем информации, поступившей с сенсора (4 Кбайт), существенно сжат до 20- 40 пар координат точек аппроксимации контура. В-третьих, поскольку обработка ведется по мере получения информации с сенсора, то отсутствует необходимость в выделении памяти под рецепторное поле. Последний вариант организации обработки сенсорной информации требует дальнейшего совершенствования системного программного обес- печения, в частности, создания программ, синхронизирующих работу двух процессоров над одним полем памяти. Для учета особенностей отдельных блоков выбранной структуры микропроцессорных средств необходимо более "тонкое" и сложное системное программное обеспечение, а в ряде случаев модернизация прикладных программ. ЛИТЕРАТУРА 1. Агейкин Д.И., Костина Е.Н., Кузнецова Н.Н. Датчики контроля и регулирования. Справоч. материалы. М.: Машиностроение, 1970. 928 с. 2. Альберт А. Регрессия, псевдоинверсия и рекуррентное оценивание. М.: Наука, 1977. С. 318. 3. Артоболевский И.И., Боголюбов А.Н., Болотин В.В. и др. Вибрации в технике. Т. 1, Колебания линейных систем. М.: Машиностроение, 1978. С. 72-76. 4. Беляковский Н.Г. Конструктивная амортизация механизмов, приборов и аппаратуры на судах. Л.: Судостроение, 1965. 523 с. 5. Бутаков Е.А., Островский В.И., Фадеев И.Л. Обработка изображений на ЭВМ. М.: Радио и связь, 1987. 238 с. 6. Верхаген К, Дейн Р., Грун Ф. и др. Распознавание образов, состояние и перспективы. М.: Радио и связь, 1985. 104 с. 7. Генкин В.Л., Ерош ИЛ, Игнатьев М.Б. Информационные устройства робототех- нических систем. Л.: ЛИ АП, 1985. С. 126. 8. Горелик АЛ., Скрипкин В.А. Методы распознавания. М.: Высшая школа, 1977. 222 с. 9. Гориневский Д.М., Формальский А.М. Об устойчивости движений упругого манипу- лятора с обратной связью по силе // Изв. АН СССР. МТТ. 1985. № 3. С. 49-56. 10. Гурфинкель В.С. и др. Тактильное очувствление манипуляторов // Изв. АН СССР, Техн, кибернетика, 1974. № 6. С. 17-24. 11. Гурфинкель В.С., Девянин Е.А. и др. Адаптивный автоматический манипулятор с силоизмерительными датчиками // Станки и инструмент, 1981. № 12. С. 19-22. 12. Гурфинкель В.С., Девянин Е.А. и др. Силовая обратная связь в системе управления манипулятором // Механика твердого тела, 1984. № 6. С. 56-64. 13. Дуда Р., Харт П. Распознавание образов и анализ сцен. М.: Мир, 1976. С. 511. 14. Ерош И.Л., Игнатьев М.Б. Адаптивные системы управления промышленными роботами. М.: Изд. НИИМАШ, 1979. 59 с. 15. Ерош И.Л., Генкин В.Л., Михайлова З.А. Распознавание объектов сложной формы, перемещаемых конвейерным транспортом // Межвуз. сб. ЛИАП, 1981. Вып. 148. Вычислительные процессы и структуры. С. 114-117. 16. Ерош И.Л., Игнатьев М.Б., Москалев Э.С. Адаптивные робототехнические системы. Л.: ЛИАП, 1985. 143 с. 17. Жаботинский Ю.Д., Исаев Ю.В. Адаптивные промышленные роботы и их применение в микроэлектронике. М.: Радио и связь, 1985. 105 с. 300
18. Клюев В.В., Кондратьев Ю.А. и др. Датчики очувствления роботов И Приборы и системы управления, 1983. № 1. С. 16-23. 19. Кобринский А.Е., Корендясев А.И., Саламандра Б.Л., Тывес Л.И. Информационные системы промышленных роботов. // Станки и инструмент, 1978. № 8. С. 12-17. 20. Кобринский А.А., Кобринский А.Е. Манипуляционные системы роботов. М.: Наука, 1985. С. 343. 21. Колискор А.Ш., Модель Б.И., Лашко Е.Б., Саламандра БЛ. Об одном регулярном методе получения признаков для идентификации плоских объектов И Изв. АН СССР. Техническая кибернетика. 1982. № 4. С. 132-136. 22. Колискор А.Ш. Разработка и исследование промышленных роботов на основе /-коор- динат // Станки и инструмент, 1982. № 12. С. 21-24. 23. Куафе Ф. Взаимодействие робота с внешней средой. М.: Мир, 1985. 285 с. 24. Кузьмин С.А., Петров А.А, Алгоритмы классификации и определения параметров силуэтных изображений в системе технического зрения роботов И Проблемы машинного видения в робототехнике. М., изд.: ИПМ, 1981. С. 140—151. 25. Лашко Е.Б. Об идентификации объектов в системе с дискретной информационной по- верхностью И Механизация и автоматизация ручного труда на промышленных пред- приятиях. М., МДНТП, 1979. С. 193-110. 26. Лашко Е.Б., Саламандра Б.Л. Об одном алгоритме отслеживания и аппроксимации контура объекта в дискретных распознающих системах// Машиноведение, 1982. №5. С. 65-72. 27. Лашко Е.Б., Саламандра Б.Л. Алгоритм построения графа решений задачи иденти- фикации объектов в распознающих робототехнических системах И Изв. АН СССР. Техническая кибернетика. 1986. Деп. в ВИНИТИ 7.2.86. № 910-В. 28. Лизунов А.Б. Алгоритм определения ориентации детали с помощью робота// Радио- физические методы обработки сигналов. М.: МФТИ, 1983. С. 31-36. 29. Орлова Г.Н., Тывес Л.И. Тактильные и силомоментные датчики промышленных роботов И Технология судостроения, 1985. № 10. С. 26-32. 30. Раевский Н.П. Датчики механических параметров машин. М.: Изд. АН СССР, 1959. С. 276. 31. Разработка систем технического зрения и их применение в промышленности// Тезисы докладов научно-технической конференции, г. Устинов, 1986. С. 135. 32. Робертс Л. Автоматическое восприятие трехмерных объектов И Интегральные роботы, М.: Мир, 1973. С. 68-75. 33. Скопалик Е., Васильев В. Разработка болгарских тактильных сенсоров И Робкон 3, 1985. Зл. Пясъци. С. 144-151. 34. Ту Дж., Гонсалес Р. Принципы распознавания образов. М.: Мир, 1978. 471 с. 35. Тывес Л.И. К построению шестикомпонентного датчика усилий промышленного робота // Измерительная техника, 1984. № 9. С. 39-41. 36. Шнейдер А.Ю., Гориневский Д.М., Ленский А.В. и др. Силомоментные датчики для ро- бототехнических систем. Датчики, размещаемые на манипуляторе. М., 1984. 70 с. (Препр. / ИППИ АН СССР). 37. Шнейдер А.Ю., Гориневский Д.М., Ленский А.В. и др. Силомоментные датчики для робо- тотехнических систем. Динамометрические платформы и рукоятки, датчики опорных реакций, обработка сигналов датчиков. М., 1986, 68 с. (Препр. / ИППИ АН СССР). 38. Электрические измерения неэлектрических величин / Под ред. П.В. Новицкого. М.: Энергия, 1975. 576 с. 39. Agin G.J. An experimental vision system for industrial application // Proc, of the 5th Intern, symp. on industr. robots. Chicago, 1975. P. 135-148. 40. Ando S. et al. Arc welding robot with sensor "Mr. AROS" // Proc, of the 7th Intern, symp. on industr. robots. Tokyo, 1977. P. 134-141. 41. Anthoine J.L. et al. Some encoding and measuring problems in robotics// Proc, of the IMEKO Symp. comp. Measur., Zagreb, 1981. P. 42-46. 42. Bejezy A.K. Sensorrs, controls and man-machine interface for advanced teleoperation I I Science. 1980. Vol. 208, N 4450. P. 1327-1335. 43. Bribiesca E., Guzman A. How to describe pure form and how to measure differences in shapes using shape numbers // Pattern Recogn. 1980. Vol. 12. P. 101-112. 301
44. Brill E.L. Character recognition via Fourier descriptors // WESKON Pap. 1968. N 3. P. 15. 45. Coiffet P., Rives P. An experiment of vision movement infraction in automatic handling by robot // Proc, of the 10th Intern, symp. on industr. robots. Milan, 1980. P. 71-81. 46. Dario P., Bardelli R., Rossi D. et al. Touch sensitive polymer skin piezoelectric properties to recognize orientation of objects // Sensor Rev. 1982. October. P. 74-89. 47. Dillman R., Faller B. Kraft-Momenten Sensor System fur Industrie Roboter// Electronik. 1982. N 8. S. 89-95. 48. Dillman R. Sensorgefuhrter Greifer mit taktiler und nichttaktiler Sensorumgebung // Maschinen- Anlagen-Verfarung, 1983. N 3. S.l 5-18. 49. Drake S.H. et al. High speed robot assembly of precision parts using complianse instead of sensory feedback // Proc, of the 7th Intern, symp. on industr. robots. Tokyo. 1977. P. 307-318. 50. Dudani S.A. Moments methods for the identification of the three dimensional objects from optical sensors: These / Ohio State Univ. 1971. P. 83-84. 51. Goldgewicht. Un dispositiv d’identification de formes // Mashine Modeme. 1974. Juin. P. 71-76. 52. Goto T., Inoyama T., Takeyasu K. Precise insert operation by tactile controlled robot // Proc, of industr. robots symp. Moskow, 1975. P. 139-150. 53. Hillis W.D. A high-resolution imaging touch sensor// Intern. J. Robotics Res. 1982. Summer. P. 64-69. 54. Hoifodt J.R., Hakonsen H. SIMAGE-SI’s image recognition system// Proc, of the 11-th Intern, symp. industr. robots. Tokyo, 1981. P. 137-144. 55. Kamata Sh. Sensor industry a fast-growing market// Sensor Industry Japan. 1984. July. P. 14-21. 56. Kasai M. et al. Trainable assembly system with anactive sensory table possesing 6 axes // Proc, of the 11th Intern, symp. on industr. Robots. Tokio, 1981. P. 393^4-04. 57. Kashioka et al. An approach to the integrated intelligent robot with multiple sensori. Visual recognition techniques H Proc, of the 7th symp. on industr. robots. Tokio, 1977. 58. Kelley R. et al. Algorithm to visually acquire workpieces // Ibid. 1977. P. 497-506. 59. Kinoshaita, Aida, Mori. A pattern classification by dynamic tactile sense information processing // Pattern Recognition. 1975. Vol. 7. P. 172-181. 60. Koskinen K, Niemi A. Object recognition and handling in industrial robot system with vision // Proc, of the 8-th Intern, symp. on industr. robots. Stuttgart. 1978. P. 744-755. 61. Kulkarni A.V., Kanal L.N. // Proc, of the 4th Intern. Joint conf, on pattern recognition, Kyoto. N.Y.: IEEE. P. 238-245. 62. Mac Queen J.B. Some methods for classification and analysis of multivariate observations // Proc, of the 5th Berkeley symp. on math, statistics and probability. Berkeley: Univ, of Calif, press, 1967. Vol. 1,N l.P. 40-51. 63. Makhlin A.G. Using vision in electric motor assembly// Assembly Automation. 1981. May. P. 144-148. 64. Micheron Fr. Vers une nouvelle generation de capteurs grace aux polymeres piezeelectrigues mesures//J. Regulation-Automat. 1982. une. P. 101-108. 65. Nakamura Y., Hanafusa H., Ueno N. A piezoelectric film sensor with unformly expended surface to detect tactile information for robotic end-effectors // Proc, of the ICAR. Tokyo, 1985. P. 381- 390. 66. Nevins J.L., Whitney D.E. The force vector assembler concept // Proc, of the First CISM-IFTOMM symp. on theory and practic of robots and manipulators: Preprints. Udine, 1973. P. 300-310. 67. Hu M.-K. Visual pattern recognition by moment invariants // IRE Trans, on Inform. Theory. 1962. Vol. IT-8. P. 24-31. 68. Page, Pugh, Heginbotham. Novel techniques for tactile sensing in a three dimensional environment // Proc, of the 3rd Conf, on industr. robot techn. Nottingem, 1976. P. 30-37. 69. Perkins W.A. A model based vision system for industrial parts // IEEE Trans., Comput. 1978. Vol. C-27. 70. Perruchon E. Contribution a la realization de fonctions tactiles artificielles a partir de Г analyse du susteme humain: These de cycle. Monpellier, 1979. P. 17-19. 71. RaibertM., Tanner J. A VLSI tactile array sensor// Proc, of the 12th ISIR. P., 1982. P. 317-328. 72. Reddy D.R., Hon R.W. Computer architectures for vision// Computer vision and sensor based robots. Plenum press, 1979. P. 83-91. 73. Riad A., Briot M. A hierarchical vision system for object identification and localization // Proc, of the 13th Intern, symp. on industr. robots. Chicago, 1983. P. 17-1-17-10. 302
74. Reibert M.H., Craig J. J. Hybrid Position / force control of manipulators // Trans. ASME. J. Dynam. Systems, Measur. and Control, 1981. Vol. 103, N 2. P. 126-133. 75. Rosen C.A., Nitzan D. Developments in programable automation // J. Manufact. Eng. Vol. 75, N 3. 1975. P. 26-30. 76. Rossol L. Vision and adaptive robots in general motors // Proc, of the 1st Intern, conf, robot vision and sensory controls. Badford, 1981. P. 277-287. 77. Shimano B., Roth B. On force sensing information and its use in controlling manipulators // Proc. IFAC Intern, symp., Tokyo, 1977. Oxford, 1978. P. 119-126. 78. Smith F., Wright M. Automatic ship photo interpretation by the method moments // IEEE Trans, on comput. 1971. Vol. C-20. 79. Takeda S. Study of artificial tactile sensors for shape recognition. Algorithm for tactile data input // Proc, of the 4th Intern, symp. on industr. robots. Tokyo, 1974. P. 307-311. 80. Veda M., Matsuda F., Takahara J. A real time shape recognition of moving objects I I Proc, of the 11th Intern, symp. on industr. robots. Tokyo, 1981. P. 64-70. 81. Vay R.N., Todd J.D. Vision system for industrial robots of NEL// Proc, of the 1st Intern, conf.: Robot vision and sensory controls. Badford, 1981. P. 13-24. 82. Villers Ph. Present industrial sse of vision sensors for robot guidance// Proc, of the 12th Intern, symp. on industr. robots. P., 1982. P. 291-302. 83. Wang S.S.M., Will P.M. Sensors for computer controlled mechanical assembly // J. Industr. Robot. 1978. Vol. 5,N l.P. 9-18. 84. Watson P.C., Drake S.H. Pedestal and wrist force sensors for automatic assembly // Proc, of the 5th Intern, symp. on industr. Robots. Chicago: III Res. Inst., 1987. P. 501-511. 85. Whitney D.E. Force feedback control of manipulator fine motion // Trans. ASME. J. Dynam. Syst., Measur. and Control. 1977. Vol. 99, N 2. P. 91-97.
Глава 13 ОСОБЕННОСТИ РАЗРАБОТКИ ИНТЕРФЕЙСА ЧЕЛОВЕК-РОБОТ 13.1. СПОСОБЫ ПРОГРАММИРОВАНИЯ РОБОТОВ Программирование ПР представляет собой процесс накопления и по- следующего запоминания в системе управления информации, необходимой для выполнения роботом конкретной технологической операции. Любую сколь угодно сложную двигательную операцию разбивают при этом на ряд последовательных относительно простых шагов, описывающих каждый элементарный двигательный переход. Поэтому программа робота, как правило, содержит информацию о последовательности переходов, для каждого из которых включена информация 1) о положении захвата робота и его состоянии (закрыт, открыт); 2) о времени выстоя в требуемом положении, после истечения которого вырабатывается сигнал на отработку следующего перехода; 3) о требуемом состоянии периферийных устройств и оборудования участка (управление участком по каналам вывода от системы управления робота); 4) о том, какие датчики внешней среды и самого робота опрашивать и как логически обрабатывать полученные данные о состоянии датчиков с целью изменения или доопределения указанной выше информации для последующего элементарного перехода. К датчикам среды относятся системы технического зрения, датчи- ки усилий и моментов, тактильные сенсоры, датчики безопасности и т.д. (см. гл. 12). Все они подключены к каналам ввода системы управления роботом. В настоящее время получили и широкое распространение два способа введения этой информации в систему управления роботом (рис. 13.1). Первый способ - прямой - обучение "показом": управляя роботом в ручном режиме, его выводят в требуемую конфигурацию, запоминают в ней показания датчиков обратных связей по положению и используют их в качестве программных значений. Второй способ - косвенный: по модели робота и внешней среды аналитически определяют требуемую программную конфигурацию робота, т.е. программные значения положений элементов робота, оснащенных датчиками обратных связей. Способ обучения "показом" стали применять раньше. Это объясняется 304
Рис. 13.1. Классификация способов программирования роботов его простотой и бедностью систем управления первых образцов ПР. В них, как правило, запоминание информации осуществлялось на аналоговых элементах (в том числе на потенциометрах), а система управления строи- лась на основе релейных цепей с использованием штекерных панелей, ша- говых переключателей, штекерных барабанов и тому подобных устройств. С расширением технических возможностей программных и аппаратных средств, используемых в системах управления ПР, появилась возможность реализации косвенного способа программирования. Современная система управления робота строится на основе вычис- лительной техники, чаще всего на микропроцессорной базе с соответс- твующей атрибутикой: логическими и арифметическими устройствами (часто многопроцессорными), развитой оперативной и постоянной памятью, большим числом каналов ввода и вывода как дискретной, так и аналоговой информации, развитым математическим обеспечением (см. гл. 7, 10, 11, 12), включающим специализированные языки программирования. Следует, однако, отметить, что прогресс в этой области не ликвиди- ровал прямой способ программирования, а усовершенствовал его во многих отношениях, превратив в так называемый on line programming - пошаговое, часто в режиме диалога, введение и отработку команд непосредственно на программируемом роботе. Этот способ применяется в основном для цикловых и позиционных ПР. В отличие от него способ аналитического программирования в "чистом" виде - off line programming - заключается в независимой подготовке программ на автономном устройстве с после- дующим переносом на программируемый объект. Иногда при достаточной мощности вычислительных средств робота подготовку программы можно вести в режиме фоновой задачи (робот при этом может выполнять уже отлаженные технологические операции). Если информация о положении захвата, времени выстоя и техно- логических команд по каждому элементарному переходу накапливается в системе управления в соответствии с последовательностью отработки 305
программы, то такой метод программирования называют централизо- ванным обучением [3,20]. Если же последовательность переходов про- граммируется отдельно от координат позиций, времени выстоя и других программных параметров перехода, то такой метод называют методом раздельного обучения. При одном и том же цикле работы робота метод централизованного обучения требует большего объема памяти, чем метод раздельного обучения, так как часто необходимо в одном цикле несколько раз поместить захват в одну и ту же точку рабочего пространства. В то же время, опыт показал, что при централизованном обучении достигается более высокая точность отработки программы. Объяснение этому эффекту дано ниже. 13.2. СПОСОБ ПРЯМОГО ОБУЧЕНИЯ В начале 1950-х годов при разработке систем автоматизации метал- лорежущего оборудования был предложен способ [12, 25], в соответствии с которым программа работы станка формировалась как копия ручного процесса обработки первой детали партии, выполняемого высококвали- фицированным оператором. Для этого универсальный станок оснастили соответствующими датчиками для фиксации на программном носителе всех движений оператора, а затем эти движения воспроизвели на автоматичес- ком станке для получения остальных деталей партии. В металлообработке такой способ не нашел широкого применения в связи с тем, что металлообработка - достаточно тонкий технологический процесс и даже в случае не очень сложных деталей практически не удается безошибочно изготовить первую деталь без соответствующих контрольных операций и поправок. В результате данный способ не смог конкурировать с расчетным способом подготовки управляющих программ - с системами ЧПУ. Для программирования роботов, предназначенных для достаточно грубых операций, идея копирования первого ручного цикла, лежащая в основе прямого обучения, оказалась наиболее плодотворной, особенно на начальном этапе развития, когда внедрение вычислительных средств в промышленную робототехнику еще не было экономически целесооб- разным. Обучение состоит в том, что, пользуясь выносным пультом, оператор выполняет первый технологический цикл, управляя в ручном режиме движениями инструмента, закрепленного в захвате робота, при этом все перемещения инструмента последовательно записываются в запоминающее устройство робота. Этот способ прост, доступен оператору соответствующей квалификации и практически не требует никаких дополнительных устройств. Пример реализации системы управления роботом, который програм- мируется способом прямого обучения, приведен на рис. 13.2. Робот типа Versatran работает в цилиндрической системе координат. Его региональные степени подвижности z, р, ф управлются в позиционном режиме, а локаль- ные (ориентирующие) степени подвижности и движение губок захвата - в цикловом. Каждая региональная степень подвижности в качестве датчика обратной связи оснащена многооборотным потенциометром. 306
оборудование Информация tz ~ О О О О о координатах < р - О О О О позиций - О О О О * * • о технологических о времени задержки командах Рис. 13.2. Технические средства системы программирования робота способом прямого обучения
Отработка движения и выход в заданную позицию осуществляются по сигналу рассогласования между упомянутым потенциометром-датчиком в цепи обратной связи и аналогичным потенциометром-задатчиком, установ- ленным в системе управления. Каждая позиция захвата в рабочем пространстве характеризуется положениями движков трех задающих потенциометров соответственно по координатам z, р, ф. Число таких групп определяет объем аналоговой памяти системы и соответственно число точек позиционирования в цикле. Обучение робота осуществляется с помощью выносного пульта 1. В режиме обучения разрывается цепь обратной связи, и оператор, используя естественный канал зрительной обратной связи и воздействуя на кнопки непосредственного управления приводами координат z, р, ф (или с помощью джостика 5) выводит захват в требуемое положение. Сигнал рассогласования между задающим и обрабатывающим потенциометрами выводится на индикаторный прибор 2. По показанию этого прибора оператор, изменяя положение движков задающих потенциометров, добивается нулевого рассогласования последовательно по всем трем координатам z, р, ф. Таким образом, в системе управления запоминается требуемая про- граммная позиция захвата. При последовательном перемещении захвата в программные позиции цикла и повторении указанной процедуры на различных группах потенциометров, запоминается все программное движение. Если теперь включить любую программную секцию задающих потенциометров в контур обратной связи, то, в каком бы исходном поло- жении ни была рука робота, приводы, отработав сигналы рассогласования, выведут захват в заданную точку рабочего пространства. Коммутация осуществляется с помощью штеккерного барабана 3, на котором установлены флажки для подключения той или иной группы задающих потенциометров. Барабан по длине разделен на секции. Первая секция, как было отмечено, несет информацию о последовательности переходов из одной программной позиции в другую. Вторая секция содержит информацию о перемещениях цикловых степеней подвижности робота, о состоянии его захвата, а также о необходимых релейных ко- мандах управления периферийным технологическим оборудованием. В третьей секции хранится информация о времени выстоя в каждой программной позиции. Для этого в системе управления предусмотрено несколько дискретных уровней задержки сигнала на отработку шагового движения привода 4 штеккерного барабана. Синхронизация всех этих потоков информации осуществляется за счет использования одного носи- теля - штеккерного барабана. Таким образом, первый цикл выполняется оператором в ручном режи- ме, все необходимые параметры движений и действий запоминаются в системе управления, а затем этот же цикл может быть многократно повторен в автоматическом режиме. Поэтому часто метод программи- рования "показом" называют методом обучения по первому циклу [2]. Эффективность такого подхода при программировании роботов обусловлена тем, что точности зрительной обратной связи оператора, как правило, вполне достаточно для выполнения двигательных актов робота, 308
поскольку при программировании рабочих позиций оператор ориенти- руется непосредственно по результату - по конечному положению захвата относительно технологических позиций, размещенных в рабочем простран- стве робота. Оператора совершенно не волнует связь между декартовыми координатами пространства, в котором он привык работать, и обобщен- ными координатами робота. На результат программирования практически не влияют также абсо- лютная погрешность датчиков обратных связей и нелинейность их ха- рактеристики. Основное требование, которое предъявляется к системе при таком способе программирования, - высокая повторяемость выхода захвата в заданные позиции. Поэтому для промышленных роботов повторяемость является одной из важнейших точностных характеристик. 13.3. ПРЯМОЕ ОБУЧЕНИЕ С АВТОМАТИЧЕСКОЙ КОРРЕКЦИЕЙ ПОГРЕШНОСТЕЙ ПОЗИЦИОНИРОВАНИЯ Для достижения максимальной точности воспроизведения программы необходимо стремиться сохранить условия выполнения движений при об- учении и при автоматическом воспроизведении программы. Практически это никогда не выполняется: скорости движения при обучении, как правило, в 2-3 раза ниже, чем при отработке программы; при обучении позиция достигается обычно последовательным включением приводов отдельных степеней подвижности, а отработка движений осуществляется при одно- временном движении по нескольким степеням подвижности. Вследствие неодинаковых начальных условий и изменившейся динамики процессов движения погрешность позиционирования может быть значи- тельной. В результате необходимо корректировать программу, созданную по первому циклу, и обучение робота превращается в достаточно длитель- ный и трудоемкий итерационный процесс. При способе раздельного обучения для программирования одной точки позиционирования достаточно только одной группы запоминающих устройств. Если же в эту точку необходимо выводить захват несколько раз за цикл, причем из различных точек рабочего пространства (подход к заданной точке с разных сторон), то погрешность такого выхода может значительно возрасти, из-за наличия зоны нечувствительности приводов и зазоров в кинематических цепях. Здесь проявляется нестабильность условий обучения и автоматической отработки разных элементов цикла. При таком цикле движений средняя погрешность позиционирования робота "Versatran-500" могла достигать 14,5 мм [4], что существенно хуже его паспортной характеристики. Поэтому способ централизованного обучения, хотя и требует по сравнению с раздельным обучением большего объема памяти при одном и том же цикле, но при прочих равных условиях имеет лучшие точностные показатели. Длительный итерационный процесс обучения обуславливает низкую производительность операций программирования роботов. Поэтому в системах с прямым обучением, в отличие от аналитического программи- 309
Рис. 13.3. Структурная схема системы управления роботом при программировании способом прямого обучения с автоматической коррекцией погрешностей позиционирования рования (см. гл. 7), представляет интерес создание системы обучения с ав- томатической коррекцией погрешностей позиционирования. В такой системе за счет введения дополнительного комплекта датчиков реализуется возможность за несколько автоматических циклов (2-4) выявить погреш- ность позиционирования, обусловленную несовпадением условий обучения и автоматического воспроизведения программы, и запомнить скорректи- рованную величину сигнала, определяющего программную позицию. Структурная схема управления одной степенью подвижности в такой системе представлена на рис. 13.3. Каждая степень подвижности робота 1 приводится от двигателя 2 через кинематическую цепь привода, представ- ленную редуктором 3 с присущим ему зазором 4 и упругостью 5. Датчик 6 обратной связи установлен, как это обычно принято для повышения устойчивости системы, непосредственно на валу двигателя 2. При вы- полнении уже отлаженной программы из блока памяти 7 последовательно извлекаются программные установки, которые отрабатываются двигателем 2 с помощью контура обратной связи от датчика 6. Задача обучения состоит в том, чтобы последовательно занести в блок памяти 7 значения, соответствующие требуемым программным позициям робота 7. Для этой цели в систему включен дополнительный датчик по- ложения 8 и блок обучения и коррекции 9, Датчик 8 установлен непо- средственно в шарнире соответствующего звена робота. Блок 9 включает нуль-орган 10 и вычислительное устройство, состоящее из умножителя 77 и сумматора 72. Датчик 8 и блок 9 используются только на этапе обучения, при этом занесение в память 7 информации, поступающей из сумматора 72, осуществляется дискретно, когда звено вышло в требуемую позицию. Система работает в трех режимах: 1) в автоматическом режиме вос- произведения программы; 2) в режиме первого прохода с управлением от оператора; 3) в автоматическом режиме коррекции. Блок переключения режимов и соответствующие изменения связей на схеме не показаны. Этап программирования робота включает второй и третий режимы и осуществляется итерационными циклами по следующему алгоритму. 310
1. Оператор включает второй режим. При этом разрывается контур обратной связи, и управление осуществляется от ручного пульта. В ручном режиме на малой скорости оператор выводит звенья робота по- следовательно в такие положения, при которых захват занимает требуемую позицию. 2. Изменяя положение корпуса датчика 8 по каждой степени подвиж- ности или варьируя уровень опорного сигнала, поступающего на нуль-орган 10, оператор обеспечивает нулевое значение сигнала, поступающего на умножитель 77. Тем самым фиксируется требуемое положение каждого звена. По команде от оператора в память 7 заносится значение, посту- пающее от сумматора 72. На данном этапе это значение соответствует показаниям датчика 6. 3. Оператор переключает систему на автоматический режим коррекции. При этом замыкается контур обратной связи и по специальной программе начинают выполняться коррекционные циклы движений. Каждый цикл включает выход в предыдущую точку позиционирования, а затем переход на рабочих скоростях одновременно по всем степеням подвижности в требуемую точку рабочего пространства робота. После каждого такого цикла автоматически производится обновление памяти 7. Погрешность позиционирования регистрируется дополнительным датчиком 8. В блоке 77 полученная погрешность умножается на два ко- эффициента, один из которых формируется по матрице частных пере- даточных отношений между углами поворота входных валов датчиков положения 8 и 6, установленных на звеньях робота и на валах двигателей 2 (см. раздел 5). Второй коэффициент меньше единицы; он выбирается исходя из условия сходимости процесса коррекции за требуемое число итерации. В сумматоре 72 полученная корректирующая поправка склады- вается с показаниями абсолютного датчика 6, а результат сложения заносится в память 7 в качестве программного значения для следующего цикла итераций. 4. После отработки требуемого числа итераций оператор переходит к программированию следующей точки позиционирования, начиная с пункта 1 рассмотренного алгоритма. В результате будет сформирована программа движений робота, в которой программные значения, характеризующие положения захвата в рабочем пространстве, будут скорректированы по результатам движения на рабочих скоростях. Следует отметить, что в качестве дополнительных датчиков 8 мо- гут быть использованы датчики малых перемещений, диапазон измере- ния которых больше максимально возможной ошибки положений звена при ручном и автоматическом режимах работы. Погрешность измере- ния датчика 8 должна быть не хуже, чем у абсолютного датчика 6. Дат- чики 8 могут быть установлены на звеньях робота только на период обучения с возможностью перемещения относительно звеньев и фиксации на них. 311
13.4. ПРОГРАММИРОВАНИЕ С ПОМОЩЬЮ КОМАНД Способ обучения "показом" имеет следующие ограничения, которые сужают область его использования только для простых роботов и отно- сительно несложных технологических операций: - невозможность использования сенсорной информации (от много- компонентных силомоментных датчиков, систем технического зрения, тактильных матриц и т.п., см. гл. 12), требующей математической обработки; - отсутствие возможности выполнения вычислительных операций, повторения некоторых совокупностей элементов цикла движений, пере- ходов на различные элементы цикла по условиям, часто определяемым по текущим показаниям датчиков. Данные ограничения снимаются при построении системы управления роботом на базе вычислительной техники и при использовании для целей программирования языковых средств, присущих современным ЭВМ. Язы- ковое программирование позволяет создать программы практически любой сложности. Современное развитие робототехники связано с интенсивной разработкой программного обеспечения, направленного на реализацию в системах управления роботов элементов искусственного интеллекта. Следует отметить, что вообще проблема создания языка программи- рования высокого уровня, в котором программист оперирует с командами, близкими по своему содержанию к технологическим операциям или их завершенным элементам, тесно связана с более общими задачами по исследованию искусственного интеллекта. Закономерно поэтому, что основные принципы построения языков программирования для роботов были развиты в научных коллективах, занимающихся теоретическими во- просами машинного разума [2, 20]. В настоящее время известно очень много робототехнических языков, как оригинальных, так и базирующихся на традиционных универсальных языках современных ЭВМ. Вопросы анализа и классификации языков для роботов освещены в большом числе работ (см., например, [2, 10, 29, 32, 33]). Ниже рассмотрена укрупненная классификация, учитывающая специ- фику задач, решаемых на различных уровнях управления роботом [38]. Совершенствование роботов происходит в направлении последователь- ного наращивания более высоких уровней системы управления вплоть до реализации элементов искусственного интеллекта. При этом за счет наращивания технических средств и обогащения программного обеспечения расширяются функциональные возможности каждого уровня и повышается универсальность и автономность робота путем придания ему адаптивных свойств по отношению к внешней среде. Оператор должен иметь возможность взаимодействия с роботом на разных уровнях иерархии системы управления. При этом каждому уровню должен соответствовать свой входной язык, адекватный задачам, решаемым на данном уровне иерархии. Заметим, что лишь на нижнем уровне иногда допускается прямой способ обучения. Преобладающим является off line programming. 312
a б Рис. 13.4. Уровни иерархии сис- темы управления роботом, выра- женные в терминах программных заданий (а), и соотношение трудо- затрат на создание механики робо- та, его электронной части и прог- раммного обеспечения с переходом на более высокие уровни иерархии (б)
Функциональная схема системы управления роботом, выраженная в терминах программных заданий, представлена на рис. 13.4, а. Схема разбита на уровни, среди которых выделим четыре уровня системы управления: уровень исполнения, тактический, стратегический и интеллектуальный. На уровне исполнения движение руки робота задается в кодах значений обобщенных координат по отдельным степеням подвижности. Эти коды преобразуются в управляющие сигналы, отрабатываемые в функции времени приводами робота. В результате синхронизации по времени захват робота перемещается в рабочем пространстве по некоторой траектории, обеспечивающей выполнение заданной операции. Физическое содержание и формализация протекающих на этом уровне процессов регулирования при различных типах следящих приводов робота описаны в гл. 10. На тактическом уровне движение задается в терминах координат захвата в декартовом пространстве. Здесь в результате математической отработки требуемая траектория автоматически формируется как неко- торая последовательность прохождения узловых точек, между которыми осуществляется интерполяция (например, сплайнами, см. гл. 11). Преоб- разование декартовых координат узловых точек в обобщенные координаты робота осуществляется с использованием методов, подробно рас- смотренных в гл. 3. На выходе тактического уровня формируется по- следовательность векторов обобщенных координат робота в функции времени. Для решения указанных задач на тактическом уровне требуется полная информация о роботе, которая оформляется как некоторая совокупность данных, характеризующих его модель. Модели могут быть выполнены на кинематическом или динамическим уровне. Особенности их создания и описания изложены в гл. 7, 8 и 11. Модель робота составляет одну из важнейших подсистем общей базы данных системы управления. Все типовые тактические задачи (например, задача интерполяции), составляющие основу программного обеспечения тактического уровня, "привязываются" к конкретному роботу через его модель. Полное программное обеспечение нельзя перенести с одного робота на другой. Любое изменение конструкции робота в части его структуры, длин звеньев, расположения кинематических пар, а также распределения масс звеньев или характеристик приводов в случае динамической модели должно быть учтено соответствующим изменением данных, описывающих модель. На стратегическом уровне управления задание формируется путем указания операций, которые необходимо выполнить над объектом манипулирования. В отличие от более низких уровней управления, здесь задание отвечает на вопрос "что сделать", а не "как сделать". Программист в явном виде уже не формирует движения робота, не оперирует декар- товыми координатами захвата или обобщенными координатами робота. Он оперирует только с символьными именами объектов или их элементов. Естественно, все эти имена должны быть определены в системе. Задача обработки информации на стратегическом уровне состоит в преобразовании полученного программного задания на операцию в последовательность элементарных движений и действий робота, описанных по отношению к захвату в декартовой системе координат, с учетом 314
имеющихся ограничений. Для решения этой задачи должны быть известны расположение объектов, их ориентация, состояние связей между объекта- ми, состояние периферийного оборудования и т.д. Вся эта информация составляет модель окружающей среды, которая является второй важней- шей подсистемой базы данных робота. Любое преобразование среды роботом, а также периферийным технологическим или вспомогательным оборудованием должно сопровождаться адекватным преобразованием текущего состояния ее модели. Основным источником информации для доопределения модели среды служит сенсорная система робота. На интеллектуальном уровне задание формируется в терминах техно- логической задачи без детализации действий на низких уровнях иерархии системы управления. На данном уровне осуществляется автоматическое преобразование программного задания в последовательность укрупненных действий робота над объектами среды. При этом с помощью сенсорной системы исследуется текущая ситуация, сложившаяся в зоне работы робота, анализируются различные планы достижения поставленной цели, на осно- вании анализа текущей ситуации автоматически принимается решение о выборе рационального плана из рассмотренных, который конкретизирует- ся до уровня задания последовательности действий над объектами среды. Последовательное укрупнение задач в иерархической структуре системы управления роботом четко отражается в структуре применяемых языков программирования. На уровне исполнения преобладают машинно- ориентированные (по типу используемых процессов) языки типа ассемблера [18]. На тактическом уровне управления, где формируются двигательные функции в координатах захвата, используются робото-ориентированные языки программирования. И, наконец, для стратегического и интеллектуального уровней, пол- ностью абстрагированных от особенностей геометрии и кинематики ро- бота, активно разрабатываются и проходят опытно-промышленную апро- бацию задачно-ориентированные языки программирования. Поскольку для функционирования верхних уровней управления исходной информацией служат полные геометрические модели среды с описанием всех объектов, включая и сам робот, то задачно-ориентированный язык часто называют языком программирования объектного уровня [2] или системой моде- лирования рабочей обстановки [20]. Робото- и задачно-ориентированные языки программирования, как правило, подобны или базируются на языках высокого уровня универ- сальных ЭВМ. При этом уровень интеграции команд в задачно-ориен- тированных языках выше, чем в робото-ориентированных. Поэтому вход- ной текст программ на задачно-ориентированном языке отличается боль- шей компактностью и наглядностью. Представление о структуре программы для роботизированной операции сборки двух элементов на языках программирования различного уровня, дает пример, приведенный на рис. 13.5 [2]. Видно, что при использовании задачно-ориентированных языков программирования достигается весьма важное для практики качество: в значительно меньшей степени требуются знания пользователя в области программирования ЭВМ и построения алгоритмов движения роботов. 315
Описание работы Последовательность операций 1. Перевести схват в точку, находящуюся над точкой Р на расстоянии 50 мм. 2. Опустить схват в точку Р. 3. Сжать пальцы схвата. 4. Поднять схват на 50 мм над точкой Р 5. Перевести схват в точку, находящуюся над точкой F на расстоянии 50 мм. 6. Опустить схват в точку Е 7. Раскрыть пальцы схвата. 8. Поднять схват на 50 мм над точкой Е 9. Перевести схват в исходную точку I. ПОМЕСТИТЬ ВТУЛКУ А В ОТВЕРСТВИЕ С ОБЪЕКТА В Рис. 13.5. Пример программирования задачи сборки двух элементов на робото-ориенти- рованном и задачно-ориентированном языках программирования Обеспечение минимальных требований к уровню профессиональной подготовки оператора-программиста - одно из главных условий, предъяв- ляемых к языку программирования роботов. Уровень языка определяет производительность программирования на нем. Как показали исследования [30], число операторов, отлаженных в день программистом, - при- близительно постоянно и не зависит от уровня языка. Объем же текста программы, необходимой для решения данной задачи, с переходом на язык высокого уровня уменьшается. Простота программирования, особенно при синтезе алгоритмов движе- ния на основе информации от сенсорной системы робота, достигается за счет существенного обогащения и развития операционной среды - систем- ного, сервисного и служебного программного обеспечения, в которой функционирует прикладная программа пользователя. Основу системного обеспечения, как и в любой ЭВМ, составляет операционная система - набор взаимосвязанных между собой программ, являющихся фактически посредниками между аппаратными средствами и 316
сервисными программами или программами пользователя. В функции операционной системы входят: организация и управление процессами ввода-вывода информации для различных периферийных устройств. Наряду со стандартными для ЭВМ устройствами типа клавиатуры, мониторов, принтеров и дисковых накопителей, периферийными устройствами также являются приводы робота, его сенсорная система и датчики среды. Операционная система осуществляет управление внешней памятью и файловой системой, обслуживание прерываний как от встроенных таймеров, так и от инициативных датчиков среды, например от датчиков, регистрирующих появление человека в зоне работы робота. Наконец, в функции операционной системы входят синхронизация работы нескольких процессоров (если каждая степень подвижности робота управляется от своего микропроцессора), организация мультизадачной обработки, т.е. распределение времени процессора между задачами, параллельно решаемыми в системе; выявление ошибочных ситуаций в действиях оператора и самой системы управления с последующей индикацией ошибок, запуск и исполнение сервисных программ и программ пользователя. К сервисным программам относятся непосредственно компиляторы или интерпретаторы с входных языков программирования, программы- редакторы, компоновщики, отладчики, программы создания баз данных. К служебным программам относятся планировщики заданий, а также масса специальных программ, реализующих отдельные функции сенсорной системы робота и алгоритмы построения движений. Если многие из этих программ входили в отдельные пакеты, которые использовались в мощных универсальных ЭВМ, то в настоящее время, по мере наращивания уровней управления роботом, они образуют комплекс взаимосвязанных программ. Такой комплекс, обеспечивает автоматический перевод заданий с вход- ного языка высокого уровня на язык более низкого уровня, и так последовательно до выдачи команд управления приводами непосредственно на уровне исполнения. Отсюда ясно, что простота и компактность входного языка, которым оперирует человек при программировании робота, достигается за счет создания мощного программного обеспечения. Соотношение удельных трудозатрат по созданию механики робота, элект- ронной части его системы управления и программного обеспечения по мере наращивания уровней управления качественно иллюстрирует рис. 13.4, б [2]. 13.4.1. Структура программного обеспечения системы управления роботом Опыт создания программного обеспечения для сложных систем показал, что наиболее целесообразно строить программное обеспечение как совокупность логически завершенных программ-модулей или их пакетов, каждый из которых отвечает за реализацию отдельных функций робо- тотехнической системы. Модульность позволяет создавать и отлаживать программы независимо друг от друга, согласовав их только по входным и выходным данным. При этом существенно облегчается компоновка всей системы из уже отлаженных модулей, а также достигается гибкость и 317
возможность модернизации и совершенствования созданной системы за счет замены или модификации отдельных программ. Укрупненная структура программного обеспечения робота, каждый блок которой представляет собой пакет программ-модулей, предназна- ченный для обслуживания соответствующих каналов ввода-вывода ком- пьютерной системы управления, представлена на рис. 13.6. В общем случае существуют четыре группы каналов связи: - с сенсорными устройствами (в основном на ввод информации), - с технологическим оборудованием, - с исполнительными механизмами (на вывод - прямое управление, а на ввод - для контроля и организации обратных связей), - канал взаимодействия с оператором (на ввод - для указания директив и программы работы оборудования, на вывод - для отображения результатов работы системы). По всем этим каналам информация может поступать в виде сигналов трех типов: 1) аналоговый - сигнал переменного уровня, который с помощью ана- лого-цифрового преобразователя формируется в соответствующий двоич- ный код; 2) цифровой - комбинация двоичных кодов; 3) инициативный - в виде одиночного импульса, поступающего в си- стему прерываний управляющей ЭВМ. Цифровые и аналоговые каналы опрашиваются по инициативе ЭВМ периодически или по мере необходимости при выполнении тех или иных программ. Поступление сигнала по инициативному каналу может произойти в любое время. Он прерывает текущую работу процессора и вызывает соответствующую программу реакции. Разрешение конфликтов между различными инициативными каналами осуществляется с помощью системы назначаемых приоритетов. Канал более высокого приоритета может прервать программу реакции канала более низкого приоритета. Система управления инициируется по команде оператора. Он на вход- ном языке формирует пользовательскую программу работы оборудования (блок 1 на рис. 13.6), которая воспринимается системой как некоторый завершенный объем символьной информации (файл), представленный последовательностью двоичных кодов. Под управлением операционной системы (блок 2) этот символьный файл обрабатывается программой- интерпретатором или компилятором со входного языка (блок 3). В ре- зультате формируется последовательность команд (рабочая программа), представленная также в виде двоичных кодов, но уже содержащая все необходимые проверки требуемых условий и переходы к служебным программам-модулям функциональных пакетов программ. При обнаружении синтаксических или логических ошибок в символьном файле система выдает оператору диагностические сообщения. По инициативе оператора символьный файл может быть обработан сервис- ными программами (блок 4) - программой-редактором, отладчиком и т.д., что позволяет достаточно быстро и эффективно получить отлаженную на Рис. 13.6. Структура программного обеспечения робота 318
Внешняя среда
уровне синтаксиса рабочую программу пользователя. На этом заканчи- вается первый этап отладки пользовательской программы. На втором этапе рабочая программа по директиве оператора может быть выполнена в пошаговом режиме с выдачей управляющих воздействий и приемом информации по всем задействованным каналам ввода-вывода. Оператор, наблюдая за выполнением каждого элемента цикла на рабо- тающем оборудовании и отслеживая выполняемые команды, воспроиз- водимые на экране дисплея, может ввести соответствующие поправки или непосредственные значения данных. К таким данным, в частности, отно- сятся значения координат позиций, в которые перемещается захват робота. Данные вводятся обычно по сигналу оператора после того, как он с помощью пульта ручного управления вывел захват в требуемую позицию. Здесь, как видим, при способе программирования с помощью команд при- сутствуют элементы прямого обучения. После завершения необходимых коррекций и ввода требуемых уставок заканчивается второй этап и скорректированная рабочая программа готова к реализации в рабочем режиме. Оператор может воспользоваться сер- висными программами (блок 4) для организации ее хранения на долго- временном носителе и для выдачи ее на печатающее устройство. В по- шаговом и рабочем режимах программа выполняется с использованием требуемых служебных пакетов программных модулей системы, "зашитых" в постоянном запоминающем устройстве. К таким пакетам относятся: программы управления движением робота (блок 5); программы управления внешним оборудованием (блок 6), напри- мер, режимом работы источника тока при роботизированной сварке или краскопультом при окраске, и программы обработки сенсорной инфор- мации о внешней среде (блок 7). В свою очередь программные модули управления движением (блок 5) используют данные программной модели робота (блок 8), а модули обработки сенсорной информации (блок 7) ис- пользуют и обновляют данные модели среды (блок 9), сформированные в оперативной памяти. Все эти программные модули работают под управлением системных программ (блок 2), обслуживающих как внешние запросы (по инициатив- ным сигналам от внешних устройств, включая оператора), так и внутренние запросы от различных программных модулей на обработку данных и опрос внешних каналов. В функцию именно этого ядра программного обеспе- чения входят организация службы реального времени и системы преры- ваний с учетом приоритетов устройств и модулей. Алгоритмы работы ряда программных блоков, приведенных на рис. 13.6, уже достаточно подробно рассмотрены выше: алгоритмы пост- роения траекторий и управления движением робота (блок 5) приведены в гл. 9-11; модели робота на различных уровнях (блок 8) рассмотрены в гл. 5-8; варианты алгоритмов обработки сенсорной информации (блок 7) приведены в гл. 12. Алгоритмы работы блоков 4 и 6 выходят за рамки настоящей книги, поскольку первый из них объединяет ставшие уже стандартными для ЭВМ программы обработки символьных файлов, а существо второго зависит от технологического процесса и применяемого внешнего оборудования. Цель 320
излагаемого ниже материала - дать читателю представление об оставшихся пакетах программ (блоки 2, 3 и 9), имеющих существенную специфику для робототехнических систем управления. 13.4.2. Развитие языков программирования для роботов В настоящее время существуют три базовых направления при создании языка. Первое основывается на использовании универсальных языков программирования для ЭВМ. Для роботов наиболее широкое применение нашли системы программирования UNIX, INTERLISP и ADA [20]. Как правило, в этих системах расширение входного языка на робото- технические задачи управления осуществляется путем создания специальной библиотеки подпрограмм. Примером может служить библиотека RCCL (Robot Control С Library), написанная на языке высокого уровня и рабо- тающая под управлением операционной системы UNIX [37]. Использование универсального языка в качестве базового существенно упрощает задачу создания системы программирования для роботов, но в силу своей избы- точности требуют высокой квалификации программистов и достаточно мощных ЭВМ для управления роботами. Кроме того указанный подход, как правило, требует дополнения уни- версального языка комплектом программ-драйверов для управления устройствами, подключенными к каналам ввода-вывода. К таким драй- верам предъявляют высокие требования по быстродействию, что обус- лавливает их реализацию на языках низкого уровня. Все это затрудняет использование "расширенных" универсальных языков ЭВМ для управления роботами. В соответствии со вторым направлением предполагается в качестве базового языка использовать систему ЧПУ (типа APT). Такой подход лишен указанных выше недостатков, поскольку в современных системах ЧПУ хорошо решены вопросы аппаратно-программного сопряжения, а операторы на производстве достаточно хорошо освоили эти системы. Возможности этого подхода могут быть рационально использованы для цикловых и простых позиционных роботов. Более сложные робото- технические системы, оснащенные развитой сенсорикой, требуют сущест- венного расширения языка в части развития структуры данных, введения вычислительных операций, гибкости использования подпрограмм, об- работки логических условий. Все это накладывает серьезные ограничения на распространение языков систем ЧПУ для целей управления роботами. И, наконец, третье направление, по которому в основном ведется раз- витие систем программирования для роботов, - это создание специали- зированных языков. Первый из таких языков был создан в конце 1950-х годов специалистами фирмы "Unimation" (США). Программа на этом языке представляла последовательность команд двигательных инструкций с указанием некоторых дополнительных функций. Команды содержали коды управляющих сигналов на приводы степеней подвижности, последова- тельные точки траектории задавали вектором значений обобщенных коор- 11. Корендясев А.И. Кн. 2 321
динат, а в дополнительные функции входили состояние захвата (открыт- закрыт), временная задержка, внешние сигналы и т.д. В дальнейшем эта разработка дала начало целому ряду систем, развитие которых продол- жается и в настоящее время (рис. 13.7) [20, 35]. На начальном этапе языки для роботов развивались в крупнейших исследовательских центрах, занимающихся искусственным интеллектом, одновременно с разработкой крупных робототехнических проектов, связан- ных с первыми попытками использования больших объемов сенсорной информации. В результате были экспериментально апробированы и про- граммно отлажены основные приемы использования сенсорики для целей управления роботом: принцип "осторожного" движения до момента сраба- тывания тактильного датчика впервые реализован на уровне операторов языка MANTRAN; основы обработки зрительной информации - в системах "Hand-Eye", а в достаточно завершенном виде - в языках MINI и WAVE. В этих же языках стали широко использоваться синтаксические конструк- ции, обеспечивающие учет силовых и тактильных взаимодействий робота с окружающей средой. Наряду с приемами использования сенсорной информации совершенст- вовались алгоритмы построения движений робота. Так, в языке WAVE наш- ли отражение важные идеи, получившие в дальнейшем широкое распрост- ранение. В первую очередь к ним относится описание положения конечного звена робота с помощью декартовых координат и их взаимосвязь с обоб- щенными координатами робота путем решения прямой и обратной задач кинематики, а также обеспечение непрерывности изменения скоростей и ускорений за счет интерполяции траектории сплайнами высоких порядков. Итогом развития работ в области языков программирования для робо- тов стало создание в Стэндфордской лаборатории искусственного интел- лекта алголоподобного языка высокого уровня AL (Assembly Language) [36] для программирования нескольких роботов. Язык AL является языком реального времени, с помощью которого можно управлять параллельно протекающими процессами сборки на основе развитой иерархической модели окружающей среды. Эта модель представляется графом жестких и нежестких отношений связи между локальными системами координат, связанными с различными объектами среды и робота. Наряду с полной ориентацией на робототехни- ческие задачи язык AL включает традиционный для универсальных языков ЭВМ набор операторов, обеспечивающих формирование блоков, циклов, рекурсий макроопределений, процедур и функций, а также предоставляет возможность использования различных типов векторных и скалярных данных. Как правило, все указанные языки, включая AL, носят ярко выражен- ный исследовательский характер и не нашли широкого применения в промышленной робототехнике. При их создании предполагалось, что программа будет выполняться на двух ЭВМ - инструментальной и управ- ляющей. На первой из них осуществляется компиляция программы, напи- Рис. 13.7. Схема, иллюстрирующая развитие языков программирования для роботов

санной на исходном языке, а на второй - исполнение полученной на языке низкого уровня программы в реальном времени в режиме интерпретации. Режим интерпретации обеспечивает оператору интерактивные возмож- ности и некоторые средства отладки. В этом плане система EHOS [8, 9], созданная в Электротехнической лаборатории ETL (Япония), существенно отличается от описанных тем, что по своей исходной структуре она выполнена как диалоговая система человек-машина, в которой каждая команда оператора воспринимается как вызов соответствующей последовательности подпрограмм, написанных на языке высокого уровня. Система включает интерпретатор команд, программу-редактор и исполняющую программу. Интерпретатор транслирует команды оператора, при необходимости запрашивает данные и выбирает из библиотеки соот- ветствующие подпрограммы. С помощью редактора формируются и кор- ректируются программы в виде последовательности команд, которые могут быть выполнены исполняющей программой в пошаговом или непрерывном режимах. В дальнейшем функциональные достижения в языках, касающиеся использования сенсорики и алгоритмов построения движения, сконцентри- рованные в исследовательском языке AL, и преимущества интерпрети- рующих систем типа EHOS были объединены в ряде языков программи- рования для роботов. Появлению множества языков в конце 1970-х годов способствовало подключение к этой области исследований ряда фирм, специализирующихся на роботах и вычислительной технике [35]. Созданные в этот период языки программирования, не потеряв универсального характера, стали обладать ярко выраженной практической направленностью за счет ориентации на управление роботами конкретной структуры в конкретных технологических процессах. При этом основной упор делается на упрощение языка и на возможность его использования неквалифицированным оператором. В частности язык JARS создан в Лаборатории реактивного движения (США) по контракту с NASA для управления роботами при сборке солнечных батарей; язык RAIL - для робототехнической сборки и дуговой сварки; язык ALFA (A Language For Automation) - для программирования транспортных и загрузочных операций; PLAN (the Programming Language for Welding robot) - для сварки; HELP - для сборочных процессов с помощью робота, работающего в декартовой системе координат; SIGLA (SIGMA L Anguage) и развитие на этой базе диалоговых языков MAL и VML - для управления роботами с шаговыми двигателями типа SIGMA фирмы Olivetti (Италия). Простота многих из указанных языков достигается за счет двухэтапного формирования программы. На первом этапе программа составляется заранее на входном текстовом языке. На втором этапе оператор в режиме прямого обучения вводит геометрические параметры и данные, опре- деляющие реальный технологический процесс. Для расширения возмож- ностей входного языка для роботов и формирования подпрограмм уп- равления разработчики часто применяют универсальные языки прог- раммирования ЭВМ высокого уровня: язык PASCAL используется в упомя- 324
нутых системах JARS, HELP, SRL и VML; LISP - в RPL, MINI. Языки MAL, VAL, широко используемые в настоящее время, имеют структуру универ- сального языка BASIC. Наряду с упомянутыми на схеме рис. 13.7 языками программирования роботов для промышленного использования предложена группа языков, разработанных в японских робототехнических фирмах. Это - PASLA, IML, HOPS-1, SPEL, AR-BASIC, FRL, SCOL. Они ориентированы на различные технологические операции, начиная от традиционных операций загрузки - выгрузки и заканчивая робототехнической обработкой материалов лазерным лучом. Ограниченный объем книги не позволяет дать более углубленный сравнительный анализ упомянутых в настоящем разделе язы- ков программирования роботов. Читателей, заинтересованных в этой ин- формации адресуем к великолепному обзору [20]. 13.4.3. Структура и краткое описание системы программирования VAL Система VAL [41] разработана фирмой "Unimation" (США) для роботов PUMA и ее входной язык по рассмотренной выше классификации относится к робото-ориентированным языкам программирования. Язык имеет струк- туру BASIC и включает широкий набор инструкций для управления электромеханическим роботом с пятью или шестью степенями подвиж- ности. Язык ориентирован на инженера-производственника, мало знакомо- го с языками программирования ЭВМ. Система в первой редакции (VAL-1) реализована на управляющей ЭВМ LSI-11/23, в стандартной конфигурации занимает 12Кбайт постоянной памяти и дополнительно 4 Кбайт опера- тивной памяти для размещения программ пользователя. Наряду со спе- циальным интерфейсом со следящими приводами робота, каждый из которых выполнен на базе микропроцессорного регулятора, и интерфейсом системы технического зрения, VAL обслуживает три периферийных устрой- ства: пульт оператора в виде дисплея с клавиатурой, пульт ручного обуче- ния и накопитель на гибком диске. В системе VAL программно реализованы: интерактивный монитор, обеспечивающий связь управляющей ЭВМ со всеми периферийными устройствами; текстовый редактор для создания и модификации программ пользователя; интерпретатор входного языка; программа-отладчик и служебные программы, образующие исполнительную систему. Ввод дан- ных, характеризующих последовательность положений захвата робота, может осуществляться: в режиме прямого обучения по команде с ручного пульта управления; с пульта оператора путем указания идентификаторов, численные значения которых задаются в режиме редактирования про- граммы; по команде монитора в интерактивном режиме. Программа может выполняться на различных скоростях заданное число раз. При отладке разрешено выполнение отдельных шагов программы до заданной строки, либо до появления ошибки. После исправления ошибки программа может быть продолжена. Операции в системе выполняются в двух режимах: оперативном и фоновом. В оперативном режиме выполня- ется программа пользователя и осуществляется управление манипулятором. 325
В фоновом режиме (на "фоне" выполнения пользовательской программы) выполняются команды монитора, с помощью которых оператор может получать информацию о текущем состоянии системы, изменять положение целевых точек позиционирования, а также в режиме диалога работать с текстовым редактором. Движения в системе VAL могут формироваться тремя способами: 1) простое позиционирование - без интерполяции, траектория непредска- зуема, время отработки сигнала по каждой степени подвижности мини- мально; 2) с интерполяцией по обобщенным координатам - при линейной интерполяции траектория захвата в декартовом пространстве отличается от прямолинейной; 3) с интерполяцией в декартовом пространстве. Для более полного представления о возможностях системы VAL при- ведем основные команды монитора и операторы языка VAL (команды мо- нитора могут либо вводиться как директивы с пульта оператора и тут же отрабатываться, либо входить в текст программы пользователя). Команды монитора, обеспечивающие управление выполнением пользо- вательской программы, имеют следующий вид: SPEED (value)- установить скорость для последующих инструкций, равной значению value; EXECUTE (prog), (nloop), (step) - выполнить nloop раз программу с име- нем prog, начиная с шага step; NEXT (prog), (nloop), (step) - то же, но пошаговое исполнение про- граммы; ABORT - прервать исполнение программы после завершения текущей инструкции; RETRY - продолжить программу; PROCEED - продолжение выполнения программы, приостановленной вследствие ошибки, а также операторов PAUSE или WALT. Команды управления состоянием системы: ZERO - инициализация системы управления; KALIBRATE - калибровка датчиков; STATUS - запрос на выдачу информации о состоянии исполняемой программы; FREE - запрос на выдачу информации о свободной памяти процессора. Команды задания точек позиционирования: POINT (А) <=В> - присвоение точке А позиционирования захвата коор- динат точки В, где А и В - идентификаторы шестимерных векторов, первые три значения которых определяют декартовы координаты захвата, а остав- шиеся - углы Эйлера, характеризующие ориентацию захвата; DPOINT <А> - удаление точки А позиционирования; HERE (а) - присвоение точке А позиционирования значения координат, соответствующих текущему положению робота; WHERE - запрос на выдачу текущих координат робота на экран дис- плея; TEACH (А) - команда на формирование координат точки А позицио- нирования в режиме прямого обучения от ручного пульта управления; BASE (dr), {dy), {dz) - изменение базовой (абсолютной) системы коор- динат робота на величины dx, dy, dz соответственно координатам х, у, z и 326
поворот на угол dz вокруг оси z относительно ранее установленной системы координат; TOOL (а) - изменение системы координат, связанной с инструментом (захватом); здесь А - идентификатор шестимерного вектора. Операторы языка VAL, позволяющие строить движение робота, имеют следующий вид: RIGHTY, LEFTY, ABOVE, BELOW - изменение конфигурации антропо- морфного робота за счет перемещения захвата соответственно вправо, влево, вверх и вниз путем управления только первыми тремя степенями подвижности; FLIP, NOFLIP - изменение конфигурации вращением пятого шарнира соответственно в отрицательном и положительном направлениях; MOVE <А> - движение захвата в точку А с интерполяцией по обобщен- ным координатам; MOVET (а), (в) - то же, но с одновременным изменением расстояния между губками захвата до достижения величины В; MOVEST (a); MOVEST, (а), .(в) - тот же смысл, что и в предыдущих двух командах, но с интерполяцией в декартовых координатах; DRAW {dx), {dyl, {dz) - смещение инструмента (захвата) по прямой в точку, удаленную от текущего положения по координатам х, у и z соот- ветственно на dx, dy, dz\ ALIGN - поворот захвата, обеспечивающий параллельность его оси z ближайшей оси абсолютной системы координат; APPRO <А>, <В> - движение инструмента с интерполяцией по обобщен- ным координатам в точку, удаленную от позиции, заданной идентификато- ром А, на расстояние В (мм) вдоль оси z системы координат инструмента; APPROS <А>, <В) - то же, но с интерполяцией в декартовых координатах; DEPART (В); DEPARTS <В> - перемещение захвата вдоль оси z системы координат инструмента на расстояние В соответственно с интерполяцией по обобщенным координатам; DRIVE {]), (ф), (<о> - движение j-ro шарнира робота на угол (р со скоростью со; READY - возврат робота в исходное положение; FRAME (в) = (А1), (А?), (АЗ) - формирование абсолютной системы координат В по трем точкам, заданным в декартовом пространстве; Al, А2, АЗ - тройки координат каждой точки; SHIFT (в) BY {dx), {dy\ {dz) - переопределение системы координат В за счет ее относительного смещения на dx, dy, dz соответственно по осям х, у, z; INVERSE (а) = (в) - формирование матрицы А преобразования, обрат- ной по отношению к матрице В; OPEN (в); CLOSE (В/ или OPEN (в); CLOSEI (в) - команды открытия или закрытия захвата до расстояния между губками, равного В: первые два оператора выполняются во время следующей инструкции движения, вто- рые - выполняются немедленно; GRASP <В), (label) - развести губки захвата на расстояние В с контролем операции: если размер достигнут, то перейти на оператор программы с меткой label, в противном случае выполнить следующий шаг программы. 327
Имеются также команды управления траекторией и точностью пози- ционирования. К ним относятся: COARSE - выполнение движений на нижней границе поля допуска, но с увеличенной скоростью. Обратная ей команда FINE; NONULL - команда выполнения движения без ожидания сигнала о достижении заданной позиции. Обратная ей команда - NON; INTOFF - учет текущих ошибок по положению при отработке траек- тории только в зоне конечной точки позиционирования. На всей длине траектории - команда INTON. Возможности взаимодействия с сенсорными устройствами и управления внешним оборудованием характеризуют следующие операторы языка VAL: SIGNAL VI), (/2)... - на каналах вывода с номером jl, J2, ... установить сигналы, уровень каждого из которых определен знаком перед номером канала; IFSIG (/1), (/2)... THEN (label) - если на каналах ввода с номером jl,j2,..., выставлены сигналы, указанные знаком перед номером канала, перейти на оператор с меткой, в противном случае продолжить выполнение про- граммы; REACT (/1), (name); REACTI (/1), (name) - вызов программы-реакции: если на канал J1 выставлен сигнал, указанный знаком, то выполнить под- программу с именем name после завершения текущей двигательной инст- рукции (первая команда) или немедленно (вторая команда); IGNORE (/1)- запретить прерывания по внешнему сигналу, выстав- ленному на канал номер jl; WAIT (/1)- приостановить выполнение программы до появления внеш- него сигнала нужного уровня (определяемого знаком) на канале ввода номер Д; DELAY (г) - задержка двигательной операции на время t с. Приведенный перечень операторов языка и команд системы дает пред- ставление об уровне языка и возможностях оператора-программиста при формировании двигательных функций робота. В этом перечне не упо- мянуты стандартные операторы языка BASIC по управлению выполнением программы, а также широкий спектр команд файловой системы и про- граммы-редактора. Система VAL обеспечивает также разнообразный набор сервисных услуг: диагностирование и калибровку внутренних устройств и внешнего оборудования; выполнение тестовых задач, печать информации о прохождении программы, об ошибках в ней и сбоях в системе. Пример простой программы [2], написанной на языке VAL и реали- зующей взятие детали из точки, названной PICK с перемещением ее в точку под названием PLACE, приведен на рис. 13.8. Позиция PICK определяется на этапе подготовки программы при вводе команды 4 по конфигурации ро- бота, выведенного в требуемое положение (модификация команды MOVE с восклицательным знаком). Движение захвата задается командой MOVE. Чтобы избежать возможных столкновений с деталью или столом, захват сначала с помощью команды APPRO переводится в точку, удаленную от точки PICK на 50 мм по вертикали - это исходное положение для выполнения операции захвата. Далее осуществляется перемещение с пони- женной скоростью (30% от номинальной) и захватывание объекта (опе- 328
| Программная секция] •EDIT DEMO 1 l.OPEN 2. APPRO PICK, 50 3. SPEED 30 Провести редактирование программы с именем DEMO1 Раскрыть пальцы схвата и перейти к следующему шагу программы Переместить схват в точку, находящуюся над точкой PICK на высоте 50 мм Выполнить один следующий шаг программы со 4. MOVE PICK! скоростью, составляющей 30% от нормальной Опустить схват в точку PICK, (!) - текущему 5. CLOSE I положению схвата присвоить имя PICK Сжать пальцы схвата и перейти к следующему 6. DEPART 70 7. APPROS PLACE, 70 шагу программы Поднять схват на 70 мм над точкой PICK Переместить схват по прямолинейной траектории в точку, находящуюся над точкой PLACE на рас- 8. SPEED 20 9. MOVE PLACE 10. OPEN I 11. DEPART 50 стоянии 70 мм Выполнить один следующий шаг программы со скоростью, составляющей 20% от нормальной Опустить схват в точку PLACE Раскрыть пальцы схвата и перейти к следующему шагу программы Поднять схват на 50 мм над точкой PLACE 12. E | Секция обучения | HERE PLACE КОНЕЦ. Выйти из режима редактирования Текущемуположению схвата присвоить имя PLACE X/JT1 Y/JT2Z/JT3... 225.66618.84-131.94 CHANCE? Индикация на экране дисплея координат текущего положения схвата | Секция исполнения! SPEED 30 EXEC DEMO 1,3 SPEED 100 EXEC -10 В режиме обучения и отладки программы умень- шить скорость до 30% от нормальной Выполнить программу DEMO 1-3 раза В рабочем режиме установить нормальную скорость Перейти к безостановочному выполнению програм- мы. (Если количество повторов задается отрица- тельным числом, робот повторяет заданную про- грамму до поступления внешнего сигнала преры- вания.) Рис. 13.8. Пример программы управления роботом на языке VAL раторы 3, 4 и 5). После отвода захвата на 70 мм по вертикали (оператор 6) и перемещения в зону точки PLACE (оператор 7) робот также аккурат- но установит деталь в требуемую точку рабочего пространства (операто- ры 8-11). Программный блок состоит из трех секций: собственно программы, секции обучения и секции исполнения. Программа готовится с исполь- зованием тестового редактора. С помощью секции обучения в режиме диалога доопределяются точки позиционирования. В данном случае это точка PLACE. И, наконец, секция исполнения определяет режим отладки и исполнения программы. В фазе отладки программа выполняется на пони- женной скорости, в фазе исполнения - на номинальной. В процессе усовершенствования VAL была создана новая универсальная система программирования VAL-П. В отличие от рассмотренной выше она имеет два блока по 64 Кбайт в каждом. Один из них используется для 12. Корендясев А.И. Кн. 2 329
хранения операционной системы, другой - для программ пользователя. Цикл квантования системы - 28 мс. Этот период разделен на интервалы, в течение которых обслуживаются все периферийные каналы и устройства, а также выполняются оперативная и фоновая задачи (режим разделения времени). Таким образом, время реакции системы на любое внешнее событие не превышает 28 мс. Возможности языка VAL-II существенно расширены за счет введе- ния широкого набора математических функций и операций с массивами целых и вещественных чисел. Язык обогащен структурированными операторами, такими как IF-THEN-ELSE для выполнения условных переходов; WHILE, DO-UNTIL, FOR - для организации циклов. Наряду с расширением количества программируемых каналов ввода-вывода в языке реализованы возможности управления в реальном времени движением робота, траектория захвата которого задана определенной формулой. Все это упрощает написание сложных программ и по эффективности приближает язык VAL-II к универсальным языкам высокого уровня для ЭВМ. 13.4.4. Система планирования движений и действий робота. Особенности построения модели среды Проблема планирования движений и действий робота заключается в выборе последовательности простых двигательных актов, необходимых для выполнения программной технологической операции. Традиционные мето- ды планирования основаны на использовании исходной "жесткой" модели окружающей среды и ее изменении путем программного отображения в модели всех фиксированных действий над объектами среды. Однако такой подход не всегда приводит к успеху вследствие накопления погрешностей в модели среды. Имеется несколько источников погрешностей проявляю- щихся при формировании и выполнении планов [34]. Это неточности ис- ходных геометрических моделей объектов, погрешности информации, поступающей от датчиков среды, и ошибки позиционирования робота. Поэтому в настоящее время развивается подход, связанный с компенсацией динамических изменений среды и погрешностей системы путем коррекции плана на основе оперативной информации, поступающей от специальных сенсорных систем контроля. Такой подход называется динамическим планированием [43]. Как правило, система планирования включает несколько подсистем (см. рис. 13.9) [44] и ориентируется на определенный вид технологической опе- рации (например, сборку). Ядро системы составляет программа - страте- гический планировщик, на вход которой поступает программная инструкция в виде (операция) (объект 1), (объект 2),... . Со стратегическим пла- нировщиком связаны две подсистемы - тактического и оперативного пла- нирования. Основной функцией оперативного планировщика является рас- чет безаварийных траекторий захвата из начального положения в целевую 330
Программная инструкция Рис. 13.9. Структурная схема взаимодействия программ при планировании движений и действий робота точку. Поэтому он активно использует информацию о среде. Тактический планировщик выполняет функцию сопряжения программ планирования более высокого ранга с системой управления движением и поэтому активно использует информацию о модели робота. Модель среды по соответствующим командам постоянно пополняется информацией, поступающей от статических и подвижных сенсоров. Иерар- хию подцелей операции, образующую последовательность простых двига- тельных актов, формирует стратегический планировщик. О выполнении каждого акта он получает информацию от оперативного и тактического планировщика по каналу обратной связи. При невозможности выполнения акта стратегический планировщик может скорректировать стратегию вы- полнения задачи. Модель среды содержит информацию о каждом объекте, используемом в сборочном процессе. Планировщик работает с неполными геометрически- ми моделями объектов, включающими некоторую общую информацию об объекте и его основных размерах. Более подробная информация хранится в подсистемах, описывающих характерные признаки объекта. Под признака- ми понимается набор фрагментов, описывающих локальные особенности объекта и способствующие выполнению или видоизменению сборочной операции. Примерами признаков являются цилиндрическое отверстие, резь- бовое отверстие, продольный паз и т.д. Характерные признаки определяют метод сборки. С каждым объектом связывается система координат с началом в центре масс объекта, а оси координат ориентируются в соответствии с принятыми длиной, шириной и высотой объекта. Положение системы координат объекта в абсолютной системе определяет его размещение и ориентацию в рабочей зоне. Признаки объекта описываются в терминах системы коор- 12* 331
динат объекта. Поэтому все они доступны для использования в расчетах с помощью матриц преобразования четвертого порядка. Информация о признаках объекта делится на геометрическую (размеры и расположение относительно системы координат объекта) и топологи- ческую, отражающую взаимное расположение признаков и внутренние особенности каждого. Все признаки одного объекта (или подсборки) могут быть представлены графом, в котором каждому признаку ставится в соответствие узел, а взаимосвязь между признаками представляется дугой, соединяющей узлы и маркируемой соответствующим образом. Более подробная формализация описания объектов и признаков приведена в работе [45]. Стратегический планировщик вырабатывает и посылает тактическому и оперативному планировщику команды трех типов: захватывания, сво- бодного перемещения и манипулирования. Команды захватывания содер- жат параметры, определяющие тип и зону захватывания на объекте. Ко- манды свободного перемещения формируют целевое положение удержива- емого объекта или требуемое соотношение направлений осей координат объекта и абсолютной системы координат. Команды манипулирования включают также микрооперации, такие как "установить", "вставить", "за- вернуть" и т.д. Все эти команды обрабатываются оперативным планиров- щиком, в результате чего формируется траектория движения руки робота с объектом, учитывающая ограничения, обусловленные средой и роботом. Функция стратегического планировщика, на вход которого поступает инструкция высокого уровня на выполнение сборочной операции, заклю- чается в последовательной детализации поставленной задачи. Первый уровень детализации - это идентификация положения объектов и их при- знаков, сопрягаемых в процессе сборки. Второй уровень - это иденти- фикация набора последовательных пространственных отношений, которые должны быть установлены между признаками для обеспечения сопряжения объектов. При этом используется описание задачи в терминах признаков объектов и знание элементарных операций. Заключительный уровень - это идентификация команд, поступающих к оперативному и тактическому пла- нировщикам. Эти команды должны обеспечить требуемые пространст- венные соотношения между признаками, чтобы выполнить поставленную задачу. Рассмотрим пример [40]. Необходимо осуществить сборку четырех объектов (рис. 13.10). Объект Н имеет форму прямоугольной пластины с шестью цилиндрическими отверстиями, пять из которых одного диаметра и равноудалены от шестого отверстия. Три других объекта I, J и К должны быть установлены в объекте Н с базированием по двум цилиндрическим поверхностям. Для этого используется операция "Двойная установка". Стратегический планировщик, исходя из поставленной задачи, формирует иерархическую сеть подцелей. Начальные цели сети формируются в тер- минах объектов: (G - 1): двойная установка 1вН', (G-2): двойная установка J в Н\ (G - 3): двойная установка К в Н. 332
Деталь Н Отверстия Н2 + 1П Рис. 13.10. Конфигурация элементов строки С каждой из этих операций связывается базовая информация высокого уровня: тип операции, перечень взаимно сопрягаемых признаков объектов, расстояние между признаками и т.д. Эта информация используется на по- следующем этапе для выполнения анализа, позволяющего отфильтровать невозможные пары сопрягаемых признаков на основе ограничений, нало- женных на операцию. В данном случае эти ограничения следующие: 1) равенство расстояний между сопрягаемыми признаками на установлен- ном объекте и объекте-приемнике; 2) два признака приемника должны быть отверстиями; 3) размеры признаков приемника должны быть по край- ней мере не меньше соответствующих признаков устанавливаемого объекта. В результате анализа геометрической информации по всем возможным парам сопрягаемых признаков на уровне подцели (G- 1) остаются сле- дующие альтернативные варианты на уровне признаков: (G1 - 1): двойная установка II в Н2 и /3 в 7/3; (G1 - 2): двойная установка /1 в Я2 и/3 в 7/4; (G1 - 3): двойная установка /1 в Н2 и/3 в 7/5; (G1 - 4): двойная установка II вЯ2и/3 в Н6\ (G1 - 5): двойная установка 71 в Н2 и 13 в Н7. Аналогичным образом на уровне признаков анализируются операции (G - 2) и (G - 3). Полученный набор альтернативных подцелей для этих операций здесь не приведен. Для сокращения числа альтернатив каждому варианту приписывается коэффициент достоверности, изменяющийся от нуля до единицы. Он рассчитывается исходя из набора эвристических 333
правил, специфичных для выполняемой технологической операции. В соот- ветствии с одним из таких правил, названного "плотность посадки", пред- полагается сравнение разности размеров в каждой паре сопрягаемых признаков для каждой подцели. В результате для подцелей с наименьшей разностью коэффициент достоверности увеличивается, а для других под- целей уменьшается. Кроме аппарата геометрических ограничений и эвристических правил по отдельным операциям в стратегическом планировщике реализован алгоритм анализа взаимодействия между наборами операций, представ- ленных в сети целей. Исходные данные для этого алгоритма сформированы в виде соответствующих правил, направленных на достижение постав- ленной технологической задачи. Нарушение достижимости между сосед- ними операциями в сети подцелей рассматривается как конфликт, который разрешается путем замены одной из них на соответствующую операцию из альтернативного списка. На основе такого алгоритма стратегический планировщик удаляет подцели на уровне признаков для операции (G- 1): (G1 - 1); (G1 - 2); (G1 - 3); (G1 - 4); для операции (G- 2) - все подцели, связанные с двойной установкой Л в Н5 и 73 в /74; для операции (G - 3) - все подцели, связанные с двойной установкой КА в Н5 и КЗ в /74. В результате остаются только те наборы операций, которые не вступают в конфликт с правилом достижимости задачи. В рассматриваемом примере стратеги- ческий планировщик на выходе формирует следующий полный набор подцелей на уровне признаков объекта: (71 - /72; 13 - 777); (73 - /73; 71 - /74); (КЗ-Н5; К1 -776). На последующих этапах стратегический планировщик на основе информации о последовательности операций и геометрии признаков осу- ществляет идентификацию пространственных отношений между призна- ками, необходимых для выполнения сборочных операций. Эти простран- ственные отношения определяют набор положений и ориентаций собирае- мых объектов, который последовательно реализуют оперативный и такти- ческий планировщики в виде соответствующих траекторий и действий робота. Стратегический планировщик строит всю цепочку движений и действий робота, исходя из требуемой технологической задачи на основе информации об объектах внешней среды. Поэтому эффективность его работы в значительной степени зависит от того, как удачно организована структура данных, характеризующих положение и ориентацию объектов и их призна- ков. Выражать расположение объектов в рабочем пространстве через абсолютную систему координат часто неудобно из-за отсутствия связи между отдельными объектами и их элементами. Чтобы не потерять эту связь при осуществлении действий над объектами среды, программист должен постоянно следить за цепочками преобразования координат по всем участвующим в движении фрагментам модели. Это вызывает значительные трудности в программировании и требует повышенных затрат машинного времени. Ниже рассмотрен подход [42], основанный на иерархически структури- рованной геометрической базе данных, определяющей модель среды в специально организованной системе относительных координат. При этом 334
пользователь освобождается от необходимости явных расчетов абсолют- ного преобразования координат, постоянного переопределения систем координат, в которых осуществляется движение, а также от других ру- тинных операций. Использование относительных систем координат обеспе- чивает гибкость модели среды только, если в базе данных определены соотношения между этими системами, характеризующие структуру связей между объектами среды. В общем случае соотношения между системами координат должны содержать информацию двух типов: - для каждой системы координат должна быть известна соответствую- щая система отсчета (положение системы координат численно определено матрицей преобразования по отношению к системе отсчета); - должна быть известна физическая структура среды, т.е. наличие и тип связей между различными объектами среды. В модели среды различают системы координат объектов, системы координат признаков (локальные особенности объекта), системы коор- динат фрагментов признаков. Очевидно, все эти системы для каждого объекта определяют иерархическую структуру, в которой система коор- динат более высокого уровня является системой отсчета для координатной системы более низкого уровня. В связи с тем, что части объекта, а следо- вательно, и их системы координат жестко связаны с системой координат объекта, в базе данных они могут быть сформированы в виде единой структуры, входящей в определение системы координат данного объекта. Выбор системы отсчета для объектов основывается на физической связи между ними, поскольку в процессе преобразований объекты могут разделяться на подобъекты и объединяться в жесткие совокупности. Целесообразно выделить два вида связи: жесткая (может быть временной) - объекты жестко связаны друг с другом; нежесткая (односторонняя). Систему координат объекта В будем называть не жестко связанной с системой координат объекта А при следующих условиях: если объект А перемещается, то и объект В претерпит то же преобразование (объект В как бы лежит на А), но если перемещается объект В, то объект А остается неподвижным. Для множества объектов среды соотношения нежесткой связи удобно показывать в виде иерархической древовидной структуры (рис. 13.11, а). В этой структуре узлы нижних уровней имеют нежесткие связи с узлами верхних уровней. В качестве системы отсчета для любого объекта, пред- ставленного некоторым узлом, целесообразно принять систему координат "ближайшего" объекта более высокого уровня, с которым имеется не- жесткая связь. Простой пример среды, образованной объектами А, В, С и D, разме- щенными на объекте (столе) Т, представлен на рис. 13.11, б. Объект С лежит на В и жестко с ним связан. В представленной конфигурации среды назначаются следующие системы отсчета: объекты А, В и D равноправны, имеют нежесткую связь с объектом Г, поэтому для всех этих объектов системой отсчета является система координат объекта Т; объект С жестко связан с объектом В, поэтому системой отсчета для С является система координат В. Иерархическая структура систем координат для этого приме- ра приведена на рис. 13.11, в. Практически такие структуры реализуются с 335
a Рис. 13.11. Граф, характеризующий связи между объектами среды (а), пример расположения объектов (б) и их граф связей (в) помощью указателей на соседние узлы и соответствующих меток, характе- ризующих тип связей. Таким образом, геометрическая база данных для системы координат каждого объекта содержит указатели на составные части объекта и на его систему отсчета. Просматривая ветвь дерева "снизу вверх", система про- граммирования может автоматически определить параметры соответст- вующих преобразований системы координат. Программист (или программа высокого уровня, например, стратегический планировщик) может ис- пользовать любую систему координат в качестве базовой, не указывая ее явно с помощью составных операторов. В момент, когда захват робота зажимает объект, фиксируя тем самым некоторую систему координат, соответствующее поддерево извлекается из базы данных и используется для 336
программирования движения объекта и его частей. Все системы координат, связанные с этим поддеревом, становятся подвижными. Коррекция численной информации в базе данных происходит автома- тически. При выполнении движения система программирования определяет, какие системы координат стали подвижными, и извлекает самый верхний узел поддерева. При этом изменяется численная информация, соответствующая только этому узлу, поскольку связи остальных систем координат с этим узлом остаются неизменными. Следует указать только новую систему отсчета для этого верхнего узла. Рассмотренный подход позволяет рационально организовать модель среды и тем самым повысить эффективность планирования действий робота. 13.4.5. Организация взаимодействия программных модулей в системе управления роботом Организация центрального ядра программного обеспечения (блок 2 на рис. 13.6), осуществляющего взаимодействие отдельных программных модулей и пакетов, зависит от архитектуры технических средств системы управления. Мы приведем идеологию построения основных системных программ ядра для достаточно распространенного случая, когда в основу системы управления роботом положено однопроцессорное вычислительное устройство. При этом все внешние инициативные каналы, а также программные модули, отвечающие за отдельные функции робототехни- ческой системы, можно рассматривать как совокупность потребителей, претендующих на время работы процессора. Следовательно, в основе ядра должна лежать некоторая программа- диспетчер, распределяющая ресурс процессора по запросам отдельных потребителей таким образом, чтобы добиться наилучших показателей эф- фективности системы в целом. Наиболее распространенное решение этой задачи дается эвристическим способом - за счет введения аппарата при- оритетов. Каждому модулю или функциональному пакету модулей (в том числе и модулю-программе реакции на внешний инициативный сигнал) присваи- вается приоритет в соответствии с важностью выполняемой им функции и требуемой скоростью реакции системы управления на возникшую ситуа- цию. Из всех модулей, претендующих на ресурс процессора, управление отдается тому, который имеет наивысший приоритет (наименьшее число). Пример распределения приоритетов по основным программным модулям робототехнической системы "Барс" [31] приведен в табл. 13.1. Фоновой задаче, если такая предусмотрена в системе, присваивается самый низкий приоритет. Общим программам-модулям, используемым раз- ными функциональными пакетами, в процессе работы может назначаться приоритет вызывающей программы. Ряд программ центрального ядра, в том числе и диспетчер, работают при блокированных прерываниях. Для выбора наиболее приоритетного модуля в оперативной памяти организована матрица, состоящая из трех управляющих шкал (строк): 7) шкала задания; 2) шкала невыполненных заданий; 3) шкала выжиданий. 337
Таблица 13.1 Распределение приоритетов по основным программным модулям робототехнической системы ’’Барс” № модуля Назначение модуля Приоритет 1 Вычисление управляющих воздействий 9 2 Управление приводами 7 3 Опрос датчиков положения робота 5 4 Опрос сенсорных устройств 4 5 Аварийная блокировка системы 2 6 Ввод директив оператором 14 7 Построение траектории И 8 Расшифровка директив 13 9 Выдача сообщений 12 10 Тестирование и контроль систем 15 Число столбцов в матрице равно числу программ-модулей, включенных в приоритетную систему. Модулю, имеющему приоритетный номер К, соот- ветствует Х-й разряд в каждой из шкал. В шкале 1 фиксируется запрос на выполнение задания. Единица в ЛГ-м разряде шкалы заданий устанав- ливается модулем, вызывающим на исполнение Х'-й модуль системы. Шкалы 2 и 3 фиксируют запрет на передачу управления Х>му модулю. В шкале невыполненных заданий К-Й модуль всегда устанавливает нуль, если его буфер занят: информация в буфере еще не обработана (для обмена информацией для каждого модуля организован буфер ограниченного объема). Этим система предохранена от потери информации. Нуль в К-м разряде шкалы ожиданий означает, что модуль К в данный момент времени может продолжить свою работу в связи с запросом на допол- нительную информацию, например, на истечение заданного интервала времени. Просмотр шкал и передача управления наиболее приоритетному мо- дулю, открытому (имеющему единицу) во всех трех шкалах, осуществляет программа-диспетчер. Все операции производятся при блокированных прерываниях. Структурно программа-диспетчер состоит из трех модулей: обработки прерывания, выбора программ и работы с таймером. Модуль обработки прерывания осуществляет прием и первичную об- работку инициативных сигналов. Распознавание сигналов источника пре- рывания производится аппаратно по адресу канала. Далее обработка осуществляется программно: запрещаются прерывания; запоминаются регистры процессора (чтобы впоследствии возобновить работу прерванной программы), при необходимости опрашивается устройство, вызвавшее прерывание (например, для распознавания клавиш "Аварийный останов" на пульте оператора), и в зависимости от номера инициативного канала или результатов обработки устанавливаются соответствующие разряды управляющих шкал. Далее управление передается модулю выборки программ. Модуль выборки предназначен для приоритетной активизации про- грамм - реакции на инициативные сигналы или программы, заказанные 338
другими модулями. Входной информацией для модуля выборки являются управляющие шкалы. По всем упомянутым выше управляющим шкалам он формирует шкалу готовности (как результат поразрядной конъюнкции содержимого трех управляющих шкал), и далее осуществляет ее конечную обработку. Просматривая ее с нулевого разряда (напомним, что инфор- мация о вызываемых программах расположена в порядке убывания при- оритета), определяется номер К разряда, содержащего единицу. Это означает, что в данный момент времени АГ-й модуль имеет задание на выполнение и готов его выполнить. После идентификации программы на регистрах процессора восстанавливается информация, необходимая для ее функционирования, включается система прерываний, и управление передается по адресу запуска выбранной программы. Модуль работы с таймером предназначен для организации службы реального времени: формирования временных интервалов заданной дли- тельности по заказам программных модулей. Он состоит из двух частей: подпрограммы оформления заказа и подпрограммы подсчета времени. Работа модуля осуществляется при блокированных прерываниях. При необходимости выдержки времени модуль-заказчик снимет свой признак готовности по шкале выжиданий, установит на одном из регистров процессора код, пропорциональный требуемому интервалу времени, и передаст управление по входному адресу подпрограммы оформления зака- за. Последняя заполняет две специально организованные таблицы: таблицу модулей-заказчиков и таблицу временных интервалов. Затем управление передается модулю выборки программ. Обращение к подпрограмме подсчета времени производится через модуль обработки прерываний по сигналу от внутрисистемного таймера, генерируемому с некоторой периодичностью. В системе "Барс" принят период 32 мс. Для программного обеспечения таймер является таким же источником прерываний, как и любой внешний инициативный канал. На каждый такой сигнал подпрограмма подсчета времени уменьшает на единицу значения элементов таблицы временныых интервалов. Далее производится анализ обеих таблиц. Если в таблице модулей- заказчиков нет заявок на обслуживание, то управление сразу передается модулю выборки программ. Если заявки есть и в таблице временных интер- валов какие-либо элементы достигли нулевых значений, то в соответствую- щих разрядах шкалы выжиданий восстанавливаются единицы, а соответ- ствующие модули-заказчики снимаются с обслуживания. Это означает, что заказанные этими модулями интервалы времени истекли, и они могут продолжить свою работу. Далее управление передается модулю выборки программ, который запускает на исполнение программу с наивысшим приоритетом. Изложенный в настоящем разделе материал дает представление только о некоторых основных приемах организации взаимодействия программ в системе управления роботом. В целом создание ядра программного обеспе- чения промышленного робота является одной из сложнейших задач си- стемных программистов. 339
13.5. СПЕЦИФИКА ПРИМЕНЕНИЯ МНЕМОНИЧЕСКИХ РУКОЯТОК И ОСОБЕННОСТИ ИНТЕРФЕЙСА ЧЕЛОВЕК-МАШИНА В КОПИРУЮЩИХ МАНИПУЛЯЦИОННЫХ СИСТЕМАХ 13.5.1. Мнемонические рукоятки. Конструкции и области применения в робототехнике Специальными устройствами, нашедшими широкое применение при программировании роботов, являются мнемонические рукоятки. По своему назначению такая рукоятка близка к ставшим уже стандартными устрой- ствам взаимодействия с персональной ЭВМ типа джойстик или мышь. Воз- действуя на джойстик, оператор с помощью соответствующего програм- много обеспечения может, например, перемещать графический объект по экрану дисплея, причем направление воздействия руки оператора на джойстик соответствует направлению движения объекта по экрану. В этом заключается свойство мнемоничности устройства. При использовании в робототехнических устройствах рукоятка позво- ляет наиболее удобным и естественным для оператора образом сфор- мировать вектор управления. Этот вектор может иметь различный физи- ческий смысл: вектор перемещения захвата (позиционный режим управ- ления роботом), вектор его скорости (скоростной или астатический режим) или вектор силового воздействия на среду (акселерационный). Размерность вектора зависит от числа степеней подвижности рукоятки. При числе степеней, равном шести, можно управлять положением захвата как твер- дого тела в пространстве (если, конечно, это допускается числом степеней подвижности механической руки). Однако создать компактную и доста- точно точную рукоятку с шестью степенями подвижности - весьма трудная техническая задача. По своей конструкции мнемоническая рукоятка обычно представляет собой многокомпонентный датчик перемещений или усилий, на который воздействует оператор через рукоятку, жестко связанную с подвижным элементом датчика (см. раздел 12.2). При позиционном режиме управления в качестве такой рукоятки часто используют задающую руку, кине- матически одинаковую с исполнительной рукой манипулятора. Основ- ное отличие между ними заключается в том, что в задающей руке углы между звеньями регистрируются датчиками перемещения, а в испол- нительной руке эти сигналы отрабатываются соответствующими приво- дами звеньев. Такие биотехнические системы получили название "master-slave", кото- рое образно подчеркивает полную подчиненность (копирование) движений исполнительной руки (slave) движениям задающей руки (master). Оператор, находясь в зоне, удаленной от опасной среды, и наблюдая за рабочей зоной исполнительных рук, перемещает в пространстве задающие руки (рис. 13.12, а), а исполнительные руки (рис. 13.12, б) копируют движение задающих. Копирующие манипуляторы образуют отдельный класс мани- пуляционных систем, которые широко используют для выполнения слож- ных работ в экстремальных условиях [16, 19]. 340
Рис. 13.12. Копирующая манипуляционная система а - оператор с задающими руками; б - исполнительные руки 341
При больших размерах исполнительной руки задающую руку выпол- няют геометрически и кинематически подобной исполнительной руке с некоторым масштабным коэффициентом. В этом случае задающую руку называют минирепликой. Во всех этих системах мнемоничность достигается за счет идентичности структур и подобия геометрических параметров задающей и исполнительной частей, а также "жесткости" соединяющих их передач. Это могут быть механические передачи, сельсины или следящие контуры с обратной связью по положению. Ряд специфических проблем, связанных с отображением усилий на оператора, а также динамика подобных систем рассмотрены в работах [16, 17]. При скоростном или акселерационном режимах управления в качестве основного элемента мнемонической рукоятки часто используют много- компонентный силомоментный датчик. Примеры конструкций много- компонентных датчиков показаны на рис. 12.15. Компоненты перемещений или усилий датчика, на который воздействует оператор с помощью дискретных или аналоговых схем, преобразуются в управляющие сигналы на приводы робота. Алгоритм преобразования строится так, чтобы обеспе- чить мнемоничность управления: вектор воздействия на рукоятку должен быть параллелен вектору скорости или усилия захвата при любом положении руки. Математические соотношения, определяющие алгоритм преобразо- вания, зависят от схемы многокомпонентного датчика, от структуры механической руки и от места расположения рукоятки. Рукоятку можно располагать неподвижно на пульте управления роботом, что соответствует управлению роботом в абсолютной системе координат, или непосредствен- но на одном из последних, близких к захвату, звеньев робота, как это по- казано позицией 5 на рис. 13.2. В последнем случае управление роботом осуществляется в системе координат данного звена, и оператор, воздействуя на рукоятку, переводит кисть робота в требуемую зону рабочего пространства аналогично тому, как это делает человек, ведущий за узду лошадь. Такой подход положен в основу разнообразных средств механизации операций съема и установки тяжелых и габаритных объектов [6]. Мнемонические рукоятки на основе силомоментных датчиков, в которых вектор управления формируется за счет малых деформаций упругих элементов, называют изометрическими рукоятками [19]. Такие рукоятки являются жесткими; они сохраняют свое положение в прост- ранстве и не допускают ощутимых для оператора угловых или линейных перемещений. Иногда для удобства управления манипулятором конст- рукцию рукоятки делают комбинированной: по некоторым степеням под- вижности информацию получают с помощью датчиков силы или момента. Конструкция [39], выполненная на основе карданного подвеса с тремя степенями подвижности и установленной на нем изометрической рукояткой, представлена на рис. 13.13. Датчики шарниров кардана представляют собой потенциометры. В изометрической рукоятке смонтированы тензодатчики. Для выполнения больших (региональных) перемещений оператору удобно пользоваться изометрической частью рукоятки в скоростном режиме управления; для выполнения тонких ориентирующих локальных движений - 342
Рис. 13.13. Комбинированная управляю- щая рукоятка карданным подвесом с датчика- ми положения в позиционном режиме управления. Карданный подвес имеет стопорные винты, фиксирующие его в исходном положении. При зафиксирован- ном подвесе обеспечивается только скоростной режим управ- ления. Во всех изометрических ру- коятках, а также в тех рукоятках с датчиками перемещений, структура и кинематика которых отличаются от структуры и кинематики механизма исполни- тельной руки, ответственность за мнемоничность управления лежит на алгоритме преобразования сигналов датчиков рукоятки в управляющие сигналы на приводы робота. Для изометрической рукоятки, используемой для управления роботом в абсолютной системе координат в скоростном режиме, после выделения компонент вектора управления, преобразование выполняется по алгоритмам, приведенным в разделе 11.2.2, в соответствии со схемами, представленными на рис. 11.4. Область применения мнемонических рукояток очень широка. Во- первых, как мы уже упоминали, она включает целый класс копирующих манипуляционных систем, являющихся практически единственным сред- ством для удаления человека из опасной для жизни зоны при ручных операциях с вредными, например радиоактивными, веществами. Во-вторых, это большое число удаленных от оператора автоматических манипуля- ционных систем, работающих в экстремальных условиях. Во многих слу- чаях, например, при управлении глубоководным аппаратом или объектом, находящимся на другой планете или в космосе, возникают ситуации, когда в силу сложившихся условий оператор, наблюдая за движением объекта по телеканалу, должен взять управление на себя и выполнить требуемую операцию в ручном режиме (такое управление называется интерактивным [19, 22]). В случае управления от мнемонической рукоятки возникает специфическая проблема, связанная с существенным запаздыванием управ- ляющих сигналов, поступающих на удаленный объект. В-третьих, мнемо- ническая рукоятка является неотъемлемой частью разнообразных сбалан- сированных манипуляторов [6]. Мнемоническая рукоятка - это средство программирования промыш- ленных роботов. Она обладает явными преимуществами по сравнению со стандартным кнопочным пультом ручного управления, обеспечивающим перемещения по отдельным степеням подвижности. С помощью мне- монической рукоятки удается реализовать программирование способом прямого обучения на тактическом уровне управления роботом (см. 343
рис. 13.4, а). Здесь алгоритм преобразования вектора управления, обеспе- чивающий мнемоничность, базируется на модели робота и его текущем положении. При программировании траектории схвата оператор, наблюдая за движением робота, воздействует на рукоятку, а система, автоматически сканируя датчики обратных связей по всем обобщенным координатам, запоминает их показания. Полученная последовательность векторов обобщенных координат и соответствующие алгоритмы интерполяции (см. раздел 11.2.1) позволяют затем многократно воспроизводить требуемую траекторию в автоматическом режиме. Несмотря на разнообразие конструкций мнемонических рукояток [19], их использование в робототехнике связано с необходимостью решения ряда весьма общих проблем, определяемых биотехническим характером системы в целом. Непрерывное участие человека-оператора в процессе управления, с одной стороны, предъявляет ряд эргономических требований к технической части системы, удовлетворение которых должно обеспечивать удобство и естественность движений оператора при управлении, а с другой - требует от оператора определенного уровня профессиональных навыков, соответствующей скорости реакции и адаптационных способностей к изменяющимся условиям технологической задачи. Согласование характеристик технической части системы и свойств человека-оператора является одной из главных проблем при разработке биотехнической системы управления. Поскольку понятие "удобство управ- ления" трудно формализовать, до настоящего времени остается пробле- матичным назначение критериев качества биотехнических систем управ- ления. Ниже рассмотрены некоторые подходы к решению этого круга проблем и результаты исследований свойств человека-оператора, полу- ченные экспериментально с использованием статистических методов [13, 15,21,26, 27]. 13.5.2. Оценка качества системы ’ 'человек-машина * ’ Отличие машины, которой управляет человек, от автомата, дейст- вующего без его непосредственного участия, состоит в том, что точностные и временные характеристики ее работы зависят от собственных свойств обеих частей - биологической и технической подсистем, а также от того, насколько эффективно построена система ручного управления, обес- печивающая взаимодействие человека с машиной. Функции человека, связанные с управлением машиной могут изменяться в широких пределах. Они могут ограничиваться простыми операциями периодического включения, выключения, переключения и в силу этого сравнительно мало влиять на точность и производительность системы в целом. Либо могут требовать от оператора реализации сложных программ управления, его непрерывного участия в процессе работы машины, пост- роения и координации мелких и размашистых, плавных и быстрых движений, темп и точность выполнения которых фактически полностью определяют эффективность работы биотехнической системы. 344
Исследованию систем "человек-машина", в которых оператор отраба- тывает задание, предъявляемое в функции времени, посвящено большое число работ [1, 23, 24, 28]. При управлении манипулятором и программи- ровании робота от мнемонической рукоятки задание формируется как некоторая функция координат системы, а ритм отработки задания опреде- ляется непосредственно оператором. Оператор, воздействуя на задающее устройство и используя визуальную и тактильную обратные связи, строит движение исполнительной руки. К системе "оператор-манипулятор", как к любой комплексной системе, предъявляется требование, чтобы входные и выходные характеристики отдельных ее частей были согласованы оптимальным образом. Другими словами, статические, кинематические, динамические и точностные характеристики манипулятора, а также навыки и тренированность опера- тора должны обеспечить системе возможность работать в течение дос- таточно длительного времени с заданной точностью и производи- тельностью. Однако насколько легко сформулировать эти требования, настолько же трудно ответить на вопрос о том, какова степень соответствия этим требованиям той или иной конкретной конструкции. В силу этого зачастую приходится ограничиваться субъективными оценками, выносимыми опера- тором или группой операторов: "легко", "трудно", удобно", "неудобно" и т.д. Наряду с этим представляется оправданным сформулировать некоторые критерии и разрабатывать соответствующие методики, позволяющие перейти от качественных к количественным оценкам управляемости мани- пулятора, квалификации оператора, точности и производительности про- цесса реализации им тех или иных движений. Такие критерии и методики, очевидно, должны исключать необходимость вникать сколько-нибудь под- робно в особенности структуры и конструкции отдельных машин, в особен- ности построения движений различными операторами. Они должны осно- вываться на изучении результирующих движений, например, схвата и сопоставлении этих движений с требуемыми. Используя полученные таким образом результаты, можно судить о точностных свойствах различных манипуляторов как о точности работы различных операторов, управляющих одним и тем же манипулятором. Однако для оценки качества ручного управления одних только точностных характеристик недостаточно, поскольку они не отвечают на вопрос о производительности работы оператора. Необходимы критерии и оценки, которые наряду с пространственными, учитывали бы также и временные факторы реализации двигательных функций. В ряде случаев могут оказаться полезными комплексные оценки [11], которые для рассматриваемой задачи можно построить в виде "время х ошибка" 7 = Д7)Ф(е)- (13.1) Здесь I - комплексная оценка (критерий), F(7) - функция времени вы- полнения операции, Ф(е) - точностная характеристика. В отношении F(7) можно указать, что ее вид зависит от веса, придаваемого этой составляю- щей комплексного критерия (13.1). Точностная характеристика Ф(е) 13. Корендясев А.И. Кн. 2 345
образуется путем сравнения реализуемого движения с заданным (эталон- ным) и формирования на невязке некоторого показателя - функционала, например интегрального, модульного или квадратического. В частности, точностной характеристикой может быть такая величина, как площадь, заключенная между эталонной и реализованной оператором траекториями. Однако практически удобнее вычислять интегральный квад- ратический функционал. Тогда, например, в случае обведения оператором плоской эталонной кривой точностная характеристика вычисляется по формуле Ф1 ф = J (р - рэ )2 л/рэ+(Рэ)2^Ф> (13 -2) Фо где рэ - радиус-вектор эталонной траектории, р - радиус-вектор реали- зуемой оператором траектории, ср - полярный угол, р' = dp3 / Лр. Действительно, интеграл (13.2) образован на базе функционала Ф1 Ф‘ = JI Р - Рэ I2 л/рэ2+(Рэ)2^ф. Фо являющегося оценкой площади ошибки. Ниже приведены результаты экспериментального исследования систем ручного управления моделью манипулятора с помощью комплексного кри- терия (13.1), в котором принято F(T) = Т, а точностная характеристика вы- числяется по формуле (13.2). Особенностью такого критерия являются его минимальные значения при крайних стратегиях действий оператора. Однако реализация крайних стратегий не удовлетворяет дополнительным ограничениям, регламентирующим выполнение задания оператором. Одна из основных задач эксперимента - определение "чувствительности" предло- женного критерия к изменению качеств элементов системы. С помощью аналоговой вычислительной машины (АВМ) и двухкоор- динатного самописца было смоделировано исполнительное устройство ма- нипулятора и его приводов с возможностью как астатического, так и пози- ционного управления выходным звеном. На входе АВМ было установлено задающее устройство, представляющее собой двухкоординатную каретку с рукояткой, каждая из координат которой снабжена датчиком перемещения. Оператору предлагалось, воздействуя на рукоятку, обвести исполнитель- ным устройством модели манипулятора эталонную траекторию с мини- мально возможными ошибкой и временем. Цепи вычисления критерия так- же реализовывались на базе АВМ. В ходе эксперимента менялись опера- торы, варьировался коэффициент усиления моделей манипулятора и изме- нялись эталонные траектории. В качестве эталонных были взяты три траектории равной длины (рис. 13.14). Уравнения радиус-векторов этих траекторий имеют вид Рэ1 = Rl > Рэ2 = )'о2 1 «Пф 1 +7/г2-У02+У028>п2ф> рэ4 = 2/?4sin I л(1 sincp I +1 coscp I)/4]. (13.3) 346
Траектории I, II и III выбирают с учетом сравнительной простоты набо- ра уравнений данных фигур на АВМ и возможности относительно простой оценки сложности каждой из фигур [7]. По способу, предложенному в работе [7], оценка сложности некоторого контура производится по трем характеристикам: числу перемен знака кри- визны на контуре ((7), числу криволинейных участков контура (V) и сумме абсолютного перемещения угла наклона касательной (W). Введем, ис- пользуя эти характеристики, следующую комплексную оценку сложности контура Z=U+V+W/n. Тогда для эталонных траекторий I, II и III получим соответственно сле- дующие оценки их геометрической сложности: ZI = 3; Zn = 9,5; Zin = 17. Специфика вычислений на АВМ приводит, во-первых, к необходимости использовать аналитические выражения производных р' (см. (13.2)), полу- чаемых дифференцированием уравнений (13.3), а во-вторых, к необхо- димости перехода от интегрирования в (13.2) по углу к интегрированию по времени, осуществляемому подстановкой d(p = (pdT. (13.4) Начальным этапом исследования систем "оператор-манипулятор" слу- жит этап обучения оператора. Перед началом записи результатов работы оператору была представлена возможность провести одно-два пробных обведения с целью выяснения специфики исследуемого вида управления. При этом замечено, что в нескольких первых измерениях ошибка опера- тора достигала больших значений. Однако в дальнейшем значения ошибки резко уменьшались (характерный вид изменения ошибки в функции поряд- кового номера обведения п, отражающий процесс обучения, представлен на рис. 13.15, кривая 7). В то же время повышение квалификации оператора происходит за счет увеличения скорости обведения. Изменение времени вы- полнения задания (см. рис. 13.15, кривая 2), как и изменение комплексного критерия (кривая 3) в процессе обучения продолжается примерно до 25 цик- лов обведения. Далее производились эксперименты с целью исследования 13* Рис. 13.14. Эталонные траектории 347
Рис. 13.15. Влияние числа циклов обведения траектории I на эффективность выполнения операции при астатическом управлении зависимости значений комплексного критерия качества работы системы "оператор-манипулятор" и его составляющих при изменении коэффициента усиления двухкоординатного манипулятора. Под коэффициентом усиления при астатическом управлении понимается отношение скорости движения исполнительного органа к величине перемещения задающего устройства манипулятора. При позиционном управлении коэффициент усиления может рассматриваться как масштабный. В результате статистической обработки экспериментальных данных оказалось, что при астатическом способе управления с большими коэф- фициентами усиления оператору свойственно понижать скорость обведения эталонной траектории. Таким образом, зависимость времени выполнения задания от коэффициента усиления имеет экстремальный характер (рис. 13.16, кривая 2). Фактор уменьшения скорости обведения находит отражение и в ха- рактере зависимости точности обведения от коэффициента усиления, кото- рая имеет локальные экстремумы (см. рис. 13.16, кривая У). Аналогичный характер имеет в этом случае и зависимость комплексного критерия от коэффициента усиления (кривая 3). На рис. 13.16 по оси абсцисс отложены логарифмы следующих значений коэффициента усиления к (в 1/с): 0,0675; 0,213; 0,675; 2,134; 6,75, причем каждая точка на этих графиках пред- ставляет собой результат усреднения по десяти экспериментальным значениям. При исследовании позиционного управления манипулятором в схему вычисления критерия были внесены изменения, обусловленные тех- нической сложностью вычисления величины ф. Качество выполнения задания для позиционного способа управления оценивалось упрощенным интегральным критерием т Ф1=/(Р-Рэ)2^- О 348
Оказалось, что для позиционного управления интегральная оцен- ка Oj и время обведения Т со случайными отклонениями имеют в первом приближении соответственно прямую (кривая 1 на рис. 13.17) и обратную (кривая 2) линейные зависимости от коэффициента усиления модели. Сопоставление результатов выполнения задания тренированными опе- раторами, проведенное с помощью критерия /, дало возможность оценить квалификацию каждого из них. На рис. 13.18 приведены гистограммы, полученные на основе обработки результатов обведения тремя операто- рами (№ 1, 2, 3) эталонной траектории по 50 раз (л - число обведений с одним и тем же значением критерия Г). При исследование влияния сложности геометрии эталонной траектории на качество обведения установлено возрастание времени обведения с уве- личением сложности кривой. Вместе с тем отсутствует четкая тенденция в изменении точности обведения в зависимости от сложности контура. Так, при рассмотрении графиков представленных на рис. 13.19, можно заметить как понижение точности с усложнением траектории у одного оператора, так и улучшение результатов обведения в тех же условиях у другого. Наряду с экспериментальным представляется возможным провести ана- литическое исследование поведения комплексного критерия систем с ручным управлением, используя упрощенные модели и машины, и чело- века-оператора. Цель такого исследования - получить оценки предельных возможностей человеко-машинных систем. Рассмотрим результат выпол- нения оптимального по быстродействию наведения в одномерной системе, выполняемого тренированным человеком-оператором на "машинах" с астатическим и позиционным управлением. Предполагается, что задание оператору сформулировано так: требует- ся за минимальное время совместить некоторую точку выходного звена с Рис. 13.16. Зависимость эффективности операции обведения траектории I от коэф- фициента усиления при астатическом управлении Рис. 13.17. Влияние коэффициента усиления системы на качество обведения траектории I при позиционном управлении 349
Рис. 13.18. Оценка квалификации тренированных операторов № 1,2 и 3 по результатам обведения траектории III при астатическом управлении Рис. 13.19. Влияние сложности эталонной траектории на качество выполнения обведения операторами № 1 и № 2 при астатическом управлении неподвижной целью, расположенной от нее на расстоянии S, причем результат выполнения этой операции должен укладываться в уста- новленные допуск на время (т) и допуск на точность (А). Обозначим через х координату рассматриваемой точки выходного звена машины, а через х} - координату рукоятки управления. Пусть "машина" с астатическим управлением в рассматриваемом примере реализует следую- щую связь между входом и выходом: х = |т|х1Л, (13.5) о где 0 < X] < N, N - ограничение перемещения задающей рукоятки, Т| - коэффициент усиления. "Машина" с позиционным управлением в рассмат- 350
Рис. 13.20. Закон изменения управляющего воздействия для "машины" с астатическим управ- лением риваемом примере реализует связь х = кх}, где к - масштабный коэф- фициент. Относительно свойств обученного оператора будем предполагать, что ему, вернее его модели, присущи, во-первых, чистое запаздывание 81 - время от подачи сигнала до начала моторной реакции; во-вторых, огра- ничения на скорость Ixl < М и на ускорение I х I < R изменения управ- ляющего воздействия; в-третьих, ошибка экстраполяции моментов пере- ключения 82. Такой оператор реализует с указанными ограничениями эмпи- рически найденный им закон управления, оптимальный для данной задачи. С учетом сказанного закон изменения управляющего воздействия для "машины" с астатическим управлением (13.5) при N> MV2R имеет вид, пред- ставленный на рис. 13.20, а, а при N < M42R - на рис. 13.20, б. Длительность переходного процесса в первом случае равна 5' + 8", где 8' = М/R и 8" = = (IRN-lvPyiRM. За время 8' + 8" выходное звено машины переместится при включении на расстояние /1Д. = д[(М3 /6R2) + (4R2N2 -М*У 8MR2], а при выключении - на расстояние 12Х = ц|( MN / R) - (М3 / 6R2) + [(4 R2N2 - 4 ЛШ2 + М4) / 8 MR2 ]}. Следовательно, при S < r^MN/R) + [(2Я2М2 - RNM2) / 2MR2]} возможности машины не могут быть использованы полностью. Длительность выдержки задающей рукоятки на координате xt = N при точном попадании в метку будет Г2 = {($ / v\N) - [(2RN + М2) / 2М?]}. 351
Время выполнения всей операции определяется выражением T = 3j+32+7]+2(3' + 3"), а ошибка попадания в цель е = т|М/2. Сформировав комплексный критерий типа (13.1), получим I = T|^3iS2 + T|/V32 + S32 + T]?V82 [(М2 + 2RN) / 2 RM ]. С учетом допуска на точность и ограничения на длительность операции запишем следующее неравенство: 5/ Дг{т - 3, - 52 - [(М2 + 2RM) / 2MR]} < Т| < М2. Критерий I достигает минимума при выборе Т| на его нижней границе. Наряду с этим величина критерия уменьшается с уменьшением N. При N M2!2R длительность переходного процесса окажется равной b"' = ^2N/R. Комплексный критерий в этом случае принимает вид I = т^ЗД + x\N§2 + S32 + d2r\N^2N/R при следующих ограничениях на Т|: $ЛГ(Т| - 3] - 32 - -72^//?) < Т| < Д / N32. Поиск минимума критерия по параметрам Т| и N приводит к N —> О, Т| —> a T|N = v = const. Технической реализацией этого случая является кнопочное астатическое управление. Для такого управления связь между входом X! и выходом х описывается соотношениями х = v при jq > 0, х = О при X] = 0. Качество управления будет оцениваться комплексным критерием / = + v2 +S52, 5/(т + 5152)<т|< А52. Критерий достигает минимума на нижней границе, 4in = Ш-W Для "машины” с позиционной системой ручного управления закон изменения управляющего воздейст- вия имеет вид, представленный на рис. 13.21. Время выполнения зада- ния в этом случае определяется вы- ражением Т=(5/^ + (Л///?) + 51 + 52, а ошибка выполнения задания е = = Ш52. Рис. 13.21. Закон изменения управляющего воздействия для "машины" с позиционным управлением 352
Поэтому комплексный критерий запишется так I = S32 + (Ш282 / R) + кМ82 + kM8fi2. Как видим, и в этом случае критерий зависит от параметров человека- оператора (81, 82, R, М), машины (Л), задания (5). Теперь с учетом допусков и вытекающих из них ограничений (S/М)(т - Ml R-8j - 82) < к < Д / МЪ2, находим минимальное значение критерия /min =St82/(t-8j-82-Л//Л). В заключение отметим, что для более сложных машин либо при более сложном задании подобный аналитический подход оказывается затрудни- тельным. В этих случаях для отыскания оптимальных с учетом принятого критерия параметров удобен метод моделирования. 13.5.3. Уровень мнемоничности и его влияние на работу системы "оператор-манипулятор" При управлении копирующим манипулятором исполнительные руки повторяют движения задающих рук, на которые воздействует оператор. Задающие и исполнительные руки манипулятора одинаковы по структуре и геометрически подобны. Характерной особенностью манипуляторов такого типа является их высокая мнемоничность и, как следствие этого, отно- сительная простота и естественность процессов управления. Однако таким манипуляторам свойственны и недостатки. Так, при выполнении рабочих операций в некоторых зонах рабочего пространства манипулятора оператор может принимать неудобные позы, что зна- чительно снижает точность и производительность работы. Кроме того, в ряде приложений ограниченное (по техническим условиям) пространство движений оператора обуславливает неоправданные ограничения рабочего объема исполнительных рук. Попытка устранить эти недостатки путем увеличения масштабного коэффициента связана с уменьшением разре- шающей способности системы "оператор-манипулятор" и, следовательно, со снижением точности операций. Один из перспективных вариантов уменьшения пространства движений задающих рук и приведения его к удобной для оператора зоне заключается во введении некоторого рассогласования между конфигурациями задающей и исполнительной рук (рис. 13.22). Естественно, что при этом свойство мнемоничности в той или иной мере утрачивается. Таким образом, в основу рассматриваемого способа управления положен принцип изменения уровня мнемоничности системы, и задача заключается в том, чтобы оценить эф- фективность этого способа, а также выявить требования, которые предъяв- ляются к оператору, вынужденному в процессе построения движений ком- пенсировать введенное рассогласование. Экспериментальное исследование данного способа управления прово- дилось на отечественном манипуляторе МЭМ-10СД. Оператору было пред- 353
a б Рис. 13.22. Введение рассогласования между задающей (а) и исполнительной (б) руками манипулятора ложено выполнить некоторые простые операции по переносу предмета из одних положений в другие при различных углах рассогласования задающих и исполнительных рук <р0 = ф02-Фо1 в пределах от 0° до 180°. При этом фиксировалось время выполнения операций (рис. 13.23). Оказалось, что при углах рассогласования до -45° время, затрачиваемое на операцию, увеличивалось незначительно. При дальнейшем увеличении рассогласования оно быстро возрастало и при углах рассогласования в пре- делах 100°-150° увеличивалось в 15-25 раз. При "зеркальном" положении рук (углы рассогласования, близкие к 180°) оператор довольно быстро при- спосабливался и время, которое он затрачивал на выполнение операций, практически оказывалось равным времени, затрачиваемому при углах рассогласования до 45°. Отсюда можно сделать вывод, что оператор обладает существенными способностями к компенсации рассогласования и может легко при- способиться к работе с манипулятором, в который искусственно вводятся рассогласования по углу ф0 в сравнительно широких пределах (до ±45°). Очевидно, что при этом способности оператора к адаптации оказываются достаточными для успешной компенсации снижения уровня мнемоничности системы, возникающего в результате введенных рассогласований. Представляется целесообразным попытаться найти количественную оценку уровня мнемоничности копирующих манипуляторов. С этой целью сначала оценим искажения элементарных перемещений запястья испол- нительной руки относительно запястья задающей рукоятки, обуслав- ливаемые рассогласованием "плеч" и "предплечий" манипулятора. При различных конфигурациях задающих и исполнительных рук перемещение в пространстве точки О] задающей руки на вектор DR, (см. рис. 13. 22) вызывает изменения углов <pOi, фп> Ф21 задающего механизма со- ответственно на dtpoi, t/фц, <Лр21- Так как управление осуществляется по методу копирования, звенья исполнительной руки получат соответствую- 354
Рис. 13.23. Влияние рассогласования на время выполнения операции щие угловые перемещения J(p02 = =/dfl>oi, <^Ф12 = <^Фн> ^ф22 = ^фгь и точ- ка iD2 переместится на вектор DR2. Векторы DR! и DR2 будут от- личаться друг от друга как по вели- чине, так и по направлению. Равно- мерному пространственному пучку векторов DRb (i = 1, 2, 3, и) на задающей руке будет соответство- вать искаженный пучок векторов DR21 на исполнительной руке. При этом каждая пара соответствую- щих векторов характеризуется уг- лом а, между ними и отношением модулей к, (коэффициентом усиле- ния). Для большей наглядности рассмотрим сначала плоский случай, когда векторы DRh и DR2, расположены в плоскости <р0 = 0. Обозначим через ан угол наклона j-го вектора перемещения запястья задающей рукоятки к оси z, сх2, - угол наклона z-ro вектора перемещения запястья исполнительной руки к оси z. Тогда а, = а2; - ан - угол между векторами DRb и DR2„ к, = = DR2, /DR1; - коэффициент усиления, ф] = ф12 - фп - рассогласование плеч, ф2 = ф22 - ф21 - рассогласование предплечий. При рассогласовании только по углу ф( преобразование векторов элементарных перемещений точки Dx заключается в повороте векторов DR|, на угол ф!. Если рассогласование введены по двум углам (ф] Ф 0, ф2 * 0), то характер изменения углов а, между векторами и коэффициентов усиления А:, представляет собой более сложные зависимости (рис. 13.24). Как показали исследования, среднее значение коэффициента усиления £ср близко к единице, а изменения коэффициента усиления е* = £max - и угла между векторами еа = атах - amin малы. Это свойство нарушается только в особых конфигурациях или близких к ним, т.е. на границах рабочего объема или при расположении точки Dx вблизи оси z. Исключив такие ситуации, представляется оправданным учи- тывать только изменение направлений перемещений точки D2 по от- ношению к перемещению точки Dx. Поэтому в дальнейшем будем оценивать совпадения элементарных перемещений при данных конфи- гурациях задающей и исполнительной рук косинусом угла между векторами DR] hDR2. Для двух конкретных точек пространств задающей и исполнительной рук определим с привлечением метода объемов (см. гл. 4) [5] среднее значение cos(DRh Л D 1^,) при пучке векторов DR1;, равномерно распре- деленном в пространстве. Назовем это среднее значение cos(DRh A DR2i) 355
Рис. 13.24. Характер изменения угла а между векторами DR] и DR2, а также коэффициента усиления к при ф] ] = 37°, ф21 = 90°, ф!=70° и ф2 = 60° (а), 10 (б) и 30° (в) коэффициентом мнемоничности п kMH =^cosat / п (i = 1, 2, 3,и), 1 где п - число пар реализуемых векторов. Этот коэффициент дает интег- ральную оценку изменения направлений элементарных перемещений DR2i относительно соответствующих перемещений DRH при и —> и не зависит от отношения их модулей. Значения коэффициента могут меняться от +1, когда векторы DRn hDR2/ попарно одинаково направлены, до -1, когда век- торы DRn hDR2/ попарно противоположны. Изложенное позволяет составить алгоритм программы вычисления кмн для произвольной кинематической схемы манипулятора. Такой алгоритм представляет собой последовательное выполнение следующих этапов: 1) выбор координат точки запястья; 2) определение возможных конфи- гураций задающей руки для данных координат точки ; 3) определение пучка векторов DRlt; 4) определение приращений приводов звеньев задаю- щей руки после реализации векторов DRb; 5) определение конфигураций исполнительной руки; 6) определение пучка векторов DR2/; 7) определение коэффициентов кмн. По данному алгоритму рассчитаны коэффициенты кмн для кинемати- ческой схемы, представленной на рис. 13.22. При фиксированных разме- рах звеньев коэффициент мнемоничности есть функция шести переменных 356
Рис. 13.25. Линии постоянного уровня коэффициента мнемоничности по сечению рабочего объема манипулятора при х = 0,75, у = 0, z =1 и фо = 0° (а), 30 (б), 45 (в) и 60° (г) Рис. 13.26. Линии постоянного уровня коэффициента мнемоничности по сечению рабочего объема манипулятора при у = 0; фо = 0 а -х = 0,05, z = 1,25; б-х =1,25, z = 0; в-х =1, z = 0; г -х =1,6, z = 0 кмн =Лфо1. Фи, Ф21, Фог, Ф12, Фгг)- Коэффициенты км„ определены с учетом ограничений, которые накладывают кинематические связи (например, точка Z)| задающей руки должна отстоять от границы рабочей зоны не менее, чем на величину вектора DR]). В результате получены карты, отражающие топографию рабочих зон исполнительной руки манипулятора МЭМ-10СД (/и = /12 = 1,0 м; Z2i = ^22 = 0,75 м), для различных положений точки D| в рабочем пространстве задающей руки. В расчетах принято: п - 72, длина вектора DR, =10-3 м. Из приведенных на рис. 13.25 и 13.26 карт исключены все отрицатель- ные значения коэффициентов кмн, так как картины зон с отрицательными значениями кмн симметричны картинам зон с положительными значениями кмн относительно точки 0. При sign<p21 # signcp22 зоны с большими значениями коэффициентов кмн располагаются узкой полосой вблизи границы рабочей зоны исполнительной руки. Наибольший интерес представляет случай sign<p2] = sigixp22. На рис. 13.25 показано изменение значений коэффициентов кмн при введении рас- 357
согласований по углу ф0. С увеличением ф0 зоны с большими значениями кмн постепенно уменьшаются и исчезают, например, при ф0 = 60° максимальное значение кмн = 0,66. При изменении положения точки Dx в рабочем прост- ранстве в зависимости от ф! зоны с большими значениями кмн уменьшаются при приближении точки Dx к оси z и достигают максимальной величины, когда точка находится на оси р (рис. 13.26, а, б). Изменение размеров и конфигураций зон в зависимости от изменения положения точки О, на оси р иллюстрируют рис. 13.26, в, г. Сказанное позволяет так выбирать рабочую зону задающего органа (ее величину и расположение), чтобы объем рабочей зоны исполнительной руки, удовлетворяющий допустимому значению кмн, был максимальным. На рис. 13.27 пунктиром обозначено сечение принятой рабочей зоны задающей руки (фо = 0) и соответствующая ему топография рабочего пространства исполнительной руки. Видно, что зоны исполнительной руки, характери- зуемые высокими кмн, намного превышают принятую рабочую зону задаю- щей руки (например, при kMH s 0,7 их отношение равно - 10). Более глубокое исследование влияния снижения уровня мнемоничности системы на эффективность биотехнической системы в целом, а также оценка компенсаторной способности человека-оператора выполнялась на модели манипулятора, набранной на АВМ. Манипулятор был представлен моделью двухкоординатного самописца. Оператору предлагалось, воздейст- вуя на рукоятку и наблюдая за перемещениями самописца, обвести плоскую эталонную кривую за минимально возможное время и с минимальными ошибками. Задающее устройство представляет собой систему из двух взаимно перпендикулярных потенциометров и рукоятки управления с укрепленными на ней подвижными контактами потенциометров. При перемещении ру- коятки управления с потенциометров снимаются и подаются на АВМ сигна- лы управления пропорциональные значениям координат х и у рукоятки. Здесь эти сигналы преобразуются в соответствии с выражениями X = кхх cos а + кху sin а, , (13.6) Y = -fc]Xsina + кх у cos а, где X, Y- сигналы, поступающие с АВМ на двухкоординатный самописец; a - угол рассогласования между системами координат входа (задающей ру- коятки) и выхода (самописца); кх, кх - коэффициенты усиления. Набранная на АВМ схема позволяет менять угол а в пределах -180° < < a < +180° и тем самым изменять коэффициент мнемоничности k^ = cosocb пределах -1 < кмн < 1. Оператору предлагалось выполнить две траектории (см. рис. 13.14) вида I с Ro = 50 мм и вида II с R2 = 33,3 мм и у0з = 23,5 мм. Траектории имеют одинаковую длину, их полярные уравнения определены соотношениями (13.3). На рис. 13.14 точкой обозначено начало, а стрел- кой - направление обведения. При выполнении операции автоматически вычислялся критерий качества I = ФТ, аналогичный (13.1), где '1 '1 Ф = j|p - рэ|Л - точностная характеристика, Т = jdt = tt -10 - время обведе- 'о 'о 358
Рис. 13.27. Соотношение объемов задающей рабочей зоны (пунктирная кривая) и рабочей зоны исполнительной руки ния контура. Таким образом, экспе- риментальная установка позволяет менять коэффициент мнемоничности технической части системы и по объ- ективному критерию оценивать ком- пенсаторные способности опера- тора. Начальный этап исследования биотехнической системы - процесс обучения оператора управлению мо- делью двухкоординатного манипуля- тора. Этот процесс продолжался примерно 50-70 циклов обведения при а = 0 (кмн = 1,0). Далее для каждой эталонной кривой (i = 1, 2) экспе- риментально определялись зависи- мости критериев качества работы системы "оператор-манипулятор" от величины а, т.е. были получены функции 7, = 1(a), Ф, = Ф(а) и 7} = Т(а). Угол а менялся в процессе эксперимента с интервалом 15-30°. Замечено, что изменение значений критериев в функции порядкового номера обведения при каждом последующем значении имело место только в первых 5-6 обведениях. Поэтому оказалось достаточным для обучения управлению моделью манипулятора при каждом новом значении а проводить лишь 6-7 циклов обведения. Далее обученный оператор производил до 20 циклов обведений при фиксированном значении а. Графики 7(a), полученные при обведении различными операторами эта- лонной кривой I (см. рис. 13.14 ), представлены на рис. 13.28, а, а эталонной кривой II - на рис. 13.28, б. При небольших рассогласованиях (а = 15^45°) у большинства операторов наблюдается некоторое улучшение качества обведения за счет увеличения скорости. При дальнейшем увеличении а ка- чество обведения остается удовлетворительным (а = 45-75°), затем начи- нается значительное ухудшение результатов работы операторов, причем для каждого оператора существует определенная зона значений а, в преде- лах которой качество его работы существенно ухудшается. Максимальные значения функции 7( (а) принимают в диапазоне величин углов a - ± (105-135°). При углах, близких к 180° (зеркальное управление, кмн = -1, 0), наблюдается некоторое улучшение работы операторов. Здесь функции 7, (а) имеют локальные минимумы. Качество обведений эталонных траекторий в экспериментах с отрицательными рассогласованиями в диапа- зоне -60 < a < 0° ниже, чем при соответствующих положительных углах рассогласований. При одинаковых углах рассогласования качество обведения более сложной кривой II, имеющей участки с резким изменением направления об- 359
a б Рис. 13.28. Влияние угла рассогласования на качество обведения операторами № 1-№ 4 эталонных кривых I (а) и II (б) при позиционном управлении ведения, ниже, чем кривой I. Причем /2(а) - Л(«) ~ const по всему диапазону значений а. Экспериментальная установка позволила моделировать не только позиционное управление манипулятором, но и астатическое. При этом на АВМ сигналы х и у, поступающие с задающей рукоятки, преобразовы- вались следующим образом: X = &2j(xcosa* +ysina*)A, Y = ^2j(-xsina* +ycosa*)dt, где к2 - коэффициент пропорциональности астатического управления; а* - угол между векторами перемещений задающей рукоятки и вектором ско- рости исполнительного органа. Этот угол характеризует уровень мнемонич- ности системы при астатическом управлении. Характер изменения качества обведения эталонных кривых /(а*) остается таким же, как и при пози- ционном управлении (см. пунктирные линии на рис. 13.28, б). 13.5.4. Синтез рационального интерфейса, исходя из адаптивных возможностей человека-оператора Часто рабочее пространство человека-оператора существенно ограни- чено, например кабиной батискафа. В этих случаях целесообразно исполь- зовать комбинированную позиционно-астатическую систему управления. Астатический режим используется для вывода исполнительной руки мани- пулятора в требуемую рабочую зону, а позиционный позволяет совершать "копирующие" движения в этой зоне, сохраняя при этом высокие значения кмн(0,7 < kMH < 1). Позиционный режим основан на приближенном равенстве векторов смещений задающей рукоятки относительно "нулевой" точки и исполнительной руки относительно некоторых "фиксируемых" оператором точек в ее рабочей зоне. Компоненты векторов рассчитываются по лине- аризованным зависимостям координат упомянутых точек от конфигураций рук и используются в их окрестности. В устройстве, схема которого приведена на рис. 13.29, кинематика задающей рукоятки и исполнительной руки от основания до запястья идентична. Обе они смонтированы на основании 1. Задающая рукоятка со- 360
Рис. 13.29. Кинематическая схема задающей руки манипулятора (а) и исполнительной руки (6)
держит последовательность шарнирно соединенных звеньев 2-4, связы- вающих шарнир 5 подвеса запястья с основанием 7. Шарнир 5 имеет воз- можность перемещения в ограниченной области с центром в точке, ко- торую он занимает при взаимно ортогональном положении звеньев 3 и 4 и при некотором выбранном за начальное положении звена 2. Данные положения звеньев 2-4 приняты за исходные. Для измерения отклонений Дф0, Дер, и Дф* = Дф1 +Д(р2 этих звеньев от исходных положений служат датчики положения 6-8. Суммирование достигается за счет использования механизма пантографа, выполненного на базе звеньев 3 и 4. Исполнительная рука содержит последовательность шарнирно соеди- ненных звеньев 9-11, связывающих шарнир 12 подвеса запястья исполни- тельной руки с основанием 1, силовые двигателя 13, 18, 21 следящих при- водов звеньев, потенциометрические синусно-косинусные датчики 14, 16, 19 углов (р0, (р, и (ф| + ф2) и потенциометрические датчики 15, 17, 20 этих углов. Конструктивно каждая пара датчиков 14 и 75, 16 и 17, 19 и 20 и шарниры, в которых они установлены, идентичны друг другу. Для описанной кинематической схемы задающей и исполнительной частей манипулятора условия равенства векторов малых отклонений шар- нира 5 от исходного положения, и шарнира 72 от некоторого произвольного положения, определяемого углами ф0, ф] и ф2, приводят к соотношениям Дф0 = (Дфо cos ф0 - £Дф* sinф0)/[fcsin ф! + 8т(ф] + ф2)], Дф1 =8ш(ф] + ф2)[Дфо8Шф0 -£Дф1 со8ф0]Дф* созСф] +ф2)/Нтф2, (13.7) Дф2 = {Дф*[^СО8ф! +СО8(ф! +ф2)]-[^8тф! + 8т(ф1 +ф2)]х х(£Дф] cos ф0 + Дфр sin ф0)} / к sin ф2. где к - отношение длины Ц звена 10 к длине 12 звена 11; Дф0, Дфь Дф2- программные значения изменений соответствующих углов исполнительной руки; Дфд, Дф*, Дф* - отклонения, задаваемые оператором на рукоятке. На блок-схеме комбинированной системы управления этим манипуля- тором (рис. 13.30) представлены задающая рука с датчиками положения звеньев, исполнительная рука с датчиками положения ее звеньев и двигателями. Кроме того, система управления содержит счетно-решающее устройство, блок памяти, два блока сравнения и переключатель скорост- ного и позиционного режимов работы манипулятора. Переключатель управляется оператором и может быть смонтирован на задающей рукоятке. В счетно-решающем устройстве реализуются вычисления в соответствии с соотношениями (13.7). При скоростном управлении оператор с помощью коммутирующего устройства соединяет блок памяти с датчиками положения звеньев испол- нительной руки. При этом в процессе движения информация в блоке памяти обновляется и поступает в счетно-решающее устройство, где в соответствии с информацией о положении задающей руки, т.е. с информацией о необходимом направлении перемещения исполнительной руки, происходит расчет требуемых изменений углов между звеньями последней. 362
Рис. 13.30. Блок-схема комбинированной системы управления манипулятором На входы блока сравнения II в этом случае поступают одинаковые сиг- налы. Поэтому на его выходе будет нулевой сигнал и блок сравнения 1 про- пускает на приводы сигналы, выработанные счетно-решающим устрой- ством, не изменяя их. Перемещения звеньев исполнительной руки осущест- вляются со скоростями, пропорциональными значениям Аф0, A<pt и Аф2. Эти перемещения происходят до тех пор, пока имеются отклонения задающей руки от исходного положения. В момент остановки задающая рука нахо- дится в исходном состоянии, а исполнительная - в некотором произвольном. Переходя на позиционное управление, оператор с помощью ком- мутирующего устройства размыкает связь между датчиками положе- ния звеньев исполнительной руки и блоком памяти. При этом в блоке памяти запоминаются значения углов между звеньями исполнительной руки, имевшие место в момент перехода со скоростного управления на позиционное. В процессе движения на второй вход блока сравнения II поступает информация о действительных положениях звеньев исполнительной руки, а с выхода снимается информация об отклонениях звеньев от положений, которые они занимали в момент переключения управлений. По-прежнему, в счетно-решающем устройстве в соответствии с информацией о положении задающей руки вырабатываются программные значения Аф0, Дф] и Дф2 отклонений, которые они занимали в момент переключения; эти значения сравниваются затем с действительными отклонениями. Следящие приводы обеспечивают равенство задаваемых и отработанных сигналов. Описанная система была смоделирована на ЭВМ при 1} = /2 = 0,6 м. При скоростном режиме управления алгоритм моделирования включал следующие этапы. 363
1. Расчет декартовых координат вершин рабочей зоны задающей ру- коятки и соответствующих им углов (Дфо)„ (Дф*), и (ДфД (i = 1, 2, 8). Рабочая зона задающей руки представляет собой куб 0,2 х 0,2 х 0,2 м3 с центром при Дфо = Дф1 = Дфз = 0. 2. Выделение в пространстве обобщенных координат исполнительной руки точек, характеризующих представительные конфигурации последней, в которых считается коэффициент мнемоничности. В их состав не входят особые конфигурации, определяемые соотношениями 8Шф2 = 0, Ыпф1 + sin(9i + ф2) = 0. 3. Пучок задаваемых направлений определялся вершинами рабочего объема задающей рукоятки. В предположении, что коэффициенты пропор- циональности скорости отработки рассогласования одинаковы для всех приводов, а длины звеньев исполнительной руки равны друг другу, рас- считывался пучок направлений движений запястья исполнительной руки в каждой из представительных конфигураций. 4. Определение минимального значения уровня мнемоничности по всем выбранным конфигурациям. По результатам моделирования схемы в скоростном режиме это зна- чение оказалось очень высоким - 0,95. Алгоритм расчета уровня мнемоничности той же системы в позицион- ном режиме отличается от описанного прежде всего тем, что определенные выше представительные конфигурации принимаются за положения, в кото- рых происходит переключение с астатического режима на позиционный. Затем в каждой вершине куба рабочего пространства задающей рукоятки назначаются пучок векторов малых перемещений и соответствующие им углы (Дф0),у, (Дф!(Дф*),-,. В соответствии с (13.7) вычисляются прира- щения обобщенных координат исполнительной руки, и по ним - пучок ее малых перемещений. Как показали расчеты, система плохо управляется в особых кон- фигурациях и в зонах, близких к ним (коэффициент мнемоничности может быть даже отрицательным). Однако, если запястье исполнительной руки в момент переключения с астатического режима на позиционный располо- жено так, что при любом возможном управлении не достигает особых конфигураций, то минимальное значение коэффициента мнемоничности достаточно высокое: (kMH)min = 0,81. 13.5.5. Динамические свойства механической системы и их влияние на эффективность системы обучения Как правило, при анализе систем ручного управления исходят из пред- посылки, что между мнемонической рукояткой и исполнительным устрой- ством машины существует "жесткая" связь: при любом перемещении ру- коятки исполнительный орган машины совершает однозначное соответ- ствующее перемещение. На самом деле в реальных объектах это далеко не так. В силу инерционных, упругих и диссипативных свойств, а также из-за 364
наличия запаздывания в цепях прямой и обратной связей приводов, исполнительный орган совершает достаточно сложное, часто колебатель- ное движение, в значительной степени ухудшающее точность и произ- водительность операции. Оценку влияния динамических свойств объекта на эффективность операций обучения можно производить [13, 14] по критериям, рассмот- ренным в разделе 13.5.2. Однако для грамотного проектирования техни- ческой части системы необходимо знать количественные ограничения на указанные динамические факторы системы, при которых "средний" опе- ратор еще может справиться с поставленной технологической задачей. Ниже рассмотрены методика и некоторые результаты экспериментального исследования свойств оператора при различных динамических параметрах управляемой машины. Стенд для выполнения экспериментов позволяет изменять динами- ческие параметры машины при выполнении технологических операций типа отслеживания траекторий, наведения и компенсационного отслежи- вания внешнего входного сигнала. Для этой цели использовалось специаль- ное двухкоординатное аналоговое устройство, имитирующее динамику движения управляемого объекта в соответствии с уравнениями т{Х + qX + кхХ = ax(t- т), rr^Y + c2Y + k2Y = dy(t- т), где X, Y- выходные координаты модели объекта; х, у- координаты задающей рукоятки; ax(t\ ay(f) - сигналы с задающей рукоятки; т - время запаздывания. Пульт управления оператора включает задающее устройство и тумблер для сигнализации о начале и конце операции. Задающее устройство представляет собой систему из двух потенциометров, расположенных взаимно перпендикулярно, и рукоятки управления, выполненной на базе двухкоординатного пантографа с укрепленными на ней подвижными контактами потенциометров. Выходные координаты модели подавались на электронный осцил- лограф, на экране которого формировалась светящаяся точка. Оператор, управляя рукояткой и наблюдая на экране осциллоскопа траекторию этой точки, обводил высвеченный на экране эталонный контур. Результаты обведения (время выполнения операции и погрешность) фиксировались с помощью ЭВМ. В функцию ЭВМ входило также формирование сигнала запаздывания, в то время как моделирование инерционных, упругих и диссипативных свойств объекта осуществлялось аналоговым устройством и усилителями осциллоскопа. Блок-схема программы, использованной при экспериментальных исследованиях процесса обведения человеком-оператором эталонной траектории, представлена на рис. 13.31. Основными входными данными программы являются: коэффициент усиления системы, время запаздывания и параметры эталонной кривой. Информация о настройке аналогового устройства поступает на печать после включения блока идентификации параметров аналогового устрой- 365
Рис. 13.31. Блок-схема программы ЭВМ для обеспечения экспериментов по исследованию свойств систем человек-машина 366
Рис. 13.32. Влияние времени запаз- дывания на площадь ошибки обведе- ния (а), время обведения (б) и комп- лексный критерий (в) Сплошные линии - математическое ожидание; пунктирные - дисперсия ства. При этом на входы уст- ройства поступает от ЭВМ пробный импульс, а с выхода устройства в ЭВМ поступает информация о свободных коле- баниях модели. На основании этой информации подсчитыва- ют собственные частоты и ко- эффициенты демпфирования модели. Настройку параметров производят с помощью пере- менных резисторов. Собствен- ные свойства каждой модели могут плавно меняться от апе- риодического до колебатель- ного неустойчивого звена, а из- менение собственной частоты возможно в пределах от 0,8 до 15 Гц. После начала операции по информации о траектории объ- екта управления Х(г), У(г) рассчитываются ошибки воспроизведения эталона в ручном режиме (площадь ошибки Ф) и оценки качества выполнения операции (время Т и комплексный критерий качества ФТ). Эти оценки при обведении кривой одним и тем же оператором при неизменных параметрах модели запоминаются и после некоторого числа обведений статистически обрабатываются: подсчитываются математические ожидания и дисперсии оценок. После проведения экспериментов различными операторами под- считываются средние значения статистических характеристик по группе операторов. Результаты экспериментов при коэффициенте усиления 0,366, радиусе эталонной окружности 35 мм, собственной частоте аналоговой модели 12 Гц (устойчивое колебательное звено) представлены на рис. 13.32. Экспе- рименты были нацелены на изучение влияния времени запаздывания на качество процесса управления. В исследованиях принимала участие группа из шести операторов. При каждом фиксированном значении времени запаздывания (диапазон 0-1,264 с, шаг 0,158 с) каждый оператор проводил двадцать обведений. До начала опыта испытуемый в порядке обучения и адаптации проводил 5 пробных обведений. Изменения математического ожидания (сплошная линия) и диспер- сии (пунктирная линия) площади ошибки Ф, длительности процессов обведения Т и комплексного критерия ФТ в зависимости от времени запаз- 367
Рис. 13.33. Виды эталонных кривых, ис- пользуемых в экспериментах дывания т иллюстрирует рис. 13.32. Как видно, запаздывание до т = = 0,316 с существенно не влияет на качество процесса управления. В ходе экспериментов установ- лено также, что оператор быстро приспосабливается к обведению ок- ружности, достигает некоторого авто- матизма и переходит от движения следящего типа к стереотипу (без зри- тельного отслеживания траекто- рии точки). Поэтому в следующем цикле экспериментов постановка за- дачи была изменена: оператор дол- жен был обвести одну из пяти эта- лонных траекторий равной длины (рис. 13.33), которая автоматически ’’выбрасывалась” ему на экран ос- циллоскопа случайным образом, так- же случайно задавались направление обведения (указано стрелками) и на- чальная точка. Ошибки обведения оценивали по числу выходов точки за пределы некоторого "коридора", вы- свечиваемого на экране. Параметры модели объекта оставались теми же. Интересно, что для каждого об- ученного оператора существует свой предельный уровень точностной ошибки, мало зависящий от условий эксперимента. Этот уровень практи- чески не меняется даже при ухудше- нии условий работы. Все изменения параметров сказываются в основном на времени выполнения операции. На рис. 13.34 показано время обведения Г, его среднее значение Е77и для группы из п = 5 операторов. Влияние динамических парамет- ров управляемой модели на время выполнения операции иллюстрирует рис. 13.35. В качестве примера здесь в координатах К'-С (АГ' = у/к/т - собственная частота, С' -с Нт - ко- эффициент затухания) представлены 368
Рис. 13.34. Влияние времени запаздывания на производительность операции обведения при "случайном" предъявлении эталонных кривых Рис. 13.35. Влияние динамических параметров управляемой машины на производительность операции полученные линии постоянного уровня времени Т при следующих парамет- рах динамической модели: = m2 = m, ci = с2 = с, = к2 = к Видно, что наиболее рациональная область характеристик машины находится в правом верхнем углу графика. Качественно, этот результат легко прогнозируется, а количественно дает лицам, принимающим реше- ние, конкретное значение нижних границ параметров, характеризующих собственные свойства технической части системы, допустимые в много- мерных системах ручного управления. ЛИТЕРАТУРА 1. Адамс Ю. Поведение человека-оператора в процессе слежения: Инженерная психология. М.: Прогресс, 1964. 168 с. 2. Асаи К., Кигами С., Кодзима Т. и др. Промышленные роботы. Внедрение и эффектив- ность. М.: Мир, 1987. 382 с. 3. Белянин П.Н. Промышленные роботы Японии, Москва, НИ АТ. 1977. 455 с. 4. Браверман Г.Б., Кобринский А.Е., Павлов Б.И., Степаненко Ю.А., Тывес Л.И. и др. К динамике промышленных роботов// Теория машин и механизмов. М.: Наука, 1979. С. 54-65. 5. Виноградов И.Б., Кобринский А.Е. Степаненко Ю.А., Тывес Л.И. Особенности кине- матики манипуляторов и метод объемов // Механика машин. М.: Наука, 1971. Вып. 27/28. С. 39—17. 6. Владов И.Л., Данилевский В.Н., Ионов П.Б. и др. Сбалансированные манипуляторы. М.: Машиностроение, 1988. 264 с. 7. Ганзен В.А., Грановская Р.М. Об одном способе количественной оценки сложности контура // Проблемы инженерной психологии. Л., 1965. Вып. 2. С. 21-30. 369
8. Дзубаки М., Сато К., Нагата Т. Робот ЭТЛ-1: робот с искусственным интеллектом// Интегральные роботы. М.: Мир, 1973. Вып. 1. С. 100-111. 9. Инодэ X. Операционная система для управления движением манипулятора робота Электротехнической лаборатории (ЭТЛ) // Интегральные роботы. М.: Мир, 1975. Вып. 2. С. 83-87. 10. Иноуэ X. Проблемы развития языков программирования роботов// Нихон роботто Гаккайси, 1984. Т. 2, № 2. С. 3-6. 11. Калинин В.Н. Обобщенные критерии оптимальности в задачах оптимального управ- ления И Автоматика и телемеханика, 1965. Т. 26, № 2. С. 17-24. 12. Кобринский А.Е. Числа управляют станками. М.: Наука, 1967. 262 с. 13. Кобринский А.Е., Сергеев В.И., Слуцкий Л.И., Тывес Л.И. Об оценке качества систем ручного управления И Машиноведение, 1971. № 5. С. 3-10. 14. Кобринский А.Е., Сергеев В.И., Слуцкий Л.И. Статистические характеристики качества ручного управления машинами // Автоматизация умственного труда в области машиноведения. М.: Наука, 1973. С. 107-115. 15. Кобринский А.Е., Стаценко В.В., Тывес Л.И. Оценки уровня мнемоничности копирую- щих манипуляторов при рассогласовании задающих и исполнительных органов // Маши- новедение, 1975. № 2. С. 37-42. 16. Кобринский А.А., Кобринский А.Е. Манипуляционные системы роботов. М.: Наука, 1985.343 с. 17. Кулешов В.С., Лакота Н.А. Динамика систем управления манипуляторами. М.: Энергия, 1971.304 с. 18. Майоров В.Г., Гаврилов А.И. Практический курс программирования микропроцессорных систем. М.: Машиностроение, 1989. 272 с. 19. Медведев В.С., Лесков А.Г., Ющенко А.С. Системы управления манипуляционных робо- тов. М.: Наука, 1978. 416 с. 20. Назарова А.В. Языки программирования промышленных роботов. Обзор / Международ- ный центр научной и технической информации. М., 1988. 168 с. 21. Орлова Т.Н., Тывес Л.И. Разработка на базе ЭВМ М-6000 макета для изучения систем "оператор-манипулятор" И Экспериментальное исследование и диагностирование роботов. М.: Наука, 1981. С. 52-56. 22. Попов Е.П. Системы управления в робототехнике // Известия вузов. Машиностроение. 1977, № 10. С. 18-25. 23. Романенко А.Ф., Сергеев Г.А. Оперативные методы контроля эффективности оператора в системе "человек и автомат" И Вопросы бионики. М.: Наука, 1967. С. 64-72. 24. Смит К.Ю. Зрительная обратная связь и слежение// Инженерная психология. М.: Прогресс, 1967. 25. Спыну Г.А. Автоматизация токарных станков с помощью командного аппарата на прин- ципе магнитной записи И Автоматизация в машиностроении. М.: Машгиз, 1955. С. 75-82. 26. Стаценко В.В. Влияние изменения уровня мнемоничности на работу системы "оператор- манипулятор" И Машиноведение, 1975. №3. С. 11-16. 27. Стаценко В.В., Тывес Л.И. К построению рациональной системы управления манипу- лятором И Исследование и решение задач прикладной механики на ЭВМ. М.: Наука, 1985. С. 65-73. 28. Суходольский Г.В. К вопросу о формировании у человека-оператора навыка слежения за движущейся целью // Проблемы общей и инженерной психологии. Л.: Изд-во ЛГУ, 1964. 29. Хиран С. Перспективы развития языков программирования роботов// Отомэсен. 1985. Т. 30, № 1-ВЦП. 30. Шнейдерман Б. Психология программирования. М.: Радио и связь, 1984. 303 с. 31. Юревич Е.И., Новаченко С.И., Павлов В.А. и др. Управление роботами от ЭВМ. Л.: Энергия, 1980. 260 с. 32. Blume Chr., Jakob W. Was leisten Programmiersprachen fur Industrieroboter// Elektronik, 1982, Bd. 31, N 6. S. 65-70. 33. Bonner S., Shin K.G. A. Comparative study of robot Language// IEEE Computer, 1989, Vol. 15, N 12. P. 82-96. 34. Brooks R.A. Symbolic Error Analysis and Robot Planning // Intern. J. Robotics Res. 1982. N 1. P. 29-68. 370
35. Cruver W.A., Soroka B.I., Craig J.J. Evaluation of commercially available robot programming languages // Proc, of the 13th ISIR. Chicago, 1983. P. 2032-2044. 36. Finkel R., Taylor R., Bolles R. at al. A programming system for automation report. Palo Alto (Calif.), 1974. (Stanford Artificial Intelliegence Lab.; MEMO AIM-243, Gs-456). 37. Hayward V., Paul R. Robot Manipulator-Control under UNIX // Proc, of the 13th ISIR, Chicago, 1983. P. 1259-1268. 38. Lozano-Perez T. Robot Programming // Prog. IEEE, 1983. Vol. 71, N 7. P. 821-841. 39. Nevins J.L., Sheridan T.B., Whitney D.E., Woodin A.E. The multi-vodel remote manipulator sys- tem // Remotely manned systems / Ed. E. Heer. Calif. Inst, of Technol. North Hollywood printing co, 1973. P. 173-186. 40. Torras C., Thomas E Planning with constraints, application to sensor-based robot assembly Tasks // Proc, of the IFAC symp. on robot control. Barcelona, Spain, 1985, Nov. 6-8. Barcelona, 1985. P. 453-456. 41. Unimate Puma Mark II Robot-500 Series. V. П-Users Guide to VAL. Danbury (Conn.): Unimation-Westinghouse, 1983. 47 P. 42. Van Aken L., Van Brussel H. A structured geometric database in an off-line robot programming system // Robotica, 1987. Vol. 5, N 4. P. 333-339. 43. Vijakumar R.t Arbib M.A., Yanxi Liu. Dynamic planning for sensor-based robots // Proc, of the IFAC symp. on robot control, Barcelona, Spain, 1985, Nov. 6-8. Barcelona, 1985. P. 401-406. 44. Vijakumar R., Arbib M.A. Problem decomposition for assembly planning // Proc, of the IEEE Intern, conf. rob. and autom. Wash. (D.C.), 1987. Vol. 3. P. 1361-1366. 45. Vijakumar R., Arbib M.A. A task-level robot planner for assembly operations. Amherst, 1986. 37 p. (COINS Techn. Rep.; 86-31).
ЗАКЛЮЧЕНИЕ Мы надеемся, что Вам было интересно узнать об основных проблемах робототехники и некоторых подходах к их решению. Специфика проблем обусловлена в первую очередь размерностью исполнительного органа - руки робота, а также статическими и динамическими взаимовлияниями между ее приводами при выполнении программных операций. Оказалось, что эти трудности преодолимы, как и проблемы, связанные с необходимой иерархией системы управления, обеспечивающей решения тактических (устойчивость) и стратегических (планирование действий) задач. Наконец, не облегчает жизнь разнообразие задач системы очувствления под общим названием "распознавание образов". Однако многие ответы найдены. Совокупность этих систем, объединение их в одном устройстве, сты- ковка и слаженная работа - это облик современной техники. Еще в первой половине прошлого века считалось: если Вы можете спроектировать и построить грузоподъемное устройство, например кран, значит Вы - Инженер. Прошло полвека, и это условие из достаточного превратилось в необходимое. Сегодня можно считать себя инженером в том случае, если Вы умеете рассчитать, спроектировать и построить комплексное устройст- во, подобное робототехническому, со всеми упомянутыми системами. Помочь вам в этом - наша цель. По всей видимости, принятый подход к решению различных задач, свя- занный с упрощениями моделей, характеристик и свойств основных систем робота, будет все более эффективным с приближением к реальным свой- ствам будущих робототехнических устройств вследствие широкого внедре- ния микропроцессорной техники в элементную базу этих систем. Практически все рассмотренные в этом издании решения подтверждены экспериментом и нашли отражение в конструкциях серийных промышлен- ных роботов. Тем не менее данные решения не являются догмами. Можно строить аналогичные сложные системы, используя другие идеи и подходы. Возможно, и в этом случае приведенный материал Вам также поможет. Нам осталось только поблагодарить наших учителей, "на плечи кото- рых мы пытались взобраться, чтобы было лучше видно", а также коллег и учеников, имена которых приведены в списках литературы и без труда которых монография была бы много тоньше.
ОГЛАВЛЕНИЕ Глава 9 Динамика цикловых роботов с рекуперацией механической энергии.............. 3 9.1. Анализ свойств и предельных возможностей привода цикловых роботов..... 3 9.2. Методика выбора параметров электропривода робота с рекуперацией меха- нической энергии. Оптимальная настройка привода............................ 7 9.3. Обеспечение многопозиционности по одной степени подвижности робота..... 13 9.4. Квазистатический режим работы рекуператоров механической энергии модели дифференциального привода................................................. 18 9.5. Динамические режимы работы модели дифференциального привода одной степени подвижности робота. Возможности динамической развязки в модели............ 19 9.6. Особенности управления дифференциальным многопозиционным приводом одной степени подвижности робота ............................................... 22 9.7. Условия динамической развязки дифференциального многопозиционного привода 26 9.8. Реализация рекуперации энергии в цикловых роботах.................... 31 9.9. Рекуперация механической энергии в роботе с позиционной системой управле- ния ...................................................................... 41 Литература................................................................ 44 Глава 10 Устойчивость многомерных систем автоматического регулирования промышленного робота.................................................................... 45 10.1. Идеология построения. Концепция автономизации....................... 45 10.2. Структура сепаратных регуляторов в цикловых, позиционных и контурных систе- мах управления роботами ................................................. 51 10.3. Структуры МСАР ПР с охватом механической руки контуром обратной связи. 60 10.4. Устойчивость МСАР ПР с кинематическими перекрестными связями и акселера- ционными управляющими устройствами......................................... 65 10.5. Устойчивость МСАР ПР с кинематическими перекрестными связями и астати- ческими управляющими устройствами.......................................... 74 10.6. Условия функционирования и устойчивость МСАР ПР с позиционными, астатическими и акселерационными управляющими устройствами при управ- лении силами сопротивления................................................. 81 10.7. Влияние дискретности цифровых систем регулирования на устойчивость и дина- мическую точность робота. Динамика и устойчивость модели регулятора при квантовании сигналов управления во времени................................. 87 10.8. Применение метода структурного синтеза нелинейных систем автоматического управления при создании МСАР ПР............................................ 94 10.8.1. Основные положения метода структурноого синтеза МСАР и его приме- нение в робототехнике................................................. 94 10.8.2. Закон регулирования в дискретной цифровой системе, обеспечивающий устойчивость при заданном периоде квантования......................... 99 10.9. Адаптивное управление роботом по упрощенным идентифицируемым моделям ... 101 Литература.............................................................. 106 373
Глава 11 Автоматизация программирования элементарных движений робота. Задачи, модели, принципы решения, алгоритмы.............................................. 108 11.1. Планирование движений робота и элементарные двигательные операции. Про- блема избыточности....................................................... 108 11.2. Автоматизация программирования элементарных движений робота на основе кинематических моделей................................................... 115 11.2.1. Позиционный метод построения программы движений. Интерполяция. 115 11.2.2. Скоростной и линеаризованный позиционный методы построения про- граммы движений в случае кинематически полного задания.............. 123 11.2.3. Скоростной и линеаризованный позиционный методы построения про- граммы движений в случае кинематически неполного задания............ 129 11.3. Автоматизация программирования движений робота на основе динамических моделей.................................................................. 133 11.3.1. Необходимость учета динамических свойств робота при программирова- нии движений с большими ускорениями и (или) скоростями. Проблемы учета динамики...................................................... 133 11.3.2. Программирование движений робота с использованием прямых методов вариационного исчисления............................................ 137 11.3.3. Особенности оптимального по быстродействию режима движения робота по заданной траектории.............................................. 140 11.3.4. Особенности оптимальных по быстродействию движений моделей роботов с циклическими обобщенными координатами при точечно-склерономном задании............................................................. 145 11.4. Программирование движений роботов в соответствии с их собственными динами- ческими свойствами....................................................... 149 11.4.1. Постановка задачи планирования траекторий движения роботов в соот- ветствии с собственными динамическими свойствами их механической части............................................................... 149 11.4.2. Особенности собственных движений упрощенных моделей роботов с двумя степенями подвижности и алгоритм планирования траекторий их дви- жения............................................................... 151 11.4.3. Классификация структур исполнительных механизмов роботов по числу циклических обобщенных координат. Обобщение разработанного алго- ритма планирования на системы с (п-1)-й циклической обобщенной коор- динатой............................................................. 159 11.4.4. Общий алгоритм планирования траекторий движений роботов в соот- ветствии с собственными динамическими свойствами моделей исполни- тельных механизмов.................................................. 171 11.4.5. Примеры решения задачи поиска собственной траектории движения руки робота между заданными позициями.................................... 178 11.4.6. Программирование оптимального по быстродействию движения робота по собственной траектории. Учет свойств привода и использование идей ком- бинированного управления............................................ 186 Литература.......................................................... 192 Глава 12 Модели систем очувствления роботов, процессов обработки информации и принятия решений.................................................................. 194 12.1. Адаптация в робототехнических системах. Проблема реального времени... 194 12.2. Схемы построения датчиков и систем датчиков........................ 196 12.2.1. Двухпозиционные датчики проскальзывания........................ 198 12.2.2. Матричные сенсорные системы на основе двухпозиционных и пропор- циональных датчиков................................................. 200 12.2.3. Силомоментные сенсоры-фильтры и сенсоры-смесители. Схема построе- ния сенсора-фильтра................................................. 207 374
12.2.4. Силомоментные сенсоры-смесители, построенные по ортогональной схеме................................................................ 210 12.2.5. Методика тарировки сенсора-смесителя и определения компонент на- грузки............................................................... 213 12.2.6. Силомоментные сенсоры-смесители, построенные по неортогональной схеме................................................................ 214 12.2.7. Определение матрицы жесткостей упругого подвеса силомоментного сен- сора ................................................................ 216 12.2.8. Упрощенные схемы сенсора-смесителя. Определение расчетных зависи- мостей............................................................... 219 12.3. Принципы организации систем очувствления роботов..................... 222 12.3.1. Система очувствления на основе двухпозиционных датчиков....... 222 12.3.2. Система очувствления на основе пропорциональных датчиков...... 227 12.3.3. Организация искусственной податливости руки робота............ 231 12.3.4. Влияние схемы размещения датчиков на алгоритм обработки инфор- мации ............................................................... 234 12.3.5. Количество информации, доставляемой сенсорами. Информационные оценки системы очувствления.......................................... 239 12.3.6. Некоторые общие соображения и рекомендации, направленные на повы- шение быстродействия сенсорных систем роботов........................ 243 12.4. Алгоритмы обработки информации в робототехнических распознающих систе- мах ...................................................................... 246 12.4.1. Задачи, решаемые роботом с помощью технических видеосистем. Идеоло- гия построения алгоритма распознавания.......................... 246 12.4.2. Идентификация объекта по методу характерных точек. Определение положения бинарных датчиков.......................................... 249 12.4.3. Идентификация объекта по информации, содержащейся в его контуре. 255 12.4.4. Алгоритм отслеживания и аппроксимации контура................. 269 12.4.5. Определение центра тяжести контура и площади объекта.......... 274 12.4.6. Выбор характеристических признаков............................ 277 12.4.7. Алгоритм обучения системы. Автоматическое построение дерева решений задачи распознавания................................................. 281 12.4.8. Алгоритм идентификации объектов. Оценка объема вычислений....... 291 12.4.9. Дискретность рецепторного поля. Ее влияние на достоверность иденти- фикации и погрешности определения размера, положения и ориентации объекта.............................................................. 294 12.4.10. Повышение быстродействия сенсорной системы за счет совершенство- вания организации вычислительных процессов........................... 298 Литература............................................................ 300 Глава 13 Особенности разработки интерфейса человек-робот............................ 304 13.1. Способы программирования роботов..................................... 304 13.2. Способ прямого обучения.............................................. 306 13.3. Прямое обучение с автоматической коррекцией погрешностей позициони- рования................................................................... 309 13.4. Программирование с помощью команд.................................... 312 13.4.1. Структура программного обеспечения системы управления роботом... 317 13.4.2. Развитие языков программирования для роботов.................. 321 13.4.3. Структура и краткое описание системы программирования VAL..... 325 13.4.4. Система планирования движений и действий робота. Особенности построе- ния модели среды..................................................... 330 13.4.5. Организация взаимодействия программных модулей в системе управления роботом.............................................................. 337 13.5. Специфика применения мнемонических рукояток и особенности интерфейса человек-машина в копирующих манипуляционных системах...................... 340 375
13.5.1. Мнемонические рукоятки. Конструкции и области применения в робото- технике ........................................................ 340 13.5.2. Оценка качества системы "человек-машина"..................... 344 13.5.3. Уровень мнемоничности и его влияние на работу системы "оператор- манипулятор" ......................................................... 353 13.5.4. Синтез рационального интерфейса, исходя из адаптивных возможностей человека-оператора.................................................... 360 13.5.5. Динамические свойства механической системы и их влияние на эффек- тивность системы обучения............................................. 364 Литература........................................................... 369 Заключение................................................................ 372