Скачать .docx |
Дипломная работа: Сенсоры для навигации мобильного робота
РЕФЕРАТ
Мета роботи – розробити систему сенсорів для навігації інтелектуальним мобільним роботом.
Об’єкт роботи – інтелектуальний мобільний робот.
У першому розділі кваліфікаційної роботи бакалавра, розглянуто існуючі типи навігаційних систем мобільних роботів.
В другому розділі – розроблена система навігації для мобільного робота, що складається з моделі зовнішнього середовища, інформація про яке, сприймається сенсорною підсистемою та передається в систему штучного інтелекту робота. На підставі цієї інформації, формується план середовища, за яким визначається оптимальний шлях досягнення мети. Контурний регулятор, на підставі шуканої траєкторії руху та інформації від внутрішніх датчиків, обирає керуючі впливи із урахуванням динамічної та кінематичної складових мобільного робота.
Також реалізовано програмну систему навігації мобільного робота у середовищі Visual C++. Подана програмна модель дозволяє моделювати та вивчати функціонування дворівневої системи керування у складному динамічному середовищі, що змінюється.
Система, навігація, середовище, сприйняття, пошук, об’єкт, сенсор, кутомір, далекомір, надходження, імпульс, сегментація, ахроматичне зображення, апертура, растр, градієнт яскравості, база даних
ABSTRACT
The explanatory slip to degree work in volume 41 of sheets contains 11 figures and 24 of the references.
The work purpose is develop a sensory system for navigation by the intellectual mobile robot.
work plant is intellectual mobile robot.
In the first section of bachelor qualifying work, the existing type’s navigational systems of mobile robots are considered.
In the second section – the navigation system for the mobile robot consist an exterior medium model is developed the information about which, is perceived by sensory subsystem and transmitted in an artificial intelligence system of the robot. To basis on this information, the medium plan is formed, on which the optimum reaching path of the purpose is determined. The contour governor because of found driving trajectory and information from interior transmitters makes control actions in view of dynamic and kinematical the mobile robot component.
The program system navigation of the mobile robot in a medium Visual C++ also is realized. The given program model allows to simulate and study operation of a two-level control system in a complicated dynamically varying medium.
System, navigation, medium, perception, searching, plant, sensor, angle finder, range finder, inflow, impulse, segmentation, achromatic image, aperture, raster, gradient of brightness, data base
Список условных обозначений
ГВК – генератор высокочастотных колебаний
ГМС – генератором моделирующего сигнала
ГО – генератор оптического излучения
ИИ – искусственный интеллект
ИМР – интеллектуальный мобильный робот
ЛГ – лазерный генератор
ОД – оптический дискриминатор
ОЛ – оптический луч
ОП – приемник оптического сигнала
ППФ – правильно построенные формулы
СТЗ – системы технического зрения
СФ – сглаживающие фильтры
ТВК – телевизионная камера
ТВП – телевизионный приемник с разверткой изображения
УФ – усилители-формирователи импульсов
GPS – General Problem Solver
STRIPS – Stanford Research Institute Problem Solver
Содержание
Введение
1. Классификация навигационных систем
1.1 Системы измерения угловых координат
1.1.1 Телевизионная угломерная система
1.1.2 Оптическая угломерная система со сканированием луча
1.1.3 Индукционная угломерная система
1.1.4 Радиационная угломерная система
1.2 Системы измерения дальности и скорости
1.2.1 Акустическая дальномерная система
1.2.2 Лазерная дальномерная система
1.2.3 Радиационная дальномерная система
1.3 Системы поиска и обнаружения
1.3.1 Оптическая система поиска по угловым координатам
1.3.2 Акустическая система поиска по дальности
2. Разработка системы навигации мобильного робота
2.1 Системы планирования и их задания
2.2 Общие аспекты построения системы планирования
2.3 Реализация систем планирования
2.4 Сегментация изображений для ИМР
2.5 Пороговое ограничение
2.6 Центроидное связывание
2.7 Реализация программы системы навигации ИМР в Visual C++
Выводы
Перечень литературы
Введение
Роботы – автоматические системы, предназначенные для воспроизведения двигательных и интеллектуальных функций человека. От традиционных автоматов отличаются большей универсальностью и способностью адаптации на выполнение различных задач, в том числе в изменяющейся обстановке. Уже в настоящее время роботы имеют весьма широкую область применения. Они заменяют человека в условиях, опасных для его здоровья, при выполнении монотонных, утомительных работ, выступают в качестве игровых партнеров.
Важнейшей составной частью роботов второго и третьего поколений является система очувствления, в задачу которой входит восприятие информации о состоянии внешней среды и ее обработка. Эти действия сводятся к обнаружению объектов, определению их местоположения, расположения препятствий, распознаванию, оценке параметров, свойств объектов и среды.
Разработка интеллектуальных мобильных роботов (ИМР) для различных производственных и исследовательских целей является весьма важной и актуальной задачей. Одной из центральных проблем, возникающих при ее решении, является проблема построения управляющих систем, реализующих целенаправленное поведение ИМР в сложной априори неформализованной естественной среде. Отсутствие в настоящее время общей теории синтеза таких систем стимулирует разработку специальных инструментальных средств ориентированных на их экспериментальное исследование.
Цель работы – разработать систему сенсоров для навигации интеллектуальным мобильным роботом.
Объект работы – интеллектуальный мобильный робот.
1. Классификация навигационных систем
К навигационным системам относятся технические средства, предназначенные для автоматического дистанционного измерения координат объектов манипулирования. Специфические требования к моделям навигационных систем вытекают из их принципов действия и особенностей функционирования.
По принципу действия навигационные системы роботов не отличаются от соответствующих измерительных систем, используемых в радио-, звуко- и гидронавигации, при физических измерениях и других исследованиях. Особенность заключается в том, что в робототехнике применяется почти весь арсенал средств из перечисленных областей, что приводит к более сложной процедуре классификации.
Навигационные системы роботов подразделяются на:
а) системы измерения угловых координат;
б) системы измерения дальности и скорости;
в) системы поиска и обнаружения.
Эти навигационные системы в свою очередь подразделяются на свои подсистемы различные по принципу действия и устройству.
1.1 Системы измерения угловых координат
1.1.1 Телевизионная угломерная система
Данная система предназначена для автоматического измерения угловых координат объекта в двух плоскостях: горизонтальной β и вертикальной ε. В состав системы (рис. 1.1) входят: телевизионная камера ТВК, имеющая в своем составе фокусирующую оптику, видикон или твердотельные оптические элементы; телевизионный приемник с разверткой изображения ТВП; монитор М для демонстрации изображения; оптический дискриминатор ОД; усилительные и фильтрующие элементы УФ; схема задержки СЗ; генератор стробов ГС; преобразователь времени задержки в напряжение П; приводы поворота ТВК по координатам β и ε.
Рисунок 1.1 – Телевизионная угломерная система
Система работает по замкнутому циклу и имеет два контура управления — внешний, замыкающийся через приводы поворота ТВК, и внутренний, замыкающийся через генератор стробов. Работа системы основана на так называемом принципе «следящего окна».
Перемещение изображения объекта в системе координат (β, ε) должно отслеживаться стробами, образующими «окно». Принцип слежения осуществляется следующим образом. Сигналы изображения объекта и сигналы стробов подаются на оптический дискриминатор ОД, где вырабатываются четыре напряжения, пропорциональные площади изображения участков объекта в каждом из стробов. Обозначим эти напряжения буквами соответственно для стробов 1, 2, 3, 4 «следящего окна». Из этих напряжений формируются два сигнала рассогласования:
;
. (1.1)
Описанная система является дискретной, поскольку информация об угловом рассогласовании с ОД поступает с частотой следования кадров телевизионной развертки, а затем сглаживается и преобразуется в непрерывный сигнал при последующей фильтрации. По составу элементов – это система электромеханическая, поскольку исполнительными элементами поворотных приводов служат электродвигатели постоянного, переменного тока или шаговые. В последнем случае в преобразователе П выходным сигналом должен быть цифровой код.
1.1.2 Оптическая угломерная система со сканированием луча
Использование оптических сигналов в навигационных системах роботов весьма распространено. Чаще всего применяют инфракрасные и лазерные системы, у которых удается сформировать узкие лучи света и тем самым обеспечить высокую пространственную разрешающую способность и большую плотность потока мощности.
Функциональная схема системы изображена на рис. 1.2, на котором ГО – генератор оптического излучения с фокусирующей системой, СЗ – сканирующее зеркало, СП – световое пятно на поверхности объекта, ОП – приемник оптического сигнала, ИС – измерительная часть системы.
Генератор излучения, работающий в непрерывном режиме, с помощью фокусирующей оптической системы формирует узкий луч света, падающий на зеркало СЗ. Механизм поворота зеркала обеспечивает сканирование луча в секторе θ с периодом так, что ось луча движется вдоль прямой линии на поверхности объекта. На своем пути световое пятно пересекает область стыка двух свариваемых листов. Отражательные способности поверхности и стыка листов различны. Середина импульса отраженного сигнала соответствует центру стыкуемых листов, поэтому интервал времени τ от начала отсчета до точки положения минимума амплитуды импульса будет характеризовать угловое отклонение β линии стыка от оси навигационной системы. Нетрудно получить формулу связи между τ и β в виде .
Рисунок 1.2 – Оптическая угломерная система со сканированием луча
Оптическая угломерная система со сканированием луча относится к классу дискретных систем, поскольку информация об угловом положении оси стыка поступает с периодом и работает по разомкнутому циклу.
1.1.3 Индукционная угломерная система
В системах такого типа используется принцип электромагнитной индукции, взаимодействия между генерируемыми и наводимыми магнитными полями. На этом принципе, в частности, основаны навигационные системы, предназначенные для управления подвижными роботами, перемещающимися вдоль уложенных на поверхности (или под ней) металлических шин.
Генератор высокочастотных колебаний ГВК и индукционная катушка ИК создают в пространстве высокочастотное магнитное поле. В уложенной на поверхности металлической шине Ш индуктируется наведенное магнитное поле, под действием которого в катушках К1 и К2 генерируются переменные напряжения. Обмотки катушек включены последовательно и встречно, поэтому выходное переменное напряжение равно разности напряжений, наводимых в катушках. Если шина расположена симметрично относительно катушек, то суммарное напряжение будет равно нулю. Если шина окажется расположенной несимметрично, т.е. появится угловое отклонение β центра катушек от оси шины, то возникает разность напряжений . При изменении знака β будет меняться фаза этого напряжения. В приемнике Пр напряжение усиливается, фильтруется и подается на фазочувствительный выпрямитель ФЧВ, постоянно выходное напряжение U которого пропорционально амплитуде разностного переменного напряжения, а знак определяется фазой этого напряжения.
Исходя из описанного принципа действия, индукционная система относится к классу систем непрерывных, работающих по разомкнутому циклу, а по составу элементов – к электромагнитным.
1.1.4 Радиационная угломерная система
Для измерения координат объектов в условиях запыленности, отсутствия освещения, в специальных средах могут применяться источники радиоактивного излучения, располагаемые на объекте. В этом случае измеритель работает в пассивном режиме, используя поток радиоактивных частиц в качестве источника информации. Наличие потока частиц делает такие системы дискретными, а случайные моменты излучения – дискретными со случайным периодом следования импульсов. В основе построения радиационных систем лежит принцип измерения интенсивности излучения в точке приема, т.е. оценки средней частоты появления импульсных сигналов.
Рисунок 1.3 – Радиационная угломерная система
Радиационная угломерная система имеет два канала измерения (рис. 1.3), включающих коллиматоры излучения и детекторы КД, усилители-формирователи импульсов УФ, сглаживающие фильтры СФ и схему вычитания сигналов СВ. Напряжение с СВ подается на двигатель Д , поворачивающий платформу П с коллиматорами в направлении на источник излучения U так, чтобы он находился на оси коллиматоров. Система работает по принципу измерения рассогласования θ между направлением на источник β и угловым положением платформы у. Для получения напряжения, пропорционального рассогласованию, коллиматор выполнен в виде цилиндра из материала, поглощающего излучение. В качестве детектора обычно используют комбинацию из сцинтиллирующего кристалла и фотоумножителя, ионизационные камеры или полупроводниковые структуры. При различных углах θ положения источника И , относительно, оси коллиматора интенсивность ν зарегистрированного излучения будет различной. Зависимость интенсивности от θ называется диаграммой направленности коллиматора.
1.2 Системы измерения дальности и скорости
1.2.1 Акустическая дальномерная система
Импульсные ультразвуковые дальномеры нашли широкое применение на практике, в том числе при очувствлении роботов. Измерение дальности в ней основано на оценке времени запаздывания отраженного сигнала относительно момента его излучения. Дальность определяется по формуле: , где – скорость распространения ультразвуковых колебаний, зависящих от своей среды; τ – время запаздывания отраженного сигнала.
Импульсы имеют длительность и излучаются передатчиком периодически через интервал . На рис. 1.4 изображена функциональная схема дальномерной системы, в которой Пд – передатчик, Пр – приемное устройство, ВД – временной дискриминатор, УФ – усилительные и фильтрующие элементы, СС – схема сравнения, ГС – генератор стробов, ГПН – генератор пилообразного напряжения.
Отраженный от объекта О сигнал принимается, усиливается, детектируется в приемном устройстве и в форме видеоимпульса подается на временной дискриминатор. Этот импульс задержан относительно начала отсчета, совпадающего с моментом излучения, на время τ. В то же время на выходе системы существует напряжение U , пропорциональное уже измеренному на предыдущих периодах излучения значению дальности r, которое поступает на схему сравнения. На второй вход схемы подается сигнал с ГПН, который запускается импульсами передатчика в момент их излучения. ГПН вырабатывает линейно возрастающее напряжение до момента излучения следующего импульса, а затем процесс периодически повторяется.
Рис 1.4 – Акустическая дальномерная система
Система измерения дальности работает по замкнутому циклу и относится к системам дискретного действия потому, что носителями полезной информации о дальности до объекта в ней являются импульсные сигналы.
1.2.2 Лазерная дальномерная система
Использование лазерного излучения особенно перспективно в системах измерения дальности до элементов поверхности протяженных объектов, поскольку высококогерентное оптическое излучение позволяет формировать узкие световые пучки. Благодаря этому световое пятно на поверхности объекта оказывается небольшим и удается обеспечить высокое разрешение элементов поверхности.
На рис. 1.5 изображена функциональная схема лазерной дальномерной системы с непрерывным излучением. Лазерный генератор ЛГ оптического сигнала работает в непрерывном режиме и излучает оптический сигнал, проходящий через модулятор. В модуляторе сигнал по интенсивности моделируется периодическим сигналом , вырабатываемым генератором моделирующего сигнала ГМС. Луч света после модулятора отражается от сканирующего зеркала СЗ в направлении элемента поверхности, до которого измеряется дальность. Отраженный сигнал поступает в оптический приемник ОП и после него в виде напряжения подается на фазовый детектор. Фаза этого напряжения пропорциональна дальности r до точки отражения.
Рисунок 1.5 – Лазерная дальномерная система
Рассмотренная система относится к классу непрерывных, работающих по разомкнутому циклу управления.
1.2.3 Радиационная дальномерная система
Определение дальности до источника радиоактивного излучения основано на измерении интенсивности ν принятого излучения и последующем вычислении дальности, исходя из формулы , где I – активность источника; S – площадь детектора; Е – эффективность детектора; μ – коэффициент линейного поглощения среды.
Навигационное устройство построено по схеме, изображенной на рис. 1.6, где И — источник излучения на расстоянии r от локатора; КД1 и КД2 – коллиматоры с детекторами, расположенными на интервале d друг относительно друга; УФ – усилители-формирователи сигналов; СФ – сглаживающие фильтры; СД – схема деления напряжений; ФП – функциональный преобразователь; у – измеренное значение дальности r .
Рисунок 1.6 – Радиационная дальномерная система
Это навигационное устройство работает по принципу разомкнутого цикла и по составу элементов относится к классу электронных систем, так как все операции в нем производятся над электрическими сигналами. Недостатком системы является необходимость предварительного знания коэффициента поглощения среды. Чтобы избавиться от этой необходимости, систему можно строить по трехканальной схеме.
1.3 Системы поиска и обнаружения
1.3.1 Оптическая система поиска по угловым координатам
Если первоначальное положение объекта относительно системы неизвестно или известно с определенной долей вероятности, то этапу измерения координат предшествует этап поиска и обнаружения. Он необходим для решения вопроса о том, находится или отсутствует в зоне действия навигационной системы объект, и если он имеется, то каковы его координаты. Предварительное знание координат объекта на этапе поиска необходимо для наведения на объект систем измерения. При этом немаловажное значение имеют величины ошибок первоначальной сценки координат при поиске. Функциональная схема системы изображена на рис. 1.7.
Рисунок 1.7 – Оптическая система поиска по угловым координатам
Узкий оптический луч ОЛ формируется с помощью оптического генератора ОГ, фокусирующей системы ФС и с помощью сканирующего зеркала СЗ перемещается в горизонтальной плоскости в секторе θ с угловой скоростью . Если в секторе θ и в пределах дальности действия системы находится объект О , то отраженный от него сигнал преобразуется, усиливается в приемнике Пр и в виде напряжения U выдается на индикатор. Наличие шумового сигнала связано с наличием шумов приемного устройства и излучением фона. Напряжение U подается на устройство автоматического обнаружения полезного сигнала. В простейшем случае это пороговое устройство с уровнем срабатывания . При достижении напряжения U этого уровня выдается сигнал о наличии объекта в зоне поиска. Из-за шумов и фоновых помех процедура поиска и обнаружения имеет статистический характер, в результате чего возможны пропуски полезного сигнала или ложная остановка поиска из-за шумового выброса.
1.3.2 Акустическая система поиска по дальности
Принцип действия акустической системы поиска по дальности такой же как и принцип акустической дальномерной системы. Только тут обработка информации идет иным способом.
За каждый период излучения выбрасывается один строб – импульс поиска длительностью . С помощью схемы селекции строб – импульс «вырезает» из выходного напряжения приемника U участок длительностью и формирует новое напряжение , пропорциональное площади «вырезанного» участка. Это напряжение запоминается на время до следующего периода работы системы. В новом периоде строб – импульс вырабатывается с задержкой на время равное его длительности, и в новь определяется значение напряжения . Весь цикл в интервале времени от нуля до занимает периодов излучения импульсов. Если в строб – импульс попадают только шумы, амплитуда напряжения будет небольшой и случайной величиной, статически независимой от соседних значений. Если же в строб попадает полезный сигнал, то амплитуда сигнала возрастает.
Описанная система поиска по дальности в принципе не отличается от системы поиска по угловым координатам, за исключением дискретного характера сигнала на входе порогового устройства.
2. Разработка системы навигации мобильного робота
2.1 Системы планирования и их задания
Как известно, интеллектуальными (или интегральными) роботами называются автоматические устройства третьего поколения, что должны функционировать в динамическом замкнутом мире, имеют касательное и зрительное восприятие окружающего мира, владеют возможностями мобильности и изменения внешнего пространства. Кроме того, системы управления интегральных роботов должны функционировать на основе моделирования окружающего мира, выбора решения задачи, исходя из поставленной цели и динамических изменений в окружающем мире.
Для обеспечения разрешения подобных проблем служат решение интеллектуальных задач. Наиболее популярными разработками в этой области является GPS (General Problem Solver), который предназначен для решения преимущественно математических заданий и STRIPS (Stanford Research Institute Problem Solver), что с самого начала планировалась как система заданий адаптивных (а потом интеллектуальных) роботов.
Система планирования интеллектуальных роботов в своей основе базируется на разработке интеллектуальных решений. Построение теории интеллектуальных решений предусматривает решение двух проблем:
а) описание решения, его знаний и деятельности;
б) построение теории интеллектуальных решений.
Решение интеллектуальных заданий в наше время практически является преимуществом человека. Очевидно, человек пользуется своим внутренним языком преподавания знаний, что позволяет ему упрощать модель своего внутреннего мира и осуществлять при их помощи эффективный поиск необходимых решений с тесным взаимодействием с достаточно полно описанной моделью окружающего мира. Таким образом, при построении решения необходимо описывать не только модели решения, но и модель функционирования человека в процессе принятия решений.
Описание системы планирования – это в первую очередь описание закономерностей умственной деятельности такой системы при решении сложных проблемных заданий. Эта деятельность должна включать процессы осведомления системой планирования ситуаций окружающего внешнего мира и выполнять действия, также процессы поиска решения заданий. Таким образом, описание системы планирования, её знаний и деятельности, должно содержать:
а) описание исполнительных органов решения;
б) описание внешнего окружения;
в) описание знаний системы планирования, что отображают понимание деятельности исполнительных органов и окружающей среды решения;
г) описание процессов поиска решений предложенных заданий.
2.2 Общие аспекты построения системы планирования
Практическая реализация планирующих систем должно предвидеть наличие самой подсистемы планирования и исполнительной подсистемы. Так система STRIPS по замыслу должна работать в реальном мире во взаимодействии с исполнительной системой PlanEX (plan execution – исполнение планов).
Проблемная среда системы планирования содержит модель мира, набор операторных систем и цель (или набор целей) системы. В случае постановки задачи для мобильного робота в замкнутом пространстве мир робота должен соответствовать схеме расположения объектов в этом пространстве, например рис. 2.1.
Рисунок 2.1 – Пример схемы расположения объектов для системы планирования робота
Для решения практических заданий необходимо автоматически формировать абстрактные пространства разных уровней с базового пространства объектов и событий, в котором функционирует система.
В STRIPS – подобных системах абстрактные пространства определяются уровнем детализации условий применения операторов. Такой подход позволяет:
а) оставить неизменяемую модель мира – нет необходимости вычеркивать из неё незначительные (для данного уровня абстракции) детали и не учитывать их;
б) оставить неизменными операторные схемы.
Модель схемы подается в виде набора правильно построенных формул (ППФ) логики производных первого порядка, что отображают собой факты и законы.
Операторная схема определяется наименованием, списком параметров и описаниями в виде ППФ языка логики производных первого порядка: условий применения действий и результат действий. Результат действий, в свою очередь, содержит список вычеркиваний и список добавлений. Операторы порождают разные модели мира путем генерирования новых фактов. Цель системы также подается в виде ППФ тое же самой логики, то есть она является желанной ППФ системы.
В системе STRIPS поиск начинается с попытки вывести целевую формулу с выходящей модели мира . Для этого программа доказательства теорем осуществляет поиск противоречий во множестве дизъюнкций . Если такое противоречие найдено, то выходящее задание решается на этом шаге тривиальным способом, то есть выходная модель удовлетворяет цели . Если же указанное противоречие не соглашается, формируется так называемый незавершенный вывод . Этот вывод подается набором дизъюнктов, соответствующих противоречию формуле цели, плюс всех их производных, минус тех дизъюнктов, что исключаются благодаря применению ограниченных стратегий.
Незавершенный вывод принимается разницей между и , сто связывается с данным узлом. Дальше происходит поиск операторов, которые подходят для уменьшения полученной разницы. При поиске оператора, который подходит, значение его параметров поддаются частичному или полному перебору.
Поиск оператора состоит из двух шагов. На первом шаге составляется упорядоченный список операторов – кандидатов. Выбор которых основан на простом сравнении первообразных с разницы с первообразными из списка дополнения операторов. Второй шаг состоит в применении программы доказательства теорем для определения того, есть ли в указанном списке дополнений дизъюнкты, которые могли бы продолжить вывод после применения этого оператора. Если этот шаг прошел успешно, оператор – кандидат с соответствующими значениями параметров рассматривается как подходящий для уменьшения разницы .
Когда таким образом оператор – кандидат найден, условия его применения принимаются как новые подцели системы.
Иерархию целей, подцелей и моделей, порожденную в процессе поиска, можно представить в виде дерева поиска. Каждая вершина такого дерева имеет вид и соответствует заданию достижения модели целевого списка с указанной модели окружения. Пример дерева поиска приведен на рисунке 2.2.
Рисунок 2.2 – Дерево поиска в системе STRIPS
2.3 Реализация систем планирования
Практическая реализация систем планирования включает такие компоненты: модель мира, операторные схемы и цель системы. В частности языком Prolog модель мира, соответствует рис. 2.1 может быть описана набором утверждений:
is_a(room1,room,always)
is_a(room2,room,always)
is_a(room3,room,always)
is_a(door12,door,always)
is_a(door23,door,always)
is_a(box1,object,always)
is_a(box2,object,always)
is_a(box3,object,always)
connects(door12,room1,room2,always)
connects(door23,room2,room3,always)
stands(door12,opened,now)
stands(door23,opened,now)
is_in(box1,room1,now)
is_in(box2,room2,now)
is_in(box3,room3,now)
is_in(robot,room2,now)
is_at(robot,door12,now)
Не тяжело понять содержание базы данных. Она формируется соотношениями: is_a – принадлежность объекта класса, connects – объединение двух объектов третьим, stands – состояние объекта, is_in – местоположение объекта; is_at – общее расположение одного объекта возле другого.
Нужно отметить, что такое описание должно включать противоречия, для чего необходимо обеспечить специальную процедуру.
Операторные схемы системы планирования фактически представляют описания действий, что могут выполнятся в рамках описанной модели мира. Для мобильного робота это могут быть действия: открыть (закрыть) двери, перейти в другую комнату перейти к объекту, переместить его к другому объекту и т.д.
Каждая операторная схема практически содержит в себе:
а) утверждение результата реализации операторной схемы – действия, которые обеспечивает операторная схема;
б) тест выполнения – проверка отсутствия реализованного целевого факта;
в) тест валидности – проверка принадлежности операторной схемы для обеспечения цели системы планирования;
г) список предусловий: постановление (и выполнение) условий, что предшествуют выполнению действий операторной схемы;
д) список исключений – список событий, что устарели на момент выполнения операторной схемы;
е) список добавлений – список событий, что вносятся операторной схемой.
Задания в системе формируются как желанный факт состояния системы. Если такой факт не находится в базе данных, вызывается решебник, что реализует поиска решений. Поиск решения предвидит:
а) поиск предикативной схемы, которая соответствует поставленному заданию;
б) выполнение списка предусловий
в) выполнение списка удаления;
г) выполнение списка добавления.
Среди перспектив развития систем планирования интеллектуальных роботов необходимо отнести, во-первых, расширение проблемной отрасли. Такое расширение ведет к увеличению операторных схем и их усложнению. В случаях, когда одна цель может быть достигнута несколькими путями, возникает необходимость предварительной оценки сложности операторной схемы. При этом каждой схеме с набора, что обеспечивает одинаковые цели, соответствует коэффициент, а сам набор будет нечетким множеством. Во-вторых, функционирование роботов в реальном времени будет требовать улучшения процедур нахождения адекватных операторных схем, в том числе м учетом алгоритмов «отката», обновления предварительного состояния предметной отрасли. В-третьих, расширение проблемной отрасли будет определяться увеличением круга операций, выполняемых роботом, а последовательность выполнения операций будет определять стратегию действий робота.
2.4 Сегментация изображений для ИМР
С помощью системы технического зрения можно автоматизировать разнообразные технологические процессы – распознавание промышленных деталей, их сортировку, контроль размеров, укладку продукции в тару, контроль установки сверла или сварочной головки в заданное место контактной площадки и ряд других. Для решения подобных задач повсеместно проводится анализ трехмерных сцен с помощью двухмерных проекций – изображений, получаемых с помощью СТЗ.
Наибольшее распространение получили СТЗ, в которых видеодатчиками служат матрицы или линейки чувствительных элементов, а также электронно-лучевые трубки. Источником информации о состоянии поля зрения СТЗ служит световое поле, в общем случае неоднородное и нестационарное. С позиций зрительного восприятия световое поле в каждой точке пространства характеризуется яркостью, цветовым тоном и насыщенностью, которые могут меняться во времени. Световое поле можно описать также спектральной функцией потока излучения в направлении наблюдателя или распределением освещенности в плоскости чувствительного элемента видеодатчика. В подавляющем большинстве случаев на практике используются одноцветные (ахроматические) изображения, которые можно представить некоторой функцией в пространстве и времени, характеризующей яркость, освещенность, степень почернения фотопленки и т. д.
Для определенности будем рассматривать функции изображения В (х, у, t ), характеризующие распределение яркости в поле зрения. С такими изображениями, обычно, работают промышленные СТЗ, снабженные телекамерами черно-белого монокулярного телевидения. На выходе телекамеры образуется видеосигнал, соответствующий распределению яркости в поле зрения D в дискретные моменты времени, синхронизируемые, например, с интервалом стандартной развертки. На базе значений видеосигнала формируется последовательность отсчетов, которые соответствуют значениям яркости, получаемой усреднением (сверткой) видеосигнала по некоторой окрестности (апертуре) точки (х, у ). Максимально возможное число отсчетов при заданной апертуре образует растр поля зрения.
Использование цифровых методов обработки изображений предполагает в качестве необходимого этапа пространственную и яркостную дискретизацию непрерывного изображения В (х, у ), т. е. замену координат его элементов дискретными значениями и квантование яркости этих элементов на определенное число уровней. В память вычислителя СТЗ информация об изображении обычно вводится в виде матрицы значений, заданной на целочисленной прямоугольной решетке, покрывающей область поля зрения D .
Входные изображения могут быть подвержены различного рода помехам, которые можно разделить на случайные и локальные. Случайные помехи называют также шумами. Они возникают на изображениях в результате нестабильности и сбоев в работе различных блоков СТЗ на отдельных этапах формирования и преобразования изображений. Шумы, искажают реальное изображение в отдельных, в основном разрозненных, точках области D . Локальные помехи связаны с тем, что в поле зрения видеодатчика имеются некоторые небольшие области, которые не интерпретируются ни как объекты, ни как фон. Это, в первую очередь, загрязнения, блики, сколки, пятна.
Наличие помех заставляет в ряде случаев начать с их подавления – сглаживания шумов и устранения локальных помех. Задача подавления помех входит, с одной стороны, в задачу улучшения изображений, а с другой – ее можно рассматривать как часть задачи сегментации. В задачах, связанных с СТЗ роботов, актуален именно второй аспект.
Конечной целью сегментации изображений является разбиение поля зрения D на области объектов Dі, ..., D 8 и область фона . Сегментация путем построения отображения называется методом разметки точек. Если же целью является построение отображения, то говорят о сегментации путем выделения границ.
Методы и алгоритмы сегментации можно рассматривать как формализацию понятия выделяемости объекта из фона или понятий, связанных g градиентом яркости. Надежность алгоритмов сегментации зависит от того, насколько точно и полно при этом учтена дополнительная информация, которая в основном состоит из следующих сведений:
- число объектов s ;
- некоторые характеристики распределения яркости в областях объектов или фона, например экстремальные значения яркости, количество перепадов яркости;
- оценки яркостного перепада при переходе из области фона в область объектов;
- форма объектов;
- информация о том, какую, часть поля зрения занимает объединение областей объектов.
2.5 Пороговое ограничение
Пороговое ограничение по яркости – один из распространенных методов сегментации в робототехнике. Это обусловлено тем, что изображения объектов манипулирования часто имеют достаточно однородную яркость и резко выделяются из фона.
Наиболее просто пороговая обработка осуществляется в случае, когда заранее известно, что изображение состоит из одного объекта (s = 1) и фона, причем яркость точек объекта находится в пределах [Т1 , Т2 ], а яркость точек фона либо меньше Т1 либо больше Т2 . В этом случае каждой точке (i, j ) Dсопоставляется метка 1, если В(і, j ) [Т1 , Т 2 ], и метка 0 в противном случае. Произведенная таким образом грубая сегментация является окончательной вследствие условия s = 1.
В ряде задач робототехники пороги яркости объектов и фона неизвестны, поэтому метод порогового ограничения следует дополнить способом определения порогов. Определение порогов обычно связано с анализом гистограмм. Гистограмма – это отображение из множества {а ,..., β} значений яркости в множество натуральных чисел, каждому b {а ,..., β} сопоставляется число точек (m, n ) D , для которых (m,n ) = b .
При отсутствии априорной информации указанных двух типов существует подход к определению порогов, связанный с нахождением не только глобального максимума гистограммы, но и других ее экстремумов. Допустим, что изображение состоит из фона и одного объекта. При постоянной яркости фона и объекта гистограмма имеет простейший вид. Такой вид гистограммы в реальной ситуации далек от действительности, более реальная гистограммаимеет более сложный вид.
2.6 Центроидное связывание
Гистограмма изображения является его глобальной характеристикой – при ее формировании не используется понятие близости элементов изображения. Поэтому методы, рассмотренные выше, являются глобальными. Перейдем к локальным методам сегментации, получившим название наращивание областей. Алгоритмы наращивания областей используют информацию о связности объектов и основаны на рекуррентном способе разметки точек. На шаге с номером k размечаются те и только те точки, которые имеют соседей из числа размеченных на предыдущем шаге (k – 1). Разметка точек осуществляется согласно некоторому критерию однородности. Конкретные алгоритмы различаются выбором критерия однородности, способом просмотра точек и выбором начальных «стартовых» точек, размечаемых на нулевом шаге.
В литературе известно два основных подхода к стратегии выбора стартовых точек и порядка просмотра остальных: центроидное связывание и слияние – расщепление областей.
Выбор стартовых точек и их меток в алгоритмах центроидного связывания должен быть, осуществлен так, чтобы никакие две точки с различными метками не были соединены.
Кроме того, если априорно известна некоторая информация о расположении объектов в поле зрения, то желательно стремиться к выполнению следующих требований:
- точки с различными метками должны соответствовать областям различных объектов;
- точки с одной меткой должны соответствовать одному и тому же объекту.
При выборе стартовых точек следует также учесть, что большую часть изображения в задачах робототехники, как правило, занимает фон, причем он является практически однородным. Поскольку в большинстве случаев достаточно получить грубую сегментацию (точки фона разметке могут не подлежать), то стартовые точки следует выбирать так, чтобы как можно меньшее число из них попало в область .
В случае слияния областей меняется частичная разметка, полученная на шаге k . Поэтому анализ большинства точек изображения следует провести заново. Конечно, необходимость повторных проходов по полю изображения резко увеличивает время реализации алгоритма.
Слияние областей – наиболее ответственные моменты алгоритмов центроидного связывания. Чем меньшее число раз возникает вопрос о слиянии областей, тем выше надежность алгоритма, тем меньше время, необходимое для реализации алгоритма. Число слияний областей зависит от правильности выбора порога Т и стартовых точек.
2.7 Реализация программы системы навигации ИМР в Visual C++
Реализация системы навигации робота способами Visual C++ имеет некоторые особенности. Во-первых: пролог-программа, базирующаяся исключительно на базе данных в С++, что требует реализации специальных способов преподнесения. Во-вторых: разработку С++ программ будет невозможно представить без реализации системы выполнения рабочих планов.
Конечно, решение заданий по разработке планов, исключительно зависит от начального состояния системы. Каждый объект мира ИМР должен быть однозначно описан в базе данных программы (рис. 2.3)
Рисунок 2.3 – Начальное расположение объектов в системе планирования
Таким образом мир робота состоит из пяти комнат, соединенных дверями. В комнате находятся коробки. Робот, как действующий объект такого ограниченного мира, может выполнять такие действия:
- перемещаться к дверям или коробкам;
- перемещаться в конкретную комнату;
- открывать или закрывать двери;
- загружаться коробкой или освобождаться от неё.
Опишем основные моменты разработки планов робота в ограниченном пространстве.
1. Для описания начального, текущего и конечного состояния системы планирования объявим класс CRoboPlan.
Пример 4.1 – Главный класс системы разработки планов робота
class CRobotPlan
{public: char *relname,*agent,*sobj1,*sobj2;
CRobotPlan *next;
CRobotPlan();
CRobotPlan(char *,char *,char *,char *,CRobotPlan *);
CRobotPlan(char *,char *,char *,CRobotPlan *);
void print();
CRobotPlan *dataformer();
CRobotPlan *addfact(char *,char *,char *,char *);
CRobotPlan *delfact(char *,char *,char *,char *);
CRobotPlan *delfact(char *,char *,int,char *);
CRobotPlan * delfactall(char *rel, char *n);
int dbtest(char*,char*,char*);
int dbtest(char*,char*,char*,char*);
int dbtest(char*,int,char*,char*);
int dbtest(char*,int,char*,int);
CRobotPlan *findfact(char *,char *);
CRobotPlan *findfact(char *,char *,char *);
CRobotPlan *findfact(char *,char *,char *,char *);
CRobotPlan *findfact(char *,int,char *,char *);
CRobotPlan *findfact(char *,int,char *,int);
CRobotPlan *findfact(char *,char *,char *,int);
CRobotPlan* Revers(CRobotPlan *);
void deciser();
char *find_action();
void support_action(char*);
void old_cleaner(char*);
void new_adder(char*);
};
Как видно класс состоит с трех переменных членов и ряда функций. Поля *relname, *agent, *sobj1 и *sobj2 означают: имя отношения, что входит в состав базы данных; программный субъект, который выполняет действия; два объекта на которые направлено действие.
2. В программе генерации планов робота, факты про состояние объектов системы подаются связным списком и инициализируются функцией dataforme().
3. Для решения заданий системы реализуем функцию решения – deciser(), что структурирует последовательность принятия решений:
void CRobotPlan::deciser()
{if(!evil->dbtest(relname,agent,sobj1,sobj2))
{char *action=find_action();
if (action){ support_action(action);
old_cleaner(action);
new_adder(action);
}}}
Решение начинается с проверки наличия в базе данных целевого факта. Дальше при помощи функции find_action(), находится способ действия робота, что удовлетворяет поставленной цели задания.
Если, например, перед системой возникает задание, в программе создается объект типа CRobotPlan, для которого возникает функция – решение например:
goal=new CRobotPlan(“is_in”,”robot”,”room1”,NULL); // tested
goal->deciser();
В данном случае задается целевой факт нахождения робота в комнате «room1».
4. Установление начальной цели системы планирования легко реализовать при помощи специального диалогового окна с комбинированными списками (рис. 2.4).
Рисунок 2.4 – Вид диалогового окна формирования цели робота
При помощи комбинированных списков «Агент» (содержит значение «робот», «коробка1», «коробка2»), действие («перейти к», «толкать до», «открыть», «закрыть») и «Объект действия» (все двери, комнаты и коробки) можно сформировать задания робота. Нажатие кнопки «Подтвердить» означает окончание выбора проверки корректности задания и запуск системы планирования. Перечисление действий, что в результате, запланирует система принятия решений – выводится списком в правой часте диалогового окна.
Нажатие кнопки «Показать» – запускает функции графического отображения разработанного плана действий робота.
Выводы
Разработка ИМР для различных производственных и исследовательских целей является весьма важной и актуальной задачей.
Системы навигации для ИМР состоят из модели внешней среды, содержащей в себе целевой объект, подвижные и стационарные препятствия. Информация о внешней среде воспринимается моделью сенсорной подсистемы и передается в систему искусственного интеллекта (ИИ) мобильного робота. На основе этой информации, с помощью подсистемы построения модели внешней среды, формируется план среды, по которому нейросетевой планировщик определяет оптимальный путь достижения цели. Контурный регулятор синергетического типа на основании найденной траектории движения и информации от внутренних датчиков вырабатывает управляющие воздействия для эффекторной подсистемы с учетом динамической и кинематической моделей мобильного робота.
В процессе выполнения квалификационной работы бакалавра, была достигнута цель работы, посредством выполнения следующих этапов:
– Рассмотрены существующие навигационные системы, а именно:
Системы измерения угловых координат:
Телевизионная угломерная система;
Оптическая угломерная система со сканированием луча;
Индукционная угломерная система;
Радиационная угломерная система;
Системы измерения дальности и скорости:
Акустическая дальномерная система;
Лазерная дальномерная система;
Радиационная дальномерная система;
Системы поиска и обнаружения:
Оптическая система поиска по угловым координатам;
Акустическая система поиска по дальности;
– Разработана система навигации ИМР, включающая подсистемы:
Планирования и задания;
Сегментации изображений;
Порогового ограничения;
Центроидного связывания;
– Реализована программная система навигации ИМР в Visual C++
Данная программная модель позволяет моделировать и изучать функционирование двухуровневой системы управления в сложной динамически изменяющейся среде.
Что же касается недостатков разработанной системы, то к ним следует отнести следующие:
- достоверность получаемых результатов существенно зависит от точности моделирования сенсорной и эффекторной подсистем робота;
- качество моделирования существенно зависит от точности воспроизведения внешней среды (для повышения этой точности желательно использовать саму среду);
- программная модель функционирует на отдельной стационарной ЭВМ, и, таким образом, процессы моделирования всех подсистем робота разделяют ее ресурсы, что приводит к существенному замедлению моделирования и не позволяет эффективно использовать сложные математические модели.
Перечень литературы
1. Фу К., Гонсалес Р., Ли К. Робототехника: Пер. с англ. – М.: Мир, 1989. – 624 с.
2. Шикин А.В., Боресков А.В. Компьютерная графика. Полигональные модели. – М.: ДИАЛОГ-МИФИ, 2000. – 464 с.
3. Романовский П.И. Ряды Фурье. Теория поля. Аналитические и специальные функции. Преобразование Лапласа. – М.: Наука. Гл. ред. физ.-мат. л-ры, 1980. – 336 с.
4. Gonzalez R.C., Wintz P. Digital Image Processing. Addison – Wesley: Reading, Mass., 1977. – 96 р.
5. Theodoris S., Koutroumbas K. Pattern Recognition. – Academic Press, 1999. – 124 р.
6. Master Thesis LiTH-ISY-3132 Computer Vision Classification of Leaves from Swedish Trees Oskar J.O. Sőderkvist September 20, 2001. – р. 45 – 48.
7. Васильев В.И. Распознающие системы. Справочник. – К.: Наук. думка», 1983. – 422 с.
8. Nevludov I., Andrusevith А., Bondarenko А. Charkov-Rybachie, Proceedings x international conference "New leading technologies in machine building", September 2-6, 2001, р. 49 – 53.
9. Путятин Е.П., Аверин С.И. Обработка изображений в робототехнике. – М.: Машиностроение, 1990. – 320 с.
10. Баклицкий В.К., Бочкарёв А.М., Мусьяков М.П. Методы фильтрации сигналов в корреляционно-экстремальных системах навигации. – М.: Радио и связь, 1986. – 216 с.
11. Хорн Б.К. Зрение роботов: Пер. с англ. – М.: Мир, 1989. – 487 с.
12. Жлуктенко В.І., Наконечний С.І. Теорія ймовірностей і математична статистика: навч.-метод. посіб. у 2-х частинах. Ч. 1: Теорія ймовірностей. – К.: КНЕУ, 2000. – 304 с.
13. Кугушев Е.И., Толстоусова В.Г. Константность восприятия в системах технического зрения роботов. – Предпринт ИПМ АН СССР, №45, 1985. – 24 c.
14. Власов В.Г. Конспект лекций по высшей математике. – М.: АЙРИС, 1996. – 289 с.
15. Айзерман М.А., Браверман Э.М., Розоноэр Л.И., и др. Метод потенциальных функций в теории обучения машин. – М.: Наука, 1970 – 384 с.
16. Microsoft Developer Network. MSDN Library – April 2001
17. Грегори К. Использование Visual C++ 6. Спец. издание.: Пер. с англ. – СПб.: Изд. дом «Вильямс», 2000. – 864 с.
18. Архангельский А.Я. Программирование в С++ Builder 4 – М.: БИНОМ, 1999. – 928 с.
19. Артемиев В. М. Навигационные системы робототов. – М.: Машиностроение, 1988. – 396 с.
20. Цимбал А. М. Технологии програмирования: Visual C++. – М.: Харьков: ХНУРЭ, 2006. – 336 с.
21. Методические указания к дипломному проекту для студентов специальности 8.091402 «Гибкие компъютерные системы и робототехника» Упоряд. В.В. Токарев, О.М. Цимбал. – Харьков: ХНУРЭ, 2003. – 40 с.
22. Державний стандарт України. ДСТУ 3008-95. Документація. Звіти у сфері науки і техніки. Структура і правила оформлення. Чинний від 01.01.96. – К.:Держстантдарт, 1995. – 60 с.
23. ГОСТ 2.105-2001. Единая система конструкторской документации. Общие требования к текстовым документам. – М.: Из-во стантдартов, 2001. – 76 с.
24. Единая система конструкторской документации: Справ. пособ. / С.С. Борушек А.А. Волков, М.М. Ефимова и др. - 2-е изд., перераб. и доп. – М.: Изд-во стандартов, 1989. – 352 с.