Построение переходных процессов в дискретных САУ

Можно изменить время квантования TF, SS, или ZPK-модели sys1, используя команду: sys2 = d2d (sysl, Ts). Новый период квантования Ts не должен быть кратным предыдущему.

Реакцию на единичный скачок для систем с различным периодом квантования можно получить следующим образом:

>> h1=tf([1 0.4], [1 -0.7], 0.1)

Transfer function:

z + 0.4

-------

z - 0.7

Sampling time: 0.1

>> h2=d2d(h1, 0.25)

Transfer function:

z + 1.754

---------

z - 0.41

Sampling time: 0.25

>> step(h1, '-', h2, '-')

Рисунок 2 – Дискретизация непрерывной модели с экстраполятором нулевого порядка

Можно также использовать c2d для дискретизации систем с запаздыванием:

- задержка tau секунд в непрерывной модели отображена к задержке к тактов в дискретизированной модели, где k = fix(tau/Ts);

- остаточная задержка tau - k*Ts поглощается коэффициентами дискретизированной модели (только для методов с экстраполяцией нулевого и первого порядков).

Например, для того, чтобы дискретизировать передаточную функцию с использованием экстраполяции нулевого порядка при периоде квантования 0,1, следует выполнить:

>> h=tf(10, [1 3 10], 'inputdelay', 0.25)

Transfer function:

exp(-0.25*s) * ------------------

s^2 + 3 s + 10

>> hd=c2d(h,0.1)

Transfer function:

0.01187 z^2 + 0.06408 z + 0.009721

z^(-3) * -------------------------------------------------

z^2 - 1.655 z + 0.7408

Sampling time: 0.1

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

Рисунок 3 – Сравнение реакций на ступенчатое воздействие для непрерывной и дискретной систем

Для построения дискретной модели, заданной в пространстве состояний или в форме передаточной функции системы можно также использовать команду c2dm, записанную одним из следующих способов:

[numDz, denDz] = c2dm (num, den, Ts,'zoh')

[F,G,H,J] = c2dm (А, В, C, D, Ts, 'zoh')

Пример построения дискретной модели по передаточной функции:

Пусть есть непрерывная передаточная функция

,

где ; ; ; ; с.

Создадим внутренний файл системы MATLAB, так называемый m-файл. Для этого в главном окне следует выбрать меню File → New → M-File:

M = 1;

b = 10;

k = 20;

num = [1];

den = [M, b, k];

Ts = 1/100;

[numDz, denDz] = c2dm(num, den, Ts, 'zoh')

Далее файл следует сохранить под любым англоязычным именем, например lab1.m. Далее, в меню редактора следует выбрать Debug → Run lab1.m. После этого результат его работы появится в рабочем пространстве MATLAB.

Если теперь в главном окне набрать имя файла, то получим результат его выполнения:

>> lab1

numDz =

1.0e-004 *

0 0.4837 0.4678

denDz =

1.0000 -1.9029 0.9048

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

Пример построения дискретной модели по матрицам в пространстве состояний:

Пусть есть непрерывная передаточная функция

где ; ; ; ; с.

Создаем еще один файл, например, lab1_.m:

M = 1;

b = 10;

k = 20;

A = [0 1; -k/M -b/M];

B = [0; 1/M];

C = [1 0];

D = [0];

Ts = 1/100;

[F, G, H, J] = c2dm(A, B, C, D, Ts, 'zoh')

Запуск этого файла дает следующий результат:

>> lab1_

F =

0.9990 0.0095

-0.1903 0.9039

G =

0.0000

0.0095

H =

1 0

J =

Корни полиномов можно найти, воспользовавшись функцией roots(A).

Последовательность выполнения работы:

1. Для заданной передаточной функции непрерывной САУ (таблица 1) определить передаточные функцию дискретизированной САУ с использованием TF, ZPK и SS – классов, а также обоих видов экстраполяторов (ZOH и FOH).

2. Построить переходные процессы при реакции аналоговой и дискретной САУ на единичное ступенчатое воздействие для случая применения экстраполятора ZOH и FOH, совместив в одной системе координат зависимости для ZOH-системы при периодах квантования и аналоговой САУ, а в другой – то же для FOH-системы.

3. Выполнить пункт 1, используя m-файлы и возможности классов TF и SS.

4. Сделать выводы о влиянии периода квантования на характер переходного процесса.

Таблица 1 – Передаточные функции непрерывной САУ

Передаточная функция  
Вариант Параметры передаточной функции  
, с
  0,25   0,0011 0,212     0,012
  0,35   0,0022 0,325     0,023
  0,45   0,0038 0,341     0,031
  0,55   0,0098 0,554     0,045
  0,17   0,0012 0,551     0,052
  0,28   0,0096 0,355     0,066
  0,96   0,0017 0,987     0,071
  0,85   0,018 0,355     0,082
  0,37   0,036 0,478     0,093
  0,24   0,064 0,341     0,013
  0,73   0,097 0,951     0,025
      0,032 0,581     0,036
  0,95   0,0018 0,552     0,047
  1,2   0,0079 0,694     0,059
  2,5   0,0067 0,155     0,061
  3,7   0,0014 0,364     0,073
  4,6   0,0132 0,615     0,081
  7,3   0,0284 0,187     0,092
  6,2   0,0311 0,284     0,011
  9,2   0,154 0,384     0,023
  4,8   0,0715 0,145     0,038
  7,7   0,0641 0,525     0,042
  6,5   0,0321 0,441     0,058
  0,06   0,0212 0,454     0,063
  0,08   0,0025 0,547     0,071
  0,09   0,0052 0,581     0,086
  0,03   0,0038 0,945     0,091
  12,2   0,0087 0,874     0,017
  13,4   0,0141 0,664     0,024
  16,7   0,0251 0,554     0,039
  11,9   0,0541 0,158     0,041
  8,8   0,584 0,751     0,053
  9,3   0,0368 0,712     0,067
  3,2   0,0344 0,716     0,079
  10,1   0,0369 0,547     0,081
  8,7   0,0125 0,151     0,093
  0,96   0,0321 0,255     0,016
  0,67   0,0154 0,541     0,021
  2,7   0,0951 0,513     0,033
  3,3   0,0378 0,149     0,044
  3,7   0,0361 0,924     0,055
  4,9   0,0183 0,123     0,066
  7,3   0,0217 0,215     0,078
                 

Продолжение таблицы 1

Передаточная функция
Вариант Параметры передаточной функции
, с
  11,8   0,0298 0,772     0,086
  24,9   0,0361 0,619     0,093
  12,5   0,0373 0,135     0,012
  0,8   0,0392 0,842     0,023
  0,61   0,0235 0,157     0,034
  0,92   0,0975 0,521     0,041
  1,35   0,0241 0,348     0,053
  1,96   0,0561 0,517     0,062
  2,37   0,0541 0,549     0,071

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: