Hardware and software complex for robotic platform control



Cite item

Full Text

Abstract

The article presents the development of hardware-software complex for controlling a robotic platform as well as software and algorithmic support for autonomous motion and non-contact control of a robotic platform.

Full Text

Робототехника широко внедряется во все сферы человеческой деятельности. Это спасательные работы на месте катастроф, борьба с терроризмом, обезвреживание взрывоопасных предметов, охрана специальных объектов и т.п. Функционирование робототехнических систем связано с выполнением разнообразных измерений и сложных способов обработки информации, поступающей с датчиков. Структура разработанной на кафедре «АиПУ» робототехнической платформы показана на рисунке 1. Рисунок 1. Структурная схема системы управления робототехнической платформой-роботом В состав системы управления платформы-робота входят датчики информации окружающей среды, которые представлены ультразвуковым дальномером, инфракрасным дальномером и датчиком Холла. Для нормализации сигналов с этих датчиков служат преобразователи, осуществляющие преобразование аналоговых сигналов в унифицированный сигнал [1]. Преобразование унифицированных сигналов выполняют входные порты ЭВМ. Сигналы с GPS и радара служат для обеспечения координатно-временной информации и поступают на входные порты ЭВМ. Управление может осуществляться как в режиме беспилотного управления, так и с помощью оператора. Оператор через систему технического зрения (СТЗ) может управлять платформой. На рынке комплектующих представлено много СТЗ, ориентированных на решение различных задач, но в нашем проекте используется контроллер Kinect, предназначенный для прямого дистанционного трехмерного измерения объектов и сцен. Формат снимаемых данных - трехмерные 3D-сцены, тип освещения сцены - проецирование сетки из инфракрасных точек. Пространственный жестовый интерфейс Microsoft Kinect позволяет управлять платформой при помощи жестовых команд. К выходным портам ЭВМ подключены аппаратные драйверы управления исполнительными двигателями, обеспечивающие согласование сигналов по уровню токов, и аппаратные интерфейсы, обеспечивающие связь с человеком-ператором путем вывода на светодиодную матрицу буквенно-цифровой информации. В ходе проекта решена инженерная задача создания механических звеньев, обеспечивающих ожидаемые линейные скорости и ускорения, допустимые внешние нагрузки и режимы работы. Функциональная особенность аппаратно-программного комплекса состоит в интеллектуализации управления движением за счет использования локальных и визуальных датчиков [2]. Система имеет априорную информацию о среде и в процессе функционирования получает текущую информацию как о внешней среде, так и о собственном состоянии. Ее целью является принятие решений, связанных с анализом внешней среды [4]. Структура и алгоритм функционирования системы показаны на рисунке 2. Рисунок 2. Алгоритм функционирования задач управления робототехнической системы Программное обеспечение и алгоритм управления обеспечивают работу платформы в двух режимах: в автономном режиме и в режиме оператора. В режиме оператора система технического зрения реализована в виде видеокамеры Kinect. Алгоритмы управления и обработки информации с камеры Kinect сосредоточены в процессоре ноутбука, так как производительности бортового микроконтроллера недостаточно. Управление исполнительными механизмами платформы осуществляется микроконтроллером Arduino Mega2560. Программа управления движением робототехнической платформой написана на двух языках программирования: C# (Си-шарп) [5] и Wiring [7]. Программа состоит из двух подпрограмм [6]: подпрограмма для автономного движения и подпрограмма для жестового управления оператором. Каждая подпрограмма состоит из отдельных модулей: модуль опроса датчиков, модуль обработки данных, модуль связи платформы с ПК, модуль управления передвижением платформы, модуль обработки видеоизображения с камеры Kinect, модуль тестирования ПО. Программный модуль спроектирован с помощью языков программирования C# и Wiring. Объем программы составляет 702 строки, включая тексты программ на C# и Wiring. Фрагмент текста программы на языке C# [5], отвечающий за распознавание жестов оператора и передачу полученных данных [6] с ноутбука во встроенный микроконтроллер робототехнической платформы, приведен ниже: Режим оператора или автономный режим активизируется нажатием клавиши «Выбор управления» и реализуется в виде подпрограммы «Оператор» [5] или «Автономный режим» [6]. Задача подпрограммы «Оператор» обеспечивать бесконтактное управление робототехнической платформой посредством жестов оператора, находящегося в поле зрения камеры Kinect. Задача подпрограммы «Автономный режим» обеспечивать автономное передвижение робототехнической платформы в пространстве, используя датчики состояния внешнего мира. Компоновочная схема макета, показанная на рисунке 3, включает шесть многозвенных конечностей, обеспечивающих требуемую траекторию движения робототехнической платформы, приводы и систему управления. Основной особенностью робототехнической системы является применение уже готового набора «Матрешка Z», из которого собраны шесть многозвенных конечностей так, чтобы обеспечить требуемую траекторию движения робототехнической платформы (рисунок 3). Рисунок 3. Компоновочная схема макета робототехнической платформы Рисунок 4. Общий вид конечности Каждая из конечностей выполнена в виде трех последовательно соединенных скоб «Амперка» с тремя встроенными сервоприводами, которые задают диапазон углов поворота от 0 до 180 градусов. Общий вид конечности показан на рисунке 4. Конечности смонтированы на корпусе платформы так, что образуют шестиногую шагающую конструкцию. Достоинством конструкции является нахождение опор конечностей на окружности, что положительно влияет на мобильность платформы и обеспечивает заданные характеристики. За счет наличия у платформы шести конечностей достигается плавность ее передвижения и обеспечивается горизонтальное пространственное положение рабочей поверхности платформы. Система управления платформой реализована в виде аппаратно-программного комплекса, изображенного на рисунке 5. Рисунок 5. Аппаратные средства управления платформой При решении задачи выбора встраиваемых компонентов использованы типовые компоненты ведущих мировых фирм, обеспечивающие компоновочное пространство, небольшую массу и низкую стоимость проектируемой платформы. Критерии выбора датчиков информации обеспечивают получение на их выходах данных установленного формата [3]. Микроконтроллер Arduino Mega позволяет принимать и обрабатывать как цифровые, так и аналоговые сигналы унифицированного формата. Сервопривод FT5519M и драйверы моторов AMP-B001 удовлетворяют требованиям по необходимой нагрузке и мощности. Аккумулятор Hyperion G3 способен обеспечить непрерывное перемещение платформы в течение 14 минут со скоростью 2 км/ч. Данная комплектация выбрана для конкретной цели, предназначенной для участия в соревнованиях по робототехнике и тестировании программно-аппаратного обеспечения. В режиме «Оператор» используется видеокамера Kinect, подключенная к ноутбуку, как показано на рисунке 6. Управление платформой в режиме оператора. Видеокамера Kinect оснащена инфракрасным излучателем, который проецирует сетку из инфракрасных точек, и инфракрасным датчиком, который воспринимает отраженный инфракрасный свет. Оператор находится перед видеокамерой Kinect. Видеокамера через ноутбук связана с ЭВМ по сети Wi-Fi. Инфракрасный датчик считывает жесты оператора, управляющего платформой, ноутбук анализирует полученные изображения и интерпретирует их как команды. В процессе проектирования была разработана программа информационного обмена между ЭВМ и сервоприводами платформы. Управляющая ЭВМ генерирует ШИМ-сигналы на сервоприводы платформы. Разработана система команд, обеспечивающая жестовое управление платформой (таблица 1). Рисунок 6. Структурная схема подсистемы восприятия среды и управления платформой оператором В таблице представлены жесты оператора и соответствующие им движения робота. Выводы Отладка и тестирование работы программ проводились в режиме "Оператор". В ходе тестирования решена задача обработки данных с камеры Kinect и распознавания жестов оператора, отлажена передача данных на микроконтроллер Arduino Mega2560, отработана программа управления по передвижению робототехнической платформы в необходимых направлениях, апробированы модули ввода данных с датчиков. Экспериментально подтверждено, что робототехническая платформа выполняет движения в необходимых направлениях с учетом локальных препятствий в режиме реального времени, на основе данных, получаемых с датчиков. По результатам соревнований на Международном робототехническом фестивале «Робофест-2013» работа получила 1-е место в номинации «Фристайл». На СНТК-2014 аппаратно-программный комплекс шагающей платформы был удостоен 1-го места в номинации «Лучшая работа в области автоматизации и управления на производстве» и 1-го места в номинации «Лучшая работа в области перспективных транспортных средств».
×

About the authors

K. L Kondratyev

Moscow State University of Mechanical Engineering (MAMI)

Email: blast.kir@gmail.com
+7 926 056-25-46

V. I Kharitonov

Moscow State University of Mechanical Engineering (MAMI)

Email: blast.kir@gmail.com
Prof.; +7 926 056-25-46

References

  1. Управление в технических системах. Под редакцией В.И. Харитонова. - М.: Форум, 2010.
  2. Дж. Фрайден. Мир электроники. Современные датчики. Справочник. Техносфера. Москва, 2006.
  3. Мясников В.И. Микропроцессорные системы. Учебное пособие, Йошкар-Ола, 2005.
  4. Меша К.И., Семенихин Г.И., Харитонов В.И. Информационное обеспечение систем управления. Учебное пособие. Москва, 2012.
  5. Герберт Шилдт - C#. Полное руководство. Вильямс, 2011.
  6. Герберт Шилдт. Самоучитель C++. СПб.: БХВ-Петербург, 2009.
  7. Уилли Соммер. Программирование микроконтроллерных плат Arduino. БХВ, 2012.

Supplementary files

Supplementary Files
Action
1. JATS XML

Copyright (c) 2014 Kondratyev K.L., Kharitonov V.I.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies