Наблюдатель Люенбергера
Содержание
Введение
Задание на курсовую работу
1.Расчет наблюдателя Люенбергера
2.Оценивание вектора состояний с помощью наблюдателя Люенбергера
Заключение
Список используемой литературы и ПО
Введение
На практике достаточно распространенной является ситуация, когда не все компоненты вектора состояний доступны для измерения. В этом случае, чтобы в системе управления возможно было использовать обратную связь по состоянию, необходимо восстановить вектор состояния системы, недоступный для измерения. Восстановление вектора состояния называется его оценкой, а устройства, формирующие на выходе вектор оценки состояний, а также позволяющие отделить полезный сигнал от помех, наблюдателями (идентификаторами, фильтрами).
Наблюдатель может иметь порядок, равный порядку системы (наблюдатель полного порядка, например фильтр Калмана), который оценивает вектор состояния учитывая все переменные состояния, или меньший, по сравнению с системой (наблюдатель пониженного порядка, наблюдатели Люенбергера), который имеет размерность на 1 или на количество измеряемых компонент меньше, чем система. Последний формирует новый вектор, в котором учитываются только те компоненты вектора состояния, которые не доступны для измерения.
В случае отсутствия шумов в измерениях для получения оценки координат вектора состояния возможно уменьшить порядок наблюдателя, непосредственно используя содержащуюся в выходных переменных информацию о состоянии объекта. Такие наблюдатели называются наблюдателями пониженного порядка или наблюдателями Люенбергера . В них размерность вектора состояния уменьшается на число компонент измеряемого вектора.
Задание на курсовую работу
Дана непрерывная система с передаточной функцией
Оценить состояние объекта с помощью наблюдателя пониженного порядка (Люинбергера).
Расчет наблюдателя Люенбергера
Доступной наблюдению считается лишь вторая компонента вектора состояния системы. Требуется построить наблюдатель пониженного порядка для восстановления первой компоненты при подаче на вход единичного входного воздействия.
Рассмотрим решение данной задачи с использованием MatLab.
Представим передаточную функцию следующим образом:
Зададим систему в пространстве состояний и сформируем матрицы системы:
sys=ss(tf([0 7,5], [9 1 0]));
[A,B,C,D]=ssdata(sys)
В результате этого получим:
Определение порядка объекта и индекса наблюдаемости.
Порядок объекта n равен размерности матрицы А, а индекс наблюдаемости
p – рангу матрицы С. Тогда получаем:
Уравнения наблюдателя пониженного порядка имеет вид:
Где H и G - матрицы размерности и соответственно.
Уравнения описания искомого наблюдателя для заданных значений и примут вид:
Найдем параметры . Из условия наблюдателя пониженного порядка:
В нашем случае это будет выглядеть следующим образом:
.
С учетом численных значений будут иметь вид:
Из условия физической реализуемости полагают таким, чтобы обеспечить желаемое время переходного процесса в наблюдателе. Выберем , значение параметра положим произвольным: . С учетом этих значений найдем с помощью пакета MATLAB коэффициенты
матрицы Т.
a1=-10;
a2=1;
T=a2*C/(A-a1*eye(2))
Получим:
Далее определим параметр из условия[1] следует:
.
Используя пакет MATLAB, получаем:
b1=T*B
b1 =
0.0730
Затем найдем матрицы H и G:
Решим методом Крамера:
После решения мы получим:
В соответствии с проведенными вычислениями уравнения наблюдателя принимают вид:
Оценивание вектора состояний с помощью наблюдателя Люенбергера
Зададим полученные коэффициенты в MatLab.
a1= -10;
a2=1;
b1=-0.0730;
;
В среде Simulink системы Matlab построим структурную схему объекта и наблюдателя.
Рис 1 – Simulink-модель объекта и наблюдателя.
На данной модели приняты обозначения:
X,Y – вектор состояния и вектор изменения объекта;
XL – вектор состояния наблюдателя (т.е. оценка вектора состояния объекта).
Запись A*uvec, B*uvec, C*uvec, G*uvec, H*uvec, a1*uvec, a2*uvec и b1*uvec обозначает векторное умножение A, B, C, G или H и скалярных величин a1, a2, b1 на соответствующий входной сигнал.
Построим графики вектора состояния
t=0:0.1:10;
figure(1);
plot(t, X(:,1),'b',t,XL(:,1),'or');
grid;
figure(2);
plot(t, X(:,2),'b',t,XL(:,2),'or');
grid;
Рис. 2 – истинные и восстановленные значения координат первой компоненты вектора состояния системы
Рис. 3 – истинные и восстановленные значения координат второй компоненты вектора состояния системы
На рисунках 2 и 3 линией показаны истинные кривые значения вектора координат объекта, а символами ‘o’ – восстановленные. Из графиков можно сделать вывод, что при отсутствии помех, в «идеальных условиях», с помощью наблюдателя пониженного порядка можно очень точно оценить координаты вектора состояния. Но в зашумленных условиях, наблюдатель Люинбергера ведет себя неадекватно, т.к., в отличие от наблюдателя полного порядка (фильтр Калмана), оцениваются и учитываются лишь неизвестные компоненты вектора состояния. Если же на выход системы подать помеху, то в системе при измерении, наблюдатель неверно оценивает координаты вектора состояния.
Заключение
Наблюдатель пониженного порядка проще реализуем и достаточно точен при использовании его в системах, где помехи незначительны или отсутствуют. К сожалению, на практике зачастую приходится иметь дело с сильно зашумленными сигналами и соответственно пользоваться наблюдателями пониженного порядка нежелательно. В данной ситуации целесообразно использовать наблюдатель полного порядка, например фильтр Калмана.
Список используемой литературы и программного обеспечения
Дилигенская А. Н. Идентификация объектов управления. – Самара.: Самарский государственный технический университет 2009.
Андреев Ю.Н. Управление конечномерными линейными объектами. - М.: Наука, 1976.
Программное обеспечение:
Microsoft Office 2007
MATLAB 2010