
книги из ГПНТБ / Мясников, В. А. Программное управление оборудованием
.pdfдвигателями, управляющими движением руки. Координаты руки робота определяются в декартовой системе координат. Положение кисти представляется координатами конца пальца х, у, z, а поза —
углами Эйлера а, (3, у.
Основные подпрограммы (команды) приведены ниже. Подпрограмма MOVE 20 (t, х, у, z, а , |3, у) вычисляет шесть
углов для электромоторов 0Ъ 02, . . ., 0О, соответствующих пози ции (х, у, z) и позе (а, р, у), а также перемещает руку в указанное состояние. Аргумент t определяет тип данных (относительные или
абсолютные), а также признак использования тактильных дат чиков.
Эта подпрограмма состоит, в свою очередь, из трех следующих подпрограмм. Подпрограмма TRANS вычисляет текущее состоя ние потенциометров и преобразовывает угловые координаты су ставов в декартовы координаты руки, а затем преобразовывает эти координаты к углам 0Ь 02, . . ., 0О. Когда угол 0,- достигает желаемой позиции, начинает работать подпрограмма PULTAC. Она выключает соответствующий' сервопривод и возвращает управление главной подпрограмме THETA.
Подпрограмма MOVE 30 (t, х, у, 2 , а, (3, у, Да, Д|3) является
расширением предыдущей. Здесь движение может осуществляться с некоторой погрешностью Да, Д|3 для углов а и р .
Подпрограмма MOVE 32 (t, х, г/, 2 , хх, г/г/, zz, р 1г р 2) получает решение градиентным методом. Идентификаторы хх, г/г/, zz ука
зывают целевое назначение позиции плеча. Позиция конца пальца
и позиция плеча определяются с допусками |
и р2 соответ |
ственно. |
|
Подпрограмма MOVEOO (t, /, 0(.) изменяет i-й угол до зна
чения 0Г
Подпрограмма MOVE 10 (t, 0!, 02, 03, 04, 05, 0С) является рас
ширением MOVEOO. Она изменяет все шесть углов до значений
0i, . . ., 0в.
Подпрограмма RESET возвращает руку к начальному со стоянию.
Подпрограмма CONV20 осуществляет измерение углов, вы числение координат пальцев и печать их значений на пишущей машинке.
Подпрограмма CONV21 производит вычисление текущего состояния руки робота.
Подпрограммы OPEN, CLOSE управляют разжатием и сжа тием пальцев.
Для того чтобы робот мог использовать эти подпрограммы, необходим супервизор. Общение оператора с роботом происходит в режиме диалога с помощью пишущей машинки. Когда такая сложная машина как манипулятор управляется непосредственно с помощью пишущей машинки, малейшие ошибки могут привести к серьезным нарушениям. Поэтому необходимо строить систему на принципе многократной защиты.
24* |
371 |
Система содержит три программы: интерпретатор команд, редактор и исполнитель задачи. Интерпретатор команд осущест вляет интерпретацию команды, заданной с пишущей машинки, запрашивает данные, если это необходимо, потом выбирает необ ходимые инструкции и выполняет их. Для предотвращения оши бок, допущенных по невнимательности оператора, ЭВМ печатает сообщение об ошибке. Только после проверки правильности напе чатанной команды может быть напечатана следующая команда.
Редактор транслирует программу, написанную на входном языке на внутренний язык системы и редактирует ее. Элементы
цели представляются в ЭВМ как список (t, С, L, Т), |
где С — код |
||
элементарной |
инструкции; L — метка, относящаяся |
к |
данным; |
Т — указывает |
позицию следующего элемента. Задача |
предста |
вляется в виде линейного списка элементов. Запрограммированная задача, которая уже обработана редак
тором, может быть сразу же выполнена. В исполнителе задачи элемент задачи указывается метками г и J. С помощью i читается и декодируется С (i). Затем берутся требуемые данные, соответ ствующие L (I). Если форма данных соответствует С (i), то они
вставляются в инструкцию и последняя выполняется. Следую щий элемент задачи получает номер J ((). Таким образом, задача
выполняется постепенными шагами.
Все задачи, решаемые данной системой, представляются в виде символов. Система имеет некоторое множество базовых функций, с помощью которых можно представить сравнительно большое
количество различных задач. |
определяет |
элемент задачи |
|
Например, |
функция DEFINE |
||
GOX |
- MOVE20 (I, 100, |
0, 0, 0, 0, |
0) |
который соответствует конкретному действию
MOVE20 (/, 100, 0, 0, 0, 0, 0)
Функция СОМВШ определяет новый элемент задачи SLASH с помощью линейной комбинации GOX и GOY:
СОМВШ SLASH = GOX + 2GOY
Функция SEQENS выполняет задачу для последовательной цепочки символов:
SEQENS STAIR = GOX ! GOY ! GOX ! GOY
С помощью этих базовых функций, символы которых уже опре делены, можно описать уже более сложные задачи.
Предположим, что задача имеет вид:
SO = SI ! А2 ! АЗ ! S4 ! А5 |
; |
|
SI = |
A ll ! А12 ! А13 |
|
S4 |
= А41 ! S42 ! А43 |
; |
S42 = А421 ! А422
372
где А обозначает элемент задачи. Поэтому, если задача Sm опре
деляется выражением S,„ — АО ! SO, -то эта задача интерпре тируется как последовательность действий:
S,„ =- АО ! SO= АО ! SI ! А2 ! АЗ ! S4 ! А5 =
= АО ! А 11 ! А12 ! А13 ! А2 ! АЗ ! S4 ! А5 =
= АО ! A ll ! А12 ! А13 ! А2 ! АЗ ! А41 ! S42 ! А43 ! А5 =
= АО ! А11 ! А12 ! А13 ! А2 ! АЗ ! А41 ! А421 ! А422! А43 ! А5
Кроме того, в этой системе допустимы некоторые общие функ ции для автоматического синтеза и улучшения задач. Общая функция TRNSFR образует список шагов, которые нужно совер
шить руке, чтобы перенести объект из одной точки в другую, избежав препятствий. Препятствие при движении определяется с помощью чувствительных систем. На рис. 195 показано, как пе ремещается рука из точки S в точку F, избегая барьера В.
Подвижный робот Стенфордского научно-исследовательского института
В Стенфордском научно-исследовательском институте (США) разработан разумный робот, работающий по принципу Глаз—рука. Робот имеет механическую руку (похожую на руку человека) со многими степенями свободы, управляемую ЭВМ. Рука может держать предметы, переносить их и собирать в блоки различной формы. Сам робот, в отличие от вышеописанных конструкций, выполнен подвижным, что значительно расширяет возможности его применения.
Основные задачи системы: восприятие обстановки, ориенти ровка, целеустремленное перемещение, манипуляции предметами и самообучение.
373
Информация о внешнем мире поступает в систему от следующих четырех чувствительных систем.
1.Тактильная система. Она выполнена в виде набора гибких проволочек «кошачьих усов», работающих в двоичном коде. При столкновении с препятствием выключают приводные моторы, включают тормоза и передают информацию об этом в ЭВМ. Однако ЭВМ, получившая информацию, с какой стороны расположено ожидаемое препятствие, может подавить это «рефлекторное дей ствие» и дать команду тележке двигаться дальше или изменить направление движения. Для той же цели служат буферные уст ройства, снабженные датчиками давления.
Эта информация используется для создания «грубой» картины размещения предметов и записи в памяти ЭВМ, чтобы в дальней шем быть использованной для выбора оптимальных маршрутов перемещения.
2.Система определения расстояния. Установка имеет даль номер, который совместно с ЭВМ позволяет определять расстоя ние до предметов и стен комнаты. Расстояние определяется три ангуляционным методом. Дальномер измеряет расстояние в диа пазоне 0,5— 10 м с ошибкой менее 10%. Измерение угла произво дится при помощи светового луча, направленного на предмет, и его рассеянного отражения от предмета.
Дальномер расположен на головке, имеющей две степени сво боды — высотную и азимутальную. По команде ЭВМ происхо дит обзор обстановки путем перемещения головки в высотном и азимутальном направлениях. Данные вводятся в ЭВМ, что позво ляет создать более точную модель окружающей обстановки.
3.Система распознавания образов. Телевизионная камера установлена на той же головке, что и дальномер, и информация от нее поступает в ЭВМ одновременно с информацией от дально мера.
Объем информации, поступающей по видеоканалу, сводится к минимуму при помощи специального оборудования, выделяю щего только нужные для опознания предметы с заранее извест ными свойствами. Это осуществляется при помощи так называе мого пространственного дифференцирования видеосигналов, выделяющего только контрастные границы (зоны с бесконечными разрывами освещенности). Так, например, при наблюдении равно мерно освещенной поверхности сохраняется лишь информация о граничном контуре — все остальное опускается. Затем с по мощью электронной маски выделяются короткие отрезки, соответ ствующие ребрам предмета. Отрезки объединяются в длинные линии, образующие в конечном итоге схему контура предметов.
Таким образом определяются положение и ориентация объек тов, которые имеют различную освещенность участков, и в конеч ном итоге осуществляется их идентификация.
Система ориентации. Ориентация обеспечивается специальной навигационной системой, являющейся по существу системой прой-
374
денного пути. Некоторая точка пола экспериментального помеще ния выбирается за начальную. От этой точки ведется непрерывный отсчет поворотов двух ведущих колеси по этим данным вычисляются положение и направление движения тележки. Робот установлен на самоходной тележке, управляемой ЭВМ и перемещающейся при помощи четырех колес. Колеса приводятся во вращение от двух электродвигателей и обеспечивают перемещение тележки вперед-на зад и ее поворот вправо-влево. Частота вращения двигателей регулируется ЭВМ.
Положение телевизионной камеры и дальномера регулируется при помощи шаговых двигателей. Управление их поворотом, на клоном и фокусировкой осуществляется ЭВМ с помощью оптиче ских датчиков и счетчиков.
Робот соединен кабелем с ЭВМ, работающей в режиме разде ления времени. Команды для приводных двигателей непрерывно вырабатываются ЭВМ по программе. Сигналы датчиков и другие сигналы с подвижной части робота поступают в ЭВМ тоже по кабелю. Команды на движение и на сбор информации ЭВМ вы рабатывает в соответствии с программой «текущих действий». В свою очередь, эта программа приводится в действие програм мами более высокого уровня, которые задаются ЭВМ оператором через телетайп. Программа ЭВМ записана на специальном вход ном языке машины, рассчитанном на преобразование команд вы числений в последовательность кодовых электрических сигналов, воспринимаемых элементами ЭВМ.
Робот для выполнения сборочных операций по чертежу
Японская фирма «Hitachi Ltd.» разработала новую конструк цию робота Mark-I, который с помощью вычислительной машины может распознавать различные объемные предметы, имеющие до
девяти граней, и |
производить |
сборку узла в соответствии |
со сборочным чертежом. |
|
|
Робот, получивший шифр HJVJP, состоит из трех основных |
||
подсистем — глаз, |
мозг и рука |
(рис. 196). Подсистема глаз со |
стоит из двух телевизионных камер. Первая камера изучает структуру узла, данную в виде чертежа в трех проекциях, и опре деляет общую пространственную конфигурацию узла, показан ного на чертеже, форму и количество деталей, а также вид и поря док их сборки. Вторая камера изучает сами собираемые детали, произвольно установленные на сборочном столе, и определяет их форму, размеры и расположение. Когда вторая камера закан чивает изучение расположения деталей, она находит те детали, которые необходимы для каждой ступени их последовательной сборки в узел.
Подсистема мозг (вычислительное устройство) анализирует результаты изучения камерами чертежей и деталей и автоматически
375
программирует последовательность сборки узла. Когда этапы рас смотрения и принятия решения заканчиваются, механизм руки активизируется и начинает процесс сборки в соответствии с про граммой.
Зрительная система представляет собой телевизионные камеры типа видиком, действующие на основе системы со сканирова нием, которая аналогична системе стандартного телевидения. Площадь изображения делится на 768 000 элементов изображения (240 вертикальных и 320 горизонтальных).
|
Рис. 196. Схема робота фирмы «Hitachi Ltd.»: |
|||
1 — |
вычислительное |
устройство; |
|
2 —устройствовизуального контроля; |
|
|
3 |
—устройствообработкиданых |
|
При |
помощи |
устройства |
визуального контроля информация |
о каждом элементе изображения преобразуется из аналоговой формы в дискретную и передается в управляющую ЭВМ И1ТАС7250, которая имеет оперативную память 32 768 слов по 16 бит. ЭВМ может управлять телевизионной камерой, произвольно расширяя площадь обзора и позволяя таким образом получать более широкую информацию, а также может подавать команды телевизионной камере для регулирования точности сфотогра фированного изображения с целью деталировки изображения.
Уменьшая размер рассматриваемой площади (угла зрения линз), камера отбрасывает все ненужные предметы из поля зре ния. Блок управления зрением может также разделитр фотоизо бражение на две контрастные области, яркую и темную (ограни чиваясь определенным пределом, полученным по инструкции с помощью ЭВМ), или может дифференцировать изображение предметов в виде описания их общих черт.
376
Загрузочно-разгрузочный механизм (рука робота) представ ляет собой шарнирное сочленение с зажимным механизмом типа параллельных тисков. Семь независимых сервомеханизмов обе спечивают семь движений руки и кисти: перемещение по трем осям, вращение вокруг каждой из осей и захват. Для управления загрузочно-разгрузочными работами имеются регистратор дан ных и числовые фазовые модуляторы, которые действуют как преобразователи данных из аналоговой формы в цифровую и как средство обнаружения ошибок в сервомеханизмах. Сигнал управ-
Рис. 197. Пример чертежа детали в трех проек циях и ее трехмерная конфигурация
ленпя сравнивается с сигналами обратной связи от датчика поло жения и подается в серводвигатель постоянного тока с тиристор ным управлением.
Для решения задач по распознаванию предметов в течение 1 мин. и дальнейшему управлению процессом сборки были разра ботаны три подпрограммы (хранение которых занимает объем па мяти машины на 3000 слов): 1) подпрограмма изучения чертежа; 2) подпрограмма определения предметов; 3) подпрограмма обра ботки информации.
Первоначальная инструкция для робота дается в виде прибли зительного общего плана-чертежа собираемого узла в трех про екциях (рис. 197). Робот при помощи телекамеры сначала скани рует план и определяет все линии. На основе двухкамерной ин формации, полученной таким образом, робот затем проверяет соотношения между линиями и точками пересечения двух линий, подсчитывает пространственные точки, линии и плоскости и кон струирует монтаж трехмерной конфигурации. Робот также имеет способность предвидеть и подтверждать, является ли окончание линии краем точки монтажа или вспомогательное изображение выглядит подобно точке.
377
Деталь, показанная на рис. 197, состоит из параллелепипеда с прорезанной канавкой и двух треугольных призм, смонти рованных на этом параллелепипеде.
После составления списка точек, линий и плоскостей в трех мерном пространстве начинаются составление и расчет структур ного изображения сборки. При этом отбрасывается вся ненуж ная информация. Когда этот этап заканчивается, созданное изображение преобразуется в независимые составные детали и на чинается изучение возможности их сочленения и сборки. Эти дан ные передаются в систему обработки информации. Когда робот находит, что рассматриваемая линия относится к двум плоскостям, то такая связь считается плотной, а когда линия относится к более чем двум плоскостям, то связь определяется как свободная. Таким образом, робот раздробляет ряд плоскостей на несколько групп, или ячеек.
На рис. 198 показано, как собранные плоскости раздроб ляются на ряд групп. После того как плоскости подразделены на несколько групп, робот собирает вместе открытые группы, чтобы сконструировать закрытые группы и записать их в список деталей. Поверхности, относящиеся к двум деталям, рассматриваются как контактирующие.
На рис. 199 приведены примеры результатов чтения чертежа счетно-вычислительным устройством.
Для определения предмета используется яркость отражения на сборочном столе света от каждой поверхности собираемых пред метов.
Степень яркости определяется с помощью камеры типа видмкон. Сначала она преобразуется в 5 бит цифровой информации,
азатем поступает в счетно-вычислительное устройство, которое
всвою очередь определяет вид, положение, форму и размеры пред метов. Возможность определения цвета позволяет легче опреде лять предмет. Однако это не всегда можно использовать па прак тике, так как иногда детали имеют необычный цвет. Робот фирмы «Hitachi Ltd.» пока оборудован только устройствами для опреде ления яркости, а при экспериментах применяются черно-белые
образцы.
Робот может манипулировать с предметами простой много гранной формы, состоящей из плоских поверхностей, особенно в виде многоугольных призм, обрабатываемых на фрезерных станках. Первым шагом алгоритма определения предмета является пространственная дифференциация изображения, которое по падает в запоминающее устройство. Это устройство преобразует изображение в высококонтрастное с особенно сильно выраженными гранями предмета. Затем маскированием других предметов выби рается изображение одного из предметов; положение каждой его грани исследуется методом зондирования и регистрируется запо минающим устройством в списке. Линии, которые определяются таким образом, иногда не совсем отчетливы. Поэтому робот пере-
378

Свободное
Z C1 7 T 7
1 / 1- -
1 / 7
\^_
/
с
7
Ряд
опасностей
Рис. 198. Процесс выделения отдельных деталей из трехмерной структуры
/л
Рис. 199. Примеры результатов чтения чертежа с помощью ЭВМ
страивает их, выполняя несколько операций (таких, как ликви дация ненужных ответвлений). Даже когда некоторых граней недостает, робот может запомнить их с помощью анализа простран ственной структуры предмета. Информация, полученная таким образом, определяет ориентирование предмета в системе коорди нат на столе и его вид. Затем процесс повторяется для каждого предмета до тех пор, пока не будут определены все предметы на изображении.
После чтения п определения предметов робот начинает «про думывать» процесс сборки. Сначала предметы на столе классифи цируются на две категории: нужные и ненужные для сборки и вы бирается необходимое число нужных деталей. После этого порядок сборки определяется обратным порядку разборки с помощью счетновычислительного устройства, производящего анализ возможной последовательности разборки сложных деталей по частям (рис. 200, 201). Путем анализа положения предметов выбирается наиболее благоприятный порядок, при котором нет необходимости в повто рении манипуляции предметом с помощью изменения положения
зажима.
Затем, как видно из рис. 201, робот выбирает две взаимно параллельные поверхности деталей для их захвата (исключая при этом контактирующие поверхности деталей). Далее определяются путь руки, положение узла и направление подачи (с помощью вычисления суммы векторов контактирующих поверхностей). Когда все это выполнено, робот подсчитывает угловые перемеще ния каждого шарнира руки и передает соответствующие данные регистрирующему устройству. Если в процессе принятия решения обнаруживается недостача некоторых деталей на сборочном столе или механизм руки не может достичь какого-либо предмета, ро бот записывает информацию об этом на пишущей машинке и ждет новых инструкций от человека.
Обучающая система робота включает в себя рабочую часть
ирабочий объем визуальных изображений, превышающий 400 000 слов памяти. На обработку изображения уходит 240 с, на чтение чертежа 20 с, на определение каждого предмета 50 с, на принятие решения 10 с и на движения сборки 180 с.
Рука робота способна удерживать детали с усилием до 1 кгс
иустанавливать их в заданное положение с точностью до 3 мм.
В1971 г. робот в таком исполнении мог выполнять упрощен ные сборочные операции с 15 деталями (хотя в проведенных экспе риментах использовалось только семь деталей, из которых самая сложная — прямоугольная деталь с девятью поверхностями и прямой канавкой).
Разработка комплекса, стоимость которого составляет 56 000 долл, (исключая стоимость ЭВМ), проводилась группой инжене ров фирмы «Hitachi Ltd.» в составе 10 чел. в течение 1 года. По утверждению представителя фирмы, предполагается расширить круг распознаваемых роботом объектов. За сборочными чертежами
380