Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели

В качестве примера моделирования в среде Simulink систем управления с использованием нейросетевых регуляторов используем демонстрационный пример пакета, иллюстрирующий систему управления с эталонной моделью звеном («рукой») робота и вызываемый наборомmrefrobotarm в командном окне MATLAB, Рис.16.1.

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.1. Структура нейросетевой системы управления в среде Simulink.

При реализации системы использованы 2 нейронные сети – для регулятора и для модели объекта управления.

В этом демонстрационном примере цель заключается в управлении движением одного звена робота, схематично показанного на Рис.16.2.

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.2. Схематичное изображение движения звена робота

Управление движения звена представлено соотношением:

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru ,

где φ – угол поворота звена, u – момент, развиваемый двигателем постоянного тока.

Соответствующая динамическая модель, реализованная в среде Simulink, приведена на Рис.16.3.

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.3. Структурная динамическая модель звена робота.

Цель обучения регулятора состоит в том, чтобы движение звена соответствовало выходу эталонной модели:

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru ,

где Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru – выход эталонной модели, r – задающий сигнал на входе модели.

Структурная схема, поясняющая принцип построения системы управления с эталонной моделью, показана на Рис.16.4.

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.4. Система управления с эталонной моделью

На рисунке:

CommandInput – задающий сигнал,

ReferenceModel – эталонная модель,

NNController – нейросетевой регулятор,

NNPlantModel – нейронная сеть модели объекта,

Plant – объект управления,

ModelError – ошибка модели,

ControlError – ошибка управления,

PlantOutput – выход объекта.

В приведенной структуре следует выделить эталонную модель, которая задает желаемую траекторию движения звена робота, удовлетворяющему второму из приведенных дифференциальных уравнений, а также нейронные сети, реализующие регулятор и объект управления.

В данном случае архитектура НС регулятора описывается профилем 5–13–1 (5входов, 13 нейронов скрытого слоя и один выход), т. е. содержит два слоя нейронов. Из двух слоев состоит и нейронная сеть модели объекта. Линии задержки, используемые для формирования входов НС, имеют такт дискретности 0.05 с.

Для начала работы с демонстрационным примером необходимо активизировать блок ModelReferenceController (см. Рис.16.1) двойным щелчком левой кнопки мыши. Появится окно, показанное на Рис.16.5.

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.5. Окно настроек нейросетевых моделей.

Особенность рассматриваемой системы управления состоит в том, что следует построить две нейронные сети – модель объекта управления и самого регулятора. Начнем с построения модели объекта управления, выбрав в окне настроек кнопку PlantIdentification. При этом откроется окно PlantIdentification, которое показано на Рис.16.6.

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.6. Окно для построения нейросетевой модели ОУ.

Для построения нейросетевой модели ОУ следует выбрать кнопку GenerateTrainingData. Это приведет к тому, что будет запущена программа генерации обучающей последовательности на интервале 500с. для модели рассматриваемого объекта управления. Программа генерирует обучающие данные путем воздействия ряда случайных ступенчатых сигналов на модель Simulink объекта. Графики входного и выходного сигнала объекта выводятся на экран (Рис.16.7).

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.7. Сигнал ОУ в режиме его идентификации

По завершении генерации обучающей последовательности пользователю предлагается либо принять данные (AcceptData), либо отказаться от них (RejectData).Примем данные, после чего приложение возвратит нас к несколько измененному окну PlantIdentification. Здесь кнопка GenerateTrainingData заменена на кнопку EraseGeneratedData, что позволяет удалить сгенерированные данные.

Для обучения нейронной сети следует воспользоваться кнопкой TrainNetwork. Начнется обучение нейросетевой модели. После завершения обучения его результаты отображаются на графиках, как это показано на Рис.16.8 и 16.9, где построены соответствующие результаты обучения и тестирования на контрольном множестве.

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.8. Результат обучения модели Рис.16.9 Результат тестирования

на обучающем множестве модели на контрольном множестве

Текущее состояние отмечено в окне PlantIdentification (Рис.16.10) сообщением «Обучение завершено».

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.10. Окно идентификации объекта с Рис.16.11. Выход эталонной модели сообщением об окончании процедуры и объекта управления

Вы можете сгенерировать или импортировать новые данные, продолжить обучение или сохранить полученные результаты, выбрав кнопки OK или Apply.

Выберем кнопку OK. В результате параметры нейросетевой модели объекта управления будут введены в блок ModelReferenceControllerсистемы Simulik, после чего произойдет возврат в окно ModelReferenceController(Рис. 16.11).

Теперь для обучения регулятора следует выбрать кнопку GenerateTrainingData, чтобы сгенерировать обучающие данные. Эти данные в виде графиков появятся в окне Input-OutputDataforNNModelReferenceController и снова необходимо подтвердить или опровергнуть эти данные. Если данные приемлемы, то в окне ModelReferenceController следует выбрать кнопку TrainController (Обучить регулятор). После того как обучение закончится, графики выходов эталонной модели и объекта управления выводятся на экран. Обучение регулятора занимает, в силу применяемого алгоритма обучения (динамического варианта метода обратного распространения ошибки), весьма значительное время.

По окончании обучения регулятора необходимо нажать на кнопку OK, вернуться к модели Simulik (Рис.16.1) и начать моделирование, выбрав опцию Start из меню Simulation. Графики эталонного сигнала и выхода объекта управления показаны на Рис.16.12.

Система автоматического управления звеном робота с нейросетевым регулятором на основе эталонной модели - student2.ru

Рис.16.12. Графики эталонного сигнала (ступенчатый процесс)

и выхода объекта

Из анализа полученных данных следует, что реакция системы на ступенчатые воздействия со случайной амплитудой носит монотонный характер и обрабатывается в пределах 3…4 с. Это свидетельствует о хорошем качестве регулятора ModelReferenceController для управления звеном робота-манипулятора.

Литература

1. Бесекерский В. А., Попов Е.П. Теория систем автоматического управления

/ В. А. Бесекерский, Е. П. Попов. – М.: Профессия, 2007. – 752 с.

2. Борисевич А.В. Теория автоматическогоуправления: элементарное введение

с применением MATLAB/ А.В. Борисевич–СПб.: Изд-во Политехн. ун-та, 2011. - 200 с..

3. Щербаков В.С., Руппель А.А., Глушец В.А. Основы моделирования систем автоматического регулирования и электротехнических систем в среде MATLAB И SIMULINK: Учебное пособие./ В.С.Щербаков, А.А.Руппель, В.А.Глушец – Омск: Изд-во СибАДИ, 2003. – 160 с.

4. Мирошник И. В. Теория автоматического управления. Линейные системы / И. В. Мирошник – СПб: Питер, 2005. – 336 с.

5. Мирошник И.В. Теория автоматического управления. Нелинейные и оптимальные системы / И. В. Мирошник – СПб: Питер,2006. – 272 с.

6. Советов Б. Я. Моделирование систем / Б. Я. Советов, С. А.Яковлев – М.: Высшая школа, 2009. – 344 с.

7. Поляков К.Ю. Теория автоматическогоуправления для «чайников»/К.Ю. Поляков. –СПб: Питер, 2008. – 80 с.

8. Дорф Р., Бишоп Р.Современные системы управления /Р.Дорф ,Р.Бишоп– М.: Бином, Лаборатория базовыхзнаний, 2004.– 831 с.

9. Моделирование и визуализация движений механических систем вMatlab: Учебное пособие / В.С. Щербаков, М.С. Корытов, А.А. Руппель,В.А. Глушец, С.А. Милюшенко–Омск, Издательство СибАДИ, 2007. – 85 с.

10. Дьяконов В. П. Simulink 5/6/7 Самоучитель/ В. П. Дьяконов. –М.: Издательство ДМК, 2008. – 781 с.

11. Лазарев Ю. Моделирование процессов и систем в MATLAB. Учебный курс. /Ю.Лазарев– СПб.: Питер, 2005. – 512 с.

12. Терехов В.А. Нейросетевые системы управления: Учеб. Пособие для вузов/В.А.Терехов, Д.В. Ефимов, И.Ю. Тюкин. – М.: Высш. шк. 2002. – 183 с.

13. Леоненков А.В. Нечеткое моделирование в среде MATLABи fuzzyTech/А.В.Леоненков– СПб: БХВ – Петербург, 2003. – 720 с.

Содержание

Наши рекомендации