Идентификация статики и динамики технических объектов

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Курсовая работа

"Идентификация статики и динамики технических объектов"

математический модель статический

 

 

Введение

 

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

Курсовой проект состоит из следующих этапов:

1.Построение математической модели статического объекта

с помощью полиномов Чебышева;

с помощью степенных полиномов;

2.Построение математической модели динамического объекта

с помощью прямого метода наименьших квадратов

с помощью рекуррентного метода наименьших квадратов

3.Идентификация объекта с использованием средств пакета System Identification Toolbox программы Matlab

4.Диагностика технических систем и построение достаточно простых диагностических тестов

с помощью аппарата булевых функций;

с помощью алгоритма Яблонского-Мак-Класки;

с помощью алгоритма Синдеева

 

1.Построение математической модели статического объекта

 

.1 Построение математической модели статического объекта с помощью полиномов Чебышева

 

Многочлены Чебышева определяются по формуле:

 

Таблица

(1)

где , а - начальная точка; b - конечная точка.

, N - количество равных по длине отрезков, на которые n точек разбивают исходный интервал ().

 

Таблица. Искомые коэффициенты:

(2)Идентифицируемая функция: (3)Ошибка:

(4)Данные для выполнения данной части курсовой работы находятся в Приложении 1. Для построения модели воспользуемся программным средством MATLAB 6.5. Создадим M-file и будем писать в нем программный код для построения математической модели статистического объекта с помощью полиномов Чебышева. Пишем код программы:

 

clc

x=(-1:0.0222:1)

n=111;

N=n-1;

M=N/2;

a=min(x)=max(x)=((2*x-a-b)/(b-a))*M;=ones(1,91);=t/M;=(3*t.^2-M*(M+1))/(M*(2*M-1));=(5*t.^3-(3*M.^2+3*M-1)*t)/(M*(M-1)*(2*M-1));=sum(f0.*y)/sum(f0.^2)=sum(f1.*y)/sum(f1.^2)=sum(f2.*y)/sum(f2.^2)=sum(f3.*y)/sum(f3.^2)(5)X;=((2*X-a-b)/(b-a))*M;(vpa(collect(T)))=1=T/M;(vpa(collect(F1)))

F2=(3*T.^2-M*(M+1))/(M*(2*M-1));(vpa(collect(F2)))=(5*T.^3-(3*M.^2+3*M-1)*T)/(M*(M-1)*(2*M-1));(vpa(collect(F3)))=b0+b1*F1+b2*F2+b3*F3;(vpa(collect(FFF)))=7.9550*x.^3+.028574*x.^2-3.9896*x+0.010120;(x,y,x,fff)on=y=sum((y-fff).^2)/n;

 

% Находим среднюю квадратичную ошибку между построенной моделью %и исходными данными.

В результате проделанных операций получаем:

Результаты вычислений:

 

 

Рисунок 1. Исходная исследуемая модель.

Рисунок 2. Сглаженная с помощью полиномов Чебышева исследуемая модель.

 

.2 Построение математической модели статического объекта с помощью степенных полиномов

 

В векторно-матричной форме система уравнений примет вид:

 

(5)Где

 

(6)

Ф- прямоугольная матрица размерности n(m+1), задающая значения функций fj(x) при проведении n наблюдений;

B- т+1- мерный вектор искомых коэффициентов модели;

- п-мерный вектор замеров выхода объекта;

Т- операция транспонирования матрицы.

Информационная матрица Фишера ФТФ является квадратной, положительно-определенной и невырожденной, когда пт + 1 и хотя бы т+1 измерений выхода объекта проведено при различных уровнях входной переменной х. В этом случае матрица Фишера имеет обратную матрицу (ФТФ)-1 и решением системы (6) будет вектор

 

(7)

В этом случае модель имеет вид:

 

(8)

Пишем код программы:

 

clc

x=(-1:0.0222:1)

n=3i=1:91(i,:)=[1 x(i) x(i)^2 x(i)^3];;=(fish*fish)\fish*yi=1:91(i,:)=B(1)+B(2)*x(i)+B(3)*x(i)^2+B(4)*x(i)^3;

end;(x,F)

В результате проделанных операций получаем:

 

 

Рисунок 3. Сглаженная с помощью степенных полиномов исследуемая модель.

 

 

2. Построение математической модели динамического объекта

 

.1 Построение математической модели динамического объекта с помощью прямого метода наименьших квадратов

 

Пусть в модели вида:

 

(9)

n=2, a y(k), f(k) (k=0, 1, 2,...) точно измеряются и требуется определить параметры ?1, ?2 уравнения (9), которое принимает вид:

 

у(к)= ?1y(k - 1)+ ?2у(k - 2)+f(k) (к=0, 1, 2,...).(10)

Допустим теперь, что f(k) (k=0, 1,2,...) измеряется с погрешностями. Тогда для каждой пары уравнений вида (10), записанной для различных к (следующая пара порождается k=4, k=5, затем k=6, k=7 и т. д.), получим различные значения искомых параметров ?1 и ?2. Возникает мысль определить ?1 и ?2 так, чтобы разность (невязка) между правой и левой частями уравнения (10) при k = 2,...,N была наименьшей. Для этого сформируем сумму квадратов невязок

 

(11)

Необходимое и достаточное условие минимума LN составляет систему из двух алгебраических уравнений решая которую, найдем искомые числа ?1 и ?2.

 

Таблица

(12)(13)

Рассмотрим теперь определение параметров модели, когда f(k)

(k=0, 1,...) - неизмеряемая неизвестная функция.

Запишем авторегрессионную модель (9) в векторной форме:

 

Таблица

(14)где(15)

В (15) в отличие от (9) принято начальное значение k = n. Это связано с тем, что при kn вектор ?(k) содержит только результаты измерений, тогда как в противном случае он содержал бы неизвестные начальные условия у(-1), у(-2) и т. д.

Поскольку функция f(k) (k=0, l, 2,...) неизвестна, то будем искать такую оценку вектора ?, чтобы сумма квадратов невязок

 

<