Книга
Книга
ОГЛАВЛЕНИЕ
Предисловие редактора перевода 7
Предисловие редактора 10
Глава 1. Обзорные статьи 12
Робототехника второго поколения. А. Пью 12
Техническое зрение в промышленности Л. Россол 21
Глава 2. Техника обработки визуальной информации 30
Обработка бинарных изображений. П.В. Китчин, А.Пью’ 30
Поиск и распознавание частично видимых объектов: метод выделения локальных признаков. P.O. Болле, Р.А. Кэйн 47
Интеграция системы распознавания деталей и промышленного робота. Г. Нер, П Мартини 83
Оценка производительности СТЗ. С.А. Розен, Дж. Дж. Глисон 94
Глава 3. Исследования в области технического зрения 101
Адаптивное визуальное управление роботами. А. С. Сандерсон, Л.И. Вейсс . . . . Ю2 Использование телевизионной системы в замкнутой системе позиционного управления механизмами. П.И. Кулон, М. Ногарэ 112
Гибкая СТЗ. О.Д. Фожера, Ф. Жермен, Г. Кризе, Ж.Д. Буасонна, М. Гербер, Ж. Понс, 3. Пошон, Н. Айяш 124
Использование конического светового потока для распознавания объектов.
Дай Вэй, М. Джини 139
Глава 4. Разработки в области управления дуговой сваркой 147
Современные методы использования анализаторов изображения для управления роботами в промышленности. Ф. Виллере 148
Анализатор визуальной информации для сварочных роботов. Т. Бамба, X. Маруяма, 3. Оно, Я. Сига 156
Робототехническая система дуговой сварки, управляемая на основе анализа визуальной информации. И. Масаки 164
Современные методы использования визуальной обратной связи при дуговой сварке тонких стальных листов. В.Ф. Клоксин, П.Г. Дэви, С.Г. Морган, А.Р. Вайдлер 170
Глава 5. Автоматическая сборка и подача деталей иа обработку 184
Интеллектуальный робот-сборщик. М. Коно, X. Хорино, М. Исобэ 184
Визуальное управление простыми сборочными операциями. П. Сарага, Б.М. Джонс 193
Робототехническая система, извлекающая цилиндрические детали из бункеров. Р.Б. Келли, Дж. Р. Бирк, Г.А.С. Мартинс, Р. Телла 206
Гибкий сборочный модуль с визуально управляемым устройством подачи деталей. У.Б. Хегинботам, Д.Ф. Барнс, Д.Р. Пэрдью, Д. Дж. Ло 226
Глава 6. Промышленное использование СТЗ 233
Сортировка отливок с помощью СТЗ на заводах фирмы "Дженерал Моторе” в Канаде, Р.Д. Бауман, Ж.А. Вильмхерст 233
Использование методов распознавания образов в условиях промышленного производства. Ж.-П. Герман и др 245
Устройства окраски с управлением от телевизионной системы Е. Джонстон . . 254 Робототехника в кузнечном производстве. Р. Кэлли, Дж. Бирк, Дж. Дес- симо, X. Мартинс, Р. Телла 263
Автоматическое украшение шоколадной продукции с использованием технического зрения робота. А. Дж. Крон шоу 271
Глава 7. Серийно выпускаемые СТЗ роботов 276
Система технического зрения ОМУ. П.Ф. Хьюкин, X. Дж. Фукс 277
Система технического зрения робота ПУМА/ КУ-100. Б. Карлайсл С. Рот,
Дж. Глисон, Д. Мак-Ги 284
Оптоэлектронный анализатор визуальной информации в составе гибкой сборочной производственной системы. В. Брюн, К. Биттер 295
Система технического зрения с разделением сбора и обработки информации. Дж.И. Робертсон 3Q5
Система полутонового технического зрения фирмы ’’Вестингауз”, предназначенная для управления и контроля в реальном масштабе времени. А.Г. Маклин, Г.Е. Тинсдейл 310
Список дополнительной литературы 32Q
ПРЕДИСЛОВИЕ РЕДАКТОРА ПЕРЕВОДА
Современный опыт использования робототехнических систем в промышленности свидетельствует о необходимости дальнейшего развития интеллектуальных и сенсорных возможностей роботов. Ни у кого не вызывает сомнения, что роботы раскроют все свои возможности только с применением средств очувствления, центральное место среди которых занимает техническое зрение. В области технического зрения в последнее время достигнуты большие успехи, и сейчас специалистам хорошо известны преимущества и особенности робототехнических систем, снабженных техническим зрением. Являясь, несомненно, технологией будущего, системы технического зрения (СТЗ) находят тем не менее уже сейчас определенное применение в производственных системах. Оснащение роботов системами технического зрения обеспечивает существенное расширение их технологических и функциональных возможностей. Восприятие и обработка визуальной информации о текущем состоянии технологического процесса, об относительном расположении и ориентации схвата робота и объектов манипулирования позволяет автоматизировать такие операции, как сварка, сборка, окраска, сортировка и др. Основные функции СТЗ в работе систем управления промышленными роботами сводятся к локации рабочего пространства, распознаванию образов, измерению статических и динамических характеристик различных объектов и т.д. Необходимо отметить также, что автоматический контроль выпускаемых изделий с помощью СТЗ позволяет освободить операторов от монотонной и утомительной работы.
Как известно, зрение — это способность формировать описание объектов по их изображениям. Техническая реализация этой способности затруднена из-за того, что преобразования, с помощью которых объекты отображаются в виде зрительных образов, сводятся к выделению отдельных их свойств, т.е. к получению информации о форме объекта, поверхностном отражении, текстуре, цвете, движении и др. Поэтому в процессе анализа объекта необходимо определить его компоненты и затем при описании объекта представить его с помощью основных физических характеристик, которые называются базовыми компонентами изображения. Таким образом, техническое зрение есть процесс выработки рациональных символических описаний визуальной обстановки, составленных на основе анализа данных об изображении.
Все операции по анализу изображений выполняются с помощью разнообразных видеодатчиков, специальных источников структуризован- ного освещения и современных вычислительных средств, снабженных соответствующим программным обеспечением.
В настоящее время, когда в промышленности уже начинают эффективно применяться некоторые упрощенные СТЗ, исследователи продол- z жают интенсивные поиски рационального решения этой проблемы. Существующие системы распознают, как правило, сравнительно небольшое количество объектов, расположенных вполне определенным образом. Существенным ограничением этих систем является также их невысокое быстродействие.
В перспективных разработках в области СТЗ основное внимание уделяется расширению функциональных возможностей, повышению быстродействия и гибкости системы, а также миниатюризации и стандартизации. Предполагается использование пассивных и активных стереоскопических систем восприятия объемной информации о трехмерных сценах с использованием различных управляемых типов структуризован- ного освещения. Эти системы ориентируются на мощные языки программирования высокого уровня.
Рядом специалистов высказывается мнение, что информационные возможности СТЗ выходят далеко за рамки функциональных возможностей промышленных роботов и они могут самостоятельно использоваться в различных типах гибких производственных процессов.
Предлагаемая советскому читателю книга написана группой ведущих зарубежных специалистов в области технического зрения. По своему содержанию и направленности эта книга занимает особое место среди других книг, посвященных данной тематике. Прежде всего необходимо отметить многосторонний охват вопросов, относящихся к техническому зрению роботов. В ней изложены сведения, относящиеся к элементной базе, различным техническим устройствам, входящим в СТЗ, а также сведения, касающиеся новых принципов обработки и распознавания визуальной информации. Эти системные вопросы в таком виде и объеме впервые изложены в подобном издании.
Основу книги составляют описания СТЗ, опубликованные ранее в различных технических журналах и трудах конференций. Приводимая здесь информация (с учетом приложения, составленного редактором перевода и включающего дополнительную библиографию отечественных авторов) позволяет получить достаточно полное представление о разработках СТЗ на современном этапе развития этой области техники.
Рассмотрение СТЗ, осуществляющих различные виды обработки визуальной информации, их возможных структур построения и различного использования проведено с учетом упомянутых выше принципиально качественных изменений, возможных при построении таких систем - на основе новейших элементов, средств структуризованного освещения, современных вычислительных средств и эффективного программного обеспечения. Рассмотренные в книге разнообразные примеры применения таких систем расширяет представления об их возможностях.9
В разделах книги, относящихся к построению различных систем и способам анализа визуальной информации, представлены некоторые новые общие концепции построения систем этого класса. В книге показано, что роль СТЗ не ограничивается простой заменой действующих 8
систем, а открывает совершенно новые, не существовавшие ранее функциональные возможности робототехнических систем.
Большой фактический материал, относящийся к построению различных систем, элементной базе, схемам и их характеристикам, придает определенную ценность книге как справочному пособию по СТЗ.
В этом кратком предисловии не стоит давать исчерпывающую оценку книги, тем более заниматься ее подробным критическим разбором. Хотелось бы лишь отметить, что она несомненно будет с интересом прочитана представителями многих научных и инженерных специальностей, чему немало способствуют легкий и ясный способ изложения, оригинальность подходов, единая концепция, богатый набор простых для понимания примеров.
Материал изложен на инженерном уровне и несмотря на то, что некоторые фактические данные (относящиеся, например, к параметрам некоторых элементов оборудования) к моменту выхода из печати этой книги уже несколько устарели, она представляет несомненную ценность для специалистов в области технического зрения роботов и робототехники.
Книга рассчитана на широкий круг читателей. Можно надеяться, что ее с интересом прочтут разработчики робототехнических систем, технологи соответствующих производств, конструкторы робототехнического оборудования, студенты высших учебных заведений. Для тех, кто применяет системы технического зрения, полезными будут сведения об их конкретных оригинальных реализациях и соответствующих характеристиках.
Проф, ГЛ.Катыс
ПРЕДИСЛОВИЕ РЕ ДА КТОРА
В последнее время проблемы связанные с созданием технического зрения роботов выделились в самостоятельную область робототехники, имеющую свои специфические особенности. По-видимому, первым значительным изданием, посвященным техническому зрению роботов, является книга ’’Computer Vision and Sensor-Based Robots”, Plenum Press, 1979, под редакцией Додда (G.G. Dodd) и Россола (L. Rossol). В ней представлены материалы симпозиума по техническому зрению и сенсорным устройствам роботов, проведенного исследовательской лабораторией фирмы "Дженерал Моторе” (General Motors) в Уоррене, штат Мичиган, США, в 1978 г.
Техническое зрение роботов и их сенсорные устройства явились темой международной конференции, проведенной в Стратфорде, Англия, в мае 1981 г. В ноябре 1982 г. состоялась вторая конференция в Штутгарте, ФРГ. Большое число представителей, которых собрала эта конференция и вполне понятный интерес специалистов к проблемам технического зрения роботов послужили основными стимулами опубликования этого сборника статей.
Исследователи и пользователи, впервые сталкивающиеся с проблемами зрения роботов, обнаруживают, что существует достаточно много публикаций, посвященных различным аспектам машинного зрения. Часть этих публикаций составляют работы, касающиеся непосредственно СТЗ роботов. Границы этой области, лежащей на стыке различных приложений машинного зрения, не так просто определить. Даже опытные специалисты иногда затрудняются провести четкую грань между автоматизированным техническим контролем и техническим зрением роботов.
Авторы настоящего сборника - ученые и специалисты промышленности, которые внесли ощутимый вклад в развитие СТЗ роботов, а вошедшие в сборник статьи (частично уже ранее опубликованные) являются их наиболее представительными работами в данной области. Цель книги - собрать воедино наиболее значительные труды исследователей различных аспектов проблемы технического зрения роботов и сформировать ’’ядро знаний", дающее представление о сегодняшнем состоянии дел в этой отрасли робототехники.
Первые две статьи составляют вводный обзор, подготавливающий читателя к восприятию последующих работ. Остальные статьи посвящены различным вопросам использования технического зрения в робототехнике и существующим в настоящее время промышленным СТЗ. Такими вопросами являются, например, создание удовлетворительных зрительных сенсоров, освещение рабочей зоны, разработка эффективного програм- 10
много обеспечения. Решение этих вопросов дает ключ к успешной реализации СТЗ робота. Возможно, наиболее ясно это положение иллюстрируют исследования по созданию систем управления автоматической сваркой — именно для этого приложения наиболее очевидны выгоды от применения методов СТЗ. В автоматизации сборочных работ использование СТЗ тоже должно сыграть весьма существенную роль, дополняя применение захватов, оборудованных тактильными датчиками. При поиске и ориентации собираемых компонентов использование СТЗ становится основным приемом. Необходимо отметить, что существующие СТЗ в большинстве предназначены для быстрого предварительного анализа рабочего поля и не всегда обеспечивают точность, необходимую для выполнения автоматического технического контроля объектов. В связи с этим надо четко разграничивать две задачи: общий анализ рабочего поля и контроль объектов, расположенных в этом поле.
Прочитав обзор содержания этой книги, читатель, конечно, убедится в том, что СТЗ роботов и их применение в робототехнике еще не вышли из младенческого возраста. Специалисты, занимающиеся рассматриваемыми вопросами на протяжении десяти последних лет, знают, что развитие технического зрения роботов стимулируется прикладными технологическими задачами. Это придает деятельности в области создания СТЗ роботов особую увлекательность и открывает широкий простор для поиска. Чтобы второе поколение промышленных роботов стало реальностью, необходимо искать наилучшие способы применения разнообразных сенсоров, становящихся в настоящее время неотъемлемой частью робототехнических систем.
Редактор выражает признательность всем авторам этой книги. Особая благодарность приносится доктору Руксу (B.W. Rooks), за помощь в обеспечении взаимоотношений авторов и редакции.
Сентябрь 1982 г. Алан Пью, г. Гулль
Глава 1ОБЗОРНЫЕ СТАТЬИ
Первые СТЗ роботов появились около десяти лет тому назад. В двух последующих статьях приводится обзор их развития. Описаны имеющиеся в настоящее время промышленные системы.
РОБОТОТЕХНИКА ВТОРОГО ПОКОЛЕНИЯ
А. П ь ю, Отделение электроники. Гулльский университет,Великобритания
Доклад на 12-м Международном симпозиуме
по промышленным роботам, 9— 11 июня 1982 г., Париж, Франция
Введение. В первые годы своего существования промышленные роботы выглядели техническим средством, возможности использования которого оставались неясными. На 1-м Международном симпозиуме по промышленным роботам, проводившемся в Чикаго в 1970 г. [1], участникам был представлен краткий каталог способов использования роботов в производствах, связанных с высокой температурой, загазованностью или операциями, требующими большой физической силы. В те времена промышленные роботы были диковинкой, и об их существовании знал лишь относительно узкий круг информированных специалистов. Полностью раскрыть универсальные возможности промышленного робота позволило его использование для точечной сварки автомобильных кузовов. Это решение резко изменило отношение к промышленным роботам, что выразилось в увеличении их количества на производстве и благожелательных отзывах в печати, которые, в свою очередь, пробудили интерес к применению промышленных роботов для решения других производственных задач.
Несмотря на растущее использование роботов на вредных производствах, например кузнечном, литейном, штамповочном, наиболее успешно их применяют все же в тех случаях, когда не требуется высокой точ- * ности контакта с деталью и оборудованием рабочего места [2]. Кроме , относящейся к таким задачам точечной сварки, роботы широко и успешно применяются для окраски распылением, а в последнее время достигнуты серьезные успехи и в сварке сплошным швом. Хотя вначале промышленные роботы мыслились с позиционным способом управления, сейчас в большинстве систем управления промышленными роботами используется непрерывный способ. Ситуация сложилась так, что роботы являются 12
естественной и неотъемлемой частью организации производственного процесса, особенно на вновь создаваемых предприятиях. Потенциальные пользователи уже не ждут, пока какой-либо из склонных к риску предпринимателей проведет первый эксперимент с каким-нибудь новым способом использования роботов, — большинство из этих опытов уже проделано, хорошо известны и эксперименты в области несенсорной обработки и манипулирования. Более того, процесс развития структуры роботов и их механизмов предоставляет пользователю все более широкий выбор сочетания "средство производства — продукция” — сегодня в этом может убедиться любой посетитель выставки роботов.
О втором поколении роботов. В самом начале развития технологии промышленных роботов казалось, что достигнуть рационального сочетания ’’интеллектуального” управления и использования различных сенсоров будет относительно несложно . Однако этого не удалось добиться в течение уже более десяти лет - до сих пор ни одну из существующих робототехнических систем нельзя полностью отнести ко второму поколению. В 70-х годах многообещающие демонстрации "искусственного интеллекта” на 1-м Международном симпозиуме по промышленным роботам [1] показали, что сенсорная информация может быть эффективно использована для управления робототехническими системами. В настоящее время уже существуют несколько выпускаемых промышленностью СТЗ [3-5]. К сожалению, эти системы представляют собой результаты исследований десятилетней давности и используемые в них методы обработки визуальной информации не могут обеспечить высокой надежности работы.
Высокая стоимость аппаратуры замедляет и без того невысокие темпы развития робототехники. Проявляется нежелание промышленных пользователей роботов быть первыми в этой области. Признавая, что возможно, существенный прогресс в решении проблемы скрыт за "закрытыми дверями” промышленной секретности, отметим, что лишь очень немногие смелые эксперименты по созданию роботов второго поколения получили освещение в технической печати. Во многих случаях практического применения систем управления, действующих на основе анализа зрительной информации, основную роль сыграла их реклама, однако в некоторых отраслях, например в микроэлектронной промышленности, в настоящее время'имеется настоятельная необходимость применения таких систем. Этому вопросу посвящены работы [6, 7]. Необходимость применения СТЗ в микроэлектронике связана с тем, что в процессе изготовления электронного прибора и при его сборке требуется интенсивное использование зрительной обратной связи. Геометрический характер интегральных микросхем способствовал применению методов технического зрения для автоматизации процессов обработки кристалла и присоединения проводников-выводов. Важная черта этого приложения, продемонстрировавшего надежность в работе, - относительная простота управления технологической аппаратурой и освещения области сборки.
Возникает вопрос, можно ли считать успешное применение рассмотренной системы управления фактом появления роботов второго поколения. Некоторые считают, что можно, но большинство не склонно относить 13
механизацию специализированной операции к разряду универсальной ’’программируемой автоматизации”, решаемой роботами второго поколения. Публикации, посвященные попыткам применения в цехах сенсорного управления, найти трудно. Описано лишь несколько экспериментальных систем, в которых совместно используются зрительные и осязательные обратные связи. Между тем необходимо отметить, что в Великобритании существует компания, уже несколько лет поставляющая в составе стандартного оборудования устройства, успешно работающие на принципе управления с помощью технического зрения окраской распылением.
Автоматизация сборочных работ (за исключением использования непрограммируемых устройств подачи деталей) не считается перспективной областью применения роботов первого поколения. Требуется качественный скачок в развитии таких систем, который позволит применять при автоматической сборке программируемые роботы. Это откроет путь к созданию гибких производственных систем, которые могут быть реализованы только на основе использования сенсорной информации при управлении процессом сборки. Несмотря на успехи в развитии структурных схем роботов [9], в настоящий момент ни один программируемый робот не обеспечивает точности позиционирования, необходимой для обеспечения надежности выполнения сборочных операций. Для этого приходится использовать системы сенсорного управления, хотя бы и простейшие, типа ’’согласования удаленного центра” [10]. Автоматическая программируемая сборка в сочетании с интерактивным управлением на основе сенсорной информации демонстрирует положительные качества, присущие робототехнике второго поколения. В промышленности значительное место занимают производства, имеющие дело с малыми и средними сериями изделий, и именно таким производствам очень не хватает соответствующего уровня автоматизации. Чтобы достигнуть успеха в этой сфере, следует добиться экономической отдачи от той гибкости, которую могут реализовать дорогостоящие робототехнические системы второго поколения, а это потребует большого труда.
Исследования в области технического зрения. На исследование зрения было затрачено, наверное, больше усилий, чем на исследования слуха и осязания, вместе взятых. Однако в результате этих исследований не удалось прийти к единому мнению по многим вопросам. Техническое зрение роботов часто смешивают с применением визуальных анализаторов для автоматизированного технического контроля и даже с теми отраслями искусственного интеллекта, которые занимаются обработкой и распознаванием образов. При формальном сравнении процесса обработки изображений и обработки визуальной информации в системе технического зрения робота невозможно провести четко разделяющую их границу.
Условия успешного применения СТЗ робота таковы: низкая стоимость, надежность функционирования, существенная простота, быстрота обработки информации, простота систем освещения рабочего поля.
Результаты работ в этой области, публикуемые исследовательскими организациями, часто полностью не отвечают этим требованиям. Обра- 14
ботка полутоновых (многоградационных) изображений с высоким разрешением может давать впечатляющие результаты, но они неизбежно достигаются за счет усложнения архитектуры процессора и увеличения времени обработки. Специализированные вычислительные системы, предназначенные для обработки изображений, в настоящее время достаточно эффективно решают проблему повышения скорости обработки [11].
Пожалуй, единственным затруднением, достаточно часто упускаемым при рассмотрении данного вопроса, является сложность управления освещением рабочего поля. Некоторые исследователи подходили к решению проблемы, используя так называемые ’’планы освещения” [12,13]. Такой подход может рассматриваться как простейший случай структурированного освещения, т.е. направления на рабочее поле геометрического светового узора, искажаемого находящимися в нем объектами. Преимущества такого подхода определяются простотой обработки бинарных (двухградационных) образов и снижением объема анализируемой зрительной информации [14]. Развитие систем технического зрения с встречным освещением рабочего поля сегодня достигло уровня ограниченного промышленного применения [15]. К сожалению, часто применение видео- анализаторной техники носит чисто научный характер и не может быть использовано в промышленности. Исследования по использованию телекамер в качестве видеоанализаторов в СТЗ роботов в настоящий момент только начинаются [16], они требуют больших затрат, и вряд ли в ближайшее время надежность таких систем достигнет высокого уровня.
Необходимая разрешающая способность. Постоянное повышение разрешающей способности новых телевизионных устройств не оказывает прямого влияния на требования к сенсорам, используемым в робототехнических системах. Сенсор робота должен обеспечить не максимально возможное, а оптимальное для выполняемой задачи пространственное разрешение. Многие склонны считать, что чем выше значение разрешающей способности, тем шире диапазон применимости системы. Здесь необходимо отметить, что и сейчас существующие по разрешению возможности используются далеко не полностью. Существенные успехи были получены при использовании растра размером всего 50X50 элементов [6]. При использовании последовательной архитектуры процессора такого пространственного разрешения хватает для того, чтобы при обработке полутонового образа сформировать объем информации, превышающий возможности используемой вычислительной техники и программного обеспечения. Если время обработки образа станет приближаться к 0,5 с, то при взаимодействии робота с деталью появятся заметные задержки.
При сварочных работах обработка изображений должна выполняться еще более быстро.
Системы с высокой пространственной разрешающей способностью необходимы там, где используется автоматизированный технический контроль и поиск графической информации, там, где иногда скорость — не самый важный показатель общего процесса обработки информации. Такую ситуацию не следует путать с требованиями, предъявляемыми к видеоанализаторам робототехнических систем.
Трудности в разработке сенсорных устройств. Может быть, самым важным вопросом при создании очувствленного робота является наличие и доступность необходимых сенсорных устройств. Вот перечень сенсорных устройств, необходимых для робототехнических систем: датчики присутствия детали; датчики расстояния; измерители протяженности (или смещения) по одной оси; определители параметров положения объекта на плоскости; определители параметров положения объекта в пространстве; датчики температуры, динамометрические датчики и др.
Ниже указаны устройства и принципы, на использовании которых могут строиться перечисленные датчики.
ВидеодатчикиОдиночный фотоэлемент Линейка фотоэлементов Матрица фотоэлементов Телекамера Лазер (триангуляция) Лазер (отрезок времени) Волоконная оптикаЗвуковые и ультразвуковые датчикиУльтразвуковые пары (излучатель/приемник) Матрицы ультразвуковых излучатепей/приемников Микрофоны (речевое управлениеВидеодатчикиОдиночный фотоэлемент Линейка фотоэлементов Матрица фотоэлементов Телекамера Лазер (триангуляция) Лазер (отрезок времени) Волоконная оптикаЗвуковые и ультразвуковые датчикиУльтразвуковые пары (излучатель/приемник) Матрицы ультразвуковых излучатепей/приемников Микрофоны (речевое управлениеТактильные датчикиМеханический щуп Тензометрический датчик Пьезоэлектрический датчик Угольные материалы Дискретные панели Интегральные панелиТактильные датчикиМеханический щуп Тензометрический датчик Пьезоэлектрический датчик Угольные материалы Дискретные панели Интегральные панелиДругие типы датчиковИнфракрасное излучениеРадарМагнитные датчикиИонизирующее излучениеДругие типы датчиковИнфракрасное излучениеРадарМагнитные датчикиИонизирующее излучение
Видеодатчики
Одиночный фотоэлемент Линейка фотоэлементов Матрица фотоэлементов Телекамера Лазер (триангуляция) Лазер (отрезок времени) Волоконная оптика
Звуковые и ультразвуковые датчики
Ультразвуковые пары (излучатель/приемник) Матрицы ультразвуковых излучатепей/приемников Микрофоны (речевое управление
Видеодатчики
Одиночный фотоэлемент Линейка фотоэлементов Матрица фотоэлементов Телекамера Лазер (триангуляция) Лазер (отрезок времени) Волоконная оптика
Звуковые и ультразвуковые датчики
Ультразвуковые пары (излучатель/приемник) Матрицы ультразвуковых излучатепей/приемников Микрофоны (речевое управление
Тактильные датчики
Механический щуп Тензометрический датчик Пьезоэлектрический датчик Угольные материалы Дискретные панели Интегральные панели
Тактильные датчики
Механический щуп Тензометрический датчик Пьезоэлектрический датчик Угольные материалы Дискретные панели Интегральные панели
Другие типы датчиков
Инфракрасное излучение
Радар
Магнитные датчики
Ионизирующее излучение
Другие типы датчиков
Инфракрасное излучение
Радар
Магнитные датчики
Ионизирующее излучение
Видеодатчики следует размещать на рабочем органе манипулятора [14, 17]. Размещение видео датчика над рабочей зоной робота плохо тем, что манипулятор будет заслонять рабочую зону. Кроме того, метрическое отклонение рабочего органа от точки назначения приходится измерять в абсолютных, а не относительных координатах. Размещение видеодатчика на рабочем органе позволяет выполнять относительные измерения, существенно снижая требования к калиброванию системы позиционирования. В таком случае для некоторых приложений визуальная обратная связь может быть сведена к определению расстояний.
На рынке видеодатчиков сегодня нет устройств, приспособленных для размещения вблизи охвата робота. Перспектива появления серийных видеосенсорных матриц в интегральном исполнении так и не была реализована, в основном по коммерческим соображениям, связанным с конъюнктурой в телевизионной промышленности. Можно с большой вероятностью предсказать, что в течение ближайшего времени устройства считывания образцов, предназначенные, в первую очередь, для использования в телевизионной технике, станут достаточно малогабаритными и дешевыми для их использования в робототехнике. Сегодня же телекамеры с двухмерными матрицами слишком дороги, и, хотя по размерам 16
они меньше, чем камеры с вакуумными передающими трубками, все же слишком громоздки для установки на схвате. От использования прото- типных устройств - сенсорных панелей со скромной разрешающей способностью — в большинстве случаев уже отказались.
Не будет преувеличением сказать, что сейчас не существует видеодатчиков, отвечающих требованиям робототехники. Использование для обработки изображений динамической памяти со случайным доступом [17] оказалось недостаточно эффективным. Чтобы достигнуть успеха, необходимы более мощные средства. Некторые исследователи пробовали уменьшить объем информации, представляющей образ, используя для считывания изображения размещенные на схвате когерентные волоконные световоды. Это повлекло за собой увеличение стоимости системы в целом. Тем не менее при таком подходе можно использовать основное свойство оптического волокна — пучок волокон может быть разделен на части. Таким образом, одно устройство с высокой разрешающей способностью может быть использовано для получения и комбинирования нескольких изображений с меньшими значениями разрешения, относящихся к различным частям рабочей зоны, включая схват — каждый отдельный пучок может иметь индивидуальную оптическую настройку [18, 19].
В тех случаях, когда для создания двухмерного образа по одной из осей используется механическое перемещение деталей по конвейеру [12, 18], применяются линейки фотодатчиков. Ничто не препятствует использованию того же подхода в варианте, когда движение рабочего органа робота используется для создания двухмерного изображения. В этом случае можно использовать круговую развертку изображения рабочей зоны или считывать изображение с помощью линейки фотодатчиков.
Тактильные датчики используются тогда, когда необходимо какую- либо деталь поместить в заранее определенное место. Активные и пассивные нажимные тактильные датчики [20, 10] прошли уже определенный путь совершенствования и находят широкое практическое применение. Что касается матриц из тактильных датчиков, то тут сложилась иная ситуация. Из-за дискретного характера конструкции такие матрицы громоздки и имеют низкую разрешающую способность. Однако имеются сообщения о новых экспериментальных исследованиях [21—24] и об интересном направлении развития — тактильных матрицах на сверхбольших интегральных схемах [25].
С датчиками, измеряющими расстояние, проводилось много экспериментов. В опытах с акустическими и оптическими (включая лазерные) дальномерами был достигнут определенный успех. Усик-зонд [24] теперь может быть заменен лазером со всеми вытекающими отсюда преимуществами. Определение расстояния с помощью лазера — проверенный метод, но он не очень широко используется в робототехнике, хотя использование лазерного зонда, размещенного на рабочем органе промышленного робота, позволяет создать простую схему автоматического контроля размеров.
Из приведенного выше краткого перечисления принципов построения датчиков, предназначенных для очувствления роботов, видно, что раз-
витие этих датчиков во многом идет стихийно. Следует ввести в практику проектирования датчиков обеспечение некоторой модульности. Модульность позволит использовать оптимальный для каждого конкретного приложения метод контроля параметров. Никакой в отдельности взятый датчик не может решить всех задач, а ’’больше” не всегда означает ’’лучше”. Однако весьма желательно разработать видеодатчики, способные выполнять простейшую обработку изображений (фронтальная обработка) . Полный обзор и оценки робототехнических датчиков опубликованы Нитцаном [26].
Языки и программное обеспечение. В существующем поколении роботов ЭВМ с имеющейся у нее программой используется лишь как альтернатива аппаратному контроллеру, отличаясь от него только тем, что для хранения отдельных ’’программ” используется память на интегральных схемах.
Для большинства пользователей программное обеспечение и языки стали известны с появлением системы ВАЛ [27], которая дает возможность интерполировать линейное движение в промежутках между точками и обеспечивает покоординатное преобразование осей. Более того, ВАЛ позволяет выполнять преобразования зрительных координат в машинные [28]. Обучение робота, использующего ВАЛ, может выполняться не в режиме ’’показа" (метод, использующийся в большинстве современных роботов), а в режиме ’’оффлайн".
В настоящее время ведутся работы по языкам описания сборочных операций [29, 30]. Использование таких языков дает очувствленной робототехнической системе автономность действий в рамках задания на сборку. Общепринятый язык описания сборки позволит исполнять одну и ту же последовательность команд на различной робототехнической аппаратуре таким же образом, каким программы, написанные на стандартных языках программирования, могут выполняться на различных машинах. Из опыта программирования следует извлекать урок и ограничиться использованием стандартного языка для описания сборки. В противном случае стихийное возникновение множества языков может привести к серьезным затруднениям. Можно считать, что сборочная операция представляет собой часть процесса функционирования интегрированной системы автоматизированного проектирования и производства и должна описываться не привязанным к конкретному оборудованию языком сборки. Одним из краеугольных камней этого процесса должно стать создание некоторых тестов для сравнения и проверки достоинств различных языков описания сборочных операций.
Заключительные замечания. Создание робота второго поколения предполагает использование скоростных высокоточных механизмов, надежных недорогих датчиков, изящного и мощного программного обеспечения.
Все эти части пока недостаточно развиты и, наверное, требуется новый качественный скачок в процессе их развития. Выше уже отмечалось несоответствие существующих датчиков предъявляемым требованиям, а в последнее время признана необходимость в хорошем программном 18
обеспечении. За исключением механизмов специальной конструкции, предназначенных для выполнения конкретных операций, ни один из существующих роботов сам по себе не может обеспечить точность, необходимую для выполнения сборочных работ. Перспективно использование грубого позиционирования высокоскоростного программируемого манипулятора с последующим применением подвижного ’’стола”, обеспечивающего возможность точного позиционирования [31].
Вспоминая о том, что демонстрации экспериментальных роботов второго поколения осуществлялись в течение всего последнего десятилетия [32—37], приходится признать, что делавшиеся тогда предсказания не сбылись. Недавно был опубликован обзор современного состояния технического зрения роботов [38]. Для того чтобы сегодня предсказать, где и когда появится промышленный робот второго поколения, нужно обладать изрядной смелостью. По-видимому, для создания такого робота, отвечающего нуждам промышленности, придется выполнить еще ряд исследований и разработок. Возможно, что необходимость в его использовании возникает в текстильной, керамической, кондитерской [39] промышленности. Работа в этом направлении может привести к столь же эффективному применению роботов второго поколения, каким десять лет назад стала для первого поколения точечная сварка.
Более двух лет тому назад в Великобритании были утверждены программы государственного финансирования промышленного применения роботов и координации исследовательских работ, проводимых в университетах. Недавно были опубликованы обзоры, в которых описаны предъявляемые промышленностью требования и дан состав групп, проводящих совместные исследования [40, 41].
СПИСОК ЛИ ТЕР А Т УРЫ
Proc. 1st hit. Symp. on Industrial Robots, Illinois Institute of Technology, Chicago, April 1970.
J. F. Engelberger. ‘Robotics in Practice' Kogan Page. London, 1980.
G. J. Gleason and G. J. Agin. 'A Modular Vision System for Sensor-controlled Manipulation and Inspection'. Proc. 9th I nt. Symp. on Industrial Robots, SME, Washington, March 1979.
P F. Hewkin and M. A. D. Phil, 'OMS-Optical Measurement System’ Proc. 1st Int. Conf. Robot Vision and Sensory Controls. IFS (Conferences) Ltd. Stratford-upon-Avon, England. April 1981.
P. Villers, 'Present Industrial Use of Vision Sensors for Robot Guidance’, Proc. 12th Int. Symp. on Industrial Robots, I'Association Fran<;aisede Robotique Industrielle, Paris, June 1982.
M. L. Baird, 'SIGHT-1’: ‘A Computer Vision System for Automated IC Chip Manufacture’ IEEE Trans. System s. Man and Cybernetics. Vol. 8. No. 2 (1978).
S. Kawato and Y. Hirata. 'Automatic IC Wire Bonding System with TV Cameras’, SME Technical Paper AD79-88O, 1979.
Johnston. E.. ‘Spray Painting Random Shapes Using CCTV Camera Control’, Proc. 1st Int. Conf. Robot Vision and Sensory Controls. 1FS (Conferences) Ltd, Stratford-upon-Avon, England, April 1981.
H. Makino, N. Furuya. K. Soma and E. Chin, ‘Research and Development of the SCARA robot'. Proc. 4th International Conference on Production Engineering. Tokyo, 1980.
D. E. Whitney and J. L. Nevins, ‘What is the Remote Centre Compliance (RCC) and What Can it do?' Proc. 9th Int. Symp. on Industrial Robots, SME, Washington, March 1979.
T. J. Fountain, V. Geotcherian, ‘CLIP 4 Parallel Processing System’, IEEE Proc. Vol. 127, Pt. E, No. 5(1980).
S. W. Holland, L. Rossol and M. R. Ward, ‘Consight-I: A Vision Controlled Robot System for
Transferring Parts from Belt Conveyors'. Computer Vision and Sensor Based Robots. G. G. Dodd and L. Rossol, Eds. Plenum Press, New York, 1979.
R. C. Bolles, ‘Three Dimensional Locating of Industrial Parts', Sth NSF Grantees Conference on Production Research and Technology, Stanford, Calif, January 1981.
R. N. Nagel, G. J. Vender-Brug, J. S. Albus and E. Lowenfeld, ‘Experiments in Part acquisition Using Robot Vision’, SME Technical Paper MS79-784 1979.
P. Saraga and В. M. Jones. ‘Parallel Projection Optics in Simple Assembly’, Proc. 1st Int. Conf. Robot VistonandSensoryControls', IES (Conferences) Ltd. Stratford-upon-Avon, England. 1981.
I. Mazaki, R. R. Gorman, В. H. Shulman, M. J. Dunne and H. Toda, ‘Arc Welding Robot with Vision', Proc I Ithlnt. Symp. on Industrial Robots, JI RA, Tokyo. October 1981.
P. M. Taylor, G. E. Taylor, D. R. Kemp, J. Stein and A. Pugh. ‘Sensory Gripping System: The Software and Hardware Aspects’ Sensor Review, Vol. I. No. 4 (October 1981).
A. J. Cronshaw, W, B. Heginbotham and A. Pugh, ‘Software Techniques for an Optically-tooled Bowl Feeder’, IEEE Conference 'Trends in On-line Computer Control Systems’, Sheffield, England, Vol. 172. March 1979,
J. H. Streeter. ‘Viewpoint - Vision for Programmed Automatic Assembly'. Sensor Review, Vol. 1. No. 3 (July 1981).
T. Goto. et. al., ‘Precise Insert Operation by Tactile Controlled Robot', The Industrial Robot, Vol. I. No. 5 (Sept. 1974),
M. H. E. Larcombe, ‘Carbon Fibre Tactile Sensors', Proc. 1st Int. Conf. Robot Vision and Sensory Controls. IFS (Conferences) Ltd., Stratford-upon-Avon, England, April 1981.
J. A. Purbrick,‘A Force Transducer Employing Conductive Silicone Rubber’ Ibid.
N. Sato, W. B. Heginbotham and A. Pugh, ’A method for three-dimensional Robot Identification by Tactile Transducer', Proc. 7th Int. Symp. on Industrial Robots, JIRA, Tokyo, October 1977.
S. S. M. Wang and P. M. Will, 'Sensors for Computer Controlled Mechanical Assembly’, The Industrial Robot, Vol. 5, No. 1 (March 1978).
J. E. Tannerand M. H. Raibert, ’A VLSI Tactile Array Sensor’, Proc. 12th Int. Symp. on Industrial Robots, Г Association Franqaise De Robotique Industrielle, Paris, June 1982.
D. Nitzan, ‘Assessment of Robotic Sensors', Proc. Istlnt. Conf. Robot Vision and SensoryControls, IFS (Conferences) Ltd, Stratford-upon-Avon, England, April 1981.
‘Users Guide to VAL - Robot Programming and Control System’, Unimation Inc., Danbury. Conn.
B. Carlisle, ‘The PUMA/VS-100 Robot Vision System', Proc. 1st Int. Conf. Robot Vision and SensoryControls. IFS (Conferences) Ltd.. Stratford-upon-Avon. England. April 1981.
L. I. Leiberman and M. A. Nelsey. "AUTOMPASS - An Automatic Programming System for Computer Controlled Mechanical Assemblv', IBM Journal of Research and Development.NoV 2 I. No.4(1977).
R. J. Popplestone, et. al., 'RAPT: A Language for Describing Assemblies'. University of Edinburgh, UK.September 1978.
J. Hollingum, ‘Robotics Institute Teams Development in University and Industry'. The Industrial Robot. Vol. 8. No. 4. December 1981.
W. B. Heginbotham, D. W. Gatehouse. A. Pugh, P. W, Kitchin and C. J, Page. "The Nottingham SIRCH Assembly Robot', Prot. 1st Conf on Industrial Robot Technology, IFS Ltd., Nottingham, England, March 1973.
Y. Tosuboi and T. Inoue, ‘Robot Assembly Using TV Camera". Proc. 6th Int. Symp. on Industrial Robots'. IFS Ltd., Nottingham. England, March 1976.
D. Nitzan. ‘Robotic Automation at SRI’ Proc. ofMIDCON/79, Chicago, Illinois, November 1979.
P. Saraga and D. R. Skoyles, ‘An Experimental Visually Controlled Pick and Place Machine for Industry'. Proc 3rd Int. Conf, on Pattern Recognition, IEEE Computer Society. Coronado, Calif, November 1976.
D. A. Zambutoand J. E. Chaney, ‘An Industrial Robot with Mini-ComputerControl’. Proc. 6th Int. Symp. on Industrial Robots. IFS (Conferences) Ltd.. Nottingham, England, March 1976.
J. R. Birk. R. B. Kelley and HAS, Martins, 'An Orientating Robot for Feeding Workpieces Stored in Bins', IEEE Trans. Systems Man and Cybernetics, Vol. 11. No. 2 (1981).
R. P. Kruger and W. B, Thompson. ‘A Technical and Economic Assessment of Computer Vision for Industrial Inspection and Robotic Assembly’ Proc. I EEE,Vol 69, No. 12 (1981).
A. J. Cronshaw. ’Automatic Chocolate Decoration by Robot Vision’, Proc. 12th Int. Symp. on Industrial Robots. I’Association Franqaisede Robotique Industrielle, Paris. June 1982.
J. King and E. Lau,‘Robotics in the UK’, The Industrial Robot, Vol. 8, No. 1 (March 1981).
j P. G. Davey, ‘UK Research and Development in Industrial Robots' 2nd International Conference on 'Manufacturing Matters', The Institution of Production Engineers, London England, March, 1982.'
ТЕХНИЧЕСКОЕ ЗРЕНИЕ В ПРОМЫШЛЕННОСТИ
Л. Р о с с о л, исследовательская лабораторияфирмы "Дженерал Моторе", США
Доклад на Мэдоубрукской исследовательской конференции"Робототехника в следующем десятилетии", 25 мая 1982 г..Оклендский университет, г. Рочестер, шт. Мичиган, США
Введение. Техническое зрение несет производству коренные перемены в двух важных областях: технического контроля и адаптивного управления роботами. Уже сейчас эти приложения технического зрения начинают изменять производство, уже сейчас выпускается много систем, предназначенных для промышленного использования. Описанные в этой статье две специализированные промышленные СТЗ, ’’Кисайт” (Keysight) и ’’Консайт” (Consight), хорошо отражают современное состояние разработок в этой отрасли.
Робототехника и техническое зрение - классические примеры быстрых изменений сложной технологии, когда усовершенствованные новые системы постоянно вызывают моральное старение существующих. Можно с уверенностью предсказать, что в течение ближайшего десятилетия и в будущем поток подобных важных усовершенствований не прекратиться. Нужды промышленности привели к разработке новой технологии, использующей техническое зрение и робототехнику. В дальнейшем они приведут ко многим изменениям существующей технологии. В этой статье мы попробуем предугадать некоторые из таких изменений.
Системы технического зрения. Типовая СТЗ состоит из телевизионной камеры, ЭВМ и программного обеспечения. Хотя с помощью таких систем можно решить много задач, сегодня нельзя требовать от ЭВМ или робота настоящего ’’зрения’’, по крайней мере, в обычном смысле этого слова. Поскольку ни естественное биологическое, ни искусственное зрение как следует еще не исследованы и с трудом поддаются описанию, имеется тенденция описывать зрительные устройства по аналогии с периферийными устройствами — характеристиками быстродействия, точности, стоимости. Конечно, эти параметры немаловажны, но с точки зрения исследователя не они играют главную роль. Существо проблемы связано не с телекамерой и не с архитектурой ЭВМ, а с программным обеспечением. Большинство производственных задач сегодня остаются неразрешимыми по той простой причине, что мы не знаем, как составить соответствующие программы. (Точнее говоря, не существует подходящих алгоритмов, поскольку программное обеспечение всегда можно реализовать аппаратно).
Все множество визуальных анализаторов можно условно представить себе, как показано на рис. 1.
По существу, все визуальные анализаторы роботов работают в плоскости у = 0, т.е. ограничиваются различными оттенками серого цвета и не могут обрабатывать цветные изображения. Более того, большинство
z, сложность решаемыхz, сложность решаемыхПолутоновыеПолутоновыезадач Цветныезадач ЦветныеСложныеЧерно - белые _ПростыеСложныеЧерно - белые _ПростыеБинарныеБинарные/у, цветность/у, цветностьх.разрешающаяспособностьпо яркостих.разрешающаяспособностьпо яркостиРис. 1. Пространство СТЗРис. 1. Пространство СТЗне ’’укладываются” нане ’’укладываются” навыпускаемых промышленностью устройств располагаются вдоль оси z, т. е. могут обрабатывать только штриховые или точечные черно-белые изображения. В тех случаях, когда картинная плоскость может быть разбита на дискреты и, таким образом, преобразована в двухградационное изображение, такие устройства могут решать довольно сложные задачи.Проблема заключается в том, что большинство промышленных задачвыпускаемых промышленностью устройств располагаются вдоль оси z, т. е. могут обрабатывать только штриховые или точечные черно-белые изображения. В тех случаях, когда картинная плоскость может быть разбита на дискреты и, таким образом, преобразована в двухградационное изображение, такие устройства могут решать довольно сложные задачи.Проблема заключается в том, что большинство промышленных задачось z. Задача организации технического зренияось z. Задача организации технического зренияобычно усложняется существенными различиями в степени отражения света разными экземплярами одной и той же детали. Заранее нельзя предсказать, будет рассматриваемая зона светлее или темнее окружающего пространства Кроме того, обеспечить необходимое освещение цветных сцен оказывается невозможно или это обходится слишком дорого. Вобычно усложняется существенными различиями в степени отражения света разными экземплярами одной и той же детали. Заранее нельзя предсказать, будет рассматриваемая зона светлее или темнее окружающего пространства Кроме того, обеспечить необходимое освещение цветных сцен оказывается невозможно или это обходится слишком дорого. Врезультате на изображении, получаемом с помощью телекамеры, вместо высококонтрастного черно-белого изображения появляются всевозможные оттенки серого цвета. С помощью простой дискретизации изобрарезультате на изображении, получаемом с помощью телекамеры, вместо высококонтрастного черно-белого изображения появляются всевозможные оттенки серого цвета. С помощью простой дискретизации изобра
z, сложность решаемых
z, сложность решаемых
Полутоновые
Полутоновые
задач Цветные
задач Цветные
Сложные
Черно - белые _
Простые
Сложные
Черно - белые _
Простые
Бинарные
Бинарные
/у, цветность
/у, цветность
х.
разрешающаяспособность
по яркости
х.
разрешающаяспособность
по яркости
Рис. 1. Пространство СТЗ
Рис. 1. Пространство СТЗ
не ’’укладываются” на
не ’’укладываются” на
выпускаемых промышленностью устройств располагаются вдоль оси z, т. е. могут обрабатывать только штриховые или точечные черно-белые изображения. В тех случаях, когда картинная плоскость может быть разбита на дискреты и, таким образом, преобразована в двухградационное изображение, такие устройства могут решать довольно сложные задачи.
Проблема заключается в том, что большинство промышленных задач
выпускаемых промышленностью устройств располагаются вдоль оси z, т. е. могут обрабатывать только штриховые или точечные черно-белые изображения. В тех случаях, когда картинная плоскость может быть разбита на дискреты и, таким образом, преобразована в двухградационное изображение, такие устройства могут решать довольно сложные задачи.
Проблема заключается в том, что большинство промышленных задач
ось z. Задача организации технического зрения
ось z. Задача организации технического зрения
обычно усложняется существенными различиями в степени отражения света разными экземплярами одной и той же детали. Заранее нельзя предсказать, будет рассматриваемая зона светлее или темнее окружающего пространства Кроме того, обеспечить необходимое освещение цветных сцен оказывается невозможно или это обходится слишком дорого. В
обычно усложняется существенными различиями в степени отражения света разными экземплярами одной и той же детали. Заранее нельзя предсказать, будет рассматриваемая зона светлее или темнее окружающего пространства Кроме того, обеспечить необходимое освещение цветных сцен оказывается невозможно или это обходится слишком дорого. В
результате на изображении, получаемом с помощью телекамеры, вместо высококонтрастного черно-белого изображения появляются всевозможные оттенки серого цвета. С помощью простой дискретизации изобра
результате на изображении, получаемом с помощью телекамеры, вместо высококонтрастного черно-белого изображения появляются всевозможные оттенки серого цвета. С помощью простой дискретизации изобра
жения не удается решить важную во многих промышленных применениях технического зрения задачу разделения объекта и фона.
Фирмы ’’Дженерал Моторе”, ’’Хитати” (Hitachi) и другие создали СТЗ, способные обрабатывать полутоновые изображения, т.е. расположенные правее, на оси х, на рис. 1. Пример такой системы — описываемая в этой статье система "Кисайт”. Однако рабочая область таких систем лежит недалеко от плоскости z=0,T.e. сложность решаемых ими задач невысока. В то же время следует отметить, что большинство производственных задач достаточно сложны.
Таким образом, имеется дилемма: с одной стороны, можно создать сложную систему бинарного зрения ограниченного применения. С другой стороны, можно, ориентируясь на широкий круг приложений, создать систему полутонового зрения. Но в настоящее время технологические ограничения не позволяют сделать такую систему достаточно универсальной и широко применимой.
Безусловно, стоит продолжать исследования, которые помогут снять технологические ограничения систем полутонового зрения. Существует, однако, заслуживающий рассмотрения альтернативный подход. Он не только обещает решение основной задачи технического зрения — сегментации, но и позволяет сразу получать геометрию детали, а не вычленять ее, как в случае обработки полутонового изображения. Кроме того, он существенно снижает объем обработываемой информации. Это важное преимущество, поскольку стоимость системы прямо зависит от значения этой характеристики.
Основная идея этого альтернативного подхода — использование структурированного освещения. На рабочую зону проецируется тщательно
разработанный световой узор. Считывающая камера расположена с противоположной стороны относительно подсвечивающего устройства. Такая система отличается от бинарной тем, что геометрическая форма объектов, находящихся в рабочей зоне, рассчитывается непосредственно по искажению светового узора. Хотя, на первый взгляд, из-за отличия от принципов зрения живых организмов такой метод выглядит менее привлекательно, чем остальные, системы со структурированным освещением находят широкое применение в промышленности.
В статье кратко описываются две современные СТЗ — ’’Консайт” и ’’Кисайт’’. Система ’’Консайт” использует структурированное освещение, "Кисайт” обрабатывает полутоновую визуальную информацию.
Система ’’Консайт". ’’Консайт" [1] — робототехническая система, действующая на основе анализа визуальной информации. Она снимает детали с движущейся ленты конвейера и переносит их в заданное место. Случайным образом расположенные на конвейере детали перемещаются перед анализирующим визуальную информацию устройством, которое определяет положение и ориентацию каждой детали на движущейся ленте. Информация, передается робототехнической системе, которая следит за движением деталей, поднимает их и переносит в определенное место.
’’Консайт’’ может обрабатывать непрерывный поток не соприкасающихся между собой деталей. Предельная скорость работы определяется длительностью цикла манипулятора, а не СТЗ и системами управления от ЭВМ.
В СТЗ используется видеодатчик с линейкой фотодетекторов, который считывает одномерные образы, соответствующие узкой полосе, перпендикулярной направлению движения ленты конвейера. Лента движется, и двухмерный образ перемещаемой детали может быть построен накапливанием последовательности одномерных образов. Равномерность считывания одномерных линейных образов достигается с помощью датчика положения ленты, который в определенные моменты подает в ЭВМ сигналы начала считывания.
На ленту транспортера направляется плоский поперечный пучок яркого света. Линейка фотодетекторов располагается так, что сигнал считывается с освещенного участка ленты, имеющего форму узкой полосы. Объект, попадающий в узкий световой пучок, перекрывает его (рис. 2). При рассмотрении сверху в местах пересечения с деталью освещенная линия имеет разрывы. Таким образом, там, где камера видит освещенную
прямую линию, находится не за- к рытая де тал ью пове рхность ленты; там, где камера прямую линию не видит, находится деталь.
К сожалению, образование тени может приводить к тому, что объект
Рис. 2. Камера направлена на линию считывания образа, перпендикулярную направлению движения ленты конвейра
прерывает пучок света до того, как он достигнет линии считывания, искажая образ детали. Чтобы избавиться от этого, можно использовать два источника света, направленные на одну полосу поперек ленты конвейера. Когда пучок одного источника перекрывается, с пучком другого этого не происходит. Используя несколько источников света и подбирая для каждого угол наклона, можно полностью избавиться от мешающего воздействия теней.
В отдельные моменты линия считывания образа может пересекать несколько выступающих частей одной детали или даже несколько различных деталей, поэтому приходится следить за сохранением связанности двухмерного образа при переходе от одного линейного образа к другому. Для определения связности в системе ’’Консайт” используются шестисвязные области. Это означает, что связанность допускается по четырем сторонам элемента изображения и по одной диагонали.
После выделения перемещаемых объектов можно анализировать параметры их положения в относительной системе координат.
Каждому обнаруженному объекту ставится в соответствие несколько характеристик. Некоторые из них используются для классификации деталей, остальные — для определения параметров положения.
Положение детали описывается триадой (х, у, 9). Значения х и у задают центр фигуры, ограниченной контуром детали. Однозначного способа для определения значения в (угол поворота), пригодного для любых деталей, не существует. Для многих деталей его полезно определять как направление оси наименьшего момента инерции (плоской фигуры). Для длинных тонких деталей такое значение можно вычислить достаточно точно. Заданной таким образом оси детали следует придать определенное направление. Это можно сделать несколькими способами, выбор конкретного способа зависит от вида детали.
Способ вычисления угла поворота определяется математической моделью детали. Например, одним из возможных способов придания направления оси может быть выбор того из двух возможных направлений, которое пересекает контур детали ближе к точке, максимально удаленной
Рис. 4. Сборочные узлы пружины клала на:а — установлены оба сухаря; б — один из сухарей отсутствуетРис. 4. Сборочные узлы пружины клала на:а — установлены оба сухаря; б — один из сухарей отсутствуетРис. 3. Блок головок цилиндров двига-теля
Рис. 4. Сборочные узлы пружины клала на:
а — установлены оба сухаря; б — один из сухарей отсутствует
Рис. 4. Сборочные узлы пружины клала на:
а — установлены оба сухаря; б — один из сухарей отсутствует
от центроида детали. При использовании другого метода направление оси выбирается с использованием центра наибольшей внутренней особенности детали (например, отверстия). Существует более общая методика, использующая моменты третьего порядка.
Система "Кисайт". "Кисайт” представляет собой систему машинного зрения, обрабатывающую полутоновые изображения [2]. Она предназначена для проверки сборочного узла пружины клапана на головке цилиндра двигателя. Проверяется, установлены ли сухари, фиксирующие колпачок пружины клапана. На одной головке блока цилиндров V-образного восьмицилиндрового двигателя размещены (по два на один цилиндр) восемь таких сборочных узлов для четырех впускных и четырех выпускных клапанов (рис. 3). На рис. 4, а показан правильно собранный узел с двумя сухарями, а в узле, показанном на рис. 4, 6, один из сухарей отсутствует. Система проверяет наличие обеих сухарей в каждом сборочном узле. Так как отклонение в местоположении сборочного узла может превышать половину ширины сухаря, система сначала должна определить точное местоположение сборочного узла, а затем проверить наличие сухарей.
Существенный разброс значений отражающей способности поверхностей различных экземпляров узла пружины клапана еще более усложняет задачу. Сухари окрашены в разные цвета в зависимости от твердости материала, иногда головки тоже окрашиваются; на поверхности сухарей может быть масляная пленка; из-за наличия дополнительных выступов впускные и выпускные клапаны выглядят по-разному. В дополнение к этому требуется надежность системы, при которой сбой допускается не чаще, чем один раз на несколько тысяч операций. Необходимость обеспечения такой высокой надежности, типичная для промышленных систем, оказывает серьезное влияние на выбор алгоритмов работы СТЗ — они должны полностью исключать возможность возникновения ошибки.
Система "Кисайт" преобразует изображение рабочей зоны в числовую форму с пространственным разрешением 64X64 точки. Разрешающая способность по градациям яркости серого тона — четыре двоичных разряда. Поле зрения камеры системы немного больше площади, занимаемой контролируемым сборочным узлом.
Для поиска центра сборочного узла система вначале вычисляет значение градиента яркости во всех точках изображения, используя простую аппроксимацию оператора градиента с помощью абсолютных значений. Затем на полученном массиве значений градиента выполняется описываемая ниже операция сглаживания.
Элементы растра разделяются на два класса: горизонтальные и вертикальные, в зависимости от того, какой из компонентов градиента для данного элемента преобладает. Если элемент растра горизонтален, с ним сравнивается два соседних элемента — верхний и нижний. Если значение яркости рассматриваемого элемента меньше, чем у одного из соседних, оно приравнивается нулю. Для вертикальных элементов растра прово-
дится аналогичная операция. Результаты последовательного применения этой сглаживающей операции, инвариантной к порядку выбора обрабатываемых элементов, записываются в новый массив. Значения яркости оставшихся ненулевыми после сглаживания элементов растра сравниваются с пороговым значением. Те элементы, где значение яркости превышает пороговое значение, используются для определения центра сборочного узла. Его местоположение соответствует центру симметрии конфигурации растровых элементов, прошедших операции сглаживания и порогового ограничения. С помощью двухмерной функции определения кривизны ищется центр симметрии, совпадающий с центром сборочного узла.
Поскольку метод, использующий функцию определения кривизны, дает некоторый результат при любом исходном изображении, следует убедиться в том, что найден действительно центр сборочного узла. Местоположение центра уже известно, поэтому для такой проверки можно воспользоваться маской (или шаблоном). Использование маски с абсолютными значениями яркости по шкале серого тона неудобно, поскольку заранее неизвестна относительная яркость сухарей и головки. Поэтому используется маска, подвергнутая операции сглаживания, и она сравнивается со сглаженным изображением. Проверка заключается в подсчете количества элементов растра с ненулевым значением яркости, находящихся в одинаковых позициях в маске и изображении.
После того, как найден центр сборочного узла, можно проводить проверку наличия сухарей. Яркость самого сухаря больше яркости отверстия, образующегося в том случае, когда сухарь отсутствует. Проверка наличия состоит в исследовании значений яркости вдоль линии окружности, проходящей через оба сухаря. Вычисляется средняя яркость элементов растра, лежащих на этой окружности. Вычисленное значение сравнивается с пороговым. Сборочный узел пружины клапана считается прошедшим проверку, если длина темной части окружности не превышает определенной доли полной длины. Этот простой тест работает достаточно хорошо, несмотря на то, что возможны отклонения в значении разности яркостей сухаря и отверстия, а также, несмотря на то, что специальные маркировочные знаки на сухаре могут приводить к выбросам в значении яркости отдельных элементов растра.
Несколько экземпляров системы "Кисайт” в настоящее время используются на производстве. Они являются демонстрацией того, насколько сложными могут быть системы полутонового технического зрения.
Сравнительная оценка систем. Системы ’’Кисайт” и ’’Консайт” — типовые СТЗ, применяемые в настоящее время в промышленности. Первая система использует анализ визуальной информации для технического контроля, вторая - для управления роботом. Система ’’Кисайт” представляет собой образец доступного в настоящий момент уровня сложности при обработке полутоновых изображений. Система ’’Консайт” демонстрирует использование структурированного освещения.
Использование в системе ’’Консайт” структурированного освещения
позволяет свести сложную задачу анализа полутонового изображения к существенно более простой задаче анализа бинарного одномерного образа. Но эта система отличается от традиционных систем с бинарным анализом тем, что трехмерные структуры могут обрабатываться без предварительного построения трехмерной модели объекта по совокупности двухмерных образов.
Система ’’Консайт” использует простейший способ структуризации освещения, так как для определения толщины детали используются только два значения (двоичная функция). С помощью телекамеры с двухмерной матрицей фотодетекторов можно было бы определять значения толщины детали с точностью, ограничиваемой только разрешающей способностью камеры. Наращивание возможностей системы можно продолжить, используя сочетание структурированного освещения и стереоскопической камеры. Таким путем можно подойти к созданию надежной системы трехмерного зрения.
На примере системы ’’Кисайт” ясно виден недостаток систем автоматического контроля с использованием полутонового зрения: составлять программы, обеспечивающие их работу, трудно, особенно по сравнению с программами, используемыми в системах бинарного зрения. Возможности системы ’’Кисайт” очень ограничены: она может проверять наличие сухарей на клапане и больше ничего. Главной целью исследований должно стать построение ’’обучаемых” систем полутонового зрения.
Бинарная схема СТЗ, обладающая рядом преимуществ, начинает воплощаться в промышленные изделия. Более того, бинарные СТЗ интенсивно развиваются и используются многими компаниями,включая ”Дже- нерал Моторе”, ’’Хитати” и ’’Тэксас Инструменте” (Texas'Instruments), поэтому проблемы, связанные с ними, заслуживают дальнейшего обсуждения.
Ожидаемые результаты. В будущем можно ожидать коренных усовершенствований в использовании структурированного освещения и анализа полутоновых изображений. Эти усовершенствования остро необходимы для целей автоматизации технического контроля и повышения эффективности использования очувствленных промышленных роботов. В частности, стремление снизить требования к точности позиционирования деталей и объектов быстро привело к созданию роботов, умеющих видеть, осязать и измерять расстояния. Из этих трех сенсоров наиболее полезен, пожалуй, зрительный.
Относительно зрения (и сенсоров вообще) можно сделать следующие заключения. Сенсорный ввод информации в систему управления роботом (зрение, осязание, измерение расстояний) снизит требования к точности позиционирования, обеспечит высокую адаптивность оборудования в процессе работы, создаст возможность осуществления общего контроля. СТЗ обеспечат получение позиционирующей информации, устраняя необходимость прецизионного взаимного размещения робота, деталей и другого оборудования. Они же будут выполнять многие операции контроля, включая входной контроль заготовки, контроль в процессе обра-
ботки и окончательный контроль качества. Тактильные датчики, способные измерять усилие, и построенные на их основе системы управления обеспечат выполнение точного позиционирования, позволят обнаруживать необычные ситуации (например, возможность столкновения), сделают возможной высокоточную сборку.
Ниже приводится перечень новых функциональных возможностей всех выше перечисленных достижений. Указываются приблизительные сроки, когда эти функциональные возможности могут найти широкое применение. Не следует считать, что все эти возможности появятся в указанные сроки — имеется в виду, что при определенной целеустремленности исследователей и привлечении соответствующих ресурсов они могут стать реальностью.
Ожидаемые возможности сенсорных систем ипредполагаемый срок их реализации
Снабжение робота деталями:1 °Д
с напольного конвейера1984
с лотков и палет 1986
с подвесного конвейера1987
из бункера-накопителя 1988
Автоматический контроль: простые контрольные операции1983
программируемый контроль1986
сложные контрольные операции1988
Адаптивное управление роботами: отслеживание траектории1983
автоматическое отслеживание сварочного шва1984
простые динамометрические операции1984
диспетчеризация процесса1985
сложные динамометрические операции 1987
Снабжение робота деталями. Снабжение робота деталями без применения специального оборудования, осуществляющего их точное позиционирование, станет характерной чертой робототехнических систем. Визуальный анализатор и измеритель расстояния дадут роботу возможность брать детали, случайным образом расположенные на ленточном конвейере, в кассете, в бункере, на подвесном конвейере.
Автоматический контроль. СТЗ смогут выполнять различные контрольные операции. Простые контрольные операции, такие, как проверка присутствия детали, уже сейчас выполняются с использованием технического зрения, но промышленных образцов сложных систем контроля с анализом полутоновых изображений пока практически нет. Под программируемым контролем понимается использование систем анализа полутоновых изображений или систем со структуризованным освещением, которые можно было бы легко перестраивать для работы с различными деталями с помощью замены программ, так же как это делается сейчас в системах бинарного анализа видеоинформации. Под сложными контрольными операциями понимается контроль качества. Примеры
сложных контрольных операций: контроль финишной металлообработки, проверка сборочных изделий.
Адаптивное управление роботами. Под адаптивным управлением понимается использование сенсорной информации для управления работой робота в реальном масштабе времени. Диспетчеризация процесса включает в себя постоянное слежение за его протеканием и приспосабливание действий робота (например, изменение скорости) к условиям конкретной сложившейся в ходе процесса ситуации. Приемы, аналогичные автоматическому отслеживанию сварного шва, будут использоваться при дуговой сварке и склеивании. Простые динамометрические операции используют одно- или двухосевые сенсоры для измерения сил (моментов вращения) по одной или двум степеням свободы. При выполнении сложных динамометрических операций будут измеряться значения сил и моментов, действующих по всем шести степеням свободы.
Заключение. Область технического зрения стала примером сложной технологии, в которой быстрое появление новых усовершенствованных анализаторов визуальной информации постоянно вызывает моральное старение уже существующих. В ближайшие десять лет ожидаются серьезные достижения, особенно в части применения структурированного освещения и анализа полутоновых изображений. Эти достижения должны привести к радикальному изменению отношения промышленности к автоматическому контролю и робототехнике.
’’Консайт” представляет собой плод усилий многих специалистов, в число которых входили М. Уорд (W.M. Ward) и С. Холланд (S. Holland). Идеи, легшие в основу "Кисайт”, принадлежат в основном У. Перкинсу (W. Perkins). М. Уорд добавил много сведений о достижениях, ожидаемых в областях робототехники и машинного зрения. Автор рисунка 1 ( С. Холланд.
СПИСОК ЛИТЕРА ТУРЫ
М. R. Ward. L. Rossol. S. W. Holland. 'CONSIGHT: An Adaptive Robot with Vision’, Robotics Today pp. 26-32 (Summer 1979),
L. Rossol. ’Vision and Adaptive Robots in General Motors’. Proc. 1st Int. Conf on Robot Vision and Sensory Controls, Stratford-upon-Avon, UK. IPS (Publications) (April 1981).
C. A. Rosen, 'Machine Vision and Robotics: Industrial Requirements’, Computer Vision and Sensor-Based Robots, ed. G. G. Dodd and L. Rossol, Plenum Press( 1979).
Глава 2ТЕХНИКА ОБРАБОТКИВИЗУАЛЬНОЙ ИНФОРМАЦИИ
Визуальные анализаторы могут создавать большие массивы информации. Если время обработки этой информации сопоставимо с длительностью рабочего цикла производственного оборудования, то для ее обработки следует использовать эффективные методы. Четыре последующие статьи детально описывают некоторые возможные приемы обработки визуальной информации и пути их дальнейшего совершенствования.
ОБРАБОТКА БИНАРНЫХ ИЗОБРАЖЕНИЙ
П.В. Китчин, "Пэтсцентр Бенилюкс", Бельгия, и А. П ь ю,факультет электроники Гулльского университета, Англия
Работа впервые представлена в программе работ 1-й летней , s школы Научно-технического исследовательского совета (НТИС)
по робототехнике, Гулльский университет, сентябрь 1981 г.Печатается с разрешения НТИС.
Эта статья написана для использования в учебном процессе и посвящена реализациям алгоритмов выделения границ с помощью кодирования цепочками по Фримену [4 9]. Обработка двоичных изображений имеет прямое отношение к приложениям СТЗ роботов, даже в том случае, когда исходное изображение - полутоновое. Довольно трудно кратко охарактеризовать работу, в которой детально рассматриваются методы, применяемые в СТЗ роботов. Безусловно, приводимый материал не претендует на полноту. Здесь описаны результаты исследований группы ученых за период 1969-73 гг. Термины, не являющиеся общепринятыми, взяты из тезисов диссертации на соискание ученой степени доктора наук, опубликованных в 1977 г. [22]. К этой же работе отсылаются желающие ознакомиться с излагаемыми вопросами более подробно.
Введение. Результаты исследований методов обработки двухмерных образов, представленных в виде двоичной матрицы,отражены в соответствующих публикациях (см. в работах Ульмана [1] и Розенфельда [2]). Большая часть этих работ посвящена решению задачи распознавания символов. Поскольку большинство описанных методов применимо к рассматриваемым нами задачам, полезно отметить некоторые существенные отличия между требованиями, предъявляемыми к решениям задач распознавания символов и к организации визуальной обратной связи при выполнении сборочных операций в машиностроении.
Форма и размер. Будем считать все объекты, представленные в системе автоматической сборки, точными проекциями соответствующих реальных объектов. Объекты могут быть любой формы, число различных объектов неограниченно. Любое обнаруженное анализирующей системой отклонение от формы или размера, которое может повлечь за собой ошибки сборки, служит основанием для отбраковки детали (это не означает, что предполагается проверка 100 % деталей). Поэтому полученное в результате анализа описание объекта должно содержать всю присутствовавшую в образе информацию о размерах и форме этого объекта. Напротив, система распознавания символов в общем случае должна допускать значительные отклонения (различное начертание) в распознаваемых символах. В наиболее сложном случае распознаются рукописные символы. Однако число типов распознаваемых символов всегда ограничено. Наибольшая достоверность распознавания достигается при использовании шаблона при анализе печатных шрифтов, специально предназначенных для оптического считывания, например ОКР-А и ОКР-Б (OCR-А и OCR-B).
Параметры положения. Детали, с которыми работает робот-сборщик, могут располагаться в любой точке в пределах поля зрения и иметь произвольную ориентацию. Хотя для распознавания детали требуется ее описание, инвариантное к параметрам положения, определение значений этих параметров также является важной функцией анализатора визуальной информации. Значения параметров положения используются при выполнении последующих операций. Задача распознавания символов упрощается тем, что, хотя строчки символов могут быть наклонными, отдельные символы обычно попадают в поле зрения распознающей системы в довольно жестко фиксированном положении, измерять параметры которого нет необходимости.
Число объектов. Естественно требовать от визуального анализатора робота-сборщика умения работать с несколькими одновременно находящимися в поле зрения и расположенными случайным образом деталями. Решение задачи разделения объектов при распознавании символов облегчается тем, что заранее известны размеры и курсив символа (в случае распознавания печатных символов). Такая информация позволила создать приемы разделения соприкасающихся символов [1]. В настоящей работе не ставится задача различить соприкасающиеся объекты. Их совокупный силуэт будет восприниматься как единый, предположительно неизвестный объект.
Отсутствие ограничения на количество типоразмеров объектов, с которыми приходится работать распознающей системе, приводит к необходимости создавать полное описание формы для каждого образа. Впрочем, существует несколько основных параметров, которые однозначно определяются для контура любой конфигурации. Используя их, можно получить ценную информацию о типе и положении объекта.
В число этих параметров входят: площадь, периметр, минимальный охватывающий прямоугольник (размеры), центр площади (центроид), радиус-вектор минимальной длины (длина и направление), радиус-век-
тор максимальной длины (длина и направление), характеристики отверстий (количество, размер, расположение).
Значения площади и периметра — простейшие инвариантные к ориентации и расположению характеристики. При решении задачи распознавания объекта [3] использовался безразмерный ’’коэффициент формы” — (площадь)/(периметр) [2]. Координаты вершин минимального охватывающего прямоугольника дают некоторую информацию о форме и величине объекта, но их значение зависит от его ориентации. Центр площади это точка, которая легко определяется для любого объекта независимо от его ориентации, вследствие чего центр площади играет важную роль при обнаружении и распознавании объекта. Он же задает начало радиус-вектора, соединяющего центр площади с точкой, лежащей на границе объекта. В принципе, радиус-векторы максимальной и минимальной длины могут быть полезны при распознавании и определении параметров положения объекта.
Обычно в промышленных деталях имеются отверстия. Их количество — тоже полезная характеристика. Отверстия могут распознаваться как объекты некоторой формы и размера, определенным образом ориентированные относительно основного объекта, в котором они обнаружены.
Наиболее удобный способ получения подробного описания произвольного геометрического объекта и установления связности образа — это прослеживание границы. Прослеживание начинается с выбора произвольной точки, лежащей на черно-белой границе проекции объекта. Затем выполняется алгоритм, последовательно определяющий смежные точки, лежащие на границе, до тех пор, пока не будет совершен полный обход контура. Последовательно записывая направления движения вдоль границы от каждой текущей точки к последующей, получаем одномерное описание проекции объекта, содержащее информацию о его форме. Такие цепочки направлений всесторонне изучались Фрименом [4—9]. Когда граница прослежена, легко определить площадь, периметр, центр площади и охватывающий прямоугольник. Описание границы также удобно и для определения радиус-векторов.
Прослеживание границы устанавливает связность анализируемого объекта. Продолжая просмотр в поисках следующих объектов, можно повторно обнаружить уже отслеженную границу.
Чтобы избежать этого, Розенфельд [2] предлагает во всех точках, просмотренных программой отслеживания границы, заменять единицы на двойки для первого обрабатываемого объекта, на тройки — для второго объекта и т.д. (единица соответствует объетку или ’’черному” элементу растра в исходном образе, а ноль соответствует фону или ’’белому” элементу). Но такой подход требует более одного бита для представления каждой точки исходного образа, и из-за этого не годится для систем с малым размером памяти.
Авторы предлагают для решения этой задачи использовать оператор поточечного дифференцирования или выделения границы, применяя его сразу же после считывания образа телекамерой. Этот оператор заменяет
все единицы в образе на нули, за исключением точек, лежаюших на границе черного и белого полей. Полученные с помощью ЭВМ контуры квадрата и круга, расположенных в поле зрения камеры, приведены на рис. 1. На рис. 2 показан результат применения к этому изображению оператора выделения границы. Процедура прослеживания границы EDGETRACE может работать с промежуточным изображением точно так же, как с исходными объектами. Она построена так, что просматриваемые ею элементы растра ’’обнуляются”, т.е. прослеживание границы объекта удаляет его из изображения, делая невозможным повторное обнаружение.
Сглаживание. Метод обработки изображений объектов, основанный на прослеживании границ, может оказаться неработоспособным, если на границе объекта будут обнаружены резкие скачки контрастности. В системах распознавания символов прослеживание границ обычно предваряется операцией сглаживания (локального усреднения), которая пытается уничтожить просветы (белые точки, которые должны были быть черными) и ложные черные точки, а также соединить небольшие разрывы. В операции сглаживания по Дайнину [10] на каждый элемент растра по очереди накладывается окно размером иХи элементов и подсчитывается количество черных элементов, попавших в окно. Создается новое растровое представление, в котором каждый элемент соответствует отдельной позиции окна. В этом растровом представлении элемент будет черным только в том случае, когда количество черных элементов, попавших в соответствующее ему окно, превышает некоторое заранее заданное число. Наименьший применяемый на практике размер окна 3X3 элемента. Унгер [11] предложил процедуру сглаживания, в которой вместо усреднения содержимого окна размером 3X3 элемента к нему применяются некоторые логические операции, определяющие значение элемента нового образа. Недостаток обоих методов — довольно большой объем операций с памятью; и в том и в другом случае все определения значения элемента
Рис. 1. Содержимое растра после процедуры INPUT-FRAME
Рис. 2. Содержимое растра после выделения границ
нового образа приходится выполнить около 100 машинных операций.
Объекты, с которыми имеет дело робот-сборщик, отличаются от печатных символов тем, что любые просветы в соответствующих им образах означают наличие дефектов и служат достаточным основанием для отбраковывания такого объекта. Изредка возникающие изолированные шумовые точки в общем случае не оказывают влияния на работу алгоритма прослеживания границы. Поэтому специальные сглаживающие операции не используются, хотя в процедуре прослеживания предпринимаются меры для уменьшения влияния шумовых точек.
Выделение границы - процедура OUTLINEFRAME. Оператор выделения границы должен создавать непрерывную последовательность граничных точек, обеспечивая возможность прослеживания границы. Для минимизации времени вычисления при создании каждого элемента нового образа следует использовать доступ к минимально возможному количеству элементов исходного образа.
Рис. 3. Варианты определения контураобъекта:а — край по Розенфельду; б — границапо Розенфельду; в — используемаясхемаРис. 3. Варианты определения контураобъекта:а — край по Розенфельду; б — границапо Розенфельду; в — используемаясхемаоО ОоОо
Рис. 3. Варианты определения контураобъекта:
а — край по Розенфельду; б — границапо Розенфельду; в — используемаясхема
Рис. 3. Варианты определения контураобъекта:
а — край по Розенфельду; б — границапо Розенфельду; в — используемаясхема
ооооЖЖ
Оо ЖЖ••
Ж Ж • • • еЖ Ж • • • еРис. 4. Определение значения элементовграницы
Ж Ж • • • е
Ж Ж • • • е
о оо
ОООО ОО
X х - °°
оооо X е•(с)
X;
ооХеХеее •о
XX
•••еег
• о
Гс) о ОО о о о -
X X ••
оооое е
XXX1
ооееее
X X•о
ееее его
Розенфельд [12] различает понятия ’’край” и ’’граница” (рис. 3). Край - это совокупность внешних элементов растрового представления объекта, граница же проходит посередине между горизонтально или вертикально смежными точками, одна из которых принадлежит объекту, а другая - фону. Для наших целей будем использовать концепцию границы, так как она более точно представляет линию, реально разделую- щую черные и белые области растра.
Эта концепция обеспечивает однозначность решения в случае линии толщиной в одну точку. Использование концепции края приведет к получению результата, непригодного для последующей работы алгоритма прослеживания, так как два края линии будут совпадать.
Недостаток определения границы по Розенфельду заключается в том, что итоговый массив имеет вдвое большую точечную плотность, чем исходный, при сохранении взаимно однозначного соответствия двух массивов. Новый массив граничных точек создается с таким же расстоянием между точками, как исходный, но при этом каждая точка сдвигается по координатам х и у наполовину этого расстояния. Каждая точка нового массива лежит в центре квадрата, в вершинах которого находятся точки исходного массива, а ее состояние (черное или белое, граница или не граница) определяется по состоянию этих четырех точек. Аналогичный подход рассматривается Сарагой и Вавишем [13].
Шесть основных (из числа шестнадцати возможных) сочетаний состояний четырех смежных элементов исходного образа показаны на рис. 4. Там же приведены интуитивные определенные значения соответствующих элементов массива, содержащего описание границы. Значение для конфигурации d выбрано нулевым для обеспечения однозначности в случае линии толщиной в одну точку.
Прослеживание границы — процедура EDGETRACE. Параметры. EDGETRACE — процедура, определяющая, принадлежит ли границе объекта точка, обнаруженная в дифференцированном образе. Координаты начальной точки вводятся в глобальные переменные целого типа STARTX, STARTY. Процедура EDGETRAGE вызывается как логическая процедура — функция, например, в операторе
IF EDGETRACE THEN ... ELSE
Значение ’’истина” вырабатывается процедурой тогда, когда найдена замкнутая граница, включающая в себя больше заранее определенного числа точек.
Процедура EDGETRACE определяет значения совокупности параметров, относящихся к контуру, а также создает описание самого контура в форме списка векторов, представленных глобальными переменными (табл. 1). Смысл параметров поясняет рис. 5.
Определение значений ХМ АХ, XMIN, YMAX, YMIN сделано необязательным. Если оно желательно, следует установить признак слова EDGEFLAG (т.е. сделать значение соответствующего слова ненулевым). Точно так же с помощью признака CHAINFLAG можно включать и выключать запись значений в счетчик CHAINCOUNT и массив CHAIN.
1. Параметры, значение которых определяетпроцедура EDGETRACE
Переменная
Значение
PERIMETER
Длина прослеженного контура, положительное целое число
AREA
Площадь, ограниченная контуром, положительное
целое число
ХМАХ
Максимальное и минимальное значения
XMIN
координат точек, принадлежащих кон-
УМАХ
YMIN
туру, отрицательные целые числа' Л
XCENTROID
Координаты центра площади, ограни-
YCENTROID
ченной контуром, отрицательные целые числа
CHAINCOUNT
Количество элементарных векторов, составляющих контур, совпадающее с количеством просмотренных граничных точек, отрицательное целое число
CHAIN
Упорядоченный массив значений, задающих направления элементарных векторов, составляющих контур. Массив состоит из элементов CHAINCOUNT
Цепная запись и основной алгоритм. В настоящей работе точка матрицы, соответствующей образу, считается связанной с другой точкой, если последняя находится в одной из восьми позиций, непосредственно смежных с первой точкой. Соединение любой пары связанных точек может быть представлено одним из восьми элементарных векторов (рис. 6), направления которых помечены значениями от -8 до -1 (отрицательные значения взяты для совмещения со схемой индексации ЭВМ PL-516).
Алгоритм прослеживания границы ’’обнуляет” значение найденной точки, принадлежащей контуру, до перехода к следующей точке. Таким образом, из матрицы FRAME удаляются прослеженные очерки. Базовая точка поиска перемещается по контуру против часовой стрелки, что при
$ТАШ-127STARTYX1\YMINCHAINH)CHAINmini TER ^^^^^^^)YCENTROID1 W// 1I'1YMAXi it 11—.1- /27 XMIN XCENTROID XMAX 0Рис. 5. Параметры, определяемые процедурой EDGETRACEОООооооооооо- о* ооооооооооооX0Рис. 6. Определение элементарных векторов$ТАШ-127STARTYX1\YMINCHAINH)CHAINmini TER ^^^^^^^)YCENTROID1 W// 1I'1YMAXi it 11—.1- /27 XMIN XCENTROID XMAX 0Рис. 5. Параметры, определяемые процедурой EDGETRACEОООооооооооо- о* ооооооооооооX0Рис. 6. Определение элементарных векторов
$ТАШ-127
STARTYX1
\YMIN
CHAINH)
CHAIN
mini TER ^^^^^^^)YCENTROID
1 W// 1
I'1YMAX
i i
t 11—.1
- /27 XMIN XCENTROID XMAX 0
Рис. 5. Параметры, определяемые проце
дурой EDGETRACE
ОООоо
ооооо
оо- о* оо
ооооо
ооооо
X0
Рис. 6. Определение элементарных векторов
$ТАШ-127
STARTYX1
\YMIN
CHAINH)
CHAIN
mini TER ^^^^^^^)YCENTROID
1 W// 1
I'1YMAX
i i
t 11—.1
- /27 XMIN XCENTROID XMAX 0
Рис. 5. Параметры, определяемые проце
дурой EDGETRACE
ОООоо
ооооо
оо- о* оо
ооооо
ооооо
X0
Рис. 6. Определение элементарных векторов
поиске контуров с помощью развертки обеспечивает первое вхождение в контур извне. Войти в контур изнутри можно только в том случае, если он пересекает границу матрицы. При этом процедура EDGETRACE выдаст сообщение об ошибке.
Нет необходимости проверять в каждой точке контура объекта все восемь соседних точек — некоторые из них уже были проверены на предыдущем шаге, когда базовой точкой поиска была предыдущая. До начала локального поиска в зависимости от направления предыдущего вектора устанавливаются переменные SEARCHDIRN (первое проверяемое направление) и ENDDIRN (последнее проверяемое направление).
На рис. 7 показано, каким образом определяются первое и послед-
рис. 7. Определение начального SD и конечного ED проверяемых направлений: ; — последний вектор, равный — 8; 2 — последний вектор, равный — 7; 3 — последний вектор, равный — 6; 4 — последний вектор, равный — 5; 5 — последний вектор, равный — 4; 6 — последний вектор, равный — 3; 7 — последний вектор, равный — 2; 8 _ последний вектор, равный — 1; 9 — первая точка, найденная при просмотре
растрарастраРис. 8. Цепное описание контура простой формыРис. 8. Цепное описание контура простой формыНаправление сканирования -Х^Х'Направление сканирования -Х^Х'х—►Х Xх—►Х Xх—^ х —► х —► X—► Xх—^ х —► х —► X—► X- /-2-2-2-2-3-5-6-2- 7-8-8-8-9-8-10-11-6-'2-6-13-6-19-6-15_ с-16-17-9-18-4-19 i .-20-4- /-2-2-2-2-3-5-6-2- 7-8-8-8-9-8-10-11-6-'2-6-13-6-19-6-15_ с-16-17-9-18-4-19 i .-20-4Момер элемента Значение цепочкиэлемента цепочкиМомер элемента Значение цепочкиэлемента цепочки
растра
растра
Рис. 8. Цепное описание контура простой формы
Рис. 8. Цепное описание контура простой формы
Направление сканирования -Х^Х'
Направление сканирования -Х^Х'
х—►Х X
х—►Х X
х—^ х —► х —► X—► X
х—^ х —► х —► X—► X
- /
-2
-2
-2
-2
-3
-5
-6
-2
- 7
-8
-8
-8
-9
-8
-10
-11
-6
-'2
-6
-13
-6
-19
-6
-15
_ с
-16
-17
-9
-18
-4
-19 i .
-20
-4
- /
-2
-2
-2
-2
-3
-5
-6
-2
- 7
-8
-8
-8
-9
-8
-10
-11
-6
-'2
-6
-13
-6
-19
-6
-15
_ с
-16
-17
-9
-18
-4
-19 i .
-20
-4
Момер элемента Значение цепочкиэлемента цепочки
Момер элемента Значение цепочкиэлемента цепочки
нее проверяемые направления. Там же показан случай первого после вхождения в процедуру поиска, когда направление предыдущего вектора определяется направлением просмотра растра.
На каждом шаге поиска просматривается до шести точек, но обычно их число меньше. На прямолинейных участках контура до нахождения следующей его точки чаще всего достаточно просмотреть одну-две точки.
Полное описание очеркового контура формируется в виде списка направлений векторов, соединяющих каждую точку контура с последующей в том порядке, в котором они были найдены (массив CHAIN). Результат применения процедуры прослеживания границы к простому контуру и полученное ’’цепное” описание показаны на рис. 8.
Параллельно с определением точек контура проводятся вычисления периметра, площади и моментов площади первого порядка.
Вычисление периметра. Параметр представляет собой сумму длин элементарных векторов, составляющих контур. Эти векторы имеют длину 1 (направления с четными номерами) или \П единицы растра (направления с нечетными номерами). Предполагается, что расстояние между точками в матрице равно размеру элемента растра. По мере нахождения новой точки контура в зависимости от того, каким было направление последнего вектора, увеличивается на единицу значение одной из переменных — EVENPERIM или ODDPERIM. В конце процедуры вычисляется и округляется до ближайшего целого значение периметра:
PERIMETER = EVENPERIM + ODDPERIM
Вычисление площади. Площадь, ограниченная контуром, вычисляется как сумма площадей, ограниченных элементарным вектором, вертикалями, проведенными через его концы, и подходящей горизонтальной линией (ей приписывают значение У = 0). С учетом нумерации направлений векторов получается, что элементарные векторы с уменьшающейся компонентной х (—5, —4, —3) вносят в общую сумму положительные значения, а векторы с увеличивающейся компонентой х (-7, -8, —1) - отрицательные (из рис. 9 видно, что Y имеет отрицательные значения). При таких условиях площадь, ограниченная контуром, прослеживаемым против часовой стрелки, будет иметь положительное значение.
На рис. 10 показан простой пример. Во избежание лишних манипуляций с коэффициентом 1/2 процедура EDGETRACE накапливает удвоенное значение площади (AREA2) и в конце вычислений делит его пополам.
Определение первых моментов площади и центроидов. Аналогичный метод используется для вычисления моментов ограниченной площади первого порядка относительно осей х и у. На рис. 11 показаны восемь элементарных векторов и первые моменты для площадей, заключенных между векторами и осью х (А^х). Сумма всех компонент ДМХ для контура даст отрицательное целое число, которое после деления на значение ограниченной площади даст координату ее центра по оси у.
Выражение для AVX в случае векторов с направлениями, имеющими нечетные номера, содержит постоянный член 1/6 или — 1/6. В замкнутом
Направление х*-х-*—х сканирования ^ • • Х^Направление х*-х-*—х сканирования ^ • • Х^хх♦• • •XIе • •Х-*Х X♦• • •XIе • •Х-*Х X- -б- -7- -б- -5- -4- -3- *2- -б- -7- -б- -5- -4- -3- *2НаправлениеПриращениеУдвоенноевектораплощадиприращениеК 12Y-7■ Н)1 ■2Y-1-600_с(Y^)(-0-2Yt1-4V (-1)-2Y-з1гЦ)И'-2Y-1-200-1(уЦ) 12Y+1НаправлениеПриращениеУдвоенноевектораплощадиприращениеК 12Y-7■ Н)1 ■2Y-1-600_с(Y^)(-0-2Yt1-4V (-1)-2Y-з1гЦ)И'-2Y-1-200-1(уЦ) 12Y+11 ! i * : : 11 !! i -i ip x Размер элемента1 ! i * : : 11 !! i -i ip x Размер элементаРис. 9. Приращения, вносимые элементарными векторами в значение площади, ограниченной контуромРис. 9. Приращения, вносимые элементарными векторами в значение площади, ограниченной контуромРис. 10. Вычисление площади, ограни-ченной контуромРис. 10. Вычисление площади, ограни-ченной контуром-1X0НомерЗначениеУдвоенноеУдвоеннаяэлементаэлементаприраще-площадьцепочкицепочкиние-1-200•-200-3-200-8-в-8-5-7-15-6-20-15-7-8-19-в-8. ■-4-23-8 --4-31 .-11-60-31-12-60-31-13-60-31-74-6-0-31-15-5'■+13-18-15-5+ 15-3 .-И-4+15+13-18-4+1Б+29-19-3+15+44-20-4+ 14+58Суммарнаяплощадь =29-1X0НомерЗначениеУдвоенноеУдвоеннаяэлементаэлементаприраще-площадьцепочкицепочкиние-1-200•-200-3-200-8-в-8-5-7-15-6-20-15-7-8-19-в-8. ■-4-23-8 --4-31 .-11-60-31-12-60-31-13-60-31-74-6-0-31-15-5'■+13-18-15-5+ 15-3 .-И-4+15+13-18-4+1Б+29-19-3+15+44-20-4+ 14+58Суммарнаяплощадь =29
Направление х*-х-*—х сканирования ^ • • Х^
Направление х*-х-*—х сканирования ^ • • Х^
х
х
♦• • •
X
Iе • •
Х-*Х X
♦• • •
X
Iе • •
Х-*Х X
- -б
- -7
- -б
- -5
- -4
- -3
- *2
- -б
- -7
- -б
- -5
- -4
- -3
- *2
Направление
Приращение
Удвоенное
вектора
площади
приращение
К 1
2Y
-7
■ Н)1 ■
2Y-1
-6
0
0
_с
(Y^)(-0
-2Yt1
-4
V (-1)
-2Y
-з
1гЦ)И'
-2Y-1
-2
0
0
-1
(уЦ) 1
2Y+1
Направление
Приращение
Удвоенное
вектора
площади
приращение
К 1
2Y
-7
■ Н)1 ■
2Y-1
-6
0
0
_с
(Y^)(-0
-2Yt1
-4
V (-1)
-2Y
-з
1гЦ)И'
-2Y-1
-2
0
0
-1
(уЦ) 1
2Y+1
1 ! i * : : 11 !! i -i ip x Размер элемента
1 ! i * : : 11 !! i -i ip x Размер элемента
Рис. 9. Приращения, вносимые элементарными векторами в значение площади, ограниченной контуром
Рис. 9. Приращения, вносимые элементарными векторами в значение площади, ограниченной контуром
Рис. 10. Вычисление площади, ограни-ченной контуром
Рис. 10. Вычисление площади, ограни-ченной контуром
-1
X
0
Номер
Значение
Удвоенное
Удвоенная
элемента
элемента
прираще-
площадь
цепочки
цепочки
ние
-1
-2
0
0
•
-2
0
0
-3
-2
0
0
-8
-в
-8
-5
-7
-15
-6
-2
0
-15
-7
-8
-19
-в
-8. ■
-4
-23
-8 -
-4
-31 .
-11
-6
0
-31
-12
-6
0
-31
-13
-6
0
-31
-74
-6-
0
-31
-15
-5'■
+13
-18
-15
-5
+ 15
-3 .
-И
-4
+15
+13
-18
-4
+1Б
+29
-19
-3
+15
+44
-20
-4
+ 14
+58
Суммарная
площадь =
29
-1
X
0
Номер
Значение
Удвоенное
Удвоенная
элемента
элемента
прираще-
площадь
цепочки
цепочки
ние
-1
-2
0
0
•
-2
0
0
-3
-2
0
0
-8
-в
-8
-5
-7
-15
-6
-2
0
-15
-7
-8
-19
-в
-8. ■
-4
-23
-8 -
-4
-31 .
-11
-6
0
-31
-12
-6
0
-31
-13
-6
0
-31
-74
-6-
0
-31
-15
-5'■
+13
-18
-15
-5
+ 15
-3 .
-И
-4
+15
+13
-18
-4
+1Б
+29
-19
-3
+15
+44
-20
-4
+ 14
+58
Суммарная
площадь =
29
контуре, состоящем из большого числа элементарных векторов, можно считать количества векторов всех направлений приблизительно одинаковым. Это приводит к взаимному уничтожению постоянных членов. Кроме того, постоянный член достаточно мал по сравнению с Y2 и с площадью, особенно в том случае, когда объект рассматривается вблизи и его образ занимает большую часть поля зрения. Поэтому можно упростить вычисления, пренебрегая постоянным членом.
Операций с коэффициентом 1/2 избегают так же, как при вычислении площади, — вычисляя значение 2 АМХ. Это значение вычисляется удвоенной длины XMOMENT процедурой SUMXMOMENT.
При завершении процедуры EDGETRACE XMOMENT делится на значение AREA2. Округляя результат до ближайшего целого, получаем координату Y центра площади — YCENTROID.
Точно так же, суммируя моменты площади относительно оси у получаем значение XCENTROID. На рис. 12 показаны значения, вносимые векторами различных направлений в суммарный момент.
Одна или небольшое число смежных ’’шумовых” точек, соответствующих, например, случайно попавшему в поле зрения обломку стружки, образуют контуры, состоящие из малого числа элементарных векторов. Подходящим значением для переменной MINCHAIN оказалось —10, т.е.
-X?-X?Х(-Х-1)Х(-Х-1)Рис. 11. Моменты первого порядка относительно оси х, соответствующие элементарным векторамРис. 11. Моменты первого порядка относительно оси х, соответствующие элементарным векторам-у2"У X 12 ~ 2 ~ 6-у2"У X 12 ~ 2 ~ 6
-X?
-X?
Х(-Х-1)
Х(-Х-1)
Рис. 11. Моменты первого порядка относительно оси х, соответствующие элементарным векторам
Рис. 11. Моменты первого порядка относительно оси х, соответствующие элементарным векторам
-у
2
"У X 1
2 ~ 2 ~ 6
-у
2
"У X 1
2 ~ 2 ~ 6
Рис. 12. Моменты первого порядка относительно оси у, соответствующие элементарным векторам''
любой замкнутый контур, длина которого не превышает 10 векторов, попросту не рассматривается.
Матрица образа после процедуры EDGETRACE. Описанный алгоритм прослеживания границ, обрабатывая дифференцированную матрицу, обнуляет все просмотренные точки, но это не означает, что будут просмотрены и обнулены все точки контура. Оставшиеся в матрице единичные точки обычно не составляют полного контура и при последующих операциях выступают как ’’шумовые”. Для минимизации их влияния должны предприниматься специальные меры. На рис. 13 показан вид матрицы образа FRAME (см. рис. 1 и рис. 2) после того, как процедура EDGETRACE обработала оба контура. Видны оставшиеся шумовые точки.
Идентификация отверстий - процедура INSIDE. Процедура INSIDE определяет, внутри или снаружи определенного контура лежит некоторая точка, принадлежащая матрице образа FRAME.
Предполагается, что контур, выделенный процедурой EDGETRACE, хранится в виде массива CHAIN и переменная CHAINCOUNT определяет его длину. Начальная точка цепочки задается целыми переменными PARTXSTART и PARTYSTART.
Координаты проверяемой точки вводятся в переменные STARTX и
Рис. 14. К теореме о числе пересечений прямой линии и замкнутой кривой:
а — Q находится вне S — PQ пересекает кривую четное число раз; б — Q находите* внутри S — PQ пересекает кривую нечетное число раз
STARTY и вызывается логическая процедура-функция INSIDE. Она вырабатывает значение "истина”, если проверяемая точка лежит внутри контура. При этом никакие значения в памяти не меняются.
Используемый алгоритм основан на следующей справедливой для плоскости теореме: если точка Р, лежащая вне замкнутой кривой S, соединена отрезком прямой с точкой Q, то точка Q тоже лежит вне кривой X тогда и только тогда, когда отрезок PQ пересекает кривую X четное число раз. Если PQ пересекает кривую 5 нечетное число раз, точка Q лежит внутри замкнутой кривой S (рис. 14). Доказательство приводится Курантом и Роббинсом [14].
В процедуре INSIDE упомянутый отрезок прямой проводится из проверяемой точки до края матрицы FRAME параллельно оси х, т.е. представляет собой часть луча Y = STARTY, X > STARTX (рис. 15). Пара локальных переменных (XCOORD и YCOORD) первоначально устанавливаются равными координатам начала хранимого контура. Из массива CHAIN последовательно считываются элементарные векторы. В зависимости от их значения модифицируются XCOORD и YCOORD (процедура UNCHAIN). Таким образом, XCOORD и YCOORD последовательно принимают значения координат всех точек, прослеженных в исходном контуре.
На каждом шаге проверяется, не лежит ли точка контура на луче У = STARTY, х > STARTX. Количество пересечений контура с этим лучом подсчитывается в целой переменной CROSSCOUNT. Множественные
Рис. 15. К определению взаимного положе-ния точки и контура
Рис. 16. Совпадение контура и тестового лу-ча в нескольких смежных точках:
а — число пересечений увеличивается; б —число пересечений не увеличивается
STAPTX, \_J
STAPTY х
6)
пересечения, когда линия контура совпадает с тестовым лучом в нескольких смежных точках, не учитываются (рис. 16). В момент вхождения линии контура в тестовый луч в переменной STRIKEDIRN записывается индекс направления вектора, входящего в луч. Для последующих точек, лежащих на луче, никаких действий не предпринимается. Когда очередной вектор контура выходит из тестового луча, текущее направление сравнивается со значением, записанным в STRIKEDIRN для проверки: был ли пересечен контуром тестовый луч (CROSSCOUNT увеличивается на единицу) или контур прошел касательно к лучу (CROSSCOUNT не меняется).
Когда все точки хранимого контура будут восстановлены, и проверены, проверяется значение CROSSCOUNT и процедура завершается с соответствующим результатом. Неоднозначные предельные случаи, когда проверяемые точки лежат на самом контуре, исключаются,!.к. в процессе прослеживания границы все такие точки обнулены.
После того, как выявлены контуры объекта, должны быть определены его ориентация и положение. Эта информация необходима для правильной работы с деталью в процессе сборки.
Задача определения ориентации. Основные процедуры обработки визуального образа анализируют содержащиеся в нем контуры (объекта и отверстий в нем) в параметрах площади, периметра, положения центра площади, охватывающего прямоугольника, описания контура цепочкой векторов. Эти параметры полезны для выполнения начальной обработки, но для распознавания образа и определения его ориентации требуется более полное использование информации об отверстиях и контуре.
Модель объекта, использующая отверстия.. Рисунок, образованный отверстиями, имеющимися в объекте, можно анализировать, используя расстояния центров площадей отверстий от центра площади объекта и их относительные угловые координаты. Кроме того, могут использоваться уже измеренные площади и периметры отверстий. Пример информации, составляющей такую модель объекта, показан на рис. 17.
Эта модель инвариантра к ориентации основного объекта и может непосредственно сравниваться с моделью-образцом. Когда будет установлено соответствие между отдельными отверстиями рассматриваемого
рис. 17. Параметры модели, использующей отверстия в детали
объекта и модели, значения ее абсолютных угловых координат могут использоваться для определения ориентации объекта.
Выделение особенностей контура. Модель контура представляет собой список — цепочку векторов. Но сравнивать представленную такой моделью входную информацию с образцом, как это делает, например, Фримен [ 7 ], сложно и долго. Основная трудность заключается в том, что начальная точка цепочки, представляющей контур объекта, расположена па нем случайным образом. Ее конкретное положение зависит от ориентации объекта и направления сканирования при просмотре. Сравниваемые цепочки приходится циклически смещать относительно друг друга до совпадения. К сожалению, описание контура цепочкой векторов не слишком удобно для выполнения операции поворота па угол, не кратный 45 . Установление соответствия еще более затрудняется тем, что эталон и входная цепочка в общем случае состоят из различного числа элементарных векторов.
Разработан ряд методов сглаживания цепных списков и нормализации их длин, обеспечивающих возможность сравнения. Зах [15] и Монтанари [16] описали методы получения аппроксимаций с помощью прямых минимальной длины, снижающие объем данных, подлежащих обработке. Но эти методы слишком сложны для использования в системе автоматической сборки. В такой системе основное требование - не обеспечить 100%-ное совпадение, при сравнении модели контуров, выделенных из входного изображения, с эталонами, а подтвердить результаты пробных проверок и определить ориентацию объекта.
Требуется модель, которая позволит наиболее быстро и легко определять ориентацию объекта. Наиболее подходящим для такой модели может оказаться подход, основанный на выделении особенностей очеркового контура. Многие методы распознавания символов, например по Хоскингу [17], используют повторяющиеся особенности структуры штрихов, составляющих символ. Такими особенностями являются концы штрихов, точки их соединения или излома, петли. Аналогичными особенностями, характерными для материальных объектов, могут служить резкие изменения направления контура (углы) и точки, максимально и минимально удаленные от центра площади фигуры. К сожалению, отсутствие ограничений на форму деталей, с которыми приходится иметь дело ро-
боту-сборщику, ограничивает ценность методов, использующих заранее составленный набор стандартных особенностей.
Модель с использованием окружностей. Угловые координаты радиус- векторов максимальной и минимальной длины могут служить удобным критерием распознавания объекта и средством определения его ориентации. Их значение выводится непосредственно из информации, генерируемой процедурой EDGETRACE. Но если в окрестности точки, экстремально удаленной от центра площади, длина радиус-вектора меняется мало (рис. 18), координаты R^ax H^MIN бУДУт ненадежны. Из этого вытекает, что более целесообразно во время настройки системы задавать такие значения длины радиус-вектора R, для которых соответствующая позиция конечной точки может быть четко определена. По сути дела, это сводится к наложению на образ окружности заданного радиуса, центр которой совпадает с центром площади объекта. Точки пересечения этой окружности с контуром объекта используются как его особенности. На рис. 19 особые точки определяются параметрами R, 61, 9Ъ 93, 94. Разности углов составляют инвариантный к ориентации набор параметров для распознавания, а их абсолютные значения могут использоваться для определения ориентации объекта.
Точки пересечения определяются на основе информации, сгенерированной процедурой EDGETRACE: для каждой точки контура, представленного цепным списком векторов, вычисляется ее расстояние от центра площади. Отмечаются точки, для которых это расстояние равно заданному радиусу, и вычисляются их угловые координаты относительно центра площади. Таким образом, точки пересечения оформляются в виде упорядоченного списка. Которая из точек находится в начале этого списка - зависит от того, с какого места контура начиналась процедура EDGETRACE. Вследствие этого сравнение списка особых точек с эталоном может
Рис. 18. Определение максимальной и Рис. 19. Определение параметров моде- минимальной длин радиус-векторали, использующей окружностиРис. 18. Определение максимальной и Рис. 19. Определение параметров моде- минимальной длин радиус-векторали, использующей окружности
Рис. 18. Определение максимальной и Рис. 19. Определение параметров моде- минимальной длин радиус-векторали, использующей окружности
Рис. 18. Определение максимальной и Рис. 19. Определение параметров моде- минимальной длин радиус-векторали, использующей окружности
потребовать установления соответствия списков циклическим смещением. Еще до сравнения с эталоном количество найденных пересечений можно использовать для распознавания.
Критериями вьгбора значения радиуса окружности могут служить следующие положения:
точки пересечения .должны однозначно определять ориентацию объекта;
количество точек пересечения не должно быть слишком большим (например, не больше восьми);
для повышения точности измерений радиус должен быть по возможности большим;
малые изменения длины радиуса не должны сильно влиять на угловые координаты точек пересечения;
малые изменения длины радиуса не должны приводить к исчезновению или появлению новых точек пересечения.
Последние два пункта необходимы для снижения влияния малых искажений во входном представлении образа.
R2-8* R2-8, R2- 8С Rt-Sn ri - еЕ R2~8FR2-8* R2-8, R2- 8С Rt-Sn ri - еЕ R2~8FR2-8g R2 - 8g RI - Bn RI - 8b R2 - 8f R2 - 8*R2-8g R2 - 8g RI - Bn RI - 8b R2 - 8f R2 - 8*Рис. 21. Перевернутая деталь рисунка 20Рис. 21. Перевернутая деталь рисунка 20Чтобы однозначно определить ориентацию детали или отличить ее от другой такой же детали, может оказаться необходимым задать более одной окружности. Тогда точки пересечения, найденные при обходе контура, будут представлены в виде упорядоченного списка пар значений ’’радиус - угол”. В примере, приведенном на рис. 20, используются два значения радиуса. Для двух ориентаций объекта приведены списки пар значений ’’радиус — разность углов в порядке нахождения соответствующих точек. При сравнении двух образцов в первую очередь проверяется, совпадают ли длины списков. Затем проверяется попарное равенство элементов списка - оба значения в каждой паре. Если равенства не обнаружено, то один из списков циклически смещается и попарное сравнение повторяется. Поскольку оба списка генерируются для одинаковых значений радиусов, в списках их можно заменить целочисленными обозначениями.
R2-8* R2-8, R2- 8С Rt-Sn ri - еЕ R2~8F
R2-8* R2-8, R2- 8С Rt-Sn ri - еЕ R2~8F
R2-8g R2 - 8g RI - Bn RI - 8b R2 - 8f R2 - 8*
R2-8g R2 - 8g RI - Bn RI - 8b R2 - 8f R2 - 8*
Рис. 21. Перевернутая деталь рисунка 20
Рис. 21. Перевернутая деталь рисунка 20
Рис. 20. Списки nap значений "радиус-угол"
Сравнение значений измеренных углов необходимо выполнять только в случае полного совладания списков обозначений радиусов. Это упрощает процедуру сравнения. Когда установлено соответствие обоих списков, могут быть вычислены разности абсолютных угловых координат для каждой пары смежных точек пересечения. Эти шесть значений предназначены для определения ориентации одного объекта относительно другого. Еще одним свойством модели, использующей окружности, является возможность фиксировать случай, когда деталь лежит обратной стороной вверх. На рис. 21 показано, что для перевернутой детали значения разностей углов при совмещении списка с обозначениями радиусов идут в обратном порядке.
Таким образом, модель с использованием окружностей представляет собой мощное средство определения особых точек на очерковом контуре объекта произвольной формы. Эти точки могут использоваться при распознавании и определении ориентации. Размер памяти, используемой для хранения модели-эталона составляет всего два слова на каждую точку пересечения, а необходимые данные о сканируемой детали могут быть получены из информации, генерируемой процедурой EDGETRACE. В сочетании с моделью, использующей отверстия, она использовалась на низшем уровне распознавания и определения ориентации деталей в управляющей системе робота-сборщика.
Заключительные замечания. Эту статью следует рассматривать лишь как введение в предмет. В последнее десятилетие вышло много публикаций на аналогичные темы, особенно в трудах международных конференций. Некоторые из последних работ вошли в настоящий сборник. Дополнительная информация о визуально управляемом интерактивном роботе-сборщике SIRCH, упоминавшемся в статье, может быть получена из [18—22].
СПИСОК ЛИТЕРА ТУРЫ
[1 ] J. R. Ullman.‘Pattern recognition techniques'. Butterworths. London (1972).
A. Rosenfeld, ‘Picture processing by computer’. Academic Press, New York (1969).
H. G. Barrow and R. J. Popplestone. ’Relational descriptions in picture processing’. Machine Intelligence 6. Edinburgh University Press (1971).
H. Freeman, ‘On the encoding of arbitrary geometric configurations’. IRE Trans, on Electronic Computers, June 1961.
H. Freeman. ’Techniques for the digital computer analysis of chain-encoded arbitrary plane curses.Proc Nat ElectronicsCont.NoV 17,Chicago(1961).
H. Freeman. ‘On the digital computer classification of geometric line patterns’. Proc. Nat. Electronics Conf ,No\. !8.Chicago(1962).
H. Freeman. ‘Apictonal jigsaw puzzles: the computer solution of a problem in pattern recognition’, IEEE Trans EC-13. April 1964.
H. Freeman. ‘A review on relevant problems in the processing of line-drawing data*. Automatic Interpretation and Classification of Images, Academic Press. New York (1969).
H. Freeman. ‘Computer processing of Line-Drawing Images’. Computing Surveys, Vol. 6. No. 1 (March 1974).
G. P. Dineen. ’Programming pattern recognition’. Proc. Western Joint Computer Conf, Los Angeles 1956.
S. H. Unger.‘Pattern detection and recognition'. Proc IRE, October 1959, pp. 1737-1752.
A. Rosenfeld, ‘Connectivity in digital pictures'. J. Assoc. Computing Machinery, Vol. 17, No. 1 (January 1970).
P Saraga and P.\R. Wavish, ‘Edge coding operators for pattern recognition’. Electronics Letters, Vol. 7. No. 25(16 December 1971).
R. Courant and H. Robbins, ‘What is mathematics?', Oxford University Press, London (1941) pp. 267-269.
С. T. Zahn, ‘A formal description for two-dimensional patterns’. Proc. Joint International Cont. Artificial Intelligence, Washington 1969.
U. Montanari. ‘A note on minimal length polygonal approximation to a digitized contour’, Comm. ACM,Vol. 13,No. 1 (January 1970).. . ,
К. H. Hosking and J. Thompson, ‘A feature detection method for optical character recognition , IEE/NPL Conf, on Pattern Recognition, London, July 1968.
A. Pugh, W. 8. Heginbothartt and P. W. Kitchin. ’Visual feedback applied to programmable assembly machines’. Proc. 2nd I nt. Symp. on Industrial Robots, UTRl, Chicago, May 1972.
W. 8 Heginbotham. D. W. Gatehouse. A. Pugh, P. W. Kitchin and C. J. Page. ‘The Nottingham ’’SIRCH" assembly robot'. Proc. 1st Conf, on Industrial Robot Technology, University of Nottingham, March 1973.
C. J. Page, ‘Visual and tactile feedback for the automatic manipulation of engineering parts’, PhD. Thesis. University of Nottingham, 1974.
C. J. Page and A. Pugh, ’Visually interactive gripping of engineering parts from random orientation’, Digital Systems for Industrial Automation, Vol. l.No. l.pp. 11-44(1981).
P. W. Kitchin, ‘The Application of Visual Feedback to Assembly Machines', Ph D. Thesis, University of Nottingham, England, October 1977.
ПОИСК И РАСПОЗНАВАНИЕ
ЧАСТИЧНО ВИДИМЫХ ОБЪЕКТОВ:
МЕТОД ВЫДЕЛЕНИЯ ЛОКАЛЬНЫХ ПРИЗНАКОВ ’
Р.С. Б о л л с, Р.А. К э й н
Стенфордский исследовательский институт, США
Перепечатывается по разрешению из Robotics Research, т. 1 ,N 3
© 1982, Массачусетский технологический институт
В работе представлен новый метод определения положения не полностью видимых двухмерных объектов. Метод применим к сложным промышленным деталям, в которых локальные признаки (углы, отверстия и т.п.) могут повторяться многократно. Для построения гипотезы распознавания используются кластеры устойчивых признаков, а для ее проверки — модели объектов. Быстродействие метода обусловлено тем, что внимание сосредоточивается на ключевых признаках, которые выбираются автоматически на основе подробного анализа моделей объектов (аналогичных тем, что используются в САПР). Для построения внутреннего представления кластеров локальных признаков и их анализа используются обобщенные программы. Эти программы могут быть применены для выбора локальных признаков и в том случае, когда используется отличная от предлагаемой стратегия поиска объектов. Алгоритмы определения центральной и осевой симметрии объектов используются в терминах принадлежащих им локальных признаков.
Введение. Одним из серьезных факторов, мешающих использованию
автоматизации в промышленности, является неспособность современных робототехнических систем выбирать детали из контейнера и помещать их в определенную точку рабочей зоны в определенном положении. Современные СТЗ, такие, как ГО-100 фирмы МИК [1], ОМНИКОН (OMNICON), Баута и Ломба [2] и зрительный модуль фирмы ’’Отомэтикс” (Auto- matixV могут находить и распознавать только изолированные детали на контрастном фоне. Эти системы работают с бинарными образами, измеряя глобальные характеристики (площадь, протяженность, длина периметра и др.) и сравнивая результат со значениями, задаваемыми эталонной моделью. Многие задачи естественно укладываются в рамки этих ограничений или могут быть введены в них на уровне инженерных решений. Но существуют задачи, которые сложно или невыгодно приводить к форме, включающей лишь полностью видимые изолированные детали. В настоящей работе описывается метод поиска и распознавания не полностью видимых объектов с использованием двухмерных моделей.
Диапазон задач, в который входит определение положения не полностью видимых объектов, простирается от сравнительно простых (определение параметров положения одиночного плоского объекта) до очень сложных (например, определение параметров положения объемных деталей, лежащих в бункере навалом).
В работе рассматриваются задачи, двухмерные в том смысле, что параметры положения объекта задают только его положение на плоскости, параллельной картинной плоскости телекамеры. Это ограничение обеспечивает простое однозначное соответствие между размерами и ориентацией образа, с одной стороны, и размерами и ориентацией объекта в поле зрения, с другой стороны.
Класс двухмерных задач может быть разделен на четыре подкласса, различающихся сложностью предметного поля. Оно может содержать: один объект;
два или более объектов, возможно, касающихся;
два или более объектов, возможно, перекрывающих друг друга; один или более объектов, которые могут быть бракованными.
Этот список упорядочен в соответствии со степенью сложности распознавания и определения положения объектов. На рис. 1—4 приведены примеры, относящиеся к указанным подклассам.
На рис. 1 показана часть детали самолетного корпуса. Поиск отвер-
Рис. 1. Часть детали корпуса самолета Рис. 2. Соприкасающиеся детали на палете
стий в такой детали при монтаже может служить примером типовой задачи. Так как в каждый момент времени в поле зрения находится только одна часть детали, каждый из ее признаков появляется только один раз, что облегчает распознавание этих признаков. Если одновременно видны несколько объектов, возможно, касающихся друг друга (рис. 2), каждый из признаков может .появиться несколько раз. Признаки, характерные для границы детали, могут не поддаваться распознаванию из-за касания объектов. Если объекты лежат друг на друге (рис. 3), то некоторые из внутренних отверстий деталей могут оставаться нераспознанными, так как они полностью или частично заслонены. Наконец, если объект имеет некоторые дефекты (рис. 4), то представляется еще более сложным определение его признаков, а следовательно, и характера их изменения.
Поскольку глобальные характеристики объекта определить невозможно (он виден не полностью), распознающие системы, предназначенные для решения задач такого уровня сложности, вынуждены работать либо с локальными признаками типа малых отверстий и углов, либо с протяженными признаками типа длинных участков границы объекта. Обнаружение признаков любого типа уменьшает неопределенность положения объекта, несущего эти признаки. В общем случае протяженные признаки сложнее искать, но они более информативны в силу большей определенности и точности обнаружения.
Пусть дано описание объекта с использованием локальных признаков. Тогда время сопоставления набора обнаруженных в детали признаков с таким описанием растет экспоненциально ло мере увеличения количества признаков [4]. Вследствие этого практическая применимость описаний на базе локальных признаков ограничивается сравнительно простыми задачами типа поиска отверстий в детали, показанной на рис. 1. Большое число признаков в деталях, показанных на рис. 2—4, не позволяет применить метод прямого сравнения.
Исследовались три различных подхода к решению задач, требующих обработки большого числа признаков. Первый из них состоит в том, что вместо большого числа локальных признаков отыскивается несколько протяженных признаков (см. например, [5. 6]). Хотя поиск протяженных признаков требует больших затрат, зачастую он оправдан тем, что дает возможность избежать комбинаторно растущего числа сравнений. Для
Рис. 3. Частично перекрывающиеся де- рис. 4. Детали, среди которых имеется талибракованная
второго подхода характерен начальный поиск одного признака с последующим ограничением областей поиска остальных признаков (см., например, [7, 8]). Сосредоточение внимания на поиске конкретного признака в ряде случаев может оказаться рискованным приемом, но это часто оправдывается уменьшением количества обрабатываемых признаков. При третьем подходе проблему предлагается решать с помощью гипотетических ЭВМ с большой степенью распараллеливания операций, которые могли бы справиться с растущим числом сравнений за линейно возрастающее время. Примерами использования этих подходов могут служить работы, посвященные сравнению графов [9. 10], релаксации [И, 12] и анализу гистограмм [6, 13, 14]. Положительная сторона этих подходов - использование всей доступной информации. Когда-нибудь в будущем обязательно появятся ЭВМ параллельного действия, но в нашей работе мы ограничимся рассмотрением вычислительных методов для ЭВМ традиционной архитектуры (последовательного действия).
В основе метода выделения локальных признаков (ВЛП) лежит поиск в распознаваемом образе некоторого признака (в дальнейшем называемого ’’выделенным признаком”) и использование его для прогнозирования при поиске других близлежащих признаков. После нахождения некоторого числа близлежащих признаков программа с помощью метода сравнения графов определяет наибольший кластер признаков образа, соответствующий кластеру особенностей объекта. Поскольку рассматриваются только близлежащие к выделенному признаки, графы получаются сравнительно небольшими и могут обрабатываться эффективно.
Ядро метода ВЛП — процедура автоматического выбора признака. Она выбирает наиболее подходящий для выделения признак и наиболее целесообразный набор соответствующих ему близлежащих признаков. Эта процедура позволяет быстро и без больших затрат приспосабливать метод ВЛП для работы с различными объектами. Как показано на рис. 5, определение признаков выполняется однократно (обучающей системой) с последующим многократным использованием его результатов рабочей
г)бачающпя системаг)бачающпя системаПостроениемоделиНедель объектеI&ь>дел^ииеприз^акидПостроениемоделиНедель объектеI&ь>дел^ииеприз^акидМодели объектов, выделяемые и близлежащиеМодели объектов, выделяемые и близлежащиепризнакипризнакиИзображения объектовИзображения объектовРабочая системаРабочая системаТипы объектов и параметры их положенийТипы объектов и параметры их положенийсистемой.В данной статье сначала рассматривается рабочая система, что позволяет пояснить требования, предъявляемые к обучающей системе. Вслед за описанием обучающей системы обсуждаются возможные направления совершенствования и расширения метода ВЛП.Рабочая система. Рабочая система с ВЛП вводит образы не полностьюРис. 5. Блок-схема метода выделения ло-кальных признаковсистемой.В данной статье сначала рассматривается рабочая система, что позволяет пояснить требования, предъявляемые к обучающей системе. Вслед за описанием обучающей системы обсуждаются возможные направления совершенствования и расширения метода ВЛП.Рабочая система. Рабочая система с ВЛП вводит образы не полностьюРис. 5. Блок-схема метода выделения ло-кальных признаков
г)бачающпя система
г)бачающпя система
Построениемодели
Недель объекте
I
&ь>дел^ииеприз^акид
Построениемодели
Недель объекте
I
&ь>дел^ииеприз^акид
Модели объектов, выделяемые и близлежащие
Модели объектов, выделяемые и близлежащие
признаки
признаки
Изображения объектов
Изображения объектов
Рабочая система
Рабочая система
Типы объектов и параметры их положений
Типы объектов и параметры их положений
системой.
В данной статье сначала рассматривается рабочая система, что позволяет пояснить требования, предъявляемые к обучающей системе. Вслед за описанием обучающей системы обсуждаются возможные направления совершенствования и расширения метода ВЛП.
Рабочая система. Рабочая система с ВЛП вводит образы не полностью
Рис. 5. Блок-схема метода выделения ло-кальных признаков
системой.
В данной статье сначала рассматривается рабочая система, что позволяет пояснить требования, предъявляемые к обучающей системе. Вслед за описанием обучающей системы обсуждаются возможные направления совершенствования и расширения метода ВЛП.
Рабочая система. Рабочая система с ВЛП вводит образы не полностью
Рис. 5. Блок-схема метода выделения ло-кальных признаков
Рис. 6. Половина металлической двер- Рис. 7. Бинарный образ дверной петли ной петли
видимых объектов, распознает их и определяет параметры их положения. Обработка выполняется в четыре этапа: считывание входной информации; поиск локальных признаков; построение гипотезы распознавания; проверка гипотезы распознавания.
В первую очередь, как показано на рис. 5, вводятся модели объектов, содержащие список выделяемых признаков с соответствующими каждому из них группами близлежащих признаков. Затем для каждого из образов система находит все признаки, потенциально пригодные для выделения, и формирует их кластеры. На основе кластеров строится гипотеза распознавания объекта. Наконец, эта гипотеза проверяется путем сравнения образа с моделью. В этом разделе рассмотрена простая задача, на примере которой показаны основные операции обработки, выполняемые на каждом из этапов. Далее представлены более сложные случаи, иллюстрирующие дополнительные возможности данной системы. Вначале разберем случай обнаружения объекта, показанного на рис. 6 (половина дверной петли) в образе, представленном на рис. 7.
Примеры, приведенные в статье, получены с помощью системы с ВЛП, распознающие программы которой работают на мини-ЭВМ PDP- 11/34, а выделение признаков выполняется на ЭВМ КЛАД 1/780. Программное обеспечение рабочей системы представляет собой модифицированную версию программ типа "Зрительный модуль SRP' [15], предназначенного для распознавания и определения положения полностью видимых изолированных объектов, представленных бинарными образами. На рис. 8 показано рабочее место оператора системы с ВЛП. Используется камера GE TN 2500, обеспечивающая размерность массива дискретов 240X240. Камера направлена на объекты, размещенные прямо под ней на освещенном столике. На мониторах отображаются полутоновой и бинарный образы. Пользователь ведет диалог с системой, используя дисплей фирмы "Тэктроникс" (TectmnixY То, что в рассматриваемой реализации системы осуществляется поиск локальных признаков в бинарном образе, объясняется доступностью готового программного обеспечения в момент разработки. Но так как методы выделения и сравнения класте-
Рис. 8. Рабочее место оператора системы
ров локальных признаков не зависят от способа, которым эти признаки были найдены, они могут использоваться без изменений для решения задачи поиска объектов в полутоновых образах или в системах с аппаратным обнаружением локальных признаков.
Информация о задаче распознавания. Информация о задаче распознавания состоит из следующих частей: статистическое описание локальных признаков; аналитическое описание объектов; стратегия определения положения объектов.
Локальные признаки определяются их внешним видом в образе. Объекты и стратегия определения их положения устанавливаются через локальные признаки. В текущей версии распознающей системы различаются два типа признаков: области и углы. Область определяется своим цветом (черный или белый), площадью и отношением осей (отношение длин наибольшего и наименьшего диаметров). Угол характеризуется своей величиной в градусах. Каждому из параметров признака ставится в соответствие ожидаемое значение и в случае необходимости допустимый диапазон отклонения реальной величины от этого значения. Диапазоны отклонения играют важную роль, поскольку они могут использоваться распознающей системой для повышения эффективности поиска признака. В частности, система может использовать программу, распознающую признак по совокупности векторов, такую, как алгоритм ближайшего соседа, применяемый для поиска признаков зрительным модулем SRI.
Хотя описания объектов используются в основном во время проверки гипотез, целесообразно обсудить предъявляемые к ним требования до рассмотрения стратегий, поскольку эти описания содержат списки локальных признаков всех объектов. Признаки, входящие в эти списки, будем называть признаками объекта или модели, в отличие от признаков образа (т.е. выделенных в образе признаков). Каждому признаку объекта присваивается определенное название. Признак описывается своим типом и параметрами положения относительно объекта. Параметры положения связываются с диапазонами отклонений, соответствующими неточностям изготовления деталей и погрешностям определения положения объекта в образе. Помимо основного назначения система использует эти диапазоны отклонений для определения достаточно ли близки значения расстояний между двумя признаками образа и двумя соответствующими им признаками модели для фиксации факта совпадения.
В рассматриваемой распознающей системе описание объекта включает, помимо прочего, описание его границы. Граница представляется
списком точек, определяющих последовательность линейных сегментов, аппроксимирующих границу объекта. После построения гипотезы о нахождении объекта в изображении, включающей параметры положения объекта, граница поворачивается, смещается в соответствующее положение и сравнивается с образом.
Стратегия в виде списка выделяемых и соответствующих им близлежащих признаков представляет собой перевод аналитического описания объекта на процедурно-ориентированный язык описания признаков, используемый при поиске объектов. Каждому выделяемому признаку соответствует список близлежащих признаков, которые, в случае их обнаружения, используются для распознавания выделенного признака и определения положения объекта. Описание близлежащего признака состоит из его типа, допустимого диапазона значений расстояния от выделенного признака, диапазона значений угла поворота относительно выделенного признака (в случае возможности его определения) и списка имен признаков объекта, каждым из которых может являться данный близлежащий признак. После обнаружения выделенного признака программа просматривает соответствующий список близлежащих признаков и пытается отыскать в образе признаки, отвечающие указанным в этом списке критериям. По мере отыскания признаков, отвечающих критериям, строится список возможных соответствий ’’признак объекта-признак образа”. Этот список преобразуется в граф, обрабатываемый с помощью алгоритма поиска наибольшей клики. Отвечающий найденной клике подграф задает набор соответствий, используемый при построении гипотезы распознаваемого объекта.
В табл. 1 представлены данные, получаемые при выборе признаков Для детали типа "петля”, показанной на рис. 6. Описаны три типа локальных признаков; отверстия, углы типа А и углы типа В. Угол типа А — вогнутый; три четверти длины окружности определяющей этот угол приходятся на деталь. Угол типа В — выпуклый. Согласно описанию объекта, в детали имеются четыре отверстия, четыре угла типа А и восемь углов типа В. Обозначение отверстий в объекте — ОТВ1, ОТВ2, ОТВЗ, ОТВ4 (обозначения признаков объекта, использование в табл. 1, показаны на рис. 12).
По выбранной стратегии наиболее подходящий для выделения признак — отверстие, после него — угол типа А, на третьем месте — угол типа В. В случае обнаружения отверстия система, согласно стратегии, должна искать семь близлежащих признаков. Первый из них — угол типа В, находящийся на расстоянии от 0,528 до 0,767 дюйма (от 13,4 до 19,5 мм) от отверстия, повернутый относительно вектора, соединяющего его с центром отверстия, на угол из диапазонов от 155,62 до 180,0° и от —180,0 До —160,03°. Если найден угол типа В, удовлетворяющий этим условиям, то, вероятно, он соответствует признаку Вб объекта; в этом примере, последовательно проверяя все пары "отверстие — угол типа В", обучающая система сократила длину списка признаков объекта, соответствующих такому типу отношения "отверстие — угол”, с восьми элементов до одного. Такое уменьшение длины списка демонстрирует положительные
ОТВ
Тип
Цвет
Площадь, кв. дюйм (645,2 мм2)
Отношение осей
ОБЛАСТЬ БЕЛЫЙ 0,071 1,000
Откл
Откл
Тип ооъектаО1В
Возможные признаки объектаОТВ1, ОТВ2, ОТВЗ, ОТВ4
онение 0,001
онение 0,082Близлежащий
Диапазон раестоян ий дюйм (25,4 мм)
Диапазон угла поворота, градус
Возможные признаки объекта
А
Тип'УГОЛ
Длина хорды, дюйм (25,4 мм)12
Значение, градус:270 0
_1
Откл
признак
онение 40,703®
А
0,527,0,767155,62,-160,03вб
0,801,1,041107,32,145,25al
0,828,1,068149,83,-172,63в1
1,019, 1,099-ОТВ1, ОТВ2,
ОТВЗ, ОТВ4
1,140,1,380-149,83,-116,02а2,аЗ
1.467,1,707-166,85,-135,28в1,в2
1,050,1,290-113,39,- 78,67а2
В
Тип
Длина хорды, дюйм (25,4 мм)
Значение, градус
Описание о
УГОЛ 12 90,0
бъекта
В ■ОТВ
Отклонение 40 703А
’В
А
Граница; 0,000,0,000;0,000,4,000;2,230,4,000;
2,230,3,310;1,700,3,310;1,700*2,430;
2,230,2,430;2,230,1,625;1,700,1,625
1,700,0,745;2,230,0,745;2,230,- 0 13;
1,700,-0,13;1,700,0,000;0.000’0,000
Тип объектаА
Возможные признаки объектаal, а2, аЗ
Близлежащий признак
Диапазон расстояний дюйм (25,4 мм)
Диапазон угла поворота, градус
Возможные признаки объекта
Признак модели
Тип
Координаты, дюйм (25,4 мм)
Поворот
Отклонение координат, дюйм (25,4 мм)
ОтклонениеВ
поворотаВ
В
А
0,325,0,725100,21,167,93вЗ,в8
0,325,0,725-168,62,-100,96в4,в7
0,820,1,220171,27,-143,20в2,в5, в8
0,610,1,010109,21,160,71аЗ
1,391,1,631-ОТВЗ
0,610,1,010-160,37,-108,86al
1,050,1,290-ОТВ2,ОТВЗ
1,173,1,413-ОТВ1,ОТВ2,
ОТВЗ, ОТВ4
ОТВ1ОТВ0,440,0,475-0,0048
ОТВ2ОТВ0,790,1,475-0,0048
ОТВЗОТВ0,440,2,475-0,0048
ОТВ4ОТВ0,790,3,475-0,0048
alА1,700,1,625135,00,010
а2А1,700,0,745-135,00,010
аЗА1,700,2,430-135,00,010
а4А1,700,3,310135,00,010
в1В0,000,4,000- 45,00,010
в2В2,230,4,000-135,00,010
вЗ ' В2,230,3,300135,00,010
в4В2,230, 2,430 -135,0.0,010
в5В2,230,-0,13135,00,010
вбВ0,000,0,00045,00,010
в7В2,230,0,745-135,00,010
в8В2,230,1,625135,00,010
Выделяемые признаки и соответствующие им близлежащие признаки
ОТВ
0А
оотв
оотв
0
21,447т„
Тип объектаВ
21,447
21 447'
зу^^Возможные признаки объектав1, в2, вЗ, в4, в5, вб, в7, в8
21,447,,„
21 447Близлежащий
21*447признак
21*447.
Диапазон расстояний дюйм (25,4 мм)
Диапазон угла поворота, градус
Возможные признаки объекта
7 1 44 7
.'В0,490, 0,890-163,29, -106,69вЗ, в5, в8
А0,670, 1,070-122,21, - 72,71al, а4
ОТВ0,828, 1,068-ОТВ4
" ’В0,680, 1,080- 69,56, - 20,40в4, в7
В0,490,0,890109,84,159,34в2,в4, в7
А0,820,1,22081,59,127,14а2,аЗ
ОТВ0,527, 0,767-ОТВ1
ОТВ1,467, 1,707'-ОТВ2, ОТВЗ,ОТВ4
А0,325, 0,72512,03,79,76а2, аЗ
В1,490, 1,890- 63,60,27,10в4, в7
Продолжение табл. 1
1. Информация для распознавания детали типа "петля”,Описание локальных признаков1. Информация для распознавания детали типа "петля”,Описание локальных признаков
1. Информация для распознавания детали типа "петля”,Описание локальных признаков
1. Информация для распознавания детали типа "петля”,Описание локальных признаков
стороны выполнения анализа в период обучения. В последующих разделах мы будем использовать данные, представленные в табл. 1, для иллюстрации действий, выполняемых на различных этапах работы системы.
Поиск локальных признаков. Назначение этапа поиска признаков, выполняемого в начале обработки нового образа, — найти в нем признаки, соответствующие тем, которые описаны в модели локальных признаков объекта. В рассматриваемой распознающей системе обнаруживаются все видимые признаки и их список используется на этапе создания гипотезы распознавания. Предполагается, что относительно скоро появится аппаратура для эффективного выявления всех локальных признаков в образе. Однако если поиск локальных признаков невыгодно реализовать в виде отдельного этапа, его можно включить в этап создания гипотезы распознавания, уменьшив при этом общее время работы.
Рассматриваемая система обнаруживает признаки типа ’’область” (такие, как отверстия, указанные в табл. 1), отыскивая в бинарном образе области, параметры которых достаточно близки к номинальным значениям. Углы система определяет, перемещая вдоль границы пару смежных хорд и сравнивая угол, образуемый ими, со значениями, определенными для различных типов углов, являющихся признаками объекта. На рис. 9 изображены углы, найденные в образе, показанном на рис. 7. Описанный метод поиска углов — один из множества возможных, и его выбор обусловлен простотой и быстродействием. Опыт показал, что с помощью этого метода углы отыскиваются довольно эффективно. Правда, определенные затруднения вызывает обработка скругленных углов, а точность метода зависит от размера дискретов образа.
Результат поиска признаков — список локальных признаков, найденных в образе. В табл. 2 показан такой список, соответствующий образу, приведенному на рис. 9, и нумерации признаков образа, приведенной на рис. 10. На этом этапе работы программа еще не присвоила наимено-
55Рис. 9. Углы, найденные в образе детали, Рис. 10 Обозначения выделяемыхРис. 9. Углы, найденные в образе детали, Рис. 10 Обозначения выделяемыхпоказанной на рис. 6показанной на рис. 6признаковпризнаков
5
5
Рис. 9. Углы, найденные в образе детали, Рис. 10 Обозначения выделяемых
Рис. 9. Углы, найденные в образе детали, Рис. 10 Обозначения выделяемых
показанной на рис. 6
показанной на рис. 6
признаков
признаков
2. Список найденных в образе рнс. 7 локальных признаков и их типы
Номер признака
Тип признака
Номер признака
Тип признака
Номер признака
Тип признака
1
ОТВ .
6
В
11
В
2
ОТВ
7
В
12
А
3
отв
8
А
13
А
4
отв
9
А
14
В
5
в
10
В
15
В
16
В
ваний признакам образа — определены только их типы (т.е. ’’отверстие”, "угол типа А” или "угол типа В”). Для присвоения наименований признакам образа программа должна проанализировать их относительное положение и угол поворота. Такой анализ описывается в следующем раз
деле.
Формирование гипотезы. Назначение этапа создания гипотезы - как можно быстрее построить "хорошую” гипотезу распознавания. Обычно
приходится искать компромисс между скоростью построения и качеством гипотезы. Критерий оптимальности — отношение затрат на проверку гипотезы-к затратам на ее построение. Система с ВЛП разрабатывалась с
учетом того, что затраты на адекватную проверку гипотезы достаточно велики, чтобы ими можно было пренебречь. Из этого вытекает необходимость построения наилучшей из возможных гипотез.
Во время работы система строит гипотезы распознавания объектов, обрабатывая кластеры признаков образа, соответствующие кластерам признаков объекта. Для того чтобы находить такие кластеры, не прибегая к методу полного перебора, система отыскивает какой-нибудь один признак и пытается "нарастить" на нем соответствующий кластер. Если эта
попытка не приводит к построению гипотезы, система отыскивает и выделяет другой признак, после чего попытка построения гипотезы повторяется.
В рассматриваемом примере с дверной петлей на этапе поиска признаков выяснено, что наиболее пригодны для выделения признаки типа ’’отверстие”. Следовательно, сначала система ищет отверстия. Для образа, показанного на рис. 7, первым обрабатывается верхнее отверстие. Выде
лив его, система ищет в списке локальных признаков те, которые могут быть близлежащими для какого-либо из отверстий. На рис.11
Рис. 11. Близлежащие признаки, найденные в окресности отверстия, и списки признаков объекта, которым °ни могут соответствовать. Здесь и далее в статье на фотографиях обозначение HOLE соответствует обозначению ОТВ в тексте
Признак объектаПризнак образаОТВ11ОТВ21ОТВЗ1ОТВ41ОТВ12ОТВЗ2ОТВЗ2ОТВ42Вб5А28АЗ8Признак объектаПризнак образаОТВ11ОТВ21ОТВЗ1ОТВ41ОТВ12ОТВЗ2ОТВЗ2ОТВ42Вб5А28АЗ83. Список соответствий ’’признак объекта - признак образа”3. Список соответствий ’’признак объекта - признак образа”показаны найденные близлежащие признаки. Около каждого из признаков — список признаков объекта, которым он может соответствовать (определения признаков объекта показаны на рис. 1). В табл. 3 приводится список возможных соответствий ’’признак объекта — признак образа”.Составив список возможных соответствий (табл. 3), система использует метод сравнения графов для обнаружения наибольшего внутреннее непротиворечивого кластера. В текущей версии применяется алгоритмпоказаны найденные близлежащие признаки. Около каждого из признаков — список признаков объекта, которым он может соответствовать (определения признаков объекта показаны на рис. 1). В табл. 3 приводится список возможных соответствий ’’признак объекта — признак образа”.Составив список возможных соответствий (табл. 3), система использует метод сравнения графов для обнаружения наибольшего внутреннее непротиворечивого кластера. В текущей версии применяется алгоритмпоиска наибольшей клики (см. приложение). Для того чтобы можно было применить этот алгоритм, система преобразует список (табл. 3) в граф, показанный на рис. 13. Каждая вершина графа представляет собой возможное соответствие признака объекту признаку образа. Две вершины соединяются дугой, если представляемые ими соответствия не противоречат друг другу. Для того чтобы два соответствия были непротиворечивыми, они должны удовлетворять следующим условиям:
Признак объекта
Признак образа
ОТВ1
1
ОТВ2
1
ОТВЗ
1
ОТВ4
1
ОТВ1
2
ОТВЗ
2
ОТВЗ
2
ОТВ4
2
Вб
5
А2
8
АЗ
8
Признак объекта
Признак образа
ОТВ1
1
ОТВ2
1
ОТВЗ
1
ОТВ4
1
ОТВ1
2
ОТВЗ
2
ОТВЗ
2
ОТВ4
2
Вб
5
А2
8
АЗ
8
3. Список соответствий ’’признак объекта - признак образа”
3. Список соответствий ’’признак объекта - признак образа”
показаны найденные близлежащие признаки. Около каждого из признаков — список признаков объекта, которым он может соответствовать (определения признаков объекта показаны на рис. 1). В табл. 3 приводится список возможных соответствий ’’признак объекта — признак образа”.
Составив список возможных соответствий (табл. 3), система использует метод сравнения графов для обнаружения наибольшего внутреннее непротиворечивого кластера. В текущей версии применяется алгоритм
показаны найденные близлежащие признаки. Около каждого из признаков — список признаков объекта, которым он может соответствовать (определения признаков объекта показаны на рис. 1). В табл. 3 приводится список возможных соответствий ’’признак объекта — признак образа”.
Составив список возможных соответствий (табл. 3), система использует метод сравнения графов для обнаружения наибольшего внутреннее непротиворечивого кластера. В текущей версии применяется алгоритм
два признака объекта не должны соответствовать одному признаку образа;
два признака образа не должны соответствовать одному признаку объекта;
два признака образа должны соответствовать признакам одного объекта;
расстояние между двумя признаками образа должно приблизительно равняться расстоянию между двумя признаками объекта;
Рис. 13. Граф парных соответствий признаков образа и объектаРис. 13. Граф парных соответствий признаков образа и объектаРис. 12. Обозначения локальных признаков деталиРис. 12. Обозначения локальных признаков деталиуглы поворота двух признаков образа относительно соединяющей их прямой должны быть приблизительно такими же, как соответствующие углы поворота признаков объекта.
Рис. 13. Граф парных соответствий признаков образа и объекта
Рис. 13. Граф парных соответствий признаков образа и объекта
Рис. 12. Обозначения локальных признаков детали
Рис. 12. Обозначения локальных признаков детали
Соответствие ”ОТВ1 — признак образа 1” не противоречит соответствию ”ОТВ2 — признак образа 2”, потому, что признак образа 1 находится приблизительно на таком же расстоянии от признака образа 2, как и признак объекта ОТВ! от признака объекта ОТВ2 в аналитической модели. Соответствие ”ОТВ1 — признак образа 1” противоречит соответствию ”ОТВ2 — признак образа Г\ так как оба признака объекта ставятся в соответствие одному признаку образа. Аналогично соответствие ”ОТВ1 — признак образа 1” противоречит соответствию ”ОТВ1 — признак образа Т\ так как один признак объекта не должен соответствовать двум различным признакам образа.
После того, как граф построен, используется метод сравнения графов, с помощью которого выделяются наибольшие наборы непротиворечивых кластеров, соответствующих различным вершинам. Наибольший полностью связный подграф (т.е. максимальная клика) для детали типа ’’петля” показан на рис. 14. Он включает четыре вершины, представляющие следующие соответствия:
ОТВ1 - признак образа 1
ОТВ2 — признак образа 2
А2 — признак образа 8
Вб — признак образа 5
Исходя из этих соответствий, система может вычислить параметры преобразований поворота и переноса, совмещающих аналитическое описание объекта с данным кластером признаков образа. На рис. 15 показано соответствие признаков объекта признакам образа. Штриховой линией показано положение детали типа ’’петля”, задаваемое этими соответствиями.
Может оказаться невозможным определить единственный "наибольший” полностью связный подграф. В этом случае гипотезы формируются на основе каждого из подграфов, вследствие чего результатом анализа графа могут явиться несколько гипотез. Определение, которая из гипотез
^ис. 14. Максимальная клика графа, Рис. 15. Соответствие признаков объек- представленного на рис. 13та признакам образа и гипотетическое
положение объекта
верна (и существует ли верная гипотеза вообще), приводится на следующем этапе работы системы.
Проверка гипотезы. В рассматриваемой системе для проверки гипотез используется два теста:
в образе отыскиваются дополнительные признаки объекта, не противоречащие гипотезе;
проверяется граница гипотетического объекта.
По мере того, как программа находит в образе признаки, соответствующие предсказанным гипотезой признакам объекта, она добавляет их в список проверенных признаков, усиливая первоначальную гипотезу. Проверенные признаки используются также для уточнения оценок параметров положения объекта.
Получив уточненную оценку параметров положения, программа проверяет границу гипотетического объекта на совпадение с границей образа. Для этого аналитическое описание границы подвергается преобразованиям поворота и переноса, после чего анализируется содержимое образа вдоль преобразованной аналитической границы. Перпендикулярно к ней проводятся контрольные отрезки, на протяжении которых отыскиваются переходы от темного к светлому (рис. 16). Переходы от светлого к темному и полностью светлые контрольные отрезки без переходов говорят о несовпадении. Полностью темные отрезки не дают информации о совпадении.
Если обнаруживается достаточное количество признаков и проверена граница, система сообщает о распознавании объекта и выдает параметры его положения. В качестве информации, используемой при обработке на более высоких уровнях, передается количество признаков, которое системе удалось найти, количество признаков, которое ожидалось увидеть в поле зрения, и общее количество признаков объекта. Наконец, в списке признаков, найденных в образе, признаки распознанной детали помечаются как ’’объясненные”, и при дальнейшей работе они уже не рассматриваются. На рис. 17 показана деталь типа ’’петля” все признаки которой помечены.
Рис. 16. Контрольные отрезки, исполь- Рис. 17. Объект после проверки. Локаль зуемые для проверки положения грани-ные признаки помечены
цы объекта
Когда на основе кластера признаков формируются две или более гипотез: как правило, только одна из них проходит оба проверочных теста. Если тесты прошли несколько конкурирующих гипотез, образ считается неоднозначным и система сообщает о возникшем затруднении, а гипотезы объявляются "возможными*". Для устранения неоднозначности требуется дополнительная информация.
На этом завершается обсуждение трех основных этапов функционирования рабочей системы: поиска локальных признаков, формирования гипотез и их проверки. В следующем разделе рассматривается выполнение этих этапов при решении более сложных задач.
Примеры и направления развития. Для того чтобы показать все возможности, имеющиеся в рабочей системе, рассмотрим последовательность усложняющихся задач. Например, если отверстие, использованное в качестве выделенного признака в предыдущем примере, закрыто, система вынуждена выбрать для выделения другой признак (в нашем случае другое отверстие). При этом формируется совершенно отличная от предыдущей группа близлежащих признаков (рис. 18), соответствующая другому кластеру признаков объекта. Но построенная на основе этого кластера гипотеза совпадает с предыдущей.
Если закрыты все отверстия, система вынуждена использовать следующий по порядку тип выделяемых признаков, в нашем случае угол типа А. Снова формируется отличающийся от предыдущих кластер признаков (рис. 19). На его базе строятся две гипотезы (каждая соответствует своему прямоугольному выступу в детали петли). На этапе проверки выбирается единственная версия - гипотеза.
В более сложной ситуации, которая показана на рис. 20, система использует для поиска объектов несколько различных кластеров локальных признаков. На рисунке показаны не полностью видимые "петли’', касающиеся и перекрывающие друг друга. Используя приемы, описанные выше, система может распознать и определить положение всех четырех деталей (рис. 21). В рассматриваемой системе время обработки этого примера составило приблизительно восемь секунд.
Рис. 18. Кластер локальных признаков, Рис. 19. Кластер локальных признаков, формируемый при закрытии верхнего формируемый при закрытии всех отвер- отверстиястий
Рис. 20. Образ, соответствующий четырем Рис. 21. Детали, выделенные в образе перекрывающимся деталямрис. 20
Рабочая система может находить и распознавать объекты, перевернутые нижней стороной кверху. Оператор может включать режим, при котором работают процедуры принятия решений, реализующие такое распознавание. Если этот режим включен, система выполняет следующее: допускает двоякую (указанную в объекте и зеркальную) ориентацию найденных близлежащих признаков;
допускает зеркальную ориентацию в момент проверки на совместимость:
после построения гипотезы определяет, перевернут ли объект, анализируя три признака образа и три соответствующие им признака объекта. Принимая любой из признаков за вершину, система измеряет углы, определяемые признаками образа и признаками объекта. Если значения этих углов имеют различные знаки, объект перевернут;
если система определила, что объект перевернут, все последующие операции (проверка признаков и границ) выполняются с зеркальным отражением аналитической модели объекта.
На рис. 22 показаны пять деталей типа "петля”. Система находит и распознает все пять деталей (рис. 23), несмотря на то, что три из них перевернуты. Время обработки этого примера составило около 25 с. Главная причина увеличения времени обработки по сравнению с предыдущими примерами заключается в том, что в этом случае системе приходится различать четыре тина объектов: часть деталей с двумя выступами, часть - с тремя выступами и их зеркальные отражения. Дополнительные типы объектов увеличивают размеры анализируемых графов, что и ведет к увеличению времени обработки.
Обучающая система. При проектировании обучающейся системы главной целью было сделать ее использование как можно более простым. К этой цели можно прийти двумя путями. Первый — разработка автоматических средств, собирающих как можно больше информации, второй — тщательная эргономическая проработка системы, ориентация ее на человека-оператора. Мы сосредоточили свои усилия на первом способе. Такое решение объясняется заинтересованностью авторов в разработке способов
рис. 22. Образ, соответствующий пяти перекрывающимся деталям, некоторые из которых перевернутырис. 22. Образ, соответствующий пяти перекрывающимся деталям, некоторые из которых перевернутыРис. 23. Детали, выделенные в образе на рис. 22Рис. 23. Детали, выделенные в образе на рис. 22
рис. 22. Образ, соответствующий пяти перекрывающимся деталям, некоторые из которых перевернуты
рис. 22. Образ, соответствующий пяти перекрывающимся деталям, некоторые из которых перевернуты
Рис. 23. Детали, выделенные в образе на рис. 22
Рис. 23. Детали, выделенные в образе на рис. 22
обобщения информации, типичной для промышленных приложений, такой, как описания объектов при ограничениях условий видимости. В этом разделе описывается методика анализа кластеров локальных признаков и показывается, как она используется для формирования информации, необходимой при работе системы с ВЛП. Поскольку эта методика включает алгоритмы, строящие и анализирующие геометрические описания локальных признаков, она может быть использована при построении автоматических обучающихся систем с другой стратегией поиска объектов по локальным признакам (например, с накоплением гистограмм ориентации пар локальных признаков).
Обучающаяся система с ВЛП состоит из двух больших частей: строящей модель объекта и выбирающей признаки. На этапе построения модели создаются модели распознаваемых объектов, а на этапе выбора признаков выбираются наиболее пригодные (с точки зрения использования процедурой распознавания с ВЛП) локальные признаки.
Построение модели. На этапе построения модели создаются модели объектов, которые должна будет распознавать система. Как сказано выше, эти модели включают описания типов локальных признаков и списки самих локальных признаков, принадлежащих каждому из объектов. Такую модель можно построить несколькими способами. Долгое время существует ставший традиционным метод обучения ’’показом1', при котором пользователь предъявляет системе несколько экземпляров объекта. Система собирает статистические данные, используемые для оценки параметров глобальных признаков объекта и определения диапазонов их отклонений. Такой метод очевиден, но его применение может оказаться затруднительным, поскольку для построения правильной статистической модели требуется большое количество проб. Поэтому мы исследовали альтернативные методы обучения, не требующие многократных проб.
Построение модели объекта выполняется в два этапа. На первом- определяются номинальные положения и внешний вид локальных признаков. На втором — определяются диапазоны изменения величин, связанных
с локальными признаками и их положениями. В рассматриваемой системе пользователь для задания номинального значения может использовать модель объекта, полученную САПР, или в интерактивном режиме указывать признаки в образе объекта. После этого система определяет допустимые диапазоны изменения значений, используя аналитические и вероятностные модели погрешностей квантования. Диапазон изменения параметров положения области и ее площади определяются по формулам, выведенным Хиллом [16]. Диапазоны изменения других параметров, таких, как угол поворота области или координаты вершины угла, определяются по методу Монте-Карло, моделирующего возмущения соответствующих величин в зависимости от размеров отдельного дискрета.
Система настроена на избыточную оценку диапазонов отклонения. Это означает, что любые ошибки в оценке диапазона могут привести лишь к его расширению. Такое легкое ослабление оценок приводит к некоторому увеличению времени распознавания, поскольку последовательно обнаруживается и проверяется большее количество отвечающих требованиям признаков. С другой стороны, избыточность оценок может привести к потере системой краевых объектов. Необходимо отметить, что в каждом конкретном случае пользователь может подстроить систему под свои практические требования.
Выбор признаков. Процедура выбора признаков, используя заданный набор моделей объектов, отбирает ключевые признаки и формирует их кластеры, используемые затем рабочей системой с ВПП. Она создает набор близлежащих признаков для каждого типа выделяемых признаков и упорядочивает их по величине затрат на использование каждого конкретного признака для распознавания и определения положения объекта. Эти действия выполняются следующим образом:
в различных объектах определяются одинаковые типы локальных признаков:
вычисляются показатели симметричности объектов;
помечаются структурно эквивалентные признаки;
на основе совокупностей признаков строятся описания объектов; выбираются близлежащие признаки: упорядочиваются выделяемые признаки.
При этом только два последних шага прямо связаны с методом ВЛП. Остальные шаги могут использоваться для выполнения предварительного анализа и при других стратегиях поиска. Ниже каждый из шагов описывается отдельно.
Типы локальных признаков. Любая модель объекта содержит описания типов локальных признаков, принадлежащих этому объекту. На первом шаге процедуры выбора признаков определяются одинаковые признаки и строится список их типов, присущих рассматриваемому набору объектов. Выделение одинаковых признаков необходимо для определения, какие признаки могут быть надежно выделены на основе локальной информации, а какие — не могут. Другими словами, система должна выделить те признаки, которые могут быть обнаружены
рис. 24. Круглая крышка электрической распределительной коробки и деталь из металлического листа
с использованием кластеров только близлежащих признаков. Рассмотрим две детали, показанные на рис. 24. В обеих имеется три типа отверстий, в обеих есть круглые отверстия диаметром в четверть и восьмую часть дюй
ма (6,4 и 3,2 мм). Поэтому, если система должна будет распознавать эти два объекта, она объединит два списка типов отверстий в один
список, содержащий четыре типа. Когда диапазоны отклонения значений, описывающих признаки, не перекрываются или, наоборот, почти совпа
дают, распознавание одинаковых признаков выполняется достаточно легко. Трудности начинаются тогда, когда несколько описаний признаков перекрываются сложным образом. Система объединяет признаки в один тип тогда, когда определяющие их значения (совокупности ожидаемых величин и диапазонов их возможного отклонения) существенно перекрываются. Пользователь может задать степень перекрытия, достаточную для того, чтобы оно считалось существенным, и менять группы, сформированные системой. Обращение к пользователю для принятия окончательного решения - основной принцип подхода авторов к построению полуавтоматических программных систем. Система автоматически выполняет максимально возможную часть работы и представляет ее результаты
пользователю, принимающему окончательное решение.
Неверное группирование признаков может привести к неэффективной стратегии поиска. Обьединение неодинаковых признаков приводит к использованию на этапе обработки большего, чем достаточное, количества близлежащих признаков. Дополнительные близлежащие признаки увеличивают размеры анализируемых графов, что, в свою очередь, увеличивает время обработки. Источник неэффективности — использование близлежащих признаков для принятия таких решений, которые могли бы быть приняты с использованием одного типа признака.
Отказ от объединения в одну группу логически неоднозначных признаков также может привести к эффективной стратегии. В этом случае система, выбирающая признаки, не имеет информации о неоднозначности, которую надо было ликвидировать, и, вследствие этого, формирует наборы близлежащих признаков. В результате система вынуждена последовательно отрабатывать различные способы интерпретации выделенного признака, пока не будет построена выдерживающая проверку гипотеза. Так как отработка способов интерпретации занимает много времени, се следует минимизировать. Следовательно, неэффективно формировать как слишком малые, так и слишком большие группы. Определить оптимальный размер группы трудно, поскольку он сложным образом зависит от затрат на построение и проверку гипотез. В рассматриваемой обу-
3- 1756
чающейся системе с ВЛП формируются группы, размер которых приемлем для решения задач средней сложности и пользователю обеспечивается возможность экспериментировать с размером группы при решении более сложных задач.
Симметрия объектов. Два основных свойства двухмерных объектов заключаются в их осевой и центральной симметрии. Эти свойства играют важную роль при распознавании и определении положения объектов, так как их можно использовать для определения ключевых признаков, выделяющих объект из множества других объектов того же типа и задающих его угол поворота. Особенно важны эти свойства при решении задач промышленного машинного зрения, часто связанных с симметричными или почти симметричными объектами. Например, круглая деталь, показанная на рис. 24, обладает центральной симметрией второго порядка (т.е. при повороте на 180° совмещается сама с собой). Если подобная деталь может оказаться в поле зрения перевернутой, полезно знать, что она не обладает свойствами осевой симметрии. Если это известно, то система может распознавать перевернутые детали.
Некоторые программы, обладающие элементами искусственного интеллекта, выполняли анализ симметричности объектов. Например, программа Эванса, работавшая с задачами определения геометрической аналогии, проверяла элементарные фигуры на предмет симметричности относительно горизонтальной или вертикальной оси [17]. Программа Гайнеса проверяла, не являются ли две трехмерные последовательности кубов центральносимметричными или осе-симметричными отображениями друг друга [18]. Программа Перкинса [15] для определения центральной симметрии силуэта использовала разновидность корреляционного метода. Но ни одна из этих программ не предназначалась для выполнения общего анализа симметричности с ориентацией на выделение локальных признаков, их кластеров и определение свойств этих кластеров. Алгоритмы, описанные в этом разделе, предназначены для анализа симметричности объектов именно с такой точки зрения.
Кэнейд [19] исследовал симметричность образов, представляющих перспективную проекцию объекта и ее связь с пространством градиента ориентации поверхности. Он воспользовался симметрией перспективного изображения для построения гипотезы о реальной симметрии трехмерного предметного поля и для построения ограничений на связанность поверхностей. Вечслер [20] описывает алгоритм декомпозиции двухмерных областей на компоненты, обладающие осевой симметрией. Принятый им подход использует математические описания и проверки симметричности, аналогичные описанным в настоящей работе, но он ставил целью на формирование кластеров локальных признаков, а получение описания двухмерной области. Сильва описывает программу [21], выделяющую оси симметрии по совокупности видов объекта. Эта задача сложнее обсуждаемой нами, так как в ней задается только набор образов объекта, а не его аналитическая модель.
В системе с ВЛП локальные признаки определяются следующими атрибутами:
тип (например, ’’прямой угол’’ или ’’отверстие диаметром в 1/4 дюйма (8,4 мм) ”) ;
параметры положения относительно связанной системы координат объекта;
поворот связанной системы координат объекта относительно оси х; параметры центральной симметрии (если она имеется).
Для круглых отверстий угол поворота связанной системы координат не определяется. По соглашению, поворот угла считается равным углу поворота луча его биссектрисы, направленного внутрь детали. Прямоугольные отверстия, например, показанные на рис. 25, обладают централь-, ной симметрией второго порядка и их угол поворота определяется главной осью прямоугольника.
Параметры положения признака относительно центроида объекта — важные показатели, используемые при анализе симметричности. Они определяются вектором, начало которого находится в центроиде, а конец - в центре признака. Этот вектор будем называть ’’центральный вектор признака". Угловая координата признака отсчитывается против часовой стрелки от оси х связанной системы координат объекта до центрального вектора признака. Расстояние от признака до центроида определяется модулем центрального вектора. Относительным поворотом признака будем называть наименьший угол, измеренный в направлении против часовой стрелки от центрального вектора признака до одной из его осей симметрии (рис. 26). Параметры положения одного признака относительно другого признака определяются тремя значениями: D, ^1 и #2, как показано на рис. 27.
Система с ВПП принимает решение о симметричности двухмерных объектов в три этапа: 1) формирование групп одинаковых признаков, равноудаленных от центра тяжести объекта; 2) определение симметричности отдельных групп: 3) вычисление на основе ранее выделенных групп показателей симметрии объекта.
Рис. 25. Объект, обладающий центральной симметрией второго порядкаРис. 25. Объект, обладающий центральной симметрией второго порядкаРис. 26. Параметры положения признака относительно объекта
Рис. 25. Объект, обладающий центральной симметрией второго порядка
Рис. 25. Объект, обладающий центральной симметрией второго порядка
Рис. 27. Параметры положения признака Рис. 28. Повороты углов прямоуголь- относительно другого признаканика относительно друг друга
При формировании групп признаки считаются одинаковыми, если они одного типа, одинаково удалены от центроида объекта и одинаково развернуты относительно своих центральных векторов. Это означает: если два признака одинаковы, то объект можно развернуть вокруг его центроида таким образом, что один из признаков займет в точности то положение, которое до разворота занимал другой. Например, четыре угла квадрата в этом смысле одинаковы, но у прямоугольника одинаковы только противолежащие углы — относительные повороты смежных углов различны (рис. 28). Таким образом, при формировании групп для анализа симметричности система разделяет четыре угла прямоугольника на две группы.
На втором этапе анализа симметричности вычисляются показатели центральной и осевой симметрии каждой из групп, сформированных на первом этапе. Если группа из N признаков обладает центральной симметрией порядка D, то D должно нацело делить № Поэтому для определения центральной симметричности группы достаточно получить список простых сомножителей N и проверить группу на симметрию порядка D, последовательно присваивая D значения сомножителей в порядке их убывания. Для проверки группы на симметричность порядка D система добавляет к угловым координатам всех входящих в нее признаков значение 360/D градусов и сравнивает их новые расположение с исходным. Если новые положения всех признаков отличаются от старых не более чем на допустимую величину, то группа обладает центральной симметрией порядка D.
Если набор точек, принадлежащих одной плоскости, имеет ось симметрии, существует интересная связь между ней и осью наименьшего момента второго порядка: они совпадают или перпендикулярны друг другу [22]. В силу этого, для проверки набора точек на осевую симметричность не обязательно выполнять проверки всех возможных направлений предполагаемой оси: необходимо лишь определить ось наименьшего момента второго порядка и проверить симметричность набора относительно нее и перпендикулярной к ней оси. Рассмотрим пять отверстий, показанных на рис. 29, расположенных симметрично. Ось наименьшего момента второго порядка направлена в верхний правый угол рисунка. Изображение не симметрично относительно этой оси, но симметрично относительно перпендикуляра к ней.
Чтобы группа признаков, сформированная на первом этапе анализа,
была симметричной относительно оси, их центры должны быть симметричны относительно оси, а каждый из признаков должен быть симметричен относительно своего центрального вектора. Пара щелей, показанных на рис. 28, не симметрична относительно оси потому, что ни одна из них не симметрична относительно своего центрального вектора. При проверке группы на осевую симметрию система вначале проверяет один из входящих в нее признаков, а затем проверяет набор центров признаков на сим
метричность относительно оси.
Интересно отметить, что группа признаков может обладать осевой симметрией, но не обладать центральной симметрией, например, как показано на рис. 29. Возможен случай, при котором группа признаков центрально симметрична, но не симметрична относительно оси (например, пара щелей, показанная на рис. 25).
На третьем этапе анализа симметричности на основе показателей симметрии групп вычисляются показатели симметрии объекта в целом. Показатель центральной симметрии определяется легко — он равен наибольшему общему делителю степеней симметрии групп [22]. Более сложно определяется осевая симметричность и соответствующие оси. Если известны показатели центральной и осевой симметрии групп, можно составить списки осей симметрии, соответствующих каждой из групп. Основная идея заключается в том, что оси симметрии объекта могут быть получены как результат операции пересечения множеств осей симметрии, соответствующих группам. Однако следует рассмотреть один специальный случай, хорошо видимый на примере прямоугольника. Как отмечалось выше, его четыре угла разделяются на две группы в соответствии со значением угла относительного поворота. Ни одна из групп не симмет
рична относительно оси, так как признаки не симметричны относительно
своих центральных векторов. Но набор из четырех углов, сведенных в одну группу, обладает осевой симметрией. Трудность заключается в том,
что симметричные группы могут образовываться сопряженными парами признаков. Поэтому при проверке осевой симметрии объекта система ищет группы с осевой симметрией и сопряженные нары, образующие сим
метричные группы. Если все признаки объекта входят в симметричные относительно осей группы и существует, по крайней мере, одна общая ось
симметрии, весь объект симметричен относительно оси.
Реализация этих тестов показала, что они хорошо работают в систе
ме с ВЛП. Мы также пробовали ввести их в систему автоматического построения модели, работающей с широким классом образов двухмерных объектов, но эта Цель оказалась труднодоступной, так как сложно сформулировать общее определение ’’существенного Признака”.
Рис. 29. Объект, его ось наименьшего Момента второго порядка и перпенди
куляр к этой оси
С труктурно-эквивалентные признаки. Если объект центрально симметричен, его признаки образуют группы, элементы которых структурно-эквивалентны. Это означает, что их невозможно отличать друг от друга, рассматривая только их внешний вид и расположение относительно других признаков объекта. Например, поскольку круглый объект на рис. 24 обладает центральной симметрией второго порядка, его признаки образуют пары, элемента которых структурно-экивалентны. Использование этого явления в методе ВЛП заключается в том, что анализируется только один из группы структурно-эквивалентных признаков. Поэтому, если объект центрально симметричен, количество рассматриваемых признаков может быть уменьшено в D раз, где D — порядок симметрии. Любое уменьшение количества рассматриваемых признаков весьма желательно, поскольку позволяет обойти комбинаторные аспекты задачи сравнения, а уменьшение количества вдвое и более уже весьма существенно.
Определив параметры симметрии объекта, система помечает признаком дубликата признаки, которые не должны рассматриваться как выделяемые. В первоначальном варианте процедура пометки разделяла признаки на группы, совмещаемые при повороте, в зависимости от значения их угловой координаты, измеренной относительно оси х объекта и помечала все признаки, не входящие в первую группу. Например, для объекта с центральной симметрией второго порядка все признаки с угловыми координатами от 180 до 360° помечались как дубликаты. Но впоследствии, принимая во внимание то, что система с ВЛП работает с локальными кластерами признаков, была разработана улучшенная процедура пометки, отыскивающая наиболее компактный кластер признаков, содержащий полную группу симметрии. Например, для объекта, показанного на рис. 24, эта процедура разделит признаки на группы, соответствующие верхней и нижней половине детали, поскольку при этом признаки образуют наиболее компактные группы. Такая усовершенствованная стратегия увеличивает степень перекрытия наборов близлежащих (относительно выделенного признака) признаков, что, в свою очередь, снижает число возможных интерпретаций близлежащих признаков.
Описания, соответствующие признаку. Вслед за пометкой дубликатов выполняется шаг построения описаний объекта, соответствующих каждому уникальному признаку. Эти описания строятся так, чтобы они содержали в себе информацию, достаточную для выделения близлежащих признаков. По сути дела, это такие же описания, как те, что генерировались на этапе анализа центральной симметрии, за исключением того, что они связаны не с центроидом объекта, а с центром локального признака. Кроме того, при формировании групп используется относительный поворот этого признака (если его можно определить).
Программа строит описания, соответствующие всем не дубликатным признакам, разделяя все признаки объекта (вне зависимости от того, помечены они как дубликаты или нет) на группы и определяя параметры центральной симметрии этих групп. В одну группу сводятся признаки, отвечающие следующим условиям:
одинаковая удаленность от выделенного признака;
одинаковый угол поворота относительно векторов, соединяющих центр выделенного признака с центрами признаков;
одинаковый угол поворота выделенного признака относительно векторов, соединяющих центры признаков с центром выделенного признака (см. рис. 27, на котором показаны эти относительные углы поворота) .
Если два признака попали в одну группу, их невозможно отличить друг от друга, используя только относительные координаты и углы поворота относительно выделенного признака. Иначе говоря, если два признака принадлежат одной группе, структурная единица, образуемая одним из них и выделенным признаком, идентична структуре, образуемой выделенным признаком и другим из них. На рис. 30 показано, как группируются вокруг выделяемых отверстий признаки части петли.
Выделение близлежащих признаков. После того, как получены описания распознаваемых объектов, соответствующие выделяемым признакам, на следующем шаге формируются наборы близлежащих признаков для каждого из выделяемых признаков. Подбор близлежащих признаков выполняется по описаниям объекта, соответствующим выделенным признакам. Эти же описания используются и для оценки выбранного близлежащего признака — по ним же проводится поиск признаков, идентичных выбранному в окрестностях выделенного признака. При обсуждении состава информации, определяющей задачу распознавания при использовании метода с ВЛП, уже отмечалось, что близлежащий признак не является признаком в полном смысле этого слова; скорее, это набор критериев, описывающих класс признаков относительно другого признака. В образе или в модели объекта в окрестности некоторого выделенного признака может иметься ноль или более признаков, удовлетворяющих этим критериям. Процедура выделения создает описания близлежащих признаков на основе описания соответ
ствующих признаков модели.
Основное требование, предъявляемое к набору близлежащих признаков, соответствующему выделенному признаку, — этот набор должен включать достаточно признаков для идентификации структурно разли
чимых вхождений выделенного признака и определения параметров положения объекта относительно него. Иначе говоря, отыскав признаки, удовлетворяющие описаниям близлежащих признаков, система должна иметь возможность распознать как выделенный, так и все близлежащие признаки и определить параметры положения объекта. Например, на
Рис. 30. Описание "петли", соответст- вующее одному из отверстий
рис. 31 показаны четыре кластера признаков, достаточно отличающихся друг от друга для однозначности распознавания отверстия (выделенного признака кластера) и определения точки привязки и угла поворота детали.
Выделение близлежащих признаков выполняется в два этапа:
производится выбор близлежащих признаков, позволяющих распознать выделенный признак;
в случае необходимости производится выбор дополнительных признаков, определяющих точку привязки и угол поворота объекта.
Признаки, используемые при распознавании выделенного признака, выбираются вначале, поскольку почти всегда их оказывается достаточно и для однозначного определения параметров положения объекта. Признаков же, выбранных для определения параметров положения, зачастую недостаточно для распознавания выделенного признака.
Когда возникает потребность в дополнительном признаке, первым рассматривается ближайший к выделенному признак. Предполагается, что признаки, расположенные в окрестности видимого признака, вероятно, также видимы, т.е. не заслонены и могут быть найдены в образе.
Для примера рассмотрим задачу выбора близлежащих признаков для детали типа ’’петли”, показанной на рис. 12. В ней имеются три типа локальных признаков и, следовательно, три категории выделяемых признаков: отверстия, углы типа А и углы типа В. Начнем с выбора близлежащих признаков для выделенного признака типа ’’отверстие”. Сначала надо выбрать близлежащие признаки, которые позволят узнать, которое из четырех отверстий было найдено. Для этого система выбирает признаки, разделяющие пары возможных интерпретаций, т.е. выбираются признаки, отличающие ОТВ1 от ОТВ2, ОТВ1 от ОТВЗ и т.д. Чтобы отличить ОТВ1 от ОТВ2, выбирается угол Вб как признак, близлежащий к ОТВ1 (см. рис. 12 и рис. 32). Угол Вб - ближайший признак как по отношению к ОТВ1, так и по отношению к ОТВ2, и может использоваться для того, чтобы отличать ОТВ1 от ОТВ2, поскольку в окрестности ОТВ2 нет угла тина В на таком же расстоянии. Фактически, поскольку ОТВ1 — единственное отверстие, в окрестности которого есть угол типа В на таком расстоянии от центра, как Вб, этот признак один отличает ОТВ1 от трех остальных отверстий.
Рис. 31. Уникальные кластеры близле- Рис. 32. Области поиска близлежащего жащих признаков для каждого из от- признака "угол типа В", соответствую- верстийщего отверстию
Если распознающая система обнаружит отверстие и угол типа В, находящийся в положении Вб по отношению к этому отверстию, то, по- видимому, отверстие — это ОТВ1, а угол — Вб. В силу нескольких причин нельзя безоговорочно утверждать, что пара признаков, найденных системой, это именно Вб в окрестности ОТВ1. Во-первых, две детали могут так лежать одна поверх другой, что угол типа В будет найден в соответствующем положении, но относительно другого отверстия. Во-вторых, шумовые точки вблизи от границы образа могли образовать угол, случайно оказавшийся в ’’правильном” положении по отношению к отверстию. Но хотя полной уверенности в том, что анализируемое отверстие — это ОТВ1, а угол - Вб, нет, обнаружения такой пары признаков обычно достаточно для построения гипотезы распознавания объекта.
Выбрав угол типа В признаком, отличающим ОТВ1 от ОТВ2, система стремится увеличить ’’отдачу” этого признака при различении объектов и определении углов поворота объекта по отношению к другим отверстиям. Как уже отмечено, угол Вб — признак, отличающий ОТВ1 от ОТВЗ и ОТВ1 от ОТВ4. Он также может использоваться при определении угла поворота объекта относительно ОТВ1, поскольку другие отверстия не имеют соответствующих близлежащих признаков — углов типа В.
Первая строка в табл. 4 показывает вклад, вносимый в распознавание объекта углом типа В вблизи отверстия. Целью процедуры выбора было определение признака, отличающего ОТВ1 от ОТВ2 (в табл. 4 это записано "отлич. 1X2”). Для ОТВ1 был выбран угол Вб. Ни одно из других отверстий не имеет поблизости такого угла, поэтому этот признак отличает ОТВ1 от ОТВ2, ОТВ1 от ОТВЗ и ОТВ1 от ОТВ4. Он также определяет угол поворота объекта относительно ОТВ1. Остальные строки табл. 4 показывают вклад, вносимый в распознавание объекта дополнительно выбранными близлежащими признаками, соответствующими выделенным признакам-отверстиям.
Поскольку с помощью утла типа В нельзя отличить ОТВ2 от ОТВЗ, подцелью процедуры выбора признаков было нахождение такого признака, с помощью которого можно было бы это сделать. Процедура выбрала для той цели А1 относительно ОТВ2, поскольку это - ближайший как к ОТВ2, так и к ОТВЗ признак. При этом вблизи ОТВЗ нет находящегося в аналогичном положении угла типа А. Как показано в табл. 4, ни одно из отверстий не имеет соответствующего близлежащего угла типа А. Угол А4 удален от ОТВ4 приблизительно на такое же расстояние, как А1 от ОТВ2, но его относительный угол поворота существенно отличается (что отражено диапазоном изменения соответствующего угла поворота в модели объекта), вследствие чего он не распознается в указанном смысле.
Для различения ОТВЗ и ОТВ4 система выбирает признак В1 относительно ОТВ4. После того, как в список внесен этот дополнительный признак, а перечень распознаваемых признаков обновлен, единственной не Достигнутой подцелью остается определение поворота объекта по отношению к ОТВЗ. Для достижения этой подцели система выбирает ближайшую к ОТВЗ группу еще не использованных признаков. Поскольку ни
Оо CD ОЕГЧ+++СЧОо CD ОЕГЧ+++СЧ+ГЧ+ +coх+гч5+ГЧгч+ +3хX1со да дао Xо оCDУда даво оSо оXX* * БО Оосч сч ОX оГСНН £О w оа Д 3йt t н да го О О О оо о о О Ьr 5 к _ ОО Р О 5 -я £ z m gо о о a 5о Ь ка < а О оX X X mg g g &Ш1+ГЧ+ +coх+гч5+ГЧгч+ +3хX1со да дао Xо оCDУда даво оSо оXX* * БО Оосч сч ОX оГСНН £О w оа Д 3йt t н да го О О О оо о о О Ьr 5 к _ ОО Р О 5 -я £ z m gо о о a 5о Ь ка < а О оX X X mg g g &Ш14. Последовательность автоматического выбора близлежащих признаков для выделенного признака типа "ОТВ"4. Последовательность автоматического выбора близлежащих признаков для выделенного признака типа "ОТВ"гч+со+ГЧ+госч+го+со+го++ ++СЧ+ +хг+го■ +хгГЧ+го++ю5 о X X gдаgя gдаЮёIDёX cy 5о я ооX суооX •9- •P-<4 -е- О О Xдаsдаи a§5 Xя о XО оо £ оSЯ о Xо о о о я 5 о оо Ок§<к§и <§ 5 X § Xg X5 X X оXОX оs5Si6сгч+со+ГЧ+госч+го+со+го++ ++СЧ+ +хг+го■ +хгГЧ+го++ю5 о X X gдаgя gдаЮёIDёX cy 5о я ооX суооX •9- •P-<4 -е- О О Xдаsдаи a§5 Xя о XО оо £ оSЯ о Xо о о о я 5 о оо Ок§<к§и <§ 5 X § Xg X5 X X оXОX оs5Si6с
О
о CD О
Е
ГЧ
+
+
+
СЧ
О
о CD О
Е
ГЧ
+
+
+
СЧ
+
ГЧ
+ +
co
х
+
гч
5
+
ГЧ
гч
+ +
3
х
X
1
со да да
о X
о о
CD
У
да да
в
о о
S
о о
X
X
* * Б
О О
о
сч сч О
X о
ГС
НН £
О w о
а Д 3
й
t t н да го О О О о
о о о О Ь
r 5 к _ О
О Р О 5 -
я £ z m g
о о о a 5
о Ь к
а < а О о
X X X m
g g g &
Ш1
+
ГЧ
+ +
co
х
+
гч
5
+
ГЧ
гч
+ +
3
х
X
1
со да да
о X
о о
CD
У
да да
в
о о
S
о о
X
X
* * Б
О О
о
сч сч О
X о
ГС
НН £
О w о
а Д 3
й
t t н да го О О О о
о о о О Ь
r 5 к _ О
О Р О 5 -
я £ z m g
о о о a 5
о Ь к
а < а О о
X X X m
g g g &
Ш1
4. Последовательность автоматического выбора близлежащих признаков для выделенного признака типа "ОТВ"
4. Последовательность автоматического выбора близлежащих признаков для выделенного признака типа "ОТВ"
гч
+
со
+
ГЧ
+
го
сч
+
го
+
со
+
го
+
+ +
+
СЧ
+ +
хг
+
го
■ +
хг
ГЧ
+
го
+
+
ю
5 о X X g
да
g
я g
да
Ю
ё
ID
ё
X cy 5
о я о
о
X су
о
о
X •9- •P-
<
4 -е- О О X
да
s
да
и a
§
5 X
я о X
О о
о £ о
S
Я о X
о о о о я 5 о о
о О
к
§
<
к
§
и <
§ 5 X § X
g X
5 X X о
X
О
X о
s
5
Si
6с
гч
+
со
+
ГЧ
+
го
сч
+
го
+
со
+
го
+
+ +
+
СЧ
+ +
хг
+
го
■ +
хг
ГЧ
+
го
+
+
ю
5 о X X g
да
g
я g
да
Ю
ё
ID
ё
X cy 5
о я о
о
X су
о
о
X •9- •P-
<
4 -е- О О X
да
s
да
и a
§
5 X
я о X
О о
о £ о
S
Я о X
о о о о я 5 о о
о О
к
§
<
к
§
и <
§ 5 X § X
g X
5 X X о
X
О
X о
s
5
Si
6с
один из признаков, близлежащих ОТВЗ, еще не использовался, к списку добавляется первая их группа, т.е. пара отверстий. ОТВ1 и ОТВ4 имеют вблизи по соответствующему отверстию, а ОТВ2 — два таких отверстия. Таким образом, обнаружив эти отверстия, можно отличить ОТВ1 от ОТВ2, ОТВ1 от ОТВЗ, ОТВ2 от ОТВ4 и ОТВЗ от ОТВ4. Поскольку расположение отверстий относительно всех четырех выделяемых признаков не обладает центральной симметрией, его можно использовать для определения углов поворота объекта по отношению ко всем выделяемым признакам.
Выбор отверстий в качестве близлежащих к выделенному отверстию признаков — результат недостаточного совершенства используемой процедуры выбора. Система всегда выбирает ближайший не использованный ранее признак, позволяющий достигнуть цели. Если бы это было не так, то для определения угла поворота детали относительно ОТВЗ мог бы быть выбран признак АЗ. АЗ несколько дальше от ОТВЗ, чем пара отверстий, тем не менее его использование предпочтительней, потому что ни одно из других отверстий не имеет соответственно расположенных близлежащих углов типа А, что означает, что рабочей системе при распознавании потребуется обработать меньшее число признаков.
В табл. 4 показаны кластеры, включающие четыре типа признаков, выбранных в качестве близлежащих для выделенных признаков типа ’’отверстие”. Эти кластеры минимальны в том смысле, что отвутствие на этапе работы любого из входящих в них признаков может привести к неоднозначности. Признак может не быть обнаружен по целому ряду причин. Он может быть заслонен другой деталью; деталь может оказаться бракованной и не иметь угла типа В в ожидаемом положении; признак может лежать вне поля зрения камеры; он может быть искажен настолько, что детектор признаков не сможет его распознать. В примере с анализатором детали типа ’’петля” отсутствие Вб вблизи ОТВ1 приведет к неоднозначности. Система предполагает найти Вб и ОТВ2 вблизи ОТВ1. Если Вб не найден, определение пары отверстий многозначно: она может состоять из ОТВ1 и ОТВЗ, ОТВ2 и ОТВЗ или ОТВЗ и ОТВ4.
Если пользователь автоматической системы захочет внести в процесс распознавания некоторую избыточность, он может указать системе выбор такого количества признаков, которое обеспечивает достижение каждой из целей двумя или более способами. Цифры под столбцами в табл. 4 показывают число способов достижения каждой из подцелей. Эти значения в дальнейшем называются коэффициентами избыточности. Первая строка этих коэффициентов показывает вклад в распознавание, вносимый первыми четырьмя выбранными признаками. Как видно из табл. 4, существует как минимум один способ достижения любой из указанных целей, два способа достижения шести целей и три способа достижения двух из них. Если пользователь хочет, чтобы каждая из целей могла быть достигнута двумя различными способами, система должна выбрать признаки, отличающие ОТВ1 от ОТВЗ и определяющие угол поворота объекта относительно ОТВЗ. Они позволят достигнуть обеих подцелей одновременно. Для достижения коэффициента избыточности 3 система добавляет еще два типа признаков.
Чем больше коэффициент избыточности, тем больше вероятность найти столько признаков, сколько их требуется для распознавания выделенного признака. Однако увеличение длины списка близлежащих признаков ведет к росту анализируемых графов, что, в свою очередь, увеличивает время построения гипотезы. В случае распознавания отверстий в детали типа ’’петля” средние размеры графов составили 10.75, 1 1.75* и 13.00 вершин для коэффициентов избыточности 1, 2 и 3 соответственно.
Иногда увеличение размеров графов достигает еще больших величин. Например, в случае распознавания углов типа А в петле размеры графов составили 5.50, 8.00 и 14.75 для коэффициентов избыточности 1, 2 и 3 соответственно.
Оптимальное значение коэффициента избыточности зависит от нескольких величин, таких, как затраты на построение и анализ графов при создании гипотезы, затраты на проверку гипотезы и вероятность необ- наружения признаков во время работы. В процессе эксплуатации рассматриваемой реализации системы выяснилось, что она хорошо справляется с распознаванием образов, состоящих из четырех-пяти объектов типа ’’петля”, используя коэффициент избыточности 2 или 3. Затраты на построение гипотезы оказались приблизительно в 5 раз больше, чем на ее проверку. Вероятность необнаружения признаков во время работы системы оказалась настолько велика, что для обеспечения нахождения достаточного для распознавания объекта набора признаков нужны дополнительные признаки.
После составления наборов близлежащих признаков для отверстий система составляет такие же наборы для двух других типов признаков, пригодных для выделения: углов типа А и углов типа В. На рис. 33 представлены кластеры, соответствующие наборам признаков, близлежащих ко всем трем типам выделяемых признаков. Коэффициент избыточности этих наборов равен 3. Близлежащие признаки представлены в табл. 1 и использованы в примерах, содержащих в разделе, посвященном рабочей системе. В следующем подразделе описывается процедура, принимающая решение, который из выделяемых признаков использовать в первую очередь.
У порядочение выделяемых призн а к о в. Распознающая система упорядочивает выделяемые признаки по размеру связанных с ними графов, поскольку построение и анализ графов требует наибольших затрат времени на этапе работы. Система строит кластеры признаков, появление которых ожидается в окрестностях каждого выделяемого признака (как показано на рис. 33), а затем по спискам вариантов интерпретации каждого признака определяет размеры соответствующих графов. Окончательное упорядочение выделяемых признаков проводится по среднему размеру соответствующих им графов. Для кластеров, показанных на рис. 33, средний размер графов составил 13.00 вершин дляотвер-
* Здесь и далее в подобных случаях точка соответствует запятой в написании десятичной дроби. - Примечание издательства.
Рис. 33. Кластеры близлежащих признаков, имеющих коэффициент избыточности 3
стий, 14.25 вершин для углов типа А и 14.50 вершин, для углов типа В.
Обсуждение. Система с ВЛП легко настраивается на работу с различными не полностью видимыми двухмерными объектами. Однако как и все использованные в ней методы, она предполагает ряд ограничений, четко определяющих класс решаемых задач. В этом разделе мы рассматриваем эти ограничения, вытекающие из них следствия и возможные способы уменьшения оказываемого ими влияния.
Основные ограничения, принятые в рассматриваемой реализации системы с ВЛП, таковы:
объекты располагаются на плоскости в одном из нескольких стабильных состояний;
картинная плоскость телевизионной камеры параллельна плоскости, в которой расположены объекты;
объекты легко распознаются по их силуэтам в бинарном представлении;
у каждого объекта есть несколько локальных признаков, имеющих определенное положение в системе координат, связанной с объектом;
объекты могут быть распознаны при использовании сравнительно небольших кластеров близлежащих признаков;
скорость и надежность работы системы должны быть достаточно высокими;
процесс обучения должен выполняться в основном автоматически.
Первое и второе ограничения сужают класс задач до решаемых с помощью двухмерного анализа. Из них вытекает простое однозначное соответствие признаков эталонного образа и признаков объекта. Существует прямое соответствие метрики и углов поворота в предметной плоскости метрике и углам поворота бинарного эталонного образа. Эффекты перспективного искажения минимальны. Поскольку при послойном представлении информации об объекте пространственные углы поворота и расстояния тоже могут быть измерены непосредственно,
стратегия распознавания с ВЛП может применяться и к распознаванию трехмерных объектов. В настоящее время авторы исследуют такую возможность применения рассмотренного метода.
Третье ограничение относится только к рассматриваемой реализации системы. Возможно построение системы с ВЛП, использующей при работе полутоновые детекторы признаков. Типы признаков объекта и используемые для их обнаружения детекторы могут быть различными, но стратегия распознавания от них не зависит. Наиболее привлекательной подобная система становится с введением в ее состав специальных устройств, предназначенных для обнаружения углов и отверстий в полутоновых образах.
Четвертое ограничение сужает класс распознаваемых объектов до таких объектов, которые имеют локальные признаки (типа углов или отверстий). Система с ВЛП не может распознавать объекты, ограниченные кривыми, состоящими из больших сегментов дуг большого радиуса. Для распознавания таких объектов больше подходят другие методы, например обобщенная методика Хоу [6].
Четвертое ограничение сужает класс решаемых задач до распознавания жестких объектов. Планируются исследования, результаты которых позволят ослабить это ограничение. В частности, планируется исследование методов распознавания объектов с подвижными частями. Простейшей стратегией может оказаться отказ от использования всех признаков, принадлежащих подвижной части. Но зачастую именно эти "переменные” признаки играют важную, иногда решающую роль в распознавании. Вопрос в том, как лучше всего их "выделять". Решением проблемы может оказаться процедура распознавания мультисцен. Для распознавания объектов, не обладающих осевой симметрией, почти закончена реализация системы с ВЛП в виде двухэтапной процедуры. Вначале объект и его зеркальное отражение рассматриваются как два различных объекта, но так как признаки и их относительное расположение в них одинаковы, оказалось, что более удобно считать их одним объектом. Для этого ослабляются ограничения на относительный угол поворота признаков и в процедуру распознавания добавляется второй шаг, на котором с исполь-
Рис. 34. Образ, соответствующий почти Рис. 35. Положение одной из деталей, полному перекрыванию двух деталейнайденных по образу рис. 34
зов^нием пар или троек признаков проверяется, которой из сторон кверху лежит объект.
Пятое ограничение подчеркивает то, что система с ВЛП не предназначена для распознавания объектов с сильно удаленными друг от друга признаками. Она использует локальные кластеры признаков. Это иллюстрируют рис. 34—37. На рис. 34 показаны два объекта, один из которых почти полностью закрывает другой. Один из них система распознает, а другой — нет, вследствие того, что обнаруженные в нем признаки расположены слишком далеко друг от друга; они не входят в один локальный кластер. Использование только локальных кластеров не так сильно снижает эффективность, как можно было бы предположить. Если, как показано на рис. 36, объекты значительно больше не совмещены друг с другом, выявляются локальные кластеры и система распознает оба объекта (см. рис. 37). Система с ВЛП, как и всякая система распознавания не полностью видимых объектов, более пригодна для решения задач, в которых объекты видны почти целиком, а не тех, где они почти полностью закрыты.
Система с ВЛП предназначена для работы с промышленными деталями, которые могут иметь несколько одинаковых признаков или групп признаков. Пятое ограничение говорит о том, что эффективность работы системы зависит от того, могут объекты распознаваться с использованием малых кластеров или нет. Большие кластеры дольше строятся, а это ведет к тому, что снижение скорости работы системы с ВЛП начинает определяться не столько увеличением числа распознаваемых объектов, сколько увеличением размеров неоднозначных кластеров. К счастью, у большинства деталей (даже машиностроительных, в которых зачастую встречаются группы одинаковых признаков) имеются сравнительно небольшие распознающие кластеры.
Шестое ограничение может показаться слишком общим, но нам было необходимо исключить применение сильно распараллеливающихся методик сравнения, требующих для своей практической реализации специальной аппаратуры, рассчитанной на параллельную работу. Конечно, подоб-
Рис. 36. Образ, соответствующий мень- Рис. 37. Положения двух деталей, най-
Шему, чем на рис. 34, совмещениюденных по образу рис. 36
двух деталей
ные устройства и алгоритмические методы будут разработаны, но, по крайней мере, в ближайшем будущем мы вынуждены довольствоваться ЭВМ последовательного действия. Поэтому хотелось бы максимально использовать преимущества, даваемые предварительным анализом модели распознаваемого объекта, который возможен во многих промышленных применениях. Такой анализ позволяет увеличить скорость и повысить надежность процесса распознавания.
Планируется продолжение исследований методик анализа моделей объектов и выборки используемых в процессе работы ключевых признаков. Планируется расширить процедуру выборки системы с ВЛП, предусмотрев в ней рассмотрение большего числа комбинаций близлежащих признаков и улучшение их использования. В настоящее время разрабатываются методы использования показателей затрат и надежности обнаружения признаков, а также другие методы упорядочение признаков в соответствии с числом целей, которые их обнаружение помогает достигнуть, и затратами, необходимыми для этого.
Седьмое положение не является в полном смысле ограничением. Скорее это декларация, определяющая взгляд авторов на предмет. Мы верим вто, что системы промышленного зрения завоюют широкое признание только тогда, когда процесс их обучения будет простым. Чем проще будет обучить систему, тем больше задач она сможет решать. Концепция авоматического выбора ключевых признаков не ограничивается использованием в стратегии ВЛП. Аналогичный процесс выбора может использоваться для подбора наилучших пар локальных признаков при схеме сравнения гистограммного типа. Поскольку число пар признаков растет пропорционально квадрату числа признаков, разумное ограничение этого числа может дать существенную экономию.
В заключение следует отметить, что система с ВЛП представляет собой нечто большее, чем просто эффективный метод поиска и распознавания большого класса не полностью видимьтх объектов. Это также полуавтоматическая программная система для выбора ключевых признаков, используемых в дальнейшем в стратегии поиска. Но при общем рассмотрении проблемы распознавания эта система представляет собой лишь один небольшой шаг по направлению к полностью автоматическим системам с возможностью выбора как признаков, так и стратегии распознавания.
Алгоритм поиска максимальной клики графа. Для полноты изложения приведем алгоритм поиска всех максимальных клик(т.е. полностью связных подграфов) некоторого графа. По сути дела, этот алгоритм представляет собой переработку алгоритма, описанного Джонстоном [23]. Более подробное описание этого алгоритма, его модификаций и методов применения может быть найдено в [10].
Алгоритм представляет собой рекурсивную процедуру с тремя параметрами: С, Р и Р и S. Все три параметра представляют собой наборы, представленные массивом двоичных строк. Набор Q представляет собой клику, расширяемую в процессе выполнения алгоритма до максимальной. Набор Р описывает все ’’направления” расширения клики С. Это означает,
что каждый член Р прямо связан со всеми вершинами, входящими в С. Набор Р и S представляет собой объединение Р и набора, состоящего из всех "кандидатов”, которые можно использовать для расширения С, но еще на входящих в С. Алгоритм выглядит следующим образом:
RECURSIVE: PROCEDURE
maxCIiqucs (set С. Р, PuS);
BEGIN'maxCHqucs'
setFlcmcnt X, Y
11 cmptySct (PuS) THEN List - C - as - a - Maximal - Clique
ELSE BEGIN ’choosclTement'
X-choo seOne 1 lementErom (Pu S);
EorEach Y IN intersect (P, complement (neighbours (X))) DO
Bl GIN ’recursiveCalE
P-deletcElcmentEromSet (Y, P);
maxCIiqucs (addITementToSct (Y, C),
intersect (P. neighbours )Y)), intersect (PuS. neighbours )Y)));
I ND 'recursiveCalE;
I ND ’chooseElement’;
I ND 'maxCIiqucs*;
Процедуры, названные длинными именами, выполняют стандартные операции с наборами, а процедура neihbours возвращает набор вершин, непосредственно связанных с вершиной, заданной ее аргументом. Лля того чтобы получить список всех максимальных клик, содержащихся в графе, инициализируется глобальная структура данных, представляющая граф, и вызывается maxCluques (пустой набор, набор всех вершин, набор всех вершин).
Кажется заманчивой возможность увеличения эффективности алгоритма тщательным выбором X (т.е. выбором того члена набора Р и S, у которого меньше всего соседних вершин). К сожалению, время, необходимое для выбора такого X, безусловно, превышает экономию времени, получаемую за счет отказа от просмотра некоторых тупиковых ветвей. Простота алгоритма оказывается основой его быстродействия. По сведениям Джонстона [23], для обнаружения и подсчета всех 687 максимальных клик графа, состоящего из 48 вершин, 50% которых имели парные связи, ушло всего 0,569 с. Его программа была написана для ЭВМ ICL-1900 с длиной двойного слова 48 битов и циклом обращения к памяти 300 нс.
Если реализация вызовов процедуры оказывается неэффективной, общую эффективность алгоритма можно повысить путем развертывания некоторой части рекурсии. Например, если параметр Р и S при рекурсивном вызове оказывается пустым, клика может быть внесена в список максимальных без выполнения вызова. Такой тип вызова можно обойти, перенеся проверку из начала алгоритма в точку, предшествующую рекурсивному вызову. Если аргумент Р и S не пустой, а аргумент Р пустой, вызов не дает результата. Такие вызовы тоже можно обойти, вставив соответствующие проверки.
Если единственной целью вызова процедуры является поиск наибольшей максимальной клики или клики, содержащей наименьшее количество вершин, эффективность алгоритма может быть увеличена путем прекращения рекурсивного построения клик в том случае, когда количество вершин, входящих в С, плюс количество вершин, входящих в Р, меньше определенного числа. Здесь также можно избежать ненужных вызовов, поместив проверку перед рекурсивным вызовом.
СПИСОК ЛИТЕРА ТУРЫ
Р. Kinnucan, "How Smart Robots are Becoming Smarter’, High Technology, p. 35 (September 1981).
Bausch and Lomb Omnicon Pattern Analysis System, Analytic Systems Division Brochure, 820 Linden Avenue, Rochester, New York (1976).
A. G. Reinhold and G. J. VanderBrug, 'Robot Vision for Industry: The Autovision System’, Robotics Age, pp. 22-28 (Fall 1980).
R. M. Karp, 'Reducibility Among Combinatorial Problems'. Complexity of Computer Computations, pp. 85-103 (Plenum Press 1972).
W. A. Perkins. 'A Model-Based Vision System for Industrial Parts’, IEEE Transactions on Computers. Vol.C-27, pp. 126-143 (February 1978).
D. H. Ballard. 'Generalizing the Hough Transform to Detect Arbitrary Shapes', Pattern Recognition 13. Vol. 2. pp. 11 I -112 (1981).
S. Tsuji and A. Nakamura, 'Recognition of an Object in a Stack of Industrial Parts’, Proceedings of UCAI-75, Tbilisi, Georgia, USSR, pp. 811-818 (August 1975).
S. W. Holland, 'A Programmable Computer Vision System Based on Spatial Relationships’, General Motors Research Publication GM R-2078 (February 1976).
A. P. Ambler, et al, "A Versatile Computer-Controlled Assembly System', Proceedings of IJCAl-73, Stanford.California.pp. 298-307(August 1973).
R C Bolles, 'Robust Feature Matching Through Maximal Cliques'. Proceedings of SPIE's Technical Symposium on Imaging Applications for Automated Industrial Inspection and Assembly, Washington, D C (April 1979).
S. W. Zucker and R. A. Hummel. ’Toward a Low-Level Description of Dot Clusters: Labeling Edge, Interior, and Noise Points', Computer Graphics and Image Processing, Vol. 9, No. 3, pp. 2 13-233 (March 1979).
S. T. Barnard and W. B. Thompson. 'Disparity Analysis of Images', IEEE Transactions on Pattern Analysis and Machine Intelligence Vol. PA MI-2, No. 4, pp. 333-340 (July 1980).
R O. Duda and P. E Hart. 'Use of the Hough Transform to Detect Linesand Curves in Pictures', CommunicauonsoflheACM.NcA. 15,No. l,pp. 1 l-15(January 1972).
S. Tsuji and F. Matsumoto, 'Detection of Ellipses by a Modified Hough Transformation’. IEEE Transactions on Computers, Vol. C-27, No. 8, pp. 777-781 (August 1978).
G. Gleason and G. J. Agin, ‘A Modular Vision System for Sensor-Controlled Manipulation and Inspection’, Proceedings of the 9th International Symposium on Industrial Robots, Washington, D.C.,pp. 57-70 (March 1979).
J. Hill, "Dimensional Measurements from Quantized Images', in ‘Machine Intelligence Research Applied to Industrial Automation’, Tenth Report, NSF Grant DAR78-27128, pp. 75-105, SRI International. Menlo Park, California (November 1980).
T. G Evans, ‘A Program for the Solution of a Class of Geometric-Analogy Intelligence-Test Questions’, Semantic Information Processing, pp. 271-353, (MIT Press, Cambridge. Massachusetts, 1968).
J. Gips, ‘A Syntax-Directed Program that Performsa Three-dimensional Perceptual Task’, Pattern Recognition, Vol. 6, pp. 189-199 (1974).
T Kanade, "Recovery of the Three-dimensional Shape of an Object from a Single View', Artificial Intelligence, Vol. 17, pp. 409-461 (1981).
H. Wechsler, ‘A Structural Approach to Shape Analysis Using Mirroring Axes', Computer Graphics and I mage Processing, Vol. 9, No. 3, pp. 246-266 (March 1979).
R. Silva, ‘The Detection of Rotational Object Symmetries from Multiple Object Views', in the Seventh Annual Report on General Methods to Enable Robots with Vision to Acquire, Orient, and Transport Workpieces by J. Birk et al, University ofRhode Island (December 1981).
R. C. Bolles, ‘Local Visual Features', in the SRI Ninth Report on Machine Intelligence Research Applied to Industrial Automation, pp. 77-108 (August 1979).
H. C. Johnston, ‘Cliquesofa Graph-Large or Small’, Draft, Queen’s University of Belfast (1975).
ИНТЕГРАЦИЯ СИСТЕМЫ РАСПОЗНАВАНИЯ ДЕТАЛЕЙИ ПРОМЫШЛЕННОГО РОБОТА
Г. Н е р, П. Мартин и. Институт информатики.Университет Карлсруэ, ФРГ
Введение. В условиях мелкосерийного производства широко применяется технология автоматической обработки на станках с числовым программным управлением. Но задача автоматической доставки деталей к станкам и транспортирования их от станков до сих пор не имеет решения. Такое решение может быть получено только при использовании гибкой транспортной системы, управляемой от ЭВМ, легко настраиваемой на работу с различными деталями.
Однако гибкость таких систем может быть достигнута только тогда, когда они будут оборудованы сенсорными устройствами, распознающими детали и определяющими их положение. Наиболее пригодны для этого оптические датчики — их применение может быть наиболее универсальным. В работе описывается архитектура промышленного робота с сенсорным управлением. Основное внимание уделяется проблемам, возникающим при интеграции системы сенсорного управления и робота.
Распознающая система. Архитектура распознающей системы показана на блок-схеме рис. 1. Система состоит из оптического анализатора изображения, соединенного через специальные аппаратные процессоры с микро-
Рис. 1. Архитектура распознающей системы
Направление сканирования по строке О 1 2 3 Ч62 63^
Рис. 2. Система декартовых координат Рис. 3. К вычислению вектора призма* анализатора изображенийков М
ЭВМ. В качестве оптического анализатора используется матрица из 4096 фотодиодов, размещенных вместе со сканирующим устройством и усилителем сигнала в корпусе телекамеры.
Поскольку анализатор представляет собой квадратную матрицу размером 64X64 элементов, а порядок развертки сигнала фиксирован,
плоскость изображения легко представима в декартовых координатах (рис. 2). Изображение, развертываемое камерой, преобразуется в двоичное представление с помощью адаптивного порогового устройства и записывается для дальнейшей обработки в память.
Процедура распознавания подразделяется на две части; этап обучения и этап непосредственного распознавания. На этапе обучения система запоминает внешний вид объекта — детали, расположенной перед телекамерой. По полученному изображению вычисляется набор признаков М, который в дальнейшем хранится в связанной с данным объектом части памяти ЭВМ и используется в качестве справочной информации.
Вектор признаков определяется расчетом пересечений контура объекта с группой концентрических окружностей, центр которых совмещен с центром тяжести объекта (рис. 3). Для определения угла поворота объекта в поле зрения формируется другой набор признаков CR (п). Это достигается применением специального приема сканирования изображения (рис. 4) [1].
На этапе работы системы в режиме распознавания по считанному изображению объекта вычисляется набор признаков МА, который в дальнейшем сравнивается со всеми наборами признаков Mi, М2, ... , Мл, хранящимися в тех частях памяти ЭВМ, которые связаны с определенными объектами.
По результатам сравнения делается вывод: принадлежит распознаваемый объект к классу объектов, задаваемых наборами Мн М2, ... , Мл, или нет. После распознавания типа объекта вычисляется угол поворота объекта относительно его положения, запомненного на этапе обучения. Как и ранее, определяется набор С (к), который с точностью до фазового сдвига совпадает с набором CR (к), полученным на этапе обучения (рис. 5).
Этот фазовый сдвиг определяет угол поворота объекта относительно его фиксированного положения [2].
1о окончании распознавания должны быть получены все признаки, необходимые для управления схватом робототехнической системы. К
Рис. 5. Полярное кодирование объекта; а — на этапе обучения; б — во время работы
Рис. 7. Система координат робота:
IT ~ единицы линейного перемещении; 1д — единицы углового перемещения вокруг оси руки; REF — исходное положение
ним относятся: класс объекта; положение объекта; угол поворота объекта.
Робототехническая система. В качестве робототехнической системы, снабженной сенсорным управлением, использовался промышленный робот фирмы ’’Сименс” (Siemens). Его манипулятор имеет четыре степени свободы: подъем по вертикали, вращение вокруг вертикальной оси, линейное перемещение по горизонтальной оси и вращение схвата [3]. Схват оборудован присосками, позволяющими работать с плоскими деталями (рис. 6 и 7). Перемещение манипулятора по всем степеням свободы выполняется с помощью шаговых электродвигателей постоянного тока. Рабочий диапазон по каждой из степеней свободы составляет примерно 32000 элементарных перемещений относительно начального положения. Центральный компонент системы управления — мини-ЭВМ PR-310 фирмы ’’Сименс’’. В ее состав входят 8К слов оперативной памяти, интерфейсы устройств управления роботом по всем четырем степеням свободы и модули устройств ввода-вывода. Модули устройств ввода- вывода используются для передачи сигналов между системой управления и пультом оператора, с одной стороны, и роботом и периферийными устройствами, с другой стороны (рис. 8).
Функцию системы управления можно разделить на следующие подфункции:
выполнение программы;
обработка информации, вводимой оператором вручную;
выдача команд на перемещения манипулятора;
обработка сигналов управления;
управление пультом оператора;
координация выполнения всех подфункций.
Большинство подфункций реализовано в виде программньгх модулей и входят в состав программной системы (рис. 9).
В момент запуска или при сбое при выполнении программы становится активным наивысший уровень приоритета ”0”. Каждые 5 мс по
Адресная шина, шина данных
УправляемыеНаборУправляемыеНаборпеременныезначенийпеременныезначенийУправляемыеНаборУправляемыеНаборпеременныезначенийпеременныезначенийРоботРоботПульт оператораПульт оператораПередача данныхПередача данныхРис. 8. Состав устройства управления роботомРис. 8. Состав устройства управления роботом
УправляемыеНаборУправляемыеНабор
переменныезначенийпеременныезначений
УправляемыеНаборУправляемыеНабор
переменныезначенийпеременныезначений
Робот
Робот
Пульт оператора
Пульт оператора
Передача данных
Передача данных
Рис. 8. Состав устройства управления роботом
Рис. 8. Состав устройства управления роботом
временному сигналу инициируется выполнение циклической части прог- раммы, работающей на уровне приоритета ”2”. Для управления роботом по всем степеням свободы необходима синхронизация начала выполнения программы с временным сигналом, поэтому все программные модули построены таким образом, что выполнение соответствующих операций занимает не более 5 мс.
Интерфейс сенсорной системы и промышленного робота. При создании сенсорной системы промышленного робота необходимо рассмотреть три задачи, связанные с организацией: физического интерфейса; протокола передачи данных; преобразования координат.
Поскольку развитие промышленных роботов, снабженных оптическими сенсорами, только начинается, стандартных способов решения этих задач пока не существует. Конструктор системы вынужден полагаться только на собственную интуицию, учитывая ограничения, накладываемые аппаратным и программным обеспечением сенсорных систем и устройствами управления манипулятором.
При организации взаимодействия промышленного робота фирмы ’’Сименс” с сенсорной системой принималось во внимание, что сеансы взаимодействия с устройством управления робота не должны превышать по длительности 5 мс. Для обеспечения такого временного цикла пришлось преобразование координат в системе робота возложить на ЭВМ сенсорной системы. Обмен информацией сенсорной системы и устройства управления выполнялся сеансами с передачей одного байта каждые 5 мс.
Была принята следующая концепция сенсорной системы: каждой из Деталей, с коротыми должна взаимодействовать робототехническая система, ставится в соответствие программа действий, имеющая определенный номер. На детали определяется точка захвата, в общем случае не совпадающая с центром тяжести. Это выполняется на этапе обучения ручным перемещением схвата в эту точку с последующей передачей координат этой точки в ЭВМ сенсорной системы. Из системы координат робота
точка захвата переводится в систему координат, связанных с сенсором, и по ее координатам определяются параметры положения, необходимые для вычисления точек захвата на этапе работы.
На этапе работы устройство управления ждет ■ передачи координат точки захвата. Эта точка определяется после того, как деталь распознается
сенсорной системой. Ее координаты определяются в системе, связанной с сенсором, и пересчитываются в систему координат робота. Полученные таким образом координаты передаются в устройство управления вместе с номером программы действий, соответствующей распознанной детали. Программа действий модифицируется полученными координатами и может быть выполнена устройством управления роботом.
Преобразование координат на этапе обучения. На этапе обучения сенсорной системы использовалась следующая последовательность действий:
изучение детали системой;
определение на детали точки захвата роботом;
разработка программы действий для обработки этой детали.
Ниже описано только определение точки захвата. Начнем с рассмотрения геометрии взаимного размещения робота и зрительной системы, которое показано на рис. 10. Положение декартовой системы координат сенсора по отношению к системе координат робота показано на рис. 11. Координаты сенсора обозначены X и Y, координаты робота Т и S. В системе, связанной с роботом, точка захвата G определяется значениями линейного перемещения схвата TCj и кругового перемещения схвата S(;, приводящими схват в положение над точкой захвата. Расстояние Н между G и М может быть вычислено в системе координат робота как HR = - Т<; + То, в единицах оси линейного перемещения (ly), а в системе сенсора
HS = HR/PT.
Постоянное значение То соответствует расстоянию между схватом и центром вращения манипулятора робота в исходном положении. Это расстояние измеряется в единицах оси линейного перемещения. Постоянное значение Ет представляет собой отношение длины минимального возможного линейного перемещения манипулятора к размерам дискрета сенсора (1т/дискрет).
Рис. 10. Взаимное расположение робота в СТЗ:
1 — схват; 2 — рабочая зона робота; 3 — рабочая зона телекамеры; 4 — транспортер
Рис. 11, Положение системы координат телекамеры по отношению к системе координат робота
Угол поворота манипулятора задается следующим соотношением: ос= (SQ -Sg)/Fs (градусов).
Постоянное значение So соответствует положению манипулятора, параллельному оси X системы координат сенсора. Константа Fs задает количество элементарных перемещений по оси поворота манипулятора, перемещающих его на один угловой градус (Ig/градус). Координаты точки G в системе координат сенсора могут быть вычислены по соотношениям
Д X — Н$ cos (а) (дискрет) ;
Д Y = Hs sin (а) (дискрет).
, Преобразование координат на этапе работы сенсорной системы. На этапе работы сенсорной системы выполняются следующие действия: вычисление центра тяжести РА (Хр, Yp); распознавание детали;
определение угла поворота детали;
вычисление координат позиции захвата в системе координат сенсора Ga(Xg.Y(;);
преобразование координат позиции захвата в систему координат робота.
Значения, полученные при работе сенсорной системы, помечаются подстрочным индексом А. На рис. 12 показана взаимосвязь различных координат и параметров системы. После распознавания детали и определения угла ее поворота 5 по отношению к стандартному положению определяется точка захвата в системе координат сенсора.
Для ориентации детали 7А получаем
7Л = 7L + 5 ,
где 7l — ориентация детали, а 5 — угол ее поворота, и то и другое — относительно стандартного положения детали.
Позиция захвата GA (XG. YG) вычисляется следующим образом:
Д X - D cos (?А);-
Д Y = Dsin(7A);'
Х(; = Хр + Д X;'
YG - Yp + Д Y;1
где Хр, Yp — координаты ранее определенного центра тяжести объекта, a D — расстояние от центра тяжести до точки захвата на детали.
Теперь координаты позиции захвата необходимо перевести в сис-
Рис. 12. Преобразование координат иаэтапе работы
тему координат робота. Для этого выполняются следующие вычисления:
Определение угла поворота манипулятора:
sa = so + Fs ^(Yg - yo)/(xo"xg) Os)’ где
XG = XQ -ДХ; ■
Yc =yo-ay-
Координаты Xq и Yq соответствуют центру вращения манипулятора в системе координат сенсора. Таким образом определяется позиция захвата детали, находящейся в стандартном положении. На этапе работы различные положения детали определяются относительно этого стандартного положения. Для этого на этапе обучения вычисляются расстояние D между точкой захвата на детали G (XG, YG) и центром тяжести Р (Хр, Yp), а также ориентация детали. Расстояние D вычисляется из соотношения
D2 = (Хр-XG)2 + (Yp - Y(.)2 (дискретов), а ориентация детали
7 = arctg(Yp -Yg)/(Xg -Хр) (град)
Для определения позиции захвата и преобразования ее в систему координат робота следует иметь в памяти следующие дополнительные данные:
расстояние D между точкой захвата и центром тяжести (в дискретах) ;
ориентацию детали у (в градусах) ;
угол aL (в градусах);■- 1
номер программы действий N;
положение манипулятора по высоте HL ( 1н);
угол поворота схвата RL (IR) ;
Подстрочный индекс L указывает величины, полученные на этапе обучения.
Положение манипулятора вдоль оси продольного перемещения
Тд =FT [(Хо - XG)2 + (YO-YG)2]*'2-TO (It).
Угол поворота схвата
Ra = rl + fr (5 + аА - aL) <!r)
“а = (SA ~SO)/FS (ГРаД)-
Положение манипулятора по высоте
НА = HL-
Номер программы действий NA = NL. Использованные выше значения Представляют собой:
Rl — угол поворота схвата, заданный на этапе обучения:
FR — количество элементарных перемещений по оси вращения схвата, достаточное для его поворота на один градус (IR — градус);
HL — высота подъема манипулятора, заданная на этапе обучения.
По окончании вычислений значения SA, ТА, НА, RA и NA передаются в устройство управления робота. После этого манипулятор робота может переместиться в позицию захвата.
Определение параметров положения робота в системе координат сенсора. В двух предыдущих разделах ранее измеренные или вычисленные величины использовались для вычисления позиции захвата. Их значения можно разделить на значения, определяемые техническими характеристиками робота (а), и значения, определяемые структурой интегрированной сенсорной робототехнической системы (б). К параметрам первой группы (а) относятся:
10 — расстояние между центром схвата, расположенного в позиции захвата, и осью вращения манипулятора. 10 измеряется в элементарных единицах линейного перемещения манипулятора (1Т) ;
Fs — количество элементарных угловых перемещений манипулятора относительно оси вращения, достаточное для его разворота на один угловой градус (Ig/градус);
FR — количество элементарных угловых перемещений схвата относительно оси вращения, достаточное для его разворота на один угловой градус (IR/градус).
К величинам второй группы (б) относятся:
FT — количество элементарных перемещений манипулятора вдоль оси линейного движения, соответствующее перемещению схвата на один дискрет (1т/дискрет);
So - угловое смещение манипулятора относительно оси вращения от начального положения до положения параллельного оси X системы координат сенсора;
Xq, Yq — координаты центра вращения манипулятора в системе координат сенсора.
Значения величин, относящихся к группе (а), получены измерениями реальных величин в опытах с роботом. Для получения То робот был приведен в исходное положение (по всем осям). Измеренное расстояние между центром схвата и осью вращения манипулятора умножалось на количество элементарных перемещений, приходящихся на единицу длины. Сходным образом были получены и значения Fs и FR.
Робот был приведен в исходное положение и было зафиксировано значение управляющего сигнала относительно оси вращения манипулятора. Затем манипулятор был развернут на 180° и вновь было зафиксировано значение того же сигнала. Разность значений, разделенная на 180°, дала значение Fs. Значение FR для оси вращения схвата определялось таким же способом.
Для получения значений величин группы (б) измерения проводились непосредственно на системе. Для этого положения как робота, так и камеры были зафиксированы. Используемый в качестве объекта диск перемещался с помощью робота между тремя точками, лежащими в поле
Рис. 13. Калибрование осей координат телекамеры и робота
зрения телекамеры -РЬР2 иР3 (рис. 13). Диск был выбран в качестве объекта потому, что:
мала вероятность "ошибки при определении центра тяжести такого
объекта;
внешний вид диска не меняется при его вращении;
точка захвата определяется просто (совпадает с центром тяжести диска).
Каждую точку определ яет пара координат (Si, Ti), (S2, Т2) и (S3, Т3). Точки выбраны таким образом, что перенос объекта между точками Pi и Р2 выполняется одним линейным перемещением манипулятора робота. Между точками Р2 и Р3 объект переносится одним вращательным движением манипулятора. Так как точка захвата диска совпадает с его центром тяжести, позиции захвата могут быть определены посредст
вом вычисления координат центра тяжести диска, находящегося в точках Plf Р2, Р3. Таким образом устанавливается соответствие систем координат сенсора и робота.
Постоянные значения могут быть вычислены следующим образом:
FT =(?! -Т)/[(Х, -Х2)2 + (Yi - Y2)2]1 '2 (1т/дискрет).
В этом равенстве знаменатель представляет собой уравнение окружности
(ХО-Х2)2 + (Yo-Y2)2= г2
(ХО-Х3)2 + (YO-Y3)2 = г2,.
где, .
r=(T2 + TO)/FT.
Таким образом вычисляются координаты центра вращения манипулятора робота (Xq,Yq) в координатах зрительной системы.
Заключение. Работа описанной сенсорной робототехнической системы демонстрировалась в комплексе с ленточным конвейером. На нем двигались различные детали, размещенные случайным образом. Зрительная система распознавала детали и определяла параметры их положения. Роботу передавались координаты точки захвата детали, и он переносил деталь на рабочую поверхность в определенном положении.
До настоящего времени подобные задачи решались только с помощью средств, специально настроенных на работу с конкретными деталями. В общем случае использование подобных средств экономически оправдано только при больших размерах партий выпускаемых деталей. С помощью сенсорно управляемого робота становится возможным работать с деталями широкой номенклатуры без применения специальной оснастки, что делает эту систему пригодной для работы с малыми и средними партиями деталей.
СПИСОК ЛИТЕРА ТУРЫ
К. Armbruster, Р. Martini, G, Nehr, U. Rembold and W. Olzmann, "A very fast vision system for recognising ports and their locations and orientation', Proc. 9th Ini. Symp Industrial Robots pp. 265-280, Washington. DC, USA, SME, March 1979.
G. Nehr and P. Martini, 'Recognition of angular orientation of objects with the help of optical sensors'. The Industrial Robot. Vol. 6. No. 2. pp. 62-69 (June 1979).
K. Feldman, et al 'Einsatz des Siemens-Industrieroboters zur Maschinenbeschickung', Proc. Sth I nt Symp. Industrial Robots.pp. 841-849, Stuttgart, Germany, 1FS (Publications) (May 1978).
H Becker and G. Leusch, 'Freiprogrammierbare Steuerung fur Industrieroboter’, Siemens- Zeil schrifl Vol. 51 No. 6. pp. 463 (1977).
ОЦЕНКА ПРОИЗВОДИТЕЛЬНОСТИ CT3
С.А. Розен, Дж. Дж. ГлисонФирма "Машин Интелидженс", США
Перепечатано с разрешения общества промышленных инженеров, ■Дирборн, Мичиган, США
В статье предлагается простой метод сравнительной оценки производительности СТЗ, предназначенных для использования в программируемых автоматических системах. Основными характеристиками производительности приняты надежность распознавания силуэтов деталей и время, необходимое для распознавания и определения параметров положения деталей.
Метод основан на использовании небольших наборов двухмерных тестовых фигур с легко воспроизводимыми силуэтами. Детали с множественными внутренними отверстиями моделируются с помощью диска с отверстиями. При этом с увеличением количества отверстий увеличивается и сложность распознавания, что приводит к увеличению времени работы.
В статье описывается также измерительный метод, использующий геометрические тестовые фигуры; приводится пример оценки производительности типовой коммерческой системы машинного зрения.
Введение. СТЗ, обрабатывающие и интерпретирующие электроннооптические (телевизионные) образы, используются в практике решения множества задач автоматизации [1—5], в число которых входят технический контроль, манипулирование деталями и автоматическая сборка. Первое поколение коммерчески доступных зрительных систем предназначалось для распознавания деталей, их стабильных состояний и параметров положения при следующих серьезных ограничениях:
каждая деталь может находиться в одном или нескольких стабильных состояниях (деталь, подвешенная на крюке и имеющая возможность раскачиваться или поворачиваться, имеет бесконечное число состояний и не удовлетворяет данному ограничению);
на основе выявления контраста между деталью и фоном, достигнутого с помощью соответствующего освещения, может быть получен бинарный образ, соответствующий силуэту детали;
все детали, находящиеся в поле зрения, изолированы друг от друга (т.е. не соприкасаются; не допускается также перекрытие деталей).
Перечисленные ограничения определяют условия эффективного применения современных зрительных систем, работающих на основе анализа бинарных образов. Сложность анализируемой сцены при условии соблюдения этих ограничений зависит от количества отдельных областей или ’’пятен”, с которыми приходится работать при анализе сцены, а также от количества состояний, в которых может находиться каждая из деталей. Отдельно рассматриваемая деталь может иметь несколько представляющих интерес внутренних областей, например отверстий. Измеренные количественные характеристики таких областей используются для распознавания и технического контроля деталей. Для передачи зрительной информации роботу должны быть определены стабильное состояние детали и параметры ее положения.
Полуколичественная классификация сложности сцен для рассматриваемого класса простых задач зрения была описана Фойтом и др. [6] с использованием простых геометрических отношений между деталями, находящимися в поле зрения. В их работе рассматривались различные случаи: от простейших, когда в поле зрения находилась одна случайным образом расположенная деталь, до весьма сложных, в которых несколько деталей касались или перекрывали друг друга. Был выделен частный случай, имеющий большое практическое значение — ситуация, когда несколько не касающихся и не перекрывающих друг друга объектов, находящихся в поле зрения, не могут быть разграничены неперекрывающи- мися прямоугольными ’’окнами”, охватывающими каждую из них. Два примера такой ситуации показаны на рис. 1. На рис. 1, а показаны две
•ОФ®
Рис. 1. Сложные объекты, требующие анализа связностиРис. 1. Сложные объекты, требующие анализа связностиО ’ ?
Рис. 1. Сложные объекты, требующие анализа связности
Рис. 1. Сложные объекты, требующие анализа связности
Рис. 2. Набор дисков с различным числом отверстий. Диаметр всех отверстий 0,25Дюйма (6,35 мм). Центры отверстий лежат на окружности диаметром 1 дюйм(25,4 мм)
детали, не касающиеся друг друга, но расположенные таким образом, что показанные штриховой линией прямоугольные ’’окна” перекрываются. На рис. 1, б диску с двумя отверстиями соответствуют три отдельных ’’пятна” — сам диск и два отверстия. Эти образы могут быть обработаны методами анализа связности, которые автоматически группируют точки изображения, соответствующие различным областям. Представляется целесообразным принятие количества ’’пятен”, которые приходится обработать в процессе анализа сцены, в качестве одного из показателей ее сложности. Второй показатель — количество и типы геометрических признаков, анализируемых при распознавании каждого из состояний объекта. Такими признаками могут служить площадь, периметр, моменты второго порядка, максимальный и минимальный радиусы, проведенные из центроида, количество областей (’’пятен”) и т.д. Третьим показателем сложности служит общий объем информации, который приходится обработать в процессе анализа сцены, т.е. суммарное количество битов, описывающих объект (выделенный из фона), составляющих образ (бинарный, полутоновой или цветной).
Вывести аналитическое представление зависимости, численно выражающей сложность любой из бесконечного разнообразия сцен, очень трудно. Вместо этого предлагается использовать стандартный, легко воспроизводимый набор двухмерных тестовых фигур, с помощью которого можно получить сравнительные оценки производительности различных систем анализа визуальной информации. Эти оценки основываются на трех вышеупомянутых показателях сложности. Безусловно, по мере того, как будет развиваться соответствующая классификация и можно будет лучше определить понятие ’’сложность”, будут появляться и новые показатели.
Предлагаемые схема проверки и наборы фигур. В качестве тестовых объектов, позволяющих оценить некоторые показатели производительности систем анализа визуальной информации, предлагается использовать для набора двухмерных черно-белых геометрических фигур.
Первый набор, изображенный на рис. 2, предназначен для измерения зависимости времени распознавания и других величин от сложности объекта. Сложность возрастает с увеличением количества внутренних областей (’’пятен”), а суммарное количество обрабатываемых битов образа и количество рассматриваемых признаков остаются неизменными для всего набора. Набор состоит из восьми дисков диаметром 2 дюйма (50,8 мм). В каждом диске имеется различное количество отверстий диаметром 0,5 дюйма (12,7 мм) — от нуля до семи. Диски легко тиражируются с высокой точностью воспроизведения (например, фотографически) , что обеспечивает высокую контрастность изображения. Площадь всех дисков одинакова, что обеспечивает равенство объемов информации в бинарном образе. По внешнему виду диски отличаются не очень сильно, поэтому выбор признаков не должен серьезно влиять на скорость распознавания.
Второй набор, показанный на рис. 3, состоит из четырех групп объек-
Рис. 3. Группы различных фигур равной площади. Площадь всех фигур равна тт кв. дюймов (20,1 см2). Диаметр отверстий равен 0,25 дюйма (6,35 мм)
Рис. 4. Зависимость времени работы системы технического зрения I/S-100 от слож-ности распознаваемых объектов — дисков одного диаметра с различным количест-вом отверстий.
Тестовые детали; диски диаметром 2 дюйма (50,8 мм) с переменным числом отверстий (от 0 до 7) диаметром 0,25 дюйма (6,35 мм) , центры которых расположены на окружности диаметром 1 дюйм (25, 4 мм) , концентрической с диском. Система и оснастка: система технического зрения 1/S-100 фирмы “Мэшин Интеллидженс" {Machine Intelligence), оборудованная телекамерой MIC-22 с фоточувствительным полем 128 на 128 элементов, объектив с фокусным расстоянием 50 мм 7:1.8, расстояние до объекта 2,8 фута (85,4 см) . Размеры поля зрения 2 на 2 дюйма (50,4 на 50,4 мм) , ЭВМ LSI—А М2. Использованные для распознавания признаки: Кривая А - 11 признаков, в том числе площадь внутри контура, суммарная площадь, площадь отверстий, периметр, минимальное, максимальное и среднее значения радиуса, большая и малая оси эллипса, моменты 2-го порядка, размеры охватывающего прямоугольника, кривая В — только суммарная площадь
тов существенно отличающихся форм. Он предназначен для оценки влия- ния выбора совокупности отличительных признаков на эффективность распознавания. Имеются четыре различных группы по две фигуры одинаковой формы в каждой. Это два диска, два квадрата, два прямоугольника и два равносторонних треугольника. Площадь, ограниченная контуром любой фигуры, равна я кв. дюймов (20,1 см2). Одна из деталей, образующих группу, имеет отверстие диаметром 0,25 дюйма (6,4 мм), а другая — нет. Этот тест должен дать некоторое представление о сравнительной ценности выбранного набора признаков при условиях неизменной площади (количество обрабатываемых бит) и числе ’’пятен” не больше двух.
Данные экспериментов. На рис. 4 и табл. 1 показаны результаты измерений производительности коммерческой зрительной системы [8], сделанных на двух тестовых наборах фигур. В эксперименте, результаты
0,0310,0550,0013,0490,0257,860,1750,0310,0550,0013,0490,0257,860,175
0,0310,0550,0013,0490,0257,860,175
0,0310,0550,0013,0490,0257,860,175
которого показаны на рис. 4, система была настроена на надежное распознавание дисков с отверстиями, расположенных случайным образом, классифицируя их по методу ’’ближайшего соседнего”. Для первой серии измерений использовалась совокупность 11 отличительных признаков, во второй (контрольной) серии использовался только один признак — площадь фигуры. Диски диаметром 2 дюйма (50,8 мм) случайным образом размещались в поле зрения размерами 4X4 дюйма (101,6Х 101,6 мм) , преобразуемом в бинарный образ камерой с фоточувствительной матрицей, состоящей из 128X128 датчиков в интегральном исполнении (GE TH 2200).
Кривая ”А” показывает, что при использовании совокупности 11 отличительных признаков время распознавания растет от 700 мс (для диска без отверстий) до 850 мс для диска с семью отверстиями. Поскольку распознавание выполнялось на основе 11 измерений, все диски распознавались с высокой степенью надежности. Более того, использование соответствующего протокола обмена позволило отображать на терминалах полную информацию о параметрах положения любого из ’’пятен” (самого диска и всех отверстий).
Контрольная кривая ”В” показывает, что время распознавания любого из дисков равнялось приблизительно 250 мс. В этом случае в качестве признака использовалась только площадь фигуры за вычетом внутренних отверстий, т.е. выполнялся подсчет количества ’’черных” дискретов. Такой метод распознавания довольно ненадежен, поскольку основывается на малых различиях в значениях площади.
В табл. 1 показаны результаты измерений, сделанных на втором наборе фигур. Восемь фигур (рис. 3) в процессе обучения были показаны распознающей системе в различных положениях в поле зрения (по крайней мере, по десять раз каждая). Совместно с коммерческой системой анализа визуальной информации [8] использовалась телевизионная камера с кремниевым видиконом, обеспечивающим разрешающую способность приблизительно 240X240 элементов. Поле зрения имело размеры 4X4 дюйма (101,6X101,6 мм). Система вычисляла средние значения и девиацию каждого из признаков, используемых при распознавании фигур. В таблице приведены средние значения и девиация четырех выбранных признаков, а именно: площади, ограниченной контуром, суммарной площади отверстий, длины максимального радиуса и периметра. Анализ этой информации привел к следующим выводам.
Одного (любого) признака недостаточно для различения всех восьми фигур. Например, фигуры, входящие в одну группу, выглядят одинаково, за исключением одного отверстия. Их нельзя различать по площади, ограниченной контуром, длине максимального радиуса и периметру. Единственный признак, позволяющий обнаружить наличие или отсутствие отверстия — суммарная площадь отверстий. Но этого признака недостаточно для различения фигур, входящих в различные группы.
Суммарная площадь фигуры не может использоваться в качестве отличительного признака, поскольку эксперимент построен таким образом, что значение этой величины одинаково для всех фигур. Единственное
2. Отличительные признаки
отличие вносится отверс тисм. Однако разрешающа: способность системы слить
Различаемые фигуры
Максимальный радиус, %
Периметр, %
О 1 1
32,8
2,8
ком мала и не позволяе компенсировать шумовы
О
107,5
20,5
сигналы и оптические ис кажения, наличие которы
о □
71,8
■ ' 6,8
вызывает девиацию пока зателя, сравнимую по ве
д 1 1
35,6
5,6
личине с его изменением вызванным наличием отвер
8,1
; -2,5
стия диаметром в 1/4 дюйм. (6,4 мм). Таким образом
1 1 1j
11,9
-6,7
данные этого столбца гово рят о необходимости увели
ности системы
чения разрешающей способ для тех случаев, когда должен использоваться именно
этот признак.
Длина максимального радиуса оказывается полезным признаком, отличающим фигуры, принадлежащие различным группам. Его использование совместно с признаком суммарной площади отверстий позволяет распознавать все восемь фигур. Например, для треугольников и прямоугольников разность средних величин, смещенных на утроенную величину диапаноза девиации равна
Максимальный радиус для треугольника[2,47 - 3 X 0,63]Максимальный радиус для треугольника[2,47 - 3 X 0,63]Прямоугольный радиус дляпрямоугольника[1,01 + 3 X 0,036] = 0,163 дюйма
Максимальный радиус для треугольника
[2,47 - 3 X 0,63]
Максимальный радиус для треугольника
[2,47 - 3 X 0,63]
Разность положительна и составляет 0,163/2,118 = 7,6% измеренного среднего. Это достаточно большая величина. В табл. 2 приведены результаты такого подсчета при использовании в качестве отличительного признака длины максимального радиуса и периметра.
Длина периметра тоже представляет собой полезный признак, отличающий фигуры, входящие в три из четырех подгрупп, но его недостаточно для различения квадрата и прямоугольника. Расчет показывает значительное перекрывание диапазонов девиации:
Периметр дляПериметр для
прямоугольникаквадрата
[7,84 - 3 x 0,186] -[7,40+ 3 X 0,127]=- 0,499 дюйма
Отрицательное значение разности говорит о перекрывании, что делает данный признак бесполезным при различении прямоугольника и квадрата. Однако этот признак применим для различения других пар фигур.
Совместное использование измеренных значений длин максималь-
ного радиуса и периметра позволяет надежно различать все группы, а значение площади отверстий позволяет различать все группы, а значение площади отверстий позволяет различать фигуры, входящие в одну группу.
Заключение. Предложен метод сравнения наиболее важных показателей производительности зрительных систем и описано его применение. Метод позволяет оценивать время работы системы как функцию сложности сцены и степени надежности распознавания объектов с помощью использования нескольких наборов стандартных, легко воспроизводимых геометрических фигур. Приведены результаты измерений для одной системы.
СПИСОК ПИТЕРА ТУРЫ
G. G. Dodd and L. Rossel, Computer Vision and Sensor-Based Robots’, Plenum Press, New York (1979).
C. A. Rosen and D. Nitzan. 'Use of Sensors in Programmable Automation’, Computer. Vol. 10, No. 12(1977).
G Gleason and G J. Agin. ‘A Modular Vision System for Sensor-Controlled Manipulation and Inspection'. Proc, 9th Int Symp. on Industrial Robots, Washington, EX?. (March 1979).
M R Ward, L Rossol. S W. Holland and R Dewar. 'Consight - A Practical Vision-Based Robot Guidance System'. Proc 9th Int Symp. on Industrial Robots, Washington, EX? (March 1979).
J. P Foith. H Geisselmann. U. Lubben and H. Ringshauser, 'A Modular System for Digital Imaging Sensors for Industrial Vision: Proc. 3rd C1SM IFToMM Symp. on Theory and Practice of Robots and.Manipulators’, Udine. Italy (September 1978).
J. P Foith. ’A TV-Sensor for Top-Lighting and Multiple Part Analysis. 2nd/FAC/lFlP Symp on Information Control Problems in Manufacturing Technology, Stuttgart. Germany (October 1979).
G. J Agin. 'Computer Vision Systems for Industrial Inspection and Assembly’, Computer, Vol. 13, No. 5 (May 1980).
Model VS-100 Machine Vision System, Machine Intelligence Corporation, Palo Alto, California.
Г л а в a 3
ИССЛЕДОВАНИЯВ ОБЛАСТИ ТЕХНИЧЕСКОГО ЗРЕНИЯ
В настоящее время в исследование технического зрения вкладывается больше средств и усилий, чем в любую другую отрасль робототехники, но многие из задач остаются до сих пор не решенными. К таким задачам относятся и рассматриваемые в следующих четырех работах визуальное управление, стереоскопические анализаторы и специальное освещение.
АДАПТИВНОЕ ВИЗУАЛЬНОЕ УПРАВЛЕНИЕ
РОБОТАМИ
А.С. С а н д е р с о н, Л.И. В е й с сУниверситет Карнеги — Меллон, США
Визуальные системы управления предназначены для организации обратной связи по относительному положению рабочего органа робота. Такие системы представляют собой средство управления позиционированием, извлекающие и обрабатывающее визуальную информацию о рабочей среде. В настоящей работе проводится классификация систем визуального управления по способам организации обратной связи (различаются обратные связи по положению рабочего органа и по изображению) и по способам управления рабочим органом (замкнутый и разомкнутый циклы управления). В статье обсуждаются инженерные задачи, возникающие в связи с вносимыми визуальной следящей системой и каналами связи нелинейными искажениями; предлагается метод проектирования системы визуального управления, использующий механизм адаптации, определение знака управляющего воздействия и концепцию логической иерархии управления.
Введение. Одним из важнейших направлений развития робототехнических систем всегда была организация взаимодействия манипулятора и сенсорных анализаторов. Использование сенсоров придает системе гибкость, расширяет ее функциональные возможности и увеличивает круг решаемых ею задач. Большинство ныне существующих систем, использующих взаимодействие манипулятора и сенсоров, построены путем связывания автономных сенсорной и робототехнической подсистем. Эти системы продемонстрировали состоятельность концепции взаимодействия системы управления роботом с сенсорной подсистемой, но при их разработке не были затронуты основные вопросы анализа, проектирования и оценки быстродействия таких систем. В настоящей работе описывается формализованный подход к анализу структур зрительных систем сервоуправления и методика его применения при проектировании и оценке таких систем.
По ряду причин практическое развитие сенсорных систем сервоуправления до некоторого момента шло медленно. Робототехнические системы (даже не использующие сенсоры) плохо поддаются анализу и сложны в проектировании. В промышленности накоплен большой практический опыт использования несенсорных роботов. Сенсорные системы (а особенно СТЗ) часто имеют низкое по сравнению с возможностями механической части робота быстродействие. Кроме того, во многих случаях практическое применение машинного зрения возможно только при соблюдении жестких ограничений. Существо проблем, возникающих при исследовании сенсорного управления, определяется сложностью совместного анализа процессов управления манипулятором и обработки сенсорной информации.
В настоящей работе авторы пытались отделить проблемы управления, возникающие вследствие использования визуальной обратной связи, от проблем, связанных с кинематическими и динамическими особенностями манипулятора и способами обработки визуальной информации. Основное внимание уделено выбору способа организации обратной связи. В случае использования анализатора визуальной информации разграничиваются обратная связь по образу (в качестве управляющей информации используются некоторые параметры образа) и обратная связь по положению (образ используется для определения параметров положения объекта в пространстве с учетом особенностей его метрики, и эти параметры используются в качестве управляющих). Кроме того, выделены два класса структур управления. Структуры, функционирующие по принципу ’’осмотр — перемещение”, используют внутренний замкнутый цикл общего управления. Системы визуального слежения не имеют такого цикла и для управления манипулятором используют только информацию сенсорной обратной связи. Более современны системы сервоуправления с обратной связью по образу, поэтому в статье обсуждаются некоторые методы борьбы с нелинейными искажениями совокупности параметров образа, используемых при управлении движением манипулятора.
Предшествовавшие исследования. Системы, использующие взаимодействие манипулятора и машинного зрения, были предметом многочисленных исследований и экспериментов [1—9]. Хотя структуры таких систем могут сильно отличаться, большинство случаев применения машинного зрения в робототехнике касалось управления перемещения манипулятора или руки робота в некоторое положение относительно детали. Одна из возможных конфигураций системы приведена на рис. 1. Камера, размещенная на руке робота, формирует информацию обратной связи, используемую для позиционирования рабочего органа робота. При другой схеме организации системы можно управлять относительными положениями объекта и руки робота при закрепленной камере или камере, смонтированной на подвижном роботе [10]. Управление положением рабочего органа робота при фиксированной камере может быть улучшено приданием рабочему органу наиболее подходящей формы.
Система позиционного управления робота. Типовая система позиционирования робота изображена на рис. 2. Для манипулятора с шестью звеньями желаемое положение рабочего органа может быть представлено в виде однородного преобразования Т6 его исходного положения или, что то же самое, последовательного применения преобразований по каждому из звеньев:
Тб = At Аг Аз А4 А5 Аб, (1) где Aj — однородное преобразование, преобразующее параметры положения 1-го звена в параметры положения (i — 1) -го звена. Для того, чтобы по конечному положению рабочего органа определить параметры положения всех звеньев, необходимо решить систему трансцендентных уравнений [11], что может потребовать большого количества вычислений. Ясно, что способ представления желаемого положения манипулятора
может повлиять на динамические показатели системы. Использован» для этого положения рабочего органа, а не звеньев вносит временные задержки, обусловленные вычислениями, и погрешности, вызванные приближенным характером решения уравнения манипулятора. Хотя в пространстве координат однородные преобразования равенства (1) линейны, они могут представлять собой существенно нелинейные функции управляющих переменных, что в результате приводит к необходи мости решения сложных уравнений. Воздействие подобных нелинейностей на систему с разомкнутым циклом управления, показанную на рис. 2, можно рассматривать как последовательность изменений коэффициентов передачи. Это позволяет учитывать их вне связи с конструкциями устройств сервоуправления звеньями. При использовании для управления визуальной (или любой другой) обратной связи по положению рабочего органа решение уравнения манипулятора входит в цикл управления, что может существенно повлиять на скоростные характеристики системы. Удобно представить решения манипулятора, рассматриваемое в матрицах приращений, зависящих от конфигураций, в виде якобиана J:
Р = JPO dq„ (2)
где .р 0 - некоторое исходное положение рабочего органа; q* — вектор, задающий положения звеньев; dp — дифференциал положения рабочего органа; d^ — дифференциал положения звеньев, di ро — матрица частных производных 8 p/8q Якобиан можно рассматривать как матрицу малых приращений в окрестности исходного положения р0. Составляющие J элементы представляют собой в общем случае нелинейные функции ^.
В системе позиционирования, показанной на рис. 2, результат решения уравнения манипулятора преобразуется в траектории движения его звеньев. На практике устройства управления звеньями проектируются с использованием упрощенных динамических моделей. Обычно циклы сер-
I
воуправления положением и скоростью перемещения проектируются исходя из предельных амплитуд колебаний демпфированных звеньев. При этом предполагают независимость динамики отдельных звеньев и задаются некоторыми действующими значениями момента инерции и коэффициента демпфирования. При проектировании рассматривается отношение характеристической частоты цикла сервоуправления и резонансной частоты манипулятора, а также систематическая погрешность. Во многих работах [12—16] исследованы стратегии управления, при которых данные о динамике манипулятора используются с большей полнотой. Для уменьшения взаимного влияния отдельных частей системы может быть полезен метод вычисленных моментов вращения [15].
Визуальная обратная связь. В системах визуального управления данные об относительном положении камеры и объекта получаются в результате обработки считанного камерой образа. Этот образ представляет собой двухмерный массив значений яркости, не связанных напрямую со значениями параметров положения объекта или с его формой. Как правило, массив, содержащий представление образа, обрабатывается тремя процедурами.
Предварительная обработка изображения преобразует I в I р другой двухмерный массив:
1р = ^ CD-(3)
Выделение признаков — по 1р строится одномерный массив 7 или описание признаков F:
f = (1р),_(4)
Распознавание образа — по f или F строится геометрическая модель М объекта, находящегося в поле зрения, и гс — вектор параметров положения объекта относительно камеры. В схеме управления с обратной связью по образу в качестве параметров обратной связи используются Т или F. В схеме управления с обратной связью по положению в качестве параметра обратной связи используется гс.
С точки зрения визуального управления эти процессы вычислительной обработки образа можно рассматривать как измерения, выполняемые
Признак Изображение
Рис. 3. Структурная схема системы визуального управления роботом
в каждом из положений рабочего органа (рис. 3). Влияние этих измеренш на работу системы управления с замкнутым циклом проявляется в еле дующем.
Измерения вносят дополнительные помехи в работу системы.
Выполнение измерений вносит временные задержки.
В систему приходится вводить эталонные значения используемы> параметров обратной связи. В системах с обратной связью по положении задается эталонное положение, в системах с обратной связью по образ> задаются описания или значения признаков.
Для упрощения анализа предположим, что процессы выделения признаков и распознавания объектов идеальны,т.е.
Е^с)=^,(5)
где функция Е соответствует ожидаемому значению., а гс - оценка значений, полученная в процессе распознавания, причем
E(f) = fc,(6)
где Т(7 — вектор значений признаков, полученных при сугубо геометрическом рассмотрении объекта и его проекции. Дополнительно предполагается, что f(7 — гладкая и ограниченная (хотя и не обязательно монотонная) функция параметров положения объекта относительно камеры, положение которой задается вектором sc:
Можно вывести аналитическое представление функции R, опираясь на модель объекта и вид используемого камерой преобразования перспективы. Типовые признаки, в число которых входят площадь, длины отрезков, величины углов, удовлетворяют предъявляемым требованиям и во многих случаях немонотонны.
При использовании управления с обратной связью по положению желаемое положение объекта будет выражаться в системе координат, связанной с камерой (в случае подвижной камеры) или в системе мировых координат (в случае подвижного объекта). В обоих случаях можно воспользоваться преобразованием
O-Zz TjG (С о,(8)
связывающим оценки параметров положения в обеих системах координат. Зависимости обратной связи линейны и не связаны прямо с дополнительно вносимыми помехами и временными задержками (хотя, возможно, статистическая зависимость имеется).
При управлении с обратной связью по параметрам образа сигнал обратной связи нелинеен, а признаки могут быть связаны с несколькими параметрами положения рабочего органа функцией R. При использовании обратной связи по образу можно уменьшить вычислительные задержки и погрешности оценок, если распознавание не требуется. Но хотя при таком * подходе отпадает необходимость решать в процессе управления уравнение манипулятора (на прямой части процесса управления), само по себе
преобразование признаков может внести нелинейности и дополнительные зависимости в обратную связь. Воздействие преобразования признаков на работу системы во многом совпадает с тем, которое оказывает решение уравнения манипулятора путем вычисления якобиана преобразования. В этом случае якобиан преобразования называется матрицей влияния признаков G и справедливо равенство
di = G Пр, (9)
где G — матрица частных производных 8т/8р в окрестности точки р0. Таким образом, матрица влияния признаков представляет собой матрицу малых приращений сигнала обратной связи, зависящих от положения рабочего органа, положения объекта и характеристик камеры. Поскольку R — не монотонная функция, для определения направления изменения признака используется матрица направления изменения признаков В:
В = sign (G). (10)
Не диагональные элементы этой матрицы определяют взаимосвязь приз
наков и положений рабочего органа.
Структуры систем визуального управления. В табл. 1 сведены структуры визуального управления, различающиеся типами применяемых манипуляторов, организацией обратной связи и схемами синхронизации. Соответствующие этим структурам блок-схемы показаны на рис. 4. Отличие статической и динамической схем управления, использующих принцип ’’наблюдение-перемещение”, заключается в основном в распределении процессов управления во времени, В статическом случае управление манипулятором и обработка образа выполняются последовательно, а в динамическом случае они выполняются одновременно, хотя и с различными скоростями. Статическая система, действующая по принципу ’’наблюдение-перемещение”, не является в полном смысле замкнутой системой управления, поскольку процессы, протекающие в прямой и обратной ветвях процесса управления, независимы. Тем не менее большинство экспериментов в области визуального управления выполнялись
именно по этой схеме. Системы с обратной связью по образу, действующие по принципу ’’наблюдение-перемещение”, требуют решения системы уравнений, связывающей параметры образа и положения звеньев манипулятора. Далее мы не будем более детально рассматривать эти системы.
Системы адаптивного визуального управления. Для того, чтобы ПОД-
1. Структуры визуального управления
Визуальная обЧратная связь
Манипулятор
Управление в замкну- Управление том контуре ("наблю- в разомкну-
дение - перемеще-щение”)
том конту-ре (визу-
альное сле
жение)
По положе-нию
По образу
Сгатичес- Динамиков ческое
Рис. 4, а Рис. 4, б Рис. 4, н
Не показано Рис. 4. г
черкнуть особенности, вносимые в систему управления введением сен сорных анализаторов, далее будем рассматривать только следящие визу альные системы управления. Визуальная обратная связь приводит и нелинейным искажениям, зависящим от структуры системы и возникаю щим как в системах с обратной связью по положению, так и по образу
Возмущения
Хо(к)Хо(к)ТпзцТпзцТпзцТпзцХ(к)Х(к)РегуляторРегуляторХг(к)Хг(к)I =пI =пX(t)X(t)Хо(к-1)Хо(к-1)f(K)f(K)2_ /2_ /1=1 Процесс управления в замкнутом контуре1=1 Процесс управления в замкнутом контуреТпзцТпзцОбработка изображения и выделение признаковОбработка изображения и выделение признакова(к)а(к)Xo(t)Xo(t)Изображения I ТпзцИзображения I ТпзцПомелиВозмущенияПомелиВозмущения(ХЕ)(ХЕ)а)а)Хо(к)Хо(к)Хо(к-1)Хо(к-1)f к)f к)а(к)а(к)г-1г-1РегуляторРегуляторWE- 6)WE- 6)xxoWОбъект I **xxoWОбъект I **Процесс управлениях |Л/^ в замкнутом контуреПроцесс управлениях |Л/^ в замкнутом контуреТуТуПомехиПомехиВозмущенияВозмущенияХО(к)ХО(к)xodwxodwХо(к-пХо(к-пРегуляторРегуляторРешение уравнений и^[ манипулятора *Решение уравнений и^[ манипулятора *ЦАПМЦАПМ\ Процессулрав-Х ^21 ления 6 мезамк- —*1нутом контуре р 1\ Процессулрав-Х ^21 ления 6 мезамк- —*1нутом контуре р 1ТсК^Объекту-»*ТсК^Объекту-»*f(k-1).f(k-1).билбилаЦО*—IVаЦО*—IV11ТуТуг1г1WE) в)WE) в)ПомехиВозмущенияПомехиВозмущенияf(k)f(k)fd(k)fd(k)f(k-l)f(k-l)Iт1Процесс управления в I ^^ незамкнутом контуре U *Iт1Процесс управления в I ^^ незамкнутом контуре U *—М-7^Объект! • ►—М-7^Объект! • ►ГГП У Гпх1 ^Xod(k)VV*-^—10бъехт}*4: 'Автономно ।П У Гпх1 ^Xod(k)VV*-^—10бъехт}*4: 'Автономно ।(W.E)(W.E)а(к)а(к)ПомехиПомехиТТг)г)
Хо(к)
Хо(к)
Тпзц
Тпзц
Тпзц
Тпзц
Х(к)
Х(к)
Регулятор
Регулятор
Хг(к)
Хг(к)
I =п
I =п
X(t)
X(t)
Хо(к-1)
Хо(к-1)
f(K)
f(K)
2_ /
2_ /
1=1 Процесс управления в замкнутом контуре
1=1 Процесс управления в замкнутом контуре
Тпзц
Тпзц
Обработка изображения и выделение признаков
Обработка изображения и выделение признаков
а(к)
а(к)
Xo(t)
Xo(t)
Изображения I Тпзц
Изображения I Тпзц
Помели
Возмущения
Помели
Возмущения
(ХЕ)
(ХЕ)
а)
а)
Хо(к)
Хо(к)
Хо(к-1)
Хо(к-1)
f к)
f к)
а(к)
а(к)
г-1
г-1
Регулятор
Регулятор
WE- 6)
WE- 6)
xxoW
Объект I **
xxoW
Объект I **
Процесс управлениях |Л/^ в замкнутом контуре
Процесс управлениях |Л/^ в замкнутом контуре
Ту
Ту
Помехи
Помехи
Возмущения
Возмущения
ХО(к)
ХО(к)
xodw
xodw
Хо(к-п
Хо(к-п
Регулятор
Регулятор
Решение уравнений и^[ манипулятора *
Решение уравнений и^[ манипулятора *
ЦАПМ
ЦАПМ
\ Процессулрав-Х ^21 ления 6 мезамк- —*1нутом контуре р 1
\ Процессулрав-Х ^21 ления 6 мезамк- —*1нутом контуре р 1
ТсК^
Объекту-»*
ТсК^
Объекту-»*
f(k-1).
f(k-1).
бил
бил
аЦО
*—IV
аЦО
*—IV
1
1
Ту
Ту
г1
г1
WE) в)
WE) в)
Помехи
Возмущения
Помехи
Возмущения
f(k)
f(k)
fd(k)
fd(k)
f(k-l)
f(k-l)
Iт1
Процесс управления в I ^^ незамкнутом контуре U *
Iт1
Процесс управления в I ^^ незамкнутом контуре U *
—М-7^
Объект! • ►
—М-7^
Объект! • ►
Г
Г
П У Гпх1 ^Xod(k)
VV*-^—10бъехт}*4: '
Автономно ।
П У Гпх1 ^Xod(k)
VV*-^—10бъехт}*4: '
Автономно ।
(W.E)
(W.E)
а(к)
а(к)
Помехи
Помехи
Т
Т
г)
г)
Рис. 4. Схемы управления:
a — статистического по принципу "наблюдение — перемещение"; б — динамического по принципу "наблюдение — перемещение"; в — визуального с обратной связью по положению; г — визуального с обратной связью по образу
Хотя при проектировании подобных систем есть возможность предусмотреть некоторые компенсирующие воздействия, оптимизируя параметры системы вблизи некоторого исходного положения (задаваемого некоторым сочетанием средних значений параметров положения манипулятора), подобные решения приводят к оптимизации режима управления лишь в малой окрестности исходного положения, а при больших перемещениях параметры компенсирующих воздействий должны меняться.
На рис. 5 приведены результаты экспериментального исследования, в котором моделировалась работа системы визуального управления манипулятором с тремя степенями свободы X, Y 6, действующего с известным объектом. Объект представляет собой пирамиду, считанное изображение которой показано на рис. 5, д. В ходе эксперимента измерялись
значения трех признаков:
/i = Ci = центр тяжести грани 7,
f2 -Ах = абсолютное значение площади грани 7,
/з -Аг = отношение площадей граней 1^4.
Матрица влияния признаков для исходного положения 6 = 50° выглядит
следующим образом:
0,084 -0,00014 -0,0560,084 -0,00014 -0,0560,000051- 0,00024-0,00130,000051- 0,00024-0,00130,00015 - 0,0023-0,92 -0,00015 - 0,0023-0,92 -
0,084 -0,00014 -0,056
0,084 -0,00014 -0,056
0,000051- 0,00024
-0,0013
0,000051- 0,00024
-0,0013
0,00015 - 0,0023
-0,92 -
0,00015 - 0,0023
-0,92 -
Из G видно, что Л, центр тяжести, наиболее сильно зависит от значения х; /2, абсолютное значение площади, меняется вместе с глубиной у и углом 0, а /3, отношение площадей, зависит в первую очередь от угла 0.
Рис. 5:а — считанный образ пирамиды; б пропорциональное управление \Кр = — 240; t — время; d — глубина; кривая 7 — 0 = 50°, кривая 2 — 6 = 80°); в — моделирование манипулятора с тремя степенями свободы, адаптивное управление kt — время;d — глубина; кривая 1 — 6 = 50°, кривая 2 — 6 = 80°)Рис. 5:а — считанный образ пирамиды; б пропорциональное управление \Кр = — 240; t — время; d — глубина; кривая 7 — 0 = 50°, кривая 2 — 6 = 80°); в — моделирование манипулятора с тремя степенями свободы, адаптивное управление kt — время;d — глубина; кривая 1 — 6 = 50°, кривая 2 — 6 = 80°)
Рис. 5:
а — считанный образ пирамиды; б пропорциональное управление \Кр = — 240; t — время; d — глубина; кривая 7 — 0 = 50°, кривая 2 — 6 = 80°); в — моделирование манипулятора с тремя степенями свободы, адаптивное управление kt — время;
d — глубина; кривая 1 — 6 = 50°, кривая 2 — 6 = 80°)
Рис. 5:
а — считанный образ пирамиды; б пропорциональное управление \Кр = — 240; t — время; d — глубина; кривая 7 — 0 = 50°, кривая 2 — 6 = 80°); в — моделирование манипулятора с тремя степенями свободы, адаптивное управление kt — время;
d — глубина; кривая 1 — 6 = 50°, кривая 2 — 6 = 80°)
Реакция системы по координате у на единичное приращение значение признака /2 показана на рис. 5, б слошной линией. Привод описывало моделью линейного двигателя, а компенсирующие воздействия в процессе визуального управления были выбраны так, чтобы обеспечить быстрейшее затухание колебаний манипулятора в положении 0 = 50°. Если же начальное положение изменить, сделав 6 = 80°, реакция системы зрительного сервоуправления с теми же значениями компенсационных воздействий будет уже иной (штриховая линия на рис. 5, б). Матрица чувствительности в этом положении иная, и компенсация не обеспечивает желаемого значения затухания.
Один из подходов к решению проблем, вызываемых неопределенными или меняющимися параметрами системы — использование методов адаптивного управления, при котором параметры компенсирующих воздействий меняются в процессе работы. Исследовались обе стратегии адаптивного управления: как с использованием эталонной модели, так и с использованием самонастраивающегося регулятора [17, 18, 19J. Хотя формальные данные об устойчивости и быстродействии получены только для линейных систем с неизвестными параметрами, адаптивные устройства управления используются и в нелинейных системах с меняющимися во времени параметрами. Главное преимущество адаптивного управления в контексте рассматриваемых вопросов заключается в том, что оно расширяет диапазон режимов работы, при которых стратегия управления обеспечивает приемлемое быстродействие. Для выбора наиболее подходящего метода решения задачи визуального управления был исследован ряд методик адаптивного управления. В выше описанном эксперименте использовалась одна из конструкций самонастраивающегося регулятора, описанная в [9]. Полученные результаты представлены на рис. 5, в. Пропорциональные компенсирующие воздействия изменялись с помощью самонастраивающегося регулятора таким образом, чтобы удержать динамическое быстродействие системы вблизи от начальных значений, несмотря на изменение матрицы коэффициентов передачи системы при смене исходного положения.
Поскольку адаптивное устройство управления компенсирует изменение коэффициентов передачи, связывая его со значением признаков или положением звеньев манипулятора, оно функционирует удовлетво рительно только в областях монотонности соответствующих зависимое тей. Для решения задачи определения знака управляющего воздействия выбора и обеспечения независимости признаков необходимо ввести специальный режим управления, при котором производится подстройка структуры регулятора и его параметров. В наших экспериментах при определении знака управляющего воздействия в качестве карты монотонности зависимости коэффициентов передачи от значений признаков использовалась матрица D. В дополнение к этому для выбора признаков, используемых в процессе управления, в каждый из моментов времени применялся механизм логической иерархии управления. Переключаю щая матрица S состоит из элементов Ь^ принимающих значение 0 или 1. Таким образом,
ПО
T = Sf(11)
- редуцированная матрица признаков. Тогда редуцированная матрица влияния признаков
G' = SG(12)
используется для выбора признаков с желаемыми элементами и ликвидации взаимного влияния значений признаков, Ь^ — логические переменные, значение которых определяется набором синтаксических правил:
<xi=bi,bj,bk,(13)
где 04 — логическое выражение, построенное по результатам проверок текущего значения быстродействия. В наших опытах основным соображением при составлении набора правил 04 было устранение неоднозначности назначения признаков. Моделирование манипуляторов с тремя и пятью степенями свободы показало, что использование логической иерархии управления для случая произвольных движений оказывается слишком сложным. Стабильность характеристик системы достигается в ограниченном диапазоне перемещений. В настоящее время продолжаются исследования, цель которых — обобщить принципы построения иерархических правил.
Заключение. Визуальные системы управления роботами обеспечивают обратную связь по относительному положению рабочего органа робота. Они используют механизм интерактивного позиционирования, базирующегося на формировании и обработке визуальной информации об окружающей среде. Если статические системы, работающие по принципу ’’наблюдение — перемещение”, могли быть реализованы с использованием протоколов связи между существовавшими системами, то при проектировании интегрированных сенсорных робототехнических систем, как использующих динамический принцип ’’наблюдение — перемещение”, так и построенных по схеме визуального слежения, возникли серьезные трудности. В настоящей работе мы рассмотрели проблемы проектирования, вызванные нелинейными преобразованиями и искажениями в линиях связи, используя различные способы их представления. В настоящее время разработывается методика проектирования систем, использующая адаптивное управление, определение знака управляющего воздействия и логическую иерархию управления. Успешное развитие этой разработки может дать полезное средство управления манипулятором, при перемещении которого неизбежно появляются нелинейности и искажения.
Работа финарсировалась частично Национальным научным фондом по заказу EDC-792383, частично — по заказу фирмы ’’Вестингауз Электрик” (Westinghouse Electric).
СПИСОК ЛИТЕРАТУРЫ- ■„
D. Nitzan and С. Rosen, et. al. ‘Machine Intelligence Research Applied to Industrial Automation*. Tech, report 9, SRI International (August 1979).
G. Agin, ‘Real Time Control of a Mobile Robot with a Camera’. Tech, note 179, SRI Internationa (February 1979).
G. Vanderbrug, et. al. ‘A Vision System for Real Time Control of Robots’, Proc. 9th Ini. Symp. l Industrial Robots. Washington, DC. USA, pp. 213-231, Society of Manufacturing Enginee (March 1979).
S. Kashioka, et. al. ‘An Approach to the Integrated Intelligent Robot with Multiple Sensoi Feedback: Visual Recognition Techniques’, Proc. 7th Int. Symp. on Industrial Robots, Tokyi Japan, pp. 531-538, Japan Industrial Robot Association (October 1977).
K. Tani. et. al. 'High Precision Manipulator with Visual Sense’, Proc. 7th Int. Symp. on Industry Robots, Tokyo, Japan, pp. 561-568, Japan Industrial Robot Association (October 1977).
M. R. Ward, et al. ‘Consight: A Practical Vision-Based Robot Guidance System’, Proc. 9th In Symp. on Industrial Robots, Washington, DC, USA, pp. 195-211, Society of Manufacturir Engineers (March 1979).
J. Birk, et. al. ‘General Methods to Enable Robots with Vision to Acquire, Orient, and Transpo Workpieces". Tech, report 5, University of Rhode Island (August 1979).
R. Abraham, ‘APAS: Adaptable Programmable Assembly System’. Computer Vision and Sensi Based Robots,G. Dodd and G. Rossol.eds., Plenum, pp. 117-140(1979).*
A. C. Sanderson and L. E. Weiss, 'Image-Based Visual Servo Control Using Relational Graph Errc Signals'. Proc, of the Int. Conf, on Cybernetics and Society. Cambridge, MA, IEEE SMC, p, 1074-1077 (October 1980).
H. P. Moravec, ‘Obstacle Avoidance and Navigation in the Real World by a Seeing Eye Robe Rover’. Tech, report 3. Carnegie-Mellon Univ., The Robotics Institute (September 1980).
R. P. Paul, Robot Manipulators: Mathematics. Programming, and Control, MIT Press (1981).
J. S. Albus, 'A New Approach to Manipulator Controls: The Cerebellar Model Articulatio Controller(CMAC)’, Trans. ASME Journal of Dynamic Systems, Measurement and Control', pf 220-227 (September 1975).
A. K. Bejczy, ‘Robot Arm Dynamics and Control'. NASA-JPL Technical Memorandum, 33-66- (February 1974).
В. К. P Hom and M. H. Raibert, 'Manipulator control using the configuration space method’, Th Industrial Robot, Vol. 5, No. 2, pp. 69-73 (June 1978).
J. Luh, M. Walker and R. Paul, ‘Resolved Acceleration Control ofMechanical Manipulation IEEE Trans, on Automatic Control, AC-25,3, pp. 468-474 (June 1980).
D. E. Orin. R. B. McGhee, M. Vukobratovic, et. al. ‘Kinematic and Kinetic Analysis c Open-Chain Linkages Utilising Newton-Euler Methods’. Math. Biosc. 43, pp. 107-130(1979).
Y. D. Landau, Adaptive Control- The Model Reference Approach. Marcel Decker(l979).
K. S: Norendra.ed.. Applications of Adaptive Control, Academic Press (1980).
K. S. Norendra, ed.. Proc. Workshop on Applications of Adaptive Systems Theory Yale Universit- (May 1981).
ИСПОЛЬЗОВАНИЕ ТЕЛЕВИЗИОННОЙ СИСТЕМЫ
В ЗАМКНУТОЙ СИСТЕМЕ
'ПОЗИЦИОННОГО УПРАВЛЕНИЯ МЕХАНИЗМАМИ
П.И. К у л о н, М. Н о г а р э,
Гренобльская лаборатория автоматики,фирма ЭНСИЕГ (E.N.S.I.E.G), Франция
В настоящее время машинное зрение применяется в промышленной робототехнике и автоматизированном производстве в основном для технического контроля и распознавания формы объекта. Имеются публикации по его применению для траектографии — измерения траекторий движущихся объектов. Работы, посвященные использованию телевизионных систем в качестве датчиков положения в системах позиционного управления механизмами, сравнительно малочисленны. В настоящей статье описывается подход к решению задач, связанных именно с таким
использованием телевизионных систем. Изучены результаты статических измерений, полученные на экспериментальной аппаратуре, и на их основе сделаны выводы о необходимости автоматической калибровки аппаратуры. На основе изучения полученных при экспериментах значений динамических характеристик построена модель системы управления. В статье анализируется и описывается использование телевизионной измерительной системы в замкнутом контуре позиционного управления.
Введение. Использование телекамер для решения задач технического контроля и робототехники быстро растет. Приходится отметить, что хотя количество работ, посвященных проблемам анализа изображений неподвижных объектов, велико, результатов решения аналогичных задач для движущихся объектов пока получено немного [1,2]. В практических приложениях такая задача возникает в трех модификациях. Первая из них — аналого-цифровое преобразование при траектографии (например, фиксирование траектории движения амебы в поле зрения микроскопа и ее анализ). Вторая — обнаружение и контроль объектов, движущихся на ленте транспортера. Третья модификация представляет собой объединение двух первых — использование телекамеры в качестве датчика положения в динамической замкнутой системе позиционного управления сервомеханизмом, приводящим манипулятор робота в заданное положение.
Поскольку измерения должны выполняться в процессе движения манипулятора к конечному положению, следует при их выполнении принимать в расчет скорость этого движения. Особенно важны два аспекта оказываемого этим движением влияния: снижение точности (скоростная ошибка слежения) и устойчивости замкнутой системы позиционного управления.
В лаборатории автоматикии г. Гренобля была спроектированна и построена система машинного зрения [3], предназначенная для измерений, связанных с техническим контролем деталей, и использования в кинематографии. Система оснащена двумя черно-белыми и одной цветной телевизионными камерами и имеет в своем составе мини-ЭВМ LSI-11 фирмы ’’Диджитал Экуипмент” (Digital Equipment). Она связана с ЭВМ фирмы ’’Норск-Дэйта” (Norsk-Data) и имеет интерфейсы к микропроцессорам специальной аппаратуры (сервомеханизмы с электромоторами постоянного тока и шаговыми двигателями).
Была выполнена серия экспериментов по определению точности телевизионных систем при решении измерительных задач и задач контроля как подвижных, так и неподвижных объектов [4]. Они проводились с использованием координатных столов, приводимых шаговыми двигателями. Поскольку быстродействие шаговых двигателей мало, для работы с движущимися объектами был сконструирован описанный ниже управляемый ленточный конвейер и разработано программное обеспечение для распознавания и контроля объектов [5, 6]. В настоящей работе мы ограничимся описанием использования телекамеры в качестве датчика погрешности положения манипулятора в замкнутой системе управления Механизмами. <- . ■ .
Обычно при использовании сенсоров в цепи обратной связи решающую роль в обеспечении устойчивости системы играют два момента: статическая точность (линейность) и динамические характеристики.
Описание системы. Была сконструирована система обнаружения движущегося объекта и определения параметров его положения, представленных в аналоговой и цифровой форме. Аналоговый сигнал очень удобен для записи и использования в качестве управляющего сигнала, подаваемого на сервомеханизм. При калибровании системы использовались прецизионные координатные столы с приводами типа х-уих-у— 0. Для исследования явлений, происходящих при движении объекта, было сконструировано специальное устройство, перемещающее в поле зрения телекамеры контрастный объект с постоянной скоростью. Ниже приводится полное описание системы.
Система определения параметров положения [7]. Система, определяющая параметры положения объекта, построена на базе телекамеры фирмы ’’Грюндиг” (Grundig) с трубкой ’’Резистрон ИНД 2225”. Система использует простой принцип обнаружения: объект полагается контрастно выделяющимся на фоне и для определения его границ используется пороговое устройство.
При начале периода развертки каждой из строк телевизионного растра счетчик СХ устанавливается на 0. На его вход подается сигнал от генератора временных импульсов, имеющий частоту 4 Мгц, импульсы которого суммируются до момента поступления сигнала с порогового устройства. При появлении этого сигнала счет прекращается. Таким образом в счетчике СХ оказывается записанным значение, определяющее положение левой границы объекта по отношению к произвольной вертикали, принятой за ось У.
В момент остановки счетчика СХ запускается второй счетчик CD. Теперь на его вход подается сигнал частотой 4 Мгц. Счет прекращается при появлении сигнала с порогового устройства, который приходит в момент обнаружения правой границы объекта. Таким образом, в течение одного периода телевизионной развертки (64 мс) получаем положение левой стороны объекта (отсчет СХ) и его ширины (отсчет CD) для текущей строки растра.
Третий счетчик, синхронизируемый сигналом кадровой развертки, сбрасывается на ноль в начале развертки каждого кадра, что соответствует верхнему левому углу образа. Этот счетчик, СУ, подсчитывает строки и используется для определения номеров тех из них, в которых появляется объект. Этот номер определяет координату У верхней границы объекта. Номер строки, в которой объект исчезает, определяет координату У нижней стороны объекта.
Полный телевизионный образ состоит из двух полукадров, строки которых чередуются. Полукадры состоят из 312 и 313 строк /что приводит каждые 20 мс к формированию матрицы размером 312X2. Каждая из строк этой матрицы соответствует строке телевизионного растра. Первый столбец этой матрицы образуют отсчеты СХ. Элементы этого столбца, соответствующие строкам, в которых объект не был обнару-
жен, равны нулю. В остальных элементах записаны координаты левой границы объекта. Во втором столбце записаны значения ширины объекта, подсчитанные счетчиком CD (в порядке следования строк в растре).
Использование соответствующих схем временной логики позволяет выделить в телевизионном растре окно. Это позволяет сосредоточить внимание на любой интересующей нас области изображения. В этой области будет выполняться поиск объекта. Определение ее границ может выполняться с использованием любой априорной информации о положении объекта.
Матрица размером 312X2, содержащая выше описанные отсчеты, хранится в памяти микропроцессора 8080, который служит буферным устройством мини-ЭВМ LSI-П. Кроме этой функции, микропроцессор 8080 выполняет вычисления координат центра тяжести и площади объекта. С помощью двух цифроаналоговых преобразователей формируются аналоговые значения координат, которые можно использовать для записи или в качестве сигнала управления.
При использовании частоты сигнала, подаваемого на входы счетчиков, 4 Мгц значения X и D формируются в виде 8-разрядных двоичных слов, потому что каждая строка телевизионного растра длительностью 64 мкс делится на 256 временных интервалов длиной 0,25 мкс. Значение У формируется с большой точностью, т.к. каждый полукадр состоит из 312 строк, и для его кодирования используется 9 двоичных разрядов.
На рис. 1 представлена блок-схема аппаратуры, а рис. 2 поясняет процесс анализа образа для z-й строки растра, выполняемого, начиная с левой границы анализирующего окна. Счетки СХ накапливает значение Хь а счетчик CD накапливает значение ширины Dp
Механическое устройство. Для изучения влияния скорости движуще-
Интерфейс
Рис. 1. Блок-схема измерительной системы
ВыбеленноеВыбеленноеРис. 3, Ленточный транспортер с регулируемой скоростью движенияРис. 3, Ленточный транспортер с регулируемой скоростью движенияРис. 2. Сегментация образаРис. 2. Сегментация образа
Выбеленное
Выбеленное
Рис. 3, Ленточный транспортер с регулируемой скоростью движения
Рис. 3, Ленточный транспортер с регулируемой скоростью движения
Рис. 2. Сегментация образа
Рис. 2. Сегментация образа
гося объекта на точность выполняемых измерений было разработано механическое устройство, показанное на рис. 3.
Двигатель постоянного тока перемещает белую ленту транспортера с укрепленной на ней черной полоской — объектом. Скорость перемещения может регулироваться.
Камера находится на расстоянии 2 м от ленты транспортера. Ширина ленты равна 5 см, а ее длина 1.5 м. Зачерненный’’объект” может иметь форму прямоугольников различных размеров (от 10 до 100 мм) .
Скорость можно менять от 0 до 5 м/с, также можно изменять направление движения. Это же .устройство может использоваться для изучения замкнутой системы управления положением зачерненного объекта, расположенного на ленте, в которой телевизионная система выступает в роли датчика положения.
Статический анализ.
Отображение предметного поля на электронную картинную плоскость. В простейшем случае распознаваемый объект лежит на плоскости. Эту предметную плоскость будем далее обозначать ПП. Оптика системы технического зрения (зеркала, диафрагма, линзы) формирует плоскость, в которой находится изображение объекта (в смысле аппроксимации по Гауссу). Эту плоскость изображения будем обозначать ПИ. Фоточувстви- тельное электронное устройство, воспринимающее световой поток, сформированный оптикой системы, расположено в плоскости, которую мы будем обозначать ПЗУ (плоскость электронного устройства). ПЭУ - это плоскость, в которой с помощью матрицы фотодетекторов или путем сканирования электронным лучом мишени передающей трубки считывается информация, заключающаяся в изображении.
Для объяснения различных эффектов, касающихся рассматриваемых вопросов, все три плоскости приходится рассматривать отдельно.
Если ПП перпендикулярна оптической оси, то ПО также перпендикулярна ей. В хорошо отъюстированной оптической системе ПЭУ тоже перпендикулярна оптической оси. ПЭУ и ПИ можно совместить, фокусируя оптическую часть системы. На практике описанная схема не может быть реализована абсолютно точно, что приводит к возникновению различного рода погрешностей.
Можно предположить, что существует отображение (в математическом смысле слова), переводящее ПП в ПЭУ. Строго говоря, вид этого
отображения следует знать для того, чтобы по параметрам положения объекта, вычисленным на основе анализа сигналов, полученных с ПЭУ, делать выводы о действительном положении этого объекта. В настоящее время выделены два класса приложений, предъявляющих различные требования к системам анализа изображений: траектография (или измерение параметров положения движущегося объекта) и измерение отклонения от заданного положения (для использования в управлении).
Траектография. При решении задачи слежения за траекторией движения объекта его положение должно измеряться в координатной системе, связанной с ПП. Если диапазон перемещений объекта невелик, можно воспользоваться неподвижной камерой с нерегулируемым объективом. Если это не так, положение камеры и фокусное расстояние должны изменяться.
Случай ограниченных перемещений показан на рис. 4. Объект перемещается вдоль линии "Г, которой на ПЭУ соответствует линия Ч”.
Пусть Z (X Е) — координаты объекта в ПЭУ, соответствующие положению объекта г (х, v). Все части системы (механическая, оптическая, электронная, кодирующая) участвуют в отображении
Z = / [z],
В идеальном варианте это отображение представляет собой пропорциональную связь з и Z, т.е. сетка линий в ПП соответствует сетке (уменьшенного размера) в ПЭУ.
К сожалению, на практике такой ситуации достигнуть невозможно. Обычно отображение имеет бочковидную форму, что схематически показано на рис. 4.
Отвлекаясь от качества телевизионного изображения, можно считать, что на отображение влияют следующие явления.
Эффект параллакса (в случае неперпендикулярности предметной плоскости оптической оси, особенно когда оптическая ось не проходит через объект).
Геометрическая аберрация. Она увеличивается по мере удаления объекта от оптической оси.
Рис. 4. Отображение ПП—ПЭУ
Эффект нарушения фокусировки: точечному объекту соответствует образ с ненулевым значением площади.
Эффект глубины поля. Имеет место при рассмотрении трехмерны? объектов.
Влияние кодирования и изменения во времени электрических пара метров схемы. Имеются в виду погрешности квантования аналоговой величины и ’’уход” электрических параметров кодирующей системы (например, вследствие нагрева).
Хотя влияние всех этих эффектов можно уменьшить, принимая специальные меры при проектировании системы, полностью избавиться от них невозможно. Вследствие этого простым и эффективным способом решения задачи является использование автоматически подстраивающейся системы.
Отображение Z = f (2) может быть ’’запомнено". Например, используя механизм микроперемещений по осям х и у, изображение объекта можш заставить описывать линии ”v” и ”/z” (см. рис. 4). При этом можно выполнять табулирование соответствующих кривых ”V” и ”Н”. Любая точка Z определяется в криволинейной системе координат (описывающей форму отображения). В простейшем случае можно воспользоваться опорными точками, например a, b, с. d, вычисляя и записывая в память их местоположение в ПЗУ (Л, S, С У).
Для компенсации изменения электрических параметров системы i малых отклонений положения отдельных элементов системы (перекос предметной плоскости, отклонение положения камеры от номинальной: и т.д.) процедура автоматического калибрования должна выполняться регулярно или в моменты предположительного изменения условий ра боты. Более того, опорные точки могут использоваться при фокусиров
ке системы.
Описанный подход был использован при измерении профиля резьбь на винтах [6] и траектографии водных микроорганизмов (коловраток), размеры которых не превышают 0,1 мм [8].
Измерение отклонения от заданного положения. Обычно отклонение объекта от заданного положения приходится измерять тогда, когда манипулятор, несущий на себе схват, должен перемещаться в точку захвата
детали (рис. 5). Если предположить,детали (рис. 5). Если предположить,что делать и схват находятся в однои плоскости (предметной), система должна, анализируя изображение, определять не абсолютные значения их координат, а разницу положений схвата и детали.
детали (рис. 5). Если предположить,
детали (рис. 5). Если предположить,
Более того, информация об отклонении от заданного положения может иметь не очень большую точность, поскольку сходи-
Рис. 5. Схема измерения отклонения объекта от заданного положения
мость алгоритма сведения отклонения к нулю, управляющего движением руки робота, мало зависит от нее.
Следует отметить, что если при траектографии необходимо точное отображение ПП на ПЗУ, то для целей позиционного управления схватом робота требования существенно ослабляются.
Поскольку системы с измерением отклонений и сведением их к нулю хорошо изучены теорией сервомеханизмов, легко показать их преимущества на примере рассмотрения двух присущих им свойств.
Пусть Zo = / (z0) _ отображение положения детали, a Za = f (za) — отображение положения схвата. Тогда выходной информацией датчика отклонения от заданного положения будет D, причем
D=Z0-Za = f ^0)-/(za).
Если на процесс отображения (т.е. на работу системы анализа изображений) влияют некоторые дополнительные возмущения, они одинаково воздействуют как на /(z0), так и на f^z^, в силу чего разность D остается неизменной, в отличие от случая измерения абсолютных значений координат.
Теперь предположим, что на отображение влияет некоторое возмущение (измерение коэффициента передачи, сбой фокусировки и т.д.), затрагивающее все поле зрения анализатора. Тогда f (z) -* G (т) / (z), а сигнал отклонения выражается как
DM =G(7)/(z0)-G(T)/(zc) = G(r)|/(z0)-/(za)]. (1)
Уравнение (1) показывает, что если меняется коэффициент передачи системы, это может привести к изменению скорости сходимости алгоритма сведения отклонения к нулю, но и модифицированный сигнал отклонения равен нулю только тогда, когда z0 = zQ, что обеспечивает сходимость алгоритма, а следовательно, и совмещение схвата и детали.
Эти два основных свойства (отсутствие реакции на аддитивное и мультипликативное возмущения) весьма ценны при использовании анализатора изображений в системе управления.
Динамический анализ
Результаты экспериментов
Измерение ширины объекта. Записывались измеренные с помощью телевизионной системы значения ширины прямоугольных черных объектов различных размеров, перемещаемых лентой транспортера. При выполнении этих опытов объект двигался параллельно направлению развертки телевизионного растра. На рис. 6 показана функциональная зависимость измеренных размеров объекта от скорости его перемещения. Результаты наблюдений показывают, что кажущееся сокращение ширины объекта, возникающее при увеличении скорости, почти линейно зависит от ее величины. Этот эффект симметричен и не зависит от того, совпадает направление перемещения объекта с направлением развертки или они противоположны.
Измерение параметров положения объекта. Отмечено, что при измерении параметров положения движущегося объек-
Рис. 6. Зависимость измеренных размеро объекта от скорости его перемещена знак + — результаты эксперимента; 1 — w линейная модель; 2 — аппроксимация нет нейной модели при малой скорости
та всегда имеется ’’отставание” и меренных значений от истинных; увеличением скорости перемещени эта погрешность возрастает. Есл измеряется только значение коорш наты одной из сторон движущегос прямоугольного объекта, график з; висимости погрешности от скорост
движения несимметричен относительно нуля: значения погрешност зависят от направления движения по отношению к направлению ра вертки.
При синусоидальном законе движения объекта вдоль оси эта неси?, метричность приводит к существенным искажениям. Для изучения реакции телевизионной измерительной системы на гармонические воздействия была построена специальная установка, перемещавшая объект в поле зрения камеры по синусоидальному закону. Полученные с ее помощью результаты подробно описаны в [7].
Математическая модель. Все операции, выполняемые при измерения? были тщательно проанализированы. Вначале был выполнен анализ анал< говой формы видеосигнала. Видеосигнал, соответствующий неподвю ному объекту, представляет собой меандр с крутыми фронтами импул сов. Импульсы находятся в строго фиксированных положениях. Пр движении объекта форма меандра искажается: импульсы деформируют^ и растягиваются в длину. По фотографиям осциллограмм видеосигнале удалось построить математическую модель измерительной системы. Р, зультаты расчетов по этой модели хорошо совпадают с результатами и мерений. Ниже описываются некоторые аспекты математической модел;
Запоминающий эффект телевизионной тру б к i Фоточувствительную мишень передающей ТВ трубки типа видикон можн считать состоящей из отдельных независимых резисторно-емкостных эл ментов. Каждый из них получает от заряжающего электронного лу определенный электрический заряд, часть которого теряет при освёш нии. При попадании на каждый элемент считывающего электронного лу ток его будет пропорционален количеству светового излучения, попа: шего на этот элемент. В измерительной системе ток луча усиливается подается на пороговое устройство.
Резистивно-емкостный характер фоточувствительного материала mi шени приводит к возникновению переходных процессов, которые можн описать зависимостью доли остаточного заряда от числа считанных пол; кадров. График этой зависимости приводится в технической докуме! тации передающей телевизионной трубки и, как правило, может быт ’ аппроксимирован затухающей с постоянной времени т экспонентою
Видеосигнал, соответствующий движущемуся объекту. Обозначим Е (х, f) распределение освещенности, соответствующее одномерному объекту, движущемуся вдоль оси х; U (х, t) - электрический заряд фоточувствительной ячейки с координатой х в момент t; I (х, t) - видеосигнал от этой ячейки в момент t. Тогда
Цх, г) =/0 + aU<x,tV и U = ЬЕ
Uo — т.н. "темновой ток”; у — постоянная, зависящая от типа трубки; а и Ь — коэффициенты усиления).
Вследствие наличия переходного процесса в фоточувствительном слое видикона (постоянная времени т) получаем
d
U(x, t)+ т — U (х, t) = bE(x. t)..(2)
dt
В случае движущегося объекта распределение освещенности Е (х, г) перемещается вдоль оси х со скоростью v (при постоянных условиях освещения). Отсюда
Е (х, г) = / (х - v г), где f (х) — распределение освещенности, соответствующее неподвижному объекту. Пусть F (р) — соответствующее этому распределению преобразование Лапласа.
Используем обычную методику Лапласа для решения уравнения (2) при начальном распределении U (х, 0) = 0.
Тогда для U (х, г) распределения, перемещающегося вдоль оси х со скоростью v, получаем
U (х. t)=g (t - x/v), где'
g^ = L"x [F(-p/v)/(v(l + тр))].(3)
Прямоугольные объекты. Для прямоугольного объекта распределение освещенности фоточувствительного материала видикона представляет собой импульс прямоугольной формы, ширина которого пропорциональна ширине объекта. Коэффициент пропорциональности определяется фокусным расстоянием оптической системы. Этот импульс перемещается со скоростью v. Функция g (?), задаваемая уравнением (3), представляет собой реакцию системы на импульс воздействия с учетом задержки. График этой функции представлен на рис. 7.
Если применить к g (г) операцию порогового ограничения, то для сигнала от неподвижного объекта пороговое устройство срабатывает в точках А и 5, а для деформированного сигнала от движущегося объекта — в точках А и В'. Предполагая, что уровень срабатывания порогового устройства равен половине амплитуды видеосигнала от неподвижного объекта, можно определить dx и d^ (см. рис. 7). Видимое сокращение ширины движущегося объекта определяется разностью dx - d-^. Видимый центр тяжести ’’отстает” от истинного на величину (d, + d^jl.
Рис. 7. Деформация перемещающего-ся импульса:
D — ширина импульса; 1 — перемещающийся импульс; 2 — максимальное значение видеосигнала; 3 — уровень срабатывания порогового устройства; 4 — неподвижный импульс;
5 — минимальное значение видеосиг-нала
Следует отметить, что в ранних опытах параметры положения объекта определялись только одной из сторон объекта. Вследствие этого имели место зависимые от направления движения погрешности. Эта зависимость объясняется разными значениями величин dx и di при движении объекта в разные стороны. В зависимости от направления движения объекта система срабатывала в точках А* или К При использовании для определения параметров положения объекта его центра тяжести (вместо стороны) погрешность не зависит от направления движения.
Телевизионная система в структуре управления. Из сказанного выше можно сделать вывод, важный при использовании телекамеры в качестве датчика системы управления: при малых скоростях движения объекта инерционностью передающей телевизонной трубки типа видикон можно пренебречь. Значение скорости, при которой это можно сделать, определяется из уравнений (2) и (3). Если скорость движения объекта не превосходит вычисленного значения, а манипулятор движется в плоскости объекта, то должна быть выполнена предварительная калибровка системы. При использовании алгоритма сведения отклонения к нулю такая калибровка необязательна.
При использовании совместно с телевизионной системой быстродействующих сервомеханизмов следует принимать специальные меры, повышающие надежность работы, поскольку если размеры объекта невелики, а скорость его движения высока, пороговое устройство может вообще не срабатывать (см. рис. 7). На манипуляторе робота следует размещать контрастную круглую или прямоугольную мишень, так как степень деформации видеосигнала зависит не только от характеристик телевизионной трубки, но и от формы объекта.
Экспериментальные исследования показали, что при условии эксплуатации телевизионной трубки в диапазоне линейности можно использовать для определения параметров положения объекта формулы, определяющие dx Hd2.
При измерении параметров положения можно предположить, что скоростная погрешность пропорциональна скорости v. Тогда оказывается, что введение в расчетную формулу простой задержки
TR -(dx^d2)i2v
Информация МикропроцессорИнформация МикропроцессорРис. 8 Блок-схема использования телевизионной системы для управления положением объектаРис. 8 Блок-схема использования телевизионной системы для управления положением объектаРис. 9. Реакция на ступенчатое изменениеположения
Информация Микропроцессор
Информация Микропроцессор
Рис. 8 Блок-схема использования телевизионной системы для управления положением объекта
Рис. 8 Блок-схема использования телевизионной системы для управления положением объекта
В/смВ/см0,2 с/см0,2 с/смдает значения, мало отличающиеся от рассчитанных по описанной выше математической модели.
В/см
В/см
0,2 с/см
0,2 с/см
Практический пример. В одном из экспериментов телевизионная камера использовалась для управления механизмом графопостроителя. Механизм имел одну степень свободы — перемещение вдоль оси X и в ходе эксперимента переводился в различные точки, лежащие на этой оси.
В эксперименте использовался механизм перемещения траверсы графопостроителя по оси X, представляющий собой систему с нелинейностью второго порядка. Коэффициент затухания колебаний 0,6, резонансная частота 12,5 рад/с. С помощью телевизионной камеры и микропроцессора, выдающего команды перемещения траверсы, был организован второй замкнутый цикл управления механизмом, который определял положение пишущей головки графопостроителя на траверсе У. Камера моделировалась введением задержки TR. Кроме того, использовалось управляющее устройство, синтезированное по 5-преобразованию функции передачи телевизионной системы. На рис. 8 показана блок-схема эксперимента, а на рис. 9 — график реакции замкнутой телевизионной системы управления на единичное ступенчатое воздействие. Результаты эксперимента подтверждают важность учета динамических характеристик телевизионного датчика при его использовании в системе позиционного управления с замкнутым контуром.
Исследование выполнялось по заказу ЦНРС (проект АРА). Авторы благодарят эту организацию за оказанную поддержку.
СПИСОК ЛИТЕРА ТУРЫ
И] A.Gilbert,et. al. ‘A real time video tracking system’, IEEE Trans, Vol. PAMI. No. 1 (January 1980).
G. Hirzinger, et al. ’Automated TV tracking of moving objects’. IEEE 5th Conf, on Pattern RecoRniUon.NVxamx (1980).
J. P. Charras, ‘Systeme interactifd'acquisition d’images*. These D.L, I.N.P.G. (July 1980).
T. Redarce, ‘Etude et realisation d’une station automatique d'orientation', D.E.A.. I.N.P.G. (July 1980).
S.OlympiefT,'Reconnaissance de formes par camera TV', D.E.A., l.N.P.G.'(July 1980).
P. Horaud, 'Automatic inspection and orientation of external screws' IEEE 5th Conf, on Pattern Recognition. Miami (1980).
Y Tahon. 'Localisation et mesuresdynamiques par Vidicon", These D.I.. I.N.P.G. (May 1979).
P. Y. Coulon. 'Trajectographieautomatiquede Roti feres'. Rapport interne L A.G.(July 1981). .
ГИБКАЯ CT3
О.Д. Фо ж ep а, Ф. Ж ep м e н, Г. К p из e, Ж.Д. Буасонна,M. Г е р б е р, Ж. П о н с, Э. П о ш о н, Н. А й я ш
Фирма "И НРИА", Вулси-Рокенкур, Франция
В статье описывается СТЗ, предназначенная для построения точных трехмерных моделей промышленных деталей. Система может использоваться для технического контроля размеров деталей, заполнения баз данных и автоматического распознавания объектов. В составе системы входят лазерный дальномер, определяющий методом активной стереоскопии параметры положения точек, лежащих на поверхности детали, предметный столик, на котором размещаются осматриваемые детали, поворачивающийся и меняющий высоту по камандам, получаемым от ЭВМ, и набор программ, реализующих алгоритмы, которые по результатам измерений строят модели деталей. Процесс распознавания и построения моделей показан на примерах нескольких объектов. Приводятся графические изображения полученных моделей.
Введение. В связи с необходимостью автоматизации выполнения сборочных операций особую актуальность приобретает задача построения эффективных высокоточных математических моделей, пригодных для работы совместно с алгоритмами распознавания трехмерных объектов. Один из путей решения этой задачи — использование надежной быстродействующей дальномерной аппаратуры.
В статье описаны исследования в области сбора информации, рас познавания и моделирования трехмерных объектов, выполненные сот рудниками фирмы ИНРИА (INRIA). В ходе этих исследований была разработана система технического зрения с управляемыми от ЭВМ лазер ным дальномером и подвижным предметным столиком. Исследовались различные методы автоматического построения геометрических моделей по данным измерений расстояний до поверхности объекта. Полученные модели предполагается использовать для формирования базы данных системы автоматического распознавания объектов. Ниже будет показано, каким образом такая модель может использоваться для распознавания промышленной детали, рассматриваемой с произвольного направления
Система сбора данных. В состав системы сбора данных [1] входят лазерный дальномер, несколько телевизионных камер, предметный столик с программным управлением и микропроцессорная ЭВМ.
Принцип работы системы. Использованный в системе сенсор представляет координату z точки, принадлежащей поверхности объекта, как
телевизионных камер. Активностьтелевизионных камер. АктивностьРис. 1. Схема работы фотоэлектронного анализатора
телевизионных камер. Активность
телевизионных камер. Активность
функцию ее координаты х (рис. 1). В системе используется метод активной стереоскопии. Стереоскопичность достигается использованием нескольких (по крайней мере двух)
метода заключается в усиленном освещении рассматриваемой точки поверхности, что позволяет не решать сложную задачу установления соответствия двух изображений, неизменно возникающую при пассивной схеме стереоскопического зрения.
Повышенный уровень освещенности обеспечивается лучом лазера. Луч лазера может перемещаться по поверхности детали вдоль горизонтальной оси х. Поскольку управление отклоняющей луч лазера зеркальной системой выполняется ЭВМ, луч в любое время может быть направлен в нужную точку детали. На поверхности детали луч образует пятно небольшого диаметра, которое рассматривается системой как вторичный (рассеивающий) источник света. Изображение освещенного пятна преобразуется телекамерами в пару бинарных образов. Зная геометрические характеристики камер, по этим образам можно вычислить координаты х и г освещенной точки.
Столик, на котором установлен рассматриваемый объект, оснащен шаговыми электродвигателями, перемещающими его по вертикали (вдоль оси г) и поворачивающими в горизонтальной плоскости (вокруг оси г). Максимальные габаритные размеры объектов, с которыми может работать система, составляют 750X750X600 мм. Вращение столика позволяет получать дополнительную информацию о форме детали, выполняя сканирование детали лучом лазера. Такой метод позволяет выполнять анализ объектов сложной (вогнутой) формы с высокой точностью.
Реализация системы. Несмотря на крайнюю простоту описанного принципа действия, реализация системы требует решения сложных инженерных вопросов координации работы трех подсистем: телевизионной, лазерной и вычислительной.
Оптическая система лазера выполняет две функции. Во-первых, она организует сканирование детали лучом вдоль оси х. Это может быть выполнено с помощью оптоэлектронного устройства, но использование зеркального гальванометрического дефлектора более удобно. Рамка гальванометра и зеркало — единственные подвижные части лазерной подсистемы. Во-вторых, она фокусирует луч лазера. Оптика системы обеспечивает фокусирование луча до минимально возможного диаметра и стабильность этой фокусировки. Тип лазера выбирается из соображений минимального диаметра луча и его стабильности.
Обе камеры телевизионной системы соединены с микропроцессором, предназначенным для запоминания номеров освещенных фотодетекторов матриц и определения по методу интерполяции координат светового
пятна с точностью до 1/8 расстояния между центрами фотодетекторов. Действием дефлектора и системы в целом управляет другой микропроцессор. Он же по данным измерений расстояния выполняет триангуляцию объекта.
Таким образом, анализатор системы относительно автономен. Его связь с ЭВМ организуется через второй микропроцессор, причем интенсивность обменов и объем передаваемой информации невелики. ЭВМ передает в анализатор направление лазерного луча и получает в ответ измеренные координаты точки. В рассмотренной системе на каждое измерение затрачивается примерно 1 мс.
Сбор информации о трехмерной детали. Дальномерная информация о точках трехмерной детали представляется в системе координат, связанной с наблюдателем. При построении трехмерной модели объекта необходимо использовать систему координат, связанную с объектом. Для этого на осях х и у выбираются нулевые отметки. По оси z нулевая отметка соответствует некоторой фиксированной высоте предметного столика, на котором находится объект (рис. 1). Все измеренные координаты точек переводятся в эту систему координат. При сборе информации, касающейся некоторого вида объекта, положение последнего на предметном столике не имеет значения.
В качестве примера детали используется отливка сложной формы (заготовка детали переднего моста автомобиля), показанная на рис. 2. Трехмерная модель объекта строится по полученным совокупностям дальномерных отсчетов, считываемых при повороте объекта вокруг оси г через каждые 30°. В последнюю очередь считываются изображения, соответствующие видам объекта сверху и снизу. Соответствие этих двух изображений остальным устанавливается с помощью нескольких контрольных точек, определяющих параметры преобразования. Один из видов детали, считанный с помощью такой системы, показан на рис. 3. После отсева точек, принадлежащих фону, каждый из видов детали содержит информацию приблизительно о 2000 точек. Координаты точек, лежащих на поверхности детали, были получены преобразованием из систем координат отдельных видов в общую систему координат детали.
Рис. 2. Заготовка деталиРис. 2. Заготовка деталиДругой способ сбора инфор- мации о трехмерной детали сочетает сканирование лучом лазера и вращение предметного столика. При таком способе получается цифровое представление описания контура, ограничивающего некоторое сечение объекта. Опуская или поднимая предметный столик, можно получать описания контуров, соответствующих другим сечениям объекта. По окончании процедуры осмотра имеется на-
Рис. 2. Заготовка детали
Рис. 2. Заготовка детали
бор описаний контуров, ограничивающих параллельные горизонтальной плоскости плоские сечения объекта.
В такой системе формирование информации, соответствующей одному контуру, происходит полностью автоматически при условии, что в контур не попадают глубокие отверстия и впадины [25]. В системе предусмотрен интерактивный.режим: если указанное условие нарушается, процесс считывания информации прерывается и оператор, выполняя несложные действия, указывает системе, с какой точки продолжить анализ контура. Когда набор описаний контуров построен, можно, используя методы теории графов, аппроксимировать форму поверхности в промежутках между контурами. Одним из методов аппроксимации может быть триангуляция. Триангуляционная модель поверхности может быть представлена в графической форме (см. рис. 4). Анализ графической формы помогает решить, есть ли необходимость добавления к набору описаний контуров или некоторые описания можно из него исключить.
На основе полученной информации могут быть построены соответствующие объекту геометрические модели более высокого порядка. Методами построения таких моделей могут быть триангуляция или декомпозиция объекта по контурам на элементарные объемные ячейки (см. ниже).
Построенная модель предназначена для использования в алгоритмах распознавания и определения параметров положения объектов. Распознавание выполняется по описаниям контуров, ограничивающих последовательные горизонтальные сечения объекта. Распознаваемые объекты размещаются на горизонтальной плоскости в заранее определенном положении. Контуры детали, соответствующие сечениям, имеющим определенную высоту, обмеряются с помощью анализатора. Полученные результаты сравниваются с определенными ранее описаниями контуров эталонной детали. Такой метод распознавания предполагает фиксированное преоб-
Рис. 3. Дальномерная ин формация, соответствую щая одному из видов детали показанной на рис. 2
Рис. 4. Триангуляционная модель детали, построенная По контурным обмерам
Рис. 5. Распознавание одного из контуров детали, показанной на рис. 2.
а — граница горизонтального сечения на высоте 81 мм (109 сегментов) ; б — участок границы того же сечения (32 сегмента, 0 = 52°) . в — наилучшее приближение совмещающего преобразования (0 = 51.7°) . В а и б совмещенные сегменты показаны сплошными линиями
разование координат в горизонтальной плоскости, вертикальные перемещения модели и, возможно, определение параметров пространственного положения наблюдаемого объекта.
На практике в большинстве случаев нет необходимости обмерять всю границу поперечного сечения объекта, вращая его на 360°. Достаточно сформировать описания отдельных сегментов этой границы, доступных для сканирования лезерным лучом. Описания сегментов, соответствующих обратной стороне детали и, возможно, некоторым вогнутым участкам ее лицевой стороны, не составляются. Такая методика требует разработки приемов сравнения частичных описаний [26]. Первые эксперименты с использованием сравнения частичных описаний дали многообещающие результаты. Когда информации, содержащейся в частичном описании детали, недостаточно для принятия того или иного решения, могут быть сделаны дополнительные обмеры, но это сильно увеличивает время, затрачиваемое на вычисления.
В качестве иллюстрации к выше сказанному на рис. 5 показаны результаты обмеров сегментов одного из контуров, ограничивающих горизонтальные сечения детали, изображенной на рис. 2.
Описанная методика может составить конкуренцию традиционным методам распознавания детали по ее силуэту, получаемому с помощью установленной вертикально телекамеры. Особенно это касается тех случаев, когда размещение производственного оборудования не позволяет установить телекамеру в нужном положении или нельзя обеспечить необходимое освещение детали.
Построение геометрических моделей. В результате данного исследования предполагалось найти представление модели, наиболее подходящее как для построения модели, так и для ее использования алгоритмами распознавания. Такое представление должно включать в себя все, что составляет содержание интуитивно ясного понятия ’’форма” и быть максимально компактным и простым. Поэтому в первую очередь рассматривались методики построения моделей поверхностей по совокупности данных о расстояниях до принадлежащих им точек. Работа в этой области имеет и самостоятельное научное значение. Бинфорд [3] предложил для представления трехмерных объектов использовать концепцию обобщенного цилиндра. Обобщенный цилиндр представляет собой произвольную пространственную кривую (ось), на которую ’’нанизаны” сечения произвольных форм и размеров. Эта концепция использовалась для сегментации сложных объектов в работах Эйджина и Бинфорда [4], Не-
ватии [5], Байси и Сороки [6]. Марр [7] предлагает иерархию моделей, использующую в качестве примитивов обобщенные конусы. В [8] приводится обзор существующих моделей. Авторы настоящей работы придерживаются мнения, что структурное описание объекта должно строиться на базе геометрических примитивов, удобных для распознавания зрительной системой. Из-за этого была отвергнута модель, использующая обобщенные конусы. Была использована модель с простейшими объемными примитивами, в качестве которых использовались цилиндры и конусы. Аналогичный подход использовался в работах [8-10], Позднее был разработан другой способ представления описания объектов; объемные модели, легко строящиеся на основе данных дальномерных измерений.
Аппроксимация плоскостями.
Трехточечный базис [ 11 ]. Одним из способов построения модели объекта по совокупности точек его поверхности является аппроксимация плоскими гранями. Аппроксимация выполняется в два этапа. На первом этапе с помощью алгоритма трехточечного базиса выделяется набор точек, принадлежащих различным граням объекта. На втором этапе полученные грани аппроксимируются многоугольниками. Выделение плоских граней по массиву данных дальномерных измерений выполняется с помощью алгоритма последовательного увеличения области.
Назовем критерием удаленности некоторое заранее известное расстояние. Его значение подбирается так, чтобы любые три точки, лежащие на поверхности объекта и удаленные друг от друга не менее чем на критерий удаленности (в дальнейшем эти точки называются '’трехточечным базисом”), задают плоскость (далее — ’’базисная плоскость”), которая либо (а) совпадает с гранью объекта, которой принадлежат все точки базиса, либо (б) пересекает любую грань объекта, которой принадлежит хотя бы одна из точек базиса.
Базисная плоскость, удовлетворяющая условию (а), определяет положение в пространстве формируемой грани аппроксимации, а плоскость, удовлетворяющую условию (б), следует отбросить. Для определения, удовлетворяет ли базисная плоскость условию (б), достаточно знать два параметра: признак выпуклости и наибольший диаметр области.
Алгоритм включает следующие шаги.
Из списка точек, принадлежащих поверхности объекта, выбираются три, не лежащие на одной прямой или слишком близко друг от Друга (не ближе критерия удаленности).
Составляется уравнение плоскости, проходящей через три точки, выбранные на шаге 1.
Отыскиваются точки, лежащие достаточно близко к этой плоскости. Полученный набор точек обозначается Р.
Из набора точек Р выделяется его выпуклое подмножество Р . Таким способом разделяются различные грани, лежащие в одной плоскости.
Вычисляется наибольший диаметр набора Р', полученного на предыдущем шаге.
5 - 1756 i7Q
Если получена грань (т.е. условие выпуклости и критерий величины удовлетворяются), точки, принадлежащие ей, удаляются из общего списка и алгоритм повторяется с усеченным списком точек.
После того, как с помощью алгоритма трехточечного базиса получен набор точек, принадлежащих некоторой грани, выполняются две проверки:
Все точки, принадлежащие различным граням, проверяются на принадлежность текущей грани.
Каждая точка, принадлежащая текущей грани, проверяется на
принадлежность предыдущим граням.
С помощью этих проверок выделяются гочки, принадлежащие более чем одной грани. Далее по набору этих точек определяется смежность граней и их отношения, используемые при распознавании объекта.
Теперь все точки поверхности связаны с плоскими гранями. Хотя некоторые точки, принадлежащие ребрам, и вершины уже известны, для получения многоугольников, ограничивающих грани, необходимо выполнить отдельный шаг. Аппроксимация грани многоугольником включает в себя следующие шаги:
Выделяется набор точек, принадлежащих одной грани.
Строится бинарный образ, соответствующий этому набору.
С помощью алгоритма прослеживания границы выделяется контур образа, полученного на шаге 2.
Выполняется аппроксимация многоугольником контура, соответ
ствующего грани.
Сложность алгоритма трехточечного базиса составляет О Qi4), где
и — количество точек поверхности.
Метод трехточечного базиса применяется как к отдельному виду детали (показанному на рис. 3), так и к объекту в целом. На рис. 6 показаны грани, найденные в виде, соответствующем нулевому углу поворота объекта (рис. 3). Различные грани показаны с разной яркостью. Видно, что большая часть граней, полученных таким алгоритмом, соответствует реальным плоским участкам поверхности детали. Криволинейные участки поверхности разбиты на отдельные грани. Ниже описан способ использования такого представления для распознавания объекта.
Триангуляция объектов. В этом подразделе рассматривается преобразование результатов дальномерных измерений в представление объекта в виде многогранника. Более строго задача формули
руется так: найти регулярный (т.е. такой, все грани которого представляют собой треугольники) многогранник, вершины которого находятся в точках, параметры положения которых определены с помощью
Рис. 6. Плоские грани, выделенные спомощью метода трехточечного бази-са по дальномерной информации, пред-ставленной на рис. 3
лазерного дальномера. Для получения информации об объекте в целом приходится рассматривать несколько его видов, что усложняет упорядочение точек. Далее предполагается, что точки, принадлежащие поверхности детали, располагаются в наборе случайным образом.
Соответствующая двухмерная задача — построение триангуляционной сети набора п точек, лежащих на плоскости. Эта задача исследована достаточно хорошо. Известно, что сложность алгоритма построения триангуляционной сети на наборе п точек, лежащих на плоскости, не может быть меньше, чем О (п log и). Один из наиболее извстных алгоритмов — триангуляция по Делоне [12], его сложность составляет О (п log п^, где п — количество точек.
В трехмерном пространстве триангуляция по Делоне может применяться тогда, когда поверхность взаимно однозначно проецируется на некоторую плоскость. Более того, доказана возможность оптимального алгоритма триангуляции выпуклой поверхности. В этом случае выполняется триангуляция выпуклой поверхности, выделяемой из набора точек за время порядка О (п log и) [13].
Основная идея похода авторов к решению трехмерной задачи состоит в разбиении общего случая на два частных. Для такой декомпозиции используется метод сферического отображения поверхностей. По этому методу точке М, принадлежащей поверхности, ставится в соответствие конец нормали к поверхности, проведенной через М. Отображение точек исходной поверхности лежит на поверхности сферы единичного радиуса (сфера Гаусса), которая выпукла.
Важно отметить, что сферическое отображение достаточно малых участков поверхности, имеющей всюду форму чаши (поверхности положительной кривизны) или седла (поверхности отрицательной кривизны), взаимно однозначно [14]. Следовательно, триангуляция на поверхности единичной сферы соответствует триангуляции на исходной поверхности. В случае поверхности нулевой кривизны триангуляция может быть выполнена на проекции поверхности на касающуюся ее плоскость.
Алгоритм строит триангуляционную сеть путем размножения контуров триангулируемого набора. Это размножение выполняется так: для каждого из ребер контура определяется, которую из соседних точек следует использовать для образования нового треугольника на поверхности сферического отображения или на касательной плоскости (в зависимости от текущего значения кривизны поверхности). При достижении границы двух наборов точек с различными знаками кривизны процесс останавливается. В этот момент граница пересекается и процесс продолжается на следующем наборе точек.
Начинается процесс с выбора наименьшего ребра выпуклой оболочки. Оно служит первым ребром триангуляции.
Поскольку алгоритм всегда выбирает наилучшую из нескольких точек, связанных с ребром, сложность алгоритма определяется сложностью поиска точек, соседних ребру. Для такого поиска было предложено Много быстрых алгоритмов, работающих за время порядка О (п log //)
Рис. 7. Триангуляция объекта типа "фонарик"
(см. например, [15]). Сложность предлагаемого метода также О (и log и). Результат триангуляции простого объекта показан на рис. 7.
Аппроксимация объектов многогранниками [16]. По методу, описанному в предыдущем подразделе, можно построить триагуляцию объекта. Ее можно использовать для различных целей, в особенности для построения грубой аппроксимации объекта много
гранником. В свою очередь, эта аппроксимация может более эффективно
использоваться в качестве модели объекта.
Триангуляция представляет собой граф G (V, Е), где набор вершин V есть совокупность точек объекта, а Е — набор ребер. В нашем случае набор ребер совпадает с набором ребер триангуляции. Для разбиения набора точек и независимой аппроксимации каждой из его частей многогранника с треугольными гранями представление с помощью графа используется рекурсивным образом.
Алгоритм выглядит следующим образом:
На поверхности S выбираются три точки Р, Q и А, не являющиеся соседними. Плоскость PQR дает аппроксимацию поверхности нулевого
порядка.
Отыскивается кратчайший цикл, проходящий через точки PQR, ближайший к задаваемой ими плоскости. Он представляет собой цикл в графе G, который обозначается (PQR). Поскольку G — планарный граф, этот цикл разбивает поверхность на две части — Sj и S2, а граф на два несвязных подграфа — Gj и G2.
Gj и G2 обрабатываются независимо: отыскиваются точки Sp наиболее удаленные от плоскости PQR, Многогранник (PP\Q, QP\R^ RPVP, PP^Q, QP^R. RPiP) представляет собой аппроксимацию поверхности S первого порядка.
Поверхности Sj и S2 рекурсивно разбиваются на три части следующим образом. В Gz- отыскивается цикл (РРД), не содержащий точки R. Этот цикл выбирается таким образом, что путь РР^ например, наикратчайший при условии назначения весов точек пропорционально удаляе- мости от биссекторной плоскости угла, образованного плоскостями РРД и PPfi. Это действие разбивает Gz на GZ1 и Gz2. Пусть G/2 часть Ц^ содержащая R. Ищем цикл (QP^R) в Gz-2. Это приводит к разбиению на три части: графы Gn , Gz2 и G^, соответствующие треугольникам РРД QPfR и ЯРД соответственно (/ = 1,2).
Каждый подграф (подповерхность) обрабатывается независим0,
как указано в шаге 3. Процесс продолжается до тех пор, пока не будет достигнут приемлемый уровень погрешности. В конечном итоге получается аппроксимация поверхности S многогранником с треугольными гранями. Нежелательное свойство данного алгоритма заключается в том, что однажды созданное ребро многогранника уже не может исчезнуть, хотя оно может сильно ухудшать аппроксимацию поверхности. Путем простой модификации можно несколько улучшить алгоритм, разрешив деление ребер. Это приведет к повышению качества аппроксимации. Можно показать, что сложность этого алгоритма равна О (Tr п log (и)), где Тг — окончательное число треугольников. Поскольку на вход этого алгоритма должна поступать исходная триангуляция, следует добавить к этой оценке сложность ее построения (см. выше), равную также О (и log (и)). Общая сложность получается меньше, чем в алгоритме трехточечного базиса. Алгоритм был применен к объекту, показанному на рис. 8, и была получена соответствующая аппроксимация треугольниками. На рисунке видны ребра этих треугольников.
Неплоскостные аппроксимации. Многие объекты (в особенности промышленные детали) не могут быть представлены с использованием только плоских примитивов, поэтому авторы добавили к плоским примитивам простые объемные, например цилиндры и конусы — они полезны для моделирования и распознавания объектов и легко формируются по дальномерным данным. Формирование примитивов выполняется с использованием нормали к поверхности объекта в измеряемой точке. Этот вектор легко может быть определен по дальномерным данным и, после нормализации, представлен в виде точки на единичной сфере. Вначале предположим, что на поверхности объекта имеется плоский участок. Все измеряемые точки этого участка имеют приблизительно одинаковые нормали, что даст компактную совокупность соответствующих им точек на поверхности единичной сферы. Имея способ обнаружения подобных ком-
^с. 8. Многогранник, аппроксимирующий объект "фонарик"
^Ис- 9. Плоские и цилиндрические участки поверхности, выделенные с помощью преобразования XoY по дальномерной информации, для детали, представленной на рис. 3. Плоскости помечены Р, а цилиндры С
пактных совокупностей точек, мы могли бы выделять плоские участки поверхности объекта. Теперь предположим, что часть поверхности объекта — цилиндрическая (коническая). Всем нормалям к участкам поверхности будут отвечать точки, расположенные на единичной сфере по окружности. Если иметь способ обнаружения таких совокупностей, можно выделять конические и цилиндрические поверхности объектов.
Поиск таких совокупностей может быть эффективно реализован с помощью так называемого преобразования Хоу (Hough). Однако этот метод не позволяет различать параллельные плоские грани или цилиндры (конусы) с параллельными осями. Их различение достигается возвратом к исходному набору дальномерных данных с использованием соображений связности. Алгоритм включает в себя следующие шаги:
Находится набор плоских участков поверхности и соответствующие им точки удаляются из общего списка.
Находится набор цилиндрических участков поверхности и удаляются соответствующие им точки.
Находится набор конических участков поверхности и удаляются соответствующие им точки.
Шаги 1, 2 и 3 иерархически структурированы в том смысле, что вначале отыскиваются наибольшие плоскости, цилиндрические и конические участки, а затем меньшие. На каждом шаге производится разделение различных примитивов одного класса (типа параллельных плоских участков) .
Поверхность детали автомобиля, показанная на рис. 2, состоит по большей части из плоских и цилиндрических участков. Мы применили описанную методику [231 к виду детали, показанному на рис. 3. Результаты показаны на рис. 9.
Объемные представления. Альтернативный подход к описанию объектов — использование элементарных объемов. Хотя эти методы обходятся дороже в смысле требований к памяти, у них есть определенные преимущества. Например, с их помощью можно определять значение интегральных характеристик. При нашем подходе в качестве элементарного объема используется ромбододекаэдр. Как указывается в [24], этот многогранник ближе к сфере и более изотропен, чем куб (как в плоском случае шестиугольник ’’лучше” квадрата). Эти качества делают его полезным при построении трехмерных скелетных структур. Более того, декомпозиция объекта на ромбододекаэдры легко выполняется по эквидистантным слоям, полученным с помощью лазерного дальномера. На рис. показаны декомпозиция детали, представленной на рис. 2, и соответствующая скелетная структура. В будущем планируется развивать эту работу в направлении построения иерархических структур, деревьев порядка 13, аналогичных деревьям восьмого порядка, соответствующим кубической сетке.
Распознавание трехмерных объектов. Рассматриваемый подход К сравнению трехмерных объектов использует в качестве примитивов плоские участки поверхности. Произвольный вид объекта сравнивается со структурной трехмерной моделью. Таким образом, сравнение форм вы- 134
Рис. 10. Декомпозиция детали, показанной на рис. 2, на ромбододекаэдры (а) и полученная скелетная структура (б)
полняется путем сравнения описания плоских участков, выделенных на произвольном виде, с хранимой в памяти моделью. В качестве описателей плоских участков как поверхности объекта, так и модели используются:
площадь, т.е. количество точек, принадлежащих плоскому участку; периметр, т.е. количество точек, принадлежащих его границе;
длины максимального, минимального и среднего радиус-векторов; отношение площадь / (периметр)2;
координаты центроида;
уравнение плоскости, в которой лежит участок поверхности; соседние участки.
Алгоритм сравнения. Предположим, что необходимо сравнить модель и наблюдаемый объект. Модель и объект представлены наборами геометрических примитивов Т= (Ть Тг ... TN^ и О = (Ох, О2, ..., OL j) соответственно. Эти примитивы соответствуют плоским участкам поверхности. Они пространственно структурированы, как описано ниже. Будем рассматривать бинарные отношения примитивов, такие, как смежность, параллельность и т.д. На их основе можно построить помеченные графы, соответствующие наборам Т и О, где дуга, соединяющая вершины Г; и Tj говорит о их смежности, параллельности и т.д. Вершины графов помечены значениями признаков, такими, как длина, площадь, угол, образуемый с соседним примитивом и т.д.
Будем обозначать элементы модели единицами, а элементы объекта — Метками. Задача сравнения сводится к пометке каждой из единиц Т, (/ = = 1, 2, ..., ?/) либо меткой О; О' = 1,2, ... , L - 1), либо как не принадлежащей О (метка OL = ПУСТО). Каждая единица Т^ может быть помечена Любой из L возможных меток. Можно рассматривать задачу сравнения Иначе — как задачу сравнения двух помеченных графов. Последнее время этой задаче уделяется много внимания [17 — 21], и ее решение, предлагаемое здесь, как и в [21], основывается на поиске максимального значения Простого критерия [22].
Используя описываемую ниже методику для каждого плоског: участка поверхности 7}, вычисляем набор положительных чисел р{ (h. / = 1, 2, ... ,L, pj (/) можно рассматривать как вероятность пометки 7} как Ор Начальные вероятности вычисляются с использованием первых шести признаков из приведенного выше списка. Степень соответствия между плоскими участками 7} и Ор вычисляется как
Р
v z к ' Jtp Jop p’ i = 1
где ftp - значение р-го признака плоского участка объекта; f0D - значение р-го признака плоского участка модели; Wp —весовой коэффициент р-го признака.
Для учета степени важности и нормализации области значений признаков необходимо определить их весовые коэффициенты. С их помощью также можно учесть любую априорную информацию о изменениях или искажениях некоторых признаков. Начальные вероятности выбираются пропорционально 1/(1 *М (Гр 0^3 и нормализуются так, чтобы их сумма составляла единицу. Введем также функцию соответствия с (7), 7) Ок, Of) для определения, насколько совместимы друг с другом пометки двух соседних единиц 7} и Гр Основой вычисления значения этой функции являются пространственные преобразования. Для того, чтобы вычислить с (Г,, Tp Op, Of) (при к и I не равных Z), определим два преобразования:
TR \ : 7 \ - > Ок и
TR2-.r.-*Ol
Преобразования включают в себя: преобразование масштаба, задаваемое отношением площадей двух плоских участков; переноса, задаваемое разностью координат центроидов двух плоских участков; совмещения несущих плоскостей, приводящих оба участка в одну плоскость; поворота одного из плоских участков до получения максимального значения площади пересечения двух участков, лежащих в одной плоскости.
Затем TR1 применяется к Tp a TR2 к 7} и вычисляются погрешности — ошибка (7R 1 (ГА, Of) и ошибка (77?2 (Tf), Ор). Значение функции соответствия с (Гр Tp Op, Of) принимается равным 1/(1 + средняя ошибка). Если значения Р; (Г) отражают то, что плоский участок 7} ’’думает” о своей пометке, то функция с используется для построения значений qs (Г), которые отражают то, что ’’думают” об этой пометке соседние плоские участки. Из-за погрешностей измерений р, (/) и qt (/) в общем случае с самого начала не совпадают. Описанный алгоритм предназначен для приведения их к согласованию. Это может быть эффективно выполнено путем максимизации простого критерия, выражаемого функцией значений pt (Г). Начальное значение критерия вычисляется по начальным вероятностям и исходя из них же вычисляется локальный максимум. Максимум предполагает лучший, чем начальный, вариант пометки плоских участков Г;. Этот вариант, в свою очередь, предполагает геометрическое преобразование, трансформирующее модель в наблюдаемый объект-
Примеры. Для примеров используется промышленная деталь, показанная на рис. 2. Количество ее плоских участков, видимых с различных точек, колеблется от 10 до 26, а их общее число равно 85. В процессе сравнения рассматривались только 29 ’’лучших” участков (для снижения сложности). В процессе проверки алгоритма сравнения форм рассматривались виды, соответствующие углам поворота детали 0, 30 и 330°. Хотя модель строится по этим видам, в нее входят не все плоские участки, соответствующие произвольным видам. Это обусловлено способом получения информации о точках, принадлежащих поверхности объекта. Результаты пометки используются для вычисления параметров положения вида по отношению к модели. При использовании метода необходимы данные о сложности соседних плоских участков. Соседние участки упорядочены по убыванию размера — большие имеют предпочтение. Результаты пометки используются для вычисления параметров положения вида по отношению к модели. Для этого необходимо по крайней мере три совпадающих пары плоских участков. Так как возможны ошибки, фактически вычисляется некоторое среднее полученных рассмотрением различных троек совпадающих участков.
Матрица направляющих косинусов связанной системы координат объекта по отношению к связанной системе координат модели была определена следующим образом:
Вычисленная
Теоретическая
1,0 0,0 0,0
1,0 0,0 0,0
0,0 1,0 0,0
0,0 1,0 0,0
0,00,01,0
0,0 0,0 1,0
0,9 0,1 0,5
0,9 0,0 0,5
- 0,2 1,0 -0,2
0,0 1,0 0,0
- 0,4 0,0 0,9
- 0,5 0,0 0,9
0,7 0,0 - 0,6
0,9 0,0 - 0,5
- 0,1 1,0 0,0
0,0 1,0 0,0
0,5 0,0 0,7
0,5 0,0 0,9
Слева — вычисленные значения, справа — теоретические. Совпадение результатов говорит о достоверности вычисления параметров положения.
Заключение. Была описана управляемая ЭВМ система анализа визуальной информации, предназначенная для сбора точной дальномерной информации о трехмерных объектах. Эта система позволяет автоматически создавать геометрические модели объектов, которые могут использоваться для вычисления таких их свойств, как устойчивые положения, положения, удобные для захвата детали и т.п., а также для распознавания объектов с помощью системы технического зрения.
Используемые геометрические модели довольно просты, и в будущем авторы надеются улучшить их и связать с моделями, используемыми в САПР. Распознавание объектов реализовано только для изолированных объектов и использует только дальномерные данные. Планируется развитие работы в двух направлениях: 1) совместное функционирование телевизионной камеры, измеряющей яркость, и лазерного дальномера,
измеряющего расстояние, и 2) распознавание частично заслоненных объектов.
Авторы благодарят доктора Чарльза Ньюмена (Neuman) за участие в обсуждении материала.
СПИСОК ЛИТЕРА ТУРЫ
J. D. Boissonnat and Г. Germain, ‘A New Approcah to the Problem of Acquiring Randomly Oriented Workpieces out of a Bin’, Proc. 7th Ini. Joint Conf On Artificial Intelligence, pp. 796-802 (1981).
T. O. Binford, ‘Visual Perception by Computer'. IEEE Conf on Systems and Control Miami (December 1971).
G. J. Agin and T. O. Binford, ‘Computer Description of Curved Objects’, Proc Jrdlnt. Joint Con; on Artificial Intelligence, pp. 629-640.
R. Nevatia and T. О Binford, ‘Description and Recognition of Curved Objects’. Artificm Intelligence, Vol. 8, pp. 77-98 (1977).
R. K. Bajcsy and В. I. Soroka, ‘Steps towards the Representation of Complex Three-Dimensiona. Objects’, Proc. Sth Ini. Joint Conf, on Artificial Intelligence, pp. 596.
D. Marr, ‘Representing Visual Information - A Computational Approach’, in Computer Vision Systems, A. R. Hanson and E. M. Riseman (Eds.), pp. 61-80. Academic Press(1978).
N. Badler and R. Bajcsy, ‘Three-Dimensional Representation for Computer Graphics and Computer Vision', ACM Computer Graphics. Vol. 12, pp. 153-160 (August 1978).
M. Oshima and Y. Shirai, ‘A Scene Description Method Using Three-Dimensional Information". Pattern Recognition,Vol. 11, pp. 9-17 (1978).
Y. Shirai, ‘On Application of 3-Dimensional Computer Vision’, Bui. Electrotech. Lab. Vol. 43 No.6(I979).
Y. Shirai, ‘Use of Models in Three-Dimensional Object Recognition'.' in Man-Machine Communication in CAD/CAM, T. Sata, E. Warman (Eds.), North-Holland Publishing Compam (1981).
B. Bhanu, ‘Shape Matching and Image Segmentation Using Stochastic Labelling’, Ph.D Dissertation, University ofSouthern California. Los Angeles, August 1981.
D. T. Lee and B. J. Schacter. ‘Two Algorithms for Constructing a Delaunay Triangulation. Ini JournalofComp. And Inf Sciences, Vol. 9. No. 3 (1980).
F. P. Preparata and S. J. Hong. ‘Convex Hulls of Finite Sets of Points in Two and Three Dimensions’, Comm. ACM, Vol. 20, No. 2(1977).
D. Hilbert and S. Cohn Vossen. Geometry and Imagination. Chelsea.
J. L. Bentley, J. H. Friedman, ‘Fast Algorithms for Constructing Minimal Spanning Trees in Coordinate Spaces’. IEEE Trans. Comp., Vol. C-27, No. 2 (February 1978).
J. D. Boissonnat and О D. Faugeras. ‘Triangulation of 3-D Objects'. Proc 7th Ini Joint Conf on Artificial Intelligence, pp. 658-660(1981).
L. Kitchen and A. Rosenfeld, ‘Discrete Relaxation for Matching Relational Structures'. IEEE Trans. Systems. Man and Cybernetics. Vol. SMC-9, pp. 869-874 (Dec. 1979).
L. Kitchen. ‘Relaxation Applied to Matching Quantitative Relational Structures'. IEEE Tram Systems, Man and Cybernetics, Vol. SMC-10, pp. 96-101 (February 1980).
R. M. Haralickand L. G. Shapiro. ‘The Consistent Labelling Problem, Parti’. IEEE Trans. Pattern Anal Machine Intell. .Vol. PAM LI. pp. 173-184 (April 1979).
R. M Haralickand L.G Shapiro. ‘TheConsistent Labelling Problem. Part 1Г. IEEE Trans. Pattern Anal. Machine Intell.. Vol. PAMI-2,pp. !93-2O3(May 1980).
О D. Faugeras and K. Price. ‘Semantic Description of Aerial Images Using Stochastic Labelling". IEEE Trans. Pattern Anal Machine Inlell.У q\. PAM1-. pp. (November 1981).
O. D. Faugeraand M. Berthod. ‘Scene Labelling: an Optimization Approach’. IEEE Trans. Pattern Anal. Machine Intel I.. Vol. PAM1-, pp. (1981).
M Hebert and J. Ponce, ‘A New Method For Segmenting 3-D Scenes’. I C.P R (October 1982).
J. Serra. I mage Analysts and Mathematical Morphology. Academic Press (1981).
E. Pauchon. These de Docteur Ingenieur. Universite d’Orsay. 1983. to appear.
N. Ayache, ‘Reconnaissance d’objets 2-D parteillement caches'. These de Docteur Ingenieur. Universite d’Orsay, toappear December 1982.
ИСПОЛЬЗОВАНИЕ КОНИЧЕСКОГО СВЕТОВОГО ПОТОКА
ДЛЯ РАСПОЗНАВАНИЯ ОБЪЕКТОВ
\ Дай Вэй, М. Д ж и н и, факультет электроники Политехнического института г. Милана, Италия
В статье описывается процедура распознавания объектов с применением конического потока света. Используется вертикальный проектор, формирующий конический поток света. Поток попадает на объекты, на поверхности которых образуются круглые или эллиптические кривые. Затем с помощью телевизионной камеры считываются изображения этих кривых. Такие признаки объекта, как расстояние до каждой точки и угол, составляемый его поверхностями с лучом света, могут быть получены в результате тригонометрических вычислений. На распознавание не влияет ни расположение объектов, ни теневая картина, а измерение рассматриваемых параметров выполняется с большой точностью. Рассмотрены математические аспекты метода.
Введение. Распознавание трехмерных объектов составляет важное приложение машинного зрения [1]. Оно играет важную роль в робототехнике, где часто необходимо распознавать объекты, находящиеся в рабочей зоне.
Для распознавания трехмерных объектов предлагались различные методы [2]. Один из наиболее полных методов основан на использовании стереоскопического зрения [3]. Построение моделей по этому методу требует большой вычислительной мощности. Ишран [4] предложил метод, основанный на использовании вертикально направленного проектора со щелью и телекамеры, улавливающей отраженный свет. Вращая проектор слева направо, можно вычислить расстояние до многих точек, лежащих в поле зрения. Другие авторы предлагали решения, использующие луч лазера [5] или световые плоскости, проецируемые на объект для определения его формы [6].
Большинство этих методов требуют больших затрат на аппаратуру и/или больших объемов вычислений, вследствие чего использование их в промышленном оборудовании нецелесообразно.
В промышленности часто предлагаются другие методы, использующие Двухмерные образы [7]. Одна из проблем, связанных с использованием Двухмерных образов, заключается в том, что если два различных объекта имеют одинаковые проекции на двухмерную плоскость (как показано на рис. 1), их невозможно отличить друг от друга. В таких случаях невозможно правильно определить высоту и углы многогранников, которые очень важны при распознавании объектов.
В настоящей статье предлагается метод, названный ’’проекция конического светового потока”. С помощью этого метода, не требующего больших затрат и обладающего повышенной точностью, можно получить больше сведений о модели, чем при использовании традиционных приемов. Метод удобно использовать в тех случаях, когда двухмерной информации, извлекаемой из силуэтов объектов, недостаточно, а выпол-
h^h2h^h2a3 = a2 b1=bz b^h2 8) = 92a3 = a2 b1=bz b^h2 8) = 92Рис. 1. Различные объекты, имеющие одинаковые проекции на плоскостьРис. 1. Различные объекты, имеющие одинаковые проекции на плоскость
h^h2
h^h2
a3 = a2 b1=bz b^h2 8) = 92
a3 = a2 b1=bz b^h2 8) = 92
Рис. 1. Различные объекты, имеющие одинаковые проекции на плоскость
Рис. 1. Различные объекты, имеющие одинаковые проекции на плоскость
Рис. 2. Взаимное расположение телекамеры и конического по-тока света
некие полного трехмерного анализа обходится слишком дорого.
Метод проекции конического светового потока.
Рассмотрим рис. 2. Пусть телевизионная камера А находится над объектом К и из-за нее
вертикально вниз на объект проецируется конический поток света. Этот поток образует эллиптическую или круглую освещенную кривую G на определенной поверхности объекта, например "М. По форме этой освещенной линии можно вычислить расстояние от камеры до ее центра, направ
ление наклона поверхности и угол между осью конического светового
потока и плоскостью, на которую он проецируется.
На рнс. 3 показана схема разрабатываемой в настоящее время экспериментальной установки, в которой для генерации конического свето
вого потока применен лазер.
Используется гелиево-неоновый газовый лазер, создающий тонкий и интенсивный луч света, и вращающийся ротор с набором зеркал, с помощью которого этот луч преобразуется в конический поток света. На роторе установлены зеркала А, изменяющее направления луча света, и В, поворачивая которое можно менять угол при вершине светового конуса и компенсировать изменения расстояния между объектом и камерой. Полупрозрачное зеркало изменяет направление конического светового потока, давая возможность считывать образуемую им на поверхности рассматриваемого объекта освещенную линию.
Более полно определить форму объекта можно, перемещая камеру и источник света параллельно рабочей плоскости или перемещая объект под камерой. В описываемой системе объект располагается на подвижном координатном столике, который можно перемещать в любом направлений по плоскости, находящейся под источником света. Количество и распо-
ЛазерЛазерЭлектродвига-тельЭлектродвига-тельРис. 3. СхемаРис. 3. СхемаРис. 4. Предлагаемый метод
Лазер
Лазер
Электродвига-тель
Электродвига-тель
Рис. 3. Схема
Рис. 3. Схема
ТелекамераТелекамераВВААэкспериментальной установкиэкспериментальной установкиложение точек, которые исследу-
Телекамера
Телекамера
В
В
А
А
экспериментальной установки
экспериментальной установки
ются сются спомощью описываемогопомощью описываемогометода, зависит от различных обстоятельств и выбирается пользователем вручную или автоматически в соответствии с характером рассматриваемых объектов.
ются с
ются с
помощью описываемого
помощью описываемого
Для простоты предполо
жим, что проектор и телевизионная камера находятся в одной точке.
Математический анализ метода. Рассмотрим рис. 4. Пусть в точке А находится камера и в той же точке расположен проектор; образуемый им конический поток света имеет вершину в точке S. Половину угла при вершине конического светового потока обозначим <р, а расстояние между точками S и А - Lo. Эллипс ВЕСЕ образован пересечением светового потока и верхней плоскости объекта.
Пусть ВС — большая ось области, ограниченной освещенным эллипсом, фх и ф2 - углы между осью AS и отрезками АС и АВ, D - середина SC, Lx — расстояние между камерой и точкой 2?, являющейся центром эллипса.
Имеем следующие уравнения:
I2 tg ^х = (L0 - Z2)tg^;,(1)
Z^ tg t//2 = (Zo - Z3) tg ^;(2)
вс2 - (Z3-иу = yu -Z3)tg^ + (Zo -z2)tgi))2;(3)
Lx = L2 + (Z3 - Z2)/2;(4)
ctga = (Z3-Z2)/((Z0 ~Z3)tg^+ (Zo-Z2)tg^);(5)
OR =(LQ - Lx^t^xp;(6)
OD = 1BC[T) sin a + (5C/2) cos a tg i - OR;у (7)
№Fi2Y = OR2 - OD2./ ’ (8)
Решая их, получим:
ctga = (£0 tg<p(tg фх - tg ^2))/((tg Фх + tg<p)(tg ф2 + tg^)); .(9)
£i =£o tg<p(tg фг + tg ф2 + 2 tg<p)/(2 (tg фх + tg i)(tg ф2 + tg </>));
(Ю)
£2 =£0 tg^/(tg фх + tg v>);•(11)
£3 = £0 tgi/(tg ф2 + tg^);(12)
BC = L0 {tg2 v>[(tg фх - tg 02)/((tg фх + tgi)(tg ф2 + tg <p))]2 +
+ [tg фх/(^ фх + tg <p) + tg ^/(tg Ф1 + tg v))]2] *'2;(13)
EF = 2 \BC (Lo - L i) (sin a + cos a tg ф) X
X tg 9?]1'2 — ВС2 (sin a + cos a tg i/>)2.‘(14)
Угол ф и расстояние Lo известны: они зависят от характеристик проектора. Углы фх и ф2 — параметры, которые можно определить по расположению освещенного эллипса в поле зрения. ВС и ЕЕ — соответственно большая и малая оси этого эллипса. Наиболее важными вычисляемыми
параметрами являются а и Lx, представляющие соответственно уклон поверхности объекта и ее удаленность от камеры.
Вычисления параметров по образцу. Из вышеизложенного ясно, что для вычисления требуемых значений надо знать фх и ф2. Они — единственные параметры, которые приходится определять по образу.
Покажем, что фх и ф2 — наибольшее и наименьшее значение угла с вершиной в точке А, одной стороной AS и второй стороной, проходящей
через точки, лежащие на освещенном эллипсе.
На рис. 5 камера с фокусным расстоянием, совпадающим с высотой конического светового потока AS, находится в точке А;К — произволь
ная точка, лежащая на эллипсе. Пусть R — расстояние между точкой К и осью AS. Точки В и С — соответственно низшая и высшая точки эллипса; пусть Lb, Lc и Lk — соответственно расстояния от точек В, С и К до плоскости размещения проектора.
Имеем следующие уравнения:
R = (Lo - L^tgtp; (15)
Рис. 5. Определение углов
Рис. 6. Определение формы объектовРис. 6. Определение формы объектов
Рис. 6. Определение формы объектов
Рис. 6. Определение формы объектов
^Фк = R/Lk;(16)
фк - угол между АК и AS. Из (15) и (16) имеем ’-
tg ^fc =^o/Lk - l)tgi.'■(17)
В соответствии с этой формулой tg ^ возрастает с уменьшением £*. и наоборот.
Мы знаем, что концы длиной оси эллипса: верхний, точка С, и нижний, точка В, — лежат на освещенной эллиптической линии. Отсюда Lb и Lc — наибольшее и наименьшее значение расстояния от точки эллипса до плоскости размещения проектора. Из (17) можно заключить, что углы фс и фь — наибольший и наименьший из углов со сторонами AS и ЛК, где// — произвольная точка на эллипсе.
Очевидно, что если поверхность объекта параллельна рабочей плоскости, ф4, фг и все фк равны между собой.
Зная фокусное расстояние камеры F, можно вычислить
tg^=D'^7F,(18)
где/) 'К' — проекция отрезка/)// на анализируемой поверхности.
По вышеприведенным соображениям для определения Ф1 и Ф2 необходимо определить наибольшее и наименьшее значения фк.
Определение различных поверхностей многогранника. Рассмотрим объект, показанный на рис. 6, а. Перемещая камеру, считаем два образа световой картины на его поверхности.
Если для двух различных положений камеры с помощью уравнения (9) вычислены различные значения углов О] и а2, можно с уверенностью заключить, что соответствующие им точки лежат на различных гранях. Ниже будет показан способ определения угла между гранями многогранников (23).
Теперь рассмотрим ситуацию, показанную на рис. 6, б. Если при раз- личных измерениях получены одинаковые значения угла а, как на ри-
Рис. 7. Определение верхней грани объектаРис. 7. Определение верхней грани объектаРис. 8. Определение угла между двумя смежными гранямиРис. 8. Определение угла между двумя смежными гранями
Рис. 7. Определение верхней грани объекта
Рис. 7. Определение верхней грани объекта
Рис. 8. Определение угла между двумя смежными гранями
Рис. 8. Определение угла между двумя смежными гранями
сунке, задача определения граней усложняется. Значение а не позволяет решить вопрос: на одной грани лежат анализируемые точки (А и 5) или на разных (S и С).
В этом случае приходится продолжить рассуждения. Рассмотрим более внимательно рис. 7.
Пусть LAB — расстояние между двумя положениями камеры при считывании образов; ЬзА — значение £3, вычисленное по уравнению (12) в точке A; L3B — значение £3 в точке В. Можно получить:
L4a=L3A-(Lo - L3A)tg^pctga;(19)
lab =ьзв~U-o " L3B^^ ^ctg«;. ' ‘(20)
h=LAA - L4B = (L3A - L3B) (1 + tg^ctga);(21)
ctga = h/LAB.(22)
Если равенство (22) выполняется, точки А и В принадлежат одной грани, в противном случае — разным.
Измерение угла между двумя смежными гранямй объекта. Угол между двумя смежными гранями является важным параметром при распознавании многогранника. В ситуации, показанной на рис. 8, вначале вычисляются углы V/i и V/2 с помощью уравнения (18). Таким образом мы определяем направление большой оси эллипса.
Если для двух различных плоскостей М и N мы получим различные направления двух больших осей эллипсов ^ и /З2, можно вычислить 0 — угол между плоскостями N и М:
cos 0 = sin «1 sin а2 + cos a, cos a2 cos (f^ - /З2),(23)
где «1 и «2 — значение угла а в уравнении (9) для плоскостей М и N соответственно (см. рис. 8). Эта формула выводится следующим образом._Дусть У*] — единичный вектор, перпендикулярный к поверхности М, а 8 2 — единичный вектор, перпендикулярный к N. Имеем:
1 = (costti cos /31 )Т + (cos«] sin /3]) j + sin Q] k ;(24)
2 = (cos a2 cos/32) i + (cos «2 sin/32) j + sin a2 k ;(25)
cos 0 = (5 i 52)/18 11 i821 = (cos«] cos'/?!) (cos a2 cos/?2)/(l • 1) +
+ (cos«! sin /?!) (cos a2 sin /?2 )/(l * 1) + sin «! sin a2/(l • 1) =
= cos «1 cos a2 cos 0?i — Д2) + sin «! sin «1 sin a2.(26)
Поиск ребер. На рис. 9 показаны варианты световой картины, возникающие при проецировании^светового потока на ребро многогранника.
Предположим, что 8^, Bp, Bq и В^ единичные векторы, перпендикулярные граням, а 9R, 9р, 6q и 6N — углы между осью конического потока света и единичными векторами. Может иметь место одна из двух ситуаций: углы между двумя гранями, прилежащим к ребру, меньше 90° (как в случае 1 на рис. 9), или один из этих углов равен или больше 90° (как в случае 2).
Если мы спроецируем световой поток на грани многогранника К, то увидим освещенные кривые различных форм — a, d и с. Кривые а и с появляются на гранях, где угол 9q или 9N равен или больше 90°, тогда как кривая b появляется на грани, где углы 9R и 9р меньше 90°. Сравнивая полученные кривые с кривыми d, е и /, лежащими только в одной плоскости, побнаруживаем их существенное различие.
Рассмотрим случаи 1 и 2 на рис. 9. В случае, когда 6N больше или равно 90° можно легко определить положение ребра. Если при перемещении
Рис. 9. Различные типы ребер многогранников
Рис. 10. Распознавание различных объ-ектов
объекта обнаруживается, что замкнутая кривая становится разомкнутой, можно утверждать, что в этот момент найдено ребро. В случае 1 задача осложняется тем. что кривая b схожа с кривыми d, ей f. Их различия обнаруживаются с помощью дифференциального исчисления. В случаях d, е и f производные уравнений кривых непрерывны, но в случае b производная уравнения кривой разрывна.
Применение метода проекции конического светового потока. Рассмотрим пример совместного применения традиционных методов машинного зрения и проекции конического светового потока. На рис. 10, а представлены три объекта А — плоское штриховое изображение, В нС — реальные объемные объекты. Если телевизионная камера располагается над ними, то изображение всех трех объектов будет практически одинаковым. Если спроецировать на каждую из видимых граней объектов конический поток света, окажется, что в случае А для всех пяти рассматриваемых точек расстояния и углы одинаковы, тогда как в других случаях они различны.
Важным моментом является определение точки, в которую следует направить ось конического светового потока. В решении этого вопроса может помочь система визуального анализа. Она позволяет определить, сколько видимых граней имеет объект и где они расположены. После этого на них можно проецировать конический световой поток. В нашем случае имеются пять видимых граней, поэтому проецирование выполняется пять раз.
Более общий подход основан на регулярном перемещении конического светового потока по поверхности объекта, в процессе которого формируется равномерная сеть измеряемых точек. В каждой точке считывается изображение и вычисляются значения а и £ i.
Рассмотрим другой пример. На рис. 10, б изображены три цилиндрических объекта, отличающихся друг от друга только формой торцового участка поверхности: у объекта А она плоская, у объекта В — выпуклая, а у С вогнутая. Их образы, считанные камерой, одинаковы, но использование конического светового потока позволяет определить отличие. Если источник света и камера перемещаются над поверхностью объекта, можно получить более подробную информацию. Расстояние от поверхности объекта до камеры постоянно только в случае А.
Заключение. Представлен метод распознавания признаков трехмер-
ных объектов, основывающийся на проецировании на них конического светового потока. Точность метода довольно высока и он не требует использования мощной вычислительной техники.
Благодарности. Часть работы финансировалась организацией ”Про- жетто финалицатто пер л’информатика объеттиво МОДИАК” (Progetto Fibnalizzaro per PInformatica, Obiettivo MODIAC). Авторы хотят благодарить M. Сомалвико (М. Somalvico) за благожелательное руководство. Они также благодарны Р. Кассини (R. Cassinis) за советы и полезные замечания.
СПИСОК ЛИТЕРАТУРЫ
Н. Р. Winston, 'The psychology ofcomputer vision’, McGraw Hill, 1975.
G. G. Dodd and L. Rossol, ‘Computer vision and sensor-based robots’, Plenum Press, New York, 1979.
M. Bernasconi, R. Delazer and M. Gini, 'Accuracy of measurement through stereo images’, Proc. Automated Inspection and Product Control, Stuttgart, Germany (June 1980).
Y. Shirai and M. Suwa, 'Recognition of polyhedrons with a range finder’, Proc. IJCAI-71, London, UK(1971).
G. Agin and T. O. Binford, 'Computer description of curved objects’, Proc. 1JCA1-73. Stanford, Ca. (August 1973).
R. Popplestone, et al, ‘Forming models of plane-and-cylinder faceted bodies from light stripes’, Proc. 1JCA1-75,Tbilisi,URSS (September 1975).
G. Gini and M. Gini, ‘A general purpose vision sensor’, Proc. 26th SPIE, San Diego, Ca. (August 1982).
Глава 4РАЗРАБОТКИ В ОБЛАСТИУПРАВЛЕНИЯ ДУГОВОЙ СВАРКОЙ
Распространение робототехнических систем для дуговой сварки сдерживается большой сложностью подготовки и фиксации свариваемых деталей в рабочей зоне. Наиболее перспективным методом решения возникающих при этом задач представляется использование машинного зрения. Многие компании, поставляющие на рынок робототехнические сварочные системы, разрабатывают методы визуального путевого управления роботом. Три из последующих статей описывают реальные системы, использующие такие методы управления, а четвертая посвящена разработке, финансируемой промышленными организациями.
СОВРЕМЕННЫЕ МЕТОДЫИСПОЛЬЗОВАНИЯ АНАЛИЗАТОРОВ ИЗОБРАЖЕНИЯДЛЯ УПРАВЛЕНИЯ РОБОТАМИВ ПРОМЫШЛЕННОСТИ
Ф. В и л л е р с, Фирма ''Отомзтикс" (Automatix),Соединенные Штаты Америки,
доклад на 12 Международном симпозиуме по промышленным роботам,Париж, 9—11 июня 1982 г.
’’Интеллектуальность” интеллектуальных робототехнических систем обеспечивается их способностью адаптироваться к окружающим условиям. Такая адаптация возможна только на базе использования мощных вычислительных систем реального времени и современных датчиков, в частности визуальных. В настоящей работе обсуждаются способы практического применения машинного зрения для решения задач 100%-ного контроля деталей и путевого управления роботом при поиске и захвате объектов. В статье описывается применение анализатора изображения для организации обратной связи в цикле управления при дуговой сварке. Анализирующая система формирует информацию об отклонении электрода от заданной траектории связывающего детали шва, а также о количестве металла, необходимого для заполнения зазора между деталями. Обсуждается использование системы ’’Отовижн” (Autivision) в составе промышленных систем ’’Сайбервижн” (Cybervision) и ’’Робовижн П” (Robovision II), предназначенных для решения целого класса производных задач.
Введение. Роль, которую играют системы технического зрения в расширении сферы применения промышленных роботов, была оценена широкими инженерными кругами сравнительно недавно. Эта оценка явилась результатом интенсивных исследований, проведенных учеными различных стран мира.
В настоящей статье рассматривается одна из систем технического зрения ’’Отовижн П” фирмы ’’Отомзтикс”. Излагается принцип работы системы и приводятся примеры ее использования для прослеживания сварного шва, штамповки металлических автомобильных деталей, литья под давлением и сборки печатных плат, демонстрирующие универсальность современных микропроцессорных промышленных зрительных систем.
Классы применений систем технического зрения. Используемые для управления роботом системы технического зрения чаще всего принадлежат к одному из двух типов. Первый из них — системы, предназначенные для технического контроля деталей или определения их положения при сборке, перемещении и т.д. При этом СТЗ обеспечивает снятие роботом детали с движущейся ленты транспортера (например, система КОН- САЙТ фирмы ’’Дженерал Моторе” (GM); управляет работой робота- сборщика в тех случаях, когда параметры собираемых деталей неизвест-
ны; контролирует выполнение и завершение сборочных операций (система сборки серии электромоторов АПАС фирмы ’’Вестингауз” (Westinghouse) , система ’’Сайбервижн” фирмы ’’Отомэтикс” и экспериментальная система окончательной сборки пылесосов фирмы ’’Хитати” (Hitachi). Во всех этих случаях системы технического зрения основаны на интерпретации телевизионных образов (полученных при естественном или специальном структурированном освещении) с помощью быстродействующей ЭВМ. При этом анализирующая система решает задачи распознавания детали, вычисления ее центра тяжести и параметров положения, а также передачи этой информации роботу. Все действия система выпол
няет в режиме реального времени.
Ко второму типу систем визуального управления роботом относятся системы, работающие по принципу прослеживания сварного шва при дуговой сварке. Этот тип принципиально отличается от выше рассмотренного, визуальная информация при этом используется для формирования данных о положении шва, необходимых устройствам управления роботом для уточнения траектории движения рабочего органа.
Несмотря на различия перечисленных типов систем, в каждой из них могут использоваться одинаковые телекамеры и микропроцессорные анализирующие системы (возможно с некоторыми отличиями). Для систем первого типа характерно закрепленное положение телевизионной камеры; в системах второго типа она может располагаться на рабочем органе робота.
Система технического зрения. Система "Отовижн II”, показанная на рис. 1, представляет собой промышленный вариант более ранней исследовательской разработки, выполненной в Стенфордском исследовательском институте (Калифорния). В экспериментальной системе использовалось фиксированное расположение камеры. Часть работы, связанная с установкой камеры на манипуляторе робота была выполнена в Национальном бюро стандартов. От своего предшественника система унаследовала компактный способ представления данных с помощью кодирования, описанного в [1], и мощную концепцию выделения признаков [2]. Мето
Рис. 1. Система "Отовижн II".Рис. 1. Система "Отовижн II".дика выделения признаков позволяет свести задачу распознавания объекта и определения параметров его положения к вычислению подобранных соответствующим образом геометрических признаков (обычно не более шести). Всего в системе используется около 50 различных признаков. Признак представляет собой значение, количественно отражающее какую-либо характеристику объекта. Примерами могут служить такие
Рис. 1. Система "Отовижн II".
Рис. 1. Система "Отовижн II".
Рис. 2. Блок-схема системы "Отовижн 11"Рис. 2. Блок-схема системы "Отовижн 11"Теле- колераТеле- колераСтруктурированное освещениеСтруктурированное освещение
Рис. 2. Блок-схема системы "Отовижн 11"
Рис. 2. Блок-схема системы "Отовижн 11"
Теле- колера
Теле- колера
Структурированное освещение
Структурированное освещение
признаки, как площадь, периметр, количество отверстий, большая и малая оси эквивалентного эллипса, момент инерции и т.д. Выделение признаков позволяет свести распознавание изображений или силуэтов к сравнению небольших последовательностей чисел, соответствующих признакам. Большинство задач может быть решено анализом бинарного образа. Это упрощает алгоритмы анализа и увеличивает быстродействие системы. В последнее время стали появляться также системы анализа полутоновых изображений, позволяющие решать более сложные задачи.
Важнейшей характеристикой системы технического трения является ее быстродействие. В одной из систем контроля автомобильных деталей система ’’Отовижн П” просматривает 2200 отверстий различных размеров и форм в минуту. Для повышения быстродействия системы используется высокоскоростной процессор на биполярных микросхемах, выполняющий предварительную обработку информации. Он соединен с мощным 32-разрядным арифметическим микропроцессором 68 000 фирмы ’’Моторола” (Motorola). Тактовая частота арифметического микропроцессора составляет 8 МГц, адресуемое пространство — миллион слов, памяти. Потребителям система ’’Отовижн И” поставляется в герметичном корпусе с охлаждением через теплообменник. Это обеспечивает работу системы в неблагоприятных заводских условиях (например, на сварочном или литейном участках).
Блок-схема системы ’’Отовижн 1Г’ [3] показана на рис. 2. Эта система используется не только для управления роботами, но и для 100%-ного высокоскоростного визуального контроля как больших штампованных автомобильных деталей, сходящих с пресса каждые три секунды (рис. 3), так и изготовленных методом литья под давлением деталей размером 7 мм (рис. 4) , перемещаемых перед камерой в произвольных положениях со скоростью 360 штук в минуту.
Там, где это возможно, используется встречное освещение. К сожале-
IIРис. 3. 100 %-ный визуальный техничес-кий контроль штамповок
I
I
Рис. 4. Скоростной технический контроль деталей, отлитых под давлениемРис. 4. Скоростной технический контроль деталей, отлитых под давлениемнию, во многих случаях встречное освещение использовать нельзя и при- ходится использовать освещение спереди. Такая ситуация возникает, например, при проверке деталей перед сборкой или слежением за самим процессом сборки. При использовании лазерного луча в системе прослеживания линии сварного шва организовать встречное освещение практическинию, во многих случаях встречное освещение использовать нельзя и при- ходится использовать освещение спереди. Такая ситуация возникает, например, при проверке деталей перед сборкой или слежением за самим процессом сборки. При использовании лазерного луча в системе прослеживания линии сварного шва организовать встречное освещение практическиневозможно.
Рис. 4. Скоростной технический контроль деталей, отлитых под давлением
Рис. 4. Скоростной технический контроль деталей, отлитых под давлением
нию, во многих случаях встречное освещение использовать нельзя и при- ходится использовать освещение спереди. Такая ситуация возникает, например, при проверке деталей перед сборкой или слежением за самим процессом сборки. При использовании лазерного луча в системе прослеживания линии сварного шва организовать встречное освещение практически
нию, во многих случаях встречное освещение использовать нельзя и при- ходится использовать освещение спереди. Такая ситуация возникает, например, при проверке деталей перед сборкой или слежением за самим процессом сборки. При использовании лазерного луча в системе прослеживания линии сварного шва организовать встречное освещение практически
Программирование системы технического зрения. Обычно процесс обучения современных систем технического зрения распознаванию новой детали занимает менее одного часа. Он включает в себя наведение камер таким образом, чтобы по крайней мере одна из них ’’видела” деталь или проверяемые участки большой детали независимо от расположения детали в поле зрения. Каждая деталь (часть детали) в процессе обучения отображается на экране, и оператор должен ответить на вопросы о выбираемых признаках и допустимых диапазонах изменения их значений. Диалог ведется с помощью несложного языка РЭЙЛ (RAIL — Robot Automatix Inc. Language). Для обучения распознаванию новой детали обычно требуется представить системе десять или более ее экземпляров. Зрительная система производит выделение признаков и вычисляет среднее значение и Диапазон отклонений, используемые при выборе признаков пользователем.
Простота команд языка РЭЙЛ демонстрируется приведенным ниже примером. Программа предназначена для проверки правильности монтажа кристаллов микросхем на радиаторах (рис. 5). Проверяемые детали Движутся на ленте конвейера. Допустимые отклонения представлены Максимальной погрешностью установки по оси х, то же — у и 0 (см. [4]). Программа на языке РЭЙЛ, выполняющая указанную проверку, выглядит следующим образом:
INPUT PORT 1:CONVEYOR
INPUT PORT 2: PART - DETECTOR
OUTPUT PORT 1. BAD - PART
WRITE ’’ENTER CHIP OFFSET TOLERANCE:”
READ OFFSET ... TOL
WRITE ’’ENTER CHIP TILT TOLERANCE:”
READ TILT... TOL
WAIT UNTIL CONVEYOR =ON
WHILE CONVEYOR =ON DO
BEGIN
WAIT UNIL PART ... DETECTOR =ON
PICTURE
IF XMAX (’’HEAT SINK”) - XMAX ("CHIP”» =OFFESET ... TOL AND
ORIENT (’’CHIP”) WITHIN TILT ... TOL OF 90
THEN
BAD ... PART-OFF
ELSE
BAD ... PART - ON
END
Использование в системе автоматической сборки. В числе многих выходных каналов системы ’’Отовижн П” имеется интерфейс RS-232, обеспечивающий простой способ передачи х, у, 9 и индентифицирующей информации о детали в любое достаточно совершенное устройство управления роботом. В случае использования системы ’’Сайбервижн” фирмы ’’Отомейшн” связь организуется проще, так как микропроцессор системы технического зрения может связываться с идентичным микропроцессором, используемым в устройстве управления роботом AI32tm через общую память.
На рис. 6 изображена возможная конфигурация системы ’’Сайбервижн”, использующая несколько роботов с декартовыми степенями свободы (в данном случае AID-600 фирмы ’’Отомэтикс”) и телекамер с матричными анализаторами (256X256) в качестве устройств ввода информации в систему "Отовижн И”. На рис. 7 показана более простая система, используемая в настоящее время на производстве. Робот монтирует клавиши в блок клавиатуры терминала. Телекамера используется для проверки правильности надписи на клавише и отсутствия в ней дефектов
Рис. 5. Проверка положения кристалламикросхемы на плате
Рис. 6. Возможная конфигурация системы автоматической сборки "Сайбрвижн": 1 — управляющее устройство А1—32; 2 — станция специального технического контроля; 3 — отбраковка; 4 — собранные изделия; 5 — устройства "Отовижн";6 — асинхронная транспортная система; 7 — станция смены инструмента; 8 — роботы АИД-600Рис. 6. Возможная конфигурация системы автоматической сборки "Сайбрвижн": 1 — управляющее устройство А1—32; 2 — станция специального технического контроля; 3 — отбраковка; 4 — собранные изделия; 5 — устройства "Отовижн";6 — асинхронная транспортная система; 7 — станция смены инструмента; 8 — роботы АИД-600Рис. 7. Система "Сайбрвижн", настроенная на автоматическую сборку клавиаРис. 7. Система "Сайбрвижн", настроенная на автоматическую сборку клавиатуры терминалатуры терминалаРис. 8. Система "Робовижн II" с визуальным прослеживанием сварного шваРис. 8. Система "Робовижн II" с визуальным прослеживанием сварного шва
Рис. 6. Возможная конфигурация системы автоматической сборки "Сайбрвижн": 1 — управляющее устройство А1—32; 2 — станция специального технического контроля; 3 — отбраковка; 4 — собранные изделия; 5 — устройства "Отовижн";
6 — асинхронная транспортная система; 7 — станция смены инструмента; 8 — роботы АИД-600
Рис. 6. Возможная конфигурация системы автоматической сборки "Сайбрвижн": 1 — управляющее устройство А1—32; 2 — станция специального технического контроля; 3 — отбраковка; 4 — собранные изделия; 5 — устройства "Отовижн";
6 — асинхронная транспортная система; 7 — станция смены инструмента; 8 — роботы АИД-600
Рис. 7. Система "Сайбрвижн", настроенная на автоматическую сборку клавиа
Рис. 7. Система "Сайбрвижн", настроенная на автоматическую сборку клавиа
туры терминала
туры терминала
Рис. 8. Система "Робовижн II" с визуальным прослеживанием сварного шва
Рис. 8. Система "Робовижн II" с визуальным прослеживанием сварного шва
(100%-ный контроль). Если система ’’Отовижн” обнаружит неисправную клавишу, робот ее отбраковывает. Система технического зрения может также проверять правильность захвата клавиши роботом и ее установки, но в рассматриваемой системе это не делается. Если клавиша установлена неверно, она снимается и цикл установки повторяется. В этом конкретном применении способность системы ’’Отовижн” определять параметры положения детали не используется, так как детали подаются из специального магазина.
При другом использовании той же системы ’’Сайбрвижн” система "Отовижн” применяется для управления роботом AID-600. Она определяет позиции установки нестандартных компонентов на печатной плате.
lb
Использование систем технического зрения при дуговой сварке. Структура системы ’’Робовижн” [5], предназначенной для прослеживания сварного шва, представлена на рис. 8. Неотъемлемой частью управляющего устройства ’’Робовижн” является та же самая подсистема ”Ото- вижн”. Предназначенное для установки в цехе управляющее устройство (рис. 9, справа) включает в себя ЭВМ, специализированный логический блок, электронно-лучевую трубку, клавиатуру и сервоусилители. На манипуляторе робота укреплены два волоконных световода — один подводит свет, излучаемый лазером, другой ведет к телевизионной камере в интегральном исполнении. На рис. 10 показана блок-схема системы прослеживания сварного шва ’’Робовижн П”, которая, в отличие от двухпроходной системы прослеживания шва фирмы ’’Кавасаки” (Kawasaki), выполняет все действия за один проход. Это означает, что наблюдение за процессом сварки производится в ходе его выполнения. Предшествующий сварке проход над деталью, при котором проводятся измерения или проверка геометрии детали, не используется. Однопроходная система не только дает выигрыш в скорости, но и гарантирует, что термические деформации, возникающие в ходе сварки, учитываются и компенсируются. Устройство прослеживания осматривает область, расположенную приблизительно в 4 см впереди точки сварки, и может перемещаться со скоростью до 100 см/мин. Система по воспринимаемому телекамерой изображению определяет положение середины свариваемого шва, его видимую ширину и расстояние от детали до сенсора.
Превышающее допустимые пределы отклонение фактически выполняемого шва от номинального или ожидаемого положения приводит к появлению подаваемых на сервосистему сигналов, компенсирующих ошибку по высоте и направлению, перпендикулярному к линии шва.
Рис. 9 Система "Робовижн II" с контРис. 9 Система "Робовижн II" с контроллеромроллеромРис. 10. Блок-схема прослеживания сварного шва в системе "Робовижн И" 154Рис. 10. Блок-схема прослеживания сварного шва в системе "Робовижн И" 154
Рис. 9 Система "Робовижн II" с конт
Рис. 9 Система "Робовижн II" с конт
роллером
роллером
Рис. 10. Блок-схема прослеживания сварного шва в системе "Робовижн И" 154
Рис. 10. Блок-схема прослеживания сварного шва в системе "Робовижн И" 154
Рис. 11. Детали, сваренные системой "Робовижн IIм с визуальным прослеживанием сварного шва
Все вычисления выполняет тот же микропроцессор 68000 фирмы ’’Моторола”, который используется в других приложениях системы ’’Отовижн”. В результате сигнал, подаваемый на систему управления, может корректироваться несколько раз в секунду. На рис. 11 показана практический результат сварки, при которой робот был настроен на прямолинейный шов, а уст рой ств оп ро с л е жи в ани я
формировало сигнал компенсации ошибки, организуя движение сварочного устройства по желаемой криволинейной траектории. Система пригодна для сварки внахлест, встык и
швами, заполняющими углубления различной конфигурации. На ее работу не оказывает влияние толщина свариваемого материала, необходимо только наличие видимого ребра или шва.
Считается, что по крайней мере в 30% сварочных работ роботы использоваться не могут. Их применению мешают проблемы, возникающие при подгонке деталей. Подгонку нарушают термические деформации, коробление листов металла после формирования детали и изменения размеров при плазменной резке. Применение систем прослеживания шва ведет к ускорению роста использования автоматической дуговой сварки — метода, требующего меньших затрат и дающего лучшее качество выполнения сварочных работ.
Обычно стоимость оборудования, обеспечивающего возможность прослеживания шва, не превышает трети общей стоимости робототехнической системы, поэтому его использование в условиях работы с часто Меняющимися деталями оправданно с экономической точки зрения. Другой причиной расширения использования систем визуального прослеживания шва является их надежность и универсальность, являющиеся наилуч- Шими среди подобных качеств всех известных на сегодня систем и методов прослеживания.
Заключение. Теперь, когда программируемые системы технического зрения широко применяются и стали общедоступны, будет наблюдаться быстрый рост их использования как для высокоскоростного 100%-ного контроля качества деталей, так и для управления роботами. Диапазон
систем управления простирается от простейших, распознающих объект и определяющих параметры его положения, до настоящих систем визуального управления, в которых система технического зрения включена в петлю обратной связи. Большинство из подобных применений было предсказано несколько лет назад, а их изучение велось в лабораториях разных стран. Теперь эти системы пришли в промышленные цехи, где главными требованиями к ним стали экономическая эффективность, надежность, простота программирования, большая наработка на отказ.
СПИСОК ЛИТЕРА ТУРЫ
Gleason, Gerald J. and Agin, Gerald J. “A Modular System for Sensor-Controlled Manipulation and Inspection”. Proc. 9th Int. Symp. on Industrial Robots, Washington, D.C. Society of Manufacturing Engineers, Dearborn, Michigan (March 1979).
VanderBrug, G. J , Ablus, J. S., and Barkmeyer, E. “A Vision System for Real Time Control of Robots", National Bureau of Standards. Proc. 9th Int Symp. on Industrial Robots. Washington, D.C., Society of Manufacturing Engineers. Dearborn, Michigan (March 1979).
Reinhold, A. G., and VanderBrug, G. J. “Robot Vision for Industry: The Autovision System". Robotics Age. Vol. 2 No. 3, pp. 22-28 (Fall 1980).
Franklin, James W. and VanderBrug, G. J. “Programming Vision and Robotics System with RAIL”. Robots VI Conference, Detroit, Michigan, Society of Manufacturing Engineers. Dearborn. Michigan (March 1982).
Libby. C. “An Approach to Vision Controlled Arc Welding". Conference on CAD'CAM Technology in Mechanical Engineering, Massachusetts Institute of Technology, Cambridge, Mass. (March 1982).
АНАЛИЗАТОР ВИЗУАЛЬНОЙ ИНФОРМАЦИИДЛЯ СВАРОЧНЫХ РОБОТОВ
Такао Бамба, X и с а и чи Маруяма, Э ичи Ойо,Я ш и н о р и Сига
фирма "Мицубиси Электрик" (Mitsubishi Electric Corp.), Япония
Представлено на 4 Международном симпозиуме по промышленнымроботам, Токио 7—9 октября 1981 г. Перепечатывается сразрешения Японской ассоциации пользователей промышленныхроботов
В статье описывается новый визуальный анализатор, предназначенный для коррекции траектории движения рабочего органа робота при дуговой сварке. Применяется метод проецирования светового потока, излучаемого светодиодом. Считывание и распознавание образов, соответствующих различным свариваемым объектам, выполняется с помощью двухмерного позиционного-чувствительного фотоэлемента, связанного с микропроцессором. Компоновка датчика достаточно компактна, что позволяет разместить его на манипуляторе робота.
Результаты опытной проверки анализатора виузальной информации показывают, что он вполне удовлетворяет требованиям практики.
Введение. При существующих условиях эксплуатации программируемых роботов-сварщиков отклонения размеров деталей и оснастки часто превышают допустимые величины. Поэтому при автоматической сварке приходится корректировать траекторию движения электрода, используя для ее определения некоторую сенсорную систему. Для этой цели разработаны различные датчики, но их практическое использование ограничивается низкой точностью и высокой стоимостью.
Авторы разработали новый датчик визуальной информации, удовлетворяющий требованиям, предъявляемым системой автоматической дуговой сварки. В основе работы датчика лежит метод оптического проецирования светового потока на исследуемую поверхность. Этот метод широко используется в системах распознавания трехмерных объектов. По форме линий подсвета определяются параметры положения свариваемых частей и формируется информация для коррекции траектории движения рабочего органа.
Авторам удалось добиться компактной компоновки устройства, использовав в качестве основных деталей двухмерный позиционно-чувствительный фотодиод и светоизлучающий диод (светодиод). Использование этих деталей также упрощает обработку сигнала, выполняемую восьмизарядным микропроцессором 8085 А.
Опытная эксплуатация системы на типовых свариваемых деталях показала ее пригодность для практического применения.
Метод прослеживания линии сварного шва. На рис. 1 показаны устройство нового датчика (визуального анализатора) и его зона считывания. Основные части датчика — мощный светодиод инфракрасного излу-
Рис. 1. Устройство визуального анализатора:1 — визуальный анализатор; 2 — светоизлучающий диод; 3 — детектор; 4 — система линз; 5 — траектория движения светового пятна; 6 — деталь; 7 — линия сварного шва; 8 — зона считывания; 9 — сканирующее зеркало; 10 — коллиматорРис. 1. Устройство визуального анализатора:1 — визуальный анализатор; 2 — светоизлучающий диод; 3 — детектор; 4 — система линз; 5 — траектория движения светового пятна; 6 — деталь; 7 — линия сварного шва; 8 — зона считывания; 9 — сканирующее зеркало; 10 — коллиматор
Рис. 1. Устройство визуального анализатора:
1 — визуальный анализатор; 2 — светоизлучающий диод; 3 — детектор; 4 — система линз; 5 — траектория движения светового пятна; 6 — деталь; 7 — линия сварного шва; 8 — зона считывания; 9 — сканирующее зеркало; 10 — коллиматор
Рис. 1. Устройство визуального анализатора:
1 — визуальный анализатор; 2 — светоизлучающий диод; 3 — детектор; 4 — система линз; 5 — траектория движения светового пятна; 6 — деталь; 7 — линия сварного шва; 8 — зона считывания; 9 — сканирующее зеркало; 10 — коллиматор
Рис. 2. Считывание образа методом оптического проецирования светового потока
чения, сканирующее зеркало и двухмерный позиционно-чувствительный фотодиод, снабженный соответствующей системой линз. Проходя через коллиматор, излучение светодиода проецируется на поверхность свариваемой детали. Перед тем как достигнуть поверхности, луч отражается от сканирующего зеркала, колеблющегося с постоянной частотой . Соответственно луч описывает на поверхности детали повторяющуюся линейную траекторию. Если эту траекторию наблюдать из точки, не совпадающей с источником света, то с ее помощью можно получить трехмерную информацию об объекте.
Если линия сварки представляет собой V-образное углубление (см. рис. 1), процесс считывания выполняется следующим образом (рис. 2).
На считанном образе, соответствующем профилю желоба, идущего вдоль линии сварки, имеется углубление (точка D), положение которого определяется с помощью соответствующих средств.
Вычисляется отклонение положения точки сварки (Z)) от центра считывающей плоскости.
В систему управления роботом передается сигнал отклонения, корректирующий траекторию движения рабочего органа.
С помощью визуального датчика можно также определять расстояние до детали. Так как оптическая ось считывания наклонена по отношению к оси проецирования света, базисная линия траектории движения светящейся точки AC, EF смещается с изменением относительного расстояния вверх или вниз. В частности, значение координаты У точки В траектории (на рис. 2 Уо) представляет собой относительное расстояние вдоль оптической оси считывания. Расстояние / может быть вычислено по следующей формуле:
/ = М1 -«Уо)-*, (1)
где /0 — расстояние между центром линзы и точкой пересечения оптической оси считывания и оси проецирования света, а а — постоянное значение, определяемое компоновкой датчика и оптической системой.
Метод проецирования светового потока на деталь имеет еще одно преимущество. На рис. 3 показаны различные типы швов, используемых при дуговой сварке, и соответствующие им образы, считанные визуальным датчиком. Так как для всех типов швов характерно наличие излома линии в точке соединения деталей, датчик дает возможность легко отыскивать линию сварки в любом из случаев.
На рис. 4 показан опытный образец визуального датчика. Использование светодиода обеспечивает компактность, которая, в свою очередь, позволяет размещать датчик на рабочем органе робота.
Устройство фотодатчика. Обычно в качестве анализаторов двухмерных оптических изображений применяются телевизионные камеры с матрицами фотодетекторов в интегральном исполнении. Их использование связано со следующими проблемами.
В некоторых ситуациях может потребоваться управление освещением поля зрения.
Для работы в реальном масштабе времени обработка образа,
Рис. 3. Различные типы сварных соединений и соответствующие им визуальные образыРис. 3. Различные типы сварных соединений и соответствующие им визуальные образы
Рис. 3. Различные типы сварных соединений и соответствующие им визуальные образы
Рис. 3. Различные типы сварных соединений и соответствующие им визуальные образы
составленного из множества элементов, выполняется слишком долго.
Общая стоимость пригодной для практического применения системы может оказаться слишком большой из-за необходимости использования высокопроизводительной вычислительной техники.
Эти факторы ограничивают применение телекамер в качестве зрительных сенсоров.
Чтобы избежать необходимости решать перечисленные выше проблемы, авторы использовали в качестве анализатора двухмерного изображения позиционно-чувствительный фотодиод, основанный на принципе двухмерного вторичного фотоэффекта. Этот прибор представляет собой датчик положения светового пятна, находящегося на его рабочей плоскости. Координаты по осям X и Y, соответствующие этому положению, получаются в аналоговой форме. Поскольку рабочая плоскость не разделяется на элементы, нет необходимости в организации сканирования. Положение светового пятна определяется практически без временной задержки. Вспомогательные схемы и алгоритмы обработки образов в сенсорной системе существенно упрощаются. Основные характеристики Датчика приведены ниже.
1. Характеристики двухмерного фото датчика
ХарактеристикаЗначение
, Диапазон спектральной характеристики на
1)1Уровне 10% максимального значения,нм 300-1150
itЧастота наибольшей чувствительностиX, нм900
ИрНаибольшая чувствительность, А/Вт 0,52
Чувствительность по смещению при частоте излучения X, А/Вт/см 0,80
0,30,50,30,58,5Фо то проводник13X138,5Фо то проводник13X13Нелинейные искажения зависимости ’’выходной сигнал — смещение”, %
0,3
0,5
0,3
0,5
8,5Фо то проводник13X13
8,5Фо то проводник13X13
Темновой ток при напряжении смещения 10 В, мкА
Время нарастания сигнала от 10 до 90% максимального значения при напряжении смещения 10 В и Rc = 10 кОм, мкс
Рекомендуемый режим работы
Размеры рабочей зоны, мм
Схема обработки сигнала, применяемая в датчике. На рис. 5 приведена блок-схема обработки сигнала в данной системе. На светодиод подается сигнал от импульсного генератора Ус = 10 кГц). Фотодиод улавливает свет, отраженный от свариваемых деталей. Выходные токи позиционно- чувствительного двухмерного фотодиода представляют собой непрерывные сигналы, несущие информацию о координатах расположения светового пятна на его рабочей поверхности. Сигналы поступают на вход преобразователей ”ток-напряжение”, выходные сигналы которых подаются на полосовые фильтры (/с = 10 кГц), с помощью которых полезный сигнал отделяется от различных световых помех. После демодуляции сигналы X и У подаются на вход операционных усилителей, с помощью которых компенсируется влияние флуктуаций яркости светового пятна.
Для определения положения линии сварки по считанным сигналам
К процессору устройства управления роботомК процессору устройства управления роботомРис. 5. Блок-схема обработки визуальной информацииРис. 5. Блок-схема обработки визуальной информации
К процессору устройства управления роботом
К процессору устройства управления роботом
Рис. 5. Блок-схема обработки визуальной информации
Рис. 5. Блок-схема обработки визуальной информации
Рис. 6. Поиск линии сварного шва: А — считанный образ; В — усредненное значение координаты у используется восьмиразрядный микропроцессор 8085А. После компенсации влияния яркости двухканальный сигнал (% и К) передается на вход аналого-цифрового преобразователя. Получаемые на его выходе отсчеты
через устройство управления памятью случайного доступа заносятся в оперативную память процессора. Процесс заполнения памяти синхронизирован с циклом поворота сканирующего зеркала. Это обеспечивает быстрое занесение в память информации о траектории движения светового пятна по поверхности детали (в одном цикле). Обновление описания траектории движения светового пятна происходит каждые 10 мс.
Микропроцессор определяет отклонение электрода от линии сварки и относительное расстояние от детали до визуального датчика. Алгоритмы определения этих величин описаны в следующем разделе.
Конфигурация программного обеспечения. Алгоритмы определения линии сварки довольно просты. Для упрощения обработки сигналов предположим, что ось считывания визуального датчика расположена перпендикулярно поверхности детали. Если линия сварки проходит по V- образному желобу, процедуры обработки выглядят следующим образом (см. рис. 6):
Вычисляется среднее значение координаты светового пятна по всей траектории. Это значение соответствует линии В на рис. 6.
Определяются точки пересечения траектории А с линией среднего значения В. Эти точки обозначены на рисунке р, и рг.
Определяется точка наибольшего отклонения от линии среднего значения р3.
За точку, принадлежащую линии сварки, принимается точка максимального отклонения, лежащая между Pi и р2 • В нашем случае это р3.
Использование среднего значения координаты позволяет правильно определить положение лежащей на линии сварки точки даже в том случае, когда волнообразный образ А искажен помехами. Более того, тот же Метод применим и к другим типам сварочных швов. Например, в случае использования шва типа показанного на рис. 3, а точка, лежащая на линии сварки, определяется пересечением траектории светящейся точки и линии среднего значения. В случае шва, что представлен на рис. 3, г она находится посередине между точками пересечения.
Конфигурация программного обеспечения схематически показана на рис. 7. Вначале выполняется снижение уровня помех методом плавающего среднего, т.е.
ИЛ = 1V/+ (В\- W^N (i = 1, ... ,т),(2)
61 756I61
Рис. 7. Блок-схема программного обеспеченияРис. 7. Блок-схема программного обеспечения
Рис. 7. Блок-схема программного обеспечения
Рис. 7. Блок-схема программного обеспечения
где ^ = i - е - положение светового пятна в образе, соответствующем текущей траектории; И^ = / - с — положение светового пятна в образе, соответствующем предыдущей траектории; В^ = i - е — положение пятна в текущей траектории согласно сигналам датчика; N — некоторая константа.
Такой алгоритм позволяет удалять из считанного образа случайные помехи. Далее выполняется поиск линии сварки. Нужная программа выбирается по типу сварочного шва. После этого по формуле (1) определяется расстояние между зрительным сенсором и деталью.
При включении микропроцессор проверяет состояние сенсорной системы. Выполняются проверки правильности проецирования светового луча на деталь, правдоподобности полученной информации, наличия линии сварки в поле зрения датчика.
Время, затрачиваемое на однократное выполнение всех программ, составляет менее 40 мс.
Результаты экспериментов. Чувствительность визуального датчика зависит от оптических свойств поверхности детали. К сожалению, материалы, соединяемые с помощью дуговой сварки, как правило, имеют низкие коэффициенты отражения. Это затрудняет точное определение положения светового пятна на детали. Кроме того, снижается предельное измеряемое расстояние. Была проведена серия опытов, в которых определялось влияние этих явлений на работу датчика.
На рис. 8 показаны образы, считанные при определении центра V-об-
Рис. 8. Считанные образы:
а — белая бумага; б — ржавый желез ный лист
разных желобов, изготовленных из белой бумаги (я) и ржавого железного листа (б). Оказалось, что визуальный датчик считывает правильный образ даже в наихудших условиях - когда желоб изготовлен из сильно заржавевшего железа. В других сериях экспериментов была проверена чувствительность датчика при работе с другими материалами: нержавеющей сталью, алюминием и т.д.
На рис. 9 представлена зависимость уровня выходного сигнала анализатора — датчика, от величины отклонения оси перемещения датчика от линии сварного шва. При фокусном расстоянии 90 мм размеры поля зрения составляют приблизительно 20X20 мм и можно считать, что зависимость выходного сигнала датчика от отклонения линейна во всем поле зрения.
В следующей серии экспериментов определялась характеристика линейности при измерении расстояния от датчика до поверхности детали. На рис. 10 приведена кривая, полученная при работе с деталью из заржавевшего железа. В диапазоне расстояний от 70 до ПО мм зависимость выходного сигнала от расстояния почти линейна, но на других участках, менее 70 мм и более ПО мм, линейность нарушается. В случае малых расстояний нелинейность обусловливается выходом за границы поля зрения, а в случае больших —недостаточностью отраженного светового потока, попадающего на датчик.
Несмотря на то, что возможности датчика ограниченны, его можно эффективно использовать при работе с деталями, изготовленными из самых разнообразных материалов, соединяемых любыми типами сварных швов. Он обеспечивает считывание линий подсвета с точностью не хуже 0,5 мм.
Заключение. Был описан визуальный датчик, использующий проецирование на поверхность детали светового потока. Он имеет следующие особенности:
Возможность определения данных о положении сварного шва в трехмерном пространстве.
Простое устройство.
Возможность работы со сварными швами различных типов и с Деталями, изготовленными из различных материалов.
Повышенная скорость обработки сигналов по сравнению с систе-
ния оси анализатора от линии сварного шва
₽ис. ю. Зависимость уровня выходного сигнала анализатора от его расстояния до поверхности детали
мами, использующими телевизионные камеры с матрицами фотодетекторов, выполненных в интегральном исполнении.
Малые размеры, возможность размещения на манипуляторе.
Точность считывания образов порядка 0,5 мм.
Результаты Экспериментов показали, что производительность визуального датчика достаточно высока, что весьма важно для его практического использования в интеллектуальных робототехнических системах.
РОБОТОТЕХНИЧЕСКАЯ СИСТЕМА ДУГОВОЙ СВАРКИ,УПРАВЛЯЕМАЯ НА ОСНОВЕ АНАЛИЗАВИЗУАЛЬНОЙ ИНФОРМАЦИИ
И ч и р о Масаки, фирма "Юнимейшн-Кавасаки" (Unimation-Kawa- saki), объединенная проектная группа в США; Морис Дьюнн, фирма "Юнимейшн" (Unimation Inc), США; Хидео Тода, фирма "Кавасаки хэви индастриз" (Kawasaki Heavy Industries Limited), Япония.
В статье описывается управляемая на основе анализа визуальной информации система автоматической дуговой сварки, которая может отыскивать и прослеживать линию будущего сварного шва. Рабочий цикл робота, выполняемый последовательно с каждой обрабатываемой деталью, состоит из двух частей — смотрового прохода и сварочного прохода. При выполнении смотрового прохода робот перемещает вдоль линии будущего сварного шва манипулятора с визуальным датчиком, измеряя параметры положения этой линии. Сварка выполняется во время второго прохода, который выполняется манипулятором с рабочим органом. Управление манипулятором при сварке производится на основе информации, полученной на смотровом проходе.
Введение. При использовании большинства образцов робототехнического сварочного оборудования точность положения шва на свариваемой детали довольно низка. Это не позволяет применять в промышленных условиях роботы-сварщики, не оборудованные устройствами прослеживания линии шва. Использование таких устройств позволяет отказаться от дорогостоящих операций контроля качества изделий и повысить точность положения шва до приемлемых значений. Прослеживание линии сварочного шва также дает возможность повысить качество и надежность выполнения автоматической дуговой сварки.
Авторами была предпринята попытка внедрить управляемую на основе анализа визуальной информации сварочную систему в условиях реального производства. В ходе внедрения было упрощено обслуживание, повышены рентабельность и надежность системы.
Работа системы. В работе системы можно выделить несколько процедур, последовательность выполнения которых показана на рис. И 1) обучение; 2) тренировочный проход; 3) смотровой проход; 4) сварочный проход.
В процессе обучения в систему вводятся программа и параметры начального положения манипулятора. Программа составляется на разработанном для использования в робототехнике языке ВАЛ (VAL). В языке ВАЛ имеются операторы, описывающие движения манипулятора, взаимодействие с периферийными устройствами, предназначенные для редактирования программ, выполнения математических вычислений и управления сваркой. Программа вводится оператором, использующим для этого клавиатуру терминала. Введенная программа хранится в памяти аппаратного интерпретатора языка ВАЛ. В качестве внешней памяти может использоваться накопитель на миниатюрных гибких дисках. Ввод данных о положении манипулятора обычно выполняется с помощью обучающей приставки. Параметры положения, соответствующие точке А, могут быть введены в систему следующим образом: манипулятор робота с помощью обучающей приставки переводится в положение, соответствующей точке А, и с терминала вводится HERE А. В приставке имеются тумблеры, включающие перемещение манипулятора сочленений, но и по любой из осей декартовых
Рис. 1. Схема работы системыРис. 1. Схема работы системыне только в любом из систем координат, свяне только в любом из систем координат, связанных с рабочим органом и с роботом в целом. Для любой программызанных с рабочим органом и с роботом в целом. Для любой программысварки процедура обучения выполняется однократно.
Рис. 1. Схема работы системы
Рис. 1. Схема работы системы
не только в любом из систем координат, свя
не только в любом из систем координат, свя
занных с рабочим органом и с роботом в целом. Для любой программы
занных с рабочим органом и с роботом в целом. Для любой программы
При выполнении тренировочного прохода манипулятор, снабженный рабочим органом с датчиком, перемещается вдоль линии будущего сварочного шва. Этот проход используется для запоминания шаблона (справочного образа) и занесения записи в таблицу шаблонов. Поскольку вид шаблона зависит от конфигурации сварного шва, в том случае, когда в одной детали следует выполнить сварку встык и угловой шов, в памяти должны присутствовать, по крайней мере, два шаблона. Таблица шаблонов используется для установления соответствия различных швов и шаблонов. При выполнении тренировочного прохода образ считывается в каждой из опорных точек. Если между считанным образом и последним шаблоном обнаруживается отличие, величина которого превышает некоторое пороговое значение, считанный образ записывается в качестве нового шаблона. Шаблоны и таблица шаблонов могут храниться на миниатюрном гибком диске. Так же как и процедура обучения, тренировочный проход выполняется для каждой сварочной программы только один раз.
После того, как в автоматическом режиме выполнен тренировочный проход, система готовка к работе. В отличие от обучения и тренировочного прохода рабочий цикл робота повторяется с каждой поступающей на обработку деталью. Цикл состоит из смотрового прохода и сварочного Прохода. 165
Манипулятор робота, снабженный рабочим органом с датчиком, проходит вдоль линии будущего сварочного шва, считывая образы. Точки, в которых эти образы должны быть считаны, задаются программой. Команда, задающая считывание образа через каждый 10 мм выглядит так: SENSE Ю. С помощью этой команды можно уменьшить число опорных точек и упростить процедуру обучения. Процессор образов сравнивает считанный образ с шаблоном и формирует значение отклонения от заданного положения. Нужный шаблон выбирается по таблице шаблонов. Значение отклонения (результат работы процессора образов) записывается в память интерпретатора языка ВАЛ.
По завершении смотрового прохода рабочий орган с датчиком автоматически заменяется на сварочный рабочий орган. В любой момент времени рабочий орган, не захваченный манипулятором, находится в специальном держателе. Держатель имеет гнезда для хранения сенсорного и сварочного рабочих органов. Гнезда оборудованы пневматическими зажимами, управляемыми интерпретатором языка ВАЛ.
При выполнении сварочного прохода интерпретатор языка ВАЛ определяет параметры положения сварочного органа, используя информацию, полученную при смотровом проходе.
Назначение частей системы н их взаимосвязь. На рис. 2 приведена блок-схема робототехнической системы. Рабочий орган со считывающей головкой предназначен для считывания образов и передачи их в оптоэлектронный преобразователь. В состав считывающей головки входят щелевой проектор, объектив и волоконный световод. С помощью щелевого проектора на поверхность детали проектируется узкая полоска света, которая искажается в зависимости от типа сварочного соединения (рис. 3). Изображение искаженной световой полоски считывается объективом и по волоконному световоду передается в удаленный оптоэлектронный преобразователь. В качестве последнего используется телевизион-
Рис. 2. Блок-схема визуально управляемой робототехнической системы
ная камера с матрицей в интегральном исполнении, преобразующая оптический сигнал в электрический, поступающий на вход процессора образов.
При выполнении тренировочного прохода процессор образов используется для запоминания шаблонов. Во время смотрового прохода он формирует значение отклонения рабочего органа от линии будущего сварного шва. Используемый им метод обработки образов получил название "непосредственный метод взаимной корреляции”, т.е. значения коэффициентов взаимной корреляции считываемого образа и соответствующе сдвинутого шаблона вычисляются непосредственно. Предположим, что считанный образ и шаблон лежат в одной плоскости X = У. Если параметры, задающие сдвиг (АХ, ДУ), совпадают с параметрами отклонения считываемого образа от исходного несдвинутого шаблона, взаимная корреляция считанного образа и частного образа, полученного сдвиганием шаблона на ZXX, АУ, будет максимальной. Таким образом, задача определения отклонения сводится к определению значения, сдвигающего шаблон так, что коэффициент его взаимной корреляции со считанным образом становится максимальным. Процессор образов вычисляет множество
Рис. 4. Блок-схема процессора обработкиизображений
значений таких коэффициентов взаимной корреляции, соответствующий различным сдвигающим значениям, и выбирает из их множества наибольший. Вычисления производятся специализированной ЭВМ, показанной на рис. 4—6, обеспечивающей высокую скорость работы. Специализированная ЭВМ работает под управлением микроЭВМ. Считывающая головка, оптоэлектронный преобразователь и процессор образов работают при выполнении тренировочного и смотрового проходов.
Сварочная головка и сварочное устройство работают только при выполнении сварочного прохода. В сварочной головке устанавливается электрод, электрически соединенный с силовым источником. На манипуляторе робота имеется замок, в который устанавливаются сенсорная или сварочная головки. Не используемая в настоящий момент головка находится в держателе. Замок и держатель имеют пневмопривод и управляются сигналами, выдаваемыми интерпретатором языка ВАЛ.
Интерпретатор ВАЛ связан с манипулятором (рис. 5), процессором образов (рис. 6) и периферийной аппаратурой. При обучении с клавиатуры терминала в его память вводится программа. Данные о начальном положении, в которое манипулятор переводится оператором с помощью обучающей приставки, также заносятся в память интерпретатора. При тренировочном проходе интерпретатор выдает только сигналы считывания образа. При смотровом проходе интерпретатор выдает сигналы считывания образа, передается управляющие сигналы в процессор образа и записывает в память результаты его работы. При сварочном проходе интерпретатор языка ВАЛ вычисляет параметры положения, управляющие движением сварочной головки.
Терминал с электронно-лучевой трубкой используется для организации связи оператора с интерпретатором языка ВАЛ и процессором образов. Выбор сварочного электрода и силового источника питания зависит от конкретных условий сварки.
Характеристики. Ниже приводятся некоторые характеристики системы.
Обработка с помощью непосредственного метода взаимной корреляции. На работу выбранной системы обработки образов оптические помехи влияют мало. Его недостаток заключается в необходимости выполнения большого объема вычислений, что на машине с традиционной архитектурой требует больших затрат времени. От этого недостатка удалось избавиться, разработав спецпроцессор образов. Относительно малая чувствительность к оптическим помехам обеспечивает высокую надежность работы.
Процессор образов. Для ускорения смотрового прохода нужна высокая скорость обработки образов. Для обеспечения такой скорости и снижения затрат на обработку была разработана специализированная ЭВМ.
Рис. 5, Манипулятор роботаРис. 5, Манипулятор роботаРис. 6. Процессор обработки изображений
Рис. 5, Манипулятор робота
Рис. 5, Манипулятор робота
Скрещенные детали. Во многих
случаях детали скрепляются друг
с другом с помощью сварки вручную на отдельных участках шва. Система может распознавать такие
участки и пропускать их.
Автоматическое считывание шаблонов. Вводить в систему шаблоны вручную нет необходимости. При выполнении тренировочного прохода система считывает образы и принимает решения о необходимости сохранения какого-либо из них в качестве шаблона.
Язык ВАЛ. В системе используется язык ВАЛ, специально разработанный для решения задач робототехники. Он был доработан для обеспечения взаимодействия с процессором образов и вычисления управляющих параметров положения сварочной головки.
Спецификации. Ниже приведены спецификации первого промышленного образца системы. Для удобства пользователя существует несколько вариантов системы. Например, возможно использование робота ПУМА 750 (вместо ПУМА 600) , что позволит увеличить рабочее пространство робота и вес сварочной головки. Нижеприведенные показатели также могут быть улучшены.
Точность считывания образов
Частота считывания
0,4 мм
17 точек/с
(при обычных условиях)
Скорость сварки
Зависит от сварочной головки, формы шва и т.д. Максимальная скорость перемещения рабочего органа робота ПУМА 600 равна 500 мм/с
Зона зрения
10 мм по горизонтали и вертикали
Описанная разработка выполнялась объединенной проектной группой фирмы ’’Юнимейшн” и ’’Кавасаки хэви индастриз”.
На протяжении 30 лет эти компании поддерживают тесные связи друг
с другом. Группа работала в исследовательском проектном центре фирмы ’’Юнимейшн”, расположенном на западном побережье США. Серьезную помощь разработчикам оказали их коллеги, работающие в обеих фирмах.
СПИСОК ЛИТЕРА ТУРЫ
Masaki, I., Toda, Н. ’Kawasaki Vision System’, Procs. 10th International Symposium on Industrial Robots. Milan, !FS(Publications)(March 1980).
Masaki. 1., Dunne, M J., Toda, H.. et al. 'Welding Robot with Visual Seam Tracking’, Procs. Developments in Mechanical Automated and Robotic Welding, London, The Welding Institute (November 1980).
Masaki. 1.. Dunne, M. J., Toda, H.. et al. 'Arc Welding Robot with Vision', Procs. 11th International Symposium on Industrial Robots, Tokyo, Japan Industrial Robot Association (October 1981).
СОВРЕМЕННЫЕ МЕТОДЫ ИСПОЛЬЗОВАНИЯВИЗУАЛЬНОЙ ОБРАТНОЙ СВЯЗИПРИ ДУГОВОЙ СВАРКЕТОНКИХ СТАЛЬНЫХ ЛИСТОВ
В.Ф. К л о к с и н, П.Г. Дэви, С.Г. Морган, А.Р. В а й д л е рОксфордский университет, Оксфорд, Великобритания
Доклад впервые представлен на 2 Международной конференциипо техническому зрению роботов и сенсорному управлению,Штутгарт, 2—4 ноября 1982 г.
В настоящее время для дуговой сварки в инертном газе тонких (1—2 мм) деталей, полученных штамповкой из стального листа, стандартные роботы используются редко. Это объясняется сложностью точной пригонки деталей друг к другу и фиксации их в таком положении. Износ инструмента и оснастки, коробление выполненных из тонкого листа деталей и их термическая деформация при сварке приводят к изменению размеров сборочного узла. В свою очередь, эти изменения приводят к возникновению дополнительных погрешностей позиционирования электрода относительно центра шва. Величина возникающих при сварке дополнительных погрешностей достигает 3 мм, что приводит к низкому качеству сварного шва. В настоящей статье приводится краткое описание первого варианта системы автоматического управления роботом-сварщиком. Эта система действует на основе анализа визуальной информации; она в процессе работы строит и использует семантические модели сборочного узла. Модели используются для определения отклонения параметров сборочного узла, состоящего из нескольких листовых деталей, от номинальных значений. В число проверяемых параметров входят ширина зазора вдоль линии сварки и ее горизонтальная и вертикальная составляющие. Система различает три типа сварных швов: внахлест, встык и Т-образные.
Описанная в настоящей статье методика использования визуальной обратной связи позволила уменьшить погрешность позиционирования электрода до 0,3 мм. Такой точности вполне достаточно для выполнения большинства сварочных работ с деталями из тонкого стального листа. Кроме того, предусмотрено контролирование ширины зазора, что позволяет динамически менять режим сварки.
Введение. В предыдущей работе авторов настоящей статьи [1] рассматривалась конкретная задача применения стандартных роботов для сварки штампованных из тонкого (1-2 мм) стального листа заготовок в атмосфере инертного газа. Были проанализированы два возможных метода решения этой задачи и проведена оценка материальных затрат, связанных с использованием этих методов. В первом случае предлагалось использовать обычные роботы, устраняя дополнительную погрешность позиционирования электрода традиционными методами. Во втором случае роботы предполагалось оснастить сенсорами, позволяющими корректировать как траекторию движения электрода, так и режим сварки. Оказалось, что начальные капиталовложения и экслуатационные расходы в случае использования роботов, оборудованных сенсорами, в пять раз меньше соответствующих затрат в случае использования обычных роботов повышенной точности. Уже одно такое соотношение затрат оправдывает разработку сенсорных методов управления.
В настоящей статье описывается реализация семантической визуальной обратной связи, используемой в системе управления робота-сварщика. Термин ’’семантическая” используется потому, что система строит и использует модели геометрических и видимых отношений деталей. Отличия, обнаруженные при сравнении эталонной модели и модели обрабатываемой детали, истолковываются как конкретные погрешности подгонки и закрепления деталей. На основе этих отличий формируется сигнал обратной связи в системе управления роботом. Сигнал обратной связи используется как для коррекции траектории движения рабочего органа, так и для управления режимом сварки.
Описываемый вариант системы имеет экспериментальный характер, поэтому она может сваривать только плоские детали. Осмотр и сварка выполняется на различных проходах манипулятора вдоль линии шва. Близость электрической дуги не оказывает влияния на работу сенсора, но низкая скорость действия визуального анализа не позволяет выполнять осмотр и сварку за один проход.
Описание системы. Система состоит из стандартного сварочного робота, предназначенного для выполнения сварки в атмосфере инертного газа, управляющей подсистемы и подсистемы анализа визуальной информации. В настоящее время используется промышленный робот АСЕА IRB-6, имеющий пять степеней свободы и способный нести максимальную нагрузку 5 кг. Робот оборудован приспособлением для сварки в атмосфере инертного газа. Управление роботом и сварочным приспособлением выполняется с помощью стандартного устройства управления АСЕА, построенного на базе микропроцессора ИНТЕЛ 8008. В интерфейс микропроцессора и сварочного приспособления были внесены некоторые изменения.
Управляющая подсистема в настоящей работе описывается в общих чертах. Она состоит из микроЭВМ LSI-11/23, связанной с устройством управления АСЕА последовательной линией передачи с пропускной способностью 9600 бод. Поскольку устройство управления не может выполнять преобразование координат, в управляющую подсистему введена специальная кинематическая модель. С помощью этой модели можно составлять и выполнять программы устройства АСЕА в различных системах декартовых мировых координат. Такая схема преобразования координат работает в реальном масштабе времени. Суммарная ошибка при последовательном выполнении прямого и обратного преобразований равна нулю. Система может учитывать смещение сменного инструмента относительно схвата робота. Процедура калибрования системы пользователем проста и не требует много времени. Система предоставляет возможность выполнять производительные геометрические преобразования и прослеживать произвольные пространственные кривые с интерполяцией в мировой системе координат. Поскольку сенсорная подсистема выступает в роли периферийного устройства, все преобразования координат точек образа в соответствующие им координаты звеньев манипулятора выполняются в управляющей подсистеме.
Сенсорная система состоит из ЭВМ PDP-11/23, визуального анализа-
828 830 832 нм820 830 ВМС нм800 830 860нм828 830 832 нм820 830 ВМС нм800 830 860нма)6)6)Рис. 1. Свет лазера проецируется на свариваемые детали, формируя на их поверхности изображение, показанное справа. На графиках показаны спектральные характеристики излучения лазера (с), пропускания фильтра (б) и чувствительности телекамеры. Фильтр используется для подавления излучений, не соответствующих излучению лазераа)6)6)Рис. 1. Свет лазера проецируется на свариваемые детали, формируя на их поверхности изображение, показанное справа. На графиках показаны спектральные характеристики излучения лазера (с), пропускания фильтра (б) и чувствительности телекамеры. Фильтр используется для подавления излучений, не соответствующих излучению лазера
828 830 832 нм820 830 ВМС нм800 830 860нм
828 830 832 нм820 830 ВМС нм800 830 860нм
а)6)6)
Рис. 1. Свет лазера проецируется на свариваемые детали, формируя на их поверхности изображение, показанное справа. На графиках показаны спектральные характеристики излучения лазера (с), пропускания фильтра (б) и чувствительности телекамеры. Фильтр используется для подавления излучений, не соответствующих излучению лазера
а)6)6)
Рис. 1. Свет лазера проецируется на свариваемые детали, формируя на их поверхности изображение, показанное справа. На графиках показаны спектральные характеристики излучения лазера (с), пропускания фильтра (б) и чувствительности телекамеры. Фильтр используется для подавления излучений, не соответствующих излучению лазера
тора и интерфейсного устройства. На рис. 1 схематически показан анализатор визуальной информации, в состав которого входят телекамера с прямоугольным рецепторным полем, GaAlAs — лазер инфракрасного излучения с длиной волны 830 нм и узкополосный оптический фильтр. Формируемый телекамерой видеосигнал (стандарт ПАЛ) с помощью аналого-цифрового преобразователя переводится в цифровую форму и записывается в массив, состоящий из 256X256 восьмиразрядных элементов. Совокупность десяти смежных по строке элементов соответствует приблизительно одному миллиметру рассматриваемого поля. Головка анализатора размещается на рабочем органе робота, в непосредственной близости от" сварочного электрода. Электромагнитное излучение дуги практически не оказывает влияния на работу телекамеры, а большая часть видимого спектра излучения дуги отсекается узкополосным фильтром (830 нм).
Анализатор предназначен для измерения расстояний по методу активной триангуляции. Ранее этот метод уже применялся многими исследователями для построения моделей трехмерных поверхностей [2, 3,4]. Излучение лазера, проходя через узкую щель коллиматора и цилиндрическую линзу, приобретает форму плоского пучка. Пересечение этого пучка с поверхностью детали выглядит как узкая освещенная полоска. Если оптическая ось камеры не совпадает с плоскостью пучка, то на ее фоточувстви- тельную поверхность освещенная полоска спроектируется в виде прямой или ломаной линии, форма которой зависит от рельефа детали.
Приведенные на рис. 2 образы соответствуют пересечениям светового пучка со сварными соединениями различных типов. Чем ближе некоторая
Имеется зазор
Рис. 2. Т-образное соединение и соединение внахлест. Справа показаны соответствующие им образы, считанные визуальным сенсором. По образам программы визуально- г° анализа формируют описания сегментов, используемые для распознавания типа соединения и его параметров
точка образа лежит к верхнему его краю, тем дальше от камеры находится соответствующая точка поверхности детали. Анализатор предназначен для определения положения инструмента относительно линии шва и не может использоваться для исследования шва в расплавленном состоянии. Операции обработки образов, воспринимаемых анализатором, описаны ниже.
В настоящее время настройка стандартного робота на выполнение конкретной работы и непосредственное выполнение сварки выполняются по методике, включающей три этапа.
На первом этапе задаются траектории будущих сварных швов. Эта операция выполняется по эталонной сборке в режиме ручного управления роботом. Наиболее просто задаются траектории прямолинейных швов: указываются пары их конечных точек. Систему можно усовершенствовать, введя в ее состав интерполятор дуг по трем точкам или сплайновый интерполятор кривых по четырем и более точкам. На практике это нецелесообразно, так как большой точности задания траекторий швов не требуется. Сенсорная подсистема корректирует траектории, заданные с малой точностью, сообразуясь с конкретными сборочными узлами.
Интерполяция пространственного отрезка прямой выполняется кинематической подсистемой автоматически. Волнообразные швы задаются значением амплитуды. В этом случае кинематическая подсистема автоматически формирует синусоидальную траекторию движения, лежащую вдоль линии будущего шва в плоскости, нормальной по отношению к электроду.
В автоматическом режиме выполняется осмотр опорных точек на поверхности эталонной сборочной конструкции. Управляющая подсистема перемещает анализатор по заданной на первом этапе программе над поверхностью деталей и в каждой опорной точке определяет значения параметров. В число параметров входят тип сварного соединения, положение электрода по отношению к свариваемым деталям, коэффициент заполнения шва (в случае соединения деталей с зазором). При работе с эталонной сборочной конструкцией шириной зазора в месте будущих сварных швов можно пренебречь. Выбор положения электрода относительно свариваемых деталей может выполняться автоматически, но в описываемой системе эта возможность не используется. В настоящее время при выполнении второго этапа система затрачивает 2 с на опорную точку. Это приводит к тому, что на осмотр прямолинейного участка шва система затрачивает по крайней мере 5 с. Вероятно, в следующем варианте системы осмотр опорных точек будет совмещен с заданием траекторий швов.
Выполняется сварка с визуальной коррекцией траектории движения электрода и режима в опорных точках. Этот этап повторяется для каждого обрабатываемого сборочного узла. В рассматриваемом варианте системы этап выполняется за два прохода: смотровой (За) и сварочный (36). На этапе (За) подсистема управления роботом последовательно переводит манипулятор в точки, задающие концы сварных швов. В каж- 174
Едой из этих точек анализирующая подсистема измеряет ширину зазора между свариваемыми деталями и фиксирует параметры положения электрода относительно линии шва. Полученные значения сравниваются с эталонными, полученными при осмотре эталонной сборочной конструкции. Обнаруженные отклонения используются для организации обратной связи в управляющей подсистеме, выбарабатывающей новую, скорректированную программу сварки (36). Для сокращения времени смотровой проход выполняется при том же направлении движения манипулятора вдоль швов, что и осмотр эталонной сборочной конструкции, а сварочный проход выполняется в обратном направлении.
При определении отклонения электрода от линии будущего сварного шва фиксируются погрешность отстояния (высота электрода над линией шва, измеренная вдоль оси электрода), отклонение в плоскости нормали к электроду и ширины зазора между свариваемыми деталями. Последнее значение наряду с заранее известной толщиной свариваемых деталей используется для расчета режима сварки: скорости подачи электрода и значения тока други. Вычисления выполняются по параметрической модели сварочного процесса [5] в модификации Видлера [6]. В рассматриваемой системе при выполнении шва затрачивается по две секунды на опорную точку плюс фактическое время сварки.
Следует сделать еще несколько замечаний. Во-первых, толщина свариваемых деталей должна вводиться в систему оператором. Это не слишком обременительное ограничение, т.к. толщина металла определяется при проектировании сборочного узла и к моменту сварки известна оператору. Методика визуального определения коэффициента заполнения шва используется при анализе величины зазора между свариваемыми встык деталями (см. ниже).
Во-вторых, на этапе корректирования траектории и выполнения сварки система выполняет два прохода: смотровой (За) и сварочный (36). Из-за этого влияния термической деформации деталей в момент сварки не учитывается. При выполнении рассматриваемой операции это не привело к возникновению серьезных проблем, но для повышения качества сварных швов в промышленных условиях осмотр и сварку необходимо выполнять одновременно. То, что в описываемой системе они выполняются раздельно, объясняется тем, что в ней все алгоритмы обработки визуальной информации реализованы чисто программно. Эго привело к возникновению временных задержек, не позволивших применить схему управления с контуром обратной связи, работающей в реальном масштабе времени. Для того, чтобы скорость перемещения электрода по линии шва составила 20 мм/с (с опорными точками через каждые 2 мм), время обработки образа не должно превышать 100 мс. В настоящее время разрабатывается специализированный процессор обработки образов, который обеспечит требуемую скорость вычислений. Кроме того, хотя алгоритм обработки образов и проверялся, при работающей дуге, требуется более тщательная проверка его устойчивости к создаваемым излучением дуги помехам.
Структуры данных и алгоритмы. Большая часть программ анализа
визуальной информации подсистемы написана на языке ПАСКАЛЬ [7]. Использованный компилятор ПАСКАЛЬ дает на выходе программу в кодах машины PDP-11. Небольшая часть системы (10%) написана на языке АССЕМБЛЕР, что позволило ускорить обработку визуальных образов. Алгоритмы работают с тремя уровнями представления визуальной информации. Нижний уровень представляет собой изображение. Он размещается в памяти ЭВМ в виде массива I размерностью 256X256 элементов, называемых также дискретами. Дискрет может иметь значение в диапазоне от 0 до 255. Каждому дискрету соответствует адрес, состоящий из номеров столбца и строки в матрице изображения. Например, дискрет, находящийся на пересечении строки г и столбца с обозначается I (г, с). Второму уровню представления данных соответствует т.н. ’’список пересечений”, представляющий собой массив Н размерностью 1X256, в котором хранятся номера строк матрицы образа (числа в диапазоне от 0 до 255). Затем z-элемент Н обозначается Н (z). Если задан образ, содержащий в себе освещенную полоску (см. предыдущий раздел), Н (z) по определению содержит номер строки, в которой полоска пересекает z-й столбец образа /. Если полоска вообще не пересекает столбец z. Н (z) считается неопределенным (в элемент записывается некоторое специальное значение). Массив Н можно рассматривать как определенную на множестве точек функцию переменной z, представляющую освещенную полоску, т.к. полоска не может пересекать ни один из столбцов более одного раза.
Верхний уровень представления данных называется массив сегментов. Он представляет собой массив S, в котором каждому прямолинейному участку (сегменту) освещенной полоски соответствует строка, элементы которой содержат номера строк и столбцов дискретов, содержащих концы сегмента, его длину и угол наклона. Совокупность сегментов описывает всю освещенную полоску.
Если две точки в образе лежат на изображении освещенной полоски, то может быть вычислено расстояние между соответствующими им точками на поверхности детали. При калибровании системы автоматически определяются масштабные коэффициенты (5^, Sc, Sz), имеющие значение мм/(размер дискрета). Предполагается, что внутри поля зрения системы значения этих коэффициентов не меняются.
Программное обеспечение сенсорной подсистемы предназначенно для считывания образов, преобразования данных, хранения и сравнивания сегментов и вычисления значений отклонений, передеваемых в ЭВМ управляющей подсистемы. Рассмотрим вначале операции обработки образов, выполняемые на этапе задания траекторий сварных швов (см. предыдущей раздел, 1 этап) . Эти операции выполняются в точках, соответствующих концам шва. Вначале манипулятор робота переносит камеру в такое положение, что нужная точка оказывается примерно в середине поля зрения. Для этого управляющая подсистема вырабатывает команды, смещающие камеру таким образом, что ее оптическая ось совпадает с линией, вдоль которой располагался бы электрод, находящийся над точкой конца шва в рабочем режиме. Поскольку положение оптической 176
оси камеры относительно оси сварочного электрода известно и не меняется, в кинематической модели предусмотрено соответствующее преобразование координат и перемещение манипулятора. После выполнения этого перемещения телекамера считывает образ и сенсорная подсистема записывает его- в массив /. Затем над этим образом выполняются различные операции обработки, в результате которых в базу данных подсистемы заносится информация о рассмотренной точке. Обработка выполняется в пять этапов.
Строится список пересечений. Эта операция позволяет снизить объем информации, описывающей освещенную полоску с 65 536 чисел, составляющих образ, до 256 чисел, составляющих список вхождений.
Выполняется сглаживание списка пересечений: из него удаляются помехи и случайные выбросы.
Выполняется разбиение списка пересечений на сегменты, соответствующие прямолинейным отрезкам. Это позволяет еще более сократить объем хранимой информации. Обычно число сегметнов не превышает десяти.
По взаимному расположению сегментов определяются типы их стыков. Стык, определяющий местоположение сварного шва, помечается уникальной меткой. Информация о стыках связывается с граничными точками шва.
Определяется вектор, задающий смещение электрода от линии шва. Эти вычисления выполняются в управляющей подсистеме, поскольку для их выполнения требуется преобразование координат.
На первом этапе работы системы вектор, определяющий смещение электрода от линии шва, задается оператором. Его компоненты записываются в часть базы данных, относящуюся к граничной точке, и в дальнейшем рассматриваются как эталонные.
При осмотре сборочного узла, предшествующем сварке (этап За), выполняются те же самые действия. Вычисленное значение вектора смещения электрода сравнивается с хранящимся в базе данных эталонным значением, запомненным при осмотре эталонного сборочного узла (на этапе 1). Обнаруженная погрешность используется для формирования сигнала обратной связи, корректирующего позиционирование электрода при сварке.
В следующих разделах процедуры обработки образов рассмотрены более подробно.
Построение списка пересечений
Элемент Н (0 списка пересечений получается в результате выполнения операции свертки элементов /то столбца матрицы образа с использованием дискретной линейной фильтрующей маски. Номер строки, соответствующей максимуму результата свертки, записывается в Н (/). Процедура повторяется для всех столбцов матрицы образа.
Выбор фильтрующей маски определяется несколькими критериями. Основное требование: результат свертки должен иметь наибольшее значение в элементе, принадлежащем освещенной полоске. С помощью свертки полоска отделяется от других освещенных пятен в образе (отсве-
ты на свариваемых деталях, вызванные отражением луча лазера от других деталей, излучение расплавленного металла в углублении шва, металлические брызги, попавшие в поле зрения камеры). Компоненты излучения, лежащие за пределами спектральной полосы 825-835 нм, отфильтровываются. Исследование множества реальных образов показало, что во многих из них имеются посторонние освещенные области, сравниваемые по яркости с освещенной полоской. Кроме того, освещенность полоски может меняться на всем ее протяжении. Эти причины приводят к необходимости введения порогового ограничения. Для выбора порогового значения используются гистограммы. Можно считать, что ширина поперечного сечения освещенной полоски (по направлению столбца матрицы образа) достаточно мала и при ненулевом наклоне сегмента меняется мало. Это позволяет использовать для выделения освещенной полоски операцию дифференцирования и маску фиксированной ширины. Были реализованы и проверены четыре алгоритма, и наилучший был использован в данной системе. При свертке столбцов матрицу образа используется маска, представляющая собой дискретную аппроксимацию характеристики дифференциального фильтра Гаусса [8] (далее ДФГ). Используемая дискретная аппроксимация соответствует фильтру второго порядка с нулевым средним коэффициентом передачи. Его АЧХ состоит из трех зон: средней (ширина 3, коэффициент передачи 2) и примыкающих к ней с обеих сторон боковых (ширина каждой 3, коэффициент передачи 1). Такой ДФГ и соответствующее ему семейство дискретных аппроксимаций чувствительны к импульсам, ширина которых не превышает ширину средней зоны АЧХ фильтра. Хотя фильтр имеет высокую добротность, для импульсов большой амплитуды энергией подавляемых фильтром составляющих спектра нельзя пренебречь. Несмотря на зто ограничение, на практике затруднений не возникает и в данной системе успешно используется описанный фильтр. При заданной маске свертка не требует выполнения операций умножения: выполняется девять операций сложения и одна операция двоичного сдвига. Для повышения скорости работы свертке подвергается не весь столбец матрицы образа, а только его часть, выделяемая с учетом результатов свертки предыдущего столбца. Центр ’’вырезки” и ее длина определяются по статистическим законам.
Сглаживание списка пересечений. В некоторых случаях процедура свертки может выбрать неверное значение (например, когда не соответствующие полоске светлые элементы столбца матрицы образа случайно образуют конфигурацию, сходную с полоской). Ранее уже говорилось о причинах возникновения подобных помех. Для снижения их влияния на надежность работы системы список пересечений подвергается специальной обработке. В первую очередь из него удаляются точки-выбросы и соединяются небольшие разрывы. Выделить точки-выбросы можно исходя из того, что список пересечений представляет собой профиль детали в кодированном виде, а допустимые отклонения от эталонного профиля известны. Например, значение Н (;), отличающееся от любого из соседних более чем на допустимое отклонение профиля, считается выбросом, т.к. не удовлетворяет условию непрерывности поверхности металла.
Все шумовые элементы заменяются специальным значением-маркером, означающим, что в данном столбце образа пересечение не определено. Любая смежная последовательность, включающая менее десяти элементов (1 мм), замещается маркерами, поскольку она не может иметь реального прототипа на поверхности детали. После выполнения операций сглаживания образ освещенной полоски представлен в виде связных совокупностей вхождений и связных зон неопределенности (зазоров).
На следующем шаге проверяется, не являются ли некоторые из зазоров случайными. Анализируется яркость граничных элементов зазора. Пороговое значение принимается равным 70% наименьшего из двух значений яркости граничных элементов. Затем значения яркости каждого из элементов образа, лежащих между граничными точками зазора на прямой, соединяющей их, сравниваются с пороговым значением. Обычно анализируются значения от нуля до двенадцати элементов. После выполнения операции порогового ограничения некоторые из зазоров могут исчезнуть. Эта операция служит для прогнозирования наличия пересечений внутри зазоров по сглаженному списку пересечений и использует массив I в последний раз.
Выделение сегментов. На следующем этапе работы система формирует описания линейных сегментов. Связные последовательности вхождений, выделенные на предыдущем этапе, обрабатываются рекурсивным алгоритмом списка по Поппельстоуну и Эмблеру [3]. Граничные точки связной последовательности вхождений соединяются прямой. Отыскивается точка, принадлежащая последовательности, наиболее удаленная от прямой. Если ее удаление от прямой превышает некоторое пороговое значение, то в этой точке последовательность разбивается на две последовательности, каждая из которых обрабатывается тем же алгоритмом. Рекурсия завершается, когда наибольшее отклонение от соединяющей концы последовательности прямой перестанет превышать пороговое значение (что говорит о нахождении линейного сегмента) или когда длина связной последовательности становится слишком мала. Эти критерии завершения рекурсии опираются на значения допусков на расположение и форму свариваемых деталей, известные до начала выполнения операции. В результате выполнения рассмотренного этапа формируется массив структур, описывающих линейные сегменты. В состав структуры входят следующие компоненты: пары координат граничных точек, угол наклона сегмента, длина сегмента.
Определение типов соединений. После того, как сформирован массив сегментов, необходимо определить тип сварного соединения. Рассматривается три типа соединений: встык, внахлест и Т-образное. Углы, под которыми наклонены по отношению друг к другу соединяемые детали, могут меняться. Между деталями могут возникать зазоры. Массив сегментов обрабатывается процедурой принятия решения, проверяющей выполнение геометрических и лингвистических критериев, которым Должно удовлетворять любое допустимое соединение. В первую очередь система по списку сегментов проверяет, не соответствует ли он соединению деталей внахлест. Если проверка дает отрицательный результат, сис-
тема проверяет, не является ли соединение Т-образным. Если и эта проверка заканчивается отрицательно, система не может определить тип соединения и переходит к рассмотрению следующего образа. Если система не смогла определить тип соединения в четырех последовательно рассмотренных образах, выдается сообщение об ошибке. Необходимость выполнять проверки именно в таком порядке вытекает из двух соображений: а) образ соединения внахлест представляет собой узкую полосу, вследствие чего присутствие в списке сегментов такого соединения исключает возможность обнаружения в нем же Т-образного соединения; б) соединение встык представляет собой частный случай соединения внахлест, поэтому наличие в списке сегментов Т-образного соединения исключает возможность обнаружения в том же списке соединения встык. Для всех трех типов соединений были разработаны правила распознавания, но описать их подробно не позволяет объем настоящей работы. Рассмотрим кратко распознавание соединения внехлест.
На рис. 3 показаны сегменты, образованные отражением света от поверхностей деталей, соединяемых внахлест. На нем же показано определение центра сварного шва. Для представления соединения внахлест достаточно двух определяющих сегментов: А и В. Правую граничную точку сегмента А обозначим Р1, а левую граничную точку сегмента В - Р2. Способ выбора определящей пары сегментов из списка рассматривается ниже. На рис. 3, а сегмент Е отображает кромку верхней детали. На подогнанном без зазора эталонном сборочном узле сегмент Е должен, как показано, соединять точки Р1 и Р1. Однако зачастую обрезанные кромки металлических листов представляют собой своеобразные зеркальные рефлекторы толщиной менее 2 мм, вследствие чего в том месте образа, где должен быть выделен сегмент Е, наблюдается сильное расплывание изображения. Чтобы справиться с этим затруднением, система вначале выбирает сегменты А и В (см. ниже), а затем использует в качестве сегмента
б)б)Рис. 3. Сегменты, выделенные из образа эталонного сборочного узла — сварного соединения внахлест (а). Кружком отмечено положение центра сварного шва. Сегменты соединения внахлест с зазором (6) . Сегмент, показанный штриховой линией, строится с использованием модели, положение центра шва вычисляется. Возможные варианты сочетаний сегментов, соответствующих соединений внахлест (в).Рис. 3. Сегменты, выделенные из образа эталонного сборочного узла — сварного соединения внахлест (а). Кружком отмечено положение центра сварного шва. Сегменты соединения внахлест с зазором (6) . Сегмент, показанный штриховой линией, строится с использованием модели, положение центра шва вычисляется. Возможные варианты сочетаний сегментов, соответствующих соединений внахлест (в).
б)
б)
Рис. 3. Сегменты, выделенные из образа эталонного сборочного узла — сварного соединения внахлест (а). Кружком отмечено положение центра сварного шва. Сегменты соединения внахлест с зазором (6) . Сегмент, показанный штриховой линией, строится с использованием модели, положение центра шва вычисляется. Возможные варианты сочетаний сегментов, соответствующих соединений внахлест (в).
Рис. 3. Сегменты, выделенные из образа эталонного сборочного узла — сварного соединения внахлест (а). Кружком отмечено положение центра сварного шва. Сегменты соединения внахлест с зазором (6) . Сегмент, показанный штриховой линией, строится с использованием модели, положение центра шва вычисляется. Возможные варианты сочетаний сегментов, соответствующих соединений внахлест (в).
Е расстояние между Р\ и Р2, а не информацию, которая может появиться в образе. В этом случае построитель гипотезы о вхождении заполнит все дискреты, лежащие на прямой между Р1 и Р2. (если нет зазора), не анализируя информацию образа. При осмотре эталонного сборочного узла длина отрезка Е пропорциональна толщине металлического листа. Угол используется для описания линии, гипотезу о наличии которой требуется построить при осмотре реального сборочного узла (возможно, с зазором между свариваемыми деталями). На рис. 3, б показано использование угла ф в случае соединений деталей с зазором.
В каждом наборе сегментов кружками отмечено предполагаемое местонахождение центра сварного шва. На рис. 3, а центр находится в углу, образованном нижним листом и кромкой верхнего листа. Это точка Р2, лежащая на пересечении сегментов Е и В. То же относится и к рис. 3, б, но на нем имеется часть сегмента В, продолжающаяся влево за точку Р2. Эта часть сегмента соответствует части освещенной полоски, видимой через зазор на нижней поверхности.
Соединение внахлест можно рассматривать с двух возможных направлений, а значит, учитывая возможность возникновения зазора, существуют четыре типа соответствующих ему сочетаний линейных сегментов. Для того, чтобы выделенный из образа список сегментов соответствовал соединению внахлест, необходимо и достаточно, чтобы два его сегмента наибольшей длины удовлетворяли следующим условиям:
Длины сегментов А и В превосходят некоторое пороговое значение.
Имеется возможность определить, с которой стороны от сварного шва находится верхняя деталь. При определении рассматриваются лежащие в плоскости образа точки Р1 и Д2 и углы наклона сегментов А и В. Только при соединении внахлест справа или слева от шва можно обнаружить поверхность накрывающей детали.
Абсолютное значение угла, образуемого сегментами А и В, не превышает некоторого порогового значения. По этому критерию соединения внахлест отделяются от Т-образных.
Вертикальное смещение Р2 относительно Р1 не должно превышать порогового значения и не должно быть меньше толщины металла. Это расстояние измеряется вдоль столбца матрицы образа, что соответствует глубине, измеренной вдоль оптической оси.
Для распознавания Т-образных соединений и соединений встык используются другие наборы правил. После того, как по списку сегментов определен тип соединения, в часть базы данных, соответствующую осматриваемой опорной точке сварочной программы, заносятся значения углов наклона сегментов А и В и местонахождение сварного шва. Для соединения внахлест заполняются также коэффициент толщины металла (расстояние от Р1 до РТ) и угол р.
Вычисление отклонений реального сборочного узла от эталонного. На этапе выполнения сварки информация, собранная на этапе задания траекторий швов (наклоны сегментов А и В, оценка положения центра пт а и т.д.) рассматривается как модель, с которой сравниваются результаты осмотра конкретного сборочного узла. Система пытается установить
соответствие модели и набора сегментов, выделенных из образа, считанного при выполнении смотрового прохода. Будем считать, что компонентами модели являются переменные : НАКЛОН-СЛЕВА (полученное ранее значение наклона сегмента Л), НАКЛОН-СПРАВА (полученное ранее значение наклона сегмента Д), пара (сг, сс) — (строка и столбец, на пересечении которых находится центр сварного шва) и р (измеренный угол, образованный при соединении внахлест нижней деталью и кромкой верхней детали. После выделения из образа, соответствующего рассматриваемой точке сборочной единицы, списка сегментов система ищет сегменты А и В, удовлетворяющие следующим условиям:
абсолютные значения разностей углов наклона сегментов А и В и переменных НАКЛОН-СЛЕВА и НАКЛОН-СПРАВА соответственно не превышает некоторого предельного значения;
зазор, определенный в сборочном узле, а также ошибки позиционирования электрода в горизонтальной и вертикальной плоскостях не должны превышать некоторого значения. Для определения их значений вычисляется оценка положения центра шва (sr, sc). Угол р используется, как описано выше, для определения центра сварного шва при соединении внахлест. Величина зазора и погрешности положения электрода по вертикали и горизонтали определяются сравнением (sr, sc) и (сг, сс). На рис. 4 показано, как такое сравнение выполняется при соединении деталей внахлест. Аналогичная методика используется и при соединениях встык, и при Т-образных соединениях. Следует отметить, что значение зазора измеряется по горизонтальной оси образа, что соответствует проекции зазора на плоскость, нормальную по отношению к сварочному электроду. Определить величину зазора можно и другим способом, например рассматривая величину расстояния от кромки поверхности накрывающей
детали до центра шва.
Если система не может обнаружить сегменты, удовлетворяющие требованиям модели и позволяющие установить ее соответствие с осматриваемой точкой на сборочном узле, попытка установления соответствия повторяется со следующим образом. Если при обработке четырех последовательных образов соответствие не установлено, система выдает сообщение об ошибке и отбраковывает сборочный узел.
■■■ Сегменты эталонной сборочной единицы ™ Сегменты реальной сборочной единицы■■■ Сегменты эталонной сборочной единицы ™ Сегменты реальной сборочной единицыПри проверках, определяющих соответствие эталонного и реального сборочных узлов, используется ряд пороговых значений. Эти значения соответствуют допустимым отклонениям размеров сборочных узлов, изготовленных из стального листа. Пороговые значения извест-
■■■ Сегменты эталонной сборочной единицы ™ Сегменты реальной сборочной единицы
■■■ Сегменты эталонной сборочной единицы ™ Сегменты реальной сборочной единицы
Рис. 4. Взаимосвязь изменений зазора д, погрешности положения электрода по вертикали s и горизонтали г, коэффициента толщины металла h
ны заранее и в процессе работы не меняются, поэтому нет необходимости определять их автоматически при осмотре эталонного сборочного узла.
Результаты. Работоспособность описанной системы проверялась более чем на ста различных сборочных узлах. В составе этих сборочных узлов, изготавливаемых из тонкого стального листа, были сварные соединения всех типов. Подавляющее большинство швов в промышленных сборочных узлах соответствовали соединениям внахлест и Т-образным, поскольку эти типы швов наиболее часто используются в современном автомобилестроении. При работе системы ошибки позиционирования электрода в 3 мм корректировались до 0,3 мм (20% ошибок - до 0,1 мм), что близко к предельной разрешающей возможности системы. Полученные значения отклонения существенно лучше допустимого на практике значения 0,5 мм. В некоторых случаях исправлялись и большие отклонения электрода (от 3,0 до 5,0 мм), хотя использовать систему в таком режиме заранее не предполагалось. Система проверялась в непосредственной близости от работающей электрической дуги (несколько см), и никаких помех обнаружено не было. Из-за ограниченной вычислительной мощности системы коррекция траектории выполнялась только в граничных точках швов. Прослеживание швов в реальном масштабе времени не использовалось. Для демонстраций системы в ней был предусмотрен специальный режим. При работе в этом режиме манипулятор робота перемещался вслед за небольшой деталью, находящейся в руке у оператора. Из-за задержек, вносимых при обработке образов, время реакции составляло около 2 с.
Зазоры между свариваемыми деталями измерялись с точностью до 0,3 мм. Однако в 30% случаев оценка зазора превысила действительную более чем на 0,3 мм. Были отмечены случаи, когда для зазора 0,5 мм ошибочно выдавалась оценка 2 мм. Это явление объясняется упрощенностью и низкой точностью алгоритма определения положения граничной точки сегмента, примыкающего к сварному шву. В следующем варианте системы предполагается исправить эти ошибки, но для этого потребуется увеличение вычислительной мощности системы.
Общее время, необходимое для обработки образа и вычисления составляющих погрешности позиционирования электрода, составило приблизительно 1,75 с. Из этого времени 99% уходит на выполнение операции свертки при построении списка пересечений. В настоящее время разрабатывается микросхема для аппаратной реализации этой функции за время, сравнимое с длительностью цикла развертки одного телевизионного кадра.
СПИСОК ЛИТЕРА ТУРЫ
П] Clocksin, W F, Barratt, J W, Davey, P G, Morgan, C G, and Vidler, A R. Visually guided robot arc-welding of thin sheet steel pressings, Proc 12th Int. Symp. Industrial Robots. Paris, IPS (Publications) (June 1982).
Ul Agin, G J, and Binford, T O, Computer description of curved objects, Proc 3rd Int. Conf. Artificial Intelligence. Stanford, USA (1973).
Popplestone, R J, and Ambler, A P, Forming body panels from range data, Research Report 46, Department of Artificial Intelligence, University ofEdinburgh (1977).
Hill, J, and Park, W T. Real-Time control of a robot with a mobile camera, Proc. 9th Int Symp. Industrial Robots. Washington D.C., Society Manufacturing Engineers, (March 1979).
Hunter! J J, Bryce, G W, and Doherty, J. On-line control of the arc welding process, Proc. Int. Conf. Developments in Mechanised. Automated, and Robotic Welding, London, Welding Institute (November 1980).
Г л а в a 5АВТОМАТИЧЕСКАЯ СБОРКАИ ПОДАЧА ДЕТАЛЕЙ НА ОБРАБОТКУ
Автоматическая роботизированная сборка только начинает внедряться в промышленную практику. Использование технического зрения может сыграть важную роль в ускорении этого процесса. Следующие четыре статьи описывают управление роботом, процессом сборки и подачей деталей на обработку на основе анализа визуальной информации.
ИНТЕЛЛЕКТУАЛЬНЫЙ РОБОТ-СБОРЩИК
Мичинага Коно, Хироси X орино, Мицунобэ И с о бэ,Лаборатория инженерных исследований, фирма "Хитати", Япония.
Перепечатывается из журнала "Хитати Ревю", т. 30 (1981), №4,с. 211—216, фирма "Хитати", Япония
В работе описана экспериментальная интеллектуальная робототехническая система, предназначенная для выполнения сборочных операций. В ее состав входят два робота с многозвенными манипуляторами и система анализа визуальной информации. Управляющая система, координирующая работу двух манипуляторов, используя методы технического зрения, определяет параметры положения деталей, расположенных случайным образом. Разработан новый принцип построения робота. На основе базовой модели, имеющей шесть степеней свободы, можно строить манипуляторы с различной конфигурацией звеньев. Для выполнения сложных операций управления (визуального взаимодействия, координации работы нескольких роботов) использована иерархическая структура управления, в состав которой входят два микропроцессора. Для упрощения составления программ, описывающих такие операции, был разработан специальный язык. Использующая методику неполного сравнения СТЗ оказалась вполне пригодной для использования в робототехнике.
Процессор верхнего Процессор верхнего уровняI' f| уровняПроцессор верхнего Процессор верхнего уровняI' f| уровняСогласованная работа нескольких роботовСогласованная работа нескольких роботовЯзык управления роботомЯзык управления роботомПроцессов обработки изображенийПроцессов обработки изображенийПроцессор нижнего уровняПроцессор нижнего уровняПроцессор нижнего уровняПроцессор нижнего уровняИерархическая структура управленияИерархическая структура управленияОбрабатывающая ЭВМОбрабатывающая ЭВМРобот с многозвенным манилу- визуальное взаимо- лятором с шестью степенями - действие свободыРобот с многозвенным манилу- визуальное взаимо- лятором с шестью степенями - действие свободы•ис. 1. Конфигурация системы интеллектуального робота-сборщика и отличительные черты робота•ис. 1. Конфигурация системы интеллектуального робота-сборщика и отличительные черты робота
Процессор верхнего Процессор верхнего уровняI' f| уровня
Процессор верхнего Процессор верхнего уровняI' f| уровня
Согласованная работа нескольких роботов
Согласованная работа нескольких роботов
Язык управления роботом
Язык управления роботом
Процессов обработки изображений
Процессов обработки изображений
Процессор нижнего уровня
Процессор нижнего уровня
Процессор нижнего уровня
Процессор нижнего уровня
Иерархическая структура управления
Иерархическая структура управления
Обрабатывающая ЭВМ
Обрабатывающая ЭВМ
Робот с многозвенным манилу- визуальное взаимо- лятором с шестью степенями - действие свободы
Робот с многозвенным манилу- визуальное взаимо- лятором с шестью степенями - действие свободы
•ис. 1. Конфигурация системы интеллектуального робота-сборщика и отличительные черты робота
•ис. 1. Конфигурация системы интеллектуального робота-сборщика и отличительные черты робота
$ Введение. Разработка системы визуального управления на основе новейших достижений в исследованиях робототехнических сборочных систем была вызвана необходимостью повышения гибкости процесса автоматической сборки.
Экспериментальная система состоит из двух роботов с многозвенными манипуляторами и системы визуального взаимодействия. Рис. 1 подчеркивает ее отличительные особенности: 1) новую схему многозвенного манипулятора, построенную по модульному принципу; 2) координацию действий двух роботов; 3) управление движением роботов на основе визуальной информации; 4) новый язык, облегчающий составление программ для роботов; 5) иерархическое построение системы управления, в состав которой входит многопроцессорная вычислительная структура, обеспечивающая функционирование системы.
Первая демонстрация системы состоялась на проводившейся в ноябре 1980 г. в Токио промышленной выставке, посвященной 70-летию со дня основания фирмы ’’Хитати". Система выполняла сборку игрушечных поездов (см. рис. 2).
Манипулятор. Оба робота, входящие в состав системы, одинаковы ио характеристикам и структуре, поэтому в данном разделе приводится описание только одного из них. Манипулятор робота имеет многозвенную структуру, звенья которой аналогичны частям руки человека (см. рис. 3, а). Поскольку робот предназначен для выполнения сборочных операций над небольшими сборочными узлами, значение предельной нагрузки было выбрано равным 3 кг. Для приведения манипулятора в движение используются сервомоторы постоянного тока, наиболее удобные для перемещения небольших грузов. Данные робота приведены ниже.
Многозвенная63 кг, включая вес инструмента10 кг1,2 м/с± 0,1 ммСервомотор постоянного токаМногозвенная63 кг, включая вес инструмента10 кг1,2 м/с± 0,1 ммСервомотор постоянного тока
Многозвенная
6
3 кг, включая вес инструмента
10 кг
1,2 м/с
± 0,1 мм
Сервомотор постоянного тока
Многозвенная
6
3 кг, включая вес инструмента
10 кг
1,2 м/с
± 0,1 мм
Сервомотор постоянного тока
Конфигурация
Количество степеней свободы Нагрузка Статическое усилие, развиваемое на рабочем органе Максимальная скорость перемещения рабочего органа
Точность повторного позиционирования Привод
Робот имеет шесть степеней свободы. Для наиоолее распространенных случаев использования роботов (дуговая сварка, перенос деталей) достаточно пяти степеней свободы, так как в этих случаях робот выполняет заранее заданные движения, возможность выполнения которых доказана на этапе обучения. Но для интеллектуального робота-сборщика нужны шесть степеней свободы, поскольку выполняемые им движения не всегда предусмотрены заранее: они определяются сообразно обстоятельствам. Это требование обусловлено необходимостью обеспечить независимость перемещений робота, соответствующих шести параметрам положения объекта в трехмерном пространстве. Такое соответствие позволяет обеспечить перевод рабочего органа в произвольное положение, определяемое по информации, полученной системой анализа изображений, не выходя за границы технических ограничений. Исходя из этих соображений для интеллектуального робота-сборщика была выбрана схема манипулятора с
шестью степенями свободы.шестью степенями свободы.а)а)Рис. 3. Размеры звеньев и схема сочленений в манипуляторе робота:a — размеры звеньев — 1 — основание, 2 — поворотная колонна, 3 — плечо, 4 — предплечье 1, 5 — предплечье 2, 6 — запястье; б — распределение сочленений — 1 — пояс, 2 — плечо, 3 — локотьРис. 3. Размеры звеньев и схема сочленений в манипуляторе робота:a — размеры звеньев — 1 — основание, 2 — поворотная колонна, 3 — плечо, 4 — предплечье 1, 5 — предплечье 2, 6 — запястье; б — распределение сочленений — 1 — пояс, 2 — плечо, 3 — локотьРис. 2. Интеллектуальный робот-сборщик на экспозиции техничес-кой выставки фирмы "Хитати"
шестью степенями свободы.
шестью степенями свободы.
а)
а)
Рис. 3. Размеры звеньев и схема сочленений в манипуляторе робота:
a — размеры звеньев — 1 — основание, 2 — поворотная колонна, 3 — плечо, 4 — предплечье 1, 5 — предплечье 2, 6 — запястье; б — распределение сочленений — 1 — пояс, 2 — плечо, 3 — ло
коть
Рис. 3. Размеры звеньев и схема сочленений в манипуляторе робота:
a — размеры звеньев — 1 — основание, 2 — поворотная колонна, 3 — плечо, 4 — предплечье 1, 5 — предплечье 2, 6 — запястье; б — распределение сочленений — 1 — пояс, 2 — плечо, 3 — ло
коть
После сравнения различных конфигураций звеньев манипулятора была выбрана схема с узлом вращения на предплечье, показанная на рис: 3, б. Ее выбор был обусловлен тем, что оси вращения предплечья, вращения и качания запястья пересекаются в одной точке и, рассматриваемые совместно, кинематически эквивалентны сферическому сочленению с тремя степенями свободы. Эта эквивалентность существенно упрощает преобразование координат в алгоритмах управления роботом и уменьшает время вычислений.
Обзоры способов применения роботов в промышленности показывают, что многие операции могут выполняться роботами с числом степеней свободы манипулятора меньше шести. Использование на таких операциях роботов с шестью степенями свободы манипулятора экономически невыгодно. Для обеспечения окупаемости для роботов некоторых типов, широко используемых в промышленности, была разработана концепция модульной структуры робота. Однако из-за существенных различий в структуре, модульные роботы могли работать только в декартовой, цилиндрической и сферической системах координат. Для интеллектуального робота-сборщика была разработана и реализована новая структура многозвенного манипулятора, позволяющая выбирать любое необходимое сочетание степеней свободы. При этом базовая модель имеет шесть степеней свободы, а полученные на ее основе модели могут ограничиваться меньшим числом. Например, манипулятор робота с зафиксированным положением запястья может быть получен путем удаления мотора привода оси качания запястья и фиксацией звена на этой оси.
Экономически обоснованный уровень роботизации целого ряда операций может быть достигнут использованием роботов, каждый из которых отвечает специфическим требованиям. Эти роботы составляют ряд модификаций базовой модели: от простейших манипуляторов для переноски деталей до универсальных моделей с шестью степенями свободы.
Система управления. Для управления многозвенными роботами требуются более сложные процедуры, чем для управления роботами, работающими в декартовых или цилиндрических координатах. Даже при прямолинейном движении рабочего органа вращательные движения звеньев довольно сложны. Для точного управления такими движениями при ограниченной длительности рабочего цикла робота должны быть выполнены следующие действия: 1) интерполяция заранее определенной траектории между исходным и конечным положениями рабочего органа; 2) преобразование координат, задающих положение рабочего органа в угловые перемещения каждого из звеньев манипулятора; 3) генерация программами управления команд, задающих скорость углового перемещения звеньев, и передача их на сервомеханизмы.
Кроме перечисленных действий система управления должна обрабатывать образы, сформированные при анализе визуальной информации, и по результатам этой обработки генерировать траектории движения робота. Установление связи между устройствами управления роботами и координация совместной работы нескольких роботов тоже входят в функции системы управления. Кроме того, поскольку длительность рабочего цик-
ла, в течение которого должны быть выполнены все эти действия, жестко связана с точностью работы робота, это время должно быть минимальным. Для выполнения операций управления было разработано новое устройство, в состав которого входят два микропроцессора на каждый робот.
Решение перечисленных выше задач распределено между двумя иерархически связанными микропроцессорами HMCS-6S00. Процессор верхнего уровня управляет работой системы в целом, обрабатывает информацию, получаемую в процессе обучения, выполняет интерполяцию траекторий и преобразования координат, организует связь с процессорами распознавания визуальной информации и с устройством управления другого робота. Процессор нижнего уровня выполняет сервоуправление звеньями. Процессоры верхнего и нижнего уровня связаны общей оперативной памятью прямого доступа. Блок-схема аппаратной части устройства управления приведена на рис. 4.
Процессор нижнего уровня, предназначенный только для выполнения программ управления, решает меньше задач, чем процессор верхнего уровня. Это позволило применить методику разделения цикла управления: за один цикл работы процессора верхнего уровня процессор нижнего уровня выполняет процедуры управления дважды. Вследствие сокращения длительности рабочего цикла процессора нижнего уровня улучшились характеристики системы управления.
В результате применения двухпроцессорной иерархической структуры управления и разделения задач длительность рабочих циклов системы в целом удалось сократить до 32,5 мс и 17,6 мс соответственно. Эти значения показывают, что несмотря на дополнительные задачи (визуальное взаимодействие, координацию действия двух манипуляторов), разрабо-
Рис. 4. Блок-схема аппаратной части устройства управления роботом
тайная система управления не уступает в быстродействии аналогичным системам обычных роботов, в которых решаются в основном задачи сервоуправления. Это дает основание полагать, что описанная система управления пригодна для управления интеллектуальным роботом-сборщиком.
Язык робота. Программирование обычных роботов, работающих по принципу воспроизведения, обычно выполняется проводкой манипулятора по требуемым траекториям движения с помощью пульта оператора (обучающей приставки). Использование этого метода оправдано только тогда, когда в момент обучения имеется полная информация о всех движениях робота. Если система управления роботом работает на основе информации, получаемой от сенсоров, и синхронизирует свою работу с работой других роботов, принимая в процессе функционирования некоторые решения, невозможно составить программу для такого робота, пользуясь только методом обучения. Необходимо использование текста программы в той или иной форме.
Исходя из этих соображений, для описываемой робототехнической системы был разработан специальный язык. Команды этого языка можно разделить по функциональному назначению на три группы: команды обучения, команды программы и команды монитора. Конфигурация программной системы, в состав которой входит язык робота, показана на рис. 5.
Команды обучения используются для описания действий, выполняемых вручную, а также для ввода и модификации информации о положении робота. Эти команды вводятся в устройство управления нажатием кнопок на обучающей приставке. Возможно выполнение ручных операций четырех типов. Во время обучения они могут выполняться в любых сочетаниях. В состав этих операций входят: 1) независимое перемещение звеньев манипулятора; 2) перемещение руки манипулятора и запястья в декартовых координатах, связанных с землей; 3) перемещение руки ма-
Рис. 5. Блок-схема программного обеспечения
нипулятора в декартовых координатах, связанных с запястьем; 4) перемещение руки манипулятора в декартовых координатах, смещенных произвольным образом.
Такой набор ручных операций соответствует восприятию движений робота человеком, что позволяет существенно уменьшить затраты усилий на этапе обучения.
Команды программы используются для описания последовательностей движений робота и вводятся с управляющей консоли. Команды программы, составляющие большую часть программы робота, делятся на четыре категории, различающиеся по функциональному назначению:
Движение. Существует несколько команд группы движения, таких, как линейная интерполяция с одновременным управлением по всем осям, Движения робота могут быть описаны произвольной последовательностью команд движения, а богатый выбор этих команд облегчает составление подобных описаний.
Визуальное взаимодействие и переключение. С помощью функций визуального взаимодействия и функций переключения периферийного оборудования можно запрограммировать формирование позиционирующей информации по данным зрительной системы и синхронизирование периферийных устройств.
Управление выполнением программы. Команды управления выполнением программы используются для описания синхронизации работы нескольких роботов, повторяющихся движений, условных переходов и остановок. С помощью этих команд составляются программы сложной структуры.
Арифметика и логика. Реализованы команды арифметических вычислений для расчета позиционирующих значений. Это позволило обеспечить ’’сдвиг” позиционирующих значений при выполнении программы, Такая операция оказывается очень полезной, например, при работе с палетами, когда одна и та же последовательность действий выполняется в различных точках, равноотстоящих друг от друга.
Команды монитора предназначены для задания режима работы устройства управления. В их число входят команды: 1 — редактирование и модификация программы движений робота; 2 — выбор режимов работы и обучения; 3 - запись программы и позиционирующей информации на кассету с магнитной лентой и обратное считывание с нее; 4 — отображение программы и позиционирующей информации на терминале; 5 - восстановление после ошибок.
В режимах редактирования, модификации, обучения и работы возможно выполнение части программы, пошаговое ее выполнение и альтернативная обработка. Эти возможности сильно упрощают отладку программ.
В числе описанных выше функций языка имеются функции визуального взаимодействия и координации действий нескольких роботов. Комбинируя команды ввода визуальной информации с командами условных переходов, можно легко запрограммировать такие сложные операции, как: 1 — распознавание параметров положения деталей, расположенных случай- 190
ным образом; 2 — выбор сборочных операций в зависимости от положения и ориентации конкретных деталей; 3 — компенсация ошибки позиционирования детали, захваченной манипулятором при точном сопряжении с другими деталями.
С другой стороны, описание процедур, координирующих совместную работу нескольких роботов, упрощается введением специальной языковой структуры. Она предназначена для описания совокупности движений нескольких роботов в рамках одной программы. В процессе трансляции исходная программа автоматически сегментируется на программы отдельных роботов. Для обеспечения согласованности действий отдельных роботов в их программы автоматически вставляются команды синхронизации.
Техническое зрение робота. Основной целью, к которой стремились авторы, используя в системе управления подсистему анализа изображений, было доказать возможность ее использования в качестве быстродействующего, надежного и экономически оправданного средства технического зрения. Для ускорения вычислений была использована методика частичного сопоставления образов. Поскольку система носит экспериментальный характер, на детали, с которыми она работает, были нанесены кольцевые линии-мишени.
На рис. 6 показана структура системы анализа изображений. ЭВМ ХИДИК-80 (WDIC-80) с 32К словами оперативной памяти используется для управления процессором обработки изображений, выполнения различных процедур распознавания и связи через интерфейсы с устройствами управления роботами. Телевизионные камеры смонтированы на несущей раме, расположенной над рабочим полем роботов, и направлены вниз, С их помощью система считывает двухмерные образы находящихся внизу деталей. Процессор анализа образов представляет собой специально разработанное устройство для быстрой обработки образов и состоит из памяти обрабатывающих устройств, связанных друг с другом информационной шиной. Устройство обработки аналоговой информации получает сигналы с телевизионных камер. Эти сигналы переводятся в цифровую форму с
Рис. 6. Структура системы технического зрения
помощью аналого-цифрового преобразователя и схем двоичной логики. Пороговый уровень срабатывания логических схем может устанавливаться программно.
Запоминающее устройство используется для временного хранения информации об анализируемых образах. Устройство обработки двоичного образа имеет в своем составе четыре счетчика и схему для частичного сопоставления образов емкостью 16 XI6 элементов. Наличие счетчиков позволяет выполнять измерения различных величин: площади, ширины образа и т.д. Арифметико-логическое устройство выполняет сложение, умножение, логические операции и интегрирование. Блок дисплеев управляет устройствами отображения исходных аналоговых образов, бинарных образов и образов, хранимых в памяти.
В ходе демонстрации на технической выставке выполнялись операции сборки игрушечного поезда. При этом интеллектуальный робот-сборщик визуально определял положение и ориентацию тележки и корпуса локомотива, лежащих в рабочем поле отдельно друг от друга в случайно выбранных местах. На крышку и борта корпусов и на верхнюю часть тележки были нанесены мишени. На каждой из сторон корпуса было по три мишени, расположенные различным образом. По расположению мишеней определялось, какой стороной кверху лежит корпус, и вычислялись параметры его положения. Во избежание ошибочного распознавания, которое могло произойти в случае попадания в поле зрения мишеней, нанесенных на различные детали, выполнялись специальные проверки расстояний между отдельными деталями.
Как следствие использования различных способов захвата деталей рабочим органом и ограниченной разрешающей способности упомянутых выше процедур распознавания могут возникнуть погрешности позиционирования. Их можно компенсировать с помощью системы технического зрения, рассматривая положение мишеней на захваченной детали с близкого расстояния. При этом определяется отклонение мишени от положения, заданного в процессе обучения. До того как деталь будет помещена на нужное место, по результатам измерения отклонения формируются сигналы, компенсирующие погрешность. Эти сигналы подаются на устройство управления роботом.
Заключение. Была описана экспериментальная интеллектуальная сборочная робототехническая система, в состав которой входят два многозвенных робота и подсистема технического зрения. Система управления, вобравшая в себя опыт предыдущих разработок, закладывает технологическую основу для дальнейших исследований и развития роботизированной сборки и родственных ей операций. Дальнейшие усилия разработчиков направлены на реализацию более практических вариантов всех частей системы, а именно: манипуляторов, системы управления, системы технического зрения.
ВИЗУАЛЬНОЕ УПРАВЛЕНИЕ
ПРОСТЫМИ СБОРОЧНЫМИ ОПЕРАЦИЯМИ
П. С а р а г а, Б. М. Джонс, Исследовательская лабораторияфирмы "Филипс", Великобритания
Перепечатывается из журнала " Диджитал система фор индастриал ото- мейшн", т. 1 № 1, с. 79—100 (1981), по разрешению фирмы "Крейн, Руссак энд компани" Crane, Russak &Со, Inc.), США
До недавнего времени промышленные сборочные операции выполнялись вручную или с помощью специализированных автоматических систем. Специализированные автоматические системы, как правило, имеют высокое быстродействие, надежны и хорошо приспособлены к условиям массового производства. Ручное выполнение сборочных операций требует больших затрат времени, но в этом случае внесение изменений в технологический процесс сборки требует меньше затрат. Цель создания гибких автоматических систем — предложить альтернативу двум существующим методам сборки.
Предполагается, что устройства, входящие в состав гибких систем,
построены по модульному принципу, легко программируются для широкого класса задач и оборудованы видеосенсорами (например, телевизионной камерой), позволяющими обнаруживать изменения во внешней рабочей среде и реагировать на них (рис. I). Устройство сопоставляет получаемую визуальную информацию с хранимой в нем "моделью окружающей среды" и обрабатывает ее в терминах этой модели. Полученные в результате этой обработки команды подаются на механические исполнительные
органы, выполняющие соответствующие действия. Кроме того, можно вести наблюдение за результатами этих действий и использовать результаты наблюдений для повышения точности работы и исправления ошибок.
В настоящей статье обсуждаются некоторые из задач, связанных с
проектированием и эксплуатацией механизмов с визуальным управлением, предназначенных для выполнения сборочных операций в трехмерном пространстве. В число этих задач входят управление манипулятором, освещение, получение изображений, выделение из них трехмерной информации, градуировка системы, выбор структурной схемы системы, использование нескольких процессоров.
рис. 1. Концептуальная схема визуально управляемого устройства
Эти задачи рассматриваются в связи с частным классом сборочных операций, а именно - установкой деталей на посадочные места. Подробно описывается экспериментальная система для выполнения простых сборочных операций этого класса.
Экспериментальная система
Описание сборочной операции. Выбранная сборочная операция заключается в надевании на башню, составленную из трех дисков, расположенных с эксцентрисистетом относительно друг друга трех колец различных размеров. Толщина стенок колец 2 мм, а их наружные диаметры 10, 18 и 25 мм. Диаметры дисков на 0,2 мм меньше диаметров колец, надеваемых на них. Для приближения эксперимента к промышленным условиям, в которых посадочное место чаще всего представляет собой фрагмент большой детали и осмотр его затруднен, все три уступа башни окрашены матовой черной краской, а сама башня находится на матовом черном основании. Из этого вытекает, что на виде сверху уступы неразличимы и башню надо осматривать сбоку. Система должна строиться так, чтобы башня могла находиться в любом месте внутри рабочей зоны размерами приблизительно 70 X 70 мм. Предполагается, что вначале кольца лежат на горизонтальной плоскости, каждое в пределах зоны размером приблизительно 40 Х40 мм.
Хотя описанная операция не встречается в практике промышленной сборки, ей присущи все характерные черты реальных сборочных операций. Операция выполняется экспериментальной системой, в состав которой входят манипулятор, управляемый с помощью ЭВМ, и телевизионные камеры (рис. 2).
Манипулятор. Манипулятор имеет четыре степени свободы, из которых при выполнении сварочной операции используются три. Гидравлический привод обеспечивает радиальные, вращательные и вертикальные перемещения (Я, О, Z). Манипулятор оснащен встроенной измерительной
Рис. 2. Экспериментальная система, надевающая кольца на уступы башниРис. 2. Экспериментальная система, надевающая кольца на уступы башниРис. 3. Структура системыРис. 3. Структура системы
Рис. 2. Экспериментальная система, надевающая кольца на уступы башни
Рис. 2. Экспериментальная система, надевающая кольца на уступы башни
Рис. 3. Структура системы
Рис. 3. Структура системы
системой. Диапазон перемещений манипулятора по любой из осей составляет 100 мм ( 4000 шагов по 25 мкм). Хотя величина отдельного шага равна 25 мкм, точность позиционирования по любой осие составляет только 0,1 мм. Оси R vZ имеют непосредственный привод, а ось О снабжена редуктором с передаточным числом, примерно равным четырем, что приводит к снижению точности позиционирования до ±0,4мм. Очевидно, что сам по себе манипулятор не способен обеспечить точность, необходимую для выполнения операции.
Четвертая степень свободы, не используемая при выполнении операции, обеспечивается вращением схвата. Управление манипулятором выполняется с помощью специальных электронных устройств, связанных с мини-ЭВМ (ФИЛИПС №51).
Зрительная система. Размер и положение колец определяются с помощью телевизионной камеры А, расположенной вертикально (см. рис. 2). Положение соответствующего уступа башни определяется двумя горизонтальными телекамерами (В и Q . Каждая из них считывает образ проекции башни, подсвечиваемой сзади в направлении оптической оси телекамеры. На этих параллельных проекциях форма башни зависит от ее расположения в пространстве. Вследствие этого можно легко определить положение башни внутри каждого из образов. По этим проекциям положение башни в пространстве определяется с помощью обычной триангуляционной процедуры. Таким образом, довольно сложная задача определения параметров положения башни в трехмерном пространстве сводится к двум простым задачам в двухмерном пространстве.
Оптическая система параллельного проецирования, обработка визуальной информации, соответствующей определению положений колец и башни, и использование двух проекций для определения параметров положения объекта в пространстве более подробно описываются ниже.
Вычислительная часть системы. Структура системы схематически показана на рис. 3. В ее состав входят две ЭВМ, связанных низкоскоростными каналами И24 (по одному каналу для каждого направления связи). Телевизионные камеры присоединены к ЭВМ ФИЛИПС №57 через гибкий интерфейс ТЕЛПИН (TELPIN), разработанный в рамках настоящего проекта. Интерфейсное устройство может работать с восемью программно выбираемыми каналами. По входному каналу интерфейсное устройство получает информацию в аналоговом или цифровом представлении. Возможно выделение любого участка телевизионного изображения и выбор одного из четырех значений разрешающей способности. Значение порогового уровня яркости, используемое при получении бинарных образов, также может меняться программно. ЭВМ №57 выполняет общее управление системой и обработку изображений, выделяя информацию о положении деталей. ЭВМ меньшей мощности №51 управляет движением манипулятора и выполняет некоторые функции более высокого уровня (например, изменение состояния схвата). Таким образом, после того, как кольцо обнаружено, ЭВМ №57 выдает ЭВМ №51 единственную команду: поднять кольцо и перенести его в точку над башней. Затем ЭВМ №51 автономно выполняет перемещение и изменение состояний схвата, а по завершении операции выдает в ЭВМ Р857 сигнал готовности. IQC
Функционирование системы. На рис. 4 приведена блок-схема функционирования системы. Когда кольцо обнаружено и его размер определен, манипулятор получает команду поднять кольцо и перенести его в точку, расположенную приблизительно над башней. Эта операция выполняется под управлением ЭВМ Z^S 1. Во время ее выполнения манипулятор не заслоняет башню ни на одной из проекций. Вследствие этого определение положения нулевого уступа башни по двум проекциям может выполняться ЭВМ Р857 во время выполнения операции переноса.
Если положение уступа определяется успешно, манипулятор опускает кольцо до уровня, находящегося немного выше этого уступа. В этом по-
Р857Р851
Рис. 4. Блок-схема функционирования системы
ложении с помощью горизонтальных телекамер проверяется взаимное расположение кольца и башни. После этого манипулятор корректирует положение кольца и надевает его на башню/
В то время, когда ЭВМ РЯ5 1 управляет операцией надевания кольца на башню, ЭВМ PS51 определяет положение следующего кольца с помощью вертикальной камеры.-
Обработка изображений. Чтобы сборочную операцию можно было выполнить за приемлемое время, обработка изображений должна выполняться достаточно быстро. Поэтому следует использовать простейшие алгоритмы. Рассмотрим более подробно обработку зрительной информации.
Определение положения кольца. Одна из выделенных заранее областей поля зрения вертикальной камеры (рис. 5) преобразуется в полутоновый образ, каждый элемент которого кодируется пятью битами. Преобразование выполняется с малым значением разрешающей способности. Полутоновый образ подвергается операциям порогового ограничения и прослеживания границ [ 2]. Выделяются затемненные участки. Если объект, соответствующий одному из колец, не найден, выполняется повторная попытка его обнаружения со сменой порогового значения яркости. Если кольцо по-прежнему нс найдено, исследуется следующая область. Когда кольцо обнаружено, вычисляются приближенные значения координат его центра. Для определения точных значений этих координат последовательно выделяются области с центром, совпадающим с центром кольца. Их обработка выполняется при увеличенном значении разрешающей способ-
Рис. 5. Определение положения кольца: a — малая разрешающая способность — определение размеров кольца и приближенных значений параметров его положения; б — высокая разрешающая способность — определение координаты X; в — высокая разрешающая способность — определение координаты УРис. 5. Определение положения кольца: a — малая разрешающая способность — определение размеров кольца и приближенных значений параметров его положения; б — высокая разрешающая способность — определение координаты X; в — высокая разрешающая способность — определение координаты У1 П-71 П-7
Рис. 5. Определение положения кольца: a — малая разрешающая способность — определение размеров кольца и приближенных значений параметров его положения; б — высокая разрешающая способность — определение координаты X; в — высокая разрешающая способность — определение координаты У
Рис. 5. Определение положения кольца: a — малая разрешающая способность — определение размеров кольца и приближенных значений параметров его положения; б — высокая разрешающая способность — определение координаты X; в — высокая разрешающая способность — определение координаты У
1 П-7
1 П-7
ности. В результате координаты центра кольца выражаются в элементах телевизионного растра (рис. 5, б и в) . Области сканируются с двух сторон до пересечения границы. Соответствующая координата вычисляется как среднее координат точек пересечения. Затем параметры положения кольца переводятся в мировую систему координат и выдается команда манипулятору: поднять кольцо и поместить его над башней.
Определение положения башни. При определении положения башни для каждого из телевизионных каналов, связанных с горизонтальными камерами, выполняются процедуры, аналогичные описанным выше. Вначале производится сканирование с малым значением разрешающей способности (рис. 6, а). Сего помощью отыскивается горизонтальная зачерненная область, размеры которой совпадают с размерами нужного уступа башни. Затем с большей разрешающей способностью сканируется меньшая область (рис. 6, о), центр которой приблизительно совпадает с осью башни. При этом определяется положение вершины башни.
В последнюю очередь с наибольшим значением разрешающей способности сканируются области, через которые проходят боковые стороны уступов башни. Эта операция повторяется многократно с накапливанием результатов - пар координат, соответствующих левой и правой стороне
Рис. 6. Определение положения ступенчатой башни по телевизионному каналу 3: a — малая разрешающая способность — начальный поиск; б — средняя разрешающая способность — определение вершины башни; виг — высокая разрешающая способность — окончательное определение параметров положения башни
уступа. Рассматриваются только такие пары координат, разность которых отличается от значения ширины уступа не более чем на 5 элементов телевизионного растра (ширина уступа составляет от 50 до 110 элементов) . Как только будут получены восемь пар координат, отвечающих этому критерию, вычисляется их среднее значение, которое принимается в качестве координаты оси уступа башни. Среднее отклонение измеряемой ширины уступа от истинного значения используется для корректировки значений ширины башни и порогового значения, используемых на следующем этапе. Таким образом, система автоматически подстраивается, что позволяет компенсировать дрейф параметров аппаратуры. Тот же процесс повторяется для второй камеры. Координаты, выраженные в дискретах телевизионного изображения, преобразуются в машине в линии, задаваемые в мировой системе координат, параллельные оптическим осям телекамер. Точка пересечения этих линий принимается за центр уступа башни. Башня может находиться в любой точке рабочей зоны системы; единственное условие — все уступы башни должны быть видны обеим камерам. Поле зрения каждой камеры составляет приблизительно 100 X 100 мм, что целиком перекрывает область, в которой может находиться башня (70 Х70мм).
Визуальная обратная связь. Телевизионные камеры экспериментальной сборочной системы имеют поле зрения 100 X 100 мм и позволяют получать растр размерами приблизительно 600 X 600 точек. Эти характеристики определяют максимальную разрешающую способность ~ 0,17 мм. Точность параметров положения башни существенно выше, т.к. оси получаются в результате усреднения. Точность определения положения в системе мировых координат зависит от точности определения координат в элементах растра и точности калибровки камеры. Результаты экспериментов показывают, что положение башни в мировых координатах определяется с точностью около ± 0,1 мм.
Но, как было отмечено выше, радиальный зазор между кольцами и соответствующими им уступами составляет всего 0,1 мм, а манипулятор, вследствие нелинейности измерительной системы и ошибок округления при геометрическом моделировании, обеспечивает абсолютную точность позиционирования 0,1 мм по осям R и Z и 0,4 мм по оси 6. Такие характеристики с учетом погрешности определения положения башни не позволяют надежно выполнять сборочную операцию.
Выход из такой ситуации дает применение визуальной обратной связи. Она осуществляется так: кольцо опускается до уровня, находящегося немного выше соответствующего уступа башни, после чего с помощью горизонтально направленных телекамер фиксируется смещение кольца и уступов относительно друг друга. Для определения положения кольца, зажатого схватом, выполняется сканирование узкой полосы (рис. 7) с высокой разрешающей способностью. С помощью пар граничных точек вновь определяются параметры положения кольца. Так же, как и раньше, выполняется отбор существенных пар и применяется аппарат компенсации Дрейфа параметров телевизионной системы, приводящего к кажущимся Изменениям размера кольца. После этого может быть вычислено смеще-
ние осей кольца относительно оси уступа башни. По его значению формируется команда манипулятору, компенсирующая это смещение. Использование такой визуальной обратной связи играет решающую роль в успешном выполнении сборочной операции. Использование для организации обратной связи вертикально направленной телекамеры невозможно, так как манипулятор перекрывает ее поле зрения.
Визуальная обратная связь позволяет также контролировать положение кольца в схвате манипулятора. Если кольцо захвачено с перекосом, это будет обнаружено системой технического зрения. На манипулятор будут выданы команды на отпускание кольца и его повторный захват. Таким образом, система технического зрения повышает надежность выполнения сборочной операции.
Оптическая система параллельного проецирования. Как отмечалось выше, обе камеры с горизонтальным направлением оптической оси оснащены оптическими устройствами параллельного проецирования. Используемые устройства [3] аналогичны применяемым в обычном проекторе [4]. Оптическая компоновка устройства показана на рис. 8. Объект освещается сзади параллельным пучком света, создаваемым малым источником 5, расположенным в фокусе линзы Френеля 1Л. Комбинация второй линзы Френеля Е2 и объектива камеры L3 формирует образ параллельной проекции объекта на фоточувствительной поверхности телевизионной трубки С. Ниже будут показаны преимущества использования такой
схемы для определения парамет
ров положения объектов.
При использовании такой оптической системы размеры образа принципиально не зависят от положения соответствующего ему объекта. Это
Рис. 8. Схема оптического устройства параллельного проецирования изображенияРис. 8. Схема оптического устройства параллельного проецирования изображенияРис. 7. Проверка параметров положениякольца в схвате над вершиной ступенча-той башни
Рис. 8. Схема оптического устройства параллельного проецирования изображения
Рис. 8. Схема оптического устройства параллельного проецирования изображения
существенно упрощает анализ изображений - его выполнение не зависит от того, ближе или дальше от камеры располагается объект. Существует однозначное соответствие между смещением объекта в направлении, перпендикулярном оптической оси камеры, и смещением силуэта объекта в телевизионном изображении.
Оптическая компоновка делает систему практически нечувствительной к изменениям во внешнем освещении, поскольку в объектив камеры попадают только те лучи, которые параллельны оптической оси. Чем мень
ше апертура камеры, тем меньше чувствительность системы к помехам. Поскольку для работы телевизионной камеры не требуется много света, апертура может быть весьма мала. Это свойство системы оказывается очень полезным в промышленных условиях, где сложно обеспечить отсутствие посторонних источников света. Малые размеры апертуры обеспечивают также большую глубину резкости.
Наконец, такие устройства легко калибровать, они легко встраиваются в системы определения параметров положения объектов. Оба эти свойства подробнее рассматриваются ниже.
Определение параметров положения объекта с использованием оптического устройства параллельного проецирования. Так как в оптическом устройстве используется параллельное освещение и оно нечувствительно к действию посторонних источников света, есть принципиальная возможность использовать в системе несколько таких устройств, работающих независимо. Для определения положения объекта в пространстве, как правило, необходимо использовать такую комбинацию устройств. С помощью одного устройства можно определить положение объекта на линии. параллельной оптической оси устройства. Если на параметры положения объектов не наложено дополнительных ограничений (например, камера направлена вертикально, а объект находится на горизонтальной плоскости) , для их определения необходимы два устройства.
Для определения параметров положения объекта в пространстве по двум проекциям нужно иметь возможность найти на них проекцию одной и той же точки объекта. Только в этом случае параметры положения этой точки определяются с помощью пересечения двух проецирующих лучей.
В нашем случае каждый из уступов башни представляет собой цилиндр. На рис. 9 приведена схема получения двух проекций такого объекта. Общая точка (центр верхнего основания цилиндра) проецируется как
центр стороны черного прямоугольника, соответствующего отображению цилиндра на обеих проекциях. Взаимное расположение оптических осей камер не играет решающей роли: чем оно ближе к ортогональному, тем выше точность измерений.
Рис. 9. Определение параметров положения объекта по двум проекциям
Интересно рассмотреть обобщение этого метода на другие 2,5-мерные объекты. Под этим термином будем понимать объекты с параллельными боковыми сторонами, изображение которых на проекции не инвариантно к направлению проецирования. Это изображение представляет собой прямоугольник, как и в случае, приведенном на рис. 9, но его ширина зависит от угла поворота объекта относительно оптической оси устройства. Задача нахождения на проекциях общей точки усложняется, хотя для некоторых правильных форм, часто используемых в технике, - квадратной, прямоугольной или шестигранной призм-центр объекта по-прежнему соответствует середине изображения на проекции.
Если объект несимметричен, может возникнуть необходимость в определении угла его поворота. Метод параллельного проецирования позволяет определить его с точностью до поворота на 180 , так как проекция не изменится в случае перемены мест камеры и источника света. Во многих промышленных приложениях эта неоднозначность не играет роли, так как деталь обладает центральной симметрией второго порядка. Однако чаще приблизительное значение угла поворота известно заранее (возможно, из-за хода предыдущих сборочных операций). Подобные ситуации могут возникать на заключительных стадиях сборки, перед установкой детали на посадочное место. В этих случаях направление оптической оси устройства следует выбирать так, чтобы диапазон изменения ширины проекции детали при ее повороте был достаточно большим.
Если никаких сведений о повороте объекта нет, в некоторых случаях неоднозначность его определения можно устранить с помощью того же самого оптического устройства. В его состав вводится источник освещения, расположенный со стороны камеры. Тогда в камеру будет попадать свет, отраженный поверхностью детали в направлении, параллельном оптической оси системы. В результате этого на полутоновом образе детали будут различимы особенности ее передней стороны. По их наличию или отсутствию можно попытаться устранить неоднозначность определения угла поворота. Измерения ширины объекта на одной проекции недостаточно для определения его угла поворота, но использование двух или более камер в общем случае дает возможность определить этот угол. Другой подход к устранению неоднозначности использует дополнительное разворачивание объекта в поле зрения камеры на известный угол.
В том случае, когда проекция объекта имеет простую форму, ее ширина может определяться аналитически. Если это не так, то на этапе обучения системы формируется таблица размеров проекции. Затем на этапе работы ширина проекции измеряется и сравнивается с таблицей, в которой приведены соответствующие значения угла поворота 9.
Если определение общей точки на проекциях объекта затруднительно, таблица может использоваться для определения не только угла поворота, но и всех параметров положения объекта. Например, на этапе обучения в одну строку таблицы, соответствующей углу проецирования 9, могут быть записаны и ширина проекции, и координаты, определяющие положение на ней общей точки Р. Тогда на этапе работы после определения 6 координаты точки Р на каждой из проекций выбираются из таблицы. Далее могут
быть получены параметры положения точки в пространстве: ее координаты, выраженные в единицах телевизионного растра, преобразуются в мировую систему координат и находится точка пересечения двух лучей.
В более сложных трехмерных объектах часто имеются особенности, позволяющие решать "задачу соответствия". Поскольку размеры образа неизвестны, положение таких особенностей в сложном контуре определяется простым отсчетом расстояний от основания объекта.
Калибрование. Для того чтобы управляемая на основе анализа ви- зуальной информации система нормально функционировала, необходимо установить соответствие между изображениями, получаемыми с помощью различных телевизионных камер и движениями манипулятора, с одной стороны, и расположением обрабатываемых деталей, с другой стророны. Процедура калибрования определяет отношения характеристик и опорных точек всех частей системы в целом. Эти отношения могут меняться в результате модификации или настройки системы, что приводит к необходи- ; мости повторного калибрования. Для того чтобы систему можно было ис- ; пользовать эффективно, процедура калибрования должна быть простой и быстрой.
V Обычно характеристики и опорные точки манипулятора и системы анализа изображений привязываются к произвольно выбранной единой декартовой системе координат (мировые координаты). Такой подход обеспечивает взаимную независимость изменений, вносимых в любое из уст- * ройств системы.
Калибрование манипулятора включает определение отношений перемещений по осям R, О, Z в мировых координатах. Эти отношения определяются геометрической структурой манипулятора и зависимостями "шаг-перемещение" приводов каждой из осей. Поскольку приводы всех трех осей, используемых для выполнения сборочной операции, функционируют независимо друг от друга, геометрические отношения выражаются достаточно просто.
В общих чертах калибрование телевизионной камеры включает определение ее положения в трехмерном пространстве и направления оптической оси [ 5]. При использовании устройства параллельной оптики положение камеры не играет роли; достаточно знать направление ее оптической оси в системе мировых координат и оптические характеристики системы линз. Предположим, что телевизионная система используется совместно с манипулятором, измерительная система которого связана с мировой системой координат. Тогда, перемещая манипулятор на известные расстояния в разных направлениях и наблюдая результаты отображения этих перемещений на телевизионном изображении, можно построить матрицу преобразования мировых координат в систему координат телевизионной системы. Размерность этой матрицы -4X4.
При калибровании экспериментальной системы в схват манипулятора устанавливался заостренный стержень (рис. 10, д). Поскольку размеры проекции стержня на телевизионном изображении постоянны и не зависят от перемещений манипулятора, найти точку изображения, соответст- : вующую проекции острия, не составляет труда (рис. 10, б). По измене-
Рис. 10. Калибрование телекамеры канала 4:
а - расположение заостренного стержня в схвате манипулятора; б — телевизионное изображение, по которому определяются параметры положения острия стержня
ниям ее положения можно следить за перемещениями манипулятора. При помощи этой простой процедуры камеры устанавливаются в положение, соответствующее выполняемой сборочной операции. Калибрование системы занимает не более двух минут.
Распределенная обработка информации. В рассмотренном примере (надевание колец на башню) используется два процессора. Разделение функций между ними организовано так, что в процессор Р851 передаются только простые команды с параметрами. Этот процессор выступает в роли сателлитного для Р857. Такое разделение позволяет организовать простейшую схему параллельной работы процессоров, что уменьшает общее время работы системы. Проблема разделения информации не возникает, поскольку все данные хранятся в памяти Р857.
Можно предположить другие схемы организации обработки, включающие большее число процессоров с соответствующим ростом доли параллельной обработки. Например, если бы каждая из горизонтально направленных телекамер была связана с отдельным процессором, определение обеих координат объекта можно было бы выполнять одновременно.
Однако при добавлении дополнительных процессоров следует учесть все связанные с этим ограничения. Например, процессоры должны обмениваться наименьшим возможным количеством информации. Недопустимо дублирование информации в памяти процессоров и выполнение в нескольких из них одинаковых операций над одними и теми же данными. Разделение вычислительного процесса между процессорами должно соответствовать концептуальной структуре системы в целом. В противном случае будет невозможно добиться модульности конфигурации, необходимой для упрощения работы с системой и внесения необходимых изменений. Важные ограничения накладывают отношения характеристик быстродействия отдельных частей системы. Нет смысла вводить в нее до-
полнительный процессор, ускоряющий определение параметров положения башни, если эти вычисления и так выполняются быстрее, чем манипулятор успевает переместить кольцо. К основным скоростным характеристикам системы относятся быстродействие манипулятора, скорость обработки визуальной информации и скорость межпроцессорного обмена. Изменение любой из них может изменить оптимальное разделение функций между процессорами.
Заключение. Описанные в настоящей статье экспериментальные исследования показали, что для выполнения некоторых сборочных операций можно успешно использовать устройства параллельной оптики с встречной подсветкой, позволяющие получать образы контуров детали. Были продемонстрированы преимущества такого подхода: высокая скорость анализа независимых изображений и идентификация объекта, определение параметров положения объекта на основе прямых измерений, нечувствительность к посторонним источникам света, возможность определения параметров положения простых трехмерных объектов по двум или более проекциям.
Хотя в настоящее время система выполняет лишь простейшую сборочную операцию, авторы собираются использовать описанные методы для решения практических производственных задач. В системах, аналогичных описанной, становится оправданным применение нескольких процессоров, в том числе и специализированных скоростных устройств обработки изображений. Поэтому вопросы проектирования гибких, модульных, концептуально простых систем, обеспечивающих требуемое бысгродейс!вие, приобретают особую актуальность.
Авторы выражают признательность RaiepcoHy (D. Paterson) и Тернер- Смиту (АЯ. Turner-Smith), которые совместно с нашими коллегами из Исследовательской лаборатории фирмы ’’Филипс” в Эйндховене разработали конструкцию манипулятора. Мы хотим поблагодарить также начальника группы Уивера ^.А. Weaver) за оказанную поддержку.
Список литературы
Saraga. Р.. and Skoyles. D R.. 'An experimental Msually controlled pick and place machine for industry'. 3rd International Joint Conference on Pattern Recognition. Coronado. California (Nos ember 1976).
Sarage. P and Waxish. P R . "Edge tracing in binary arrays". Machine Perception of Patterns and Pictures. Institute of Phy sics (Lend) Conference ser. No 13(1972)
British Patent Application No. 794295'’. An object measuring arrangement. December 1979.
Habell.K.J and Cox. A.. Envinccnn^Opm \ Pitman(l953)
Duda. R. O. and Hart. P. F . Panerndassificaiion and scene a nah ms W ilex Interscience (1973).
РОБОТОТЕХНИЧЕСКАЯ СИСТЕМА,ИЗВЛЕКАЮЩАЯ ЦИЛИНДРИЧЕСКИЕ ДЕТАЛИИЗ БУНКЕРОВ
Р.Б. Келли, Дж.Р. Бирк, Г.А.С. Мартинс, Р. Т е л л а,факультет электротехники университета Род Айленд, США. 1982 ИИЭР.
Перепечатано из "Ай-И-И-И Транзэкшнз он системз, мен знд сайбернетикс", т. SMC-M, № 2, с. 204-213 (март-апрель 1982)
В статье описывается робототехническая система с подсистемой технического зрения, предназначенная для работы со случайно расположенными цилиндрическими деталями. Система носит экспериментальный характер. Она использует подсистему технического зрения и схват параллельного Действия и предназначена для извлечения цилиндрических деталей из бункера, в котором рни хранятся навалом. Информация для управления манипулятором формируется методом визуального анализа бинарного образа ’’кучи” деталей. Используется также дополнительная информация, получаемая от сенсоров, размещенных на схвате. Для экспериментов использовались титановые цилиндры длиной б и 7,6 см и диаметрами 1,5 и 3 см соответственно. При использовании одного бункера с деталями одинаковых размеров для извлечения детали и ее подачи на приемный лоток затрачивается от 8 до 10 с. Когда имеются два бункера с деталями и движение манипулятора выполняется параллельно с обработкой образов, время, затрачиваемое на извлечение и подачу одной детали сокращается до 5,5-7,5 с. В будущем такие роботы могут быть использованы для развития автоматизации производства, особенно мелкосерийного.
Введение. При выполнении многих производственных операций детали хранятся в бункерах. Подача деталей из бункера на станок выполняется довольно часто. Во многих случаях при использовании автоматических станков одна эта операция выполняется вручную. Однообразие и отсутствие творческих элементов при выполнении подачи детали на станок делают эту операцию малоприятной. Сегодня молодые рабочие предъявляют к своей работе более высокие требования. Тогда как цена ручного труда постоянно возрастает, производительность его остается практически неизменной. Более того, условия труда в современной промышленности часто неблагоприятны, т.к. руки рабочего, устанавливающего деталь на станок, подвергаются опасности. Все это вместе взятое обусловливает необходимость поиска альтернативных способов выполнения этой операции, не требующих применения ручного труда.
Известны следующие альтернативные способы: использование механических подающих устройств, сохранение ориентации деталей в продолжение всего процесса производства и использование роботов, оснащенных системой технического зрения. Использование любого из них должно быть экономически обоснованно. При рассмотрении недостатков этих методов очевидными становятся преимущества использования роботов с системами технического зрения.
При использовании механических подающих устройств велика вероят-
ность заклинивания подаваемой детали. Особенно часто это происходит с тонкими деталями, при нарушении размеров и попадании в тракт подачи посторонних предметов. Некоторые детали сложной формы трудно, а иногда и невозможно правильно ориентировать. Некоторые детали при столкновениях друг с другом и направляющими подающего устройства получают повреждения. При работе с деталями большого размера подающее устройство становится громоздким и энергоемким. При использовании вибрационного подающего устройства вибрация оказывает неблагоприятное воздействие на другие части системы. Скорость подачи деталей непостоянна и зависит от количества деталей в накопителе. При работе механических подающих устройств высок уровень шума. Время разработки и наладки, а также эксплуатационные затраты могут достигнуть неприемлемого уровня. Все выше сказанное касается в первую очередь производства мелкосерийной продукции. Даже если механическое подающее устройство оснащено отбраковывающим механизмом, использующим техническое зрение [ 1], большинство из проблем остаются нерешенными.
Сохранение ориентации деталей на протяжении всего производственного цикла — наиболее очевидный способ избежать использования бункера, в котором детали лежат навалом. В настоящее время этот метод получил широкое распростанение, поскольку современные промышленные роботы могут подавать на обработку детали, находящиеся в магазинах и палетах. Тем не менее сохранять ориентацию деталей во многих случаях непрактично и затруднительно. При последовательной обработке деталей на станках с различной производительностью общая скорость обработки потока деталей равна скорости работы самого медленного станка. Для того чтобы поломка одного станка не привела к остановке всего производства, приходится организовывать разделения и слияния потока обрабатываемых деталей с промежуточными буферными накопителями. Для того чтобы сохранить ориентацию детали при разгрузке, может потребоваться дополнительная операция с использованием робота. По сравнению с методом разгрузки, при котором деталь выталкивается из патрона или захвата струей сжатого воздуха и падает в бункер, использование робота может существенно снизить скорость работы. Другие приспособления для разгрузки деталей с сохранением ориентации дорогостоящи и громоздки. Используемые для сохранения ориентации деталей палеты несовершенны, расположение деталей на них при перемещении от одного станка к другому легко нарушается. Многие станки приспособлены для обработки партий деталей и в их составе имеются встроенные бункеры для промежуточного хранения. Детали, поступающие от поставщиков, со складов или из отдельных цехов обычно не имеют определенной ориентации. Затраты на хранение и перевозку ориентированных деталей обычно очень велики из-за малой плотности упаковки.
Рассмотрев недостатки альтернативных методов, можно сделать вывод, что в будущем для подачи деталей на станки будут использоваться в основном визуально управляемые роботы. Их применение даст возможность по окончании выпуска серии продукции легко перестраивать систему на работу с другими деталями. -
Проблеме выборки деталей из бункера уделялось много внимания. Создана база данных образов литых деталей [2]. Ряд работ посвящен оп- релению параметров положения деталей, лежащих на плоскости, например на ленте транспортера [ 3—10], Изучались методы работы с подвешенными деталями [ 11 ]. Для ориентирования отдельных деталей предполагалось использовать вибрирующие контейнеры с двухскатным дном[ 12]. Анализировались способы определения параметров положения перекрывающихся деталей, лежащих почти горизонтально [ 13,14]. В изображении кучи выделялись области, соответствующие отдельным объектам. Изуча
лись методы решения задач определения параметров положения частично заслоненных деталей, лежащих в бункере навалом, и выборки тех из них, которые могут быть доставлены в точку назначения в заранее определенном положении [ 17]. Для определения, которая из круглых деталей (фильтров для пылесоса) находится на "вершине” кучи таких же деталей [18], использовались эллипсы. Описывался метод разделения деталей, при котором каждая из них захватывалась роботом за выступ, отыскиваемый визуальным анализатором. При работе детали перемешивались с помощью манипулятора [ 19]. Предлагались эвристические методы технического зрения для извлечения деталей из бункеров [ 20]. Для извлечения заготовок из бункера использовались электромагниты [21].
Была описана экспериментальная функциональная робототехническая система, использующая специальные манипуляторы с вакуумными присосками и простые алгоритмы технического зрения [22, 23]. Конструкция системы позволяет доставлять к месту назначения все детали, ориентируя их нужным образом, вне зависимости от того, которая из плоских поверхностей детали захвачена вакуумной присоской.
В настоящей работе рассматривается дальнейшее развитие некоторых идей, заложенных в разработанных ранее системах. Описываемая экспе
риментальная робототехническая система использует подсистему технического зрения и схват параллельного действия для выборки цилиндрических деталей, сложенных навалом в бункер. Общий подход к проектированию системы делает ее применение особенно удобным при обработке партий деталей.
Архитектура системы. В состав работотехнической системы, извлекающей детали из бун-
Рис. 1. Внешний вид экспериментальной робототехнической системы. Робот с шестью степенями свободы манипулятора оснащен схватом параллельного действия. Над бункерами расположены две телекамеры
кера и ориентирующей их, входят бункер-накопитель, расположенная под ним камера, робот с четырьмя степенями свободы, схват параллельного действия и приемный лоток. Внешний вид системы показан на рис. 1, схема расположения узлов — на рис. 2. Приемный лоток может использоваться для подачи деталей в держатели, расположенные на лейте транспортера (рис. 3). Поскольку положение держателей на ленте известно, при подходе транспортера к разгрузочной станции деталь может быть переставлена роботом из держателя в патрон или зажим станка.
Используемый системой бункер-накопитель имеет плоское дно, размеры которого совпадают с размерами поля зрения камеры, расположенной над ним. Боковые стенки бункера наклонены. Это уменьшает вероятность столкновения с ними схвата робота при попытке захватить деталь, лежащую на дне (на краю поля зрения камеры). Поскольку бункер вмещает довольно много деталей, возможность столкновений нельзя упускать из рассмотрения.
Камеры размещены приблизительно над центрами бункеров. Фактическое положение камер по отношению к роботу определяется в процессе выполнения полуавтоматической программной процедуры калибрования. Эта процедура выполняется после наведения и фокусирования камер. В ходе работы взаимное положение манипулятора и камер не меняется.
Используемый в эксперименте робот имеет шесть степеней свободы, но используются только четыре из них: две оси вращения зафиксированы, а третья, вертикальная, необходима для установки схвата параллельно оси захватываемой детали. Поскольку заранее неизвестно, на какой глубине лежат заготовки, приходиться использовать все три направления линейных перемещений.
Конструкция схвата параллельного действия симметрична, поэтому при работе нет необходимости поворачивать его от исходного положения
П V Г~1 2
Рис. 2. Схема расположения отдельных частей системы:
1 — телекамера I; 2 — телекамера II; 3 — робот со охватом параллельного действия; 4 — бункер I; 5 — лоток I; 6 — лоток II; 7 — бункер II
Рис. 3. Вид системы сверху. Показан возможный вариант установки ленточныхтранспортеров:
7 — камера I; 2 — бункер; 3 — лоток; 4 — транспортер; 5 — робот
более чем на 90°. Поскольку рабочие поверхности схвата параллельны, у захваченного им цилиндра остается неопределенным только один параметр положения — угол поворота в плоскости, параллельной рабочим поверхностям схвата. Приемный лоток имеет V-образную форму, поэтому под действием силы тяжести все детали, попавшие в него, ориентируются соответствующим образом и к моменту выхода из лотка их положение полностью определено.
Схват параллельного действия. Конструкция схвата должна быть простой и обеспечивать прочность и универсальность устройства. Поскольку схват должен работать в промышленных условиях, то, во-первых, он не должен быть слишком сложным (это сказалось бы на надежности) и, во- вторых, должен обеспечивать возможность работы с различными деталями, по крайней мере, с цилиндрическими заготовками и деталями, изготавливаемыми из них на разных стадиях обработки).
Вначале авторы предполагали использовать схват с вакуумными присосками типа разработанного в университете Род Айленд ’’вакуумного схвата с адаптацией к форме поверхности” [ 23]. Такой схват может быть оснащен набором сменных удлиненных присосок. Способность вакуумного схвата адаптироваться к работе с поверхностями, форма которых заранее неизвестна, полезна при извлечении деталей из бункера.
Однако от использования вакуумного схвата пришлось отказаться по ряду причин. Удерживающая сила присоски, определяемая рабочим давлением пневматической системы, при большой скорости перемещения манипулятора может оказаться недостаточной. Неясно, насколько эффективно будут работать присоски при изменении размеров деталей. Не представляется возможным определить ориентацию детали, находящейся в схвате, так как он может удерживать деталь в различных положениях. Загрязненность поверхности детали и ее нагрев могут сильно снизить удерживающую силу присоски.
После исключения вакуумного схвата единственной альтернативой остались зажимающие схваты. Предстояло выбрать форму насадки на концах пальцев схвата: V-образный желоб или плоская прокладка. От использования V-образных желобковых прокладок пришлось отказаться, хотя они более надежно захватывают цилиндрические детали, чем плоские, и положение захваченных деталей в схвате более определено. Этот отказ объясняется рядом причин. V-образные прокладки совершенно непригодны для работы с деталями не цилиндрической формы. Пальцы схвата, оснащенные V-образными прокладками, имеют большую толщину, что неприемлемо при плотном расположении деталей. Для того чтобы схват надежно фиксировал деталь, размеры V-образных прокладок должны быть пропорциональны размерам детали. Если направление осей деталей не совпадает с направлением желобов, приходится использовать дополнительную ступень свободы манипулятора (наклон схвата).
Для схвата была выбрана схема с общим приводом на оба пальца. От использования дополнительных возможностей, предоставляемых раздельным приводом пальцев, отказались, так как при работе с деталями рассматриваемого класса перемещение пальцев по деталям не приводит К
повреждению последних. Более того, при точном калибровании телевизионной камеры ’’царапанье” пальцев по деталям сводится к минимуму. Для обеспечения различного раствора пальцев при работе с деталями различных размеров использована система позиционирования с шифратором, сигнал с которого подается на двигатель привода. От использования в качестве привода пневмоцилиндра пришлось отказаться, так как в противном случае шириной раствора пальцев можно было бы управлять только с помощью механических ограничителей. Организовать работу системы с несколькими бункерами было бы также затруднительно.
Конструкция наконечников пальцев не предусматривает возможности управляемой переориентации детали в схвате. От нее отказались потому, что это привело бы к существенному увеличению веса схвата и размеров наконечников. При извлечении деталей из бункеров размеры наконечников должны быть достаточно малы для того, чтобы проникать между плотно лежащими деталями. Поверхность наконечников должна быть гладкой, без выступов, которые могут зацепляться в процессе работы за детали,- Ширина наконечников должна быть минимальной, чтобы для захвата детали было бы достаточно минимальных зазоров, однако она должна быть достаточной для того, чтобы большие детали, захваченные ас- симетрично, не проворачивались в схвате. Наконец, на наконечниках, пальцах и запястье схвата нет дополнительных датчиков, измеряющих силы и моменты.i - I
; Механическая часть схвата параллельного действия. Основные детали схвата — корпус цилиндрической формы и два параллельных пальца с наконечниками. Поперечный разрез схвата показан на рис. 4. Ниже приводится описание схвата.
Схват присоединяется к запястью манипулятора через устройство предохранения от перегрузок. Цилиндрический корпус манипулятора соеди-
Рис. 4. Схват параллельного действия в разрезе:
— параплелограммная подвеска пальцев; 2 — оптический концевой выключатель; 3 — электронные компоненты;
— тахометр; 5 — гибкая подвеска, предохраняющая от перегрузок; 6 — цифровой шифратор; 7 — шестерни с компенсацией мертвого хода; 8 — электродвигатель; 9 — червячная передача и секторные шестерни; 10 — датчик, установленный в наконечнике пальца
нен с этим устройством через четыре предварительно напряженные пружины сжатия. Они компенсируют перегрузку манипулятора и автоматически возвращают его в исходное положение по устранении причины, вызвавшей перегрузку.
В верхней части цилиндрического корпуса расположены цифровой шифратор и тахометр. Там же расположена монтажная плата с электронной схемой, обеспечивающей работу сенсора. В нижней части корпуса размещен электродвигатель постоянного тока. Для привода тахометра и шифратора, расположенных над двигателем, используются шестерни с компенсацией мертвого хода.
Двигатель соединен с пальцами через червяк и секторные шестерни. Пальцы схвата выполнены в виде параллелограммов, детали которых соединяются друг с другом следующим образом: пары наружных тяг свободно вращаются на обоих концах; внутренние тяги верхним концом жестко соединены с секторными шестернями, а нижние концы их также могут вращаться вокруг оси. Оси, на которые надеты нижние концы тяг, установлены на несущих частях пальцев. К этим же несущим частям присоединены и наконечники пальцев. Такая конструкция позволяет легко менять наконечники.
Сенсоры. Для управления работой системы используются несколько сенсоров. Тахометр работает в системе управления позиционированием (используется штатное устройство позиционного управления роботом). Для определения перегрузки используются оптические концевые выключатели. Получаемый с них сигнал "перегрузка" используется для изменения последовательности действий при работе по программе подъема детали. Такие же оптические концевые выключатели используются для фиксации начального значения раствора пальцев (см. рис. 4). Раствор пальцев схвата определяется следующим образом: считывается значение на выходе шифратора, соединенного с мотором, и по нему с помощью специальной функции определяется соответствующее значение. При задании команды на установку определенного раствора пальцев действия выполняются в обратном порядке. Величина раствора пальцев может использоваться для внутриоперационного технического контроля или для других целей, например для определения, за какую пару граней захвачена деталь прямоугольного сечения.
На наконечниках пальцев размещена оптическая пара ” светоизлуча- тель — светоприемник", работающая в инфракрасном диапазоне. Таким образом, пространство между наконечниками оказывается "прошито" световым лучом (см. рис. 4). Для повышения надежности функционирования светоизлучатель работает в импульсном режиме (скважность 10%), а приемник синхронизируется модулированным сигналом. Прерывание светового луча говорит о том, что в поле действия схвата попала деталь, или о том, что после сжатия пальцев и подъема схвата деталь не выскользнула.
Программное обеспечение работы схвата. Программное обеспечение работы схвата выполняет три функции: установку начального положения, установку и измерение расстояния между наконечниками пальцев и зада- 212
ние последовательности операций подъема детали. Операция установки начального положения необходима потому, что используются инкрементные шифраторы положения. При установке начального положения выполняются следующие действия. Пальцы схвата раздвигаются до тех пор, пока не срабатывают оптические концевые выключатели. Счетчики шифраторов положения обнуляются. Подается команда на сведение пальцев на определенное расстояние, после чего счетчики опять обнуляются. Таким образом, >начальное положение организуется относительно точки срабатывания кон- ;:цевЬ1х выключателей.
5 Установка раствора пальцев и измерение его значения выполняются косвенным образом, так как шифратор положения связан не с секторными шестернями, а с валом двигателя. Можно было бы определить функциональную зависимость, связывающую отсчеты счетчиков шифратора положения и раствор пальцев манипулятора. Но на практике используется процедура, которая с помощью калибров получает точки экспериментальной зависимости "отсчет—раствор’’. По точкам строится полином, аппроксимирующий эту зависимость. Для определения величины приращения счетчиков, необходимой для получения нужного раствора пальцев, программно определяется значение аппроксимирующего полинома четвертой степени. Значение раствора по отсчету определяется с помощью полинома третьей степени. Использование аппроксимации зависимости полиномами по методу наименьших квадратов сняло необходимость юстирования и ликвидации мертвого хода в механической части системы, что обязательно при любом способе, использующем геометрические отношения деталей схвата. Кроме того, любые отклонения от идеала автоматически учитываются при аппроксимации полиномом, тогда как геометрический анализ пришлось бы выполнять заново.
Захват детали выполняется в несколько приемов. Вначале рассчитываются три значения раствора пальцев, вектор перемещения схвата и связанная с ним система координат и направление раскрытия схвата. Схват разворачивается и пальцы раздвигаются на расстояние, задаваемые первым из значений раствора. После этого схват перемещается к детали по направлению, заданному вектором, до тех пор, пока деталь не пересечет световой пучок между наконечниками пальцев. Пальцы раздвигаются на расстояние, задаваемое вторым значением раствора и схват перемещается в том же направлении еще на некоторое дополнительное расстояние. После этого пальцы сдвигаются до расстояния, заданного третьим значением раствора и схват поднимается до уровня плоскости переноса деталей. Эта процедура завершает процесс выборки деталей, находящихся в бункере.
Визуальный анализ. Визуальный анализ изображения, соответствующего бункеру, можно разделить на две части. В первой из них в изображении отыскиваются объекты, подлежащие дальнейшему анализу. Таких объектов может и не оказаться, если бункер пуст. Вторая часть анализа связана с определением параметров положения схвата при захвате детали. Анализ выполняется программой PICTUR.
Работа этой программы начинается после считывания полутонового
изображения деталей, находящихся в бункере. Значение яркости каждого из дискретов (элементов изображения) сравнивается с некоторым общим пороговым значением. В результате этой операции формируется бинарный образ. Первой операцией зрительного анализа является сжатие образа. Оператор сжатия применяется с целью сократить количество дискретов, рассматриваемых при определении точки захвата. Дискреты объединяются в кластеры, и области, соответствущие этим кластерам, сортируются в порядке возрастания площадей. Выбирается наибольший кластер. Для области, соответствующей ему, определяются оси наибольшего и наименьшего момента инерции, проходящие через ее центр тяжести, и определяются моменты инерции области относительно найденных осей. Центроид и направление оси минимального момента инерции используется для определения параметров положения схвата и раствора пальцев в момент захвата детали. Отношение длин найденных осей определяет положение цилиндра (стоит на одном из оснований, наклонен, лежит параллельно дну) и величину раствора пальцев схвата.
Вектор перемещения схвата определяется положением центроида выбранного кластера в образе, соответствующем бункеру. Он совпадает с лучом, проходящим через центроид и параллельным оптической оси телекамеры. При извлечении детали схват перемещается в вертикальном направлении вдоль этого луча.
Процедура сжатия выполняется следующим образом: по заданному полутоновому образу G и пороговому значению Тформируется бинарный образ 50:
SoU,H = S
О, в остальных случаях.
So принимает уровень сжатия, равный нулю. Определим индикаторную функцию 5^ (к = 1, 2,...) как
[ 1, Sfc-\ <i,h = k\
О, в остальных случаях.
По образу Sk-\, имеющему уровень сжатия к, образ Sk, имеющий уровень сжатия (к + 1), строится инкрементированием всех дискретов, имеющих значение к, все соседние дискреты которых также имеют значение к. (Предполагается, что каждый дискрет имеет восемь соседних). То есть
{
11
к + 1, 55 о^О + О 7 + w) = 9;
/ = 1 m = - 1
Sk - 10, /), в остальных случаях.
Пусть No - количество нулей в образе, а А, - количество единиц. Тогда
I Ло = 5 [ 1 - 610',/) ]
I i, i
Ax = 5 bx^iY
Общее количество значений (к + 1) в образе S& составляет
Ак + 1 = S 5^ + i(i, /),
i.j
а общее количество значений
^к = Ак — Ак 4-1.
Пример применения операции сжатия к образу размерами 20 X 30 дискретов показан на рис. 5, Прогрессия, задаваемая списком Ак, демонстрирует влияние сжатия на количество ’’активных” дискретов. После однократного сжатия их число составило 93, на 110 меньше исходного (203). В число 93 входят дискреты, имеющие значения 2,3 или 4. Отметим, что после двукратного сжатия остается только два активных кластера.
Сжатие заканчивается, когда для образа S^ верно
Nf ^ MAXPIX<NL + 1
и
0 < MINLEV ^L^ MAXLEV
где MAXPIX — параметр, управляющий количеством дискретов, передаваемых программе построения кластеров, a MINLEV и MAXLEV — пара
метры, задающие границы сжатия.
Время, необходимое для выделения областей, растет прямо пропорционально квадрату числа активных дискретов. Если NmaXLEV > > MAXPIX, значит, поле зрения слишком велико и его размеры следует уменьшить. Такая ситуация может возникнуть при наличии большого количества деталей малых размеров в поле зрения. Эту проблему можно
решить, ограничив число рассматриваемых активных дискретов теми, которые лежат в некотором подобразе. Подобраз выделяется с помощью
"окна”, накладываемого на образ. Максимальный уровень сжатия выбирается таким, что все области, соответствующие кондиционным деталям, удаляются. В подобразе остаются только области, соответствующие отбраковываемым деталям.
Рис. 5. Пример применения операции сжатия. Значения дискретов показаны на рисунке, их количество — Г в списке
В момент завершения операции сжатия Nl дискрет, имеющих значение £, объединены в область по признаку расстояния. Процесс объединения начинался с Nl областей. Два дискрета считаются принадлежащими одной и той же области, если расстояние между ними (в метрике Хэмминга) меньше, чем критериальное расстояние области. Получившиеся в результате этой операции области упорядочиваются в соответствии сих размерами. Если размеры превышают минимальное значение MINPIX, система определяет точки захвата деталей, соответствующих трем наибольшим областям. Вычисленные точки захвата используюся для предварительного позиционирования схвата. Для того чтобы отличать цилиндры, стоящие на одном из оснований, от цилиндров, находящихся в других положениях, используется отношение длин осей максимального и минимального моментов инерции. Для цилиндров, стоящих на основании, это отношение близко к 1, а для всех прочих — нет. В соответствии с этим отношением выбирается раствор пальцев схвата.
В случае когда наибольшая область насчитывает менее чем MINPIX дискретов, центр ’’окна” перемещается в центр тяжести этой области и процесс объединения в области повторяется, причем в нем участвуют только дискреты, имеющие значения L — 1. Если в результате этой процедуры по-прежнему не выделено областей, размер которых превышает минимальный, точки захвата не выбираются. Отмечается невозможность выделения области и процесс анализа визуальной информации завершается. Когда для всех ’’окон” в цикле отмечается невозможность выделения областей, выдается сообщение оператору.
Если в определенной точке захвата минипулятору не удалось захватить деталь, параметры положения этой точки записываются в краткосрочную память. Для того чтобы избежать повторных безуспешных попыток захватить ту же деталь тем же способом, в бинарный образ 50 вставляется маркер ошибки. Маркер ошибки представляет собой крестообразную конфигурацию, составленную дискретом и четырьмя соседними с ним дискретами. Значение всех пяти дискретов устанавливается равным нулю. Центр маркера совмещается с точкой, в которой не удалось захватить деталь. Появление внутри области, соответствующей детали, маркера ошибки приводит к тому, что последующие точки захвата будут выбираться не ближе некоторого минимального расстояния от него. На рис. 6 показано, как маркер ошибки влияет на выбор точки захвата детали. Отметим, что в приведенном примере появление маркера ошибки вызвало образование двух областей, примерно одинаково удаленных как от маркера ошибки, так и от внешней границы первоначальной области.
Для организации технического зрения робота в общем случае необходимо знать пространственные проекции точек изображения. Если известны плоскости, в которых лежат точки образа, положение проецирующего вектора легко определяется по координатам точек его пересечения с этими плоскостями. Когда эти координаты определены, могут вычисляться такие пространственные характеристики, как расстояние, угол и площадь.
Для установления соответстия величин, вычисленных по изображе-
Рис. 6. Влияние маркера ошибки. Перед выполнением операции сжатия в правую конфигурацию дискретов был вставлен маркер ошибки. Место его вставки показано на левой конфигурации звездочкой
НИЮ, нымНИЮ, нымистинным пространствен- величинам, необходимо
НИЮ, ным
НИЮ, ным
;иметь достаточно точную математическую модель телекамеры. .Если определения линейных ве
личин заменяются измерениемточка захвата
угловых величин (углы между
проецирующими векторами), даже при использовании совершенной оптики возникают ошибки, вызываемые сферическим искажением. В практи
ческих системах желательно использовать все поле зрения камеры, а не ограничиваться только его средней частью, т.к. это приводит к снижению значения разрешающей способности. В описываемой системе для установления соответствия величин использовались аппроксимирующие полиномы второго порядка, коэффициенты которых определяются по методу
наименьших квадратов.
Проецируемый вектор задается в пространстве координатами двух точек его пересечения с плоскостями, положение которых фиксировано относительно телекамеры. Процесс вычисления координат этих точек иллюстрируется рис. 7. По заданным индексам строки и столбца точки образа вычисляются координаты точек пересечения вектора с плоскостями Zi и Z2. Значения ад, у ь ад и у2 получаются вычислением значений соответствующих каждой из величин функций вида
V = aR2 + ЬС2 +с RC + dR + IC + /.
где П — значение координаты лд, Pi, ад или у2 ;R — индекс строки образа; С - индекс столбца образа, a a.b , с. d, е. f - коэффициенты, полученные по методу наименьших квадратов.
Исходными данными для вычисления коэффициентов по методу наименьших квадратов являются опорные точки, заданные в плоскостях А и /2. Используется сеть опорных точек с квадратными ячейками размером п X я. Поскольку в общем случае координатные сетки робота (Z и ^ и телекамеры (Я и Q не совпадают друг с другом, приходится выполнять специальную процедуру калибрования. Эта процедура выполняется вблизи центра поля зрения с помощью круглой фишки, передвигаемой манипулятором. По результатам анализа этих перемещений опреде- -Пяется формула интерполяции. Применение этой формулы позволяет помещать калибровочную фишку в нужную опорную точку (с некоторой погрешностью). При определении формулы интерполяции фишка вначале веремещается только по оси X с измерением параметров ее положения по
.у. Л)
/ Проецирующий вектор
Фиксированная плоскость zz
Фиксированная плоскость г»
1 (Строка. „7 Плоскость
/ столбец) 7 изо5Ражсния
▻ COL
Рис. 7. Положение проецирующего вектора в пространстве. Параметры положения определяются пересечением вектора с двумя плоскостями, фиксированными относительно телекамеры
Рис. 8. Калибрование телекамеры. Показано взаимное расположение координатныхсистем плоскости образа и калибровочной плоскости
образу, затем процедура повторяется для оси Y (рис. 8). Эти перемещения связаны друг с другом следующим образом:
XR = SX !^ + 512ДУ;
ДС = 521^ + 522ДУ,
где
SH = (ДК / ДЛ^ду = 0;
S21 =(ДС/ДУ)ду = 0;
^i 2 ~ (XR I д У)ду _ о:
s22 =(ДС/ДУ)ДГ = 0.
Разрешая эти уравнения относительно Д X и ДУ, получаем формулу интерполяции, почти однозначно задающей сетку опорных точек образа при перемещении фишки согласно зависимостям:
. АТ = (512ДС-522Д R)ID;
ДУ= (521ДЯ-S^XCHD,
где D — 5| 2521 5i t S2 2.
После того, как в каждой из плоскостей получены координаты и2 опорных точек, по этой информации методом наименьших квадратов определяются наборы коэффициентов полиномов, аппроксимирующих значения координат в обоих плоскостях. Рассмотрим более формально порядок вычислений. Обозначим индекс строки образа через R, индекс столбца образа через С, а значение координат хь х2, ух или у2 через X. Поставим в соответствие каждому из дискретов образа, содержащих опорную точку, информационный вектор
Ji = (R2 ,С2 ,RC, R,C,1\ z= 1,. .. ,и2.
Вектор коэффициентов, соответствующих каждой из координат (хь У1,х2, J?) обозначим
А = (а, Ь. с, d, e,f)T.
Для всех опорных точек
Xi = J,A, i = 1,. . . , и2
и ли,что то же самое,
X = [J]A, где X - n-элементный вектор значений X,, а[ J] матрица размерностью (и X 6), составленная из строк J,. Вектор коэффициентов А по методу наименьших квадратов выражается как
А = ([ JjT't J] )-Ц J J^X, где произведение матриц дает обычную псевдоинверсную матрицу.
Программное обеспечение верхнего уровня. В ходе экспериментов с описываемой системой она работала как с одним бункером, так и с двумя бункерами, в которых лежали разные детали. При описании программного обеспечения предполагается, что используется два бункера. В случае использования одного бункера программное обеспечение работает аналогичным образом. Рабочий цикл робота показан на рис. 9. Цикл начинается, когда схват находится в нулевом положении над лотком и выдан сигнал ’’ноль”. В память ЭВМ вводится образ деталей, находящихся в бункере. Пусть для определенности это будет бункер 1. По окончании ввода начинается выполнение программ первой части анализа образа. Предполагается, что к этому моменту анализ образа, соответствующего второму бункеру (бункер 2), уже закончен. В момент его окончания выдается сигнал ’’готов”. По этому сигналу схват перемещается в точку проецирующего луча, лежащую в плоскости переноса деталей. Если сигнал готовности еще не выдан, схват перемещается в точку плоскости переноса, расположенную над центром буфера. Это позволяет минимизировать суммарное время ожидания и переноса схвата. Во время перемещения схвата продолжается выполнение программ анализа образа. (Как только выдается сигнал ’’готов", схват переадресуется в положение на Проецирующем луче). Положение на луче - исходное для выполнения
Камера 1Камера 1
Камера 1
Камера 1
Камера 2
Над центром бункера* \
Плоскость /переноса
Нулевоеположение
„Над центром / бункера* i \нНа проециру- V/ юш.ем пуме"
бункер Положениебункер ПоложениеПоложение бункерПоложение бункер
бункер Положение
бункер Положение
Положение бункер
Положение бункер
Деталь
отпускания ур/тдк Лоток отпускания12
Рис. 9. Схема рабочего цикла системы при работе с двумя бункерами. Показаныосновные положения манипулятора
последовательности операций подъема детали. Схват разворачивается в нужное положение и посылается вниз вдоль проецирующего луча. Выполняются операции захвата и подъема детали и схват возвращается в плоскость переноса. Затем схват перемещается в точку, находящуюся над положением отпускания. В этой точке проверяется, не выпала ли захваченная деталь из схвата. Если деталь на месте, схват опускается в положение отпускания (точка над лотком в непосредственной близости от него), отпускает деталь и возвращается в нулевое положение. Выдается сигнал ’’ноль” и начинается вторая часть рабочего цикла: в память ЭВМ вводится образ деталей, находящихся в бункере, из которого схват только что извлек деталь, а схват посылается в другой бункер, обработка образа которого к этому моменту завершена. Таким образом, при работе системы последовательно сменяют друг друга процессы анализа образов деталей, находящихся в бункере и извлечение деталей из этого бункера.
Программное обеспечение состоит из четырех параллельно выполняемых задач. Их выполнением управляет мультизадачная исполняющая система реального времени. Первая задача - головная, имеет идентификатор MTASK и предназначена для инициирования цикла извлечения деталей из двух бункеров. Описанный выше рабочий цикл обслуживается тремя задачами: NEAR,PICTUR и D PICK ;
Блок-схема головной задачи приведена на рис. 10. Вначале манипулятор переводится в начальное положение. Устанавливаются начальные значения координат по всем степеням свободы, включая раствор пальцев схвата. Далее на манипулятор подается команда на перенос схвата в нулевое положение. Одновременно вызывается задача NEAR, а выполнение задачи MTASK приостанавливается до тех пор, пока не будет получен сигнал "близко” (см. ниже). Для того чтобы в начале работы схват ожидал завершения анализа образа, соответствующего бункеру 1, набор параметров, управляющих выполнением задач, устанавливается так, что образ бункера 2 помечается негодным (см. ниже). После этого MTASK вызывает задачи
P1CTUR и DPICK и заканчивает свое выполнение. Задаче DP1CK присваивается наивысший приоритет.
f Блок-схема задачи NEAR приведена на рис. 11. Задача проверяет, нас- 'колько близко манипулятор находится от заданной точки назначения. В момент сближения она выдает сигнал ’’близко”. Между моментами считывания координат звеньев манипулятора (для которых определяется разность с координатами заданного положения) существуют промежутки 10 мс. Полученные разности сравниваются со списком допустимых погрешностей позиционирования для данного положения. Если хоть одна разность превышает допустимую погрешность, процедура выполняется еще раз. Когда все разности не превышают допустимых погрешностей, выдается сигнал "близко” и выполнение задачи завершается.
Блок-схема задачи PICTUR приведена на рис. 12. Эта задача выполняет анализ образов и передает задаче DPICK информацию о проектирующем векторе и точке захвата. В начале выполнения задача получает номер бункера, образ которого надо проанализировать. После получения сигнала "ноль” в память ЭВМ вводится образ деталей, находящихся в бункере, и выполняется первая часть анализа образа. Проверяется качество образа и выдается сигнал ’’образ годен” или образ не годен”. Если образ не годен, задача выполняет действия, необходимые для инициации анализа следующего образа, и перезапускается. Если образ годен, выполняется вторая часть анализа. Вычисляются данные о проецирующем векторе и точке захвата, после чего выдается сигнал ’’готов”. Наконец подготавливается анализ следующего образа и задача перезапускается.
Рис. 10. Блок-схема задачи MTASKРис. 10. Блок-схема задачи MTASKПолучить координаты точки назначения и допустиное отклонениеПолучить координаты точки назначения и допустиное отклонениеРис. 11. Блок-схема задачи NEARРис. 11. Блок-схема задачи NEAR
Рис. 10. Блок-схема задачи MTASK
Рис. 10. Блок-схема задачи MTASK
Получить координаты точки назначения и допустиное отклонение
Получить координаты точки назначения и допустиное отклонение
Рис. 11. Блок-схема задачи NEAR
Рис. 11. Блок-схема задачи NEAR
Блок-схема задачи DPICK приведена на рис. 13. Эта задача управляет всеми движениями робота; в частности, она организует выполнение последовательности операций подъема детали. В начале выполнения задача получает номер бункера, из которого следует извлечь деталь, и проверяет годность образа. Если образ не годен, выдается команда на перемещение манипулятора в нулевое положение, где он ждет завершения анализа другого образа. Если образ годен, подается команда на перемещение манипулятора в положение над центром бункера. Когда получен сигнал ’’готов”, на манипулятор подается команда перемещения в положение на луче проецирования в плоскости переноса. Выполняется операция ’’поднять деталь” (схват идет вниз вдоль проецирующего луча). Затем схват возвращается в плоскость переноса и подается команда на его перемещение в точку над положением отпускания. При получении сигнала ’’близко” проверяется наличие детали в схвате. Если деталь не захвачена, манипулятор перемещается в точку отпускания, деталь отпускается в лоток и выдастся команда на перемещение манипулятора в нулевое положение. По получении сигнала ’’близко” выдается сигнал ’’ноль”, устанавливаются параметры и задача перезапускается.
Данные экспериментов. На экспериментальной робототехнической системе, внешний вид которой показан на рис. 1, выполнен ряд опытов. Система использует телевизионные камеры с матрицами фотодетекторов в интегральном исполнении и схват параллельного действия. Используются четыре степени свободы манипулятора: три оси декартовых координат и вертикальная ось вращения схвата. Архитектура системы поясняется рис. 2. Она не меняется при переходе к работе с двумя бункерами, содержащими детали различных размеров.
По сравнению с современными стандартными промышленными
роботами манипулятор описываемой системы двигается довольно медленно. Скорость его перемещения по любой из линейных осей не превышает 30 см/с, а скорость вращения схвата не превышает 90°/с. В качестве деталей в экспериментах использовались титановые цилиндры длиной 6 и 7,6 см и диаметром соответственно 1,5 и 3 см.
При работе с одним бункером с деталями одного размера продолжительность цикла извлечения цилиндра и его переноса к приемному лотку составляла от 8 до 10 с. Основной причиной, вызвавшей такой разброс продолжительности цикла, были задержки, вносимые выполнением анализа зрительной информации при выборе точек захвата деталей. Влияние этих задержек при работе системы с двумя бункерами менее заметно, потому что анализ информации совмещается во времени с перемещениями манипулятора. При работе с двумя бункерами, в каждом из которых находились детали одного размера, время, затрачиваемое на
извлечение из бункера каждого цилиндра, составило от 5,5 до 7,5 с. Вторая причина разброса значений длительности рабочего цикла заключается в различной величине перемещений манипулятора в каждом цикле. Суммарный путь манипулятора зависит от положения детали в бункере как в горизонтальной плоскости, так и по глубине. Неудачные попытки извлечения детали также влияют на продолжительность рабочего цикла, но их влияние на приведенные результаты экспериментов невелико.
Заключение. Впервые было показано, что с помощью робота, управляемого на основе анализа визуальной информации, можно извлекать из бункеров детали, лежащие навалом. Экспериментальная робототехническая система с подсистемой технического зрения и схватом параллельного действия извлекает из бункеров цилиндры и переносит их в V-образный приемный лоток. Информация, необходимая для позиционирования манипулятора, получается в результате анализа бинарного образа. Дополнительная информация получается от простых сенсоров, размещенных на схвате.
Можно достигнуть сокращения продолжительности рабочего цикла, используя более скоростной манипулятор. Можно также перемещать схва! не в центр бункера, а в точку, соответствующую центру анализируемого ’’окна” - части зрительного образа. Это дает существенный выигрыш при работе с одним буфером. Другим резервом сокращения длительности цикла является уменьшение длины перемещений схвата, выполняемых с малой скоростью (например, при выполнении последовательности операций по подъему детали).
Система представляет собой первый шаг по пути придания роботам новых качеств, необходимых для их использования в автоматических производственных системах, особенно работающих с малыми сериями изделий. Система решает задачу извлечения деталей из бункера в общем виде. Этим доказывается эффективность сочетания эвристических алгоритмов машинного зрения и управления схватом, оснащенным сенсорами, при работе в режиме реального времени.
Нужно сделать еще многое, чтобы применить найденные приемы к решению других промышленных задач. В ближайшее время предполагается опубликовать результаты экспериментов с деталями, отличными от цилиндров. В ходе исследования возникло много вопросов, оставшихся нерешенными. Например, какова роль гибкой подвески схвата в компенсации ошибок, возникающих Вследствие упрощенности анализа образа или вносимых информационной системой? Какие сенсоры следует размещать на схвате, чтобы робот мог выполнять различные функции без его замены? Последнее может оказаться особо важным, если эти функции робот должен выполнять в пределах одного рабочего цикла.
Анализ образа изолированной детали, находящейся в схвате, существенно проще, чем анализ образа ’’кучи’’ деталей, лежащих в бункере. Поэтому основная цель анализа образа, соответствующего бункеру, состоит в выделении информации, достаточной для успешного извлечения любой детали. Часто даже после извлечения из бункера некоторые параметры положения детали в схвате остаются неопределенными. Это не 224
позволяет поместить деталь в нужное место, положить ее на рабочую поверхность или опустить в приемный лоток. Дополнительная информация, позволяющая определить все параметры положения детали, может быть получена в результате анализа визуального образа детали, находящейся в схвате. Недостаток этого подхода заключается в том, что для выполнения повторного осмотра детали обычно требуется вторая камера или выполнение дополнительных движений манипулятора. Последние выполняются для того, чтобы привести захваченную деталь в положение, в котором она не заслоняется от телекамеры деталями схвата и манирулятора. Использование как дополнительной камеры, так и дополнительных движений манипулятора нежелательно. Разработка методик, позволяющих обойтись без них, может составить предмет дальнейших исследований.
Описанная в статье робототехническая система была создана сотрудниками исследовательской группы по роботам. Особая благодарность приносится Джеймсу Холлу (Z Hall}, выполняющему техническое обслуживание системы. Авторы благодарят также всех, кто прочитал эту статью и своими замечаниями помог ее улучшить.
СПИСОК ЛИТЕРА ТУРЫ
A. Pugh. К. Waddon and W Heginbotham. 'Orientation and inspection of component parts." SPIE vol. 145. Industrial Applications of Solid-State Image Scanners, London. UK. pp. 66-67 (Mar. 1978).
M. Baird. "A computer vision data base for the indust rial bin of parts problem." General Motors Res. Publicauon.GMR-2502 (Aug. 1977).
M. Baird. "Image segmentation technique for locating automotive parts on belt conveyors." Fifth Int Joint Conf Artificial Inielhyeme. Cambridge. MA. pp. 694-695. Aug. 22-25.1977.
W Heginbotham. D. W. Gatehouse. A. Pugh. P W Kitchen and C. Page. "The Nottingham "SIRCH" assembly robot." Proc First Conf Industrial Robot Tech.. Nottingham. UK, pp. 129-142(Mar.27-29. 1973).
P. Martini and G. Nehr. "Recognition of angular orientation of objects with the help of optical sensors." The Industrial Robot, vol 6. pp. 62-69 (June 1979).
R. Nagel. G. VanderBrug. J. Albusand E. Lowenfeld. "Experiments in part acquisition using robot vision." National Bureau of Standards. CMEPT. Mechanical Processes Div.. Automation Tech. Sec . Washington. DC (Oct. 1979).
C. Rosen et al.. "Exploratory research in advanced automation." Fourth Rep.. Stanford Res Instit., Menlo Park. C A (June 1975).
C. Rosen et af, "Machine intelligence research applied to industrial automation." Sixth Rep., Stanford Res. Instit., Menlo Park. CA (Nov. 1976).
Y. Tsuboi. T. Shiraishi and N. Kosaka. "Positioning and shape detectiori algorithms for an industrial robot."Sist Comput Controls, vol. 4, pp. 8-16(1973).
G. VanderBrug, J. Albus and E. Barkmeyer, "A vision system for real time control of robots." Proc Ninth Int Svmp on IndustrialRobots. Washington. LX?, pp. 213-231. Mar. 13-15,1979.
Y. Tsuboi and T. Inoue. "Robot assembly system using TV camera.' Proc Sixth Int Svmp. on Industrial Robots. Nottingham. UK. pp. BB: 21-32. Mar. 24-26.1976.
D. Grossman and M. Biasgen. "Orienting mechanical parts by computer-controlled manipulator," IEEE Trans Syst.. Man. Cybern.. vol. SMC-5. pp. 561-565 (Sept. 1975).
J. Dessimoz. M. Kant. J. Zurcher and G. Granlund. "Recognition and handling of overlapping industrial parts." Proc. Ninth Int Svmp. on Industrial Robots, Washington, DC, pp. 357-366, Mar. 13-15.1979.
W. Perkins. "A model-based vision system for industrial parts," IEEE Trans. Comput., vol. C-27, pp. 126-143(Feb. 1978).
G. Falk. "Interpretation of imperfect data as a three dimensional scene," Artificial Intelligence, vol. З.рр 101-144(1972).
A. Guzman, 'Decomposition of a visual scene into three dimensional bodies." Proc. AFIPS Fall Joint Comput. Conf., vol. 33. pp. 291-304 (Dec. 1968).
R Kelley, J. Birk and L Wilson. 'Algorithms to visually acquire workpieces.' Proc Seventh Ini Symp on Industrial Robots. Tokyo. Japan, pp. 497-506. Oct 19-21. 1977.
S. Kashioka. S Takeda. V. Shima. T. Uno and T. Mamoda. "An approach to the integrated intelligent robot with multiple sensory feedback: visual recognition techniques.' Proc. Seventh Int Symp. on /ndu.strial Robots. Tokyo, Japan, pp. 53 1-538. Oct. 19-21. 1977.
A. Ambler. H. Barrow. C. Brown. R. Burstall and R Popplestone. "A versatile computer-controlled assembly system.' Third I nt Joint Conf on Artificial Intelligence. Stanford, CA. pp. 298-301, Aug. 20-23, 1973.
J Birk, R. Kelley and L. Wilson. 'Acquiring workpieces: three approaches using vision.' Proc. Eighth bit Svmp. on Industrial Robots. Stuttgart. West Germany, pp. 724-733, May 30-June 1 1978.
A. Ferloni. I. Franchetti. P. Vicentini and P. Fici. 'ORDINATORE: a dedicated robot that orientates objects in a predetermined direction.’ Proc Tenth Int Svmp on Industrial Robots. Milan. Italy, pp. 655-658. Mar. 5-7, 1980.
R. Kelley, J. Birk, D. Duncan, H. Martins and R. Telia, "A robot system which feeds workpieces from bins into machines,’ Proc Ninth Int Symp. on Industrial Robots, Washington, DC, pp. 339-355, Mar. 13-15, 1979.
J. Birk, R. Kelley and H. Martins, ‘An orienting robot for feeding workpieces stored in bins,' IEEE Trans Syst., Man Cybern., vol. SMC-11, pp. 151-160(Feb. 1981).
ГИБКИЙ СБОРОЧНЫЙ МОДУЛЬ/ >
С ВИЗУАЛЬНО УПРАВЛЯЕМЫМ УСТРОЙСТВОМ
ПОДАЧИ ДЕТАЛЕЙ
У. Б. Хегинботам, Д.Ф. Барнс, Д.Р. П э р д ью, Д.Дж. Л о,Инженерно-промышленная исследовательская ассоциация, Великобри-
тания
Представлено на 71 Международном симпозиуме по промышленным роботам, 7-9 октября 1981г., Токио, Япония. Перепечатывается с разрешения Японской ассоциации по промышленным роботам.
В статье описывается система, предназначенная для подачи, осмотра и сборки небольших деталей. Система программно настраивается на работу с деталями различных типов. Это качество, придающее системе универсальность, в сочетании со способностью к отбраковке дефектных деталей до того, как они поступают на сборку, оказывается особенно ценным для автоматизации сборочных операций при малых размерах серии изделий и организации межоперационного хранения, сортировки и контроля деталей.
Введение. При автоматизации выполнения сборочных операций особо важны два момента. Во-первых, необходимо выполнять внутриопера- ционный контроль всех компонентов сборочного узла. Так как в противном случае механизм может быть поврежден случайно попавшими в него предметами. Нельзя также гарантировать качество узла, собранного без внутриоперационного контороя. Во-вторых, механизм подачи деталей на сборку дожен обладать достаточной гибкостью. Только при выполнении этого условия система сможет работать в условиях мелкосерийного
производства, а ее перенастройка перед началом работы с новым сборочным узлом не будет занимать много времени.
Если рассматривать автоматизацию в целом, то решение вопроса о наилучших способах использования машинного зрения остается пока спорным. Следует ли применять машинное зрение при автоматизации сборочных операций, а если следует, то на сколько сложной должна быть такая система и на каком из этапов сборки ее использовать.
В настоящей работе описывается система, в состав которой входит устройство подачи деталей, система технического зрения и робот, поднимающий детали и переносящий их в определенное место. Система появилась в результате развития ранее выполнявшейся работы [ 1,2], в которой исследовалось использование оптоэлектронных устройств для осмотра сборочных компонентов после их выхода из подающего устройства вибрационного типа. С помощью микроЭВМ (LSI 11), обрабатывающей бинарную визуальную информацию, получались ответы на следующие вопросы: не является ли компонент дефектным; имеются ли у компонента существенные признаки (отверстия, уступы и т.п.), а если имеются, то каковы параметры их положения; какова ориентация компонента относительно двух перпендикулярных плоскостей, образованных стенкой и дном выходного лотка подающего устройства?
Требования к настройке механической части подающего устройства были минимальны, основная часть операций ’’настройки” выполнялась оператором с использованием интерактивного видеодисплея. Предполагалось, что работающий за дисплеем оператор может не знать в деталях конструкцию подающего устройства, но имеет определенный опыт работы с ним, достаточный для того, чтобы принять правильное решение в затруднительной ситуации.
В ходе настоящего исследования предполагалось приблизить условия работы системы к выполнению реальной сборочной операции. Для этого в ее состав был введен робот. Также предполагалось показать, что машинное зрение можно использовать для промышленной автоматизации сборочных операций при малых размерах серий изделий и при решении более общей задачи — организации контроля и сортировки деталей.
По сравнению с некоторыми современными экспериментальными и промышленными системами, используемая в описываемой установке СТЗ сравнительно проста. Это имеет свои положительные стороны: малое время распознавания, простота программирования и малая стоимость. Основные усилия разработчиков были направлены на организацию освещения, поиск наилучшего расположения камеры и доработку механизма транспортирования компонентов.
Работа сборочного модуля. Для демонстрации работы сборочного модуля использовались бобышки велосипедного тормоза. Деталь представлена на рис. 4.
Рассмотрим рис. 1 — 3. Детали, входящие из чаши подающего устройства А проходят через блок предварительного контроля В. Детали загружаются в чашу подающего устройства с помощью простого приспособления. Вышедшая из чаши деталь попадает на ленту транспортера С и регист-
Рис. 1. Общий вид блока предварительного контроля, ленточного транспортера и механизма толкателя
Рис. 2. Общий вид манипулятора и поворотного устройства
рируется с помощью фотодатчика D и осветителя Е. По мере перемещения по тракту чаши детали принимают одно из нескольких стандартных положений, распознававемых при обработке каждой детали. После того, как деталь попадает на конец ленты транспортера, толкатель F опускается и попадает деталь на блок осмотра G. Световой поток от лампы//, проходя через обтюратор I, структуризуется и попадает на основание тракта. С помощью призмы J часть светового потока отражается на боковую стенку тракта. В тех местах, где на основание и боковую стенку тракта попадает свет, вмонтированы тонкие линейки оптических волокон — по одной в стенку и дно. Они формируют линейные зрительные образы, соответствующие горизонтальной и фронтальной проекции детали, которые передаются в сканирующую полупроводниковую камеру, размещенную в корпусе V . Скорость перемещения толкателя постоянна, что позволяет по линейным образам построить методом сканирования двухмерный образ. На рис. 4 приведен набор бинарных образов детали, соответствующих различным ее положениям.
Следующим движением толкатель (у которого имеются две рабочие лопасти) перемещает деталь на блок захвата А". В этом блоке способ обработки деталей зависит от их ориентации. Робот (модель INA фирмы ’’Отомейшн Робомат” (Automation Robomat) оснащен поворотным уст-
ройством, которое может поворачиваться на 180° вокруг вертикальной оси. С помощью поворотного устройства деталь, находящуюся в положении 1 (см. рис. 4) можно перевести в положение 2 и наоборот. То же можно сказать о положениях 3 и 4, но деталь, находящуюся в положении 1
Рис. 3. Расположение лотков. Слева — дисплей
I Рис. 4. Устойчивые положения обрабатываемой детали:
а — вид сверху; б — вид сбоку. Действия робота: 1 — захват детали и перенос ее на плату; 2 — захват детали, ее разворот и перенос на плату; 3 и 4 — возврат детали
в чашу подающего устройства
или 2, нельзя перевести в положение 3 или 4 и наоборот вследствие ограниченных возможностей робота. Более совершенный робот мог бы выполнять подобные преобразования положений детали.
Если деталь, находящаяся на блоке захвата, кондиционная и находится в одном из двух допустимых положений, схват М робота L опускается и захватывает деталь. Далее схват поднимается и переносит деталь на плату с фасонным отверстием N. Фасонное отверстие имеет такую форму, что через него может пройти только деталь в положении 1. Панель с фасонным отверстием моделирует выполнение операции сборки. Если деталь в блоке захвата находится в положении 2, то в момент ее переноса на плату с фасонным отверстием поворотное устройство О поворачивает схват на 180°. Если деталь бракованная или находится в недопустимом положении, платформа станции захвата К наклоняется и деталь падает в лоток Р. Если деталь бракованная, то открывается дверца уловителя Q и деталь будет направлена в лоток R и по нему - в бункер для брака S. Если деталь кондиционная, но находится в неприемлемом для робота положении, т.е. 3 или 4, дверца уловителя будет закрыта и деталь по лотку Р попадет в бункер возврата Т, собирающий детали для повторного использования. Детали, прошедшие 'сборку”, через отверстие в плате падают в бункер U.
Работа системы управляется микроЭВМ LSI 11 фирмы ”Диджитал Икуипмент” (DEC), смонтированной в корпусе V. Программирование системы для работы с конкретными деталями выполняется с помощью видеотерминала IV и светового пера.
Архитектура системы. На рис. 5 утолщенными линиями показан поток деталей, проходящих через систему. Входящие детали загружаются в
чашу подающего устройства, из которой они по одной проходят через блок предварительного контроля и попадают на ленту транспортера. Когда деталь доходит до конца транспортера, она попадает в зону действия толкателя, который с постоянной скоростью проводит ее через блок осмотра. Изображение детали строится методом линейного сканирования, выполняемого с помощью телевизионной камеры. Соответствующий этому изображению образ обрабатывается микроЭВМ. При этой обработке определяется положение детали и проверяется ее кондиционность. В зависимости от полученных результатов деталь направляется в один из трех бункеров.
Детали, находящиеся в положениях 1 и 2, обрабатываются роботом, детали, находящиеся в положениях 3 и 4, направляются в бункер возврата, а в реальных условиях производства могут автоматически направляться обратно в чашу подающего устройства. Бракованные детали направляются в бункер для брака.
Тонкими линиями на рисунке показана циркуляция информации. Центральный процессор выполняет четыре различных функции: управление подачей деталей в блок осмотра, обработку полученной с телевизионной камеры видеоинформации, управление роботом и управление лотками. Последняя функция отличается от трех предыдущих тем, что соответствующая ей программа составляется заранее, до начала эксплуатации системы.
Программное обеспечение системы написано на макрорасширении языка ассемблера LSI 11 [ 1 и 2], особенно удобном для составления программ, работающих в мультипрограммном режиме. Макрорасширение предоставляет программисту некоторые средства языков программирования высокого уровня, но позволяет создавать программы, не уступающие по скорости выполнения тем, что написаны на языке ассемблера.
Программирование системы. Обучение системы распознаванию различных деталей выполняется с использованием видеодисплея и светового пера. Полученная однажды программа может быть запомнена и в дальнейшем использована. Составление программы распознавания состоит в следующем. Через блок осмотра пропускается деталь в некотором положении. Полученный бинарный образ отображается на видеотерминале. С помощью светового пера на экране указываются опорные точки и система запоминает, на темном или на светлом фоне находится каждая из них. Точки размещаются таким образом, чтобы фиксировать положение характерных особенностей детали, например отверстий или границы. Для всех возможных положений детали должны быть созданы ’’шаблоны” — совокупности опорных точек.
В момент работы системы образы, соответствующие обрабатываемым деталям, сравниваются с хранимыми ’’шаблонами”. Проверяется вся совокупность опорных точек: на каком фоне они находятся в образе обрабатываемой детали. Если все точки лежат на одинаковом фоне и в "шаблоне” и в образе, то положение детали определено. Деталь направляется в блок захвата и захватывается роботом или направляется в бункер возврата. Если ни один из "шаблонов” не подходит, деталь не распознается и далее рассматривается как бракованная. Допустимые отклонения размеров деталей можно скомпенсировать,располагая опорные точки на некотором расстоянии от границ детали и отверстий. Точки, помещенные в центры темных или светлых областей образа контрольной детали, позволяют убедиться в отсутствии лишних отверстий и не полностью удаленного из отверстий материала. Для определения каждого положения детали обычно достаточно десяти точек.
Следует отметить, что такой способ осмотра не может дать точных результатов — с его помощью нельзя обнаружить небольшие дефекты детали. Он предназначен для проверки наличия таких особенностей, как отверстие или уступ; точность измерений не превышает 5 % величины измеряемого размера (хотя ее можно повысить).
Однажды составив программу распознавания детали (набор "шаблонов”) , можно записать ее на внешний носитель и в последствии использовать. После того как программа составлена, система может работать без видеодисплея.
Производительность системы. Рассмотренный вариант системы тратит на обработку детали пять секунд. Эта скорость определяется характеристиками используемого робота и тракта подачи деталей из чаши подающего устройства в блок осмотра. Время обработки визуальной информации составляет примерно долю секунды, так что резерв повышения быстродействия системы достаточно велик, хотя для его использования необходимо изменить конструкцию механизмов, подающих детали.
Особенно велика эффективность системы при отбраковке случайно попавших в подающее устройство предметов и всевозможных некондиционных деталей. Возможна ситуация, при которой из-за ограниченных возможностей камеры подающего механизма кондиционная деталь будет отправлена в брак. Однако вероятность того, что бракованная деталь
будет принята за кондиционную, может быть сведена к нулю соответствующим подбором опорных точек при составлении программы распознавания детали.
Разрешающая способность системы технического зрения, как уже отмечалось выше, недостаточна для точного контроля, но вполне достаточна для определения положения детали и грубых отклонений от заданной формы.
Заключение. В статье была описана система, выполняющая подачу, осмотр и сборку небольших деталей. Она может выполнять и другие функции, например общий осмотр и сортировку и организацию промежуточного хранения деталей перед их подачей в сборочный механизм.
Описанная система построена с использованием двух основных принципов. Первый из них — использование подающего устройства общего назначения с минимальными переделками механической части, что обеспечивает универсальность и позволяет избежать заклинивания деталей. Второй — осмотр всех поступающих на сборку деталей, что позволяет избежать сбоев и заклинивания сборочного устройства. Вероятностью отбраковки кондиционной детали можно пренебречь, поскольку ущерб от эюго не сравним с тем, который может быть причинен попаданием в сборочное устройство бракованной детали или постороннего предмета. Во время работы системы у разработчиков и демонстрации на выставке ”Ау гоман-81” система ни разу не поместила на плату с фасонным отверстием посторонних предметов (в качестве которых использовались обломки стружки).
Описанная система имеет некоторые ограничения. Во-первых, скорость выхода деталей из чаши подающего устройства слишком мала — в десять раз медленнее скорости обработки зрительной информации. Изменив конструкцию подающего механизма, можно добиться существенного повышения скорости работы. Во-вторых, для некоторых приложений точность осмотра детали может оказаться недостаточной. Здесь также можно добиться значительного улучшения показателей. В-третьих, используемый в системе робот не способен работать с некоторыми из положений деталей, хотя более 50 % деталей, выходящих из чаши подающего устройства, им обрабатываются. Тем не менее для некоторых случаев может оказаться желательным использование более универсального робота, имеющего возможность работать с более широким классом деталей.
Эти резервы улучшения работы системы не требуют выхода за рамки сегодняшних возможностей технологии и, вероятно, будут использованы при создании ее промышленного варианта.
Авторы благодарят фирму ’’Эйлсбери Отомейшн” (Aylesbury Automation) за предоставление в их распоряжение подающего устройства и фирму ” ИНА Отомейшн” ( INA Automation) за предоставление робота. Выражается благодарность также Бердетту (A. Berdett) и Ричардсу (J.E. Richards) за оказанную ими помощь.
СПИСОК ЛИТЕРА ТУРЫ
A. J. Crenshaw, W. В. Heginbotham, A. Pugh, ‘Software Тechniques for an Optically Tooled Bowl Feeder’, Trans IEE 3rd International Conference on Control of Automation , London ( arc 1979).
W. B. Heginbotham, A Crenshaw, A Pugh, Proc. 1st Ini. Conf on Assembly Automation. Brighton, UK, pp. 265-275 (March 1980).
ГЛАВА 6
ПРОМЫШЛЕННОЕ ИСПОЛЬЗОВАНИЕ СТЗ
Три статьи, входящие в эту главу, посвящены исследованиям возможностей применения роботов, снабженных в различных технологических процессах, остальные описывают успехи, достигнутые в решении некоторых конкретных производственных задач.
СОРТИРОВКА отливок с помощью СТЗНА ЗАВОДАХ ФИРМЫ "ДЖЕНЕРАЛ МОТОРС"В КАНАДЕ
Р.Д. Бауман, фирма "Дженерал Моторе оф Кенеда"(General Motors of Canada Ltd),
Ж.А. Вильмхерст, фирма "Эр-Эм-Ти Энжиниринг"(RMT Engineering Ltd) ? Канада
Перепечатывается из "Сенсор Ревю", т,2,№3 (июль 1982).Печаталось также в "Инжениринг Дайжест", т. 28, №6(июнь 1982)
Первая промышленная СТЗ ’’Консайт” разработана фирмой ’’Дженерал Моторе”. Эта установка используется для сорировки шести типов отливок в литейном цехе завода в Сен Кэтрине, Онтарио, в состав системы производительностью 1400 отливок в час входят ленточный транспортер и три промышленных робота. Система работает в цехе (см. рис. 1,2).
История создания. В середине 70-х годов появились первые надежные интеллектуальные промышленные роботы. В настоящее время они широко используются промышленными фирмами Северной Америки как
строгаястрогая
строгая
строгая
Рис. 1. Отливки, поступающие по транспортеру с частотой до 1400 штук в час, распознаются системой технического зрения и с помощью трех роботов МИЛА КРОН ТЗ перегружаются в транспортировочные контейнеры. Литейный цех завода фирмы "Дженерал Моторе" в Сен Кзтринс, Онтарио, Канада
средство повышения конкурентоспособности на мировом рынке. Особое распространение роботы получили на предприятиях автомобильной промышленности. Это объясняется высокой повторяемостью и монотонностью сборочных операций, выполняемых на конвейере.
До последнего времени обязательным условием использования роботов была
фиксация положения обрабатываемых деталей, повто
ряющаяся в каждом рабочем цикле. Технических средств, которые могли бы быстро давать управляющей системе робота точную информацию об
изменении параметров положения детали, не существовало.
Необходимость использования роботов не на сборочных операциях, а в литейном цехе выдвинула задачу поиска обрабатываемых деталей на
ленте движущегося транспортера, выделяя их из большего числа ’’зрительных” помех”. В литейном цехе нет возможности использовать транспортеры с регулярно расположенными фиксаторами деталей. Детали лежат на ленте транспортера в тех положениях, которые они заняли после обдирочных или шлифовальных операций.
Рабочие, стоящие по обе стороны транспортера, осматривают детали и отделяют брак, поворачивая дефектные отливки в определенное положение. Далее по ходу транспортера кондиционные детали снимаются с ленты
и пемещаются в транспортные контейнеры. Оставшиеся на ленте детали идут на повторную обдирку, шлифовку или в брак.
Была поставлена задача автоматизировать поиск кондиционных деталей, распознавание их типа, снятие с транспортера и погрузку в соответствующий транспортный контейнер. Средняя производительность линии должна была составить 1200 деталей в час с пиковыми нагрузками до 1400 деталей в час.
В 1979 г. в Исследовательской лаборатории фирмы ’’Дженерал Моторе” в Уоррене, Мичиган была разработана система технического зрения ’’Консайт”. Эта система может обнаруживать деталь на движущейся ленте транспортера и почти в режиме реального времени (за 200 мс) передать информацию о параметрах ее положения в устройство управления про-
Рис. 2. Общий вид визуально управляемой робототехнической системы
мышленным роботом. Это позволяет ему снять деталь с ленты и поместить ее в надлежащий контейнер.
Ранее было решено, что многие операции в литейном цехе будут автоматизированы с применением технического зрения. В январе 1981 г. в техническом центре фирмы была начата разработка промышленной системы, в состав которой вошли система ’’Консайт” и новейшие роботы, способные работать с движущимися деталями, оснащенные управляющими устройствами, вычислительная мощность которых обеспечивала работу в реальном масштабе времени.
Некоторые затруднения вызвало решение вопроса о том, сколько роботов необходимо для обслуживания линии производительностью 1400 деталей в час. Мнения разделились: одна группа разработчиков считала, что необходимо четыре робота, тогда как другая настаивала на том, что вполне достаточно двух. Было принято компромиссное решение: в состав системы вошли три робота.
Подобная неопределенность возникает всякий раз, когда необходимо принять какое-нибудь решение, связанное с длительностью рабочего цикла робота. Хотя существует несколько подходов к программированию и есть возможность принять некоторые компромиссные решения, опыта разработки и эксплуатации промышленных систем, на который можно было бы ориентироваться, пока явно недостаточно.
Имеющееся в составе системы устройство технического зрения расположено по ходу транспортера вслед за участком осмотра. Далее по ходу транспортера в непосредственной близости друг от друга расположены три робота и ЭВМ СТЗ (см. рис. 2). Каждый робот оснащен схва- том, приспособленным для манипулирования деталями всех шести возможных типов. Рядом с роботом стоят два транспортируемых контейнера, в которые он помещает детали (рис. 3). В конце транспортера, на расстоянии 60 футов (около 18 м) от устройства технического зрения, расположена станция ручного снятия деталей с ленты и бункер для деталей, требующих доработки.
Рис. 3. Два робота ТЗ снимают отливки с ленты транспортера. Детали захватываются специальным раздвигающимся охватом
На участке снятия деталей с ленты роботами транспортер поднимается под углом 4 , так что на его конце детали могут свободно падать в стоящий на полу бункер. Это обстоятельство вынуждает использовать роботы с двумя степенями свободы. В реальной системе используются роботы с тремя степенями свободы, что обусловлено их конструкцией. Для выравнивания рабочей зоны робота с лентой транспортера все роботы установлены на специальных основаниях.
Принципы действия системы ’’Консайт”
Структурированное освещение. Во многих системах технического зрения осматриваемая деталь освещается через прозрачную ленту транспортера или поверхность стола зоны осмотра. При этом деталь находится между направленными навстречу друг другу телекамерой и источником света. Такой метод называется ’’встречное освещение”. Структуризации освещения в этом случае нет: пространство под рабочей зоной системы освещено равномерно.
Основной недостаток встречной схемы освещения — необходимость использовать прозрачную ленту транспортера — в условиях литейного цеха проявляется очень быстро. Прозрачная лента не обеспечивает должной прочности, ее поверхность царапается деталями, что приводит к утрате прозрачности и возникновению помех и т.д. Эти проблемы заставили отказаться от использования встречного освещения. Требовалость найти способ обнаружения лежащих на черной ленте транспортера черных деталей.
Для решения этой задачи была выбрана система ’’Консайт”, использующая структурированное освещение (рис. 4). В ее состав входят два линейных источника света. В каждом из источников установлена лампа длиной 36 дюймов (90 см) и мощностью 3,5 кВт, свет от которой падает на цилиндрическую линзу длиной 32 дюйма (80 см). Мощность и длина лампы выбраны в соответствии с шириной ленты транспортера.
Линзы обоих источников света фокусируют световой поток на поверхность ленты транспортера. На ней образуется освещенная линия шириной около 0,125 дюйма (3,1 мм), перпендикулярная направлению движения транспортера. Фокусировка и сведение двух освещенных линий
в одйу выполняется с помощью подстроечных приспособлений, входящих в состав источников.
На высоте 12 футов (3,6 м) над лентой транспортера размещена телевизионная камера с линейкой, состоящей из 256 фотодиодов. Высота установки камеры подбирается в зависимости от конкретных условий работы. Оптическая система камеры настраивается так, чтобы освещенная линия на поверхности ленты была в фокусе. Использование сенсорного массива с 256 диодами для работы с транспортером шириной 36 дюймов (90 см) определяет линейную разрешающую способность системы в направлении "поперек движения": 0,14 дюйма (3,5 мм).
На рис. 5 приведена схема осветительной установки, используемой в системе. Приведен вид сверху, со стороны телевизионной камеры. На лен-
Рис. 4. Два линейных источника света, расположенных с обеих сторон от камеры слинейкой фотодиодов, находящейся на высоте около 2 м, проецируют на лентутранспортера два плоских световых потока. Угол наклона световых потоков по от-ношению к оптической оси телекамеры составляет 15 :
1 — камера; 2 — лампа; 3 — линза; 4 — плоский световой поток;
5 — освещенная линия на транспортере; 6— лента транспор
тера
Рис. 5. В тех местах, где деталь пересе
кает световые потоки, освещенная линия отклоняется и выходит из поля зрения камеры:
— источник света и линзы; 2 — поле зрения камеры; 3 — освещенная пиния;
— деталь; 5 — участки освещенных линий, не попадающие в поле зрения камеры
Рис. 6. Детали в момент прохождения зоны осмотра. Видно, как отклоняются освещенные линии. Слева — отливка, справа — калибровочный дискРис. 6. Детали в момент прохождения зоны осмотра. Видно, как отклоняются освещенные линии. Слева — отливка, справа — калибровочный дискРис. 7. В случае использования толькоодного плоского светового потока вы-сокие детали будут перекрывать его довхода в поле зрения камеры
Рис. 6. Детали в момент прохождения зоны осмотра. Видно, как отклоняются освещенные линии. Слева — отливка, справа — калибровочный диск
Рис. 6. Детали в момент прохождения зоны осмотра. Видно, как отклоняются освещенные линии. Слева — отливка, справа — калибровочный диск
те транспортера лежит деталь, освещаемая двумя линейными источниками света.
Угол, составляемый оптическими осями источников, равен 30° (см.
рис. 4^. Значит, оптические оси каждого из них отклоняются от вертикали на 15 . На рис. 5 показана освещенная деталь. Отметим, что поверхность детали прерывает световые потоки обоих источников. Освещенные линии на поверхности детали сдвигаются и выходят из поля зрения телевизионной камеры. Это явление показано на рис. 6. Таким образом, система срабатывает тогда, когда не обнаруживает в поле зрения освещенной линии.
На рис. 7 показано, почему необходимо использовать два источника света. Если бы использовался один источник, появление на ленте тени детали вызывало бы ложные срабатывания и параметры положения детали на ленте были бы определены неверно. Использование второго источника света и правильно подобранный угол наклона оптических осей обоих источников позволяют свести влияние, оказываемое тенями, к нулю.
Высота обрабатываемых деталей, минимальное расстояние между ними на ленте транспортера и угол наклона оптических осей источников света должны быть рационально увязаны друг с другом. Например, если высокие детали будут расположены слишком близко, они будут затенять друг друга. Чтобы избежать этого, придется уменьшить угол наклона оптических осей источников света. Это неизбежно приведет к уменьшению
расстояния, на которое отклоняются освещенные линии на поверхности детали, и освещенная линия может остаться в поле зрения камеры. Деталь в системе представляется темным силуэтом на белом фоне, а граница этого силуэта соответствует контуру детали.
Синхронизация с движением транспортера. Около ведущего вала транспортера расположен оптический датчик, формирующий информацию о положении и скорости движения ленты. В одном корпусе с ним расположены устройства синхронизации работы робота с движением транспортера. Движение передается на датчики от обрезиненного ролика, прижимающего ленту транспортера к его ведущему валу, через цепные передачи.
Получаемая от этих датчиков информация передается в зрительный предпроцессор, где она используется для выдачи в телевизионную камеру сигнала запуска развертки. Этот сигнал выдается каждый раз, как только лента транспортера переместится на 0,14 дюйма (3,5 мм). При развертке считываются сигналы от всех 256 диодов. Поскольку разрешающая способность системы в направлении, перпендикулярном движению ленты, также равна 0,14 дюйма (3,5 мм), вся поверхность ленты транспортера оказывается разбитой на квадраты со стороной 0,14 дюйма (3,5 мм). Эти квадраты называются дискретами или элементами растра. Состояние дискретов, считанное при развертке, записывается в буфер для дальнешей обработки. Из буфера информация считывается ЭВМ системы технического зрения по мере завершения ею выполнения других задач.
Роботы получают информацию о положении ленты транспортера от специализированных синхронизирующих устройств. ЭВМ системы технического зрения связана с роботами специализированными каналами RS 232 пропускной способностью 9,6 килобод и несколькими линиями ввода-вывода.
Работа системы. Наличие детали на ленте транспортера определяется по прерыванию освещенной линии. Полученная в результате анализа изображения освещенной линии информация используется для распознавания типа детали и определения параметров ее положения.
Двухмерный образ объекта, находящегося на ленте, строится из совокупности линейных образов, каждый из которых получен в процессе развертки. Первый из ’’темных” дискретов определяет положение края детали. Если в детали нет отверстий, то следующий ’’светлый” дискрет определяет положение другого края детали. Точка, в которой состояние двух соседних дискретов различно, называется точкой перехода. Количество точек перехода, найденных в одном линейном образе, всегда должно быть четным. Ширина поперечного сечения детали определяется разностью номеров дискретов, смежных с первой и последней из найденных точек перехода, умноженной на значение разрешающей способности системы технического зрения.
После завершения накапливания информации об объекте программное обеспечение строит его образ и по нему вычисляет площадь детали, ее минимальный и максимальный диаметры, количество отверстий, моменты второго порядка и другие статистические характеристики. Затем по-
Рис. 8. Угол разворота деталей — важный параметр положения, определяемый системой технического зрения
лученные значения сравниваются с эталонами, записанными в каталоге деталей, построенном в процессе обучения системы. При обучении задаются диапазоны допустимых отклонений от каждого из эталонных значений, поэтому при сравнении нет необходимости искать точное совпадение измеренных и эталонных значений.
Если зафиксировано совпадение совокупности характеристик с эталонной совокупностью, система определяет угол разворота детали относительно направления движения ленты и определяет параметры положения лежащей на детали точки захвата роботом (рис. 8). Далее выбирается один из роботов и ему посылается последовательность команд, выполнение которых приведет к снятию детали с транспортера. Робот выполняет эти команды и помещает деталь в соответствующий контейнер.
Выполнение программ обработки визуальной информации и распознавание объектов занимает большую часть времени, отведенного на вычисления. Этим программам присвоен наивысший приоритет. Это означает, что в моменты максимальной загрузки системы могут возникнуть ситуации, при которых деталь находится в рабочей зоне робота и робот свободен, но ЭВМ занята выполнением программ обработки визуальной информации и не может немедленно обслужить робота. Большой объем подлежащей обработке визуальной информации вызывает снижение общей скорости работы системы. Однако появляющиеся задержки невелики. Даже в моменты пиковых перегрузок они не превышают 500 мс. Для людей, незнакомых с системой, также задержки почти незаметны.
Программа-диспетчер определяет, какие заготовки должны быть обработаны каждым из трех роботов. По мере того, как детали опознаются системой технического зрения, их параметры положения и координаты точек захвата помещаются в очередь. По мере освобождения роботов эта информация выбирается из очереди и передается роботу. При этом система управления работает только с теми роботами, от которых получен сигнал готовности. Система опрашивает готовность и распределяет выполнение операций по готовым роботам.
Система всегда имеет информацию о том, какие детали находятся в рабочих зонах каждого из трех роботов. Если по какой-либо причине робот не успевает обрабатывать деталь, ее обработка будет передана следующему по ходу транспортера роботу.
Система следит за тем, чтобы детали различных типов никогда не попадали бы в один контейнер. Любая деталь может быть помещена либо в
свободный контейнер, либо в контейнер, где уже лежат детали того же типа. Если на ленте транспортера находятся детали нескольких типов, программа-диспетчер определяет, в какой из контейнеров должна попасть каждая из них. Текущая версия системы позволяет не останавливать транспортер при смене типа обрабатываемых отливок — переход от обработки деталей одного типа к обработке деталей другого типа происходит автоматически. В переходный период система обрабатывает детали обоих типов.
Программа-диспетчер разбивает ленту транспортера на продольные участки — окна, размер которых для каждого из роботов может определяться индивидуально. Рабочая зона робота определяется тем, насколько далеко вверх и вниз по движению транспортера он может захватывать детали. Определена также длительность рабочего цикла роботов и время, необходимое для захвата им деталей. Совокупность этих временных характеристик и пространственных ограничений предоставляет программисту известную свободу выбора метода организации прохождения потока деталей через систему.
Программа-диспетчер выполняет также целый ряд функций обслуживания. Например, она ведет учет количества деталей, находящихся в каждом из контейнеров. Когда контейнер наполняется, а стоящий рядом уже полон или отсутствует, соответствующий робот исключается из рабочего цикла системы, а обработка деталей передается роботу, у которого в стоящих рядом с ним контейнерах имеется свободное место. По мере замены полных контейнеров робот снова включается в рабочий цикл.
При сбое механизмов робота он выдает сигнал в ЭВМ системы технического зрения, которая принудительно завершает выполнение переданной этому роботу последовательности команд. Робот исключается из рабочего цикла, а детали, которые он должен был обработать, перераспределяются между другими роботами. Ресурсы системы всегда используются с максимальной отдачей. Система очень быстро реагирует на освобождение роботов, смену интенсивности потока деталей или их типа, наполнение транспортных контейнеров.
Опыт эксплуатации системы показывает, что с обработкой потока кондиционных деталей интенсивностью 1200 штук в час справляются два робота. Алгоритм диспетчеризации построен таким образом, чтобы система стремилась снять с ленты все детали, пользуясь только двумя роботами. Третий, расположенный далее остальных по ходу транспортера, находится в резерве и используется при увеличении интенсивности потока деталей или сбоях других роботов.
Обучение. В систему включены три задачи, выполняемые в режиме обучения: осмотр деталей, калибрование системы технического зрения и запоминание точки захвата при снятии детали с ленты.
Детали. При распознавании деталей система пользуется каталогом статистических характеристик. Составляется этот каталог на этапе обучения методом осмотра деталей.
При переключении системы в режим обучения на экране монитора отображается незаполненная таблица статистических характеристик. Для каждой из них следует определить максимальное, минимальное и среднее зна-
чения и диапазон допустимых отклонений. Осматриваемая деталь помещается на ленту транспортера и проходит под телекамерой, при этом система технического зрения определяет ее характеристики.
На экране монитора отображается таблица статистических характеристик с заполненными по результатам осмотра одной детали графами. Затем процедура осмотра повторяется до 50 раз: используются различные экземпляры деталей одного типа, устанавливаемые на ленту транспортера в различных положениях. Различные экземпляры рекомендуется использовать для того, чтобы статистически усредненные характеристики учитывали отличия деталей друг от друга, обусловленные технологией их изготовления.
Процесс обучения завершается назначением имени детали и занесением статистических характеристик в каталог под этим именем. Процесс обучения выполняется с каждым из типов деталей, с которым системе придется работать.
Во многих случаях можно выделить одну статистическую характеристику, играющую наибольшую роль в распознавании деталей, и при работе использовать только ее. Остальные стистические характеристики можно исключить из рассмотрения, записав в каталог их минимальные и максимальные значения, равные соответственно наименьшему и наибольшему числу, представимому в ЭВМ системы технического зрения.
Калибрование. В процессе калибрования системы технического зрения определяется взаимосвязь ее системы координат с системами координат роботов. Учитывается смещение и поворот систем координат относительно друг друга.
Калибрование выполняется с помощью специальных дисков, информация о которых заранее вносится в каталог статистических характеристик. Калибровочный диск перемещается под камерой системы технического зрения. Когда он попадает в рабочую зону робота, транспортер останавливается. Схват робота перемещается в центр диска и его координаты вводятся в ЭВМ системы технического зрения. По полученной информации ЭВМ вычисляет параметры преобразования, переводящего точку из координат зрительной системы в координаты робота.
Калибрование системы должно выполняться с максимальной возможной точностью. Ошибки калибрования могут повлиять на надежность снятия детали с ленты.
Снятие детали. После калибрования системы с помощью дисков аналогичная процедура выполняется с каждым из типов деталей, которые робот будет снимать с транспортера. Когда деталь, пройдя под ТВ камерой, входит в рабочую зону первого робота, транспортер останавливается. Схват робота вручную переводится в нужную точку захвата детали. Координаты схвата робота вводятся в ЭВМ системы технического зрения. В дальнейшем они используются при формировании последовательности команд, передаваемых роботу для выполнения операции снятия детали. Те же действия выполняются, когда деталь входит в рабочие зоны второго и третьего роботов.
Запоминание точки захвата — последняя операция, выполняемая на
этапе обучения. Любые погрешности, допущенные на этом этапе, могут привести к появлению ошибок или нестабильности работы системы.
Опыт эксплуатации. Описанная система представляет собой серьезный шаг вперед в развитии современной промышленной технологии. Достигнут показатель производительности роботов до 600 обработанных деталей в час. Конечно, многое в системе можно усовершенствовать, гибкость ее в настоящее время невелика. Наиболее очевидный шаг в направлении улучшения работы системы — обеспечение распознавания касающихся деталей и деталей, с которых не удален облой.
Доказана состоятельность концепции визуально управляемой системы с несколькими роботами. Жизнеспособность, проявленная системой в неблагоприятных условиях литейного производства, говорит о том, что ее можно использовать практически в любых производственных условиях. Адаптация системы Консайт к конкретным условиям не требует серьезных перестроек производственного процесса.
При настройке и эксплуатации системы не возникло сложных проблем, хотя некоторые небольшие затруднения пришлось преодалевать. Поскольку система ’’Консайт” использует отраженный свет, на ее работу могут оказывать влияние паразитные отражения и блики. При существующей схеме обработки перед тем, как поступить на транспортер, детали подвергаются очистке струей дроби. Детали, подлежащие ручной доработке или повторной очистке, отбраковываются и снимаются с транспортера вручную в самом начале ленты.
В результате повторной очистки поверхность отливки приобретает зеркальный блеск. Высокая отражающая способность поверхности приводит к тому, что даже неглубокие впадины детали представляются на образе как отверстия. Хотя на самом деле в обрабатываемых системой деталях может быть от одного до семи отверстий (в зависимости от типа детали), максимальное значение этой характеристики в каталоге деталей приходится увеличивать искусственно.
Линзы источников света отливаются из органического стекла. Оптические характеристики материала подобраны так, чтобы обеспечить наибольшую прозрачность в инфракрасном диапазоне (от 700 до 1100 нм). Длина линз 32 дюйма (80 см), ширина 2 дюйма (50 мм), а наибольшая толщина 1 дюйм (25 мм). Поскольку используемые лампы имеют номинальную мощность 3,5 кВт каждая, линзы и корпус осветительного устройства сильно нагреваются. Вначале линзы закреплялись в корпусе только в двух точках — за концы, но оказалось, что в результате перегрева они прогибаются, что приводит к нарушению фокусировки. Схема крепления линз была изменена, и теперь их деформация исключается.
Загрязнение линз оседающей на них пылью не вызвало затруднений. Раз в несколько дней линзы обдуваются струей сжатого воздуха, а тонкий слой пыли почти не влияет на работу системы.
При настройке системы обнаружилось, что новая лента транспортера слегка коробится: ее края оказались на 3/4 дюйма (16 мм) выше середи- ; ны. Это вызвало отклонение освещенной линии и система фиксировала, [что на краях ленты имеются длинные детали малой высоты. Поскольку
длина этих ’’деталей" не ограничена, одна из задач визуальной обработки завершалась аварийно из-за переполнения разрядкой сетки ЭВМ. Ликвидировать затруднение удалось, установив в зоне действия системы технического зрения несколько скобок, ограничивающих перемещения краев ленты транспортера как в вертикальном, так и в горизонтальном направлениях.
Считывание информации из буфера телевизионной камеры синхронизируется сигналами от датчика положения ленты транспортера. В моменты падения деталей с ленты в бункер брака резко меняется нагрузка на двигатель привода транспортера, что приводит к скачкам скорости движения ленты. Если такие скачки следуют друг за другом с малым промежутком, возможна потеря информации в буфере, что приведет к не распознаванию детали. Остроту проблемы удалось снизить, установив на конце транспортера специальное съемное устройство.
Поле зрения любой оптической системы ограниченно. Система ’’Кон- сайт” не может распознавать детали, частично выходящие из ее поля зрения. Два типа отливок, с которыми пришлось работать системе, имели сильно выступающие части, иногда выходящие за пределы ленты транспортера, что приводило к их отбраковке. В настоящее время рассматриваются способы расширения поля зрения системы, но, к сожалению, это неизбежно приводит к снижению разрешающей способности.
О невозможности распознавания системой ’’Консайт” соприкасающихся деталей уже упоминалось. В случае необходимости можно ввести в систему дополнительные усовершенствования, сделающие такое распознавание возможным. В настоящее время система обрабатывает асимметричные детали большой высоты, что позволяет при некотором их взаимном расположении избежать отбрасывания теней даже при малом расстоянии между деталями. Контролеры, проверяющие качество очистки деталей в начале транспортера, стараются обеспечить необходимое расстояние между деталями: от 3/4 до 1 и 1/4 дюйма (16-29 мм) в зависимости от расположения деталей.
В моменты высокой интенсивности потока обрабатываемых деталей обеспечить необходимое расстояние между ними невозможно, вследствие чего отбраковывается некоторая часть годньгх деталей. Однако их количество невелико и им можно пренебречь.
ИСПОЛЬЗОВАНИЕМЕТОДОВ РАСПОЗНАВАНИЯ ОБРАЗОВВ УСЛОВИЯХ ПРОМЫШЛЕННОГО ПРОИЗВОДСТВА
Ж.-П. Герман и др.. Отдел новой техники и средств автоматизации при Национальном управлении заводов фирмы "Рено", Франция
Представлено на 12 международном симпозиуме по промышленнымроботам, 9-11 июня 1982 г., Париж, Франция
В статье описывается пример практического использования методов распознавания образов на заводе фирмы ’’Рено” в г. Клеон (Франция). Рассматривается промышленная робототехническая система, автоматически снимающая с палет лежащие на них коленчатые валы. Подчеркивается необходимость использования сенсоров нескольких типов. Обсуждаются проблемы, возникшие в ходе внедрения системы. В качестве сенсоров использованы телевизионная, камера с системами освещения и связи с ЭВМ, установленный на манипуляторе ультразвуковой дальномер, две фотоячейки и несколько индукционных датчиков. Надежность работы системы обеспечивается выбором стратегии управления.
Производственная задача. Сначала рассмотрим производственную задачу в общих чертах.
Историческая справка. Некоторое время тому назад возникла потребность в автоматизации операции подачи на транспортер автомобильных коленчатых валов. Ранее эта операция выполнялась вручную: рабочий переносил по три двенадцатикилограммовых детали в минуту. Монотонность и утомительность операции обусловили необходимость ее автоматизации.
Коленчатые валы вырабатываются и укладываются на палеты на литейном заводе в г. Дуврен, расположенном более чем в 300 км от Клеона. Во время транспортирования уложенные на палеты детали неизбежно смещаются из своих первоначальных положений, поэтому для работы с ними приходится использовать методы распознавания образов.
Исходные данные задачи. На палете стандартных размеров (1400 X X 1000 мм) размещается 108 коленчатых валов. Они уложены в шесть штабелей по девять слоев в штабеле. Каждый слой образуется двумя деталями (рис. 1). Палета окрашена в темный цвет, коленчатые валы изготовлены из блестящего металла и не окрашены. Смещение штабелей деталей по поверхности палеты предотвращается специальными пластмассовыми перегородками, установленными на деревянном основании. В каждом из слоев штабеля коленчатые валы расположены перпендикулярно к деталям, составляющим нижележащий слой. Это в некоторой степени предотвращает смещение деталей.
Рабочую среду системы можно определить как трехмерную, частично упорядоченную. Как уже отмечалось выше, обеспечить четкую фиксацию всех деталей невозможно из-за тряски при перевозке. По этой же причине коленчатые валы невыгодно транспортировать в бункерах навалом: они
Рис. 1. Схема укладки деталей напалеты
могут получить механическое повреждение. Кроме того, детали так сцепляются друг с другом, что разбирать их из бункера очень сложно даже вручную. С учетом сказанного становится ясно, что укладка деталей в штабели на палету - решение, совмещающее довольно большую плотность
упаковки с доступностью деталей. Выбор такого способа упаковки был сделан задолго до того, как появились первые промышленные роботы.
Распознавание образов. Задача распознавания коленчатых валов, уложенных в штабель, сильно отличается от задачи распознавания и определения параметров положения деталей, лежащих на ленте транспортера. Главные отличия (которые сильно осложняют решение) состоят в следующем. Задача распознавания трехмерна, поскольку кроме координат коленчатого вала в горизонтальной плоскости X и У и угла поворота 0 приходится определять и высоту его расположения в штабеле Z. При выполнении захвата детали должны быть определены четыре параметра положения: X, Yt Z, 6. Поскольку детали уложены в штабель, нет необходимости измерять еще два угла поворота детали в плоскостях, отличных от горизонтальной.
Возникают сложности с выделением контуров деталей, поскольку телекамера считывает изображение, соответствующее не только верхнему слою деталей, но и слою, лежащему ниже (рис. 2).
Система должна работать в условиях цеха, в двухсменном режиме, с загрязненными деталями, при большом количестве посторонних источников света. При этом надежность ее работы должна составлять 99,9 %, что соответствует одному отказу за смену.
Робот и механическая часть системы. В системе используется стандартный робот с гидравлическим приводом Рено-Акма 80, оснащенный управляющей системой И5. Используется довольно сложная система управления, в число возможностей которой входят подключение системы распознавания образов и ультрозвукового дальномера, управляемого отдельным микропроцессором. Система управления может изменять задание траектории движения робота, учитывая информацию, полученную от сенсоров.
Рабочий орган робота. От использования электромагнита в качестве рабочего органа робота пришлось отказаться: это привело бы к намагничиванию коленчатых валов и осложнению удаления стружки при последующей механической обработке. Был сконструирован специальный схват, оснащенный двумя пальцами и гидравлическим приводом. Привод пальцев независимый: как только один из них соприкасается с поверхностью
детали, его перемещение останавливается. Полное усилие захвата развивается, только когда оба пальца соприкасаются с деталью. Такое взаимодействие пальцев обеспечивается специальным механическим приспособлением и позволяет компенсировать некоторую неточность позиционирования схвата: движения пальцев не разрушают штабель деталей.
Для обеспечения надежности захвата детали схват должен позиционироваться с точностью ±15 мм и + 2° от фактического положения точки захвата (длина коленчатого вала составляет 50 см, а толщина 20 см). Эти значения определяют требующуюся точность сенсоров и системы распознавания образов. Допустимая погрешность позиционирования схвата существенно меньше допустимых смещений палеты от номинального положения (более 10 см).
Узел загрузки транспортера. Робот перегружает коленчатые валы на гусеничный транспортер, который используется для перемещения их к обрабатывающим станкам и в качестве межоперационного накопителя, позволяющего обеспечить безостановочную работу станков при смене палет. Робот укладывает деталь на две И-образные стойки, с которых она перекладывается на транспортер при помощи специального съемного устройства. Используются стадартные транспортер и съемное устройство, требующие, чтобы деталь была уложена на стойки достаточно точно (± 5 мм). Это требование довольно сложно соблюсти: с одной стороны, робот может захватывать деталь с линейной погрешностью до 15 мм, с другой стороны, он должен уложить ее на стойки с погрешностью, не превышающей 5 мм, Другими словами, необходимо определить параметры положения детали в схвате, для чего требуется дополнительный сенсор.
Общая компоновка системы. Общая компоновка системы показана на рис. 3 и 4. В рабочей зоне робота размещены две палеты — по одной с каждой стороны. Робот работает с одной из них до тех пор, пока на палете есть детали. После того, как детали на одной палете кончились, система сообщает об этом оператору и, не останавливаясь, начинает работу с другой палетой. В соответствии с требованиями безопасности робот со всех сторон огражден сеткой и в момент смены палет отключается. Радиус рабочей зоны робота составляет два метра, точность позиционирования
Рис. 2. Распознавание образа, соответствующего коленчатому валу:
а — выделение односвязной области; б — определение диаметров; в — проверка
вдоль оси
Рис. 3. План размещения робототехнической системы разгрузки деталей в палет:7 — на обработку; 2 — стойка; 3 — фотодатчики; 4 — рефлектор; 5 — коленчатый вал; 6 — ограждение;7 — робот; 8 — аварийный выключатель робота; 9 — продольная направляющая; 10 — палета 2;11 — палета 1; 12 — камера II;13 — камера I; 14 — откатная дверь II; 15 — откатная дверь I;16 — предупредительные огниРис. 3. План размещения робототехнической системы разгрузки деталей в палет:7 — на обработку; 2 — стойка; 3 — фотодатчики; 4 — рефлектор; 5 — коленчатый вал; 6 — ограждение;7 — робот; 8 — аварийный выключатель робота; 9 — продольная направляющая; 10 — палета 2;11 — палета 1; 12 — камера II;13 — камера I; 14 — откатная дверь II; 15 — откатная дверь I;16 — предупредительные огни
Рис. 3. План размещения робототехнической системы разгрузки деталей в палет:
7 — на обработку; 2 — стойка; 3 — фотодатчики; 4 — рефлектор; 5 — коленчатый вал; 6 — ограждение;
7 — робот; 8 — аварийный выключатель робота; 9 — продольная направляющая; 10 — палета 2;
11 — палета 1; 12 — камера II;
13 — камера I; 14 — откатная дверь II; 15 — откатная дверь I;
16 — предупредительные огни
Рис. 3. План размещения робототехнической системы разгрузки деталей в палет:
7 — на обработку; 2 — стойка; 3 — фотодатчики; 4 — рефлектор; 5 — коленчатый вал; 6 — ограждение;
7 — робот; 8 — аварийный выключатель робота; 9 — продольная направляющая; 10 — палета 2;
11 — палета 1; 12 — камера II;
13 — камера I; 14 — откатная дверь II; 15 — откатная дверь I;
16 — предупредительные огни
Рис. 4. Робот Рено-АКМА V80 пе-реносит коленчатый вал с палетына транспортер
± 1 мм (не смешивать с повторяемостью). Возможности робота используются практически полностью. Допуск на положения палет ± 10 см позволяет менять их с помощью обычного погрузчика.
Датчики. Рассмотрим более подробно устройство датчиков, используемых в системе, уделяя особое внимание тому, что они должны работать в условиях цеха.
Телевизионная камера. Как уже отмечалось выше, телекамера должна считывать изображения блестящих деталей на темном фоне. Ситуация может осложняться тем, что детали могут потемнеть в результате ржавения, а поверхность палеты при случайном попадании на нее масел или смазок может приобретать блеск. Телекамера должна обеспечить: высокую контрастность изображения, возможность адаптации к различным условиям освещенности и отражающей способности деталей, размер элемента растра не более 5 мм, не очень высокие требования к освещению.
В системе используется камера Ньювикон фирмы ’’Томпсон” (Thomson) , доработанная для работы совместно с остальными частями системы. Она обеспечивает большую контрастность (у —1), чем видикон (у = = 0,6) и хорошую устойчивость к расплыванию изображения. Установка диафрагмы объектива выполняется автоматически, так что уровень видеосигнала всегда постоянен. С ЭВМ телекамера соединена с помощью специального кабеля.
Фоточувствительное поле телекамеры состоит из 256 X 382 элементов. Так как камера оборудована объективом с фокусным расстоянием 25 мм и установлена на высоте 5,6 м над палетой, размер элемента растра составляет около 4 мм. Телекамера заключена в сварной корпус, установленный на конструкции цехового перекрытия. Для выполнения периодического калибрования телекамеры на полу нанесены специальные отметки.
Освещение обеспечивается светильниками, размещенными вокруг оптической оси телекамеры. Светильники расположены так, что их свет, отражаемый от горизонтальной поверхности, не попадает в объектив. Этим исключается возможность появления на изображении пластика, которым покрыта поверхность палеты или масляного пятна. Посторонние источники (например, окна цеха) дают рассеянный свет, влияние которого сводится к нулю автоматической регулировкой диафрагмы телекамеры.
В системе используются две телекамеры, расположенные над обеими палетами.
Примененный в системе алгоритм машинного зрения использует значения размеров коленчатого вала, поэтому до определения параметров его положения в горизонтальной плоскости необходимо определить, на какой высоте над поверхностью попа находится рассматриваемый в настоящий момент слой деталей. Эта высота может в зависимости от количества оставшихся в штабеле деталей меняться от 20 см до 1м. Изменение размеров детали на изображении составляет до 14 % ее длины и не может не приниматься во внимание. Этот эффект перспективы можно уменьшить, расположив камеру на большей высоте, но в конкретном случае этого не позволили сделать низкие потолки цеха. Эффект перспективы является причиной одного парадокса, который будет описан ниже.
Ультразвуковой дальномер. Ультразвуковой дальномер используется для определения высоты деталей над полом. В системе используется стандартный ультрозвуковой датчик фирмы ’’Поляроид”, размещенный внутри схвата. Времязадающая схема дальномера была доработана для повышения точности измерений. После доработки было проведено измерение
характеристик прибора. При отражении сигналов от нормально расположенной плоскости они составили: диапазон измеряемых расстояний — от 25 см до 4 м, точность измерений + 0,2 %, идеальная линейность в диапазоне измерений, направленность: телесный угол конуса распространения сигнала не более 10°.
Рабочая частота преобразователя 60 кГц, диаметр излучателя 5 см. Увеличить рабочую частоту дальномера не позволяет поглощение сигнала воздушной средой. Увеличению диаметра излучателя препятствует структура схвата, на котором он устанавливается. Увеличение направленности излучения прибора ограничено рефракционными явлениями. В силу перечисленных ограничений улучшить характеристики дальномера не представляется возможным. Некоторого их улучшения можно было бы достигнуть, заменив воздушную среду жидкостью, но для того чтобы сделать это, надо затопить весь цех, что вряд ли приемлемо.
Для предохранения прибора от загрязнения он закрыт тонким листом пористого материала, не мешающего работе.
Основную сложность при работе с дальномером представляет его узкая направленность. Для того чтобы измерить расстояние до детали, робот должен перенести дальномер в точку над этой деталью, а это не так просто.
Образуется порочный круг:
для того чтобы определить данные для позиционирования робота, нужно воспользоваться телекамерой;
для того чтобы телевизионная система могла определить параметры положения детали, нужно с помощью дальномера определить, на какой высоте находится эта деталь;
для того чтобы дальномер мог определить, на какой высоте расположена деталь, робот должен поместить его точно над этой деталью, и т.д.
Для того чтобы выйти из этого замкнутого круга, в системе используется описанный ниже метод последовательных приближений.
Функционирование системы. Описание работы системы начнем с того момента, когда утром в понедельник включается питание. В памяти системы информации нет. Для приведения системы в рабочее состояние и начала работы последовательно выполняется несколько операций.
Калибрование дальномера. Поскольку скорость звука меняется при изменении температуры воздуха, дальномер приходится калибровать. Выполняется зто довольно просто: дальномер направляется на пол и выполняются три измерения, причем при выполнении каждого из них высота прибора над полом различна. ЭВМ проверяет линейность измерений и вычисляет значение соответствующих коэффициентов. Измерения на каждой из высот выполняются трижды и их результаты учитываются только в том случае, если отсчеты не отличаются друг от друга более чем на 3 мм. Это позволяет свести к нулю влияние случайных шумов, попадающих в приемник дальномера. На практике узкая направленность ультразвукового дальномера обеспечивает хорошую отстройку от акустических помех.
Определение палеты с меньшей высотой. Дальномер устанавливается в 3 м над каждой из палет и определяет высоту штабелей лежащих на них деталей. Обработка начнется с той палеты, на которой деталей меньше.
Поиск "низких” штабелей деталей. Предыдущее измерение предназначено для грубой оценки высоты штабелей деталей на палете. В некоторых случаях один или несколько штабелей могут оказаться ниже других (например, из них вручную были взяты детали для проверки качества). В этом случае нужно запретить системе выборку деталей из этих штабелей, т.к. при ее выполнении манипулятор робота может натолкнуться на более высокий штабель.
Определение высоты штабелей производится с высоты, на 70 см превышающей ранее определенную высоту деталей на палете. Предполагается, что детали верхнего слоя штабеля находятся в номинальных положениях. При выполнении измерений с высоты 70 см рабочая зона дальномера имеет диаметр 15 см, что больше-величины возможного смещения деталей из номинальных положений и величины отверстия в середине штабеля. Измерение дает высоту штабеля с точностью ± 5 см (точность ± 0,2 % достигается только при работе с плоскими объектами). Такой точности не хватает для определения точки захвата коленчатого вала, но ее достаточно для работы алгоритма распознавания образов.
После выполнения измерений робот отводится в исходную позицию, чтобы не заслонять поле зрения телекамеры.
Анализ штабеля. Далее выполняется первая процедура распознавания образов. Камера считывает изображение и преобразовывает его в бинарный образ, выполняя операцию порогового ограничения. Образ, полученный в результате этой операции, представлен на рис, 2. Ясно, что из-за плоскостного характера образа даже человеку непросто определить по нему, в каком направлении лежат коленчатые валы в верхнем слое штабеля. Иногда случается, что лежащий сверху вал отображается менее ясно, чем лежащий под ним. При ручной разборке штабеля проблема не возникает, так как рабочий обладает стереоскопическим зрением.
Для решения задачи определения направления коленчатого вала, лежащего в верхнем слое штабеля, специальный алгоритм определяет центры всех шести находящихся на ленте штабелей. Если один из них ниже остальных, эта операция для него не выполняется.
Измерения с помощью дальномера. Информацию о высоте расположения деталей можно получить только с помощью дальномера. На этот раз он располагается гораздо ближе к штабелю (30 см) в четырех заранее определенных точках. В каждой из них выполняется измерение. Последовательность отсчетов может выглядеть следующим образом: ’’выступ- углубление-выступ-углубление” или ”углубление-выступ-углубление-выс- туп” или ’’углубление-выступ-углубление-большое углубление”, что соответствует следующим трем случаям: два коленчатых вала вдоль осих, два коленчатых вала вдоль оси у, один коленчатый вал вдоль оси у (второй вал отсутствует).
Отметим, что при высоте расположения дальномера 30 см его рабочая зона имеет диаметр 6 см. Поэтому луч дальномера может пройти меж-
ду коленчатыми валами верхнего слоя (номинальное расстояние между ними 8 см) и отразиться от коленчатого вала нижнего слоя. Таким образом используется узкая направленность прибора.
Распознавание образа коленчатого вала. К началу выполнения этой процедуры в ЭВМ записана следующая информация: точная (± 5 см) высота расположения коленчатого вала, приблизительный (± 10°) угол поворота коленчатого вала в горизонтальной плоскости, приблизительные (+ 5 см) координаты середины штабеля.
При выполнении процедуры формируется образ, соответствующий квадрату с центром, совмещенным с серединой штабеля. Над этим образом выполняются следующие операции: определение связных областей, определение выпуклого охватывающего многоугольника, вычисление диаметров этого многоугольника, упорядочение диаметров по длинам, проверка чередования светлых и темных областей вдоль линии диаметра (см. рис. 2).
Захват детали. Схват робота переводится в точку, соответствующую середине коленчатого вала, координаты которой вычислены с максимальной точностью. До того как схват робота захватит деталь, с помощью дальномера определяется точное значение ее координаты (± 2 мм). Это измерение необходимо потому, что при большой погрешности в определении координаты робот может повредить дальномер или уронить недостаточно надежно захваченную деталь, разрушив весь штабель.
Отпускание детали. Как уже отмечено выше, робот должен положить деталь на две V-образные стойки. Дополнительная сложность этой операции заключается в том, что шейки коленчатого вала, которыми он укладывается на V-образные стойки, неодинаковы: одна ’’толстая”, другая — ’’тонкая”. Для робота это безразлично, но на транспортер деталь должна попасть в строго определенном положении. На загрузочном узле транспортера установлены две фотоячейки. Робот, перемещая деталь в направлении стоек, прерывает ею луч света в первой фотоячейке. Полученная от нее информация позволяет уточнить положение находящейся в схвате детали и соответствующим образом откорректировать траекторию дальнейшего движения робота, добиваясь точности опускания детали На стойки ± 5 мм. Луч второй фотоячейки перекрывается только в том случае, если ’’толстая” шейка коленчатого вала попадает не на ту стойку. В этом случае робот разворачивает вал на 180° (рис. 5) .
Следует отметить, что не все из выше перечисленных процедур повторяются при обработке каждой детали. Периодичность выполнения процедур такая'-’ежедневно с 1 по 8, для каждой палеты с 3 по 8, для каждой детали с 6 по 8.
Таким образом, для каждой детали процедура выполняется довольно быстро. Дополнительные операции (с 3 по 5) занимают около 30 с, за минуту выполняется обработка трех деталей.
Скорость распознавания образов довольно высокая: образ, соответствующий паре коленчатых валов, распознается быстрее, чем за 2 секунды. Такая скорость обработки обеспечивается специальным многопроцессорным вычислителем, управляющим работой камеры и сбором информации.
Рис. 5. Приспособление для укладки коленчатых валов на транспортер:
1 — транспортер; 2 — подъемник; 3 - стойка; 4 — схват; 5 — фотОдатчик; 6 — рефлектор
Авторы не ставили целью описывать в настоящей статье работу установки во всех подробностях. В заключение отметим, что в системе имеется несколько индукционных датчиков и выключателей. Они предназначены для: определения переполнения транспортера, фиксации неверного расположения коленчатого вала на V-образных стойках и остановки съемника во избежание поломок, остановки робота в случае появления в рабочей зоне погрузчика с новой палетой или человека.
Заключение. В статье подчеркнуты сложности, появляющиеся при попытке перенести некоторую лабораторную систему в цех. Во многих публикациях важнейшие проблемы точности работы, управления оборудованием, техникой безопасности и т.п. обходятся молчанием. Сложность даже простейшей системы с искусственным интеллектом очень велика. В цеху весьма затруднительно выполнять тонкие и сложные манипуляции с деталями; видимо, поэтому в настоящее время имеется так мало интеллектуальных промышленных систем, несмотря на то, что стоимость дополнительной (по сравнению с обычным роботом) аппаратуры невелика. Описанная в статье система — одна из немногих, работающих на производстве.
Для развития техники работы робототехнических систем с деталями предстоит еще очень много сделать. Еще больших затрат усилий требует
автоматизация сборочных операций, где от робота требуется большая ’’сноровка”.
Эта работа представляет собой результат труда многих авторов, в число которых входят: Ж. Бак, Ж." Шаброль, Ж. Шевалье, Т. Крапле, Ж.Л. Фонтен, Д. Гюэ, И. Лакрю-Казенев, Ж. Ле Рузо, Г. Мишар, П. Пардо, Ж.Р. Пассемар, В. Патерносте, М.С. Пти, Д. Салафи и А. Руссо.
УСТРОЙСТВА ОКРАСКИС УПРАВЛЕНИЕМ ОТ ТЕЛЕВИЗИОННОЙ СИСТЕМЫ
Джонстон, фирма "Хэйден Драйсис Интернешнл"(Haden Drysys International), Великобритания.
Представлено на коллоквиуме "Промышленное использованиетехнического зрения роботов", 24 ноября 1981 г..
Институт инженеров-электриков, Лондон
Введение. Описывается устройство, предназначенное для окраски деталей, оборудованное совершающей возвратно-поступательные движения головкой распыления краски. В его состав входит распыляющая головка с устройством включения-выключения и траверса, вдоль которой совершает возвратно-поступательные движения распыляющая головка. Окрашиваемая деталь перемещается перед траверсой. Обычно управление распыляющей головкой осуществляется с помощью установленных на траверсе концевых выключателей. Такой метод управления вполне приемлем, когда размер партии окрашиваемых деталей велик и нет необходимости часто менять амплитуду движений распыляющей головки.
Одиннадцать лет тому назад возникла потребность в более гибком способе управления работой распылителя. Это объясняется двумя причинами. Во-первых, устройства окраски распылением стали использоваться на конвейере для окраски бортов автомобильных корпусов. Величина размаха движений красящей головки при этой операции должна постоянно меняться в зависимости от высоты корпуса. Во-вторых, эти устройства стали применяться для окраски малых партий деталей. Это вызвало необходимость менять закон перемещений распыляющей головки часто и с минимальными затратами времени. В первом случае был выбран способ управления, использующий предварительно составленные и записанные в память программы, задающие закон движения распыляющей головки в соответствии с формой детали, поступающей на окраску. Для каждого типа деталей составлялась своя программа. Во втором случае использовались фасонные эксцентрики. Применение сменных эксцентриков обеспечивало быстрое изменение закона движения распылительной головки.
В настоящее время наиболее перспективным методом управления счи-
тается использование телевизионной камеры, осматривающей детали, поступающие на окраску. Информация, полученная телевизионной системой, используется для управления перемещением и выключением распылительной головки при окраске перемещаемой мимо нее детали. При таком подходе нет необходимости в использовании заранее составленных программ или фасонных эксцентриков. Их функции берет на себя самонастраивающаяся телевизионная система управления. Эта система называется ’’Видеоспрей” (Videospray). После пяти лет, затраченных на ее разработку и опытную эксплуатацию в лаборатории, система готово к промышленной эксплуатации.
Принципы построения системы. Первоначально предполагалось, что оптическая ось камеры будет совмещена с плоскостью движений распылительной головки и будет следить за ее работой. К сожалению, при проверке системы проявился интересный эффект. Как только перед телекамерой появлялась деталь, устройство управления включало распыление краски и в поле зрения камеры появлялось плотное облако краски, заслонявшее деталь. Это облако телевизионная управляющая система распознавала как деталь и продолжала красить. Так возникла необычная положительная обратная связь. В то же время стало очевидно, что использовать такую схему управления можно только в моменты прекращения работы распыляющей головки или головка не должна находиться в поле зрения телекамеры.
Следующим решением было включать управляющую систему только тогда, когда головка доходит до конца амплитуды размаха и меняет направление движения. В этих точках из-за нелинейного характера движения распыление всегда отключается. Телевизионная система может считать образ части детали, окрашиваемый следующим движением распылительной головки, обработать его и принять решения о том, когда при этом проходе включать распыление. Эти решения записываются в память, а при выполнении прохода считываются оттуда и выполняются. Сформированный таким образом и записанный в память закон движения можно использовать многократно. Например, если вдоль траверсы движутся несколько распылительных головок, вторая и последующие головки работают по тому же закону, что и первая, только с временным сдвигом.
Одним из первых решений было использовать для распознавания деталей отраженное, а не встречное освещение. При размещении оптической оси в плоскости движения распыляющих головок встречное освещение использовать невозможно, т.к. на заднем плане поля зрения камеры находится облако расйыленной краски, не пропускающее свет. Однако когда было принято решение о предварительном осмотре детали и записи режима прохода в память, использование схемы встречного освещения стало возможным. Но в годы, когда система проектировалась (1973— 1974), статическая память стоила довольно дорого (приблизительно 100 фунтов стерлингов за килобит). Стоимость системы была сильно ограничена, и было решено продолжать пользоваться отраженным светом. Впоследствии оказалось, что это решение было правильным. Использование от-
раженного света обеспечило системе большую гибкость при внедрении в промышленных условиях.
Очевидно, что распылительная головка обладает большой инерционностью и не может мгновенно реагировать на подаваемые ей управляющие сигналы. Для компенсации этой инерционности в системе предпринимаются специальные меры. Основная задержка возникает при включении распыления: оно выполняется с помощью пневмоцилиндра, сдвигающего запорную иглу, после чего формируется конус распыленной краски. Использование пневматического привода вызвано тем, что при работе окрашивающего устройства создается пожароопасная ситуация, исключающая использование электрооборудования.
Для упрощения работы с установкой было решено ввести в ее состав небольшой видеомонитор, установленный в одном корпусе с телекамерой. Такое устройство иногда называют электронным видоискателем. Его использование позволило легко наводить телекамеру и фиксировать ее положение. Этот же монитор используется для отображения генерируемых системой маркеров и видеосигналов, делая ненужным использование при настройке системы вольтметра и осцилографа.
На той же стадии разработки следовало решить, с какой точностью должна работать система. Типовыми значениями были приняты: для размаха движений распыляющей головки 2 м, для большой и малой оси эллиптического сечения конуса распыленной краски в районе поверхности детали 150-250 мм и 50-100 мм соответственно. При таких условиях точность работы системы 20 мм оказывается вполне приемлемой.
Итак, предстояло создавать управляющую систему, осматривающую детали, подлежащие окраске, перемещаемые мимо совершающей возвратно-поступательные движения распыляющей головки. По результатам осмотра система должна была принимать решения, определяемые формой детали, и составлять расписание включения и выключения распыляющей головки при очередном проходе над деталью (с точностью 20 мм), соблюдение которого позволило бы более экономно расходовать краску, повышая тем самым эффективность системы.
Устройство системы. В короткой статье невозможно привести достаточно подробное описание устройства системы, поэтому автор счел нецелесообразным включать в нее какие-либо блок-схемы. Вместо них приводится описание основных проектных решений. Другой причиной краткости описания системы послужило моральное старение многих ее узлов. Система ориентирована на конкретное оборудование и не имеет в своем составе микропроцессора.
Источники информации. 1. Телевизионная камера, формирующая информацию об окрашиваемой детали.
Генератор импульсов А, связанный с механизмом возвратно-поступательного движения, выдающий импульс через каждые 20 мм перемещения распылительной головки.
Генератор импульсов 5, связанный с механизмом возвратно-поступательного движения, выдающий импульс при прохождении распылительной головки через нижнюю мертвую точку.
a)a)рис. 1. Типовая установка:а — схема типовой установки: 1 — задняя стенка кабины окрашивающего устройства; 2 — точка наводки телекамеры; 3 — деталь, подлежащая окраске; 4 — кабина окрашивающего устройства; 5 — ок- ' на; 6 — зеркало; 7 — источник света; 8 — телекамера с злектрон- ' ным видоискателем; 9 — меха- - низм возвратно-поступательного : движения; 10 — конвейер; б — 1 внешний вид устройства окраскирис. 1. Типовая установка:а — схема типовой установки: 1 — задняя стенка кабины окрашивающего устройства; 2 — точка наводки телекамеры; 3 — деталь, подлежащая окраске; 4 — кабина окрашивающего устройства; 5 — ок- ' на; 6 — зеркало; 7 — источник света; 8 — телекамера с злектрон- ' ным видоискателем; 9 — меха- - низм возвратно-поступательного : движения; 10 — конвейер; б — 1 внешний вид устройства окраски
a)
a)
рис. 1. Типовая установка:
а — схема типовой установки: 1 — задняя стенка кабины окрашивающего устройства; 2 — точка наводки телекамеры; 3 — деталь, подлежащая окраске; 4 — кабина окрашивающего устройства; 5 — ок- ' на; 6 — зеркало; 7 — источник света; 8 — телекамера с злектрон- ' ным видоискателем; 9 — меха- - низм возвратно-поступательного : движения; 10 — конвейер; б — 1 внешний вид устройства окраски
рис. 1. Типовая установка:
а — схема типовой установки: 1 — задняя стенка кабины окрашивающего устройства; 2 — точка наводки телекамеры; 3 — деталь, подлежащая окраске; 4 — кабина окрашивающего устройства; 5 — ок- ' на; 6 — зеркало; 7 — источник света; 8 — телекамера с злектрон- ' ным видоискателем; 9 — меха- - низм возвратно-поступательного : движения; 10 — конвейер; б — 1 внешний вид устройства окраски
Пара контактов, замкнутая при движении конвейера, перемещающего окрашиваемые детали, и размыкающаяся при его останове.
Для того чтобы система могла работать устойчиво, было необходимо обеспечить хорошую различимость детали, подлежащей окраске, на окружающем ее фоне. Так как окрашиваемые детали могли изготавливаться из материала любого цвета (от матовой черной пластмассы до отполированного до зеркального блеска алюминия), в том числе и плохо различимого на имеющемся фоне, было необходимо разработать систему, способную различать черные детали на черном фоне (как и блестящие детали на блестящем фоне). Поскольку разработать такую систему практически невозможно, было решено использовать схему, приведенную на рис. 1.
Было решено организовать освещение так, чтобы деталь всегда была ярко освещена, а фон затемнен. Для этого был использован очень мощный источник, освещавший деталь вдоль линии прохода распылительной головки. Эта освещенная линия находилась рядом с траверсой, по которой 9 - 1756 257
перемещались головки. Рабочее значение освещенности детали составляло 1000 лк, хотя опыт эксплуатации показал, что система надежно работает при снижении этого значения до 700 лк. Освещенность фона составляла 100 лк, хотя система работала удовлетворительно при освещенности фона до 200 лк. Как показано на схеме, луч света падает на деталь под углом 20°, а оптическая ось телевизионной камеры направлена вдоль линии отражения света от детали. В результате телекамера ’’видела” освещенный объект на темном фоне. Поскольку система обрабатывает только ту часть детали, которая будет окрашиваться при следующем проходе распылительных головок, остальная часть детали не освещалась. На мониторе объект отображался в виде яркой полосы на темном фоне. Кадр на экране монитора мало походил на обычное телевизионное изображение, поэтому при его рассматривании приходилось иметь в виду особенности системы.
После того, как был обеспечен хороший контраст изображения детали на окружающем фоне, надо было найти их границу. Так как разница уровней освещенности была велика, использовалась простая схема порогового ограничения с регулировкой уровня срабатывания 20- оборотным потенциометром. Результат выполнения операции порогового ограничения наблюдался визуально на экране монитора. Иначе говоря, изображение, составленное из элементов растра с различными оттенками от серого до белого, преобразовывалось в бинарный образ, отображаемый на экране монитора. Уровень срабатывания пороговой схемы выбирался таким, чтобы эффект расплывания изображения был минимальным. При такой настройке на экране монитора была видна освещенная линия с четкими границами. Такому изображению соответствовал прямоугольный видеосигнал.
Затем из образа выделялась информация, необходимая для управления движением головок. Это достигалось организацией ’’окна”, соответствующего по ширине полосе детали, окрашиваемой за один проход. ’’Окно” представляло собой освещенную вертикальную полоску на экране монитора. С помощью 20-оборотного потенциометра ширина полоски приводилась в соответствие с шириной окрашиваемой полосы. С помощью другого 20-оборотного потенциометра центр ’’окна” на мониторе совмещался с центром изображения детали. Прямоугольный видеосигнал окна построчно сравнивался с видеосигналом образа. Их совпадение или различие позволяло составить расписание включения и выключения распылительной головки при ближайшем проходе.
Стандартный телевизионный кадр состоит из 312,5 строк. Первые 19-20 из них не используются. Оставшиеся 293 строки несут полезную информацию. Поскольку требовалось обеспечить точность 20 мм на размахе 2 м, можно было использовать 146 строк, считывая информацию через строку. Объем стандартной микросхемы памяти составляет 128 бит. Использование такой микросхемы для хранения расписания работы распылительной головки обеспечивает точность работы выше 1 %. Требовалось отобрать 128 из 146 строк телевизионного растра. Для этого использовался семиразрядный счетчик строк растра, на который с 258
выхода делителя частоты подавались синхросигналы строчной развертки. Когда в счетчике появлялось значение 127, прохождение синхроимпульсов на его вход блокировалось. Сигнал сброса блокировки, формируемый с помощью специального устройства в конце каждого кадра, устанавливает счетчик в ноль и разрешает поступление на его вход синхроимпульсов.
Весь диапазон возвратно-поступательного движения распылительной головки был разбит на три зоны. В центральной зоне движение головки подчинялось линейному закону, в крайних она меняла направление движения и линейность нарушалась. Окраска детали выполнялась только при прохождении средней зоны. Было необходимо выделить границы средней зоны на экране монитора. Зоне линейного движения на экране соответствовали 128 строк, т.е. нижней границе зоны соответствовала строка с номером 0, а верхней — строка с номером 127. Подсветкой этих строк границы зоны линейного движения были выделены на экране монитора. Для возможности смещения отображения зоны линейного движения вверх по экрану монитора между счетчиком номеров строк и делителем частоты на два была установлена цифровая линия задержки (шесть двоичных разрядов). С помощью переключателей, задающих величину задержки, стало возможным перемещать маркерные линии зоны линейного движения вверх и вниз по экрану монитора, совмещая их с фактическими границами этой зоны. В завершение обслуживания маркерных линий следует отметить: до сих пор предполагалось, что телекамера расположена и сфокусирована таким образом, что зона линейного движения распыляющей головки соответствующим образом отображается на экран монитора, занимая 128 строк. Для обеспечения возможности индивидуальной регулировки положения маркерных линий были использованы еще две цифровые 16-разрядные линии задержки. Одна предназначалась для регулировки положения верхней маркерной линии в пределах верхней четверти экрана монитора, другая — для регулировки положения нижней маркерной линии в пределах нижней четверти экрана. С помощью этих задержек сигнал засветки строки выдавался в необходимые моменты цикла развертки.
В заключение можно отметить, что описанными выше способами была организована шкала, состоящая из 128 делений, выполнено масштабирование этой шкалы, приводящее ее в соответствие с рабочей зоной устройства и организовано ’’окно”, совмещаемое с образом детали, с помощью которого выделялась полезная информация.
Ставя в соответствие результатам построчного сравнения видеосигналов, соответствующих образу детали и ’’окна”, с номера строк растра, система для каждого из делений шкалы могла сформировать команду на включение и выключение распылительной головки. Сформированные команды кодовались единицами и нулями и записывались в соответствующие номерам промежутков шкалы ячейки памяти.
Режим работы памяти в каждый конкретный момент (на запись или на считывание команды) определялся положением распылительной головки. Информация о положении головки формировалась индукционными датчиками, встроенными в механизм возвратно-поступательного движе-
ния. С выхода генератора импульсов А (выдающего импульс через каждые 20 мм, пройденные распылительной головкой по траверсе) импульсы поступали на фазовый сдвигатель, в котором количество поступивших импульсов умножалось на 256. Полученный результат с помощью трехразрядной схемы десятичного деления делился на некоторое число. Операция деления предназначалась для настройки системы на работу с устройствами, имеющими различные размеры зоны линейного движения (использовались устройства, в которых длина зоны линейного движения составляла от 1,2 до 4,2 м). Другой функцией десятичного делителя было установление точного соответствия шкалы образа и последовательности 20 мм шагов распылительной головки. На выходе делителя формировались в каждом рабочем цикле 256 импульсов: 128 соответствовали движению головки вверх по траверсе, остальные 128 — движению вниз.
Затем следовало обеспечить отображение движения распылительной головки в центральной зоне телевизионного монитора. Для этого сигналы с выхода десятичного делителя поступали на вход семиразрядного двоичного реверсивного счетчика. Сумма, накопленная этим счетчиком, сравнивалась со значением счетчика строк телевизионной камеры. В случае совпадения формировался сигнал засветки соответствующей строки на экране монитора. В результате работы описанной части схемы на экране монитора отображалась засвеченная строка, перемещавшаяся синхронно с движением распылительной головки вверх и вниз.
Сигнал, вырабатываемый генератором импульсов В (одиночный импульс в конце рабочего цикла), использовался для сброса реверсивного счетчика. Это делалось для того, чтобы ошибка сканирования не накапливалась при многократном повторении рабочего цикла. Поскольку в поле зрения телекамеры постоянно находилась часть распылительной головки или ее держателя, подбор числа, заносимого в регистр десятичного делителя с декадных переключателей, не представлял сложности. Это число определялось методом проб по визуальному совпадению движения засвеченной строки и видимой на экране монитора части распылительной головки. Использование фазового сдвигателя было оправдано тем, что скорости движения распылительной головки вверх и вниз по траверсе отличались друг от друга до 5 %. Такое отличие объясняется весом головки. Кроме того, следовало обеспечить возможность менять скорости движения распылительной головки без перенастройки системы.
Помимо того, что засвеченная линия на экране монитора должна была двигаться синхронно с распылительной головкой, было необходимо совместить ее с изображением распылительной головки по высоте. Для их устойчивого совмещения следовало учесть существование двух зон нелинейного движения головки. Это было сделано с помощью введения между делителем и реверсивным счетчиком дополнительной четырехбитной цифровой линии задержки, управляемой 16-позиционным переключателем. Таких переключателей использовалось два. С помощью первого задавалось значение задержки начала движения засвеченной линии вверх при прохождении головкой нижней зоны нелинейного дви-
жения. С помощью второго переключателя задавалась задержка начала движения засвеченной линии вниз при прохождении головкой верхней зоны нелинейного движения. Таким образом система могла определять, в какой из зон находится головка в любой момент. Эта информация использовалась для управления режимом работы памяти: когда головка находилась в центральной зоне, команда!, записанные в память, считывались из нее, а когда головка выходила из центральной зоны, в память записывалась новая последовательность команд.
От использования телевизионной камеры для автоматического включения механизма возвратно-поступательного движения при выходе детали в кабину окрашивающего устройства и выключения его при выходе детали из кабины пришлось отказаться, так как в противном случае система могла бы среагировать на человека, вошедшего в кабину для технического обслуживания, как деталь и начинала бы его ’’красить”. Было решено оставить функцию включения и выключения механизма возвратно-поступательного движения оператору системы.
Выше уже было отмечено, что при работе системы надо было обеспечить сохранение нескольких последовательностей команд управления рас- пылительной головкой, соответствующих нескольким проходам, поскольку поле зрения камеры смещено от зоны окраски. Было решено хранить шестнадцать последовательностей. Выбор такого числа был обусловлен двумя причинами. Во-первых, шестнадцать проходов распылительной головки соответствуют смещению окрашиваемой детали на 1,5 м в горизонтальном направлении, что вполне достаточно как для смещения поля зрения камеры из зоны окраски, так и для сохранения последовательностей команд, используемых второй и последующими распылительными головками (головка не сможет работать, если она отстоит от линии считывания образа более чем на шестнадцатикратную ширину полосы детали, окрашиваемой за один проход). Во-вторых, для каждой из распылительных головок из шестнадцати последовательностей команд можно выделить нужную с помощью стандартного шестнадцатипозиционного переключателя.
Опыт эксплуатации устройств окраски показал, что практически во всех случаях достаточно использовать не более четырех распылительных головок. Это означает, что в состав системы необходимо бьшо ввести четыре шестнадцатипозиционных переключателя управления головками. Обычно использовались только два из них.
Оставалась нерешенной только одна задача: блокировка работы устройства при временной остановке транспортера, перемещающего окрашиваемые детали в горизонтальном направлении. Если бы такая блокировка не была предусмотрена, распылительные головки продолжали бы красить деталь по командам, считываемым из памяти, а телевизионная система заполняла бы память последовательностями команд, соответствующими той части детали, которая осталась в поле зрения. Для решения этой задачи был использован специальный датчик. Этот датчик представлял собой пару контактов, соединенных с осью электродвигателя привода транспортера. При вращении этой оси контакты замыкались, а при остановке — размылись. Контакты блокировали выполнение операций считывания и записи
информации в память и включения распыления на все время остановки транспортера. Состояние памяти оставалось без изменений, хотя возвратно-поступательное движение головок не прекращалось.
Для повышения эффективности работы следовало ввести в систему средства компенсации задержек, возникающих при формировании конуса распыленной краски и обработке других команд.
Эксперименты с распылительными головками обычного типа, в которых использовались вынесенные за пределы кабины электрические соленоиды, управляющие пневмоприводом запирающей иглы, показали что времена задержки сигнала и формирования конуса распыленной краски составляют соответственно 30-80 мс и 50-100 мс в зависимости от рабочего давления пневмопривода. Время угасания конуса распыленной краски было еще больше из-за сопротивления в пневмосистеме привода. Поэтому было решено использовать соленоид постоянного тока (в специальном исполнении, гарантирующем пожаробезопасность), установленный непосредственно на распылительной головке. Это позволило сократить задержку сигнала до 20 мс. Установка солоеноида на головке позволила использовать для питания привода запирающей иглы магистраль воздуха, используемого для распыления. Так как давление в этой магистрали регулируется, надежность пневмопривода повышается. Кроме того, отпала необходимость в использовании специальной магистрали управления, а время угасания конуса распыленной краски стало минимальным.
Скорость движения головки может достигать 2 м/с, и за время 20 мс головка может пройти 40 мм, выходя за края детали на два деления шкалы. Эта погрешность была скомпенсирована смещением при считывании команд: считывалась команда соответствующая не тому делению шкалы, где находится в настоящий момент головка, а тому, в которое она попадет через 20 мс. Для реализации этого метода в систему был введен семиразрядный сумматор, включенный между входом счетчика строк и схемами адресации памяти. Добавляемое к адресу значение задавалось шестнадцатипозиционным переключателем. Использовалось два переключателя: один — для компенсации задержек при движении головки вверх, другой — при движении вниз.
Таково в общих чертах устройство управляющей системы. В реальной системе имеются некоторые дополнительные усовершенствования, например обратная компенсация, работа распыляющих головок при движении только в одном направлении т.д.
В заключение следует сказать об одной проблеме, решить которую с помощью электроники не удалось. При определении оптимального места расположения телевизионной камеры в одном из устройств окраски с размахом движения распылительных головок 4,2 м оказалось, что оно находится вне территории предприятия и для работы системы необходимо проделать отверстия в двух стенах. Использование фокусирующих линз не дало ожидаемого результата. Было решено использовать вертикально установленное зеркало, отклонявшее линию распространения отраженного света на 70°. Телевизионная камера была установлена параллельно движения транспортера вне камеры окрашивающего устройства. Это решение оказалось удачным и в дальнейшем использовалось во всех установках.
РОБОТОТЕХНИКАВ КУЗНЕЧНОМ ПРОИЗВОДСТВЕ
Р. К э л л и, Дж. Бирк, Дж. Д е с с и м о, X. Мартинс, Р. Т е л л а,Исследовательская группа по робототехнике университета
Род Айленд, США
Представлена на 12 Международном симпозиуме по промышленнымроботам, 9-11 июня 1982 г., Париж, Франция
В статье приводится анализ требований к прецизионным ковочным операциям изготовления профильных деталей, используемых в реактивных авиационных двигателях. Результаты анализа показывают, что для выполнения этих операций может быть использована робототехническая система. При традиционной схеме операции на обработку нагретой до 950 детали затрачивается 15 сек. Использование робототехнической системы позволяет повысить производительность труда при выполнении этой операции. Кроме того, оператору нет необходимости находиться в зоне ковки. Он освождается от монотонной работы и может управлять функционированием сразу нескольких кузнечных прессов.
Для моделирования рассматриваемых производственных ситуаций была собрана экспериментальная робототехническая система. На ее основе был выработан общесистемный подход к автоматизации кузнечных операций с использованием роботов. Предполагается, что по мере накопления опыта работы с такими системами будет наблюдаться дальнейшее повышение производительности.
Введение. В настоящей работе процесс кузнечного производства рассматривался на примере прецизионных ковочных операций при изготовлении профильных деталей, применяемых в реактивных авиационных двигателях. Технические задачи, возникающие при автоматизации других кузнечных операций, во многом аналогичны[ 1, 2, 3, 4]. Обычно на обработку одной детали, предварительно нагретой до температуры 950 , затрачивается 15 сек. Из-за повышенной температуры в зоне ковки важным фактором производительности труда является физическая выносливость оператора пресса. Использование робота в таких условиях может резко повысить эффективность использования оборудования. Помимо этого ликвидируется необходимость присутствия оператора в зонах нагрева детали и ковки. Оператор может управлять работой сразу нескольких кузнечных прессов, выполняя менее утомительные и монотонные операции.
В статье описывается методика использования робототехнической системы, позволяющая преодолеть некоторые препятствия на пути автоматизации кузнечных операций.
Технологический процесс. На рис. 1 показан вид детали перед выполнением каждой из четырех ковочных операций. В качестве заготовки для операции вытяжки используется слиток, после вытяжки деталь подвергается операции осаживания, далее выполняются черновая ковка и чистовая ковка с удалением облоя. Обычно каждая операция выполняется в
263263четыре этапа:
263
263
Рис. 1. Последовательные стадии обработки рис. 2. Укладка детали в матрицу детали. Слева направо: слиток, деталь пос-кузнечного пресса
ле вытяжки, деталь после осаживания, деталь после черновой ковки
Очистка. Этап включает удаление с деталей грата и обезжиривание поверхностей. С заготовок (кроме слитков) удаляется слой смазки, отработанной на предыдущей операции. После очистки детали складываются в бункер.
Смазка. Перед выполнением операций поверхность деталей покрывается слоем смазки. Исключение составляет только операция осаживания, при выполнении которой графитовая смазка наносится только на пуансон и матрицу штампа. Смазка наносится на детали за пределами зоны ковки специально выделенным для этой операции рабочим. Детали по одной извлекаются из бункера, покрываются слоем смазки и раскладываются для просушки. Смазка, представляющая собой керамический состав, имеет консистенцию жидкой краски и высыхает за несколько минут. После высыхания смазки на поверхности детали образуется хрупкая, легко скалывающаяся пленка. Высушенные детали осторожно укладываются в бункер с прокладкой между слоями бумажных полос.
Нагрев. Бункеры с деталями перемещаются в зону ковки. Перед выполнением ковочной операции детали разогреваются в ротационной печи до 950°. Оператор кузнечного пресса щипцами вынимает детали из бункера и помещает их на под ротационной печи. Горячие детали, прошедшие через печь, извлекаются.
Ковка. Вынув деталь из печи щипцами, оператор укладывает ее на матрицу штампа. Выполнение этого действия требует хорошего глазомера и координации движений, особенно при черновой ковке. Дополнительно осложняет операцию то обстоятельство, что ориентация деталей в печи произвольна, а длина и угол наклона стержня, за который оператор захватывает деталь щипцами, могут меняться. Оператор должен оценить ситуацию и поместить деталь в нужное место матрицы. Выполнение этой операции показано на рис. 2.
Затем опускается пуансон. В процессе обработки пресс развивает огромное усилие, под действием которого материал детали деформируется. При выполнении черновой и чистовой ковки эти усилия могут привести к смещению стержня. Компенсируя это перемещение, оператор слегка ослабляет зажим детали в щипцах. После того, как пуансон
деталь из мат- бункер.деталь из мат- бункер.Рис. 3. Укладка детали в матрицу об-рубочного пресса
деталь из мат- бункер.
деталь из мат- бункер.
штампа поднимается, щипцами вынимается, рицы и помещается в
После чистовой ковки деталь в бункер не кладут: она сразу же подвергается удалению облоя. Для этого деталь переносится на обрубочный пресс. Размещение детали в матрице обрубочного штампа показано на рис. 3. Оставшийся зажатым в щипцах облой оператор выбрасывает в специальный бункер.
Для того чтобы автоматизировать выполнение описанных выше операций, необходима робототехническая система, способная: извлекать деталь из бункера, придавать деталям необходимую ориентацию при смазке, покрывать детали смазочным веществом, помещать детали в печь, извлекать детали из печи, устанавливать детали в матрицы штампов, извлекать деталь из матрицы после чистовой ковки, устанавливать деталь в матрице обрубочного штампа, удалять получившийся после обрубки облой.
Исследование операции. Выполнение в кузнечном производстве операции предъявляют определенные требования к используемому оборудованию, в функции которого входят:
извлечение деталей из бункера: детали, насыпанные в бункер навалом, должны извлекаться из него по одной;
грубое и точное позиционирование: первоначальное определение и последующее уточнение параметров положения манипулятора;
ориентирование деталей: перевод детали, находящейся в произвольном положении, в необходимое положение.
Извлечение деталей из бункера. Существует много методов извлечения деталей из бункера, в котором они хранятся в межоперационный период. Возможно использование механических сепараторов и подающих устройств. Хотя такие устройства обычно громоздки, а настройка их требует высокой квалификации, они могут работать с заготовками всех описанных выше форм (кроме детали после черновой ковки). Созданы управляемые на основе анализа визуальной информации робототехнические системы, извлекающие детали из бункера. Цилиндрические заготовки [5] и отливки, соединенные стержнями [6], могут обрабатываться с помощью оборудованного сенсорами схвата параллельного действия. Электрораспределительные коробки [ 7] обрабатывались с помощью специального вакуумного схвата [8]. Эти системы можно использовать и для извлечения из бункеров заготовок, используемых в описанном выше технологическом процессе кузнечного производства.
Грубое и точное позиционирование. Когда обрабатываемая деталь лежит на плоскости, область изменения параметров ее положения сильно ограничивается: можно определять только две координаты и один
угол поворота детали. С помощью методов прямого визуального анализа эти параметры определяются довольно просто[ 7]. Однако если положение детали в пространстве может быть произвольным, необходимо использовать стереоскопические методы [9, 10]. Эти методы вполне пригодны для работы с описанными выше заготовками.
Ориентирование деталей. Для решения этой задачи ориентирования детали в общем случае необходимо, чтобы манипулятор имел возможность изменять положение находящейся в схвате детали [7]. Поэтому при автоматизации описанного выше технологического процесса должна быть проанализирована вся последовательность манипуляции с заготовками. Желательно минимизировать количество ’’перезахватов” деталей.
Робототехника. Отдельные робототехнические устройства, используемые в автоматизированной системе кузнечного производства, должны быть связаны в интегрированную систему, позволяющую решить совместно все задачи манипулирования деталями. Основная особенность такой системы заключается в размещении отдельных устройств вдоль линий движения деталей, что позволяет сохранить их ориентацию при переходе от одной операции к другой. Такое решение минимизирует количество ситуаций, при которых деталь отпускается схватом, и снижает число фиксаторов, используемых для сохранения ориентации деталей, не находящихся в схвате. Обработка деталей, покрытых смазкой, функционально отделена от обработки очищенных деталей. Это соображение определяет архитектуру системы, в которой используется два робота: один для извлечения деталей из бункеров и выполнения смазочных операций, другой — для операции нагревания и ковки.
Робот, извлекающий детали из бункеров, должен быть оснащен соответствующим схватом. Для работы с заготовками первых трех форм (слиток, деталь после вытяжки и деталь после осаживания) можно использовать схват параллельного действия [ 1, 2] и простую систему бинарного технического зрения, определяющую положения точек захвата [ 1, 3]. На изображении бункера с деталями, прошедшими черновую ковку, отчетливо видны поверхности отдельных деталей. Это позволяет исполь-
Рис. 4. Результат визуального анализа бункера с деталями, прошедшими черновую ковкуРис. 4. Результат визуального анализа бункера с деталями, прошедшими черновую ковкуРис. 5. Специальный вакуумный схватРис. 5. Специальный вакуумный схват
Рис. 4. Результат визуального анализа бункера с деталями, прошедшими черновую ковку
Рис. 4. Результат визуального анализа бункера с деталями, прошедшими черновую ковку
Рис. 5. Специальный вакуумный схват
Рис. 5. Специальный вакуумный схват
Рис.6. Бинарный образ, используемыйпри определении параметров положе-ния детали. Вид спереди
Рис. 7. Бинарный образ, используемый при определении параметров положения детали. Вид сбокуРис. 7. Бинарный образ, используемый при определении параметров положения детали. Вид сбокузовать специальный вакуумный схват[4]. Система технического зрения и используемые ею алгоритмы остаются неизменными. Результат выполнения анализа визуальной информации показан на рис. 4. Цифрами помечены точки захвата трех деталей. На рис. 5 показан внешний вид вакуумного схвата.
Рис. 7. Бинарный образ, используемый при определении параметров положения детали. Вид сбоку
Рис. 7. Бинарный образ, используемый при определении параметров положения детали. Вид сбоку
После извлечения из бункера деталь покрывается смазкой (кроме осаживаемых заготовок). Так как смазочное покрытие может быть повреждено, смазанные детали должны захватываться за стержень. Ориентирование цилиндрического слитка может быть выполнено с помощью V-образного лотка со стопором [ 1]. Для ориентирования вытянутых и осаженных деталей это устройство следует дополнить простейшим сенсором, определяющим, который из концов детали имеет больший диаметр.
Для работы с деталями, прошедшими черновую ковку необходимо использовать вакуумный схват. Для уточнения положения захваченной детали она помещается на специальную плоскость. Бинарные образы, используемые для определения параметров положения, показаны на рис. 6 и 7. Для определения узкого конца детали рассматриваются найденные в образе прямоугольные области. Вид сбоку используется для определения положения шейки стержня (квадратного сечения) и утолщенного конца детали. Полученная при визуальном анализе информация используется для установки детали в фиксатор перед нанесением смазки.
Имеющаяся в фиксаторе щель ограничивает множество возмож-
Рис. 8. Бинарный образ, используемый при уточнении параметров положения детали. Вид сбоку
Рис. 9. Бинарный образ, используемый при уточнении параметров положения детали.Вид спереди
ных положений стержней смазанных деталей. Поскольку эти части деталей не обрабатываются, при переносе деталей в ротационную печь робот может захватывать их за конец стержня. Во избежание потери ориентации деталей и для снижения вероятности повреждения смазочного покрытия на под печи могут устанавливаться специальные фиксаторы. Таким образом, перенос детали из смазочного фиксатора в фиксатор, установленный в печи, выполняется путем заранее определенной последовательности движений манипулятора. Извлечение нагретых деталей из печи выполняется также с помощью фиксированной последовательности движений манипулятора.
Хотя детали, извлекаемые из печи, находятся в фиксированных положениях, при установке их в матрицу штампа может возникнуть необходимость в уточнении их параметров положения. Поскольку детали раскалены докрасна, визуальный анализ должен выполняться быстро (во избежание остывания детали) и независимо от высокой интенсивности инфракрасного излучения. Поскольку обучение системы проще выполнять на холодных деталях, рекомендуется использовать дополнительный источник освещения и фильтры, подавляющие инфракрасное излучение. Если необходимо определять положение небольших особенностей детали, можно использовать упрощенные методы анализа полутоновых образов.
При работе с деталями после черновой ковки с помощью полутоновых образов можно построить систему координат, привязанную к пространственному расположению особенностей детали. На рис. 8 и 9 показаны виды детали, прошедшей черновую ковку. Сравнение с шаблонами позволяет определить пространственное положение конической части (рис. 10) и утолщения на конце (рис. 11). По этой информации определяются поправки, используя которые, манипулятор точно устанавливает деталь в матрицу штампа.
■■** «.ЛИ
Рис. 10. Шаблон, используемый при определении пространственного положения конической части деталиРис. 10. Шаблон, используемый при определении пространственного положения конической части деталиШНИ ММ WI
Рис. 10. Шаблон, используемый при определении пространственного положения конической части детали
Рис. 10. Шаблон, используемый при определении пространственного положения конической части детали
■■■■■■■■■■■■в
■ввввввввввв
Рис. 11. Шаблон, используемый при определении пространственного положенияутолщения на конце детали
При выполнении черновой ковки схват манипулятора робота удерживает деталь за стержень. Для того чтобы усилия, развиваемые при выполнении операции, не передавались на манипулятор, необходимо использовать механизм аккомодации. При выполнении черновой ковки основная задача робота — извлечь обработанную деталь из матрицы, поэтому можно воспользоваться любым способом ослабения усилия, развиваемого схва- Йгом. После выполнения операции чистовой ковки горячую деталь следует перенести на обрубочный пресс. Поскольку положение детали в матрице известно точно, ее перенос в матрицу обрубочного пресса выполняется всегда по одной траектории.
Поскольку робот держит деталь за стержень, желательно воспроизвести действия человека-оператора. Один из способов достижения этого — использование аккомодационного звена, показанного на рис. 12.
Пока верхняя часть штампа опускается, аккомодационное звено жестко фиксировано. Затем его фиксация мгновенно ослабляется, что позволяет зажатому в схвате стержню изменить свое положение. Аккомодационное звено временно принимает некоторую промежуточную форму, позволяя изменить положение схвата манипулятора нужным образом. Аккомодационное звено обеспечивает механическую связь схвата манипулятора и детали, находящейся в матрице. Движения манипулятора, переносящего деталь на обрубочный пресс, определяются достаточно просто.
Заключение. Точечные кузнечные
операции, выполняемые при изготовле-
НИИ профильных деталей для реактив- Рис- 12. Аккомодационное звено ных двигателей, могут выполнять-
ся с помощью робототехнической системы. Были определены способы использования роботов, необходимые для построения такой системы. Более подробно эти способы описаны в многочисленных публикациях, а в настоящей работе они рассматривались с точки зрения их применения в кузнечном производстве. При использовании общих методов для решения конкретных проблем возникают дополнительные инженерные задачи, которые также необходимо решать. Обычный способ решения этих дополнительных задач заключается в освещении рабочей зоны датчиками и другими вспомогательными устройствами [И]. То, что желательно в традиционной методике автоматизации, при использовании робототехники обычно становится необходимо.
Для моделирования описанных выше операций была построена экспериментальная робототехническая система. На ее основе был выработан общесистемный подход к построению кузнечных робототехнических систем. По мере накопления опыта работы с такими системами будет достигнуто дальнейшее повышение производительности.
Упомянутые в статье устройства и экспериментальная робототехническая система были созданы усилиями сотрудников Исследовательской группы по робототехнике университета Род Айленд, в особенности А. Винчи (А. Vinci), Дж. Крауча (J. Crouch', и Дж. Холла (J. Hail).
СПИСОК ЛИТЕРА ТУРЫ
1. Franchetti. Р. Vicentmi and L. deTogni. ‘Automising a work place in forging by robot’. Proc. Sixth International Symposium on Industrial Robots. Nottingham, UK, 24-26 March 1976.
E Appleton. W, B. Heginbotham and M. Kohno. ‘Design study and feasibility trial for a robot blacksmith*. Proc Eighth International Symposium on Industrial Robots. Stuttgart. W. Germany. 30Ma>-l June 1978, pp. 528-543.
E Appleton, W В Heginbotham and M. Kohno, ‘Experimental stud> into the use ofan industrial robot as a manipulator for open die forging of light work pieces’. Proc Ninth International Symposium on Industrial Robots. Washington EK?, USA. 1 3-1 5 March 1979. pp. 709-728.
A К Sengupta. E. Appleton and W B. Heginbotham. ‘Ring forging with an industrial robot' Proc Tenth International Symposium on Industrial Robots. Milan, Italy, 5-7 March 1980, pp. 29-42.
R. Kelley. J Birk. H. Martins and R. Telia. A robot system which acquires cylindrical workpieces from bins'. IEEE Trans Systems. Man and Cybernetics, to appear in Vol. SMC no. 12 (2). pp. 204-2 13 (March/Apnl 1982).
R. Kelley. J. Birk. J Dessimoz. H. Manins and R. Telia. ‘Acquiring connecting rod castings using a robot with vision and sensors'. Proc. First International Conference on Robot Vision and Sensory Controls, Stratford-upon-Avon, UK, 1 -3 April 1981. pp. 169-178,
J Birk, R Kelley and H. Manins, ‘An orienting robot for feeding workpieces stored in bins'. IEEE Trans. Systems. Man and Cybernetics, Vol. SMC-1 1 no. 2. pp. 151-160 (Feb. 1981).
J Birk. R Kelley and R Telia. ‘Apparatus for acquiring workpieces from a storage bin or the like', US Patent No. 4.266.905, 12 May 1981.
N Chen. J Birk and R Kelley. ‘Estimating workpiece pose using the feature points method*. IEEE Trans on Automatic Control Vol. AC-2 5 no. 6, pp. 102 7-1041 (December 19 8 0).
H, Manins. J. Birk and R Kelley. ‘Camera models based on data from two calibration planes'. Computer Graphic s and Image Processing. Vol, I 7. no. 3. pp. 173-180 (March 1981).
J Saladino. ‘Upset forging with industrial robots’. Technical paper MS80-704. Robotics International of Society Manufacturing Engineers. Dearborn, MI, 1980.
АВТОМАТИЧЕСКОЕ УКРАШЕНИЕ ШОКОЛАДНОЙ ПРОДУКЦИИ СИСПОЛЬЗОВАНИЕМ ТЕХНИЧЕСКОГО ЗРЕНИЯ РОБОТА
А. Дж. К р о н ш о у, Пэтсентр интернешнл
Patscentre, international}, Великобритания
Представлено на 12 Международном симпозиуме по промышленнымроботам, Париж, 9—11 июня 1982 г.
В статье описывается опытное устройство, предназначенное для нанесения узоров на шоколадные плитки и конфеты. Узор на конфеты, находящиеся на ленте конвейера, наносится с помощью манипулятора, оборудованного формирующим наконечником. Робот управляется системой машинного зрения, определяющей точные значения параметров положения отдельных конфет. Полученная от визуального анализатора информация используется для позиционирования манипулятора, после чего на поверхность конфеты производится нанесение узора из жидкой шоколадной массы. Направление отсадки узора зависит от положения конфеты.
Система может распознавать дефектные конфеты: слипшиеся, слишком большие или слишком маленькие. В статье приводится описание программной методики визуального распознавания объектов и управления роботом. Обсуждаются стоимость и производительность системы.
Введение. Украшение шоколадной продукции и вообще работа с шоколадными изделиями на кондитерских фабриках, как правило, выполняется вручную. Некоторые операции, например украшение и упаковка шоколадных конфет и плиток, требуют от рабочих быстроты и могут быть очень утомительны. Необходимость постоянного повышения качества продукции в условиях увеличения стоимости ручного труда и удешевления роботов повлекли за собой интенсивное развитие методов автоматического контроля продукции, но до сих пор многие операции не автоматизированы.
Автоматизация кондитерского производства должна быть гибкой, поскольку продукция зачастую выпускается малыми сериями, а ее номенклатура быстро меняется согласно требованиям потребителей.
Организация ’’Пэтсцентр Интернешнл” активно работает в указанной области, разрабатывая универсальные роботы, оборудованные совершенными системами обработки образов. Перепрограммируй эти роботы, можно использовать их в условиях быстрой смены серий или других изменений выпускаемого продукта.
Более того, ”интеллектуальность”и адаптивность ’’зрячих” роботов обеспечивает их включение в устоявшийся производственный процесс, не требующее большого числа дополнительных устройств. В частности, нет необходимости вкладывать средства в подающие устройства. Робот, оснащенный визуальным анализатором, часто может работать с объектами, находящимися на уже существующих конвейерах.
Другим стимулом для применения визуально управляемых роботов в кондитерском производстве послужила сама природа последнего. Шо-
Рис. 1. Общий вид опытной робототехнической системы украшения шоколадной продукции:
— телекамера; 2 — робот с формирующим наконечником; 3 — имитатор конвейера; 4 — телевизионный монитор и микроЭВМ
коладные конфеты хрупки и легко крошатся, утрачивая товарный вид. Визуальный анализатор делает ненужным использование механических подающих устройств, часто повреждающих продукцию. В результате
таких повреждений размеры конфет могут изменяться, что сильно осложняет дальнейшую работу с ними.
Традиционные методы. Украшение шоколадной продукции наиболее целесообразно выполнять на одном из двух этапов процесса ее производства. Первый из них — когда конфеты и шоколадные плитки находятся на ленте конвейера. Обычно они размещаются вдоль ленты правильными рядами.
Однако некоторых отклонений отдельных конфет от фиксированного положения избежать не удается. Такие отклонения возникают при переходе продукции с одного конвейера на другой. Как следствие этого.
расположение и углы поворота конфет не могут повторяться с высокой точностью. По этим причинам для украшения конфет и шоколадных плиток либо использовались простые узоры типа сетки, наносимой автоматически, либо более сложные узоры создавались вручную.
Вторая возможность для украшения конфет представляется тогда, когда они уже уложены на подносы внутрифабричного транспортирования. Здесь они находятся в произвольных положениях. Украшение продукции на этом этапе выполнялось только вручную.
Робот для украшения шоколадной продукции. Опытная робототехническая система украшения шоколадной продукции показана на рис. 1.
Сверху расположена телевизионная камера, в поле зрения которой находится лента конвейера и лежащие на ней конфеты. Для анализа получаемой с телекамеры зрительной информации и управления манипулятором (рис. 2) используется микроЭВМ (LS1A1 фир-
Рис. 2. Манипулятор робота и фор-мирующий наконечник
мы ’’Диджитал Экуипмент”). Манипулятор имеет две степени свободы, соответствующие перемещению по осям X и Y. Опытная система не использует специальных источников освещения, хотя в промышленной системе они, вероятно, будут использоваться.
При работе система сканирует поле зрения и украшает конфеты в различных точках конвейера. Вследствие этого определенное количество информации приходится хранить в памяти. Такая схема гарантирует, что манипулятор никогда не появится в поле зрения телекамеры.
Программа распознавания. Телевизионное изображение преобразуется в бинарный образ, представляемый матрицей размером 256 X 256 элементов, хранящийся в памяти ЭВМ. Информация образа обрабатывается программами определения признаков.Эти программы определяют для каждой из конфет или шоколадных плиток следующие признаки: площадь, пери-
вершинвершинметр, центр площади, закон изменения радиуса, координаты углов.метр, центр площади, закон изменения радиуса, координаты углов.Рис. 3. Бинарные образы конфет различных типов:1 — абрикосовая; 2 — ореховая; 3 — "альпин"; 4 — мандариновый трюфель; 5 — "Континенталь"; 6 — ромовый марципан; 7 — кофейный трюфель; 8 — ореховый трюфельРис. 3. Бинарные образы конфет различных типов:1 — абрикосовая; 2 — ореховая; 3 — "альпин"; 4 — мандариновый трюфель; 5 — "Континенталь"; 6 — ромовый марципан; 7 — кофейный трюфель; 8 — ореховый трюфель
вершин
вершин
метр, центр площади, закон изменения радиуса, координаты углов.
метр, центр площади, закон изменения радиуса, координаты углов.
Рис. 3. Бинарные образы конфет различных типов:
1 — абрикосовая; 2 — ореховая; 3 — "альпин"; 4 — мандариновый трюфель; 5 — "Континенталь"; 6 — ромовый марципан; 7 — кофейный трюфель; 8 — ореховый трюфель
Рис. 3. Бинарные образы конфет различных типов:
1 — абрикосовая; 2 — ореховая; 3 — "альпин"; 4 — мандариновый трюфель; 5 — "Континенталь"; 6 — ромовый марципан; 7 — кофейный трюфель; 8 — ореховый трюфель
Рис. 4. Закон изменения радиуса конфеты "ромовый марципан"Рис. 4. Закон изменения радиуса конфеты "ромовый марципан"Рис. 5. Закон изменения радиуса конфеты "ореховая"Рис. 5. Закон изменения радиуса конфеты "ореховая"Рис. 6. К определению понятия выступ:
Рис. 4. Закон изменения радиуса конфеты "ромовый марципан"
Рис. 4. Закон изменения радиуса конфеты "ромовый марципан"
Рис. 5. Закон изменения радиуса конфеты "ореховая"
Рис. 5. Закон изменения радиуса конфеты "ореховая"
1 — выступ; 2 — сопрягающая кривая; 3 —центр сопрягающей дуги
Закон изменения радиуса определяется совокупностью расстояний от центра площади до точек периметра. Законы изменения радиусов для конфет двух типов из числа тех, чьи бинарные образы показаны на рис. 3, приведены на рис. 4 и 5. Пики на графиках соответствуют углам, а впадины - сторонам фигуры.
Выступы. Для обработки скругленных ’’углов”, типичных доя шоколадной продукции, была разработана специальная программа поиска. 274
Рис. 7. Выделение выступов
Для того чтобы отличать скругленные ’’углы” от углов в привычном смысле, был введен термин "выступ”.
На рис. 6 выступ соответствует заштрихованной области. Математически он представляет собой область между кривой, гладко сопрягающей RA и ^В (локальные минимумы) и границей фигуры. Примеры выступов показаны на рис. 7.
В результате обработки образа программой поиска выступов изолируются скругленные углы определенной формы и вычисляются их параметры положения. Основным фактором при идентификации выступа является его площадь. Грубая оценка параметров его положения определяется координатами центра площади. При работе с плитками шоколада, имеющими скругленные углы, эта программа используется для поиска большой оси. Такой метод мало чувствителен к небольшим изменениям формы конфеты или плитки.
Отбраковка. Опытная система была настроена на распознавание шоколадных плиток трех типов (см. рис. 2 и рис. 8). В качестве критерия используется площадь плитки. Плитки, площадь которых превышает некоторое предельное значение, отбраковываются. Аналогично система поступает со слишком маленькими плитками. При обнаружении брака система выдает соответствующее сообщение.
Более подробно вопрос определения брака рассматривался в связи с задачей распознавания шоколадной продукции [1].
Производительность. Производительность опытной системы ограничена быстродействием манипулятора. Время, затрачиваемое микроЭВМ на распознавание одной шоколадной плитки, составляет примерно 250 мс. Рабочий цикл манипулятра имеет продолжительность примерно 1,5 с. В промышленном варианте системы предполагается использовать несколько манипуляторов.
Рис. 8. Образцы продукции с узорами, нанесенными роботами
Быстродействие программного обеспечения обусловлено использованием языка программирования среднего уровня [ 2]. Язык ЭКСТРА сочетает скорость выполнения программ, написанных на языке ассемблера, и языковые средства высокого уровня.
Характерная особенность языка ЭКСТРА - явное использование машинно-ориентированных представлений данных: битов, байтов и слов. Компилятор ЭКСТРА генерирует для большинства операций над такими данными одну машинную команду.
список литера туры
[11 Cronshaw, A. J. ‘Software development for the visual recognition of chocolates’ Proc. 2ndlnt Conf on AssemblyAutomauon Brighton. IPS (Publications) (May 1981).
[2] Cronshaw. A. J.. Heginbotham, W. B. and Pugh. A.‘Software techniques for an optically tooled bowl feeder’. Conf. Trends in On-line Computer Control. Institution of Electrical Engineers London (March. 1979).
Глава 7
СЕРИЙНО ВЫПУСКАЕМЫЕ СТЗ РОБОТОВ
В настоящее время уже существуют системы технического зрения, производимые серийно. Следующие пять статей описывают наиболее распространенные из них.
СИСТЕМА ТЕХНИЧЕСКОГО ЗРЕНИЯ OMS
П.Ф. X ь ю к и н, Х.Дж. Фукс, фирма "Би-би-си Браун, Бовери энд Си"( ВВС Brown, Boveri & Cie AG^, ФРГ
CT3 OMS представляет собой серийно выпускаемую систему сбора и скоростного анализа визуальной информации. Система может программным способом настраиваться на выполнение различных задач, например, распознавание объектов или измерение характерных величин, связанных с объектами. Можно подключить систему к различным устройствам. Система может работать в одном из трех режимов: интерактивном, управляющем и управляемом. Время выполнения типовых операций не превышает одной секунды. Система может использоваться как орган технического зрения робота, в устройствах сортировки и технического контроля деталей.
Введение. Последние достижения в области микропроцессорной техники сделали возможным создание оптического датчика общего назначения. Такой датчик отличается от датчиков предыдущего поколения большей гибкостью и ориентацией не на отдельную задачу, а на класс задач.
В статье описывается система OMS (рис. 1) [ 1, 2, 4], предназначенная для решения широкого круга задач. Конструкция системы отработана, имеется практический опыт ее использования в лабораториях и промышленности. Фирма-изготовитель продолжает работу по совершенствованию системы.
Характеристики системы. Характеристики системы можно разделить на два класса: характеристики обработки визуальной информации и собственно системные характеристики. При разработке системы OMS использовались конструкторские решения, обеспечивающие возможность ее ис-
Рис. 1. Система OMS (вид спереди) :
7 — процессор, память и интерфейсные платы; 2 — пользовательская клавиатура;
3 — дублирующие модули; 4 — буферная память изображения; 5 — процессор обработки изображений; 6 — таймер; 7 — блок вычисления площади и моментов;
8 _ интерфейс телекамеры; 9 — параллельный интерфейс; 10 — последовательные интерфейсы; 11 — блок питания
пользования при решении широкого класса задач обработки визуальной информации в составе систем различной конфигурации.
Основные характеристики обработки визуальной информации приведены в табл. 1. По выбору заказчика набор функциональных возможностей может быть сужен. Возможности существующих систем могут быть расширены простым добавлением сменных блоков (см. рис. 1). Информация об изображении представляется в системе в виде бинарных образов, поэтому предполагается, что с помощью телекамеры на вакуумной трубке, матричной камеры или линейно-сканирующей камеры может быть получено четкое, высококонтрастное изображение объектов. Точность измерений ограничивается размерами элемента растра (размер растра для растровых камер 256 Х415 элементов, для линейно-сканирующей 1024 Х512 элементов). Вычисления выполняются с учетом дробных долей размера элемента, что позволяет избежать накапливания ошибок округления. Более подробно характеристики обработки визуальной информации приведены в[ 2].
Основные характеристикизрительной обработки в системе
Выбор используемой камеры и ’’окна’’,ограничивающего анализируемый участок изображения
Размер буферной памяти изображения 2x512x512 элементов
Выбор формы отображения: аналоговое/бинарное, позитив/негатив, выполнение операции И или ИСКЛЮЧАЮЩЕЕ ИЛИ над образами, полученными с двух камер, или образом, полученным с камеры и образом, хранящимся в буферной памяти
Высокая скорость операций анализа визуальной информации
Побитно наращиваемый процессор с циклом 125 нс
Вычисление площади и координат центра площади в реальном масштабе времени 6 Перевод результатов измерений в конкретные единицы
Возможность обучения распознаванию объекта независимо от его положения. Возможно задание критерия распознавания
Измерение параметров положения объекта (х, у, ^ относительно некоторого стандартного положения
Прослеживание указанной точки (не обязательно центра площади) на объекте или относительно него
Разделение объектов. До 256 отдельных объектов на одном изображении. Сортировка объектов по размеру или по строкам и столбцам. Индивидуальный анализ объектов
Анализ положения векторов, заданных на распознаваемых объектах, формирование информации для управления схватом робота. Анализ углов или других локальных признаков
Необходимость использования системы OMS в составе аппаратуры пользователя предъявляет специфические требования к обработке визуальной информации. Эти требования меняются от одной прикладной задачи к другой. Можно выделить три базовых схемы использования системы OMS (рис. 2).
Автономное использование. Оператор наблюдает изображение на экране монитора и в режиме диалога вводит в систему соответствующие команды, набирая их на клавиатуре.
Рис. 2. Схемы использования системы OMS:
1 — автономное использование — системы с интерактивным визуальным анализом; 2 — использование в качестве управляющего звена — автоматизация выполнения простых операций; 3 — использование в качестве управляемого звена — автоматизация бопее сложных операций
Использование в качестве управляющего звена. Обрабатывая визуальную информацию, система OMS управляет работой исполняющего устройства, например конвейера или сортирующего приспособления. Программа функционирования системы OMS составляется пользователями до начала работы. OMS формирует и посылает в исполняющее устройство команды
типа СТОП, ОТВЕРГНУТЬ ОБЪЕКТ, ВЫБРАТЬ ОБЪЕКТ ТИПА А.
Использование в качестве управляемого звена. Система OMS ис
пользуется в качестве интеллектуального визуального анализатора, соединенного с ЭВМ, управляющей работой всей системы. Она по запросу ЭВМ передает ей информацию о типах объектов, их координатах и т.д. Такая схема использования типична в системах автоматизированной сборки.
В табл. 2 приведены основные характеристики системы OMS для всех
трех схем ее использования.
Программирование. Программы в систему вводятся с 20-клавишной
ХарактеристикаХарактеристикаИнтерактивное отображениеПростой язык программированияПрограммы составляемые пользователемГибкие программируемые интерфейсыПрограммы работы с роботомПамять чисел и выполнение вычисленийВнутренний таймер н условное ожидание Сохранение и повторное использование программ пользователяИнтерактивное отображениеПростой язык программированияПрограммы составляемые пользователемГибкие программируемые интерфейсыПрограммы работы с роботомПамять чисел и выполнение вычисленийВнутренний таймер н условное ожидание Сохранение и повторное использование программ пользователяАвтономнаяУправляемое звеноУправляющее звено++**++ - 1+++*+*++АвтономнаяУправляемое звеноУправляющее звено++**++ - 1+++*+*++Схема использования системыСхема использования системы* - полезно иметь и составе системы.* - полезно иметь и составе системы.+ - желательно иметь в составе системы;+ - желательно иметь в составе системы;Характеристики системы OMS
Характеристика
Характеристика
Интерактивное отображение
Простой язык программирования
Программы составляемые пользователем
Гибкие программируемые интерфейсы
Программы работы с роботом
Память чисел и выполнение вычислений
Внутренний таймер н условное ожидание Сохранение и повторное использование программ пользователя
Интерактивное отображение
Простой язык программирования
Программы составляемые пользователем
Гибкие программируемые интерфейсы
Программы работы с роботом
Память чисел и выполнение вычислений
Внутренний таймер н условное ожидание Сохранение и повторное использование программ пользователя
Автономная
Управляемое звено
Управляющее звено
+
+
*
*
+
+ - 1
+
+
+
*
+
*
+
+
Автономная
Управляемое звено
Управляющее звено
+
+
*
*
+
+ - 1
+
+
+
*
+
*
+
+
Схема использования системы
Схема использования системы
* - полезно иметь и составе системы.
* - полезно иметь и составе системы.
+ - желательно иметь в составе системы;
+ - желательно иметь в составе системы;
передней панели или дополнительной клавиатуры, соответствующей стандарту ASCII. Возможен ввод программы по каналу связи с ЭВМ. Программирование обычно выполняется в диалоговом режиме. Пользователь выбирает одну из системных функций (табл. 3), после чего система инициирует соответствующую этой функции процедуру ведения диалога. На экране монитора появляются вопросы, на которые пользователь должен дать ответ. В случае необходимости кроме вопроса высвечивается изображение, соответствующее выбранному полю зрения. При неправильном ответе пользователя на вопросы на экран выдаются коды ошибок. После этого пользователь может ввести правильный ответ на вопрос, не возобновляя программирование с самого начала. Коды ошибок могут посылаться на внешнее устройство, выполняющее соответствующие действия (например, посылая в систему OMS другие команды).
Пользователь может создавать собственные функции. Желаемая функция представляется в виде последовательности стандартных функций. Последовательность этих функций выполняется в режиме обучения (обучение показом), после чего ’’макрокоманда” получает имя и записывается в память. В дальнейшем ее можно вызывать по имени, как любую системную функцию. В теле ’’макрокоманд” могут заключаться операции организации конечных и бесконечных циклов, условного ожидания и передачи данных в различные устройства. Имеется набор арифметических операций, позволяющий выполнять различные вычисления с данными визуального анализа и команды управления выполнением программы, позволяющие модифицировать программу в соответствии с текущими условиями. По завершении программирования пользовательская функция и используемые в ней переменные могут быть записаны на кассету магнитной ленты или выведены на перфоленту. Пользовательская информация может храниться в памяти, сохраняющей информацию при выключении питания, что позволяет системе OMS автоматически восстанавливать свое состояние после аварий источников питания.
Интерфейсы системы. Система OMS может получать визуальную информацию одновременно от восьми растровых или четырех линейно-ска- нирующих телевизионных камер. К выходу системы могут присоединяться два монитора. Сигналы синхронизации телекамер и / или мониторов также вырабатываются системой OMS.
Тип каналов передачи данных в другие устройства выбираются пользователем. Программы обмена по этим каналам также составляет пользователь. В число возможных вариантов входят стандартные последовательные интерфейсы фирмы ’’Диджитал Экуипмент”, а также программируемый параллельный интерфейс с 16 входами и 16 выходными шинами данных. Для обеспечения совместимости с некоторыми промышленными роботами (например, ТЗ фирмы ’’Цинциннати Милакрон” {Cincinnati Milacron) и ПУМА фирмы ’’Юнимейшн” {Unimation [6, 8]) было разработано специальное программное обеспечение интерфейса. При работе с последовательными интерфейсами система OMS обеспечивает' буферизацию. В процессе работы пользователь может включать и выключать автоматическую вставку символов перевода строки и отображение строк на
3. Системные функции OMS
№
Описание
Комментарий
1
Перечень доступных функций
Системные и пользовательские
2
Загрузка системы, загрузка и сохране-
Программы можно хранить на кассете
нение пользовательских программ
МЛ или диске
3
Запись адреса программы или данных
При отладке и обслуживании
4
Составление программы пользователя
Задание новой функции
5
Специфика ввода-вывода
Выбор интерфейса
6
Программный цикл
7
Программное условное ожидание
Синхронизация процессов
8
Программная задержка
9
Калибрование системы
Выполняется по тестовому изображению для коррекции искажений камеры и задания единиц измерения
10
Приведение к нужным единицам
11
Выбор камеры и поля зрения
12
Автоматическая установка
Для снижения влияния изменения уело-
уровня порогового отсечения
вий освещения
13
Задание параметров распознаваемых
Автоматически или по указанию пользо-
деталей
вателя
14
Обучение распознаванию объекта
Пользователь задает имя и класс объекта
15
Задание стандартного положения и нулевой точки объекта
16
Распознавание объекта
17
Измерение параметров положения
Относительно стандартного положения
объекта
или в мировой системе координат
18
Измерение площади и параметров положения нулевой точки. Сравнение с образом из буферной памяти
19
Программная логика
Для управления выполнением программы
20
Разделение объектов и их анализ
21
Функции калькулятора
Выполняются все арифметические действия с данными программы. Имеются де-
с ять адресуемых регистров памяти
*22
Анализ положений векторов
Анализ векторов, определенных на объектах, образы которых хранятся в буферной памяти изображения
*23
Управление буферной памятью
Загрузка, отображение и анализ содер-
изображения
жимого двух блоков буферной памяти изображений емкостью 512 X 512 эле-
ментов
*24
Вращение изображения
Поворот указанной пользователем части изображения на произвольный угол
*25
Память
Используется расширенная память данных пользователя
*26
ТЗ
Программное обеспечение робота
ТЗ/НТЗ фирмы ’’Цинциннати Милакрон”
[5,8]
* - Специальные функции, не входящие в состав стандартного программного i обеспечения системы OMS.
экране монитора. При обмене данными можно передавать почти все символы (включая управляющие) набора ASCII. Это позволяет по одному каналу передавать и осмысленный текст (типа "Объект № 7, позиция х = 57 мм, у = 29 мм, поворот—3501 1/10 градусов") и кодированные команды, передаваемые в другие устройства. Пользуясь средствами программной логики, параллельный интерфейс можно использовать для операций сортировки или обработки объектов, возможно, совместно с устройством управления с жесткой логикой. Операции условного ожидания расширяют возможности интерфейсов. При их выполнении работа приостанавливается до тех пор, пока не будет выполнено определенное условие. Примерами таких условий могут быть: "нужная фигура находится в поле зрения", "управляемое устройство готово", "получена строка в коде ASCII".
Быстродействие. Основное требование, предъявляемое к оптическим сенсорам — совместимость скорости работы с другими компонентами системы (сборочными роботами, транспортерами и т.д.). Продолжительность рабочего цикла системы OMS зависит от выполняемых ею операций, а в некоторых случаях от сложности анализируемого визуального образа. В системе имеется два независимых процессора, один из которых выполняет программу работы системы, а другой занимается анализом образов. При выполнении многих операций эти процессоры работают параллельно. В табл. 4 приведены длительности выполнения типовых операций и факторы, влияющие на них. Обычно время, затрачиваемое системой на обработку визуальной информации и принятие решения, не превышает од-
4. Быстродействие системы OMS
Выполняемая операция
Время выполнения, мс
Комментарий
Поиск и отображение светлого объекта
25
Не зависит от объекта
То же, с выдачей координат центра площади
60
То же
Распознавание объекта с выдачей его номера, показателей ''качества” распознавания, номера следующего объекта того же типа и показателей качества его распознавания
70-190
Зависит от формы объекта, используемых критериев распознавания и номера объекта
То же, с выдачей параметров положения объекта и его нулевой точки
100-280
Зависит от требующейся точности и условий распознавания объекта
Разделение объектов, находящихся в в поле зрения
3OQ-2OOO
Зависит от степени сложности изображения
Выделение конкретного объекта
10-20
Зависит от степени сложности изображения
Прослеживание параметров положения вектора, определенного на объекте
2OO-5OO"
Зависит от количества переходов от светлого к темному и,наоборот,вдоль длины вектора
Поворот отдельного участка изображения вокруг произвольной оси
500-2000
Зависит от степени сложности изображения
Рис. 3. Совместное использование системы OMS и робота ПУМА. Под управлением системы технического зрения робот упаковывает в картонные коробки детали, размещенные в рабочей зоне произвольным образом. Система OMS выступает в роли программирующего терминала робота: она посылает в его устройство управления команды языка ВАЛ каждый раз, когда робот запрашивает координаты следующей упаковываемой детали. Использованы стандартные системы OMS и ПУМА. Нестандартное оборудование не используется
ной секунды. Такое быстродействие позволяет использовать систему OMS для решения большинства практических задач.
Использование системы. Система OMS используется на многих промышленных предприятиях и в исследовательских организациях Западной Европы. На производстве система используется при разгрузке деталей с палет, сортировке металлических деталей, измерении параметров положения деталей и контейнеров, управлении устройствами окраски распылением, техническом контроле и манипулировании мелкими деталями.
Система использовалась совместно с роботами фирмы ’’Юнимейшн” [6] (рис. 3), ’’Цинциннати Милакрон” [ 5, 8] и ДЕА фЕА) [7]. Программное обеспечение интерфейса позволяет легко настраивать систему на работу совместно с другими роботами, что позволяет пользователям создавать конфигурацию аппаратуры, наиболее полно отвечающую поставленным задачам.
Заключение. Система технического зрения OMS может не только воспринимать и анализировать визуальную информацию, но и использовать эту информацию для работы совместно с другими устройствами (в особенности с промышленными роботами). Гибкость системы, обеспечиваемая модульной организацией ее структуры и простота программирования делают возможным использование OMS для решения широкого круга задач.
СПИСОК ЛИТЕРА ТУРЫ
R. Karg and О Е. Lanz, 'Experimental Results with a Versatile Optoelectronic Sensor in Industrial Applications'. Proc 9th bit. Symp on Industrial Robots. Washington [X?. USA (Society Manufacturing Engineers) (March 1979).
P. F. Hewkin and H.-J. Fuchs. 'New features of the OMS Vision System'. 2nd Int. Conf, on Robot Vision and Sensory Control. Stuttgart. Germany (2-4 Nos ember 1482).
H.-J. Fuchs and P. F. Hewkin, 'Roboteranwendung mil dem Optoelektronischen Sensor OMS' Fachtagung 'Industrieroboter Chancen und Probleme fur unsere Betriebe, Universitat Linz, Austria (28-30 September 1982).
H. Holsmolle, 'Sehende Roboterin derHandhabetchnik'. BBC Heidelberg(1981).
'External Function RS-232 (Option) with restructured Software'. Cincinnati-Milacron Co.. Cincinnati, USA (1980).
P F. Hewkin and H.-J. Fuchs, 'Erfahrungen mit dem Robotersichtsystem OMS/PUMA. BBC Heidelberg (1981).
I. Schmidtt, 'Montageaufgaben fiir sensorbestiickte Industrieroboter'. Presented at conference 'Erfahrungen mit Industrierobotern', Munich, Germany (28-31 October 1981).
P. F. Hewkin and H.-J. Fuchs, OMS/T3 Robot Vision System’. BBC Heidelberg (1981).
СИСТЕМА ТЕХНИЧЕСКОГО ЗРЕНИЯРОБОТА ПУМА/VS-IOO
Б. Карлайсл, С. Р о т, фирма "Юнимейшн", (Unimation IncAДж. Глисон, Д. М а к - Г и, фирма "Машин Интеллидженс"(Machine Intelligence Corp^, США
Представлена на первой Международной конференции по техническомузрению роботов и сенсорному управлению,
Стратфорд на Авоне, Великобритания, 1—3 апреля 1981 г.
В статье описывается робототехническая система третьего поколения со встроенной подсистемой технического зрения. Система состоит из робота ПУМА фирмы ’’Юнимейшн” и системы технического зрения KS-100 фирмы”Мэшин Интеллидженс”. Алгоритмы, управляющие работой системы , записываются на языке ВАЛ (KAL), разработанном фирмой ’’Юнимейшн”. Система способна определять параметры положения объектов и может выполнять их классификацию осуществляемую с высокой степенью точности. Описываются особенности робота ПУМА, системы технического зрения и их интерфейса. Рассматриваются процедуры калибрования и преобразования из координат системы технического зрения в координаты робота. Обосновываются требования к точности позиционирования робота и характеризуется точность работы системы в целом. Приведен пример управляющей программы.
Введение - система ’’Юнивижн”. Система ’’Юнивижн” (Univision) представляет собой визуально управляемую робототехническую систему, в состав которой входят серийный манипулятор ПУМА фирмы ’’Юнимейшн’’ .и системы технического зрения И5-100 фирмы ’’Машин Интеллидженс”. Обучение системы и составление рабочих программ выполняется с помощью простого в изучении и использовании языка ВАЛ,
разработанного фирмой ’’Юнимейшн”. Система способна определять параметры положения объектов и может существенно упростить их сортировку с высокой степенью точности. Помимо этого, используемые алгоритмы обработки визуальной информации позволяют выполнять внутриоперационный технический контроль деталей в процессе их сборки или перемещения. Система технического зрения использует ’’обучение показом”, т.е. на этапе обучения ей предъявляются эталонные детали. Действия робота программируются на языке ВАЛ — языке управления роботом высокого уровня, в котором используются английские слова типа MOVE, DEPART и LOCATE. Ввод системы в действие и процедура калибрования занимают несколько минут. Так как система технического зрения может обрабатывать образы во время перемещений манипулятор, типовой рабочий цикл захвата и перемещения детали составляет от трех до пяти секунд.
Серийные манипуляторы ПУМА. В настоящее время серия роботов ПУМА фирмы ’’Юнимейшн” насчитывает три модели. Модель 250 имеет шесть степеней свободы, может нести нагрузку в 1 кг, размер ее рабочей зоны составляет 0,4 м, а скорость перемещения рабочего органа — 3 м/с. Модели 500 и 600 имеют соответственно 5 и 6 степеней свободы, несут нагрузку 3 кг, размер рабочей зоны 0,86 м, скорость перемещения рабочего органа 1 м/с. Привод манипуляторов серии ПУМА осуществляется от сервомоторов постоянного тока с инкрементными оптическими шифраторами. Главные оси снабжены надежными стопорами. Каждое из звеньев имеет двухступенчатую зубчатую передачу с компенсацией мертвого хода. Нижнее и верхнее звенья имеют особую конструкцию, позволяющую увеличить отношение ”сила/момент инерции”.
Каждая модель серии ПУМА имеет собственное устройство управления. Эти устройства строятся на базе ЭВМ фирмы ’’Диджитал Экуип- мент” LSI-W Пользовательские программы хранятся в памяти с произвольным доступом, а интерпретатор языка ВАЛ — в памяти с доступом только на чтение. Сервосистема каждого из звеньев состоит из микропроцессора и усилителя мощности. Каждый микропроцессор получает от ЭВМ LSI-W значения угла поворота управляемого им звена и выступает в роли регулятора замкнутого цикла управления. Такая архитектура позволяет быстро менять динамические характеристики системы.
Устройство управления, в состав которого входит регулируемый силовой источник постоянного напряжения, размещается в отдельной стойке размером 19 дюймов (47 см). Все устройства соединяются с ним кабелями, вставляемыми в розетки на передней панели стойки.
Обучающая приставка построена на базе микропроцессора и включает в себя переключатели движения звеньев, выбора режимов, выключатель схвата, потенциометр, задающий скорость движения, и алфавитно-цифровой дисплей. Дисплей используется для выдачи на него сообщений об ошибках и информации о состоянии системы.
Язык ВАЛ. Управление роботами серии ПУМА выполняется с помощью языка высокого уровня ВАЛ, разработанного для описания сборочных операций и управления роботом.
Все операции языка ВАЛ представляют собой фразы на английском языке. ВАЛ включает полный набор операторов, предназначенных для обучения робота и редак гирования программ. Управляющая система, включающая интерпретатор ВАЛ, может не только управлять роботом ПУМА, но и работать совместно с системой технического зрения и динамометрическими датчиками. Более подробно операторы интерфейса системы ВАЛ и системы технического зрения описываются ниже.
Система технического зрения VS-100 фирмы ”Мэшин Интеллидженс” Система определяет и передает устройству управления роботом значения параметров положения видимых объектов. Система проводит операцию порогового ограничения над полутоновым образом, преобразуя его в бинарный, и далее работает с силуэтами объектов. Параметры положения объекта определяются двумя координатами центра площади силуэта и углом его поворота вокруг этой точки. Угол поворота определяется положением наибольшего радиуса, проходящего через центр наибольшего отверстия (по выбору пользователя).
Эффективность работы всей системы зависит от надежности распознавания объектов. Система классифицирует силуэты объектов по таким признакам, как площадь, периметр, радиусы наибольшей и наименьшей длины, количество отверстий. В процессе обучения системе предъявляются несколько экземпляров эталонных объектов. Пользователь определяет название объекта и предъявляет его системе в различных положениях. В процессе обучения система накапливает статистические данные о признаках объекта.
Основные особенности системы К5-100 могут быть разделены на четыре группы.
Во-первых, для упрощения диалога с пользователем было разработано меню со световым пером, пользуясь которым, с системой может работать даже не очень квалифицированный оператор. Меню состоит из четырех секций: ’’УСТАНОВКА СИСТЕМЫ” (SYSTEM SETUP), ’’ОБУЧЕНИЕ” (TRAINING), ’’РАБОТА”(OPERATION) и ’’РАБОТА ПОДРОБНО” (EXPERT OPERATION). ’’УСТАНОВКА СИСТЕМЫ” предоставляет пользователю набор операций: выбор телекамеры, выбор поля зрения, выбор объктива, фокусного расстояния, диафрагмы, уровня ограничения, пространственное калибрование. ’’ОБУЧЕНИЕ” используется при программировании системы ES-100 (методом показа) для распознавания деталей, находящихся в одном из устойчивых положений. Выбор и оптимизация набора отличительных признаков выполняются с помощью задания матрицы автоматической дискриминации. ’’РАБОТА” позволяет ввести в действие систему KS-100 после завершения этапа обучения. ’’РАБОТА ПОДРОБНО” включает несколько дополнительных функций, позволяющих пользователю настраивать систему KS-100 на выполнение конкретных задач оптимальным способом. Для оценки отношения быстродействия и надежности работы системы представляется информация о длительности рабочего цикла. На рис. 1 приведены типовые меню.
Во-вторых, к системе ES-lOO могут присоединяться телекамеры, использующие полупроводниковые матрицы высокой разрешающей способ- 286
ности: камера 7W2500 фирмы ’’Дженерал Электрик” (GE) с матрицей 240 X 240 элементов или камера АС600С256-1 (256 X 1 элемент) , с линейной разверткой.
В-третьих, для обеспечения телеуправления системой К5-100 от удаленной ЭВМ, находящейся на более высоком уровне в иерархии системы в целом, был разработан специальный интерфейс. Этот интерфейс позволяет ЭВМ пользователя работать с И5-100 как с периферийным устройством, обрабатывающим зрительную информацию. Интерфейс используется при совместной работе системы F5-100 и роботов ПУМА фирмы ’’Юнимейшн”. Аппаратная часть интерфейса представляет собой стандартный параллельный 16-разрядный двунаправленный интерфейсный модуль фирмы ”Дид- житал Экуипмент”. Для повышения скорости обмена был разработан специальный протокол связи.
В-четвертых, система И5-100 выпускается в исполнении, приспособленном для работы в неблагоприятных условиях производственного помещения. Блок питания системы имеет стабилизатор, обеспечивающий стабильность напряжения и фильтрацию помех, просачивающихся из силовой сети. Возможно использование буферной аккумуляторной батареи.
Система ’’Юнивижн”. В состав системы ’’Юнивижн” входит робот серии ПУМА и система технического зрения И5-100. Эта новая робототехническая система может работать с деталями, расположенными случай-
TRAININGPROCESS CAMERA IMAGESWITCHESVALUESCLEAR IMAGE BUFFERDISPLAY BLOBPROTOTYPE FUNCTIONSREPROCESS IMAGESELECT BLOBPROCESS BLOBWITTRAININGPROCESS CAMERA IMAGESWITCHESVALUESCLEAR IMAGE BUFFERDISPLAY BLOBPROTOTYPE FUNCTIONSREPROCESS IMAGESELECT BLOBPROCESS BLOBWITSYSTEM SETUP
TRAINING
PROCESS CAMERA IMAGE
SWITCHES
VALUES
CLEAR IMAGE BUFFER
DISPLAY BLOB
PROTOTYPE FUNCTIONS
REPROCESS IMAGE
SELECT BLOB
PROCESS BLOB
WIT
TRAINING
PROCESS CAMERA IMAGE
SWITCHES
VALUES
CLEAR IMAGE BUFFER
DISPLAY BLOB
PROTOTYPE FUNCTIONS
REPROCESS IMAGE
SELECT BLOB
PROCESS BLOB
WIT
PROCESS CAMERA IMAGE
DISPLAY CAMERA IMAGE
SELECT CAMERA
HISTOGRAM <G SET THRESHOLD»
SET THRESHOLD
SWITCHES
VALUES
- CLEAR IMAGE SUFFER
CALIBRATE
DISPLAY BLOB
ORIENTATION FEATURES
_ OPERATION .;PROCESS CAMERA IMAGEWIT_ OPERATION .;PROCESS CAMERA IMAGEWIT1 CASTING •.•»!9.31 CASTING •.•»!9.3WIT
_ OPERATION .;
PROCESS CAMERA IMAGE
WIT
_ OPERATION .;
PROCESS CAMERA IMAGE
WIT
1 CASTING •.•»!9.3
1 CASTING •.•»!9.3
EXPERT OPERATION . .
'• PROCESS CAMERA IMAGE
.• DISPLAY CAMERA IMAGE
• SELECT CAMERA
■ • HISTOGRAM <6 SET THRESHOLD) ■ SWITCHES
• VALUES'
• CLEAR IMAGEBUFFER • CALIBRATE • DISPLAY BLOB • ORIENTATION FEATURES • PROTOTYPE FUNCTIONS ■• REPROCESS IMAGE
• SELECT BLOB
PROCESS BLOB
QUIT
1 CASTING 5.6 23.FREJ»
Рис, 1, Типовые меню операций, выполняемых системой технического зрения
циклциклРис. 2. Система "Юнивижн"Рис. 2. Система "Юнивижн"захвата и перемещения детализахвата и перемещения деталиным образом. Это позволяет уменьшить жесткость требований к ориентированию деталей при их подаче на обработку и снизить вероятность их заклинивания в подающем устройстве. Система может снимать детали непосредственно с движущейся ленты транспортера, повышая гибкость устройства транспортирования. Система технического зрения может обрабатывать образы во время перемещения манипулятора. Типовой рабочий
цикл
цикл
Рис. 2. Система "Юнивижн"
Рис. 2. Система "Юнивижн"
захвата и перемещения детали
захвата и перемещения детали
составляет от трех до пяти секунд.
Связь робота и системы технического зрения. В системе ’’Юнивижн” (рис. 2) система технического зрения подчинена устройству, интерпретирующему язык управления роботом ВАЛ. Для работы в системе с такой архитектурой в язык были введены дополнительные операторы, управляющие работой подсистемы технического зрения. Эти операторы позволяют пользователю выполнять калибрование системы, обучение, распознавание объектов и определение их параметров положения, записывать визуальную информацию на гибкие магнитные диски и считывать ее. Во время работы устройство управления роботом может выдать команду на считывание изображения, поиск, распознавание и определение параметров положения некоторой детали. Система, получив такую команду, анализирует имеющиеся в изображении силуэты объектов и сравнивает их с прототипами. Среди силуэтов, выдержавших сравнение, выбирается наиболее близкий к прототипу. Если подходящаяся деталь обнаружена, интер- “ претатор ВАЛ определяет преобразование с именем, совпадающим с именем запрошенной детали. Это преобразование задает положение объекта относительно поля зрения системы. Если деталь не обнаружена, интерпретатор переходит к следующему шагу программы или к выполнению специальных действий.
Калибрование. Для того чтобы робот мог работать с деталями, найденными системой технического зрения, робот и эта система должны иметь связанные декартовы системы координат. Соответствие систем координат робота и системы технического зрения устанавливается в процессе калибрования. Первая часть процедуры калибрования касается проверки двухмерной системы координат, связанной с полем зрения. Затем система координат камеры должна быть связана с системой координат робота. Их соответствие устанавливается с помощью преобразования координат из системы камеры в систему робота. Преобразование координат представляет собой оператор, описывающий элементарные операции смещения и поворота, совмещающие одну систему координат с другой.
Калибрование системы технического зрения. Градуировка координат- г ных систем камеры и робота должна быть выполнена в одинаковых единицах. При калибровании системы технического зрения используется ро-
бот. В схват робота вставляется специальный инструмент — указатель. В поле зрения камеры помещается плоский диск с отверстием в центре. Схват робота перемещается таким образом, чтобы указатель попал в это отверстие. Положение робота фиксируется набором на терминале команды HERE R1. Робот выводится из поля зрения камеры, не нарушая положения диска. На терминале набираются команды PICTURE и FINDHEAP VI. При выполнении этих команд СТЗ определяет параметры положения диска внутри поля зрения. Та же процедура повторяется после перемещения диска в поле зрения камеры (используются имена А 2 и Е2). В результате имеются два положения схвата робота и два положения диска в поле зрения камеры. С терминала вводится команда VCALIBRATE V1, V2, RI, R2.
После выполнения этой команды координатная система камеры проградуирована так, что расстояние между точками VI и V2 равно расстоянию, пройденному роботом от положения R1 до положения R2. Процедура калибрования системы технического зрения выполняется однократно при начале работы. Результаты калибрования могут быть записаны на гибкий магнитный диск. При перемещении камеры или смене порогового значения яркости изображения систему технического зрения следует калибровать заново.
Калибрование преобразования систем координат. После завершения калибрования СТЗ можно определить постоянные преобразования, устанавливающего соответствие координатных систем, связанных с полем зрения и с роботом. Это выполняется тем же способом, который использовался при калибровании системы технического зрения. С помощью диска и указателя фиксируются четыре положения робота и четыре точки, соответствующие этим положениям в поле зрения камеры. Диск вначале помещается в углу поля зрения и при таком его положении фиксируются R1 и VI. Затем диск переносится в другой угол поля зрения, смежный с первым, и фиксируются R2 и V2. R3 и V3 соответствуют положению диска в углу поля зрения, не смежным с первым, a R4 и V4 — положению диска в центре поля зрения. Затем пользователь вводит команды:
DO FRAME ТОВ = RI, R2, R3, R4
DO FRAME ТВС = VI, V2, V3, V4
DO INVERSE TCB = TCB
DO SET TO. CAMERA = ТОВ: TBC
TO CAMERA — имя преобразования, переводящего систему координат в систему координат камеры. Если пользователь введет на терминале команду DO MOVE ТО CAMERA, робот переместится таким образом, что указатель попадет в начало координат системы камеры.
Для того чтобы понять описанную выше прецедуру, следует ознакомиться с операторами языка ВАЛ FRAME и INVERSE. Оператор FRAME определяет преобразование, устанавливающее соответствие между системой координат робота и вторичной системой координат. В вышеприведенном примере начало вторичной системы координат находится в R4,
Рис. 3. Преобразование координат из системы робота в. систему камеры
ось X параллельно линии, соединяющей R1 и R2, а ось Y проходит через R3. Таким образом, ТОВ (рис. 3) может рассматриваться как оператор, переводящий систему координат робота в систему координат ”В”. Аналогично ТС В может рассматриваться как оператор, переводящий систему координат камеры в систему координат ”В”(на рис. 3 система координат камеры помечена CY и Су). Параметры положения детали будут определяться в системе координат камеры, поэтому необходимо уметь переводить эти координаты в координаты робота. Соответствующее та
кому переводу преобразование включает в себя преобразование, обратное ТСВ — ТВС, оператор, переводящий систему координат ”В” в систему координат камеры. Выполним преобразования последовательно, воспользовавшись средством языка ВАЛ, которое называется ’’обобщенное преобразование”. Преобразование ТО. CAMERA, определяемое как ТОВ: ТВС, представляет собой преобразование, переводящее систему координат робота в систему координат камеры.
В общем случае детали не находятся в начале системы координат камеры. СТЗ определяет параметры их положения относительно этого начала (обычно деталь находится вблизи центра поля зрения). Смещение детали от начала координат и ее разворот рассматриваются как второе преобразование, которое можно объединить с первым. Если мы назовем преобразование начала системы координат робота в начало системы координат камеры ТО. CAMERA, а преобразование начала системы координат камеры в центр детали (определяемый визуальным анализатором) ТО. PART, оператор MOVE ТО. CAMERA: ТО PART переместит схват манипулятора робота в центр детали.
Часто удобно определить положение точки захвата на детали относительно центра площади ее силуэта. Это можно сделать, определив еще одно преобразование с именем PICKUP. Для определения PICKUP сначала используется оператор DO APPRO ТО. CAMERA: ТО. PART, РАССТОЯНИЕ, где РАССТОЯНИЕ задает высоту над рабочей поверхностью (в мм), на которой следует перемещать манипулятор во избежание столкновения с деталью. Затем робот вручную переводится в желаемую точку захвата. PICKUP задается оператором HERE ТО. CAMERA: ТО. PART: PICKUP. В дальнейшем, когда поиск детали будет выполнен зрительной системой, оператор языка ВАЛ MOVE ТО. CAMERA: ТО. PART: PICKUP позволит 290
выполнить перемещения манипулятора робота в точку захвата на детали.
Вычисление обобщенных преобразований занимает довольно много времени. Если такое обобщенное преобразование предполагается использовать многократно (без изменений любого из его компонентов), можно вычислить его один раз и присвоить ему некоторое имя. Это выполняется с помощью оператора SET языка ВАЛ.
Ниже приводится пример программы на языке ВАЛ с операторами управления системой технического зрения. К специфическим операторам управления такой системой относятся PICTURE LOCATE и FINDHEAP.
Оператор PICTURE выдает в систему команды на считывание изображения и обработку образов.
Оператор LOCATE выдает в систему команды, по которым она пытается отыскать среди силуэтов объектов соответствующий заданному прототипу и выдает его параметры положения. Если такой силуэт не найден, выполняется передача управления на метку, указанную в операторе.
Оператор FINDHEAP выдает в систему команды, по которым она определяет и выдает параметры положения неопознанного силуэта.
REMARK *** ПРОГРАММА ИЩЕТ В ПОЛЕ ЗРЕНИЯ СИСТЕМЫ ДЕТАЛИ REMARK С ИМЕНАМИ ’’PARTI”, ”PART2”, ’’PART3” И ПЕРЕНОСИТ REMARKИХ В ПРИЕМНЫЙ ЛОТОК
REMARK * ЗАПИСАТЬ В ПАМЯТЬ ОБРАЗ, СЧИТАННЫЙ ТЕЛЕКАМЕРОЙ
10 PICTURE
REMARK * ИЩЕМ ДЕТАЛЬ С ИМЕНЕМ ’’PART1” И ПЕРЕНОСИМ ЕЕ
20 LOCATE PART1, 0,, 40
30 SET X = ТО. CAMERA:PART1:PICK1
GOSUB MOVE.PART
GOTO 20
REMARK * ДЕТАЛЕЙ ’’PARTI” БОЛЬШЕ НЕТ, ИЩЕМ ’’PART2”
40 LOCATE PART2, 0, ,60
SET X = TO.CAMERA:PART2:PICK2/
GOSUB MOVE.PART
GOTO 40
REMARK * ДЕТАЛЕЙ ’’PART2” БОЛЬШЕ НЕТ, ИЩЕМ "PART3”
60 LOCATE PART3, 0 80
SET X = ТО.CAMERA:PART3:PICK3'
GOSUB MOVE.PART
GOTO 60
REMARK *СЮДА ПОПАДАЕМ, КОГДА HE ОСТАНЕТСЯ .
REMARK * РАСПОЗНАВАЕМЫХ СИЛУЭТОВ '
80 FINDHEAP
HEAP, 0, , 90
REMARK * ЕСТЬ НЕРАСПОЗНАННЫЙ СИЛУЭТ, ПРОБУЕМ ЕГО РАЗБИТЬ SET X = TO.CAMERA:HEAP
GOSUB STIR
СОТОЮ
REMARK * В ПОЛЕ ЗРЕНИЯ БОЛЬШЕ НЕТ О&ЪЕКТЬВ
90 TYPE
TYPE* В ПОЛЕ ЗРЕНИЯ НЕТ ОБЪЕКТОВ
STOP,
В приведенной программе заданы считывание изображения и поиск деталей с именами PARTI, PART2 и PART3. Когда деталь найдена, вызывается программа движения манипулятора MOVE. PART, при выполнении которой деталь захватывается и перемещается в требуемое место. Если две детали соприкасаются, их совокупный силуэт не распознается системой технического зрения. После выполнения поиска детали PART3 программа с помощью оператора FINDHEAP проверяет, нет ли в поле Зрения нераспознанных силуэтов. Если имеются соприкасающиеся детали, робот пытается их разделить, проводя манипулятором через середину нераспознанного силуэта (программа STIR).
Точность системы ’’Юнивижн”. Для оценки точности работы системы ’’камера—манипулятор” рассмотрим процесс определения параметров положения объекта по этапам. На конечный результат, т.е. на точность захвата манипулятором детали влияют следующие четыре фактора: точность определения параметров положения объекта, точность действия манипулятора, точность преобразования координат камеры в координаты робота, точность позиционирования робота по отношению к объекту.
На точность работы СТЗ влияют вледующие факторы: размер элемента растра, геометрия камеры, уровень порогового ограничения по яркости, точность калибрования.
Разбиение образа на элементы растра. Телевизионные камеры, используемые в системе KS-100, имеют двухмерные матричные фотодетекторы. Количество фоточувствительных элементов в матрице может составлять от 128 XI28 до 240 X 240 в зависимости от модели камеры.
Дискретизация изображения вносит некоторую погрешность, пропорциональную разрешающей способности образа. Максимальная погрешность составляет половину размера элемента (рис. 4). Однако погрешность определения положения центра площади силуэта обычно составляет малую часть размера элемента растра. Хилл (Hill) показал, что для центра площади силуэта круглой фигуры погрешность определения координат обратно пропорциональна квадратному корню из количества строк или столбцов в силуэте (рис. 5).
элементовРис. 4. Неопределенность положения грани- рис. 5. Центр площади круглого цы объекта при дискретизации изобрежения объекта представленного бинарнымэлементовРис. 4. Неопределенность положения грани- рис. 5. Центр площади круглого цы объекта при дискретизации изобрежения объекта представленного бинарнымобразомобразом
элементов
Рис. 4. Неопределенность положения грани- рис. 5. Центр площади круглого цы объекта при дискретизации изобрежения объекта представленного бинарным
элементов
Рис. 4. Неопределенность положения грани- рис. 5. Центр площади круглого цы объекта при дискретизации изобрежения объекта представленного бинарным
образом
образом
Геометрия камеры. Матричная структура приемника телевизионной камеры должна быть прямоугольной (в камере MIC-H используется квадратная матрица). Чувствительность всех элементов матрицы должна быть одинаковой. Оптическая ось камеры должна быть перпендикулярна плоскости, на которой находятся детали. Объектив должен быть хорошо сфокусирован и не должен вносить искажений.
Уровень порогового ограничения. Идеальное значение уровня порогового ограничения соответствует середине диапазона между яркостью фона и яркостью объектов. Выбор значения этого уровня влияет на точность определения параметров положения объекта из-за граничного эффекта. Граничный эффект заключается в том, что элемент растра, через который проходит граница объекта, имеет некоторую промежуточную яркость, не совпадающую ни с яркостью фона, ни с яркостью детали. Использование
идеального значения уровня порогового ограничения позволяет определить, относится большая часть элемента растра пересеченного границей, к фону или объекту (см. рис. 4).
Калибрование. Большое влияние на точность определения параметров положения объекта оказывает калибрование системы К5-100. Опыт показывает, что после выполнения описанной выше процедуры калибрования значения ошибок не превышают 0,5 % размера поля зрения.
Параллакс. Система технического зрения работает только с двухмерными силуэтами деталей. В зависимости от высоты объекта, удаленности от центра поля зрения камеры и направления освещения его силуэт образуется различными гранями, например верхней и боковыми. Все видимые
грани влияют на определение положения центра площади силуэта и на определение параметров положения объекта в целом. В настоящее время возникающие ошибки параллакса в системе не компенсируются.
Задача (рис. 6) : по заданным Н, w, И ^D найти А.
Решение А = (4 * D * Щ - h) - w * h) I (4 * H - 2 * h\
Задача: по заданным Н, w, h и максимальному значению А найти
максимальную параллаксическую ошибку X.
Решение: X = (2*Л*А + + w*^, (4*(//-/z))Точность позиционирования робота. Для обеспечения точности работы системы в целом недостаточно точного определения параметров положения объекта системой технического зрения. Требуется, чтобы манипулятор робота достаточно точно приходил в заданную точку. Ранее выпускавшиеся роботы серии ПУМА имели точность позиционирования в рабочей зоне размерами 300X400 мм приблизительно ±1,2 мм. В результатеРешение: X = (2*Л*А + + w*^, (4*(//-/z))Точность позиционирования робота. Для обеспечения точности работы системы в целом недостаточно точного определения параметров положения объекта системой технического зрения. Требуется, чтобы манипулятор робота достаточно точно приходил в заданную точку. Ранее выпускавшиеся роботы серии ПУМА имели точность позиционирования в рабочей зоне размерами 300X400 мм приблизительно ±1,2 мм. В результатеwwФактическое положение оси объектаФактическое положение оси объектаПоложение, определенное с помошью ТВ-камерыПоложение, определенное с помошью ТВ-камерыОшибка параллаксаОшибка параллаксаххААDDДля х^О х^-ЦВ^^Н)Для х^О х^-ЦВ^^Н)Рис. 6. Ошибка параллаксаРис. 6. Ошибка параллакса
Решение: X = (2*Л*А + + w*^, (4*(//-/z))
Точность позиционирования робота. Для обеспечения точности работы системы в целом недостаточно точного определения параметров положения объекта системой технического зрения. Требуется, чтобы манипулятор робота достаточно точно приходил в заданную точку. Ранее выпускавшиеся роботы серии ПУМА имели точность позиционирования в рабочей зоне размерами 300X400 мм приблизительно ±1,2 мм. В результате
Решение: X = (2*Л*А + + w*^, (4*(//-/z))
Точность позиционирования робота. Для обеспечения точности работы системы в целом недостаточно точного определения параметров положения объекта системой технического зрения. Требуется, чтобы манипулятор робота достаточно точно приходил в заданную точку. Ранее выпускавшиеся роботы серии ПУМА имели точность позиционирования в рабочей зоне размерами 300X400 мм приблизительно ±1,2 мм. В результате
w
w
Фактическое положение оси объекта
Фактическое положение оси объекта
Положение, определенное с помошью ТВ-камеры
Положение, определенное с помошью ТВ-камеры
Ошибка параллакса
Ошибка параллакса
х
х
А
А
D
D
Для х^О х^-ЦВ^^Н)
Для х^О х^-ЦВ^^Н)
Рис. 6. Ошибка параллакса
Рис. 6. Ошибка параллакса
последних усовершенствований эта точность повысилась до ±0,3 мм.
Преобразование координат. Точность, с которой выполняется преобразование ТО. CAMERA, зависит от нескольких факторов: точности системы технического зрения, точности позиционирования робота и точности задания преобразования. Эксперименты показывают, что вносимые при этом ошибки составляют от 0,5 до 1%. Основная причина их появления — погрешность позиционирования робота. Использование более точных роботов позволит уменьшить эти ошибки.
Положение манипулятора относительно объекта. Поскольку полностью избавиться от перечисленных выше погрешностей невозможно, манипулятор будет всегда приходить в точку захвата с некоторым отклонением и при захвате объекта будет несколько смещен от нужной точки на поверхности детали. Внесет это смещение дополнительную ошибку или нет, зависит от конструкции рабочего органа и формы детали.
Точность системы в целом. Общая погрешность системы образуется в результате накапливания частных погрешностей, вносимых ее отдельными частями. В настоящее время наибольшую погрешность вносят робот и па- раллаксный сдвиг силуэтов объектов. При отсутствии ошибки, вносимой параллаксом, общая погрешность системы достигает 1% размера поля зрения. Повышение точности робота может существенно снизить это значение.
Заключение. Система ’’Юнивижн'’ представляет собой робототехническую систему третьего поколения с интегрированной подсистемой технического зрения. Использование последней позволяет роботу работать с деталями, расположенными случайным образом. Наиболее эффективно система работает тогда, когда объекты могут быть распознаны по их силуэтам и не требуется высокой точности их захвата. Система легко приводится в рабочее состояние. Обучение и программирование системы выполняется с помощью языка высокого уровня ВАЛ. Гибкость манипулятора, обладающего большим числом степеней свободы в сочетании с совершенной системой технического зрения, представляет большие возможности автоматизации процессов перемещения деталей, технического контроля и сборки.
СПИСОК ЛИТЕРА ТУРЫ
[ 1 ] J. Hill. С, Rosen, et al,. "Machine Intelligence Research Applied to Industrial Automation'. Eighth Report. NSF Grant APR75-13074. SRI Project 4391. SRI International. Menlo Park. California (August 1978),
"VS-100 Reference Manual'. Machine Intelligence Corporation (1980).
P. F Rogers. "The PUMA’, the VAL Language and Programmable Assembly’(1979).
[4 j S. Roth, "Accuracy of the MIC Vision System’. L’nimation Document (1980).
‘User’sGuide to VAL"-Vision Supplement Unimation Inc, (1980).
ОПТОЭЛЕКТРОННЫЙ АНАЛИЗАТОРВИЗУАЛЬНОЙ ИНФОРМАЦИИ В СОСТАВЕГИБКОЙ СБОРОЧНОЙ ПРОИЗВОДСТВЕННОЙСИСТЕМЫ
В. Б р ю н, К. Б и т т е р, фирма "Роберт Бош(Robert Bosch Gmb Н}, ФРГ
Впервые опубликована в журнале "Фрейнверк техник унд месстехник"т 90 (1982), № 2, стр 53. Перепечатывается с разрешения фирмы "Роборт
Бош", Мюнхен, ФРГ
Для демонстрации практических возможностей системы технического зрения была использована гибкая производственная линия автоматической сборки подшипников, применяемых при изготовлении различной аппаратуры. Система состоит из трех телевизионных камер, двух мониторов (на одном из которых отображается поле зрения, а на другой используется для ведения диалога с оператором) , клавиатуры и устройства обработки. Система управляет выполнением перемещения, захвата и установки деталей, а также распознает дефектные сборочные детали, выполняя выходной технический контроль.
Терминология и принципы. При выпуске мелкосерийной продукции необходимо использовать гибкие и, как следствие, экономически выгодные методы организации производства и технического контроля. По этой причине как при мелкосерийном, так и при крупносерийном призводстве, когда не удается решить какие-либо проблемы с помощью механических автоматов, приходится привлекать людей, которые могут зрительно оценивать ситуацию на рабочем месте. В последнее время возникла тенденция ликвидации этого узкого места в общей автоматизации производства с помощью использования оптоэлектронных систем, выполняющих распознавание, контроль и определение параметров положения различных объектов. Такие системы строятся на базе телевизионных камер и микропроцессорных систем высокого быстродействия.
Существенным условием эффективного применения оптических анализаторов является рациональная организация рабочей зоны. С помощью специального освещения и операции порогового ограничения многоградационное изображение деталей (рис. 1, л) может быть преобразовано в бинарный образ (см. рис. 1, б). Обрабатывая двухградационный бинарный образ, система формирует информацию о его площади, периметре, количестве отверстий, используемую в дальнейшем в качестве признаков детали.
Полученная информация размещается в отдельных полях таблицы описания поля зрения (рис. 2). Для распознавания ’’известной” детали такой системе достаточно с помощью тех или иных алгоритмов выполнить сравнение соответствующих признаков с эталонными значениями, хранимыми в памяти. Для определения положения детали на плоскости чаще всего используется центр площади образа этой детали. Разворот
детали на плоскости определяется по относительному положению выступов контура детали или ее отверстий. Для контроля размеров деталей используются высокоточные алгоритмы, обрабатывающие образ детали целиком или по частям.
Устройство системы и способ использования визуального анализатора. В настоящее время наибольшее распространение получили два способа построения оптоэлектронных систем, обрабатывающих изображения в двухмерной декартовой системе координат. Первый из них используется тогда, когда задача, которую система должна решать, определена достаточно строго: все функции системы выполняются специализированной аппаратурой. Однако при таком построении практически невозможно изменить набор функций и способ их исполнения или приспособить систему для работы в условиях, несколько отличных от тех которые были заданы
Рис. 1. Отдельные детали подшипника:
а — многотоновое изображение; б — бинарный образ. Размеры корпуса подшипника приблизительно 75 X 40 мм
L *= LERNENL *= LERNENM = MESSENM = MESSENG - GRAFIKG - GRAFIKQ * QUITQ * QUIT
L *= LERNEN
L *= LERNEN
M = MESSEN
M = MESSEN
G - GRAFIK
G - GRAFIK
Q * QUIT
Q * QUIT
A * AUTOMATISCH I = INTERAKTIV Q = QUIT \A
К = KLASSE(01-16/ )T = TABELLE E - EINGELERNT
R * RETURN Q * QUIT
\K_*
BINNE MERKMALE AUSWAEHLEN:
• FLAECHE (FI
* KONTURLAENGE (K)
- LOECHER (L)
■ F " К
= F ' L
- К * L
• F " К * L
\7
Т * TOLERANZEN
EINGEBENLEERTASTE - WETTER
\Т
FTOL - ? \09
KTOL = ?
\
\J
KLASSEFLAECHE
(10%)LEERTASTE - WEITER
(15%)LEERTASTE - WEITER
CONTIN. ? (J/N)
SZENENTABELLE
KONTURL. LOECHERXSYSZE1LE
117029
58925142761
?1598
15221298592
54180
416952801863
41983
315611751894
33274
25631721955
N = NEXT(1-9)A
* AUTOMATISCHI = INTERAKTIV Q * QUIT
\_
L = LERNENM
= MESSENG = GRAFIKQ = QUIT
\L
\N F = FADENKREUZ A
DIGITALFENSTER SETSEN ? J/N
- AUSGABE DER LISTEN T * TABELLE Q * QUIT
\F
KLASSEFLAECHE
SZENENTABELLE
KONTURL. LOECHERXSYSZE1LE
117020
59065142761
Рис. 2. Отображение информации на экране дисплея. В верхней части экрана приведе-ны результаты обучения системы. В нижней части экрана приведена таблица описанияполя зрения с данными, полученными при обработке образа конкретной детали
при проектировании. При другом способе построения системы, когда задание ее функций выполняется с помощью программирования микроЭВМ, гибкость и адаптивность существенно выше, но скорость работы системы ниже, чем при ’’аппаратном” построении. Сниженное быстродействие программируемых систем зачастую делает затруднительным их использование.
Предназначенная для использования в средствах автоматизации и контроля система технического зрения S.A.M (рис. 3) построена с сочетанием обоих способов, программного и аппаратного, она обладает как достаточным быстродействием, так и высокой гибкостью. В этой системе обработка визуальной информации выполняется с помощью микроЭВМ. Обработка может также выполняться с помощью дополнительных аппаратных процессоров. Некоторые из этих процессоров используются для формирования бинарного образа (рис. 3, справа). В состав системы входят обучающее устройство, состоящее из двух мониторов, клавиатуры и интерфейс-
Рис. 3. Оптоэлектронная система SAM. Первоначальный вариант системы разработан фирмой ИИТБ [НТВ] в г. Карлсруэ. Усовершенствованный промышленный вариант системы выпускается отделением телевизионной техники фирмы "Роберт Бош" в г. Дармштадте
ных модулей, обеспечивающих связь с исполнительным устройством. Система изготавливается в стандартном корпусе (стандарт DIN 41494). Выполняемые под управлением операционной системы программы управляют работой аппаратных процессоров, обрабатывают визуальную информацию и заносят ее в таблицу описания поля зрения (рис. 2). Программные модули, от которых требуется высокая скорость действия, написаны на языке ассемблера, остальные — на языке программирования более высокого уровня PLZ.
Для распознавания детали достаточно сравнить значения признаков, записанных оператором в память в процессе обучения (или полученных расчетным путем) со значениями признаков, вычисляемых в результате визуального анализа (рис. 2). Для выполнения обработки визуальной информации в библиотеке системы имеются различные программы. Использование двух блоков памяти для хранения информации об образах (каждый емкостью 256 X 352 элемента) и фильтрации изображения (специальное преобразование визуальной информации) позволяет правильно обрабатывать изображения рабочей зоны даже в тех случаях, когда в ней присутствуют небольшие посторонние предметы (например, стружки или опилки).
Освещение рабочей зоны должно обеспечивать предотвращение возникновения ошибок визуального анализа в результате появления случайных теней, отблесков или посторонних источников света. Интенсивность освещения должна быть намного выше интенсивности посторонних источников. Существуют много способов организации освещения: прямой.
встречный импульсный флюоресцентный, поляризованным или когерентным светом и т.д. Во избежание возникновения искажений перспективы особое внимание при размещении системы должно быть уделено определению расстояния от камеры до объектов и углу наклона оптической оси камеры.
Для обеспечения требуемой точности измерений обрабатываемая часть изображения должна заполнять возможно большую часть растра. Это объясняется тем, что при преобразовании многотонового изображения в бинарный образ возникает геометрическая погрешность. Значение этой погрешности показывает, насколько точки, принадлежащие образу, смещаются относительно своих истинных положений в процентах от высоты изображения Вн- Выбор размеров изображения должен выполняться так, чтобы геометрическая погрешность преобразования многотонового изображения в бинарное значительно не превысила погрешности телевизионной камеры. Погрешность измерительной камеры составляет ±0,5% Вц, стандартной камеры ±1%Вя- Измерения выполнялись по специальной таблице, размещаемой на горизонтальной поверхности рабочей зоны и занимающей 90% поля изображения, соотношение ширины и высоты которого составляло 4:3. Эти данные могут использоваться при выборе телевизионной трубки в случае работы с перемещающимися объектами. Рабочий цикл считывания изображения телекамерой составляет 20 мс на кадр (50 кадров в секунду), поэтому искажениями, вносимыми медленным перемещением деталей в поле зрения, можно пренебречь. Если детали перемещаются достаточно быстро, могут возникать существенные погрешности параметров их положения. В таких случаях используется импульсное освещение, с помощью которого положение детали ’’замораживается” в определеннные моменты времени.
Использование СТЗ в гибкой сборочной системе. На рис. 4 показан внешний вид гибкой автоматической сборочной системы. Она выполняет операцию сборки пяти отдельных деталей (см. рис. 1) подшипника в сборочный узел [ 1]. Отдельные детали и готовые сборочные узлы находятся в магазинах или палетах. Их положение строго фиксировано. Собираются детали на специальных опорах, устанавливаемых в рабочей зоне. Процессы соединения и переноса деталей выполняются под управлением описанной выше системы технического зрения. Эта же система выполняет выходной технический контроль собранных узлов. Соединение и перенос деталей выполняется устройством (на рис. 5 PU 4000) с числовым программным управлением (ЧПУ), имеющим четыре степени свободы: линейного перемещения по трем осям и вращения вокруг одной оси. Этот механизм работает с устройством управления РС4000, имеющим программно загружаемую память. Сборочное устройство с ЧПУ и устройство управления выпускаются отделом промышленного оборудования фирмы ’’Роберт Бош”. Устройство управления координирует работу системы в целом, управляет сменой в рабочей зоне и устройствами подачи отдельных деталей. Кроме того, это устройство выдает в систему технического зрения запросы на обработку визуальной информации. Устройство управления связано с системой технического зрения и сборочным устройством линиями связи последовательной передачи. 299
Система технического зрения может обрабатывать 12 различных изображений. Кроме стандартных операций обработки визуальной информации (смена уровня порогового ограничения, фильтрация изображения, выполнение алгоритмов распознавания) она выполняет преобразование информации в формат, используемый устройством управления манипулятором. Это преобразование включает в себя пересчет величин из единиц растра в
систему координат манипулятора и подготовку к передаче полинии связи.
Так как собираемые детали окрашены в светлые тона, а фон, на котором они лежат, матово-черный, для получения изображения с хорошей контрастностью достаточно создать освещенность рабочей зоны 900 лк. Для этого используются четыре лампы дневного света.
Самые большие из собираемых деталей, корпуса подшипников (размеры около 40 X 75 мм), поступают на сборку лежащими на палетах.
Положение отдельной детали на палете может быть произвольным. Так как схват сборочного устройства может захватывать детали, расположенные только в определенном участке зоны, необходима их предварительная сортировка. На угол разворота деталей, лежащих на палете, ограничения не накладываются: схват сбороч-
Рис. 4. Система для сборки подшипников. Слева оптоэлектронный анализатор, сверху слева телекамера 1, сверху справа телекамера 3
Рис. 5. Схема управления сборочнойсистемой
Функции организации работы системы и управления: смена палет, подающие устройства, анализаторы
ного устройства и алгоритмы распознавания и определения параметров положения объектов позволяют обрабатывать даже соприкасающиеся детали. Палеты с деталями подаются на сборку стопками, снятие верхней палеты выполняется вторым схватом манипулятора. Система технического зрения управляет сменой палет и включает тот или иной схват робота. Для удобства работы системы технического зрения на палеты наносятся специальные знаки -маркеры. Пустые палеты складываются в стопку, рядом с полными.
Система использует два поля зрения, каждое из которых имеет размеры 400 X 600 мм. Высота размещения первой обслуживающей эти поля телекамеры 2,4 м, фокусное расстояние объективов 36 мм. Такое сочетание параметров обеспечивает определение положения детали с точностью ±4 мм. Поскольку точность позиционирования детали при сборочной операции должна быть не хуже ±0,2 мм, выполняется уточнение параметров положения детали. Эта операция выполняется с помощью дополнительной подвижной камеры, расположенной на манипуляторе. Используя грубую оценку параметров положения детали, система подводит к ней более точную измерительную камеру. Выполненные по считанному ей изображению измерения дают значения параметров положения детали с точностью, достаточной для захвата детали и установки ее в собираемый узел.
Пружинящие шайбы и обоймы подаются на сборку вибрационными транспортерами, их ориентация строго фиксирована и при работе с ними система технического зрения не используется.
Третья телекамера закреплена неподвижно (высота 2400 мм, поле зрения 3 00X400 мм, фокусное расстояние объектива 5 0 мм), используется для работы с подшипниками скольжения и войлочными смазочными прокладками. С ее помощью проверяется наличие войлочных прокладок и измеряются параметры их положения.
После окончания сборки выполняется выходной технический контроль собранного узла. В поле зрения первой телекамеры попадает верхняя из стопки пустых палет. С помощью этой камеры определяется, есть ли на ней свободное место. Если свободное место обнаружено, собранный узел переносится на него. Забракованные системой собранные узлы складываются на третью палету. Для проверки собранных узлов были разработаны специальные алгоритмы обработки соответствующего образа, использующие стандартные операции обработки визуальной информации и автоматическое изменение уровня порогового ограничения, формирующего бинарный образ. На изображении выделяется обрабатываемая зона, и вся информация, не попавшая в нее, не рассматривается.
Действия, выполняемые при сборке. В процессе выполнения сборочной операции система обрабатывает двенадцать типов различных изображений. Полученная в результате этой обработки информация используется целым рядом различных задач - от определения высоты сопки до установки отдельных деталей "и технического контроля собранных узлов. Ниже приводится описание трех таких задач, выполняющихся на различных этапах сборки.
Определение параметров положения корпуса подшипника. На рис. 6, а показано изображение, считанное первой камерой. Координаты одной из деталей отмечены крестиком. Эта деталь была выбрана как располагающаяся ближе других к исполнительному органу манипулятора.
После того, как отмеченные координаты переводятся из системы камеры в систему манипулятора, манипулятор подводит к выбранной детали измерительную камеру. Так как высота этой камеры над объектом составляет приблизительно 150 мм, поле зрения становится меньше (60 X X 46 мм), и изображение детали больше. Точность измерений, выполняемых по считанному измерительной камерой изображению (с учетом погрешности позиционирования манипулятора по осям линейного перемещения ±0,2 мм и по оси вращения ±1°), достаточна для выполнения сборочной операции.
На рис. 6, б приведен образ детали, по которому определяются точные значения параметров ее положения. Определение разворота детали выполняется по инвертированному бинарному образу, в котором отверстия детали выглядят как самостоятельные объекты. Система определяет центры площади этих объектов. На всю процедуру определения параметров положения детали и пересчета их в систему координат робота система затрачивает порядка 150 мс. После завершения этой процедуры деталь может быть захвачена манипулятором и перенесена в сборочную позицию.
Если система технического зрения обнаруживает, что на палете нет деталей, на манипулятор подается команда смены палеты. Автоматически включается второй схват, переносящий пустую палету на верх стопки с собранными изделиями. Затем снова включается первый схват, снимающий детали с палеты, как было описано выше. Если отработаны все палеты с деталями, система останавливается и включается снова после возобновления запаса деталей.
Слежение за устройством подачи подшипников скольжения. Устройство управления Л74000 должно иметь информацию о наличии деталей в устройстве подачи подшипников скольжения. Из-за того, что на фоне тракта подачи детали плохо различимы, для снижения ошибок измерения при-
Рис. 6. Измерение параметров положений корпусов подшипника, лежащих на палете в произвольных положениях:
а — грубая оценка параметров положения детали; б — точное измерение значений этих параметров
ходится применять процедуру автоматического выбора уровня порогового ограничения по яркости. Система точно определяет, имеются детали в устройстве подачи или их там нет и следует наполнить ими бункер. Если в устройстве подачи нет подшипников скольжения, работа системы приостанавливается, а на экране монитора появляется сообщение ’ нет подшипников скольжения”. После заполнения устройства подачи деталями работа системы возобновляется.
Выходной контроль комплектности. На рис. 7 показано, как методами обработки изображений формируются критерии годности собранной
Рис. 7. Выходной контроль комплектности собранного узла:
а — бинарный образ собранного узла до обработки; б — бинарный образ собранного узла после обработки: б^ — кондиционный сборочный узел; б^ — отсутствует пружинящая шайба; 63 — отсутствует войлочная прокладка; 64 — отсутствуют подшипник скольжения и войлочная прокладка; б § — отсутствует обойма
продукции. На рис. 7, а показаны несколько контрольных точек, проверка которых позволяет распознать деталь.
На практике важно убедиться в том, что все детали (смазывающая прокладка, подшипник скольжения, пружинящая шайба и обойма) установлены в собранный узел. Следовательно, перед тем, как будет выполнена операция клепки собранного узла, нужно проверить наличие и правильность установки всех деталей.
Используя операции фильтрации, система формирует изображение, показанное на рис. 7, б, соответствующее кондиционному собранному узлу. Наличие затемненной области в центре говорит о присутствии подшипника скольжения, шесть сегментов концентрического с центральной областью кольца соответствуют пружинящей шайбе и войлочной прокладке, накрытым обоймой. Эксперименты показали, что для обеспечения надежности контроля достаточно распознать три из сегментов кольца. На остальных рисунках (рис. 7,6 1^5) приведены изображения, соответствующие собранным узлам с отсутствием той или иной детали.
Надежность функционирования системы. В состав программного обеспечения системы технического зрения входят тесты проверки работоспособности аппаратуры. В случае отключения питания информация из таблицы описания поля зрения записывается ь память с автономным питанием от батарей и может сохраняться в ней до 120 ч. При включении системы до выдачи сигнала готовности автоматически проверяются все узлы. При передачах по линиям связи выполняется проверка данных. Точность настройки и измерений проверяется с помощью маркеров, нанесенных на палеты, высота штабеля которых измеряется индукционным датчиком. В зависимости от анализируемого изображения уровень порогового ограничения по яркости выбирается автоматически. Это позволяет достигнуть практически стопроцентной надежности функционирования.
Заключение. Описана оптоэлектронная подсистема обработки бинарных образов, соответствующих наличию в поле зрения одной или нескольких деталей. Отличительная особенность системы состоит в том, что исходные данные для распознавания детали формируются при определении параметров ее положения. Система легко перестраивается на работу с другими типами деталей. Для этого используется режим обучения. Для измерения значений признаков объекта по его силуэту требуется высокая разрешающая способность системы. В процессе последующей работы над системой разрешающую способность системы планируется повысить. Выбор типа передающих телевизионных трубок зависит от схемы освещения и условий движения объектов. Типы камер и объективов определяются размерами поля зрения и требуемой точностью анализирующей системы. Сложность используемой аппаратуры и алгоритмов зависит от решаемой задачи.
На этапе обучения системе последовательно предъявляются все детали. Использование деталей, при проектировании которых принималась в расчет возможность их обработки подсистемой технического зрения, и
адекватное освещение рабочей зоны обеспечивают хорошую контрастность изображения, позволяя эффективно автоматизировать производственные операции.
СПИСОК ЛИТЕРА ТУРЫ
[1] Feinwerktechnik & Messtechnik, 89 (1981). р. 413.
СИСТЕМА ТЕХНИЧЕСКОГО ЗРЕНИЯ
С РАЗДЕЛЕНИЕМ СБОРАИ ОБРАБОТКИ ИНФОРМАЦИИ
Дж. И. Робертсон, фирма "Контрол Отомейшн"(Control Automation Inc3 , Принстон, США
Перепечатано из "Сенсор Ревю", т. 2, № 2 (апрель 1982)
В статье описывается интеллектуальная система бинарного технического зрения И-1 ООО, выпускаемая фирмой ’’Контрол Отомейшн”. Система построена с использованием нового принципа иерархического управления, что позволило разделить функции сбора и обработки визуальной информации. Система пригодна для совместного использования с широко распространенными ЭВМ и имеет высокое значение показателя ’’производи- тельность/стоимость”.
Введение. Рассматриваемые в статье традиционный сборочный робот и интеллектуальный визуальный терминал представляют собой первые образцы продукции фирмы ’’Контрол Отомейшн". Они впервые были продемонстрированы на четвертой выставке роботов в Детройте в марте 1982 г. Применение новой архитектуры, методов распределенной обработки данных и современной электроники обеспечило конкурентоспособность обоих устройств: стоимость зрительной системы составляет 19700 долларов, стоимость сборочного робота с одним манипулятором равна 69000 долларов, каждый дополнительный манипулятор стоит 13000 долларов. Стоимость системы, в состав которой входит робот с двумя манипуляторами и встроенной зрительной подсистемой, составляет менее 100000 долларов.
При конструировании устройств использовались принципы распределенной обработки данных и иерархического управления. Система технического зрения имеет два уровня управления. Собственно визуальный процессор (И-1000) выполняет сбор визуальной информации, обработку образов, распознавание деталей и определение параметров их положения.
Процессор И-1000 управляется внешней ЭВМ, обычно системным контроллером SC-1000, но можно использовать практически любую другую ЭВМ. В функции внешней ЭВМ входят выдача команд И-1000 на сбор ин-
формации, запись полученной визуальной информации и принятие на ее основе необходимых решений.
Система технического зрения пригодна как для автономного использования, так и для работы в качестве периферийного устройства робототехнической системы.
Функции системы. Визуальный процессор К-1000 выполняет распознавание деталей и определение параметров их положения, а также технический контроль неперекрывающихся объектов, контрастно выделяющихся на окружающем фоне. Для этого используется алгоритм, разработанный в Стэнфордском исследовательском институте.
В основании алгоритма лежит сегментирование изображения, считанного телевизионной камерой, на отдельные неперекрывающиеся объекты. Для каждого из объектов вычисляется несколько значение — признаков, не зависящих от положения объекта. Такими признаками служат площадь, периметр, момент площади второго порядка относительно центроида и т.д.
Устройство К-] ООО измеряет и использует в качестве признаков девять различных значений. На этапе обучения системе предъявляются эталонные объекты в различных положениях. И-1000 собирает информацию о этих объектах и запоминает ее под тем именем, которым пользователь идентифицировал объект. В дальнейшем эта информация используется при распознавании объектов.
На рис. 1 приведена структурная схема устройства И-1000. В его состав могут входить от одной до четырех телекамер с полупроводниковыми матрицами в интегральном исполнении. Камеры имеют фоточувствитель- ные матрицы размером 128 X 128 элементов и аналоговые интерфейсные платы. Визуальная информация переводится в цифровую форму. Цифровое представление переводится в бинарный образ с помощью операции порогового ограничения, выполняемой сравнением с заданным уровнем яркости изображения.Уровень порогового ограничения может выбираться программно или задаваться зависимостью с гистерезисом.
После порогового ограничения информация подвергается сжатию, вся
Рис. 1. Структурная схема визуального процессора 1/-1000
несущественная информация удаляется. Полученное представление анализируется процессором, построенным на базе микропроцессора Интел 8086 с тактовой частотой 8 МГц. Некоторые программные компоненты написаны на языке ассемблера, что обеспечивает высокую скорость работы.
Структура управления. Устройство К-1000 построено как периферийное устройство ЭВМ и подключается к ней, как все остальные периферийные устройства. Связь визуального процессора К-1000 и пользователя осуществляется по стандартной последовательной линии связи RS-232C (или RSA3T). Этот протокол связи был использован потому, что он применяется в качестве стандартного практически во всех ЭВМ и для связи с ними не требуется никаких дополнительных устройств. При пропускной способности линии связи 9,600 бод время, затрачиваемое на связь ЭВМ и К-1000, не превышает нескольких миллисекунд и ненамного увеличивает длительность рабочего цикла системы.
По выполняемым функциям К-1000 также представляет собой периферийное устройство: в нем не выполняется никаких оценок полученных величин и не принимается никаких решений. Устройство К-1000 только выполняет сбор визуальной информации по запросу внешней ЭВМ, в которую передаются все разультаты. Эта же ЭВМ управляет всеми внешними процессами.
Описанное разделение функций сильно повышает гибкость системы, поскольку у пользователя имеется возможность подобрать упрвляющую ЭВМ, наиболее подходящую для решения конкретных задач. Для простых задач может использоваться недорогая мини-ЭВМ. Использование мощной ЭВМ позволяет работать одновременно с несколькими системами технического зрения.
Наиболее пригодна для совместного использования К-1000 недорогая, но достаточно мощная настольная ЭВМ HPWS фирмы ’’Хьюлетт Паккард” (Hewlett Packard) . Эта ЭВМ в промышленном исполнении 9915 встроена в устройство управления АС-1000. Устройство АС-1000 входит в полный комплект поставки системы технического зрения.
Команды. Устройство К-1000 отрабатывает около 20 различных команд, некоторые из которых перечислены в таблице. Команды передаются в устройство по последовательной линии связи из АС-1000 или другой ЭВМ в виде строк в коде ASCII. Эти строки можно вывести на дисплей или напечатать. Например, команда PICTURE, 2 означает: считать изображение телекамеры 2, обработать его и запомнить результаты. Команды WHEREIS, WIDGET требуют проанализировать запомненный результат и определить параметры положения объекта, известного системе под именем ’’WIDGET”.
Мощное средство исследования визуальных образов предоставляет команда MEASURE. Вместе с этой командой системе передаются две пары координат, соответствующих двум точкам, лежащим в поле зрения. В результате выполнения команды система возвращает в ЭВМ три числа: длину светлой части отрезка, соединяющего заданные точки, длину его темной части и количество переходов уровня яркости вдоль отрезка. Так как параметры положения объектов определены, координаты нужных то-
Команды визуального процессора и формируемые им данные
Команда
СформированныеКомментарий
данные
PICTURE,!
Считать изображение с камеры 1 и обработать его
SHOWNEXT
Отобразить один объект из числа находящихся в поле зрения
LEARN, WIDGET
Запомнить признаки отображенного объекта и присвоить ему имя WIDGET
WHERI IS, WIDGET
Найти в поле зрения объект, удовлетворяющий описанию WIDGET, и определить его параметры положения
24,82,114,0 Координаты центра плошдди в элементах растра 24, 82, разворот
MEASURE, 22,48, 104, 90
114°, объект не перевернут Провести отрезок от (22, 48) до (104, 90) и вычислить длины его светлых и темных участков и число переходов
31,61,3Длина светлого участка (объект)
составила 31, длина темного участ-
ка (фон) 61. Количество переходов 3
чек вычисляются достаточно просто. С помощью описанной команды можно выполнить измерения любой части объекта, находящегося в произвольном положении.
Использование вычислительных ресурсов упраляющей ЭВМ позволяет проводить детальный анализ визуальной информации. Могут выполняться как простые функции обработки визуальной информации (подсчет количества однотипных объектов), так и довольно сложные (измерение отверстий определенного типа и статистическая обработка полученных результатов).
Программирование устройства SC-1000 выполняется на промышленном диалекте языка БЭЙСИК, несколько расширенном по сравнению со стандартном. Использование БЭЙСИКа позволяет не привязывать систему к одному из многочисленных проблемно-ориентированных языков. Предполагается, что любой инженер, знающий основы программирования, сможет без затруднения пользоваться этим языком. Так как в задачу SC-1000 входит только сбор и передача в линию связи команд системе технического зрения, относительно невысокое быстродействие интерпретатора языка БЭЙСИК ни в коей мере не сужает возможности системы в целом.
Поскольку вместо SC-1000 можно использовать любую другую ЭВМ, для сбора и обработки результатов визуального анализа могут применяться практически все языки программирования. Например, на предприятии, 308
интенсивно использующем аппаратуру фирмы ’’Диджитал Экуипмент”, программисты, привыкшие к ФОРТРАНу, могут воспользоваться этим языком. На работу устройства И-1000 используемый язык программирования влияния не оказывает.
На рис. 2 приведен внешний вид комплекта поставки системы, й который входят устройства И-1000, SC-1000 и телевизионная камера.
Производительность. При разработке устройства И-1000 особое внимание уделялось повышению его быстродействия. Система технического зрения, требующая для обработки изображения более одной секунды, мало пригодна для работы в реальном масштабе времени, поэтому предельным временем обработки несложного изображения было принято 0,5 с. Время, затрачиваемое на визуальный анализ, зависит от сложности изображения: чем сложнее изображение, тем анализ его продолжительней. В устройстве И-1 ООО удалось достигнуть среднего времени обработки изображения от 0,5 до 0,75 с.
Точность системы — не ниже 1% размера поля зрения. Это означает, что объект диаметром 10 см может быть измерен с точностью до 0,1 см. При измерениях повышенной точности можно воспользоваться двумя камерами, каждая из которых может ’’рассматривать” разные части объекта в крупном масштабе. Расстояние между камерами известно, поэтому по полученным от телекамер данным управляющая ЭВМ может вычислить нужные значения с большой точностью.
Разделение функций сбора и обработки визуальной информации дает большие преимущества, проявляющиеся при автономной работе системы технического зрения. При необходимости ее совместной работы с другими системами , в особенности с роботами, эти преимущества многократно возрастают.
На рис. 3 приведена схема системы, в которой одна ЭВМ используется для управления роботами и системой технического зрения. Использование интерфейса по протоколу RS-232 позволяет построить такую систему простым соединением кабелей. Когда требуется узнать параметры положения объекта, подлежащего захвату роботом, устройство управления вы-
Рис. 2. Устройство U-1000 с системным устройством управления SC-1000
Рис. 3. Система технического зренияи робототехническая системы, управ-ляемые одним устройством
дает в процессор обработки визуальной информации команды на считывание изображения и его обработку. Полученные значения по линии связи возвращаются в устройство управления. Преобразование их в систему координат робота сводится к простому масштабированию, выполняемому устройством управления робота. Если устройство уп
равления робота не может выполнять эту операцию, преобразование координат из системы телекамеры в систему робота может выполняться в управляющей ЭВМ.
СИСТЕМА ПОЛУТОНОВОГОТЕХНИЧЕСКОГО ЗРЕНИЯ ФИРМЫ "ВЕСТИНГАУЗ",ПРЕДНАЗНАЧЕННАЯ ДЛЯ УПРАВЛЕНИЯИ КОНТРОЛЯ В РЕАЛЬНОМ МАСШТАБЕ ВРЕМЕНИ
А.Г. Маклин, Г.Е. Тинсдейл, фирма "Вестингауз Электрик" (Westinghouse Electric Corp.} США
Описывается система технического зрения, различающая 64 уровня яркости по шкале серого цвета, предназначенная для управления роботом в реальном маштабе времени и выполнения контроля. Система может обрабатывать до 12 телевизионных кадров в секунду, что на порядок выше быстродействия любой серийно выпускаемой системы полутонового технического зрения. В состав системы входит программируемый аппаратный препроцессор, построенный по принципу конвейерной обработки. Он предназначен для формирования и фильтрации образов, прослеживания границ и сегментирования отдельных силуэтов в образе с последующим определением параметров их положения. Это же устройство преобразует данные визуального анализа для передачи их роботу или во внешнюю систему связи и управления. В статье описывается использование системы для организации визуального управления операций сборки электромеханического реле. Представлены результаты экспериментов.
Введение. Современные системы технического зрения роботов по большей части работают с бинарными образами: сигнал, получаемый с телекамеры, подвергается операции порогового ограничения, формирующей двухградационный образ. В таком образе хорошо освещенному объекту
соответствует силуэт, выделяющийся на однородном фоне. Для решения несложных задач использование бинарных образов оправдано простотой измерений и определения параметров положения объектов. Используемые алгоритмы не перегружают вычислительное устройство. Однако для решения более сложных задач бинарные образы малопригодны в силу нескольких причин. Близко расположенные объекты в бинарном образе могут сливаться. Окрашивание объектов и фона не позволяет выполнить операцию порогового ограничения достаточно успешно. Условия освещения обычно не позволяют четко отделить объект от окружающего его фона.
Вследствие указанных причин весьма желательно использовать информацию о величине яркости изображения, считываемого телекамерой. Возможность работы с многоградационными изображениями наряду с операциями прослеживания границ и выделения ’’пятен” делает возможным анализ сложных сцен при переменных условиях освещения.
Система полутонового технического зрения фирмы ’’Вестингауз” предоставляет возможность обрабатывать полутоновые изображения в реальном масштабе времени.
Аппаратура и ее функционирование. Обычно на выходе телекамеры, используемой в системе управления или контроля, имеется двухмерный массив значений яркости различных элементов изображения. Содержательную информацию (например, геометрические характеристики объектов) приходится получать в результате вычислений, проводимых над элементами массива (при этом учитываются как значения яркости, так и взаимное расположение элементов). После выполнения этих вычислений получение нужной информации по образу существенно упрощается, объем вычислений снижается на порядок или более.
После предварительной обработки образа желательно иметь набор его элементарных составляющих, каждая из которых представлена совокупностью дескрипторов и параметрами положения в исходном образе. Такие составляющие должны легко выделяться из образа, обладать помехоустойчивостью и небольшим диапазоном изменения значений. Более того, их использование должно упрощать решение прикладных задач. Элементарные составляющие или примитивы представляют собой структурные единицы информации, извлеченной из начального образа. Все последующие операции должны выполняться над примитивами. Описываемые в настоящей статье операции работают с геометрическими примитивами только двух типов. Первый из них называется ’’граница” и представляет собой замкнутую ломаную, соответствующую заранее заданному значению градиента яркости. Границы задаются совокупностью точек излома и ориентацией (расположением темной и светлой сторон относительно линии границы). Второй тип примитивов называется ’’пятно” и соответствует небольшому участку образа, который светлее или темнее окружающего его фона. Пятна задаются параметрами положения, высотой и шириной, а также относительной яркостью по отношению к окружающему пятно фону.
Поскольку выделение примитивов необходимо для решения многих задач и позволяет уменьшить объем хранимой информации, целесообраз- 311
Постпроцессор обработки образов на базе микропроцессора ИНТЕЛ 8086 Рис. 2. Блок-схема полутоновой системы технического зрения фирмы "Вестингауз"Постпроцессор обработки образов на базе микропроцессора ИНТЕЛ 8086 Рис. 2. Блок-схема полутоновой системы технического зрения фирмы "Вестингауз"
Постпроцессор обработки образов на базе микропроцессора ИНТЕЛ 8086 Рис. 2. Блок-схема полутоновой системы технического зрения фирмы "Вестингауз"
Постпроцессор обработки образов на базе микропроцессора ИНТЕЛ 8086 Рис. 2. Блок-схема полутоновой системы технического зрения фирмы "Вестингауз"
Рис. 1. Общий вид полутоновой сис-темы технического зрения
но разработать специальное устройство, в котором эта функция выполнялась бы аппаратно. При решении многих задач предварительное сжатие визуальной информации с помощью специального препроцессора позволяет выполнять последующую обработку на универсальном программируемом процессоре. В состав системы технического зрения фирмы’’Вестингауз” (рис. 1) входит препроцессор обработки изображений и программируемый постпроцессор обработки изображений. В препроцессоре, в архитектуре которого используется принцип конвейерной обработки, последовательности операций выполняются над 4-5 соседними элементами изобра
жений. Для того чтобы обработка образа могла выполняться по обеим осям, строки изображения хранятся в сдвигающих регистрах. Выполняемые операции включают вычисление градиента яркости, фильтрацию значений градиента и прослеживание значений градиента по всем элементам с выделением границ и пятен. На рис. 2 представлена подробная блок-схема системы обработки полутоновых изображений. Слева показаны внешние устройства системы: телекамера, дисплей, робот. После синхронизации и аналого-цифрового преобразования входного видеосигнала он записывается в буферное запоминающее устройство кадра, из которого строка за строкой считывается препроцессором обработки изображений. Препроцессор обработки изображений считывает входной сигнал, соответствующий телевизионному стандарту А5-170.
Настройка препроцессора обработки изображений выполняется программно и индивидуально для каждого кадра. Возможно использование одного из нескольких вариантов обработки группы смежных элементов изображения: усреднение, фильтрация по медиане, разделение по уровню и сжатию по значению. Разделение по уровню позволяет одновременно выделять освещенные и затемненные области. Для этого используется динамическое задание уровня порогового ограничения. Сжатие по значе
нию предоставляет возможность снизить интенсивность потока визуальной информации, обрабатывая не все, а только некоторые элементы изображения.
После обработки совокупностей элементов изображения определяются амплитуда и направление градиента на двухмерном массиве элементов. Если перед этой операцией выполнялась усредняющая фильтрация, результат получается сглаженным, но менее точным. При определении градиента визуальная информация подвергается дифференцированию. Все элементы, значения градиентов в которых превышают адаптивно выбираемое значение порогового ограничения по амплитуде, обрабатываются функцией максимизации.
Детектор пятен определяет появление вершин потенциальных пятен. После того, как вершина обнаружена, построчно прослеживаются правая и левая ветви контура пятна. Определяется вертикальная ось пятна и отклонения от нее обеих ветвей контура. Когда левая и правая ветви контура смыкаются, фиксируется факт обнаружения пятна.
Далее визуальная информация вновь дифференцируется. В результате дифференцирования значений градиента обрабатываемое изображение преобразуется в штриховое, в котором присутствуют только тонкие линии, соответствующие контурам объектов и их внутренних особенностей. При дифференцировании сравниваются значения градиентов в элементах изображения, соседних как по оси х, так и по оси у. В ходе этой операции увеличивается ’’острота” выделенных ранее границ.
Прослеживатель сегментов объединяет элементы с совпадающими признаками, определяя точки излома и градиентные направления выделенных в изображении границ. Операция выполняется для линий контуров и отделяет объекты от фона.
Формирователь групп объединяет все данные, касающиеся каждого из объектов, тем самым уменьшая нагрузку на вычислительное устройство постпроцессора. Одновременно с выполнением группировки формируются дескрипторы границ и пятен. С выхода формирователя групп информации поступает в постпроцессор. Эта информация представляет собой группы описаний объектов и границ, отделяющих их от фона.
Операции, выполняющиеся в постпроцессоре, выбираются программно. В их состав могут входить: вычисления, выполняемые при смене кадра; вычисления значений признаков; принятие решений на основе статистической информации; сравнение значений признаков при распознавании объектов; анализ сцен; определение приоритетов объектов; формирование выходной информации; процедуры управления работой системы в целом.
На рис. 3 показаны результаты выполнения операций препроцессора. Сверху показано исходное изображение, состоящее из 50 X 50 элементов, задающих значения яркости. Для простоты использованы только 16 градаций яркости. Элементы, в которых значения яркости превышает 9, помечены при выводе надпечатыванием символа ”/”. Направления градиента также приведены к 16 различным значениям, причем значение 1 соответствует переходу от светлового элемента к элементу с яркостью, превышающей уровень порогового отсечения (уровень чувствительности системы). Элементы, в которых направления градиента имеют значение 1,
помечены точками. Результат выполнения операции преобразования изображения в штриховое представление приведен слева. По нему видно, что некоторые из показанных на предыдущей распечатке элементов удалены. К ним относятся элементы, соседствующие с элементами, градиент в которых имеет то же направление, но болыпую амплитуду. Участие таких элементов в формировании границы не требуется. Границы выделяются прослеживанием по штриховому представлению образа с записью начальной точки и точек излома. Изображение границ приведено на рис. 3 снизу. Справа показаны значения накопленных углов направлений градиента, вычисляемых при прослеживании пятна. На графическом
Уровни яркости
Рис. 3. Этапы обработки образа препроцессором
изображении (внизу) оси обнаруженного пятна показаны в виде креста. По размаху этих осей определяются ширина и высота пятна.
Программное обеспечение СТЗ. Большая часть программного обеспечения системы написана на языке программирования ПЛ/М с использованием концепций структурного программирования. Программы построены по возможности системно-независимо, за исключением модулей обмена с диском и терминалом, в качестве которых использованы подпрограммы операционной системы. Основные подпрограммы взаимодействия препроцессора и постпроцессора обработки изображений написаны на языке ассемблера ИНТЕЛ. Структура программного обеспечения показана на рис. 4. Программы разрабатывались на универсальной ЭВМ, построенной на базе микропроцессора ИНТЕЛ 8086, с операционной системой RMX-86 с гибким диском в качестве системного устройства.
Интерпретатор командных строк (VISCS1). Этот модуль организует взаимодействие с оператором и управляет работой других модулей. Интерпретатор командных строк вызывает программы ядра системы (SYSNUC), управляющего взаимодействием с препроцессором обработки изображений.
Ядро системы (SYSNUC). Программы ядра системы передают в препроцессор обработки изображений следующие команды.
Считать изображение с телекамеры и записать предварительно обработанное изображение в буферную память.
Считать изображение и скопировать буфер в память постпроцессора.
Рис. 4. Структурная схема программного обеспечения системы технического зрения
Скопировать буфер в память постпроцессора.
Считать изображение, скопировать буфер в память постпроцессора и вычислить значения основных признаков.
Вычислить значения основных признаков по заданному буферу.
То же, что и 4, но с определением главного объекта.
Модуль выбора признаков (VISFEA). С помощью этого модуля оператор выбирает из библиотеки программ модули, с помощью которых выполняются вычисления значений признаков объектов. Этот модуль также распределяет рабочую память для хранения вычисленных значений признаков.
Модуль обучения, распознаванию объектов (VISREC). Этот модуль вызывается при создании набора статистической информации о значениях конкретных признаков. Один и тот же объект предъявляется системе несколько раз с накапливанием вычисленных значений признаков и их статистической обработкой. При распознавании объектов соответствующие им значения признаков сравниваются с теми, которые записаны в статистическом наборе. На дисплей выдается сообщение о том, распознан объект или нет.
Модуль обучения действиям по производственной обработке объекта (VISTRA). С помощью этого модуля пользователь составляет программу обработки распознанного объекта робототехнической системой. Он функционирует в режиме обучения и вызывает как подпрограммы системы технического зрения, так и подпрограммы, непосредственно управляющие работой внешний устройств. Этот модуль отличается от модуля обработки только тем, что выполняет моделирование обмена данными с роботом на экране дисплея. Модуль разрабатывается программистом, ответственным за программное обеспечение прикладной задачи.
Модуль производственной обработки объекта (VISPRO). Этот модуль, так же как предыдущий и последующий, разрабатывается программистом-прикладником. Эти три модуля составляют часть программного обеспечения, зависимую от решаемой прикладной задачи. С их помощью система технического зрения приспосабливается для решения различных задач. Модуль обработки получает команды через интерфейс системы технического зрения и робота ROBVIS.
Утилиты пользователя (APPUTL). В этот программный модуль выделены общие подпрограммы модулей обучения распознавания объектов и их обработки.
Интерфейс системы технического зрения и робота (ROBVIS). Передача управления этому модулю переводит систему технического зрения в режим ожидания команды от устройства управления роботом. По получении такой команды она расшифровывается и передается в модуль обработки для выполнения и подготовки ответа. Модуль ROBVIS имеет доступ ко всем подпрограммам модуля обработки, ядра системы и утилитам системы. В случае возникновения ошибки, обнаруженной СТЗ, которая не может быть соответствующим образом обработана, управление пе-
Рис. 5. Сборка электромеханичес-кого реле, управляемая системойтехнического зрения
редается интерпретатору командных строк. Частным случаем такой ’’ошибки” может быть специальный код, передаваемый управляющим устройством робота в систему технического зрения для перевода ее в автономный режим. Для каждой робототехнической системы модуль ROBVIS составляется заново.
Утилиты системы (SYSUTL). Этот программный модуль состоит из подпрограмм, используемых в режимах обучения и работы практически всеми модулями СТЗ системы технического зрения.
Выполнение сборочной операции под управлением СТЗ. На рис. 5 показан внешний вид устройства, выполняющего сборку электромеханического реле под управлением СТЗ. Для сборки реле из четырех деталей используется промышленный робот ПУМА 250. Первоначально все четыре детали находятся в поле зрения телекамеры системы, не касаясь друг друга. Связь робота и системы выполняется по последовательной линии передачи RS-232. На рис. 6 представлены сборочная программа робота ПУМА и протокол связи робота и системы технического зрения. Сборочная программа ASSEMBLY написана на языке программирования роботов ВАЛ. Устройство управления робота соединено с постпроцессором обработки изображений через порт подключения дисплея, так что команды на языке ВАЛ поступают в постпроцессор так же, как если бы они были набраны оператором на клавиатуре дисплея.
Вначале система технического зрения выдает в устройство управления робота команду на выполнение программы сборки (EXECUTE ASSEMBLY). Выполнение этой программы приостанавливается на шаге 2. В этот момент устройство управления робота просит задать параметры точки А (некоторое произвольное положение детали в поле зрения) . СТЗ анализирует образ рабочей зоны и определяет точные параметры положения детали (X, Y, Z) и (О, А, Т). После определения значений параметров положения они посылаются в устройство управления робота. Манипулятор робота перемещается в указанную точку, захватывает деталь и переносит ее в заранее определенную позицию сборки В. Управление передается на шаг2 программы сборки и ее выполнение продолжается со следующей деталью.
Последовательная линия связиПоследовательная линия связиУстройство управления робота фирмы „ Юнимейшн"Устройство управления робота фирмы „ Юнимейшн"Система полутонового технического зрения фирмы „Вестингауз"Система полутонового технического зрения фирмы „Вестингауз"Рис. 6. Протокол связи робота с системой технического зрения и сборочная программа робота ПУМАРис. 6. Протокол связи робота с системой технического зрения и сборочная программа робота ПУМА
Последовательная линия связи
Последовательная линия связи
Устройство управления робота фирмы „ Юнимейшн"
Устройство управления робота фирмы „ Юнимейшн"
Система полутонового технического зрения фирмы „Вестингауз"
Система полутонового технического зрения фирмы „Вестингауз"
Рис. 6. Протокол связи робота с системой технического зрения и сборочная программа робота ПУМА
Рис. 6. Протокол связи робота с системой технического зрения и сборочная программа робота ПУМА
Использование полутоновой СТЗ фирмы ’’Вестингауз” позволяет выполнять сборочные операции при слабом освещении. Ее можно использовать также в тех случаях, когда необходимо выполнять технический контроль деталей сложной конфигурации в реальном масштабе времени при слабом освещении.
СПИСОК ЛИТЕРА ТУРЫ
[1 ]' Prali. W. K.. Digital Image Processing. John Wiley (1978).Rosenfeld, A., Kak, A C , Digital Picture Processing, Academic Press (1976).Makhlin. A. G.. 'Westinghouse Visual Inspection and Industrial Robot Control System’, Free. 1st Ini. Conf on Robot Vision and Sensory Controls. Stratford-upon-Avon, UK, IES (Publications)[1 ]' Prali. W. K.. Digital Image Processing. John Wiley (1978).Rosenfeld, A., Kak, A C , Digital Picture Processing, Academic Press (1976).Makhlin. A. G.. 'Westinghouse Visual Inspection and Industrial Robot Control System’, Free. 1st Ini. Conf on Robot Vision and Sensory Controls. Stratford-upon-Avon, UK, IES (Publications)[4][4][5][5][6][6][7][7][8][8](April 1981).Tisdale. G. Е.. ‘A Digital Image Processor for Automatic Target Cueing, Navigation, and Change Detection,'SPIE. vol. 101. Airborne Reconnaissance - Tactical/Real Time (1977).Helland. A. R.. Tisdale, G E., ‘The AUTO-Q Digital Image Processor for Autoprocessing of Reconnaissance Images', Proc. NA ECON ’80.(1980).Tisdale. G. E.. ‘Automatic Registration of Points in Two Separate Images', US Patent No. 3,748.644,July 24. 1973.Tisdale. G. E., 'Preprocessing Method and Apparatus for Pattern recognition’. US Patent No.3,636,513. January 18,1972.Pincoffs, P. H., ez. al. 'Classification Method and Apparatus for Pattern Recognition’, US patent No.3.638,188. January25, 1972.(April 1981).Tisdale. G. Е.. ‘A Digital Image Processor for Automatic Target Cueing, Navigation, and Change Detection,'SPIE. vol. 101. Airborne Reconnaissance - Tactical/Real Time (1977).Helland. A. R.. Tisdale, G E., ‘The AUTO-Q Digital Image Processor for Autoprocessing of Reconnaissance Images', Proc. NA ECON ’80.(1980).Tisdale. G. E.. ‘Automatic Registration of Points in Two Separate Images', US Patent No. 3,748.644,July 24. 1973.Tisdale. G. E., 'Preprocessing Method and Apparatus for Pattern recognition’. US Patent No.3,636,513. January 18,1972.Pincoffs, P. H., ez. al. 'Classification Method and Apparatus for Pattern Recognition’, US patent No.3.638,188. January25, 1972.
[1 ]' Prali. W. K.. Digital Image Processing. John Wiley (1978).
Rosenfeld, A., Kak, A C , Digital Picture Processing, Academic Press (1976).
Makhlin. A. G.. 'Westinghouse Visual Inspection and Industrial Robot Control System’, Free. 1st Ini. Conf on Robot Vision and Sensory Controls. Stratford-upon-Avon, UK, IES (Publications)
[1 ]' Prali. W. K.. Digital Image Processing. John Wiley (1978).
Rosenfeld, A., Kak, A C , Digital Picture Processing, Academic Press (1976).
Makhlin. A. G.. 'Westinghouse Visual Inspection and Industrial Robot Control System’, Free. 1st Ini. Conf on Robot Vision and Sensory Controls. Stratford-upon-Avon, UK, IES (Publications)
[4]
[4]
[5]
[5]
[6]
[6]
[7]
[7]
[8]
[8]
(April 1981).
Tisdale. G. Е.. ‘A Digital Image Processor for Automatic Target Cueing, Navigation, and Change Detection,'SPIE. vol. 101. Airborne Reconnaissance - Tactical/Real Time (1977).
Helland. A. R.. Tisdale, G E., ‘The AUTO-Q Digital Image Processor for Autoprocessing of Reconnaissance Images', Proc. NA ECON ’80.(1980).
Tisdale. G. E.. ‘Automatic Registration of Points in Two Separate Images', US Patent No. 3,748.644,July 24. 1973.
Tisdale. G. E., 'Preprocessing Method and Apparatus for Pattern recognition’. US Patent No.
3,636,513. January 18,1972.
Pincoffs, P. H., ez. al. 'Classification Method and Apparatus for Pattern Recognition’, US patent No.
3.638,188. January25, 1972.
(April 1981).
Tisdale. G. Е.. ‘A Digital Image Processor for Automatic Target Cueing, Navigation, and Change Detection,'SPIE. vol. 101. Airborne Reconnaissance - Tactical/Real Time (1977).
Helland. A. R.. Tisdale, G E., ‘The AUTO-Q Digital Image Processor for Autoprocessing of Reconnaissance Images', Proc. NA ECON ’80.(1980).
Tisdale. G. E.. ‘Automatic Registration of Points in Two Separate Images', US Patent No. 3,748.644,July 24. 1973.
Tisdale. G. E., 'Preprocessing Method and Apparatus for Pattern recognition’. US Patent No.
3,636,513. January 18,1972.
Pincoffs, P. H., ez. al. 'Classification Method and Apparatus for Pattern Recognition’, US patent No.
3.638,188. January25, 1972.
СПИСОК ДОПОЛНИТЕЛЬНОЙ ЛИТЕРА ТУРЫ
Анисимов Б. В., Курганов В.Д., Злобин В.К. Распознавание и цифровая обработка изображений. М., Высшая школа; 1983, 295 с.
Горелик А.Л., Скрипкин В.А. Методы распознавания. М., Высшая школа, 1984, 208 с.
Данилов А.А. Сенсорные устройства автоматов контроля и сборки. Л., Машиностроение, 1984, 260 с.
Дуда Р., Харт П. Распознавание образов и анализ сцен. М„ Мир, 1976, 511 с.
Катыс Г.П. Оптические информационные системы роботов-манипуляторов. М., Машиностроение, 1977, 272 с.
Катыс Г.П. Визуальная информация и зрение роботов. М., Энергия, 1979, 176 с.
Катыс Г.П. Восприятие и анализ оптической информации автоматической сис- томой. М., Машиностроение, 1986, 415 с.
Куафе Ф. Взаимодействие робота с внешней средой. М., Мир, 260 с.
Патрик Э. Основы теории распознавания образов. Пер. с англ. М., Сов. Радио, 1980, 408 с.
Ульман Ill. Принципы идентификации подвижных объектов. Пер. с англ. М., Радио и связь, 1983, 167 с.
Фу К. Структурные методы распознавания образов. Пер. с англ. М., Мир, 1977, 319 с.
ПРОИЗВОДСТВЕННОЕ ИЗДАНИЕ
ТЕХНИЧЕСКОЕ ЗРЕНИЕ РОБОТОВпод редакцией Алана Пью
Редактор А.С. Игнатьев
Художественный редактор СН. ГолубевОбложка художника В. С. ГолубеваТехническая редактор Н.В. Павлова
Корректор Л.В. ТарасоваИБ№5003
Сдано в набор 16.04.86.Подписано в печать 10.09.87.
Формат 60Х 88 1/16.Бумага офсетная №2.Гарнитура Пресс Роман.
Печать офсетная.Усл.печ.л. 19,60.Усл.-кр.-отт.19,60. Уч.-издл. 23,7.
Тираж 15 000 экз.Заказ 1756.Цена 1 р.90 к.
Ордена Трудового Красного Знамени издательство ’’Машиностроение”,107076, Москва, Стромынский пер., 4
Отпечатано в Московской типографии № 8 Союзполиграфпромапри Государственном комитете СССР по делам издательств,полиграфии и книжной торговли
101898, Москва, Хохловский пер., 7, с оригинала-макета,изготовленного в издательстве ’’Машиностроение”на наборно-пишущих машинах
International Trends in Manufacturing TechnologyInternational Trends in Manufacturing TechnologyROBOT VISIONROBOT VISIONEdited by Professor Alan Pugh, University of Hull, UKEdited by Professor Alan Pugh, University of Hull, UKIPS (Publications) Ltd., U.K.Springer-Verlag, Berlin, Heidelberg, New V orkIPS (Publications) Ltd., U.K.Springer-Verlag, Berlin, Heidelberg, New V orkПод редакциейпроф. А. Пью •Перевод с английского Д. Ф. Миронова.Под редакциейд-ра техн, наукпроф. Г. П. КатысаПод редакциейпроф. А. Пью •Перевод с английского Д. Ф. Миронова.Под редакциейд-ра техн, наукпроф. Г. П. КатысаМосква« Машиностроение»Москва« Машиностроение»
International Trends in Manufacturing Technology
International Trends in Manufacturing Technology
ROBOT VISION
ROBOT VISION
Edited by Professor Alan Pugh, University of Hull, UK
Edited by Professor Alan Pugh, University of Hull, UK
IPS (Publications) Ltd., U.K.
Springer-Verlag, Berlin, Heidelberg, New V ork
IPS (Publications) Ltd., U.K.
Springer-Verlag, Berlin, Heidelberg, New V ork
Под редакциейпроф. А. Пью •
Перевод с английского Д. Ф. Миронова
.Под редакцией
д-ра техн, наукпроф. Г. П. Катыса
Под редакциейпроф. А. Пью •
Перевод с английского Д. Ф. Миронова
.Под редакцией
д-ра техн, наукпроф. Г. П. Катыса
Москва
« Машиностроение»
Москва
« Машиностроение»
’ ТехническоезрениеРОБОТОВ
TS8TS8ТТ2404000000-168038 (01)-872404000000-168038 (01)-87-168-87-168-87ББК 32.965 6Ф6.5ББК 32.965 6Ф6.5
TS8
TS8
Т
Т
2404000000-168
038 (01)-87
2404000000-168
038 (01)-87
-168-87
-168-87
ББК 32.965 6Ф6.5
ББК 32.965 6Ф6.5
^bErK-STSto— T38
УДК 621.856.8
Техническое зрение роботов/ Под ред. А. Пью; Пер. с англ.
138 Д.Ф. Миронова; Под ред. ГЛ. Катыса. - М.: Машиностроение, 1987. - 320 с.: ил.
(В пер.): 1 р. 90 к.
Книга под редакцией английского профессора А. Пью открывает новую серию издательства ”ИФС пабликейшнз”, Великобритания, по наиболее актуальным вопросам современной технологии. Описана обработка изображений в робототехнических системах. В качестве примеров рассмотрены визуально управляемые сварочные и простейшие сборочные процессы. Информационный характер носят статьи по сортировке отливок, управлению роботом-маляром и др. Книга дает представление о последних достижениях визуальной адаптации промышленных роботов, что создает успешные предпосылки для создания гибких производственных комплексов.
Для инженеров-технологов и специалистов, занятых автоматизацией технологических процессов в различных отраслях народного хозяйства.
©1983 IPS (Publications) Ltd, U. К. and Springer - Verlag, Berlin, Heidelberg, New - York
© Перевод на русский язык, ’’Машиностроение”, предисловие редактора перевода и список дополнительной литературы, 1987