Tính điều khiển được và tính quan sát được là hai yếu tố quan trọng trong việc thiết kế các hệ thống điều khiển tự động. Nếu hệ thống không có tính điều khiển được, thì không thể thiết kế một bộ điều khiển tự động hiệu quả. Nếu hệ thống không có tính quan sát được, thì không thể giám sát và kiểm soát hệ thống một cách hiệu quả.
Do đó, tính điều khiển được và tính quan sát được của hệ thống cần được xác định và đánh giá trước khi thiết kế bộ điều khiển tự động hoặc các hệ thống giám sát.
1. Điều khiển được
1.1. Định nghĩa
Xét một hệ thống được mô tả toán học dưới dạng phương trình trạng thái:
\left\{\begin{matrix}X*=AX+BU\\Y=CX+DU\\\end{matrix}\right.; với A∈R^{n x n},B∈R^{n x u},C∈R^{r x n},D∈R^{r x m}
Một hệ thống được gọi là điều khiển được nếu từ một vectơ ban đầu bất kỳ, ta luôn có thể tìm được vectơ tín hiệu để chuyển hệ thống từ trạng thái đến trạng thái mong muốn.
1.2. Điều kiện
Xây dựng ma trận điều khiển:
P = \left[ {B,AB,{A^2}B,....,{A^{n - 1}}B} \right]
Điều kiện cần và đủ để một hệ thống mô tả toán học dưới dạng phương trình trạng thái điều khiển được là rank(P) = n.
Nhận xét:
- Tính điều khiển được chỉ phụ thuộc vào các ma trận trạng thái A, B.
- Liên quan đến việc chọn các biến trạng thái.
Ví dụ 1: Cho hệ thống có ma trận như sau. Hãy xác định tính điều khiển được.
A=\left[\begin{matrix}-0,1&0&0\\0,1&-0,1&0\\1&0&0\\\end{matrix}\right];B=\left[\begin{matrix}100\\100\\0\\\end{matrix}\right]
Hướng dẫn:
Ma trận điều khiển được:
P=\left[\begin{matrix}B&AB&A^2B\\\end{matrix}\right]
Ta tính:
AB=\left[\begin{matrix}-10\\0\\100\\\end{matrix}\right]
A^2B=\left[\begin{matrix}1\\-1\\-10\\\end{matrix}\right]
Định thức của ma trận P:
\left|P\right|=DET\left[\begin{matrix}B&AB&A^2B\\\end{matrix}\right]=\left|\begin{matrix}100&-10&1\\100&0&-1\\0&100&-10\\\end{matrix}\right|=10000\neq0
Do P là ma trận vuông cấp 3 nên khi |P| ≠ 0, suy ra Rank(P) = 3 (bằng cấp của ma trận).
Vậy hệ thống điều khiển được.
1.3. Mô phỏng trên Matlab
– Lập trình *m:
A = [-0.1 0 0; 0.1 -0.1 0; 1 0 0]
B = [100; 100; 0]
C = ctrb(A, B)
n = size(A, 1); %số chiều của trạng thái
if rank(C) == n
disp('Hệ thống là điều khiển được')
else
disp('Hệ thống không được điều khiển được')
end
– Kết quả:
Hình 1. Xét tính điều khiển của hệ thống trên Matlab.
2. Tính quan sát được
2.1. Định nghĩa
Một hệ thống được gọi là quan sát được nếu từ các vectơ và đã có, ta có thể xác định được các biển trạng thái của hệ thống.
2.2. Điều kiện
Xây dựng ma trận quan sát:
L=\left[C^\prime,A^\prime C^\prime,\left(A^\prime\right)^2C,....,\left(A^\prime\right)^{n-1}C\right]
Điều kiện cần và đủ để một hệ thống mô tả toán học dưới dạng phương trình trạng thái quan sát được là rank(L) = n.
Nhận xét: Tính điều khiển được chỉ phụ thuộc vào các ma trận trạng thái A, C.
Ví dụ 2: Cho hệ thống có ma trận như sau. Hãy xác định tính quan sát được.
A=\left[\begin{matrix}0&1&0\\0&0&1\\-6&-11&-6\\\end{matrix}\right];B=\left[\begin{matrix}0\\0\\-1\\\end{matrix}\right];C=\left[\begin{matrix}4&5&1\\\end{matrix}\right]
Hướng dẫn:
Ma trận quan sát được:
L=\left[C,CA,CA^2\right]
Ta tính:
CA=\left[\begin{matrix}-6&-7&-1\\\end{matrix}\right]
CA^2=\left[\begin{matrix}6&5&-1\\\end{matrix}\right]
Định thức của ma trận:
\left|L\right|=DET\left[\begin{matrix}C\\CA\\CA^2\\\end{matrix}\right]=\left|\begin{matrix}4&5&1\\-6&-7&-1\\6&5&-1\\\end{matrix}\right|=0
L là ma trận vuông cấp 3 nhưng |L| = 0.
Ta có hạng của ma trận L là cấp cao nhất của định thức con khác 0 của L nhưng vì định thức L bằng 0. Vì thế hệ thống không quan sát được.
2.3. Mô phỏng trên Matlab
– Lập trình *m:
A = [ 0 1 0; 0 0 1; -6 -11 -6];
B = [ 4; 5; 1];
C = [B ; A*B; A^2*B];
n = size(A, 1);
if rank(C) == n
disp('He thong co the quan sat duoc toan bo');
else
disp('He thong khong quan sat duoc');
end
– Kết quả:
Hình 2. Xét tính quan sát của hệ thống trên Matlab.