Một trong số đó là phương pháp tổng hợp dữ liệu cảm biến sensor data fusion để nâng cao độ chính xác định vị robot.. Vì lĩnh vực tổng hợp cảm biến rất rộng, bản luận văn này chỉ hạn chế
Trang 1NGUYỄN XUÂN HẢI
NÂNG CAO ĐỘ CHÍNH XÁC ĐỊNH VỊ ROBOT BẰNG PHƯƠNG PHÁP TỔNG HỢP DỮ LIỆU CẢM BIẾN LẬP MÃ QUANG VỚI BỘ LỌC
KALMAN MỞ RỘNG
LUẬN VĂN THẠC SĨ CÔNG NGHỆ ĐIỆN TỬ - VIỄN THÔNG
Hà Nội - 2014
Trang 2NGUYỄN XUÂN HẢI
NÂNG CAO ĐỘ CHÍNH XÁC ĐỊNH VỊ ROBOT BẰNG PHƯƠNG PHÁP TỔNG HỢP DỮ LIỆU CẢM BIẾN LẬP
MÃ QUANG VỚI BỘ LỌCKALMAN MỞ RỘNG
Ngành: Công nghệ Điện tử - Viễn thông
Chuyên ngành: Kỹ thuật Điện tử
Mã số: 60520203
LUẬN VĂN THẠC SĨ CÔNG NGHỆ ĐIỆN TỬ - VIỄN THÔNG NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS TRẦN QUANG VINH
Hà Nội - 2014
Trang 3LỜI CAM ĐOAN
Trong thời gian thực hiện luận văn, tôi có tham khảo một số tài liệu từ nhiềunguồn khác nhau như đã liệt kê trong phần tài liệu tham khảo Những phần tham khảonày đều đã đư ợc đánh dấu cụ thể trong luận văn Các phần còn lại, tôi xin cam đoan là
do tôi tự tìm hiểu để viết ra Nếu có bất kỳ sự sai xót nào, tôi xin chịu hoàn toàn tráchnhiệm
Hà Nội, ngày 02 tháng 06 năm 2014
Nguyễn Xuân Hải
Trang 4LỜI CẢM ƠN
Để hoàn thành Luận văn Thạc sĩ của mình, em xin gửi lời cảm ơn chân thànhtới các thầy cô trường Đại học Công Nghệ - Đại học Quốc Gia Hà Nội đã truyền đạtnhững kiến thức quý báu cho em trong suốt quá trình học tập và hoàn thành Luận vănThạc sĩ
Em xin gửi lời cảm ơn tới PGS.TS Trần Quang Vinh, người trực tiếp chỉ bảo,hướng dẫn em trong suốt quá trình nghiên cứu và hoàn thành Luận văn Thạc sĩ
Cuối cùng, tôi xin chân thành cảm ơn gia đình, bạn bè và đồng nghiệp đã đ ộngviên, khuyến khích tôi trong suốt quá trình học tập và nghiên cứu
Xin chân thành cảm ơn
Hà Nội, ngày 02 tháng 06 năm 2014
Nguyễn Xuân Hải
Trang 5MỤC LỤC
LỜI CAM ĐOAN 1
LỜI CẢM ƠN 2
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ 5
MỞ ĐẦU 6
CHƯƠNG 1: TỔNG QUAN LÝ THUYẾT VỀ ROBOT DI ĐỘNG 8
1.1 Robot thông minh 8
1.2 Robot di động thông minh 9
CHƯƠNG 2: PHƯƠNG PHÁP TỔNG HỢP CẢM BIẾN VỚI BỘ LỌC KALMAN 12 2.1 Phương pháp tổng hợp cảm biến dùng cho robot di động 12
2.2 Phương pháp tổng hợp cảm biến với bộ lọc Kalman 13
CHƯƠNG 3: MỘT SỐ CẢM BIẾN HIỆN ĐẠI VÀ PHƯƠNG PHÁP ĐỊNH VỊ ROBOT DI ĐỘNG 20
3.1 Phân loại các 20
3.1.1 Cảm biến lập mã trục xoay (cảm biến lập mã quang) 20
3.1.2 Cảm biến chỉ hướng (heading sensor) 21
3.1.3 Cảm biến siêu âm đo khoảng cách đến vật thể gần 22
3.1.4 Cảm biến đo xa laser (Laser Range Finder - LRF) 23
3.1.5 Cảm biến ảnh và thị giác máy 24
3.2 Một số phương pháp định vị cho robot di động 25
3.2.1 Phương pháp dead-reckoning hay odometry 25
3.2.2 Hệ thống dẫn đường cột mốc chủ động 25
3.2.3 Hệ thống dẫn đường toàn cầu GPS 27
3.2.4 Dẫn đường bằng vật mốc 27
3.2.5 Định vị dựa trên bản đồ 28
CHƯƠNG 4: NÂNG CAO ĐỘ CHÍNH XÁC ƯỚC LƯỢNG VỊ TRÍ CHO ROBOT BẰNG PHƯƠNG PHÁP TỔNG HỢP CẢM BIẾN 32
4.1 Xây dựng mô hình động học của robot 32
4.2 Tính toán các ma trận trong vòng lặp đệ quy Kalman 34
CHƯƠNG 5: THỰC NGHIỆM VÀ THẢO LUẬN 37
Trang 65.1 Thiết lập thực nghiệm 37
5.2 Kết quả thực nghiệm áp dụng bộ lọc Kalman cho tổng hợp dữ liệu của một cảm biến lập mã quang 38
5.3 Tổng hợp cảm biến từ phép đo odometry với cảm biến chỉ hướng 40
5.3.1 Cập nhật các tham số cho các ma trận 40
5.3.2 Hiệu chỉnh chính xác góc quay qua bộ lọc Kalman 41
KẾT LUẬN 43
DANH MỤC TÀI LIỆU THAM KHẢO 44
Trang 7DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1 Các bộ phận của một robot .8
Hình 1.2 Các khối cơ bản trong robot di động 10
Hình 2.1 Sơ đồ thuật toán bộ lọc Kalman tuyến tính rời rạc 15
Hình 2.2 Sơ đồ thuật toán bộ lọc Kalman mở rộng 18
Hình 3.1 Đĩa có khe ch ắn sáng và tín hiệu ra bộ lập mã quang 21
Hình 3.2a Mô-đun cảm biến từ-địa bàn CMPS03 22
Hình 3.2b Nguyên lý hoạt động của cảm biến từ-địa bàn 22
Hình 3.3a Các cảm biến siêu âm 23
Hình 3.3b Nguyên lý hoạt động của cảm biến siêu âm 23
Hình 3.4 Một số loại máy quét laser của công ty SICK 23
Hình 3.5 Thời gian bay của tia laser 24
Hình 3.6 Phép đo dựa trên 3 góc 26
Hình 3.7 Các thành phần của hệ thống GPS .27
Hình 3.8 Phương pháp xác định vị trí dựa vào bản đồ 29
Hình 3.9 Mô hình robot của Schiele và Crowley vị trí đặt tại hành lang 30
Hình 4.1 Thế (tọa độ và hướng) và các tham số của robot 32
Hình 5.1 Đường đi thực của robot (blue line) cùng các đường đi nhận được chỉ qua phép đo (green) và đường ước tính khi sử dụng thêm EKF (brown) 38
Hình 5.2 Các độ lệch của đường đi nhận được qua phép đo và đường ước tính khi sử dụng EKF so với đường đi thực của robot 40
Hình 5.3 Độ lệch theo các phương x, y, θ giữa vị trí ước lượng và vị trí thực 39
Hình 5.4 Hiệu quả EKF trong hai trường hợp điều khiển robot đi theo đúng dạng đường mong muốn khi có và không có EKF .41
Hình 5.5 Quỹ đạo ước tính của robot với các cấu hình EKF khác nhau 42
Trang 8MỞ ĐẦU
Cùng với sự phát triển mạnh mẽ của khoa học kỹ thuật ngày nay, ngànhrobotics đóng vai trò rất quan trọng, tiên phong và làm nền tảng cho các lĩnh vực khoahọc công nghệ và tự động hoá khác
Nhiều ứng dụng của các ngành nghề, lĩnh vực khác nhau đòi hỏi cần phải trang
bị thiết bị hoàn toàn tự động làm việc theo chương trình hay do con người điều khiểnnhư robot
Robot công nghiệp, thường là các tay máy (arm-robot) trong các hệ thống sản
xuất tự động Robot trong các ứng dụng này được đặt tại một vị trí cố định, làm việctrong môi trường nhất định biết trước
Thời gian gần đây, bắt đầu bằng các xe tự hành trong vũ trụ, xuất hiện một loại
robot khác là robot thông minh Một loại trong số đó là các robot di động hoạt động tự
trị (autonomous) Các robot di dộng với khả năng giám sát môi trường xung quanh đểđưa ra các quyết định cần thiết trong quá trình hoạt động thực hiện công việc đượcgiao, cụ thể là tự động đi tới đích chính xác và an toàn Trong hệ thống này, robot thunhận thông tin qua các cảm biến, xử lý dữ liệu thu được và tự đưa ra các quyết định
Quá trình dẫn đường của các robot di động thông minh thường được phân tíchthành 4 giai đoạn: cảm nhận, định vị, vạch đường đi và điều khiển chuyển động
Giai đoạn định vị là rất quan trọng, nó cho phép trả lời câu hỏi: robot đang ởđâu? để từ đó có thể vạch ra các quyết định dẫn đường Để có được câu trả lời này, bộphận điều khiển robot cần phải có được các dữ liệu môi trường (qua các cảm biếnngoại) hay dữ liệu về bản thân robot (qua các cảm biến nội) trong giai đoạn cảm nhận
Vì hệ thống robot chứa đựng nhiều yếu tố ngẫu nhiên có thể gây nên các sai sốcũng như không thể có loại cảm biến nào đủ hoàn hảo để có thể chỉ dùng nó là đủ đểthực hiện định vị và lập bản đồ một cách chính xác Lý do đó tạo nên một số phương
pháp tăng độ chính xác cho quá trình định vị Một trong số đó là phương pháp tổng hợp dữ liệu cảm biến (sensor data fusion) để nâng cao độ chính xác định vị robot.
Vì lĩnh vực tổng hợp cảm biến rất rộng, bản luận văn này chỉ hạn chế nghiêncứu phương pháp tổng hợp dữ liệu cảm biến với bộ lọc Kalman mở rộng để nâng cao
độ chính xác định vị cho robot di động
Ngoài phần mở đầu và kết luận, bản luận văn có nội dung chính như sau:
- Chương 1: Trình bày các nét cơ bản về robot di động
Trang 9- Chương 2: Tổng quan về phương pháp tổng hợp cảm biến và bộ lọc Kalman
- Chương 3: Một số cảm biến hiện đại và phương pháp định vị robot di động
- Chương 4: Nâng cao độ chính xác ước lượng vị trí robot bằng tổng hợp cảmbiến với bộ lọc Kalman mở rộng
- Chương 5: Kết quả thực nghiệm và thảo luận
Trang 10CHƯƠNG 1: TỔNG QUAN LÝ THUYẾT VỀ ROBOT DI ĐỘNG
1.1 Robot thông minh
Do nhu cầu của con người ngày càng đòi hỏi ứng dụng rộng rãi các phương tiện
tự động, xu hướng tạo ra những thiết bị tự động có tính linh hoạt cao đang hình thành.Các thiết bị này đang thay thế dần các máy tự động cứng chỉ đáp ứng một việc nhấtđịnh Điều này dẫn đến nhu cầu ứng dụng robot để tạo ra các hệ thống tự động linhhoạt
Thuật ngữ robot được sinh ra từ trên sân khấu, không phải trong phân xưởngsản xuất Những robot xuất hiện lần đầu tiên trên ở NewYork vào ngày 09/10/1922trong vở “Rossum’s Universal Robot” của nhà soạn kịch người Tiệp Karen Kapek viếtnăm 1921, còn từ “robot” là cách gọi tắt của từ “robota” - theo tiếng Tiệp có nghĩa làcông việc lao dịch
Những robot thực sự có ích được nghiên cứu để đưa vào những ứng dụng trongcông nghiệp, y học, đời sống, quân sự, không gian…
Từ những năm 80, nhất là vào những năm 90, do áp dụng rộng rãi các tiến bộ
kỹ thuật về vi xử lý và công nghệ thông tin, số lượng robot đã gia tăng v ới nhiều tínhnăng vượt bậc Chính vì vậy mà robot đã có một vị trí quan trọng trong những ứngdụng công nghiệp, y học, đời sống, quân sự, không gian…
Các bộ phận cơ bản của một robot có thể được mô tả như trên hình 1.1 gồm: bộphận cảm nhận, bộ điều khiển và bộ chấp hành
Hình 1.1 Các bộ phận của một robot.
Bộ phận cảm nhận có nhiệm vụ thu thập thông tin từ môi trường dựa trên sốliệu các cảm biến đặt trên robot Môi trường có thể là biết trước hoặc không biết trước
Trang 11Bộ điều khiển có nhiệm vụ xử lý các thông tin thu được từ bộ cảm nhận Bộphận điều khiển thường là các máy tính gồm các bộ xử lý và bộ nhớ cùng các giaodiện ghép nối vào/ra.
Bộ chấp hành thực hiện các lệnh từ bộ điều khiển để tác động lại môi trường.Robot thông minh là một hệ thống có thể thực hiện những thao tác, hành vi độclập trên cơ sở các biến môi trường thu được mà không theo sự sắp đặt cụ thể nàotrước Mức độ thông minh có thể từ đơn giản đến phức tạp Những robot nhận dạngvật thể, lựa chọn sản phẩm theo một đặc tính nào đó, những robot tránh vật cản, nhậndạng giọng nói… là những robot thông minh
Nếu chương trình điều khiển được nạp toàn bộ từ máy tính PC vào bộ nhớ củarobot, được lưu trữ theo kiểu cố định để cho phép một khi khởi động, robot có thể hoạt
động độc lập không cần người điều khiển thì đó là robot hoạt động kiểu tự quản trị.
1.2 Robot di động thông minh
Luận văn này tập trung nghiên cứu tìm hiểu một trong các loại robot là loạirobot di động thông minh, còn gọi là robot di động hoạt động tự quản trị
Có một số sự khác biệt quan trọng giữa các yêu cầu của việc lắp đặt robot cố
định truyền thống với các yêu cầu của một hệ thống robot di động Một trong những
mối quan tâm hàng đầu là sự không biết trước môi trường vận hành của robot di động.Đối với các hệ thống robot cố định, người ta thường xây dựng (thiết kế) một khônggian làm việc nhất định để thực hiện công việc và robot cố định thường thực hiện cáccông việc lặp đi lặp lại trong môi trường xác định trước Đối với các hệ thống robot diđộng, việc nhận biết được môi trường làm việc là một yếu tố quyết định tới các “hànhđộng” của robot, chỉ khi nhận biết được đầy đủ các thông tin về môi trường xungquanh thì robot di động mới có thể thích ứng được trong các môi trường làm việc khácnhau
Robot di động phải có một số bộ phận chuyển động Chuyển động có thể dướidạng bánh xe, chân, cánh hoặc một số cơ cấu khác Việc lựa chọn cơ cấu chuyển động
là dựa vào chức năng của robot và các công việc của robot cần phải thực hiện Trongnhiều môi trường làm việc công nghiệp, bánh xe là dạng chuyển động thích hợp nhất.Đối với các hệ thống nghiên cứu ứng dụng khác, chân hoặc cánh có thể giúp cho robot
di động chuyển động được trên địa hình mà robot không có khả năng đi qua
Một nhân tố quan trọng trong thiết kế của các hệ thống robot di động là khảnăng mang theo các thiết bị Thiết bị bao gồm nguồn điện cũng như t ất cả các phầncứng là các bộ cảm biến và các bộ xử lý mà robot đòi hỏi Các thiết bị lắp đặt của
Trang 12robot cố định có thể được kết nối trực tiếp với các nguồn điện và bộ xử lý, không gianlàm việc thường được xác định trước và có thể được kiểm soát Hầu hết các robot diđộng đều có một trọng tải nhất định, điều này có thể dẫn tới những sự giới hạn trongthiết kế của hệ thống, đặc biệt trong các ứng dụng hay bị giới hạn về kích cỡ và cânnặng.
Các thành phần cơ bản, thông dụng trong các hệ thống robot di động sử dụngtrong thực tế được chỉ ra như trên hình 1.2
Hình 1.2 Các khối cơ bản trong robot di động
Các khối cơ bản cho các hệ thống robot di động bao gồm các bộ phận cảm biến,
bộ phận dẫn đường, các mô-đun lập kế hoạch, điều khiển và các bộ chấp hành dùng để
di chuyển robot và tác động tới môi trường của nó Trong khi một số các phần cụ thểcủa robot di động sẽ phụ thuộc vào mục đích ứng dụng, một hệ thống robot di dộngđiển hình đòi hỏi phải có tất cả các khối trên thì mới vận hành được Thông tin vềtrạng thái môi trường xung quanh của robot được cung cấp với các cảm biến nội vàcảm biến ngoại Thông tin này được bộ xử lý trung tâm (có cài đặt sẵn các chươngtrình, thuật toán dẫn đường ) sử dụng để ước lượng trạng thái của hệ thống, không chỉbao gồm trạng thái của bản thân robot mà cả trạng thái của môi trường xung quanh nó.Ước lượng này được sử dụng để lập kế hoạch hoạt động của robot và phát ra các lệnhcho các cơ cấu chấp hành của robot
Trang 13Thông tin về trạng thái của hệ thống được cung cấp bởi các cảm biến nội và cảm biến ngoại Thông tin này được một khối dẫn đường (có thể là các môđun phần
cứng hoặc phần mềm, nhưng thường là một chương trình phần mềm có khả năng tínhtoán) sử dụng để ước lượng trạng thái của hệ thống Tín hiệu này sau đó được mô đunlập kế hoạch và điều khiển sử dụng để phát ra các lệnh gửi tới các bộ phận thao tác củarobot
Thiết kế của các hệ thống robot di động phần nhiều sẽ bị chi phối bởi mục đíchứng dụng Không có giới hạn về số lượng các kết hợp giữa các thiết bị thao tác, các bộphận cảm biến và các thuật toán điều khiển cho các hệ thống robot di động Hơn nữa,luồng thông tin trong phạm vi hệ thống sẽ thay đồi tuỳ thuộc vào quá trình thực thi, sẽ
có một số thiết kế robot khác đáng kể so với những robot trình bày trong hình 1.2.Trong một số trường hợp, dữ liệu từ các bộ phận cảm biến được trực tiếp cung cấp cho
bộ lên kế hoạch và điều khiển, cho phép hệ thống phản ứng nhanh hơn với những thayđổi mạnh mẽ của môi trường
Do không có loại cảm biến nào là hoàn hảo và thích hợp cho mọi ứng dụng, nênngoài việc mong đợi các thành tựu của công nghệ vật liệu sẽ cho ra đời các loại cảm
biến tốt hơn thì việc nghiên cứu áp dụng các thuật giải tổng hợp dữ liệu các cảm biến
là cần thiết Điều đó càng cho thấy sự cần thiết phải gắn kết hữu cơ giữa phần cứng vàphần mềm một cách hợp lý cho một robot di động thông minh Vì vậy việc tập trung
vào xây dựng phát triển các giải thuật tổng hợp cảm biến (sensor fusion) trên cơ sở
thiết kế lắp ráp phần cứng của các robot di động thông minh tự quản trị là hết sức cầnthiết Chương tiếp theo trình bày về tổng hợp cảm biến
Trang 14CHƯƠNG 2: PHƯƠNG PHÁP TỔNG HỢP CẢM BIẾN VỚI
BỘ LỌC KALMAN
2.1 Phương pháp tổng hợp cảm biến dùng cho robot di động
Robot dùng số liệu thu được từ các cảm biến để xác định trạng thái của nó trongmôi trường, trên cơ sở đó mà ra các quyết định cho các nhiệm vụ dẫn đường như định
vị và lập bản đồ Tuy nhiên, chưa thể có loại cảm biến nào hoàn hảo để thực hiện
nhiệm vụ này một cách thật chính xác được Vì vậy kỹ thuật tổng hợp cảm biến
(sensor fusion) đã được sử dụng, đó là việc sử dụng đồng thời các dữ liệu từ một cảmbiến hay từ nhiều cảm biến rồi lấy thông tin hợp nhất ra để tạo nên bức tranh về trạngthái môi trường chính xác hơn Một phương pháp tổng hợp cảm biến hiệu quả nhất để
ước tính đồng thời các giá trị đo của các cảm biến đó là việc dùng bộ lọc Kalman mở rộng (EKF) với các phép tính ma trận Tổng hợpcảm biến có thể được định nghĩa như
sau: đó là quá trình kết hợp các dữ liệu nhận được từ nguồn các cảm biến để có được
kết quả thông tin với một ý nghĩa tốt hơn so với khi sử dụng các nguồn này riêng lẻ
Vì dữ liệu cảm biến có nhiều loại nên có tác giả đã dùng thuật ngữ “tổng hợp
thông tin” như một thuật ngữ tổng thể cho tổng hợp các loại dữ liệu Có thể định nghĩa
thuật ngữ tổng hợp thông tin như sau [11]:
Tổng hợp thông tin bao gồm lý thuyết, và các công cụ hình thành, được sử dụng
để khai thác sự đồng vận của thông tin từ nhiều nguồn (cảm biến, cơ sở dữ liệu, thông
tin thu thập bởi con người, …) để đưa ra quyết định hay hành động với một ý nghĩa tốt
hơn về mặt chất lượng hoặc số lượng, về độ chính xác, chắc chắn,…so với khi sử dụng
một nguồn đơn không khai thác sự đồng vận
Bằng cách xác định như một tập con của tổng hợp thông tin, thuật ngữ tổng hợp
cảm biến có thể được định nghĩa như sau:
Tổng hợp cảm biến là quá trình kết hợp các dữ liệu nhận được để có được kết
quả thông tin với một ý nghĩa tốt hơn so với khi sử dụng các nguồn này riêng lẻ
Ngoài các định nghĩa như trên, một số tác giả còn phân loại tổng hợp cảm biến
ra hai vấn đề là tổng hợp trực tiếp, và tổng hợp gián tiếp [10] Tổng hợp trực tiếp có
nghĩa là tổng hợp các dữ liệu cảm biến từ một tập hợp các quá trình thu thập giá trị dữ
Trang 15liệu cảm biến của các cảm biến đồng nhất hoặc không đồng nhất Trong khi đó tổng
hợp gián tiếp sử dụng nguồn thông tin như là một kiến thức tiên nghiệm về môi
trường Do đó, tổng hợp đa cảm biến mô tả các hệ thống tổng hợp trực tiếp, còn lại
tổng hợp thông tin bao gồm các qui trình tổng hợp gián tiếp.
Về nguyên tắc, một hệ thống sử dụng nhiều nguồn dữ liệu cảm biến sẽ đưa rađược một kết quả có ý nghĩa hơn là từ một nguồn dữ liệu đơn
Xét một ví dụ đơn giản là cần định vị chính xác vị trí và hướng của robot khi nó
di chuyển trong một không gian chưa biết trước Nếu chỉ sử dụng một camera ảnh thì
có thể xác định khá chính xác góc hướng của robot, nhưng không thể xác định chínhxác khoảng cách từ robot đến một vật cản nào đó Nhưng nếu kết hợp dữ liệu từcamera này với dữ liệu nhận được qua các cảm biến siêu âm hay máy đo xa laser thì cóthể xác định được chính xác không những góc hướng của robot mà còn cả khoảngcách từ robot đến đối tượng Một ví dụ tiếp theo là bằng cách sử dụng các bộ lập mãtrục xoay trong phương pháp odometry cho phép định vị robot khá đơn giản Tuynhiên, với mô hình hệ thống khá đơn giản như vậy, các giá trị định vị gặp phải các sai
số tích lũy bị gây nên do các kết cấu cơ khí được thiết kế không thể thật sự hoàn hảotrong các robot Nếu áp dụng phương pháp tổng hợp cảm biến bằng việc xử lý các sốliệu đo được qua bộ lọc Kalman mở rộng sẽ cho phép cải thiện đáng kể độ chính xácđịnh vị kiểu này
2.2 Phương pháp tổng hợp cảm biến với bộ lọc Kalman
Bộ lọc Kalman sử dụng mô hình toán học cho lọc các tín hiệu bằng cách sửdụng các phép đo với một số lượng đáng kể các sai số thống kê và có hệ thống.Phương pháp được phát triển bởi Kalman và Bucy vào năm 1960 [3,8]
Thông thường, một bộ lọc Kalman tổng hợp dữ liệu đo được trong một khoảngthời gian liên tiếp, cung cấp một ước tính khả năng xảy ra lớn nhất của một tham số
Nó cũng có thể liên kết với các đầu vào của đa cảm biến thành một vector của cáctrạng thái bên trong có chứa các tham số quan tâm, miễn là chúng chỉ phụ thuộc tuyếntính giữa các đầu vào và các trạng thái của hệ thống [2] Bộ lọc sử dụng thuật toán thờigian rời rạc để loại bỏ nhiễu từ các tín hiệu của cảm biến để tạo ra được dữ liệu tổnghợp, ví dụ ước tính các các giá trị làm trơn của vị trí, vận tốc, và gia tốc tại một dãy
Trang 16các điểm trong quỹ đạo Mô hình bộ lọc Kalman chuẩn được suy ra từ 2 phương trìnhtuyến tính.
Phương trình thứ nhất mô tả động học của hệ thống:
x + = A x +B u +w (2.1)
Trong đó x k là véc tơ trạng thái của hệ thống tại thời điểm k A là ma trận trạng
thái không suy biến Véc tơ u k miêu tả đầu vào hệ thống tại thời điểm k, w k là một biếnngẫu nhiên biểu diễn cho nhiễu hệ thống
Phương trình tuyến tính thứ hai mô tả quan sát nhiễu của hệ thống, với phép đo
Trong mỗi phần tử của vec tơ z k chứa một quan sát cảm biến tại thời điểm k.
Ma trận H liên quan tới các phép đo trạng thái bên trong, v kbiểu diễn nhiễu đo
Các biến ngẫu nhiên w k và v kđược giả định là nhiễu quá trình và nhiễu đo; độclập với nhau, ồn trắng và có phân bố xác suất chuẩn:
Như vậy, quá trình thực hiện của bộ lọc Kalman được chia thành 2 giai đoạn là
giai đoạn dự đoán (ước tính, đánh giá) và giai đoạn hiệu chỉnh Độ khuếch đại Kalman K k sẽ được tính toán trước tiên, sau đó vector trạng thái và ma trận lỗi tươngquan P k sẽ được cập nhật từ các đánh giá bước trước xˆk− và P k−
Trang 17Để khởi động bộ lọc Kalman, người ta phải cung cấp một ước tính tiên nghiệm
0
ˆx−và một ước tính hiệp phương sai của nó P0− P0−có thể được khởi tạo với một ướctính giá trị ban đầu không chính xác, khi đó ứng dụng tiếp theo của bộ lọc Kalman sẽcho P k− tiếp cận gần với giá trị chính xác của nó
Nếu giá trị của Q kđược chọn là lớn hơn chính giá trị thật của nó, bộ lọc Kalman
sẽ đặt độ tin cậy vào các giá trị đo lường hơn là hệ thống Khi đó, các kết quả đánh giá
sẽ phụ thuộc sai số của phép đo Nếu giá trị Q kchọn nhỏ hơn chính nó, độ trễ thời gian
sẽ được tăng lên Khi Q knhỏ hơn rất nhiều so với giá trị thật, bộ lọc sẽ phân kỳ dẫn
đến kết quả là không ổn định về mặt tính toán, như vậy việc chọn giá trị Q k thôngthường dựa trên thực nghiệm xˆ , P0− 0−
k
z
Hình 2.1 Sơ đồ thuật toán bộ lọc Kalman tuyến tính rời rạc.
Tính hệ số khuếch đại Kalman
Trang 18Trong robot di động, bộ lọc Kalman được sử dụng để hiệu chỉnh giá trị ướclượng tọa độ và góc hướng dựa trên các phép đo có nhiều dữ liệu đầu vào khác nhau
[2] Tuy nhiên như đã mô tả phần trên, bộ lọc Kalman giải quyết các vấn đề phổ biếncủa ước tính trạng thái x∈ℜmmà quá trình điều khiển thời gian rời rạc phụ thuộc vàophương trình sai phân ngẫu nhiên tuyến tính Nhưng điều gì sẽ xảy ra, nếu qúa trìnhước tính hoặc mối quan hệ giữa các phép đo với quá trình điều khiển là phi tuyến? Để
giải quyết bài toán này, bộ lọc Kalaman mở rộng viết tắt là EKF (extended Kalman filter) đã được phát triển Bằng việc khai triển chuỗi Taylor tại lân cận m ột điểm nào
đó trên quỹ đạo, ta có thể tuyến tính hóa sự dự đoán xung quanh dự đoán hiện tại sửdụng một phần dẫn xuất của quá trình và chức năng đo lường để đưa vào tính toán dựđoán Để thực hiện, ta bắt đầu hiệu chỉnh từ bộ lọc Kalman rời rạc Hãy giả đ ịnh rằngphương trình trạng thái của hệ thống (2.1) của ước tính trạng thái x∈ℜm, nhưng quátrình điều khiển thời gian rời rạc phụ thuộc vào phương trình sai phân ngẫu nhiên phituyến tính:
Các biến ngẫu nhiên w k và v k cũng được giả định là nhiễu quá trình và nhiễu đo
như (2.1) và (2.2), trong trường hợp này hàm phi tuyến, f, ở (2.8) liên quan đến trạng thái ở bước thời gian hiện tại k đến trạng thái ở bước thời gian tiếp theo k+1 Nó bao gồm như các tham số, u k và nhiễu quá trình, w k Hàm phi tuyến, h, của phép đo trong phương trình (2.9) biểu diễn mối liên quan giữa trạng thái x k với phép đo z k.
Thực tế, không biết được các giá trị riêng lẻ của nhiễu w k và v k tại mỗi bướcthời gian Tuy nhiên, có thể tính gần đúng vec-tơ trạng thái và vec-tơ đo lường:
1 ( , , 0)
và:
Trang 19trong đó:
- x kvà z klà các vec-tơ trạng thái và phép đo thực
- xkvà zklà các vec-tơ trạng thái và phép đo xấp xỉ từ (2.10) và (2.11)
- xˆk ước tính trạng thái hậu nghiệm tại thời điểm k.
-Các biến ngẫu nhiên w k và v k cũng được giả định là nhiễu quá trình và nhiễu
Trang 20Hình 2.2 Sơ đồ thuật toán bộ lọc Kalman mở rộng.
Tương tự như bộ lọc Kalman rời rạc,quá trình thực hiện của bộ lọc Kalman mở
rộng cũng được chia thành 02 giai đoạn là giai đoạn dự đoán (ước tính, đánh giá) và
hiệu chỉnh như trên hình 2.2
1 Bước dự đoán với các phương trình cập nhật:
P là ma trận hiệp phương sai của sai số dự báo trạng thái.
Q k-1 là ma trận hiệp phương sai nhiễu đầu vào phụ thuộc vào độ lệchchuẩn của nhiễu
2 Bước hiệu chỉnh với các phương trình cập nhật phép đo:
Trang 21hệ thống không phải lúc nào cũng khả thi Vì vậy EKF đã đư ợc dẫn xuất từ các
phương trình ngẫu nhiên phi tuyến cho mô hình hệ thống
Việc ứng dụng EKF cho robot di động rất đa dạng, ví dụ như điều khiển bánh
xe vi sai cho robot di động, hay ứng dụng EKF cho tổng hợp đa cảm biến để nâng cao
khả năng ước lượng trạng thái của robot di động Các nội dung nghiên cứu này sẽ
được đề cập cụ thể trong chương 4 và chương 5 Thêm một lợi thế trong một môitrường đa cảm biến với các ma trận đo lường giống hệt nhau, các phép đo có thể được
xử lý một cách riêng biệt để có được độ phức tạp tính toán thấp hơn Trong trường hợpcác ma trận đo không giống nhau là thích hợp sử dụng hợp nhất vec tơ đầu vào chứacác thông tin của tất cả các cảm biến Thêm một lý do quan trọng khi tổng hợp đa cảmbiến có các loại cảm biến khác nhau, do thời gian xử lý trên mỗi cảm biến khác nhau,thời gian cập nhật trên mỗi cảm biến khác nhau, nhưng vẫn có thể mô hình hóa đượcvới các dạng thông tin của EKF, và do đó có thể tổng hợp được nhiều cảm biến khácnhau, tăng số chiều dữ liệu
Trang 22CHƯƠNG 3: MỘT SỐ CẢM BIẾN HIỆN ĐẠI VÀ PHƯƠNG PHÁP ĐỊNH
VỊ ROBOT DI ĐỘNG
Định vị là việc xác định vị trí tọa độ và hướng của robot trong môi trường
Khâu định vị-lập bản đồ sử dụng cơ sở dữ liệu từ khâu cảm nhận để làm khớp với dữ
liệu bản đồ đã biết trước hoặc được lập từ cơ sở dữ liệu đó Như đã thảo luận ở trên,kết quả của việc tổng hợp cảm biến có thể áp dụng đến tất cả các khâu kể trên, trong
đó khâu định vị là quan trọng Chương này sẽ giới thiệu một số cảm biến hiện đại vàdùng chúng trong một số phương pháp định vị cho robot di động
3.1 Phân loại các cảm biến dùng trong robot di động
Cảm biến (sensor) là những thiết bị có khả năng cảm nhận những đại lượngđiện và không điện, chuyển đổi chúng trở thành những tín hiệu phù hợp với nhữngthiết bị thu nhận tín hiệu ở đầu ra có thể đo và xử lý được
Tùy theo các đặc điểm kỹ thuật, cảm biến có thể được chia thành nhiều loạikhác nhau
Một trong những cách phân loại đó là cảm biến được chia làm hai loại: thụđộng và tích cực Cảm biến thụ động thường dựa vào các thông số môi trường để cungcấp phương tiện cho việc quan sát trong khi đó, cảm biến tích cực phải phát nănglượng vào môi trường hoặc để thay đổi nó hoặc để tăng cường nó rồi thu thập dữ liệuđược phản xạ về
Tùy vào tính chất mục đích sử dụng các cảm biến còn được phân thành: cảmbiến nội, cảm biến ngoại
Cảm biến nội được đặt trong bản thân robot, đó là các cơ cấu điện, điện tử, cơkhí, thủy lực… để nhận các thông tin phản hồi về vị trí của các bộ phận trên robot
Cảm biến ngoại là các cảm biến giúp robot giao tiếp được với môi trường bênngoài, phản ánh các thông tin về môi trường xung quanh tới bộ điều khiển robot Ví
dụ, cảm biến đo xa siêu âm cho phép robot ước lượng khoảng cách từ nó đến các đốitượng
3.1.1 Cảm biến lập mã trục xoay (cảm biến lập mã quang)
Các bộ lập mã quang được dùng cho phương pháp đo quãng đư ờng đi của robot(phương pháp này thường gọi là odometry hay dead reckoning) [5], trong đó robot đomột tín hiệu đang phát ra trong nó
Trang 23Bộ mã hóa quang đã trở thành thiết bị phổ biến để đo tốc độ góc và vị trí bêntrong một động cơ mô-tô hoặc trục của bánh xe hoặc một cơ cấu lái Trong robot diđộng, bộ mã hóa được sử dụng để điều khiển vị trí hoặc tốc độ của bánh xe và nhữngchỗ nối động cơ - bánh lái khác.
Một bộ mã hóa quang bao gồm một nguồn sáng, một đĩa chắn sáng được gắn cốkết với trục mô tơ quay bánh xe robot Đĩa chắn được rạch các khe sáng cho phép tiasáng lọt qua tới một bộ thu nhạy quang phía bên kia mặt đĩa Khi mô tơ quay làm chođĩa chắn sáng cùng các khe sáng quay theo Kết quả là tạo nên các xung sáng đập tới
bộ nhạy quang làm phát ra các xung điện đưa đến mạch điện tử Như vậy, khi trụcxoay mô tơ quay, số lượng tia sáng đập vào bộ nhạy thay đổi tạo nên các xung điệnmỗi khi có sự thẳng hàng của khe với nguồn chiếu sáng Biết toàn bộ số khe sáng trênđĩa (cũng là trên 1 vòng quay), biết được tỷ số truyền bánh răng từ trục mô tơ với trụcbánh xe robot, bằng việc đếm số xung nhận được trong 1 giây thì hoàn toàn xác địnhđược vận tốc góc hay vận tốc dài của bánh chuyển động xe robot Độ phân giải gócnhỏ nhất có thể dễ dàng tính được từ tốc độ CPR (Cycles per Revolution) của bộ mãhóa Một loại bộ mã hóa trong lĩnh vực robot di động có thể đến 2000 CPR, trong khi
bộ mã hóa quang công nghiệp có thể dễ dàng chế tạo những bộ mã hóa với 10000CPR Trong giới hạn băng thông yêu cầu, bộ mã hóa đủ nhanh để đếm tốc độ trụcquay đã đư ợc dự kiến Hình 3.1 là bộ lập mã quang từng bước loại vuông pha 2 kênh
Hình 3.1 Đĩa có khe chắn sáng và tín hiệu ra bộ lập mã quang
3.1.2 Cảm biến chỉ hướng (heading sensor).
Cảm biến cho phép đo góc hướng của robot so với phương từ trường của quảđất Cảm biến được tích hợp trong một mô-đun cảm biến từ-địa bàn CMPS03 của hãngPhilips (trên hình 3.2a) hoạt động dựa trên nguyên tắc hiệu ứng Hall với độ phân giảigóc là 0,1°[12] Nguyên tắc hoạt động như biểu diễn trên hình 3.2b, mô-đun có 2 trục
hướng x và y.