Теоретическая часть
Объекты автоматического управления, средства контроля и автоматизации являются динамическими частями замкнутых систем автоматического управления. Переходные процессы в таких системах определяются динамическими свойствами их компонентов. Изучение динамических свойств системы может осуществляться либо путем первоначального исследования динамических свойств ее элементов и последующей разработки динамической модели всей системы, либо определением динамических характеристик всей сложной системы в целом. Возможны также комбинированные методы, при которых определяются динамические свойства элементов и более сложных частей системы. Процесс определения математической модели объекта, отражающей основные динамические свойства элементов или всей системы в целом, называется идентификацией объекта его математической моделью или проще — идентификацией объекта. Задача идентификации объекта управления заключается в нахождении его математической модели, которая в некотором смысле наилучшим способом описывает его динамические свойства. Если конечной целью является нахождение оптимального управления, то достаточно, чтобы при заданном входе выход модели был эквивалентен выходу системы. В этом случае нет необходимости в том, чтобы структура и параметры модели совпадали со структурой и параметрами физической системы. Вообще же задача построения математической модели заключается в определении структуры объекта, нахождении значений параметров и, если необходимо, значении зависимых переменных, например, переменных состояния. Методы идентификации в большинстве случаев при заданной ограниченной точности измерений не позволяют построить сложную модель, эквивалентную по структуре и параметрам реальному объекту. Этот факт, однако, не мешает последующему использованию такой модели, если, конечно, она отражает существенные стороны объекта. Более того, именно в силу своей простоты такая модель наиболее пригодна для последующего использования.
Идентификацию можно провести либо методами физико-математического анализа, либо методами экспериментального анализа. При идентификации методами физико-математического анализа исходят из конструктивных данных и математического описания простейших процессов, которые имеют место в изучаемом объекте. Получают систему алгебраических и дифференциальных уравнений, содержащих как входные и выходные переменные, так и переменные состояния. В эти уравнения иногда включаются избыточные внутренние переменные объекта, которые можно не учитывать. При идентификации методами экспериментального анализа обычно находят математическую модель устойчивого объекта по измерениям его входных и выходных величин. В динамических системах подлежащий распознаванию объект зависит от мгновенных значений обучающих пар, представляющих собой функцию времени. Если принять х в качестве вектора состояния х € Rn, u - входного вектора u € RN, а у - выходного вектора у € RM, то общее описание нелинейной системы, функционирующей в дискретном времени, может быть представлено в виде
x (k +1)= f [ x (k), u (k)]; y (k)= F [ x (k)], где x (k), u (k), у (k) обозначают векторы мгновенных значений соответствующих переменных, f и F - знаки векторных статистических нелинейных функций, f € Rn, F € RM. Таким образом, проблема идентификации объекта сводится к построению такой его параметрической модели, чтобы отклики объекта y (k) и модели y ’(k) на одно и то же возбуждение u (k) совпадали в пределах допустимой погрешности е, т.е.: || у ’- у ||<= е.
Среди многих возможных подходов к реализации такой нелинейной системы выберем способ, основанный на применении нейронной сигмоидальной сети, в общем случае многослойной. На рис. 1 представлена универсальная схема подключения нейронной сети в качестве нелинейной модели динамической системы.
Рис. 1 Способ подключения нейронной сети для идентификации динамического объекта
Если ограничиться одним входом и выходом, а также представить векторы возбуждения u и отклика объекта у состоящими из элементов запаздывания, т.е. u (k) = [ u (k), u (k -l),..., u (k - p)]T, y (k) = [ y (k), y (k -1),…, y (k - q)]T, то общее описание нелинейной динамической модели можно выразить без вектора состояния х в форме y ’(k +1)=fun(y (k), u (k)). В этом уравнении y (k +1) обозначает отклик нелинейного объекта в момент k +1, a y ’(k +1) — отклик нейронной модели этого объекта в тот же момент времени. Разностный сигнал e (k +l) = y (k +l) – y ’(k +l) управляет процессом адаптации параметров модели. Ряд элементов запаздывания на входе системы образует линию задержки с ответвлениями (англ.: Tapped Delay Line - TDL). Идентификацию можно провести, используя языки программирования либо применяя специализированные пакеты позволяющие работать с нейронными сетями (NeuroSolution, MatLab). Нейронную сеть можно обучать в оперативном режиме (см. рис. 1) или по первоначально созданной выборке (см. рис. 2).
Рис. 2 Схема применяемая для создания обучающей выборки Описание блоков для схемы на рис. 2:
Transport delay (Simulink-Continious) Блок фиксированной задержки – обеспечивает временную задержку входного сигнала на заданное время. Параметры блока: Time delay – время задержки; Initial input – начальный уровень входа;
Transfer Fcn (Simulink-Continious) Блок передаточной характеристики – создает передаточную функцию H (s)= y (s)/ u (s) в виде отношения полиномов заданной степени. Numerator – вектор коэффициентов полиномов числителя; Denominator - вектор коэффициентов полиномов знаменателя.
Пример: (s2+2s+3)/(s3+s2+3s+4)
Numerator = [1 2 3]; Denominator = [1 1 3 4].
Ramp (Simulink-Sources) Источник линейно нарастающего воздействия вида F (t)= k*t. Параметры источника: Slope — угловой коэффициент временной зависимости k; Start time — время, начиная с которого воздействие нарастает; Initial value — начальный уровень воздействия.
Scope (Simulink-Sinks) Виртуальный осциллограф позволяет представить результаты моделирования в виде временных диаграмм с оцифрованной масштабной сеткой. основные параметры вкладки General: Number of axes — число осей (каналов) осциллографа, позволяет превратить одноканальный осциллограф в многоканальный. При этом осциллограф приобретает несколько входных портов, к которым можно подключать различные сигналы; Time range — пределы временного интервала; Tick labels — вывод/скрытие отметок по осям; Sampling — установка временных соотношений: Decimation (в десятичных долях времени со значением по умолчанию 1) или Sample Time (в тактах эталонного времени, по умолчанию 0). На вкладке Data history можно задать максимальное число точек осциллограмм для хранения и задать параметры хранения осциллограмм в рабочем пространстве системы MATLAB.
То Workspace (Simulink-Sinks) Блок позволяет записывать входные данные в виде матриц. На каждом такте моделирования формируется колонка, содержащая время такта и входные данные. Блок То Workspace записывает указанную матрицу (но без строки отсчетов времени) в рабочее пространство. Необходимо использовать представление данных в виде массива – Array.
Mux (Simulink-Signals & Systems) Блок реализует функцию мультиплексора.
Пример написания программы для обучения НС прямой динамике объекта по обучающей выборке: net=newff([0 200;0 200;0 100;0 100],[10 5 1],{'tansig', 'tansig','purelin'}); s=[ u';u1';u2';y1']; net.trainParam.epochs=800; net=train(net,s,y'); gensim(net,-1); В данной программе для обучения используется трехслойная НС с 10 нейронами в 1-ом скрытом слое, 5 нейронами во 2-ом скрытом слое и с одним нейроном в выходном слое. Вектор входа состоит из четырех сигналов: 1) значение сигнала управления (сигнал изменяется от 0 до 100 единиц); 2) задержанное на 1 такт значение сигнала управления (сигнал изменяется от 0 до 100 единиц); 3) задержанное на 2 такта значение сигнала управления (сигнал изменяется от 0 до 100 единиц). 4) задержанное на 1 такт значение выхода ОУ (сигнал изменяется от 0 до 200 единиц). Число тактов обучения равно 800.
Читайте также: Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|