- •Санкт-Петербургский Государственный Электротехнический Университет «лэти»
- •Введение
- •1. Перевернутый маятник как объект управления
- •1.1. Описание объекта
- •1.2. Математические модели объекта управления
- •2.4 Анализ управляемости и наблюдаемости объекта
- •3.4. Анализ замкнутой системы
- •4.2. Синтез дискретного регулятора Проведем синтез дискретного регулятора по дискретной модели объекта, которую получим для периода дискретизации . Дискретизацию объекта проведем по команде:
- •Проведем анализ устойчивости дискретного объекта:
- •4.3. Анализ замкнутой системы
- •Заключение
- •Список используемой литературы
- •С. Е. Душин, н. С. Зотов, д. Х. Имаев, н. Н. Кузьмин, в. Б. Яковлев “Теория автоматического управления”.- м.:”Высшая школа”, 2003
- •“Matlab Help” 1994-2006 The MathWorks, Inc.
4.2. Синтез дискретного регулятора Проведем синтез дискретного регулятора по дискретной модели объекта, которую получим для периода дискретизации . Дискретизацию объекта проведем по команде:
[Ad, Bd, Cd, Dd] = c2dm(A,B,C,D,T);
Проведем анализ устойчивости дискретного объекта:
abs(eig(Ad))
ans= 1.0000
1.0000
1.0070
0.9930
Полученные собственные значения матрицы Adсвязаны с собственными значениями матрицы непрерывной модели А следующим соотношением:
, т.к. Аd=.
Проверим это:
r=eig(A)
z=exp(r*0.002)
z = 1.0000
1.0000
1.0070
0.9930
Действительно, получены те же самые собственные значения.
Дискретный объект является неустойчивым, необходимо синтезировать регулятор. Выберем ту же методику размещения собственных значений.
Основным вопросом является выбор желаемых собственных значений. Здесь можно рассмотреть два подхода:
1. стремление к аналогии с непрерывной системой;
2. назначение нулевых собственных значений для получения процессов с конечным временем затухания.
Убедимся в том, что дискретная модель наблюдаема и управляема:
U = ctrb(Ad,Bd)
U = 1.0e-007 *
0.0000 0.0000 0.0000 0.0000
-0.0000 -0.0000 -0.0000 -0.0000
-0.5000 -0.5000 -0.5000 -0.5000
0.5000 0.5000 0.5000 0.5000
V=obsv(Ad,Cd)
V = 1.0000 0 0 0
1.0000 -0.0000 -0.0000 0.0000
1.0000 -0.0000 -0.0000 0.0000
1.0000 -0.0000 -0.0000 0.0000
rank(U)
ans = 3
rank(V)
ans = 3
Матрицы управляемости Uи наблюдаемостиVимеют неполный ранг, значит, дискретный объект не полностью управляем и наблюдаем.
Попробуем назначить желаемые собственные значения при синтезе регулятора состояния из условия получения процессов похожих на процессы в непрерывной системе и посмотрим, сможем ли мы стабилизировать объект:
p=[-1 -2 -3 -4]';
z=exp(p*0.002)
z = 0.9980
0.9960
0.9940
0.9920
Вычислим матрицу регулятора состояний:
kd=place(Ad,Bd,z)
kd = 1.0e+016 *
-9.6937 -9.6937 -0.0020 -0.0020
Поскольку измеряется только положение каретки , необходимо синтезировать наблюдатель состояния:
po = [-8 -10 -12 -14]';
zo = exp(po*0.002);
Ld = place(Ad', Cd', zo)'
??? Error using ==> place
Can't place eigenvalues there.
Видимо, MATLABне может найти решения уравнения Ad-Cd*Ld=zo.
Попробуем подтвердить наши догадки:
Ld=acker(Ad',Cd',zo)'
Warning: Matrix is close to singular or badly scaled.
Results may be inaccurate.
Ld = 1.0e+013 *
0.0000
-0.0000
-1.0489
0.0000
Очевидно, что система будет неустойчивой. Подтвердим это, проведя синтез до конца.
Вычислим матрицу динамического дискретного регулятора:
[Ard1,Brd1,Crd1,Drd1]=dreg(Ad,Bd,Cd,Dd,kd,Ld)
Ard1 = 1.0e+019 *
0.0000 0.0000 0.0000 0.0000
-0.0000 -0.0000 -0.0000 -0.0000
-1.2536 -0.0000 -0.0000 -0.0000
1.2536 0.0000 0.0000 0.0000
Brd1 = 1.0e+019 *
-0.0000
0.0000
1.2536
-1.2536
Crd1 = 1.0e+026 *
-2.5073 -0.0000 -0.0000 -0.0000
Drd1 = 2.5073e+026