Алгоритм нейросетевого управления гексаподом с реализацией на отечественном процессоре ARM архитектуры
Разработка нейросетевого алгоритма управления гексаподом на базе каскадной нейронной сети и исследование программного кода алгоритма на процессорах ARM архитектуры. Механизм космического назначения с параллельной кинематикой на базе платформы Стюарта.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 18.01.2021 |
Размер файла | 225,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Факультет «Информационные и управляющие системы»
БГТУ «Военмех»
Алгоритм нейросетевого управления гексаподом с реализацией на отечественном процессоре ARM архитектуры
Чирков С.А. студент магистратуры
Жуков Ю.А. старший преподаватель кафедра
«Системы приводов, Мехатроника и робототехника»
Аннотация
Статья посвящена разработке нейросетевого алгоритма управления гексаподом на базе каскадной нейронной сети и исследованию программного кода алгоритма на процессорах ARM архитектуры.
Ключевые слова: механизм с параллельной кинематикой, гексапод, нейросеть, нейросетевой регулятор, процессор.
Annotation
The article is devoted to the development of the neural network hexapod control algorithm based on the cascade neural network and the study of the software code of the algorithm on the ARM architecture processors.
Key wards: mechanism with parallel kinematics, hexapod, neural network, neural network controller, processor.
В настоящее время механизмы с параллельной кинематикой, выполненные по схеме платформы Стюарта (гексапод) [1], находят все большее применение в различных областях: станкостроение, подвижные симуляторы, системы наведения и позиционирования бортового оборудования. В качестве преимуществ таких механизмов можно выделить: высокие показатели грузоподъемности и точности позиционирования, возможность получения высоких значений скорости и ускорения. Сложная конструкция и математическое описание делают управление такими механизмом достаточно сложной задачей.
В настоящей работе будет рассмотрен алгоритм нейросетевого управления гексаподом, реализованный в пакете прикладных программ Matlab. Разработанный код алгоритма будет исследован на процессорах ARM архитектуры в среде Keil uVision 5.
Объектом исследования данной работы является механизм космического назначения с параллельной кинематикой - гексапод, разработанный на базе платформы Стюарта, состоящий из подвижной платформы 1 и неподвижного основания 2, которые механически соединены посредством шести линейных звеньев - штанг с использованием двухосевых шарниров. Каждая нога выполняет работу линейного привода и состоит из двух полуштанг 3 и 4. Электродвигатель в каждой штанге задает линейное перемещение одной полуштанги относительно другой. Линейное перемещение обеспечивается за счет механической винтовой передачи в ноге, преобразующей вращательное движение вала электродвигателя двигателя в поступательное движение полуштанги (Рисунок 1).
Рисунок 1. Эскиз гексапода
Структура разработанного алгоритма представлена на рисунке 2.
Рисунок 2. Структура нейросетевого управления гексаподом
На вход разработанной в пакете ММаЬ системы управления поступают желаемые значения положения, скорости и ускорения ног гексапода. ПД регулятор высчитывает по (1) значения усилий в ногах в соответствии с поступившими на его вход желаемыми и реальными значениями положения и скорости. Нейросетевой регулятор выдает в соответствии с входными данными выдает значение корректирующего усилия. Значения сил, рассчитанные в ПД и нейросетевом регуляторах, суммируются, полученное значение требуемых усилий в ногах подается на вход гексапода.
Т = ((1а - 0 + - 0) * (!)
Где а, Ку -коэффициенты настройки адрес регулятора, 1аЛа- задаваемые значения длин ног и скорости, І, I- измеряемые значения длин ног и скорости.
В качестве нейросетевого регулятора выступает двухслойная каскадная нейронная сеть с 10 нейронами в первом слое и 6 нейронами во втором. Обучающая выборка для нейросети строилась на результатах классического ПД управления гексаподом. Время обучение данной нейросети составило 1 минута 54 секунды. График обучения нейросети представлен на рисунке 3. Исходя из данного графика можно судить о минимальном значении среднеквадратической ошибки обучения каскадной нейросети. Best Validation Performance is 2.8982e-10 at epoch 1000
Рисунок 3. Обучение двухслойной каскадной нейросети
нейросетевое управление гексапод
Разработанный нейросетевой регулятор был реализован в виде кода на языке C. Программа была скомпилирована с помощью ARM компилятора версии 5.04. Общий размер программного кода составил 12064 байта. Работа полученного кода была исследована на отечественных процессорах ARM архитектуры производства АО «ПКК Миландр» (1986BE3T на базе Cortex M1, 1986BE93 на базе Cortex M3, 1986BE8T на базе Cortex M4F) в среде Keil uVision 5. Ниже в таблице представлены значения времени, потраченного на исполнение кода в зависимости от типа процессора:
Таблица 1. Реализация кода на процессорах ARM архитектуры
Процессор |
Время исполнения кода |
|
1986BE3T (140 МГц) |
2,84 мс |
|
1986BE93 (80 МГц) |
1,465 мс |
|
1986BE8T (100 МГц) |
1,04 мс |
Выводы
Разработан алгоритм нейросетевого управления гексаподом на базе двухслойной каскадной нейросети. Полученный алгоритм был реализован в виде кода на языке С, выполнение кода была исследована на отечественных процессорах ARM архитектуры. На основании полученных значений времени можно судить и высокой скорости исполнения программного кода алгоритма управления.
Использованные источники
1. Stewart, D.A platform with six degrees of freedom / D. Stewart // Proceedings of the Institution of mechanical engineers. 1965. Vol. 180, р!1. No. 15. Pp. 371-385.
2. Микроконтроллеры 1986ВЕ3Т, 1986ВЕ93, 1986ВЕ8Т
[Электронный ресурс]. Сайт АО «ПКК Миландр».Ц^:
http://ic.milandr.ru/products/mikrokontrollery_i_protsessory
Размещено на Allbest.ru
Подобные документы
Построение векторной модели нейронной сети. Проектирование и разработка поискового механизма, реализующего поиск в полнотекстовой базе данных средствами нейронных сетей Кохонена с применением модифицированного алгоритма расширяющегося нейронного газа.
курсовая работа [949,0 K], добавлен 18.07.2014Анализ функциональной структуры и обеспечивающей части АСУ. Проектирование функциональной структуры подсистемы управления проблемами, разработка модели в среде CPN Tools и алгоритма работы. Описание программного и технического обеспечения проекта.
дипломная работа [5,6 M], добавлен 26.06.2011Исследование нечеткой модели управления. Создание нейронной сети, выполняющей различные функции. Исследование генетического алгоритма поиска экстремума целевой функции. Сравнительный анализ нечеткой логики и нейронной сети на примере печи кипящего слоя.
лабораторная работа [2,3 M], добавлен 25.03.2014Оптимизация показателей эффективности функционирования технологического контура системы управления космическим аппаратом, исследование свойств его показателей. Настройка нейронной сети, гибридизация генетического алгоритма с алгоритмами локального поиска.
дипломная работа [4,5 M], добавлен 02.06.2011Разработка инфологической и даталогической модели, обобщенного алгоритма и средств защиты программы по автоматизации начисления заработной платы на основе платформы 1С:Предприятие 7.7, входные и выходные параметры, программный код проведения документа.
курсовая работа [2,0 M], добавлен 23.06.2011Разработка алгоритма и программы для распознавания пола по фотографии с использованием искусственной нейронной сети. Создание алгоритмов: математического, работы с приложением, установки весов, реализации функции активации и обучения нейронной сети.
курсовая работа [1,0 M], добавлен 05.01.2013Разработка алгоритма и программы на персональном компьютере двухслойной нейросети, аналогичной программы на микроконтроллере STM32F407VG. Этапы реализации обучения нейросети и передачи весовых коэффициентов на микроконтроллер по интерфейсу связи UART.
курсовая работа [1,4 M], добавлен 21.02.2016Разработка устройства управления двухконфорочной электроплитой на базе микроконтроллера, описание функциональных действий. Структурная схема аппаратной части. Проектирование программного обеспечения. Описание алгоритма работы системы и программы.
курсовая работа [709,3 K], добавлен 22.12.2010Представление о системе Arduino. Структура платформы Android. Выбор средств разработки. Разработка структур данных и алгоритмов. Характеристика Bluetooth модуля, блок реле, резисторов, диодов. Графический интерфейс приложения. Написание кода программы.
дипломная работа [4,0 M], добавлен 19.01.2017Разработка методики оценки кредитоспособности индивидуальных предпринимателей с использованием нейросетевых технологий. Оптимизация и упрощение нейронной сети. Экономическая эффективность инвестиций в разработанную интеллектуальную информационную систему.
дипломная работа [2,6 M], добавлен 29.06.2012