Ідентифікація

Автор: Пользователь скрыл имя, 31 Марта 2013 в 20:31, курсовая работа

Описание работы

Маючи справу з системою, нам необхідна будь-яка схема співвідношення між собою, що характеризують систему змінних. В широкому розумінні ми будемо називати моделлю сукупність зв‘язків між сигналами, що спостерігаються. Очевидно, що моделі можуть приймати різноманітну форму і записуватись з різною степінню математичної деталізації. Вибір того рівня складності, який робить модель корисною, визначається запланованим використанням.

Работа содержит 1 файл

курсач.docx

— 297.13 Кб (Скачать)

 

Продовження таблиці 2.1

Номер точки

Сигнал  V(t)

Номер точки

Сигнал  V(t)

t

V(t)

t

V(t)

88

117,311048

1,25683761

101

132,6479626

1,359572659

89

118,252789

0,70269101

102

134,1278403

1,010896141

90

119,463598

1,25061125

103

134,9350463

0,898821546

91

120,943475

0,69957782

104

136,2803897

1,048254339

92

122,154284

1,03268842

105

137,22213

1,014009324

93

122,96149

0,56882413

106

138,432939

1,328440827

94

124,1723

1,2225926

107

140,9890914

0,839671066

95

125,517643

1,27240353

108

142,1999004

1,026462057

96

126,593918

0,89570836

109

143,0071064

1,40004404

97

127,939261

1,15721575

110

144,4869841

0,96108521

98

129,015536

1,12608392

111

145,4287245

0,889481997

99

130,226345

1,40315722

112

145,4287245

0,889481997

100

131,302619

1,13231029

     

 

 

2.2 Побудова моделі за допомогою поліноміальної інтерполяції поліномом 7-го степеня

Побудова моделі за допомогою  поліноміальної інтерполяції поліномом 7-го степеня виконуємо тим же способом як і для вхідного сигналу U(t), що описаний в першому розділі.

Нижче наведено лістинг програмного  модуля в середовищі Matlab:

 

clear;

load wt2.mat

n=112;

for i=1:8;

    for j=1:8;

        A(i,j)=sum(x.^(i+j-2));

    end;

end;

for i=1:8;

    B(i)=sum(x.^(i-1).*y);

end;

a=B/A;

t=1:150;

f=a(8)*t.^7+a(7)*t.^6+a(6)*t.^5+a(5)*t.^4+a(4)*t.^3+a(3)*t.^2+a(2)*t+a(1);

 

hPlot=plot(t,f);

hold on;

plot(x,y,'red');

xlabel('t')

ylabel('V(t)')

axis([0,150,0,2]);

set (hPlot,'LineWidth',2);

 

Нижче наведемо графічну модель (рис. 3.1):

Рис. 2.1. Поліноміальна модель вхідного сигналу V(t) поліномом n-го порядку

 

Розв’язавши систему, отримаємо  такі значення коефіцієнтів:

 

a0= 0,961150227274003;

a1 = 0,0207453717514716;

a2 = -0,00155447747594958;

a3 = 4,67456649150716e-05;

a4 = -6,56894969315974e-07;

a5 = 4,47485037051045e-09; 

a6 = -1,33388860355846e-11;

a7 = 1,09273923558494e-14.

 

2.3 Побудова моделі за допомогою полінома Чебишева

Побудова моделі за допомогою  полінома Чебишева виконуємо тим же способом як і для вхідного сигналу U(t), що описаний в першому розділі.

Нижче наведено лістинг програмного  модуля в середовищі Matlab:

 

clear;

load wt2.mat;

Cheb_por=7;

n=112;

fi=ones(n,7);

for i=1:n

    fi(i,2)=x(i)-(1/n)*sum(x);

end;

for p=3:Cheb_por; i=1:n;

        beta(p)=-sum(x(i).*fi(i,p-1).^2)/sum(fi(i,p-1).^2);

        gama(p)=-sum(x(i).*fi(i,p-1).*fi(i,p-2))/sum(fi(i,p-1).^2);

        fi(i,p)=(x(i)+beta(p)).*fi(i,p-1)+gama(p).*fi(i,p-2);

end;

A=fi'*fi;

B=fi'*y;

a=A\B;

for i=1:n; j=1:7; 

        Cheb(i)=a(j)'*fi(i,j)';

end;

hPlot=plot(x,Cheb);

hold on;

plot(x,y,'red');

xlabel('t');

ylabel('V(t)');

set( hPlot, 'LineWidth', 2 );

Нижче наведено модель досліджуваного об’єкта (рис. 2.2).

Розв’язавши систему, отримаємо  такі значення коефіцієнтів:

 

a0 = 0,599098936648270;         a6 = -7,58797315974953e-12;

a1 = -0,000632515523893811;         a7 = 0,500000000000000.

a2 = -0,000111749368741249; 

a3 = 9,28319531184173e-07;

a4 = 5,62642320787159e-08;

a5 = -1,77372119741533e-10;

Рис. 2.2. Модель вхідного сигналу V(t), побудована поліномом Чебишева

 

2.4 Побудова моделі за допомогою перетворення Фур’є

Побудова моделі за допомогою  перетворень Фур’є виконуємо  тим же способом як і для вхідного сигналу U(t), що описаний в першому розділі.

Нижче наведено лістинг програмного  модуля в середовищі Matlab:

 

clear;

  load wt2.mat;

n=112;

  Fur_por=4;

  m=Fur_por;

for k=1:m+1

A=(1/n)*sum(y);

B(k)=(2/n)*sum(y.*cos(k*x));

C(k)=(2/n)*sum(y.*sin(k*x));

end

 for k=1:m+1

for i=1:n

FS(i,1)=A+sum(B(k)*sin(k*x(i))+C(k)*cos(k*x(i)));

end

end

  plot(x,y,'red')

hold on;

hPlot=plot(x,FS);

xlabel('t')

  ylabel('V(t)')

  axis([0,150,-0.5,2.5]);

  set(hPlot,'LineWidth',2);

 

Побудована модель представлена нижче, на рис. 2.3.

Рис. 2.3 - Модель вхідного сигналу V(t), побудована за допомогою перетворення  Фур’є

Розв’язавши систему, отримаємо  такі значення коефіцієнтів:

 

a0 = 1,05759388904919;

         

 

 

 

2.5 Статистична обробка даних

Розрахуємо коефіцієнти  дисперсії, кореляції та коваріації.

Розрахунок виконуємо  тим же способом як і для вхідного сигналу U(t), що описаний в першому розділі.

Нижче наведено лістинг програмного  модуля в середовищі Matlab:

clear;

  load wt2.mat;

n=110;

i=1:n;

  tser=sum(x)/n;

  fser=sum(y)/n;

  cov=sum((x-tser).*(y-fser))/(n-1)

  Dt=sum((x-tser).^2)/(n-1)

Du=sum((y-fser).^2)/(n-1)

  r=cov/sqrt(Dt*Du)

 

Після виконаного розрахунку отримаємо:

 

cov = 0.4134;

Dt = 1.7345e+003;

Du = 0.0766;

r = 0.0359.

 

 

 

2.6 Знаходження періодограми сигналів

Побудову періодограми виконуємо тим же способом як і для вхідного сигналу U(t), що описаний в першому розділі.

Нижче наведено лістинг програмного  модуля в середовищі Matlab:

 

clear;

load wt2.mat;

n=112;

for k=1:n

w(k,1)=(2*pi*(k))/n;

U(k,1)=(1/sqrt(n))*sum(y.*exp(-j*w(k).*x));

end

  Ui=imag(U);

  Ur=real(U);

  subplot(1,2,1);

  plot(w,Ui);

  title('a)');

  xlabel('Нормована частота(Гц)');

ylabel('Спектр щільності(Дб/Гц)');

  grid on

  subplot(1,2,2);

  plot(w,Ur);

  title('б)');

  xlabel('Нормована частота(Гц)');

  ylabel('Спектр щільності(Дб/Гц)')

 %axis([0,6,-3,3]);

grid on

 

 

Рис. 5.4 - Періодограма вхідного сигналу V(t), де а) – уявна частина,

б) – дійсна частина 

 

 

 

 

 

 

 

 

 

2.7 Вибір оптимальної моделі

Вибір оптимальної моделі виконуємо тим же способом як і  для вхідного сигналу U(t), що описаний в першому розділі.

 

Оптимальні значення моделей

Таблиця 2.2

Вид функції

Поліном

Поліном Чебишева

Функція Фур’є

Значення критерію

1.773928e-032

8.5743e-016

0.0137


 

Нижче наведено лістинг програмного  модуля в середовищі Matlab:

 

for i=1:a;n=112;

    Spol_Vt=sqrt(sum((y(i)-f(i)).^2/(n-2)))

end;

 

SCheb_Vt=sqrt((sum(y-Cheb').^2)/(n-2))

SFur_Vt=sqrt((sum(y-FS).^2)/(n-2))

 

Як видно з таблиці 2.2, значення критерію мінімальне у тому випадку, коли апроксимуючою функцією виступає поліном 7-го степеня, отже модель побудована даним чином буде оптимальною.

 

Розділ 3. Обробка вихідного сигналу Y(t), знаходження апроксимуючої функції та вибір оптимальної моделі

 

3.1 Табулювання сигналу

Табулювання графіка функції (сигналу) проводимо тим же способом як і для вхідного сигналу U(t), що описаний в першому розділі.

Після того як ми отримаємо  дві матриці даних: матриця даних зміни часу – xt та  матриця даних зміни значення сигналу залежно від часу – yYt, складемо таблицю табулювання.

im_zd=imread('wt3.jpg');

imshow(im_zd);

im_ut=imcrop(im_zd);

imshow(im_ut);

x=[0 150];

y=[-2 0];

image(im_ut,'XData',x,'YData',y);

[x, y]=getline

>> y=abs(y)

 

 

 

 

 

 

 

 

Таблиця 3.1

Табулювання вхідного сигналу Y(t)

Номер точки

Сигнал  Y(t)

Номер точки

Сигнал  Y(t)

t

Y(t)

t

Y(t)

1

5,51379614

0,96419839

15

24,34839157

1,256837613

2

7,12819003

1,09495209

16

26,50091676

0,905047913

3

7,93538698

1,33155401

17

28,11531066

1,172781667

4

9,28071522

1,25372443

18

29,32610608

0,839671066

5

10,3569778

0,94551929

19

30,40236867

0,799199684

6

11,4332404

0,9081611

20

31,47863127

1,122970736

7

12,509503

1,53079773

21

33,63115646

1,54636365

8

14,9310939

0,77429422

22

36,18728013

0,758728303

9

16,1418893

0,99221704

23

37,39807555

1,001556592

10

17,083619

1,01089614

24

38,20527249

0,852123798

11

18,5634801

1,34400674

25

39,68513356

1,035801607

12

19,3706771

1,39381767

26

40,89592898

0,702691005

13

20,985071

0,99844341

27

42,10672441

1,073159805

14

23,272129

0,78986013

28

43,31751983

1,045141156


 

Продовження таблиці 3.1

Номер точки

Сигнал  Y(t)

Номер точки

Сигнал  Y(t)

t

Y(t)

t

Y(t)

29

44,1247168

0,89259518

60

86,63708932

1,437402238

30

45,7391107

1,35023311

61

88,92414734

0,712030555

31

46,6808404

1,39381767

62

90,13494276

1,515231818

32

49,2369641

1,07004662

63

91,480271

0,973537943

33

50,4477595

1,2412717

64

93,49826337

0,764954669

34

51,3894893

1,40315722

65

96,18891986

1,169668484

35

52,7348175

1,10429164

66

96,99611681

0,817878783

36

53,6765473

1,07627299

67

98,34144505

0,901934729

37

55,0218756

1,41249677

68

99,82130612

0,783633768

38

56,0981382

0,51590001

69

101,7047657

1,291082628

39

57,3089336

1,2786299

70

103,1846267

1,169668484

40

58,3851962

1,61796686

71

103,9918237

1,110518003

41

59,7305244

1,02023569

72

105,2026191

1,387591307

42

62,0175824

0,71825692

73

106,6824802

0,96108521

43

63,093845

1,19768713

74

107,7587428

0,833444699

44

64,1701076

0,64665371

75

108,9695382

1,070046622

45

66,9952969

1,00155659

76

109,911268

0,786746951

46

68,8787565

1,16032893

77

111,2565962

0,758728303

47

69,9550191

1,1291971

78

113,678187

1,222592598

48

71,7039458

1,23193215

79

114,6199168

1,210139865

49

72,3766099

0,87391608

80

115,9652451

0,606182326

50

73,5874053

1,21636623

81

117,1760405

1,094952087

51

74,9327336

0,57193731

82

118,3868359

0,979764309

52

76,4125947

1,07004662

83

119,3285657

0,998443408

53

77,4888573

1,06382026

84

120,4048283

1,085612538

54

78,2960542

1,23815851

85

122,0192222

1,113631187

55

79,6413824

0,85523698

86

123,0954848

0,82410515

56

80,8521779

1,29419581

87

125,3825428

1,291082628

57

81,7939076

1,30976173

88

126,8624039

1,182121217

58

83,2737687

0,62174824

89

127,8041336

1,203913499

59

85,5608267

0,74627557

90

129,014929

1,035801607

Информация о работе Ідентифікація