Реферат По Алгоритмам В Робототехнике

Реферат По Алгоритмам В Робототехнике



>>> ПОДРОБНЕЕ ЖМИТЕ ЗДЕСЬ <<<






























Реферат По Алгоритмам В Робототехнике
Курченков Никита Иванович
Факультет компьютерных наук и технологий
Кафедра прикладной математики и информатики
Специальность «Инженерия программного обеспечения»
Программирование устройств робототехники
Научный руководитель: к.ф.-м.н., доц, Дацун Наталья Николаевна
Робототехника является одним из важнейших направлений научно-технического прогресса, в котором проблемы механики соприкасаются с проблемами управления и искусственного интеллекта. Являясь интегральной дисциплиной робототехника требует от разработчиков знаний и умений в таких направлениях как: механика, электроника, программирование, менеджмент проектов. В итоге робототехник отличается от узкого специалиста широким кругозором и системным мышлением.
В литературном источнике [1] приводится следующее определение, что робот – устройство, управляемое с помощью электронной платы или компьютера, который можно запрограммировать на выполнение определенных операций.
В большинстве случаев современные работы – это «руки», манипуляторы, закрепленные на платформе и предназначенные для выполнения однообразной работы типа перемещения. К роботам также относятся устройства, работающие в тяжелых для человека средах и управляемые дистанционно, например работы, которые выполняют работы на больших глубинах, в космосе, устройства для доставки снарядов и др., а также роботизированные игрушки.
Робот это электромеханическое, пневматическое, гидравлическое устройство или их комбинация, предназначен для замены человека в промышленности, опасных средах и др.
Системы управления робототехнических устройств строятся на том же техническом базисе, что и все другие автоматические устройства. Алгоритмы систем управления роботами изучаются в курсах теории автоматического управления, теоретической механики. Обычно это только общие курсы, для более глубокого изучения рекомендуется теория навигационных систем, приближенная теория гироскопов, электротехника, цифровая и аналоговая схемотехника и др.
В современном мире, когда доминирующей течением является конвергенция технологий и наук, в управлении работами интересных результатов достигают применением знаний человечества в области биологии и моделей поведения животных.
Общепризнанным является деление методов управления на: программное управление, адаптивное управление, интеллектуальное управление, полуавтоматическое или телеуправления, – то есть с участием человека.
Существует три класса устройств робототехники, это сборные устройства, манипуляторы и уже готовые работы.
Робот может непосредственно подчиняться командам оператора, может работать по заранее составленной программе или следовать набору общих указаний с использованием технологии искусственного интеллекта. Эти задачи позволяют облегчить или вовсе заменить человеческий труд на производстве, в строительстве, при работе с тяжелыми грузами, вредными материалами, а также в других тяжелых или опасных для человека условиях, поэтому актуальность данной темы сложно переоценить [2].
Данная магистрская работа посвящена усовершенствованию алгоритмов поиска путей и адаптированию их для роботов.
Целью исследования является определение классов роботов, а также исследование их программного обеспечения. Поиск и анализ существующих алгоритмов в области искусственного интеллекта и возможности их применения на роботах.
Одной из таких разработок является экспериментальный малогабаритный маневренный робот "Интеллект -9". Основным преимуществом данного робота является хорошая маневренность и управляемость для достижения точности в управлении.
Структурная схема программного обеспечения робота "Интеллект-9" приведена на рис. 1. Программное обеспечение содержит ядро программной системы, включающее драйверы для взаимодействия с аппаратурой робота и средства переключения задач, а также набор программного обеспечения, обеспечивающего решение ряда задач [3].

Рисунок 1 – Схема программного обеспечения робота [3]
В настоящее время разработаны драйвер радиоинтерфейса (ДРИ), драйвер интерфейса движения (ДИД), драйвер средств сигнализации (ДСС) и драйвер звуковой карточки (ДЗК). В состав программного обеспечения робота включены также следующие прикладные задачи: речевого управления (РУ), планирования движения (ПД), синтеза речи (СР), настройки и градуировки (НГ). Планируется также подключение задачи анализа изображений (АИ) [3].
Манипулятор (англ. manipulator) – прибор или приспособление для регулирования сложных производственных процессов, который под управлением оператора выполняет действия (манипуляции), аналогичные действиям руки человека, или действует автоматически.
Простые манипуляторы могут передвигаться вверх и вниз только в пределах ограниченной дуги; сложные механизмы приводятся в действие с помощью контрольного рычага управления. Типичный простой манипулятор для захвата может поднимать до 65 кг, но некоторые системы способны поднимать до 200 кг [4-5].
Рассмотрим пример такого устройства, робот KATANA. Он изображен на рисунке 2.
Как видно из рисунка 2, это устройство представляет собой механическую руку. Далее рассмотрим программное обеспечение.
В литературном источнике [6] указано, что программное обеспечение для управления роботом Katana представляет собой библиотеку KNI 4.3.0 (Katana Native Interface) с открытым кодом на языке С++. Разработчику программного обеспечения для управления роботами-манипуляторами Katana также доступно описание системы команд самого робота. Это позволяет разрабатывать системы программного управления роботами-манипуляторами для различных предметных областей. С другой стороны, проанализировать использование этой библиотеки по научным публикациям достаточно сложно, так как пользователям доступны только сама библиотека и описание языка команд самого робота. Библиотеку KNI можно также использовать и в симуляторе роботов Webots, создавая модели роботов компании Neuronics AG. Поэтому при разработке ПО для управления работами используют два метода:
К таким проектам относятся проекты, в которые вкладываются большие деньги компаниями-производителями. Как правило, они имеют техническую документацию и удобные системы для программирования их продукта. Рассмотрим пример такого робота Robotino.
В качестве модели для изучения характеристик таких мобильных систем удобно использовать подвижной робототехнический комплекс Robotino (рисунок 3), оснащен всенаправленным приводом. Три двигателя привода обеспечивают перемещение системы под всех направлениях в горизонтальной плоскости, а также вращение вокруг вертикальной оси на месте. Система оснащена видеокамерой (5) и датчиками двух типов: цифровыми – для контроля фактической скорости (1) и аналоговыми – для измерения расстояния (3). Такое оснащение гарантирует выполнение широкого диапазона требований, предъявляемых к системам такого типа [7].
Каждый из датчиков может быть востребован индивидуально через интерфейс ввода-вывода. Таким образом, можно избежать столкновения с препятствиями. Датчик столкновения (2) представляет собой узкую резиновую трубку, размещенную по периметру шасси Robotino. Внутри трубки расположены две электропроводящие полосы переключения, между которыми маленький зазор. При столкновении с препятствием эти поверхности смыкаются между собой, тем самым формируется сигнал для отключения привода. Такое отключение возможно в случае столкновения с препятствием при перемещении в любом направлении.

Рисунок 3 – Конструкция робота Robotino: а – размещение датчиков, б – блок управления и видеокамера [8]
Блок управления содержит процессор с компактной картой памяти, модуль ввода-вывода и интерфейсы. Robotino оборудован девятью инфракрасными датчиками, которые установлены по периметру шасси под углом 40 градусов друг к другу. Эти датчики позволяют определять расстояния до препятствий на пути перемещения Robotino. С помощью таких датчиков можно измерять расстояния до препятствий 4...30 см. С помощью видеокамеры оператор имеет возможность визуально контролировать, управлять и оценивать траекторию перемещения Robotino на основе изображения, воспроизводимого на экране ПК с помощью программной оболочки «Robotino View». Наличие аккумуляторных батарей позволяет Robotino автономно перемещаться в зоне действия сети WLAN. Многочисленные датчики, видеокамера и программное обеспечение «RobotinoView» обеспечивают систему необходимо «интеллектом».
Дополнительно к Robotino могут быть подключены индуктивные и инфракрасные оптические датчики, которые через интерфейс ввода-вывода связываются с все направленным приводом [9].
При анализе программного обеспечения Robotino были выделены 2 группы программных средств:
В литературном источнике [10] была предложена иерархия построения программного обеспечения (рисунок 4):

Рисунок 4 – Иерархия построения ПО для Robotino [10]
В данной схеме имеется два уровня: уровень Robotino view – уровень построения схемы для управления роботом, и уровень Robotino SIM – уровень представления данных. Взаимодействие между машинным кодом робота и кодом высокого уровня осуществляется посредством .rvw 2-файла. Этот файл представляет собой верстку xml, причем каждый элемент имеет свою позицию в файле. Управление роботом осуществляется дистанционно по каналу беспроводной связи WLAN (взаимодействие между уровнем xml-файла и машинного кода Robotino). Следует также отметить, что данные с робота (например данные с датчиков ) передаются по тому же каналу [10].
Задача о кратчайшем пути состоит в нахождении кратчайшего пути от заданной начальной вершины к выбранной вершине z. Следующие две задачи – непосредственные обобщения сформулированной задачи о кратчайшем пути [11-13].
Оказывается что почти все методы решения задачи о кратчайшем пути от заданной начальной вершины a выбранному вершины z также позволяют найти и кратчайшие пути от вершины a ко всем другим вершинам графа. Итак, с их помощью можно решить задачу 1 небольшими дополнительными вычислительными затратами. С другой стороны, задачу 2 можно решить или n раз применив алгоритм задачи 1 с различными начальными вершинами, или один раз применив специальный алгоритм.
Эффективный алгоритм определения длины кратчайшего пути от фиксированной вершины до любой другой предложил 1959 датский математик Э. Дейкстра. Этот алгоритм применен только тогда, когда вес каждого ребра (дуги) положительная.
Этот алгоритм является улучшенным алгоритмом поиска пути A*. JPS ускоряет поиск пути, “перепрыгивая” многие места, которые должны быть просмотрены. В отличие от подобных алгоритмов JPS не требует предварительной обработки и дополнительных затрат памяти. Данный алгоритм представлен в 2011 году, а в 2012 получил высокие отклики [14].
Пример работы данного алгоритма изображен на следующей анимации (см. рис. 5).

Рисунок 5 – Пример работы алгоритма Jump Point Search
(анимация: 7 кадров, 7 циклов повторения, 55 килобайт)
Исследования по тематике нейронных сетей связаны с тем, что способ обработки информации человеческим мозгом в корне отличается от методов обычными цифровыми компьютерами. Мозг представляет собой чрезвычайно сложный, нелинейный, параллельный компьютер (систему обработки информации). Он обладает способностью организовывать свои структурные компоненты, называемые нейронами (neuron), так, чтобы они могли выполнять конкретные задачи (такие как распознавание образов, обработку сигналов чувств, моторные функции) во много раз быстрее, чем могут позволить самые быстродействующие современные компьютеры. Примером такой задачи обработки информации может служить обычное зрение (human vision) [15].
Другим примером может служить локатор (sonar) летучей мыши, представляющая собой систему активной эхолокации. Помимо предоставления информации о расстоянии до нужного объекта (например, мошки) этот локатор предоставляет информацию об относительной скорости объекта, о его размерах и размеры его отдельных элементов, а также об азимуте и высоте движения объекта [15]. Для выделения этой информации с принимаемого сигнала крошечный мозг летучей проводит сложные нейронные вычисления. Эхолокация летучей мыши по своим характеристикам качества и быстродействия превосходит сложные приборы, созданные инженерами.
В литературном источнике [16] дается следующее определение, что нейронная сеть – это огромный распределенный параллельный процессор, составлен из элементарных единиц обработки информации, накапливающих экспериментальные знания и предоставляют их для дальнейшей обработки. Нейронная сеть сходна с мозгом с двух точек зрения:
Рассмотрим подробнее, каким образом работают нейронные сети. в литературном источнике [17] указано, что нейрон головного мозга получает входные сигналы от множества других нейронов, причем сигналы имеют вид электрических импульсов. Входы нейрона делятся на две категории: возбуждающие и тормозящие. Сигнал, поступивший на возбуждающий вход, повышает возбудимость нейрона, которая при достижении определенного порога приводит к формированию импульса на выходе. Сигнал, поступающий на тормозящий вход, наоборот, снижает возбудимость нейрона. Каждый нейрон характеризуется внутренним состоянием и порогом возбудимости. Если сумма сигналов на возбуждающих и тормозящих входах нейрона превышает этот порог, нейрон формирует выходной сигнал, который поступает на входы связанных с ним других нейронов, т.е. происходит распространение возбуждения по нейронной сети. Типичный нейрон может иметь до 103 связей с другими нейронами.
Также следует отметить, что нейронные сети могут обучаться. Научить нейронную сеть это значит, сообщить ей чего от нее добиваются. Этот процесс похож на обучение ребенка алфавиту. Показав ребенку рисунок буквы и получив неверный ответ, ему сообщается и ответ, что хотят получить. Ребенок запоминает этот пример вместе с верным ответом и в его памяти выполняются некоторые изменения в нужном направлении [18].
Нейронную сеть удобно представлять в виде графа. Узлы в этом графе соответствуют нейронам, а ребра – связям между нейронами. С каждой связью ассоциирован вес (рациональное число), который отражает оценку возбуждающего или тормозящего сигнала, передаваемого по связи на вход нейрона-реципиента, когда нейрон-передатчик возбуждается [19].
Проведенный анализ современного состояния проблемы показывает, что:
Целью магистерской работы является исследование возможности использования новых алгоритмов искусственного интеллекта и алгоритмов поиска путей в процессе построения работы роботов.
Достижение сформулированной цели связаны с решением следующих задач:

Реферат - Программирование устройств робототехники...
Робототехника в современном мире | Цель реферата.
Бесплатные рефераты по роботам и информатике
Реферат : Основы робототехники - BestReferat.ru
Механика и алгоритмы управления роботами. Дипломная...
Проблема Взаимоотношения Людей Сочинение Егэ
Эссе На Тему Общение Наука И Искусство
Отзыв На Сочинение Летом
Диагностика Банкротства Предприятия Курсовая
Реферат По Физкультуре На Тему Футбол Кратко

Report Page