передачу полученных результатов в систему управления робота. Создание СТЗ робота, отвечающей ее конкретному функцио-
нальному назначению, включает следующие этапы: 1) постановку задачи на содержательном уровне и составление технического задания на СТЗ; 2) выбор структурной и функциональной схем СТЗ; 3) математическую формулировку задач функциональных блоков СТЗ; 4) разработку алгоритмов решения функциональных задач; 5) выбор средств реализации алгоритмов и конкретизации технических характеристик аппаратных, аппаратно-программных и программных блоков СТЗ в соответствии с техническим заданием; 6) разработку аппаратного и программного обеспечения СТЗ.
1.1.2.Использование видеоинформации в системах управления роботами
Сенсорная система робота должна снабжать его систему управления информацией о текущей ситуации во внешней среде: наличии, типе, параметрах, местоположении и ориентации объектов манипулирования (воздействия); правильности и качестве выполнения роботом технологических операций и/или других действий; существовании препятствий и путях их обхода и т. д. В систему управления поступают также задания (команды) роботу от человека-оператора, других роботов, ЭВМ высших уровней, технологического оборудования или иных устройств.
Всовременных робототехнических системах[3,5,7] наиболее предпочтительна многоуровневая иерархическая структура управления.
Всоответствии с приведенной схемой информация от СТЗ, вообще говоря, может поступать на разные уровни системы управления. Например, данные о расположении препятствий бывают, нужны на высшем уровне для построения модели рабочей среды в целях планирования действий робота; результаты классификации объектов могут потребоваться на стратегическом уровне для расчленения общего плана действий на конкретные манипуляционные операции, задания их последовательности и параметров; сведения
оместоположении и ориентации объектов необходимы для формирования на тактическом уровне требуемых движений рабочего органа и звеньев манипулятора, по которым, в свою оче-
21
редь, строятся программные законы согласованного изменения соответствующих степеней подвижности: информация об отклонении фактической траектории (скажем, сварного шва) от запрограммированной может быть использована непосредственно на исполнительном уровне для выработки управляющих сигналов на приводы при отработке программы в целях коррекции перемещения рабочего органа робота.
В реальных робототехнических системах часто трудно разграничить задачи описанных уровней управления. Функции верхних уровней во многом берет на себя человек-оператор. Нижний уровень управляющей системы физически может быть реализован непосредственно в силовых блоках исполнительных устройств, а другие уровни обычно строятся на базе универсальных или специализированных вычислительных блоков.
Общая функциональная схема, соответствует случаю подключения СТЗ к существующим устройствам программного управления роботов, которые обычно принято разделять на устройства циклового, позиционного, контурного и позиционноконтурного управления. Роботы с цикловым программным управлением — это простейшие позиционные роботы, управляющая программа которых содержит сведения о последовательности (цикле) действий, а геометрическая информация для команд программы, определяющая собственно перемещения исполнительных механизмов, задается настройкой упоров, выключателей, реле времени и т. п. В позиционных системах числового программного управления программируется конечное положение рабочего органа робота — точка позиционирования — для каждого рабочего шага (кадра) и, возможно, скорость перехода в нее. При контурном управлении состояние рабочего органа определено в любой момент времени, т. е. управляющая программа полностью задает желаемую пространственно-временную траекторию движения робота. Позиционно-контурные (комбинированные) устройства сочетают два последних способа программного управления.
Следует выделить в особую группу контрольноизмерительные роботы[4], в которых видеосенсоры и/или другие датчики внешней информации устанавливаются на рабочем органе манипулятора, что позволяет проводить измерения с помощью этих
22
датчиков в требуемых местах рабочей зоны робота по заданной программе. Информация от СТЗ в собственной системе управления контрольно-измерительного робота может непосредственно и не использоваться, а просто передаваться человеку-оператору или ЭВМ высшего уровня. В связи с этим рассмотрим способы включения СТЗ в робототехнические комплексы. Если СТЗ мобильных роботов обычно устанавливаются на самой движущейся платформе и перемещаются вместе с роботом, то при зрительном очувствлении манипуляционных роботов используются два основных метода установки видеосенсоров.
Вбольшей части промышленных робототехнических систем с техническим зрением видеосенсоры устанавливаются изолированно от манипулятора (обычно их располагают неподвижно сверху или сбоку рабочей сцены). Можно использовать несколько видеосенсоров для осмотра сцены с разных точек, возможны управляемые перемещения «линий зрения» сенсоров. Независимая от манипуляционного робота установка видеосенсоров обладает тем достоинством, что геометрические соотношения, связывающие их системы координат с системой координат рабочего пространства, не меняются в процессе работы. Кроме того, многие операции; СТЗ и управляющего устройства манипуляционного робота можно
выполнять параллельно, когда манипулятор выходит из поля; зрения видеосенсора. С другой стороны, именно при захватывании объектов, когда их видеть важнее всего, рука робота загораживает, часть рабочей сцены.
Вэтом смысле определенное преимущество имеют СТЗ типа, «глаз на руке»: в них сам манипулятор никогда не попадает в поле зрения видеосенсора. Важно также, что они позволяют наводить, рабочий орган на объект без измерения абсолютных координат, последнего. Тем не менее, роботы с «глазом на руке» пока распространены сравнительно нешироко, в первую очередь, вследствие, большой сложности «привязки» получаемой количественной информации о геометрии объектов к неподвижной координатной системе. Сдерживающим фактором до последнего времени являлся, также дефицит датчиков видеоинформации достаточно малых размеров и массы, пригодных для установки на
руке |
робота. |
Наиболее, |
перспективными |
представляются адаптивные |
робототехнические |
комплексы, в которых сочетаются обе рассмотренные выше схемы установки видеосенсоров, а также используются комбинации СТЗ с сенсорами других модальностей в единой мультисенсорной системе.
Однако независимо от способа размещения видеосенсоров полученная о их помощью информация используется для управления адаптивным роботом в соответствии с одним из двух следующих
принципов. Первый базируется на непрерывном (или квазинепрерывном) поступлении видеосигнала обратной связи для коррекции траектории движения рабочего органа робота. По этому принципу
действуют сервосистемы, минимизирующие отклонения текущего, состояния рабочего органа от желаемого, которое определяется по данным визуального наблюдения за целевым объектом. Второй принцип основан на вводе информации от СТЗ в устройство управления робота дискретными порциями. Каждая такая порция служит для выработки программных движений на очередной интервал времени, в течение которого робот перемещается в следующее целевое положение «вслепую», т. е. без непрерывной визуальной обратной связи.
Каждый из указанных принципов использования видеоинформации для управления роботами имеет свою сферу приложения. Так, адаптивные сварочные роботы, визуально определяя стык свариваемых деталей, корректируют движение головки вдоль шва при непрерывном поступлении сигнала обратной связи. Такой способ находит применение при взятии движущихся деталей с конвейера, слежении за полосой, направляющей движения мобильного робота, поддержании заданного расстояния от краскопульта до окрашиваемой поверхности и т. п. В рамках этого подхода в последние годы разрабатываются методы визуального сервоуправления непосредственно по виду получаемого СТЗ изображения или по параметрам, рассчитываемым в результате его обработки. Так, в системе «глаз на руке» сервопривод перемещает манипулятор до тех пор, пока не будут достигнуты нужные значения таких параметров, как положение какой-либо выбранной точки объекта в системе координат «глаза», площадь изображения определенной грани объекта, отношение площадей соседних граней
234
и т. п. Хотя системы с «визуальным сервоуправлением», несомненно, перспективны, до сих пор намного шире распространены СТЗ, основанные на втором из описанных выше принципов — «целеуказании». Рассмотрим несколько подробнее методы использования зрительной информации в таких СТЗ роботов.
В простейшем случае по результатам работы СТЗ на основании априорно указанных условий принимается решение только о запуске или останове (прерывании) заранее заданной программы действий робота, уходе на ту или иную жесткую подпрограмму, изменении последовательности выполнения команд управляющей программы, полная информация о каждой из которых должна быть внесена в управляющее устройство еще до начала работы робота.
Более широкие возможности обеспечиваются при адаптивном изменении самих управляющих программ робота в соответствии с фактической обстановкой, определяемой по информации от СТЗ. Адаптивные роботы способны автоматически формировать движения в процессе работы без необходимости априорного указания человеком детальных законов изменения всех управляемых координат.
Рассмотрим, например, сравнительно несложную задачу адаптивного позиционирования манипулятора при захватывании предварительно неориентированной детали, лежащей на рабочей плоскости. Робот должен взять объект, положение и ориентация которого на рабочей плоскости определяются СТЗ по информации с телекамеры, неподвижно укрепленной над сценой (рис. 1.1). Введем следующие системы координат: ОаХаУаZа — абсолютная; 00X0Y0Z0
— связанная с объектом; ОрХрУрZр — связанная с основанием робота; 03X3Y3Z3 — связанная с захватным устройством (рабочим органом) робота; 0кXкFкZк — связанная с телекамерой, точнее — с ее картинной плоскостью, на которую отображается изображение рабочего поля.
При расчете переходов из одной системы координат в другую очень удобен математический аппарат однородных координат. Однородными координатами точки в трехмерном пространстве называются четыре числа h1, h2, h3, h4, не равные все одновременно нулю и связанные с ее декартовыми координатами х, у, z соотношениями х = h1/h4; у = h2/h4; z = h3/h4; Например, точке (х, у, z)
можно поставить в соответствие вектор однородных координат (h1, h2, h3, h4)T.C помощью однородных координат можно компактно описать переход из некоторой координатной системы 00XYZ в систему O‘X‘Y'Z' , сдвинутую и повернутую относительно первой:
h' T01h
где h' — вектор однородных координат в новой системе; h — вектор однородных координат в старой системе, а матрица перехода имеет вид
|
xx' |
yx' |
zx' |
Oox' |
T 1 |
xy ' |
xx' |
xx' |
Ooy' |
0 |
xz ' |
xx' |
xx' |
Ooz ' |
|
||||
|
0 |
0 |
0 |
1 |
Здесь последний столбец представляет собой вектор однородных координат начала исходной системы в новой координатной системе, а ЗхЗ-матрица, стоящая в верхнем левом углу, описывает поворот старой системы относительно новой (ее элементами являются координаты единичных векторов осей исходной системы в новой после совмещения их начал путем параллельного переноса).
Чтобы выполнить задание, в рассматриваемом примере робот должен вывести захватное устройство в такое положение, при котором объект оказался бы между его губками, а их ориентация обеспечивала надежное удерживание объекта. Положение и ориентацию захватного устройства можно описать в виде 4x4матрицы перехода TR, определяющей поворот и параллельный перенос системы 03X3Y3Z3 относительно какой-либо выбранной координатной системы, в которой наиболее удобно задавать требуемое состояние захватного устройства. Для каждого конкретного типа объекта манипулирования (и для каждого устойчивого положения этого объекта в
2625
Рис. 1.1. Пример задачи взятия роботом неориентированного объекта по информации от СТЗ
рабочей плоскости) можно заранее выбрать наиболее удобное номинальное положение захватывания, т. е. выписать матрицу перехода Т°3, задающую требуемое (целевое) положение системы координат захватного устройства 03X3Y3Z3 в системе координат
00X0Y0Z0, связанной с объектом.
На основании рис. 1.2 можно заключить, что положение системы 00X0Y0Z0 в картинной плоскости телекамеры (т. е. в системе координат 0KXKYKZK) в данном случае удается описать матрицей
27
|
|
cos |
sin |
0 |
xк |
T |
к |
sin |
cos |
0 |
yк |
|
|
|
|
|
|
0 |
0 |
0 |
1 |
0 |
|
|
|
||||
|
|
0 |
0 |
0 |
1 |
где
— угол ориентации объекта в рабочей плоскости, который
может быть найден СТЗ в реальном времени, как и координаты хк, ук геометрического центра силуэта объекта.
При установке и калибровке телекамеры с помощью специ-
альных методик можно определить матрицу перехода Tка из си-
стемы 0KXKYKZR в абсолютную систему координат OaXaYaZa. Аналогично должны быть известны местонахождение основания
робота и его пространственная ориентация, т. е. преобразование Tкр
из абсолютной системы OaXaYaZa в систему 0PXPFPZP.
Напомним, что именно в системе координат 0PXPYPZP, связанной с основанием робота, решается обратная кинематическая задача: по заданному состоянию (положению и ориентации) захватного устройства определяются требуемые («программные») значения всех управляемых координат робота. Зная матрицы
перехода Tар , Tка , Tок , Tзо , путем их последовательного перемно-
жения слева можно рассчитать требуемое состояние захватного устройства в системе OpXpYpZp как суперпозицию перечисленных преобразований: (Tка ) R = Tар Tка Tок Tзо .
Заметим, что можно сразу произвести калибровку телекамеры, так, чтобы, миновав промежуточные переходы в абсолютную систему координат, получить матрицу, связывающую системы
0KXKYKZK и OpXpFpZp. С использованием этой матрицы Tкр расчет
программного состояния захватного устройства по очередной порции информации о координатах хк, ук и ориентации
объекта,
поступающей от СТЗ, несколько упрощается: (Tка ) R = Tка Tок Tзо .
Итак, в данном примере СТЗ обеспечила целеуказание системе управления робота, которая по матрице (TR)P может решить задачу адаптивного позиционирования, т. е. определить программные
28
значения всех управляемых координат робота для текущего рабочего интервала и выработать управляющие воздействия на исполнительные приводы для отработки оперативно сформированных программных значений, что и позволяет вывести захватное устройство (уже в отсутствие постоянной визуальной обратной связи) в нужную точку пространства с требуемой ориентацией.
Попеременное выполнение аналогичных описанным выше этапов целеуказания от СТЗ, определения следующего желаемого состояния рабочего органа и решения обратной кинематической задачи для упорядоченной последовательности «опорных» точек дает возможность осуществить адаптивное формирование пространственной траектории движений робота (в том числе с обходом препятствий). Если выбрать достаточно малый интервал между соседними точками, то с использованием соответствующих методов интерполяции можно в адаптивном режиме обеспечить контурное управление роботом, позволяющее перемещать его рабочий орган по требуемому пространственно-временному закону (например, вести сварку с заданной скоростью на основании видеоинформации о фактическом расположении серии точек стыка свариваемых деталей). Очевидно, что такой способ является альтернативой подходу с непосредственной визуальной коррекцией траектории в контуре непрерывной визуальной обратной связи без промежуточного расчета программных движений.
Способы использования видеоинформации в системах управления мобильных роботов в принципе можно свести к тем же вариантам, которые были рассмотрены выше для манипуляционных роботов:
изменение последовательности выполнения действий, каждое из которых полностью определено своей жесткой программой, на основании сигналов от СТЗ в соответствии с заранее указанными условиями;
адаптивная коррекция заданной траектории перемещения мобильного робота на основании видеоинформации, характеризующей его отклонение от требуемого пути;
целеуказание (определение с помощью СТЗ относительного положения робота и цели) для адаптивного наведения робота;
адаптивное формирование маршрута (прокладка трассы) мобильного робота в реальном времени по данным текущего
29
осмотра местности;
управление исполнительными механизмами шагающих аппаратов (с теми же вариантами использования данных от СТЗ).
В заключение следует отметить, что, хотя использование видеоинформации в системах управления роботами позволяет обеспечить им широкий круг дополнительных функциональных возможностей, целесообразно выделить два принципиально различных класса роботов с визуальным очувствлением.
Один класс составляют роботы, у которых в процессе работы изменяется только последовательность выполнения команд заранее заданной управляющей программы в зависимости от наличия или отсутствия сигналов СТЗ. Организация условных переходов для оперативного воздействия на ход жестких программ может быть обеспечена путем подключения СТЗ к устройствам как циклового, так и позиционного, контурного и позиционно-контурного управления. Несмотря на наличие средств внешнего очувствления, такие роботы, как известно, относятся к роботам с программным (а не адаптивным) управлением.
Роботы с адаптивным управлением, составляющие другой класс очувствленных роботов, отличаются способностью автоматического изменения (формирования) управляющих программ непосредственно в процессе работы на основе информации (в том числе видеоинформации) о контролируемых параметрах внешней среды. В адаптивном режиме можно организовать как позиционирование рабочего органа робота, так и его движение по желаемой траектории, сопрягая СТЗ соответственно с позиционными или контурными (позиционно-контурными) устройствами программного управления. Перейдем к рассмотрению специфики методов и средств визуального очувствления, обусловленной проблемой создания адаптивных роботов о техническим зрением.
1.1.3.Специфические требования к техническому зрению адаптивных роботов
Специфика робототехнических задач обусловлена наличием множества ограничивающих факторов[8,9,10,11]. Некоторые из них приходилось учитывать и в традиционных применениях
30