(3.11)
Сравнивая
уравнения (3.7) и (3.11), получим:
Wω (z) = P(z). (3.12)
(3.13)
и
с учетом (3.12) передаточная функция регулятора принимает вид:
(3.14)
Параметры
этого регулятора можно получить, используя уравнения (3.13), (3.8) и (3.9):
(3.15)
... ...
Таким образом, параметры регулятора могут быть вычислены достаточно просто. Начальное значение управляющей переменной u(0) зависит только от значения суммы коэффициентов b1 объекта. Поскольку значение этой суммы убывает с уменьшением такта квантования, начальное значение управляющей переменной u(0) будет тем больше, чем меньше такт квантования.
Такой
апериодический регулятор можно считать компенсационным регулятором (3.11),
однако передаточную функцию замкнутой системы (3.8) и (3.6) в данном случае
определяют в процессе проектирования, а не задают заранее. Результирующая
передаточная функция замкнутой системы с учетом уравнений (3.12) и (3.6)
принимает вид:
Ее характеристическое уравнение равно
+Wр(z)Wоб(z) = zm = 0. (3.16)
Таким образом, контур управления с апериодическим регулятором имеет m полюсов в начале координат плоскости z.
Если
d ≠ 0,
необходимо использовать следующую модель объекта:
(3.17)
Коэффициенты
этой модели удовлетворяют соотношениям:
(3.18)
На
процесс управления наложены теперь следующие ограничения:
y(k) = ω(k) = 1 для k ≥ v = m + d;
u(k) = u(m)
для k ≥ m.
(3.19)
Далее
можно применить уравнения (3.3) - (3.15), учитывая (3.17). Из уравнений (3.17)
и (3.13) следует, что
q1 = a1q0,= a2q0,
… … (3.20)= amq0,
+1
= am+1q0,
… …= avq0,
Следовательно,
передаточная функция регулятора имеет вид:
(3.21)
Из
уравнений (3.20) и (3.21) получим передаточную функцию апериодического
регулятора AP(v):
(3.22)
Отсюда
следует, что передаточная функция по задающему сигналу при использовании точной
модели объекта будет равна:
(3.23)
а
ее характеристическое уравнение
z(m+d) =
0, (3.24)
что свидетельствует об апериодическом характере переходного процесса. Следует иметь в виду, что применение апериодического регулятора приводит к сокращению полюсов объекта управления.
Будем рассчитывать регулятор, включенный последовательно с объектом, с помощью Matlab’а.
Содержание файла-скрипта:=tf([0.8],[10 1],'ioDelay', 1) % задаем передаточную функцию=tf([0.95],[100 1 0],'ioDelay', 10) % задаем передаточную функциючную функцию=W1*W2 % общая передаточная двух последовательных частей системы=1 % время квантования=c2d(Wob,T,'zoh') % передаточная в дискретной области
[Numer Denom]=tfdata(Wdiskr, 'v') % коэффициенты числителя и знаменателя
m=length (Numer)=Denom(2:m)=Numer(2:m)=1/sum(Numer1)i=1:(m-1)(i)=q0*Denom1(i);(i)=q0*Numer1(i)
Q=[q0 q] % матрица коэффициентов числителя=[1 -p] % матрица коэффициентов знаменателя=tf(Q, P, T) % передаточная функция регулятора
Передаточная функция регулятора в командном окне имеет вид:
Transfer function:
z^3 - 4023 z^2 + 3878 z - 1245
------------------------------------^3 - 0.1713 z^2 - 0.6666 z - 0.1621
Для того чтобы добиться желаемого качества процесса управления или регулирования, т.е. требуемой точности системы и качества переходного процесса, есть два пути. Первый состоит в изменении параметров данной системы, так как с изменением параметров меняются соответственно коэффициенты уравнения и частотные характеристики, а значит, и качество процесса.
Если же путем изменения не удается получить желаемый результат, то необходимо использовать второй путь - изменить структуру системы через ввод дополнительных звеньев - корректирующих устройств.
Основная задача корректирующих устройств состоит в улучшении точности системы и качества переходных процессов. Благодаря введению корректирующих устройств можно решать и более общие задачи, такие как обеспечение устойчивости системы и желаемого качества процесса регулирования.
Содержание скрипт-файла для расчета компенсатора:,clear=tf([0.8],[10 1]) % задаем передаточную функцию=tf([0.95],[100 1 0]) % задаем передаточную функциючную функцию=tf([0.6],[7 1]) % задаем передаточную функцию возмущения=W1*W2 % общая передаточная двух последовательных частей системы=1 % время квантования=c2d(Wob,T,'zoh') % передаточная в дискретной областиd=c2d(W1,T,'zoh') % передаточная в дискретной областиd=c2d(W2,T,'zoh') % передаточная в дискретной области=c2d(Wf,T,'zoh') % передаточная в дискретной области
[Numer Denom]=tfdata(Wdiskr, 'v') % коэффициенты числителя и знаменателя
m=length (Numer)=Denom(2:m)=Numer(2:m)=1/sum(Numer1)i=1:(m-1)(i)=q0*Denom1(i);(i)=q0*Numer1(i)
Q=[q0 q] % матрица коэффициентов числителя=[1 -p] % матрица коэффициентов знаменателя=tf(Q, P, T) % передаточная функция регулятора=Wfd/(Wr*W1d) % передаточная функция компенсатора
[Nk Dk]=tfdata(Wkomp, 'v') % коэффициенты числителя и знаменателя
[Nf Df]=tfdata(Wfd, 'v') % коэффициенты числителя и знаменателя
[N1 D1]=tfdata(W1d, 'v') % коэффициенты числителя и знаменателя
[N2 D2]=tfdata(W2d, 'v') % коэффициенты числителя и знаменателя
Передаточная функция дискретного компенсатора в командном окне имеет вид:
Transfer function:
.07987 z^4 - 0.08595 z^3 - 0.04087 z^2 + 0.03523 z + 0.01172
-------------------------------------------------------------
.8 z^4 - 398 z^3 + 560.7 z^2 - 350.7 z + 82.15
5
Расчет наблюдателя переменных состояния
5.1
Теоретические сведения
Рассмотрим объект управления, возмущенное движение которого описывается
уравнением
, (5.1)
и
одним из методов определен оптимальный закон управления
. (5.2)
Традиционно
существует проблема измерения переменных состояния, что умоляет результат
синтеза оптимального закона управления в функции переменных состояния.
Доступными измерению являются выходные переменные системы, связанные с
переменными состояния соотношением
. (5.3)
В связи с этим возникает задача наблюдения (восстановления, оценки) вектора x(t) по результатам измерения y(t) на интервале [t0, t].
Наблюдатель полного порядка
Пусть простейший наблюдатель имеет модель
. (5.4)
Если
бы удалось задать значение
равным
Х(0), то решение уравнения (5.4) точно совпадало бы с решением (5.1).
Если
, то возникает ошибка наблюдения
, которая удовлетворяет уравнению
(5.5)
Если
объект управления асимптотически устойчив, то ошибка наблюдения будет с
течением времени уменьшаться
.
Если
дополнить уравнение (5.4) составляющей, содержащей измеряемый вектор Y, то
такой алгоритм наблюдателя можно записать в общем, виде:
. (5.6)
Уравнения для определения матриц F, H, G могут быть получены разными способами.
В
простейшем случае пусть система имеет один вход и один выход. Для данного
случая можно воспользоваться методом передаточной функции
. (5.7)
Преобразование
Лапласа уравнений (5.1) при нулевых начальных условиях, имеет вид
,
где (рЕ - А)-1В есть матричная передаточная функция.
Уравнение
наблюдателя (5.6), преобразованное по Лапласу при нулевых начальных условиях,
имеет вид
. (5.8)
Подставляя
в уравнение (5.8) уравнение (7.7), получим
. (5.9)
Из
условия (5.7) можно записать, что
. (5.10)
Уравнение
(5.10) можно трансформировать к виду
.
Если выбрать
и
, (5.11)
то равенство будет выполняться.
На
основании (5.6) и (5.11) представим уравнения наблюдателя состояния в виде
. (5.12)
Матрицу G выбирают таким образом, чтобы переходный процесс в наблюдателе
заканчивался быстрее, чем переходный процесс системы, то есть матрица G
характеризует расположение полюсов наблюдателя на основании полюсов системы.
Для решения поставленной задачи необходимо найти эту матрицу.
5.2
Расчет наблюдателя
Рассчитаем наблюдатель для нашего объекта.
Запишем программу в Matlab:
clc, clear
global b1 a Q R
% задание передаточной функции первой части объекта:=tf([0.8],[10 1],'ioDelay',1);
% задание передаточной функции второй части объекта:
W2=tf([0.95],[100 1 0],'ioDelay',10);=W1*W2
% переход к модели в переменных состояния:=ss(W);
% матрицы системы:
[a b c d]=ssdata(Ws);
% размерность матрицы А:
[m,n]=size(a);% m-размерность матрицы а, соответствующий порядку объекта
% матрица критерия оптимальности:=0.5*eye(n);% весовая матрица критерия качества, определяющая
%соотношение между затратами на управление и качеством регулирования=0.5*eye(n);% весовая матрица критерия качества, определяющая
%соотношение между затратами на управление и качеством управление
%Обычно квадратная матрица = от 0 до 1
% расширяем матрицу, для соответствия порядку системы:=b*ones(1,n);
%коэффициенты оптимального регулятора:
[K,S,e]=lqr(a, b1, Q, R) % матрица к-тов ОС рег-ра, S - решение ур-я Риккати
% решение ур-я Риккати численными методами=zeros(n);% вектор НУ=(R^(-1))*(b1'*S)% коэффициентами рег-ра явля-ся 1-ая строка и(1)=0;%начальное значение времени(1,1)=1;% начальное значение х1(2,1)=2;% начальное значение х2(3,1)=3;% начальное значение х3=0.01;% шаг по времени=30000;% число точек моделирования%(1,1)=X(1,1);% начальное значение хe1 наблюдателя(2,1)=X(2,1);% начальное значение хе2 наблюдателя(3,1)=X(3,1);% начальное значение хе3 наблюдателя
%Находим полюса наблюдателя:=2.*e % желаемые полюса наблюдателя, которые выбираются левее полюсов СУ, для обеспечения большего быстродействия
%Находим матрицу G:=acker(a',c',Pe);% матрица коэффициентов ОС наблюдателя G=G'
% моделирование
% начальные условия и оценки:
for i=1:n
% управление(i)=-K(1,:)*Xe(:,i);
% переменные состояния СУ
X(:,i+1)=(a*X(:,i)+b*U(i))*dt+X(:,i);
% выход системы(i)=c*X(:,i);
% переменные состояния наблюдателя
Xe(:,i+1)=Xe(:,i)+(a*Xe(:,i)+b*U(i)+G*(Y(i)-c*Xe(:,i)))*dt;
% выход системы наблюдателя(i)=c*Xe(:,i);
% отсчёт времени(i+1)=t(i)+dt;(1)(t(1:n),Y(1:n),t(1:n),Ye(1,n))% динамическая хар-ка для Y и Yeon('t')('Y, Ye')
figure(2)(t(1:n),X(:,1:n),t(1:n),Xe(:,1:n))% динамическая хар-ка для Х и Xe
grid on('t')('X')
figure(3)(t(1:n),U(1:n))% динамическая хар-ка для U
grid on('t')('U')=estim(Ws, G)
% добавим в уравнение для наблюдателя управляющее воздействие
BBe=[Be b]=zeros(4, 2)
Коэффициенты оптимального регулятора:
K =
.559585112357554 1.000243498164992 0.577350269189625
.559585112357554 1.000243498164992 0.577350269189625
.559585112357554 1.000243498164992 0.577350269189625
S =
.279792556178777 0.500121749082496 0.288675134594813
.500121749082496 28.624886774369962 16.523814005972508
.288675134594813 16.523814005972508 28.015164278020094
e =
.734683366773686
.027035985149488 + 0.015624851156035i
.027035985149488 - 0.015624851156035i
Полюса наблюдателя:
Pe =
.469366733547372
.054071970298977 + 0.031249702312070i
.054071970298977 - 0.031249702312070i
Матрица G имеет вид:
G =
.724961997156825
.137124274017894
.455580122000059
На рисунках 5.1-5.4 приведены графики изменения переменных состояния
объекта и наблюдателя, изменение выхода объекта и наблюдателя и закона
управления.
Рисунок 5.1- Переменных состояния объекта и наблюдателя
Рисунок 5.2- Изменение выходного сигнала объекта и наблюдателя
Рисунок 5.4- Закон управления, который был сформирован на основе полученных переменных состояния
Таким образом, видим, что в теории наблюдатель обеспечивает очень высокую точность расчёта переменных состояния. Оценка переменных состояния с помощью наблюдателя осуществляется без ошибок.
На этом расчёт наблюдателя закончен.
6 Моделирование систем управления
.1 Моделирование непрерывной системы
Модель непрерывной системы представлена на рисунке 6.1:
Рисунок 6.1 - Модель системы с непрерывным регулятором
График передаточной функции для этой модели будет иметь вид,
представленный на рисунке 6.2:
Рисунок 6.2 - Непрерывная передаточная функция с регулятором
Как видно из рисунка, график переходной характеристики имеет непрерывный вид и постепенно выходит на единицу.
Теперь промоделируем систему с возмущающим воздействием и компенсатором в непрерывном виде.
Модель, содержащая возмущающее воздействие и компенсатор, представлена на
рисунке 6.3:
Рисунок 6.3 - Модель системы с компенсатором
Вид передаточной функции для такой системы с возмущающим воздействием и с
компенсатором представлен на рисунке 6.4: