Bộ lọc Kalm man

Chia sẻ: Van Kent Kent | Ngày: | Loại File: PDF | Số trang:7

0
59
lượt xem
11
download

Bộ lọc Kalm man

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bộ lọc Kalm man 1.Bộ lọc là gì ? Trước tiê bộ lọc là một quá trìn xử lý nhằm loạị bỏ nh ên, nh m hững gì khôn có giá trị hoặc không ng quan tâm đến và giữ lại những gì có giá trị sử dụng. Tiến Anh gọi là filter (giốn như cái filtre m ì ử ng ng để pha ca afe). Bạn có thể hình dun nôm na đ giản cái filter pha cafe cũng làm nhiệm vụ lọ ng đơn ọc, nó lọc lấy chất cafein hòa lẫn nướ và loại bỏ xác cafe.Trong xử...

Chủ đề:
Lưu

Nội dung Text: Bộ lọc Kalm man

  1. Bộ lọc Kalm man 1.Bộ lọc là gì ? Trước tiê bộ lọc là một quá trìn xử lý nhằm loạị bỏ nh ên, nh m hững gì khôn có giá trị hoặc không ng quan tâm đến và giữ lại những gì có giá trị sử dụng. Tiến Anh gọi là filter (giốn như cái filtre m ì ử ng ng để pha caafe). Bạn có thể hình dun nôm na đ giản cái filter pha cafe cũng làm nhiệm vụ lọ ng đơn ọc, nó lọc lấy chất cafein hòa lẫn nướ và loại bỏ xác cafe.Trong xử lý tí hiệu, bọ lộ được thiế kế y n ớc ỏ ín ộc ết để lọc tín hiệu « sạch » (cần tìm) từ trong tín hiệu trộn lẫ giữa tín hi sạch và n n h ) n ẫn iệu nhiều tín hiệu bẩn (không cần thiết)). Ví dụ đơ giản là bạn có tín hiệu S (signal) tr lẫn với n ơn n u rộn nhiễu N (noi trong mộ tín hiệu tổ ise) ột ổng hợp X. V ta cần lọc để loại bỏ N ra khỏi X. Và k)+N(k) X(k)=S(k Nếu bạn biết rằng nh N dao độ xung qu hiễu ộng uanh 0 và có giá trị trung bình là 0 g kh M đủ lớn. hi Ta thấy r rằng để loại bỏ N, ta có t lấy tổng của X trên m cửa sổ có kích thước M. b thể một c Nhìn ở m khía cạnh nào đó ta đ loại bỏ đư N một h đã ược Tuy nhiê cũng cần phải chú ý r ên, rằng cái bộ lọc có lọc kiể gì thì cũn không thể loại hết toàn bộ ểu ng n nhiễu. Th nên, các bộ lọc cũng c lọc ra đư tín hiệu s hế b chỉ ược sạch, theo ng không c nhiều nh ghĩa còn hiễu, nhưng cũ chỉ là ướ lượng của tín hiệu thự chứ khôn phải chính xác là tín h thực. ũng ớc a ực, ng h hiệu 2.Bộ lọc Kalman là gì ? Trước tiê tên Kalma là tên của người nghĩ ra cái bộ lọc đấy. Vào n 1960, R Kalman đ ên an a c năm R.E đã công bố b báo nổi tiếng về một giải pháp tr hồi để gi quyết bài tóan lọc thô tin rời rạ bài t t ruy iải ông ạc tuyến tính (discrete data linear fil d ltering). Tên đầy đủ của bài báo là " New Appr n a "A roach to Linear Filtering and Predict g tion Problem . Từ đó đ nay cùng với sự phá triển của tí tóan kỹ t ms" đến g át ính thuật số, bộ lọc Kalman đã trở thành ch đề nghiên cứu sôi nổi và được ứn dụng tron nhiều ngà c ã hủ n ng ng ành kỹ thuật công nghệ khác nhau : tr k rong tự động hóa, trong định vị cũng như trong viễn thông ( g g (và nhiều lĩnh vực khác nữa). n Một cách khái quát, bộ lọc Kalm là một tập hợp các ph h b man p hương trình tóan học mô tả một phư ô ương pháp tính tóan truy hồi hiệu qủa c phép ướ đoán trạng thái của một quá trình (process) sa h h cho ớc g ao cho trung bình phươn sai của độ lệch (giữa giá trị thực v giá trị ướ đóan) là nh nhất. Bộ lọc g ng ộ và ớc hỏ Kalman r hiệu quả trong việc ư đóan các trạng thái tr rất ước c rong quá khứ hiện tại và tương lai t ứ, à thậm
  2. chí ngay cả khi tính chính xác của hệ thống mô phỏng không được khẳng định. 3. Học bộ lọc Kalman như thế nào? 3.1. Sơ kết Chúng ta đã biết, bộ lọc chỉ đơn giản như trên, nhưng chúng ta chưa biết bộ lọc Kalman như thế nào (ngoại trừ một định nghĩa khái quát)? Thực ra nó cũng chỉ đơn giản là từ một tín hiệu cần đo, khi chúng ta đo, sẽ có những sai số từ cảm biến, ảnh hưởng đến tín hiệu cần đo, môi trường đo có nhiễu... Tất cả những thứ này, tổng hợp lại, sẽ cho ta một kết quả đo. Học mạch lọc Kalman như thế nào? Đây là một câu hỏi lớn không lớn, nhỏ không nhỏ, nhưng tính quan trọng của nó dành cho những người mới học là không thể chối cãi. Tuy có thể chưa thấu đáo, tường tận, song hy vọng nó có thể giúp các bạn có những ý tưởng cơ bản về mạch lọc Kalman, và bắt đầu nghiên cứu nó một cách phổ biến. Một trong những kiến thức nền tảng để có thể hiểu về nguyên lý của bộ lọc Kalman chính là xác suất. Học bộ lọc Kalman hoàn toàn không khó. Để tìm hiểu về xác suất (dĩ nhiên là nếu bạn không biết về nó) thì có thể tham khảo ở đây. 3.2. Ví dụ về ước lượng 1 Ví dụ chúng ta lấy thước để đo chiều dài của một cây bút. Lần thứ nhất, chúng ta đo được là 10cm, lần thứ hai chúng ta đo được là 10.05cm chẳng hạn. Vậy thì nếu hỏi chiều dài cây bút là bao nhiêu? Có phải trong đầu các bạn luôn cho một giá trị ước lượng tốt nhất là 10.025cm? Điều đó đúng,
  3. nhưng că cứ vào đâ để các bạn ước lượng như vậy? ăn âu n Rồi, nếu bây giờ, mộ anh F lấy c thước đo chiều dài, v được kết quả là 10.02 cm, và một bạn ột cây o và 2 t T khác cũ lấy cây thước đo, và được chiều dài 10.07cm Nếu chỉ c hai kết qu này thôi, ũng à u m. có uả chúng ta sẽ lại ước lư ượng rằng ch dài của cây thước là 10.045 cm! hiều à Vậy thì, t thực chất là không thể đ đánh đồng đư chuyện đ đạc này, m cần có m hệ số đán ược đo mà một nh giá. Chiều dà cây thước là ài chiều dài = alpha * 10.02 (của F đo) + (1-alp i pha)*10.07 (c T đo) của Vậy alph sẽ là bao nhiêu? Căn c vào đâu đ lựa chọn a ha n cứ để alpha? Ví dụ trê để các bạn thấy được k niệm về ước lượng ên n khái ề g. 3.3. Ví d về ước lư dụ ượng 2 Giả sử ch húng ta có một chiếc xe di chuyển vớ vận tốc 20 m ới 0m/s theo m phương x Vị trí ban đ một x. đầu của xe là 0. à Khi đó, v tốc của xe sẽ là: vận x Trong đó ó, là nh vận tốc đo. hiễu Kết quả, nếu bây giờ chúng ta cầ xác định v trí của xe sau 2 phút. V giả sử ch ờ ần vị Và húng ta chỉ qu uan tâm đến c biến đo vị trí hoặc c biến đo vận tốc của xe. Chúng t sẽ chỉ ra đ cảm o cảm ta được 2 phươn ng pháp ước lượng như sau: c a) Phươn pháp 1: ng .... Đây là ướ lượng vị trí của xe, ch nhờ vào c biến vị t của xe, tro đó, ớc t hỉ cảm trí ong là các giá trị v trí vị xe đo đượ ợc. b) Phươn pháp 2: ng (v trí ban đầu của xe) vị u (1 giây sau nếu giả sử xe di chuyển với vận tốc 20m g m/s)
  4. (1 giây sau nữa) y ... Như vậy, cả hai phươ pháp trê cũng đều là một cách để chúng ta ước lượng v trí của xe. , ơng ên, h a vị Vậy áp d dụng lại 3.2, chúng ta sẽ thấy rằng, n dùng hai phương phá ước lượng khác nhau, nếu áp g , chúng ta cũng sẽ có các giá trị ướ lượng khá nhau. Chú ta sẽ tin cách ước lư c ớc ác úng ượng nào hơn n? c) Phươn pháp 3: ng Vậy thì, c chúng ta thử xem phươn pháp ước lượng thứ ba như sau: ử ng [IMG]htt tp://tools.jcis sio.com/tex/ /?%5Chat%77Bx3%7D% %28i%29%20 0=%20alpha a*%5Chat%7 7Bx1 %7D% 228i%29%20+ +%20%281- -alpha%29*% %5Chat%7B Bx2%7D%28 8i%29[/IMG G] Vậy các b có nhận xét gì về cá ước lượn này? bạn n ách ng Một cách chung chun (không ph là tổng q h ng hải quát, chỉ là k niệm sơ khởi), nhiệm vụ của bộ lọc khái m Kalman, chính là tìm ra hệ số alp tối ưu để tìm m pha ể gần đúng với x nhất. n x(t) Vậy nhiệ vụ của mạch lọc Kalm được ph biểu rõ h một chút đó là tìm ư lượng ệm m man hát hơn t, ước gần đúng với x(t) nhấ (giá trị ướ lượng gần đúng với gi trị thực tế nhất) thông qua hiểu biế g ất ớc n iá g ết của chún ta về mô hình của hệ t ng h thống. 3.4. Bản ch của bộ lọc Kalman hất c
  5. Hình trên mô hình hó hoạt động của mạch l Kalman. Chúng ta có tín hiệu đo được, chúng ta n óa g lọc ó g có mô hìn của tín hi đo được (đòi hỏi tuy tính) và s đó là áp dụng vào tro hệ thống nh iệu yến sau ong g phương ttrình của mạ lọc để ướ lượng trạn thái quan tâm. Thực r tín hiệu đo là không k ạch ớc ng ra o khó, phương ttrình đã có sắ cái chung ta cần chín là mô hìn hoá hệ th ắn, nh nh hống. Để có thể ứng dụn ng một cách hiểu quả mạch lọc Kalm thì chún ta phải mô hình hóa đ h m man ng được một các tuyến tính sự ch h thay đổi của trạng thá cần ước lư ái ượng (estima hoặc ướ đoán (pred ate) ớc dict). 4. Bộ lọc Kalman rờ rạc c ời Bộ lọc K Kalman đề cậ đến bài toán tổng quát đi ước lượn trạng thái của một qu trình được mô ập t ng i uá c hình hóa một cách rờ rạc theo th gian bằng một phươn trình ngẫu nhiên tuyến tính như sa ời hời g ng u n au [IMG]htt tp://tools.jcis sio.com/tex/ /?x_k=A*x_ _%7Bk-1%7D D+B*u_%7B Bk-1%7D+w w_%7Bk- 1%7D[/IM (1) MG] và kết qu đo đạc uả [IMG]htt tp://tools.jcis sio.com/tex/ /?z_k=H*x_k k+v_k[/IMG (2) G] Trong đó w và v là 2 vector biến ngẫu nhiên đại diện cho nhiễu hệ th ó o hông và nhiễ đo đạc. 2 b ễu biến ngãy nhiê này độc lập và được g sử là tuâ theo phân bố Gauss vớ trung bình =0 và ma trận ên l giả ân ới h hiệp biến (covariance lần lượt là Q và R n e) à w ~N(0,Q Q) v ~N(0,R R) Nếu vect trạng thái x có kích th tor i hước là n, th ma trận A sẽ có kích th hì hứoc là n x n B (n x l) là ma n. à trận phụ thuộc vào đi khiển tối ưu u với u là vector có kích thước l l. Vector đ đạc z có k iều i là đo kích thước là m nên ma tr H sẽ là m x n. Chú ý rằng các ma trận Q,R, A H có thể t rận a A, thay đổi theo thời o gian (từn bước k), nhưng ở đây chùng được giả sử khôn đổi. ng n c ng Đến đây ta thấy bài toán lọc Kal t lman chính là đi tìm giá trị ược lượ và ước đ á ợng đoán của trạ ạng thái x kh ta biết đượ sự biến th hi ợc hiên của nó và ta đo đượ một đai l ược lượng z mà p thuộc tu phụ uyến tính vào x. Ví dụ tro bài toán chuyển động ta biết đượ qui luật th đổi của v tốc, như ta lại có thể ong g, ợc hay vận ưng đo được sự thay đổi của vị trí. Kh đó, cái ta cần tìm là vận tốc ược lư c hi ượng. Nếu ta gi sử iả và lần lượ là tiên ngh ợt hiệm và tiền nghiệm ước n c lượng củ giá trị x tạ thời điểm k Giá trị tiên nghiệm thu được chỉ d vào mô h ủa ại k. n u dựa hình hệ thốn ng (1), còn g trị hậu ng giá ghiệm là giá trị thu được sau khi đã có kết quả đ đạc (2). Khi đó sai số á c đo của ước đđoán tiên ng ghiệm và hậu nghiệm lần lượt là u n
  6. Ma trận h biến của 2 sai số trê được tính lần lượt the công thức hiệp ên h eo Mục đích của chúng ta bây giờ là đi tìm hệ số K sao cho thỏa mản ph h à ố hương trình sau [IMG]htt tp://tools.jcis sio.com/tex/ /?%5Chat%7 7Bx%7D_k= =%5Chat%7 7Bx%7D_k% %5E- %20+%220K*%28z_k k-H*%5Cha at%7Bx%7DD_k%5E-%2 29[/IMG] (3) ) Đến đây ta thấy , K cũng chính là alpha mà đ giới thiệu ở trên. Phươ trình (3) có nghĩa là giá c à đã ơng ) à trị hậu ngghiệm của ước lượng x s được tính bằng giá trị tiên nghiệm của nó và s đó thêm/ sẽ m sau /bớt đi một tí dựa vào sai số giữa giá trị đo được v giá trị đo đạc ước đoá và án [IMG]htt tp://tools.jcis sio.com/tex/ /?H*%5Chat t%7Bx%7D_ _k%5E-[/IMMG]. K ở đây chính là độ lợi y ộ (gain) củ mạch lọc Kalman. ủa K Câu hỏi đ ra là làm thế nào để c đặt m chọn K tối ư nhất. Tối ưu ở đây the nghĩa là c ưu eo covariance củ ủa sai số của ước lượng hậu nghiệm (tính từ (3)) a m [IMG]htt tp://tools.jcis sio.com/tex/ /?%20e_k=K K*%28z_k-H H*%5Chat% %7Bx%7D_k k%5E- %29[/IM là nhỏ nh Bằng cá thay e_k vào trong biểu thức tính P_k, rồi sau đó lấy đạo MG] hất. ách h o hàm của P_k theo K, ta sẽ tìm ra được giá trị K mà tương ứng với nó P_k là nhỏ nhất. , ị g ó thay đ theo thời gian k và c đổi chính là độ lờ cần tìm củ mạch lọc Kalman tron mỗi ước ời ủa ng đoán. Tóm lại m mạch lọc Kaalman bao gồ 2 bước : 1- Ước đoán trạng thái t nghiệm, và sau đó, 2 ồm n tiên , 2- dựa vào k quả đo để hiệu chỉnh lại ước đoá Ta có thể tóm tắt lại h động củ mạch lọc kết đ h án. ể hoạt ủa Kalman bbằng các phư ương trình sau: Giả sử bạ đã có giá trị ước đoán ạn n ở tại t thời điểm (k và biết đ k-1) được giá trị đ khiển điều . (Giá trị b đầu tại th điểm 0 đ ban hời được chọn [IMG]htt tp://tools.jcis sio.com/tex/ /?%5Chat%7 7Bx%7D_% %7B0%7D=H H*z_0[/IMG Lúc đó bạn G]). chỉ việc l lượt tiến hành các tín toán từ 1 đến 2 ở bướ 1 rồi từ 1 đ 3 trong b lần nh ớc đến bước 2 như trong hình dướ đây. ới
  7. Hình trên tóm tắt cơ bản của mạch lọc Kalman. Như đã nhắc đến ở phần 3.4, cái khó của mạch lọc Kalman là làm thể nào để mô hình hóa các trạng thái và đo đạc để có được 2 phương trình (1) và (2) để có thể áp dụng Kalman. 

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản