PIC Vietnam

Go Back   PIC Vietnam > Robotics > Điều khiển

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Điều khiển Lý thuyết điều khiển và ứng dụng lý thuyết điều khiển trong những trường hợp thực tế

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 27-07-2006, 03:03 PM   #1
bunyuki
Nhập môn đệ tử
 
bunyuki's Avatar
 
Tham gia ngày: Jul 2006
Bài gửi: 8
:
Cool a priori & a posteriori

hê hê Sorry,em nhầm chỗ:E{v.v'}=R.
Trả lời Béo luôn:
Khi tính toán bộ lọc Kalman là phải đưa ra giá trị ước lượng dựa các biến trạng thái trên các thông số tổng hợp của quá trình,đo,mô hình...một cách chân thực nhất để lam đầu vào cho bộ điều khiển.Khi tính toán người ta coi chia thành hai giai đoạn:Predict và Correct.Hai giai đoạn này bổ sung ,tác động lẫn nhau theo 1 vòng tròn khép kín(tao ko vẽ minh hoạ đc) đại loại là đoán trứơc rồi sửa cái đoán ấy cho phù hợp.Cho nên người ta còn gọi KALMAN FILTER là cái ESTIMATOR là vì thế.Trong đó,mỗi một giai đoạn người ta tính toán 1 thông số.Giai đoạn Predict người ta ước lượng trạng thái của hệ thống dựa trên trạng thái trươc đó đã có,cái giá trị ước lượng trong giai đoạn này gọi là 'a priori' tức là trạng thái trước,trạng thái sơ cấp ,trạng thái chưa đc bù kí hiệu là Xk-(a priori thời điểm k):
Xk-=A*x(k-1)^+B*u
Trong giai đoạn này ta tính covariance của sai lệch nhiễu luôn(cũng là trạng thái priori) Pk-=A*Pk-1*A'+Q
Tuy nhiên giá trị priori này chưa mang tính chân thực về hệ thống,và ta cần phải Correct lại cho đúng dựa trên các giá trị đo đc từ các sensor.Đó chính là nhiẹm vụ của giai đoạn Correct(hay update này).Giá trị đc corect lúc này gọi là 'a posteriori' kí hiệu là Xk^:
Xk^=Xk- + K(zk-H*Xk-)
zk:giá trị nhận từ sensor
K là hệ số Kalman phản hồi sai lệch trạng thái.Việc giải K khá phức tạp.Một trong cách đó là giải phương trình Riccacti.Cái này tao có nhưng chắc chẳng cần đọc,hoa mắt chóng mặt lắm.Đại loại là tính K theo covariance của sai lẹch trạng thái như sau:
K=Pk-*H'*inv(H*Pk-*H'+R)
Rồi tính thêm Pk=(I-K*H)*Pk- để cho vòng lặp sau
thế đó,lằng nhằng vậy thôi
khá lằng nhằng nhưng viết ra thấy mình hỉu đôi chút hêhê
Bác FALLEAF đâu nhẩy,lâu lắm ko thấy
bunyuki vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 23-11-2006, 07:40 PM   #2
hoangminh1234
Đệ tử 1 túi
 
Tham gia ngày: Nov 2005
Bài gửi: 23
:
Trích:
Nguyên văn bởi bunyuki View Post
hê hê Sorry,em nhầm chỗ:E{v.v'}=R.
Trả lời Béo luôn:
Khi tính toán bộ lọc Kalman là phải đưa ra giá trị ước lượng dựa các biến trạng thái trên các thông số tổng hợp của quá trình,đo,mô hình...một cách chân thực nhất để lam đầu vào cho bộ điều khiển.Khi tính toán người ta coi chia thành hai giai đoạn:Predict và Correct.Hai giai đoạn này bổ sung ,tác động lẫn nhau theo 1 vòng tròn khép kín(tao ko vẽ minh hoạ đc) đại loại là đoán trứơc rồi sửa cái đoán ấy cho phù hợp.Cho nên người ta còn gọi KALMAN FILTER là cái ESTIMATOR là vì thế.Trong đó,mỗi một giai đoạn người ta tính toán 1 thông số.Giai đoạn Predict người ta ước lượng trạng thái của hệ thống dựa trên trạng thái trươc đó đã có,cái giá trị ước lượng trong giai đoạn này gọi là 'a priori' tức là trạng thái trước,trạng thái sơ cấp ,trạng thái chưa đc bù kí hiệu là Xk-(a priori thời điểm k):
Xk-=A*x(k-1)^+B*u
Trong giai đoạn này ta tính covariance của sai lệch nhiễu luôn(cũng là trạng thái priori) Pk-=A*Pk-1*A'+Q
Tuy nhiên giá trị priori này chưa mang tính chân thực về hệ thống,và ta cần phải Correct lại cho đúng dựa trên các giá trị đo đc từ các sensor.Đó chính là nhiẹm vụ của giai đoạn Correct(hay update này).Giá trị đc corect lúc này gọi là 'a posteriori' kí hiệu là Xk^:
Xk^=Xk- + K(zk-H*Xk-)
zk:giá trị nhận từ sensor
K là hệ số Kalman phản hồi sai lệch trạng thái.Việc giải K khá phức tạp.Một trong cách đó là giải phương trình Riccacti.Cái này tao có nhưng chắc chẳng cần đọc,hoa mắt chóng mặt lắm.Đại loại là tính K theo covariance của sai lẹch trạng thái như sau:
K=Pk-*H'*inv(H*Pk-*H'+R)
Rồi tính thêm Pk=(I-K*H)*Pk- để cho vòng lặp sau
thế đó,lằng nhằng vậy thôi
khá lằng nhằng nhưng viết ra thấy mình hỉu đôi chút hêhê
Bác FALLEAF đâu nhẩy,lâu lắm ko thấy
zk là giá trị đo từ cảm biến hả bạn, theo công thức thì zk= xk + v (H=1). Mình băn khoăn chỗ này vì theo định nghĩa v là nhiễu Gauss, vậy xk lấy giá trị nào để tính x^k- à ?? Để mình tính lại thử xem, cảm ơn bạn nhé
////////tính toán xong thấy đúng như bạn nói, cám ơn you again

thay đổi nội dung bởi: hoangminh1234, 23-11-2006 lúc 09:02 PM.
hoangminh1234 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 16-03-2007, 12:54 AM   #3
Mecha
Trưởng lão PIC bang
 
Mecha's Avatar
 
Tham gia ngày: Dec 2005
Bài gửi: 315
:
Bộ lọc Kalman thực chất là bộ quan sát trạng thái tối ưu cho hệ thống. Điều này có nghĩa là khi ứng dụng bộ lọc Kalman, hai điều kiện sau đây phải được thỏa mãn:
- Cấu trúc và thông số của đối tượng và của mô hình mẫu phải tương đương nhau.
- Nhiễu hệ thống (w) và nhiễu đo lường (v) phải là nhiễu ồn trắng với biên độ trung bình bằng 0 và thỏa mãn mối tương quan sau: E(w)=E(v)=0, E(wv')=0.

Thêm một yếu tố nữa cần quan tâm là:
Từ phương trình ddt(x)=Ax+Bu+Gw có thể thấy ngay là phải biết được biến trạng thái nào của đối tượng chịu tác động của nhiễu hệ thống w -> mới có thể xác định được ma trận G. Biết được G, thay vào phương trình Riccati để tìm ma trận P -> tìm được L -> ra được trạng thái ước lượng.

Ví dụ: giả sử ta dk hệ động cơ DC kéo cục tải trên một mặt phẳng (gần đúng coi là đối tượng bậc 2 tuyến tính) -> có hai biến trạng thái là vị trí (x1) và tốc độ (x2). Nếu ta xác định được rằng nhiễu hệ thống (giả sử là ma sát giữa tải và mặt bàn) sẽ chỉ làm thay đổi x2 (tức là hệ số a22 của ma trận A bị thay đổi) -> G=[0;1].
__________________
Sống là động nhưng lòng luôn bất động,
Sống là thương nhưng lòng chẳng vấn vương,
Sống yên vui danh lợi vẫn coi thường,
Tâm bất biến giữa dòng đời vạn biến.


Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
http://www.picvietnam.com/forum//showthread.php?t=1263
Mecha vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 17-03-2007, 07:39 AM   #4
HAI
Nhập môn đệ tử
 
Tham gia ngày: Sep 2005
Bài gửi: 10
:
Cái yếu tố thứ ba về ma trận G hay quá, cái này chắc phải làm mới có được kinh nghiệm này.Còn cái ý đầu tiên em vẫn không hiểu lắm, cấu trúc và thông số của đối tượng và của mô hình mẫu phải "tương đương" nhau.Anh có thể nói rõ hơn cái ý "tương đương" này được không hả anh?
Nhân tiện nói về đối tượng với mô hình mẫu, anh cho em hỏi cái khái niệm nominal là thế nào hả anh?Em thấy có hàm truyền nominal, giá trị nominal(trong phương pháp đo), nó cứ lờ mờ, em không hiểu được.Em nghĩ nó giống như là cái gì đó cân bằng, ở không, hoàn toàn không có nhiễu, hay cái dạng na ná thế.Nhưng em thấy nó không đúng lắm.Anh giải thích cho em với nhé!
HAI vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 17-03-2007, 04:41 PM   #5
Mecha
Trưởng lão PIC bang
 
Mecha's Avatar
 
Tham gia ngày: Dec 2005
Bài gửi: 315
:
Trích:
Nguyên văn bởi HAI View Post
Cái yếu tố thứ ba về ma trận G hay quá, cái này chắc phải làm mới có được kinh nghiệm này.Còn cái ý đầu tiên em vẫn không hiểu lắm, cấu trúc và thông số của đối tượng và của mô hình mẫu phải "tương đương" nhau.Anh có thể nói rõ hơn cái ý "tương đương" này được không hả anh?
Nhân tiện nói về đối tượng với mô hình mẫu, anh cho em hỏi cái khái niệm nominal là thế nào hả anh?Em thấy có hàm truyền nominal, giá trị nominal(trong phương pháp đo), nó cứ lờ mờ, em không hiểu được.Em nghĩ nó giống như là cái gì đó cân bằng, ở không, hoàn toàn không có nhiễu, hay cái dạng na ná thế.Nhưng em thấy nó không đúng lắm.Anh giải thích cho em với nhé!
- Cấu trúc và thông số của đối tượng và của mô hình mẫu phải "tương đương" nhau nghĩa là: giả sử ta xác định được đối tượng dk có dạng bậc 4 tuyến tính => Mô hình mẫu cũng phải là bậc 4. Và khi vẽ mô hình trong Matlab hoặc 20-sim em sẽ có 4 đường tín hiệu từ đối tượng thực (y) và 4 đường tín hiệu ra từ mô hình mẫu (y_hat) thì mới tính được cái (y - y_hat) chứ đúng không. Từ đó thì sẽ xác định được trạng thái ước lượng theo công thức ddt(x)=Ax+By+L(y - y_hat) => ddt(x)=Ax+By+L(y-Cx-Du) với A,B,C,D là thông số của mô hình mẫu.

- Khái niệm nominal anh cũng không biết dịch ra tiếng Việt chuẩn nhất thì tương đương với khái niệm gì. Anh nghĩ có thể coi nominal = chuẩn hay lý tưởng. Ví dụ "Nominal plant model" có nghĩa là đối tượng có tính chất tường minh (no uncertainty). Hay "nominal feedback loop" có nghĩa là vòng lặp phản hồi được thiết kế với giả sử rằng, hệ thống không bị ảnh hưởng bởi cả nhiễu ngoài và nhiễu hệ thống.
__________________
Sống là động nhưng lòng luôn bất động,
Sống là thương nhưng lòng chẳng vấn vương,
Sống yên vui danh lợi vẫn coi thường,
Tâm bất biến giữa dòng đời vạn biến.


Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
http://www.picvietnam.com/forum//showthread.php?t=1263

thay đổi nội dung bởi: Mecha, 17-03-2007 lúc 05:06 PM.
Mecha vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến

Similar Threads
Ðề tài Người gửi Chuyên mục Trả lời Bài mới
Bộ lọc Kalman dùng PIC falleaf RTOS và Thuật toán với PIC 19 30-01-2014 08:19 PM
Kalman filter: tutorial function ami Matlab-Simulink & Labview & 20-Sim 0 30-03-2006 10:58 PM


Múi giờ GMT. Hiện tại là 01:30 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam