ИСПОЛЬЗОВАНИЕ КОНЕЧНОГО АВТОМАТА ДЛЯ ОРГАНИЗАЦИИ СЛОЯ ВЫСОКОУРОВНЕВЫХ ДЕЙСТВИЙ В СИСТЕМЕ УПРАВЛЕНИЯ МАНИПУЛЯТОРНЫМ РОБОТОМ Погорелов А.Д.1, Селезнёв А.А.2
'Погорелов Алексей Дмитриевич — студент магистратуры; 2Селезнёв Александр Андреевич — студент магистратуры, кафедраробототехнических систем и мехатроники, факультет специального машиностроения, Московский государственный технический университет им. Н.Э. Баумана,
г. Москва
Манипуляторные системы сегодня используются повсеместно и выполняют множество разных задач. В данной работе показано устройство конечного автомата в системе управления сложным манипуляторным роботом, позволяющее упростить разработку за счет простой структуры, модульности и наглядности.
Разрабатываемая система управления состоит из нескольких принципиальных уровней (рис. 1). На высшем уровне находится человек-оператор, который задаёт системе последовательность высокоуровневых действий (например, установить объект в тиски, осмотреть рабочую зону и т.д.). Также задавать последовательность таких действий может управляющая система с элементами ИИ, получающая на вход общее описание требуемого результата. Сами высокоуровневые действия оперируют более простыми навыками: планирование безопасной траектории, перемещение МР по траектории и т.д. Уровень навыков, в свою очередь, управляет оборудованием посредством драйверов.
Рис. '. Структура системы управления манипуляторным роботом
Работа мотивированна недостатками при разработке слоя высокоуровневых действий в виде последовательных функций. Это крайне неудобно: разработка такого кода усложняется, отладка и поддержка становятся тем затруднительнее, чем больший функционал реализует система управления. Эти эффекты вызваны необходимостью введения в систему различных проверок на ошибки на разных этапах работы и соответствующей разной реакцией системы на данные ошибки [2]. Более того, в таких условиях значительно снижается отказоустойчивость системы - уследить за всеми возможными вариантами развития событий становится практически невозможно.
Исходя из вышеописанного опыта, было решено разрабатывать слой высокоуровневых действий в виде конечного автомата. Такая структура позволяет разбить сложную манипуляторную систему на отдельные состояния с определённым набором действий и конкретными условиями перехода из одного в другое. Это в разы упрощает разработку и отладку кода.
Конечный автомат представлен в виде состояний, переходов между ними, и исходов. Действия выполняются, в отличие от классических автоматов, в состояниях, а переходы - это условия. Каждое состояние может являться контейнером для другого конечного автомата.
Входной точкой разрабатываемого конечного автомата является состояние ожидания команды - Idle (рис. 2). Находясь в нём, система простаивает до тех пор, пока с верхнего слоя не придёт какая-либо команда. При получении команды система переходит в соответствующее состояние исполнения данной команды, являющее собой отдельный конечный автомат, решающий конкретную задачу.
Рис. 2. Общий вид слоя высокоуровневых действий
При выполнении или невыполнении полученной команды автомат завершает работу с заранее определённым исходом (успех, ошибка захвата, ошибка движения, ошибка планирования и т.д.) Данные этого исхода передаются на верхний уровень так, что оператор или ИИ могут использовать их для планирования дальнейших действий.
Рассмотрим автомат перемещения манипулятора в заданную точку. На вход ему подаются желаемые координаты схвата. Эти координаты используются состоянием планирования [1] (Planing) для построения траекторий из начального положения в требуемое (рис. Рис. 3).
Рис. 3. Состояние перемещения манипулятора в заданное положение
В случае успеха построения траекторий, они передаются состоянию исполнения (Ысу1щСС), которое обеспечивает их отработку. Одновременно с исполнением траектории
39
происходит контроль датчиков, чтобы прервать движение в случае, например, если манипулятор наткнётся на внезапно появившееся препятствие.
В результате имеем структуру, избавляющую разработчика от недостатков последовательного подхода к программированию подобных систем управления.
Список литературы
1. LaValle S. Planning Algorithms. Cambridge University Press. 844 p., 2006.
2. Siciliano B., Khatib O. Handbook of Robotics, Springer-Verlag Berlin Heidelberg. 1611 p., 2008. DOI:10.1007/978-3-540-30301 -5.
ТЕХНОЛОГИЯ LONG-TERM EVOLUTION (LTE) Маркин А.Е.
Маркин Андрей Евгеньевич - бакалавр, студент магистратуры, кафедра робототехники и мехатроники, отдел магистратуры, Донской государственный технический университет, г. Ростов-на-Дону
1. Технология Long-Term Evolution (LTE)
Операторы сотовой связи используют группу стандартов UMTS (англ. Universal Mobile Telecommunications System-Универсальная Мобильная Телекоммуникационная Система), которая определяет технологию 3G в сетях GSM по всему миру. LTE является следующим шагом в развитии мобильной связи.
Технология LTE поддерживает развёртывание на следующих частотах: 1.4 МГц, 3 МГц, 5 МГц, 10 МГц, 15 МГц и 20 МГц [1].
1.1. Архитектура LTE
Архитектура для мобильной сети при использовании LTE упрощается в сравнении с 3G, так как LTE является сетью только для передачи интернет-пакетов. Технология не поддерживает обработку голосовых вызовов и обмен короткими сообщениями.
Если рассматривать SAE (с англ.System Architecture Evolution - Эволюция системной архитектуры) LTE является упрощенной версией гети UMTS.
Для воплощения сети LTE используется:
а) eNodeB (evolved node B) - базовая станция LTE;
б) MME (mobile management entity) - Узел Управления Мобильностью;
в) HSS (home subscriber server) - сервер абонентских данных сети сотовой связи;
г) SGW - обслуживающий шлюз;
д) PGW - пакетный шлюз.
Все компоненты рассмотрим как часть EPC (с анг. Evolved Packet Core-Основные компоненты архитектуры) (Рисунок 1). На башне eNodeB подключается к EPC.
Рис. 1. Основные компоненты архитектуры LTE 40