CHƯƠNG 1 GIỚI THIỆU ĐỀ TÀI 1.1 Lý do chọn đề tài Theo dự đoán thì sau cuộc cách mạng lớn về internet sẽ là cuộc cách mạng về lĩnh vực robot. Các Robot được ứng dụng trong đời sống ngày càng nhiều như robot vận chuyển hàng hóa, robot kiểm tra nguy hiểm, robot xe lăn cho người khuyết tật. Robot phục vụ sinh hoạt gia đình… Điểm hạn chế của các robot tự hành hiện tại là tính thiếu linh hoạt và khả năng thích ứng khi làm việc ở những vị trí khác nhau. Từ những lý do đó nảy sinh vấn đề tránh vật cản cho robot tự hành nhằm nâng cao tính linh hoạt cho robot.
Hầu hết các robot hiện đại đều có một kiểu tránh vật cản nào đó robot xác định vật cản và dừng lại ở khoảng cách ngắn so với vật cản để tránh va chạm, đến các thuật toán tinh tế hơn, cho phép robot di chuyển theo đường viền quanh vật cản. Nhằm từng bước tiếp cận và tạo nền tảng cho quá trình nghiên cứu ứng dụng các công nghệ vào các sản phẩm phù hợp thực thế, nhóm đồ án chúng em đã chọn đề tài: “ Điều khiển mobile robot sử dụng bánh omni tránh vật cản”.2 Mục đích Xây dựng một mobile robot hoàn chỉnh có khả năng tìm đến vị trí đặt trước và có khả năng tránh vật cản trong quá trình di chuyển. Điểm mới của mobile robot là sử dụng cảm biến Kinect có khả năng khôi phục môi trường phía trước robot dưới dạng 3D từ đó xác định được các thông số cần thiết cho giải thuật điều khiển robot. Đề tài cũng đi vào nghiên cứu xây dựng mô hình toán học cho robot di động sử dụng bánh đa hướng Omni.
Thiết kế bộ điều khiển bám quỹ đạo và đồng thời nghiên cứu công nghệ xử lý ảnh 3D thông qua cảm biến Kinect và bộ thư viện PCL nhằm phục vụ giải quyết bài toán tránh vật cản. 5 Đồ án tốt nghiệp CHƯƠNG 2 TỔNG QUAN HỆ THỐNG 2.1 Giới thiệu về mobile robot Mobile robots (hay còn gọi là mobile robot), thường được gọi tắt là mobots được định nghĩa là một loại xe robot có khả năng tự dịch chuyển, tự vận động (có thể lập trình lại được) dưới sự điền khiển tự động để thực hiện thành công công việc được giao. Theo lý thuyết, môi trường hoạt động của robot tự hành có thể là đất, nước, không khí, không gian vũ trụ hay sự tổ hợp giữa chúng. Địa hình bề mặt mà robot di chuyển trên đó có thể bằng phẳng hoặc thay đổi, lồi lõm.
Theo bộ phận thực hiện chuyển động, ta có thểchia robot tựhành làm 2 lớp: chuyển động bằng chân (legged) và bằng bánh (wheeled). Hình 2-1 Asterisk - Robot nhện di chuyển bằng chân 6 Đồ án tốt nghiệp Hình 2-2 Curiosity- Robot thăm dò sao Hỏa di chuyển bằng bánh Loại chuyển động bằng vòng xích (khi cần mô men phát động lớn hay khi cần di chuyển trên vùng đầm lầy, cát và băng tuyết) Hình 2-3 Robot cứu hộ di chuyển bằng xích 7 Đồ án tốt nghiệp 2.2 Bài toán tránh vật cản Tìm đường (navigation) là một khoa học dẫn hướng robot tự hành di chuyển trong không gian làm việc của nó. Trong vấn đề tìm đường, bài toán được quan tâm nhiều nhất là bài toán tìm đường về đích mà không chạm vào vật cản trên đường đi. Có 2 loại bài toán tìm đường cho robot: - Bài toán cục bộ (local): Môi trường làm việc của robot hoàn toàn không biết trước hoặc chỉ biết một phần.
Robot hoàn toàn nhờ vào sự cảm nhận môi trường trong quá trình di chuyển thông qua cảm biến gắn trên nó để dò đường. - Bài toán toàn cục (Global):Bản đồ môi trường làm việc của robot hoàn toàn được biết trước, vấn đề chính phải giải quyết là tìm đường đi cho robot trước khi nó xuất phát. Bài toán toàn cục có lợi thế là biết trước đường đi có tới đích hay không, có thể chọn đường tối ưu trước khi robot khởi hành. Tuy nhiên hạn chế là đòi hỏi nhiều tài nguyên để tính toán và yêu cầu cao về độ chính xác của bản đồ môi trường làm việc.
Việc thay đổi môi trường ví dụ như có vật cản thay phía trước robot khiến robot không hoạt động đúng yêu cầu. Trong trường hợp này, bài toán cục bộ tỏ ra có ưu thế, nó có tính linh hoạt cao như có thể tránh vẩn cản khi vật đó di chuyển. Đồng thời yêu cầu tài nguyên phục vụ tính toán thấp hơn. Nhược điểm của bài toán này là robot chỉ cảm nhận môi trường qua cảm biến gắn cùng vì thế có thể không hoàn thành việc tới đích mặc dù có đường đi hơn nữa không thể chọn ra được đường đi tối ưu.
Trong đồ án này, nhóm sinh viên tập trung vào giải quyết bài toán cục bộ với cảm biến sử dụng là Kinect. Môi trường hoạt động của robot là mặt phẳng giới hạn bởi các bức tường. Các vật cản xuất hiện ngẫu nhiên trong phạm vi hoạt động của robot. Yêu cầu đặt ra là robot tự động tìm đường về được tới đích mà không chạm vào vật cản.3 Hệ thống mobile robot tránh vật cản Hệ thống tổng quan bao gồm 4 bộ phận chính (Hình 2-4) (1) Bộ cảm biến Kinect, (2) bộ phận chấp hành là các bánh xe có gắn động cơ điện 1 chiều, (3) Laptop,(4) vi điều khiển và driver điều khiển động cơ.
Các thành phần phối hợp hoạt động như sau: (1) Cảm biến Kinect liên tục thu thập dữ liệu về hình ảnh, khoảng cách sau đó gửi về (2) Laptop để có thể khôi phục lại không gian 3D trước robot đồng thời sử dụng các thuật toán thích hợp để phát hiện vật cản cũng như tìm được các thông số của vật cản để cung cấp cho thuật toán tránh vật cản.Sau khi các tín hiệu được xử lý thì sẽ tìm ra được quỹ đạo đặt tiếp theo cho robot. Quỹ đạo là đầu vào cho bộ điều khiển cài đặt trong vi điều khiển và sau đó chuyển thành các tín hiệu điều khiển động cơ DC. Khi di chuyển Kinect lại thu thập các dữ liệu mới và quá trình này được lặp lại. Hình 2-4 Sơ đồ tổng quan hệ thống 9 Đồ án tốt nghiệp CHƯƠNG 3: MOBILE ROBOT SỬ DỤNG BÁNH OMNI 3.1 Bánh Omni: Bánh xe Omni còn có tên gọi là bánh xe Mecanum, kiểu bánh xe này được phát triển và đăng kí bản quyền bởi công ty Mecanum của Thụy Sỹ vào năm 1973.
Bánh xe omni nó cho phép robot di chuyển ngay đến một vị trí trên mặt phẳng mà không phải quay trước. Hơn nữa, chuyển động tịnh tiến dọc theo một quỹ đạo thẳng có thể kết hợp với chuyển động quay làm cho robot di chuyển tới vị trí mong muốn với góc định hướng chính xác.1 Bánh Omni Hầu hết các bánh xe omni đều dựa trên cùng một nguyên lý: trong khi bánh xe cung cấp một lực kéo theo hướng bình thường trên trục của động cơ, nó có thể trượt không ma sát theo 1 hướng khác so trục của động cơ (chuyển động phụ). Để đạt được điều này, bánh xe được chế tạo bằng cách thêm các bánh xe nhỏ dọc theo chu vi của bánh chính Có hai lọai bánh Omni chính, phụ thuộc vào hướng chuyển động khả thi của bánh : (a) (b) Hình 3.2 Bánh Omni với hướng chuyển động phụ 450 (a) và 900 (b) so với hướng chính 10 Đồ án tốt nghiệp Như vậy, robot sử dụng bánh xe omni có thể chuyển động theo bất cứ hướng nào ngay lập tức, điều này làm robot có tính linh hoạt rất cao, thích hợp để tránh vật cản. Mô hình toán học robot tự hành sử dụng bánh Omni 3.1 Động học: Hình 3.4 Phân tích lực tác dụng lên Mobile Robot sử dụng 4 bánh Omni Gọi hệ trục tọa độ Ow xw yw là cố định và Om xm ym là hệ trục gắn với trọng tâm robot.
Đặt: F t = F1 , F2 , F3 , F4 là lực kéo do động cơ sinh ra tác dụng các bánh robot. T F m = Fxm , Fym , Tzm là tổng hợp lực tác dụng lên robot trong hệ Om xm ym. F w = Fxw , Fyw , Tzw là tổng hợp lực tác dụng lên robot trong hệ Ow xw yw. Tz là momen của tác dụng lên robot quanh trục z đi qua Om vuông góc với mặt phẳng Om xm ym.
11 Đồ án tốt nghiệp Tọa độ của robot trong 2 hệ trục tọa độ Ow xw yw , Om xm ym và quãng đường đi được của các bánh lần lượt là: X w = ( xw , yw , )T X m = ( xm , ym , )T X t = ( x1 , x2 , x3 , x4 )T Từ sơ đồ phân tích lực như trong hình vẽ ta có: Fxm = − F2 + F4 m Fy = F1 + F3 m Tz = l ( F1 + F2 + F3 + F4 ) Hay F m = B.F t (1) Với 0 −1 0 1 B = 1 0 −1 0 l l l l −1 Kí hiệu BT là phép toán cho kết quả là ma trận thỏa mãn khi nhân với BT sẽ được ma trận đơn vị. Với B ở trên, ta có ma trận BT = 2 0 1 1 2 4l 1 1 0 2 4l Áp dụng nguyên lý công ảo: ( F w )T .(3) suy ra: −1 X m = BT .vm Với Rmw là ma trận chuyển từ hệ Om xm ym sang hệ Ow xw yw. cos − sin 0 R = sin cos 0 w m 0 0 1 Như vậy ta thu được phương trình động học thuận −1 X w = Rmw. Từ (5) và áp dụng tính chất ( Rmw )−1 = ( Rmw )T ta thu được phương trình động học ngược vm = BT.
Động lực học Quan hệ giữa vận tốc và lực tác dụng trên các hệ trục tọa độ: X w = Rmw .F m Áp dụng định luật 2 Newton F w = M. X m + X m ) = F m (9) Đơn giản hóa phương trình (9) ta có: M ( xm − ym ) = Fxm M ( ym + xm ) = Fym (10) Im = Tzm Đặt m = 1 , 2 , 3 , 4 là vận tốc góc của các bánh xe. Kết hợp với (3) ta có: T 1 0 1 l xm 2 = 1 −1 0 l . y 3 r 0 −1 l m 4 1 0 l Với r là bán kính bánh xe.