VS
Программы
Пособия
Сейсмонитор
en
 

2. Идентификация одномерных линейных динамических объектов

Широкое распространение для идентификации линейных динамических объектов во временной области получил метод, основанный на применении фильтра Калмана. Реализация фильтра Калмана встречается во многих продуктах моделирования и идентификации, в том числе в ItACS.

Исходными данными для фильтра Калмана является набор данных «время-вход-выход», априорная информация о структуре модели исследуемого объекта (порядок системы), а также начальные значения определяемых параметров динамического звена и величина дисперсии.

Пример 1. Линейный динамический объект второго порядка.
Структурная схема известной модели исследуемого объекта, на вход которого подаётся постоянное воздействие, представлена на рисунке 1.

Рисунок 1. Структурная схема объекта для примера 1

Переходный процесс динамического объекта представлен на рисунке 2 и полностью завершается за 2 секунды.
Рисунок 2. Зависимость выходного сигнала динамического объекта от времени для примера 1

Предполагая, что известны только зависимости U(t) и Y(t), а также порядок динамического объекта (второй порядок числителя, второй порядок знаменателя), следует определить неизвестные параметры модели.

Для определения параметров применяется фильтр Калмана, причём для входного и выходного сигналов рассчитываются функции чувствительности второго рода, заполняется ковариационная матрица и последовательно происходит оценка неизвестных параметров.

Процесс идентификации автоматизирован и реализован в продукте ItACS, в котором необходимо подключить текстовый файл, содержащий в каждой строке набор 
«время-вход-выход» (экспорт зависимостей U(t) и Y(t) в один файл), и задать порядок динамического объекта. Диалоговое окно ItACS после выполнения приведённых действий представлено на рисунке 3.
 
Рисунок 3. Диалоговое окно ItACS для примера 1

Таким образом, при применении фильтра Калмана во временной области наибольшее отличие истинных значений от оценочных составляет 0,1867% при среднеквадратическом отклонении истинного выходного сигнала от оценочного 0,01058.

Для идентификации динамического объекта в частотной области следует иметь набор исходных данных «частота-действительная часть-мнимая часть». Получить эти данные при помощи проведения эксперимента на компьютере возможно в продукте MathCAD. Для этого необходимо описать передаточную функцию в частотной области и получить её действительную Re и мнимую Im части, которые вывести в файл. Пример реализации такого алгоритма представлен на рисунке 4.

Рисунок 4. Пример получения исходных данных в продукте MathCAD для примера 1

Аналогично в программе MATLAB получить экспериментальные данные возможно с использованием следующего кода:

W=tf([8 4 2],[1 14 100]);
N=200;
w=linspace(0, N, N);
[re,im]=nyquist(W,w);
f = fopen('ID.PRN','w');
for i=1:N 
  fprintf(f,'%f\t%f\t%f\n',w(i),re(i),im(i));
end;
fclose(f);

Тогда в программе IfACS созданный файл подключается, выбирается порядок звена, задаются начальные приблизительные значения параметров и выполняется идентификация, результаты которой представлены на рисунке 5.
 
Рисунок 5. Диалоговое окно IfACS для примера 1
 
Таким образом, при применении фильтра Калмана в частотной области наибольшее отличие истинных значений от оценочных составляет 0,8191% при среднеквадратическом отклонении истинного выходного сигнала от оценочного 0,00054.
 
Имеется ещё один метод идентификации во временной области, реализованный в продукте SimACS. Для его применения необходимо собрать модель с исследуемым объектом, задать в звене неизвестные параметры и запрограммировать их, подключить на модель файл с входным сигналом и файл с выходным сигналом, а также добавить блок сравнения реального и получаемого сигнала и блок идентификации.

Для подключения файла в SimACS используется внешнее воздействие, величина которого для входного сигнала соответствует имени файла и равна «$u.d», а для выходного сигнала «$y.d». Неизвестные параметры записываются как «?P0», «?P1» и т.д. и программируются соответственно как «R=P[0];», «R=P[1];» и т.д. Дополнительные нелинейные блоки с функцией CKO (пишется на латинице) и CID имеют титульное название «$0» и «$1» соответственно. На вкладке «Идентификация» задаётся число неизвестных параметров, равное пяти, и указывается параметр для алгоритма идентификации, равный 111. После этого выполняется идентификация, результаты которой представлены на рисунке 6.
 

Рисунок 6. Идентификация в SimACS для примера 1

Таким образом, при применении идентификации в продукте SimACS во временной области истинные значения не отличаются от оценочных, а среднеквадратическое отклонение истинного выходного сигнала от оценочного равно нулю.

Пример 2. Линейная система второго порядка.
Структурная схема известной модели исследуемого объекта, на вход которого подаётся постоянное воздействие, представлена на рисунке 7.

Рисунок 7. Структурная схема системы для примера 2

Для идентификации первого динамического звена следует вывести в отдельный файл выход с сумматора перед ним и выход динамического звена.

Тогда в продукте ItACS подключается текстовый файл, содержащий в каждой строке набор «время-вход-выход» и задаётся порядок передаточной функции (нулевой порядок числителя и первый порядок знаменателя). Диалоговое окно ItACS после выполнения приведённых действий представлено на рисунке 8.
 
Рисунок 8. Диалоговое окно ItACS для примера 2

Таким образом, при применении фильтра Калмана во временной области наибольшее отличие истинных значений от оценочных составляет 0,01% при среднеквадратическом отклонении истинного выходного сигнала от оценочного 0,09473.

Реализация идентификации динамического объекта в частотной области осуществляется в продукте MathCAD и представлена на рисунке 9.

Рисунок 9. Пример получения исходных данных в продукте MathCAD для примера 2

Тогда в программе IfACS созданный файл подключается, выбирается порядок звена, задаются начальные приблизительные значения параметров и выполняется идентификация, результаты которой представлены на рисунке 10.
 
Рисунок 10. Диалоговое окно IfACS для примера 2
 
Таким образом, при применении фильтра Калмана в частотной области наибольшее отличие истинных значений от оценочных составляет 0,1439% при среднеквадратическом отклонении истинного выходного сигнала от оценочного 0,00135.
 
Результаты сбора модели и результаты идентификации во временной области в продукте SimACS представлены на рисунке 11.
 

Рисунок 11. Идентификация в SimACS для примера 2

Таким образом, при применении идентификации в продукте SimACS во временной области истинные значения не отличаются от оценочных, а среднеквадратическое отклонение истинного выходного сигнала от оценочного равно нулю.

Рейтинг@Mail.ru
Все материалы сайта принадлежат лично Василию Щербакову,
а также соответствующим авторам при указании ссылки. Администрация сайта не несет никакой ответственности за стороннюю информацию. Вы можете пожаловаться на контент, если он нарушил Ваши права. Для этого свяжитесь с администрацией.
Допускается использование материалов в некоммерческих или учебных целях с указанием ссылки на этот сайт.