Tải bản đầy đủ (.docx) (95 trang)

Thiết kế và chế tạo robot tránh chướng ngại vật + code

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.01 MB, 95 trang )

Chương 1
GIỚI THIỆU
1.1 GIỚI THIỆU VỀ ROBOT TỰ HÀNH
Robot tự hành ( mobile robot ) là một hướng phát triển của lĩnh vực robotic mà trọng tâm
là nghiên cứu chuyển động của robot trong một không gian nhất định. Robot tự hành thực sự
là một lĩnh vực riêng biệt kể từ cuối những năm 1960 bằng dự án Shakey tại SRI. Báo cáo của
N.J.Nilsson "A Mobile Automation: An Application of Artificial Intelligence Techniques" tại
IJCAI 1969 đã đưa ra các yếu tố "nhận thức", "lập bản đồ", "lập kế hoạch đường đi" và các
khái niệm về kiến trúc điều khiển. Thập niên 1980 bùng nổ với các dự án về mobile robot và
ngay lập tức đã cho thấy việc cần thiết để xét đến các thuộc tính của môi trường thực tế, vấn
đề được bắt gặp trong các dự án thiếu thực tế, thường cho rằng robot chỉ là sản phẩm của trí
tuệ nhân tạo.
Ngày nay với sự phát triển của máy tính và vi xử lý cũng như là các loại cảm biến đã giúp
cho robot tự hành phát triển không ngừng. Robot có thể được điều khiển bằng vi xử lý hoặc
máy tính nhúng; một hệ thống robot có thể được kiểm soát bởi một máy tính trung tâm qua
mạng không dây. Việc tương tác với môi trường bên ngoài có thể được thực hiện nhờ vào các
cảm biến siêu âm, hồng ngoại hoặc camera. Việc định hướng robot trong không gian được
thực hiện bằng GPS hoặc la bàn số. Các tính năng của robot tự hành rất đa dạng : robot có thể
di chuyển trong môi trường độc hại, địa hình phức tạp, có thể vẽ lại bản đồ của môi trường và
truyền về bộ điều khiển trung tâm. Dưới đây là hình ảnh của robot khám phá sao hỏa của
NASA có khả năng định vị và dẫn hướng nhờ vào các cặp camera, phân tích thành phần vật
chất bằng cách phân tích quang phổ, truyền dữ liệu về trái đất bằng sóng radio,...

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang


Hình 1.1 Robot khám phá sao hỏa Rover với các thiết bị bên ngoài ( hình trên )
và bên trong ( hình dưới ).
Luận văn này tập trung phân tích các phương pháp tránh vật cản cho robot tự hành mà


trong tâm là các phương pháp dựa trên cảm biến siêu âm. Việc phân tích sau đó được áp dụng
để điều khiền robot omni tránh vật cản bằng cảm biến siêu âm.
1.2 NỘI DUNG CỦA LUẬN VĂN
Phần chương 2 sẽ phân tích một số phương pháp tránh vật cản đã được đưa ra trên thế giới
dựa trên cảm biến siêu âm và camera. Các phương pháp được đưa ra là : phương pháp đi theo
đường biên vật cản, phương phát phát hiện cạnh, phương pháp biểu diễn vật cản bằng sơ đồ
lưới xác định, phương pháp trường thế, và phương pháp dùng optical flow. Phương pháp được
lựa chọn để thực hiện đề tài là phương pháp dẫn hướng thích nghi.
Trong chương 3, mô hình robot omni được giới thiệu và so sánh với các mô hình robot tự
hành khác.
Chương 4 sẽ giới thiệu các loại cảm biến trong robot tự hành và tập trung phân tích về
cảm biến siêu âm.
Chương 5 giới thiệu về xử lý ảnh số, các khái niệm cơ bản và thuật toán phát hiện khuôn
mặt dựa vào các thuộc tính Haar-like. Ngoài ra chương 5 còn giới thiệu sơ qua thư viện xử lý
ảnh OpenCv của Intel và các hàm sử dụng trong đề tài.
Chương 6 mô tả quá trình thực hiện đề tài bao gồm phần cứng và giải thuật phần mềm.
Chương 7 tổng kết kết quả, ưu nhược điểm và phương hướng phát triển đề tài.

Chương 2
THUẬT TOÁN TRÁNH CHƯỚNG NGẠI VẬT CHO
ROBOT TỰ HÀNH
Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang


2.1 GIỚI THIỆU
Bài toán lập quỹ đạo di chuyển cho robot tự hành có thể chia làm hai dạng : bài toán toàn cục
(global) và bài toán cục bộ (local). Ở bài toán toàn cục, môi trường làm việc của robot được biết
trước và từ đó đường đi tránh vật cản được tính toán từ lúc bắt đầu di chuyển. Trong bài toán cục

bộ, môi trường làm việc của robot hoàn toàn chưa bíết hoặc chỉ biết một phần. Đối với bài toán
này, các cảm biến gắn trên robot sẽ phát hiện vật cản để điều khiển hệ thống dẫn hướng robot từ
điểm đầu đến điểm đích mà không chạm vật cản.
Bài toán toàn cục tỏ rõ lợi thế là ta đã biết trước có đường đi (tối ưu ) tới đích hay không trước
khi robot khởi hành. Tuy vậy nó có hạn chế là đòi hỏi nhiều lệnh tính toán và bộ nhớ và trong thực
tế, yêu cầu biết trước tòan bộ môi trường khó khả thi. Trong khi đó, robot tìm đường cục bộ chỉ
biết được môi trường xung quanh qua sensor cảm nhận môi trường. Vì thế robot tìm đường cục bộ
có thể không hoàn thành việc đến đích (mặc dù thực tế có đường đến đích )trong trường hợp đặc
biệt. Tuy nhiên, yêu cầu tính toán, dung lượng nhớ thấp cùng tính linh họat cao như tránh được vật
cản ngay khi vật cản di chuyển động. Hiện nay cách kết hợp toàn cục và cục bộ đang ngày càng
phổ biến giúp robot có tính linh hoạt cao.
Nội dung của luận văn tập trung giải bài toán cục bộ, với robot omni di chuyển trong mặt
phẳng với các vật cản tĩnh, đích của robot là khuôn mặt người được bắt bằng một webcam. Robot
sẽ di chuyển tới vị trí người đang đứng và tránh các vật cản gặp phải trên đượng đi. Việc phát hiện
vật cản được thực hiện bởi 3 cảm biến siêu âm. Phần 2.2 dưới đây sẽ trình bày các phương pháp
xác định vật cản bằng cảm biến siêu âm hoặc camera, và sẽ trình bày chi tiết thuật tóan sinh viên
lựa chọn để thực hiện đề tài trong phần 2.3.
2.2 CÁC PHƯƠNG PHÁP TRÁNH VẬT CẢN
2.2.1 Phương pháp bám tường ( wall-following method)
Ở phương pháp này, robot di chuyển dọc theo vật cản với một khoảng cách định trước.
Phương pháp này thích hợp khi chúng ta không có một bản đồ cụ thể môi trường hay một
sự định vị rõ ràng. Phương pháp này còn được áp dụng khi chỉ có những thông tin không
đầy đủ, đại loại như “hành lang này sẽ dẫn đến cánh cửa kia ”, robot có thể sử dụng tường
để định hướng quỹ đạo hoàn tất nhiệm vụ.
Thuật toán sử dụng trong phương pháp bám tường dựa trên sự biểu diễn “nhận thức” (tri
giác). Khái niệm này sử dụng thông tin từ các cảm biến siêu âm để thu nhận nhận thức
tổng quát về môi trường lân cận. Các thông tin này không có nghĩa là vị trí chính xác của
vật cản và hướng của tường. Ngược lại, các nhận thức tổng quát này giúp robot nhận biết
chính nó trên một hướng hợp lý hơn là một vị trí chính xác. Các hướng này có thể được mô
tả bằng các giá trị ngôn ngữ như là phía trước bên trái, ở đằng xa hoặc rất chậm. Việc mô

tả này được thực hiện bằng logic mờ và do đó, logic mờ sẽ là chìa khóa của vấn đề.
Một đề tài về robot bám tường đã được tiến hành ở trung tâm nghiên cứu robotic
IKERLAN ở Tây Ban Nha đã cho thấy robot có thể tránh được tất cả chướng ngại vật
trong nhiều trường hợp thử nghiệm. Với một khoảng cách với tường cho trước là 0.6 m và
vận tốc robot đạt được 0.45m/s dưới hai điều kiện : trước tiên robot không bị “mù” theo
Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang


bất cứ hướng nào, tức là bất kì vật cản nào cũng sẽ bị phát hiện bởi ít nhất một cảm biến và
thứ hai, tường và các vật cản phải tĩnh. Vật cản được robot hiểu là một phần của tường và
nếu khoảng cách giữa vật cản và tường quá lớn thì nó sẽ bỏ qua.
a. Khái niệm nhận thức tổng quát :
Nhược điểm của cảm biến siêu âm là độ phân giải về hướng rất kém. Mặc dù những
cảm biến này rất chính xác phản ánh khoảng cách đến vật cản gần nhất bằng tính phản xạ,
nhưng vật cản lại có thể nằm bất cứ đâu trong một góc quét của cảm biến. Hơn nữa khoảng
cách này lại phụ thuộc vào bề mặt của vật cản, khoảng cách và độ nghiêng của bề mặt so
với trục cảm biến. Vì vậy rất khó để ngay lập tức mô tả môi trường xung quanh từ dữ liệu
cảm biến đưa về, chẳng hạn như độ cong của bức tường. Khái niệm về nhận thức tổng quát
tránh những khó khăn này bởi vì nó không bảo đảm điều gì về việc phác thảo môi trường
xung quanh. Thay vào đó, nó hướng tới việc tạo ra một nhận thức chung chung về môi
trường xung quanh từ dữ liệu từ cảm biến và biểu diễn lại bằng vector, gọi là vector nhận
thức tổng quát.

pi
Để đáp ứng yêu cầu thì mỗi cảm biến siêu âm i được gán cho một vector nhận thức

,


di
hướng của nó trùng với trục của cảm biến và độ dài là một hàm của khoảng cách
được theo công thức:

pi =

đo

d max − di
d max − d min
(2.1)

d max
với

d min


là khỏang cách xa nhất và gần nhất mà một vật cản được phát hiện,

pi
thì được giới hạn với các cận 0 và 1 theo công thức:

0
pi = 
1

for

di > d max


for

di < d min
(2.2)

pi
Vector tổng quát p thì bao gồm các vectơ thành phần . Hướng của p là hướng của
tổng các vector thành phần và chiều dài bằng vector thành phần dài nhất

p&
Độ biến thiên vector tổng quát theo thời gian là đại lượng vô hướng
thức:

tính theo công

(2.3)

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang


p&max
với

là biến thiên nhận thức khi robot di chuyển trực diện tới vật cản với vận tốc

p&i


vmax
lớn nhất
. Hơn nữa, chỉ có giá trị dương của
nhận thức tương đối của cảm biến được tính :

∆d i
 p&i
 & =−
∆tvmax
p&i =  pmax

0

*

là được xem xét, do đó biến thiên

,if
∆d i < 0
otherwise
(2.4)

Giá trị lớn nhất của biến thiên tương đối của các cảm biến kí hiệu là:

p&* = p&i max *

Hình 2.1 Robot tự hành trong 3 tình huống bám biên
Hình trên minh họa khái niệm nhận thức tổng quát trong 3 tình huống bám biên của
robot. Nhận thức tổng quát khi đối với góc tường (trường hợp a ) thể hiện bởi 3 vector.
Một cạnh tường gần hơn được nhận thức bằng một cảm biến, cạnh còn lại được nhận thức

bằng hai cảm biến. Nhận thức sau thì không mạnh bằng nhận thức đầu do khoảng cách xa
hơn. Mô tả về tình huống này dạng ngôn ngữ như sau: nhận thức tổng quát thì mạnh và
liên quan đến phương pháp tuyến về bên phải và nơi nào đó phía trước. Một tình huống
hay gặp là robot ở vào vị trí “dead-end” (hình b) khi robot dang di chuyển dọc theo tường
bên phải. Khi robot đến cuối đường, vector nhận thức biến thiên nhanh hơn về phía trước.
Sự biến thiên nhanh hay chậm tùy thuộc vào vận tốc của robot. Trong trường hợp góc
tường mở (hình c), sự biến thiên mạnh hơn ở phía sau bên phải.
Khái niệm về nhận thức tổng quát thì hoàn toàn phù hợp với việc mô tả bằng ngôn ngữ
với vô số tình huống của robot. Sự mô tả này thì đơn giản, được thực hiện cùng với chuyển
động của robot và được dùng như là ngõ vào của bộ luật trong giải thuật dùng logic mờ.
Lúc này thì hướng của chính xác của cảm biến không còn quan trong nữa. Với giải thuật
này robot có thể dễ dàng bám theo tường ngay cả khi chỉ có một cảm biến phát hiện tường.
Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang


Một điều cần lưu ý rằng khái niệm nhận thức tổng quát là sự tổng hợp nhận thức các
cảm biến, do đó nó có tên là “tổng quát”. Ngay cả những cảm biến theo hướng chuyển
động là hướng về phía sau và nhận thức của chúng có vẻ không có giá trị nhưng sự đóng
góp của chúng vào nhận thức tổng quát là như nhau. Sử dụng ví dụ ở hình dưới, nếu bỏ
qua các cảm biến mà ta cho rằng không đóng góp vào chuyển động của robot thì sẽ dẫn
robot theo một hướng sai lầm. Nếu dữ liệu của cảm biến 1 và 8 không được quan tâm thì

p′

α′

900


góc giữa vector và vận tốc v sẽ nhỏ hơn
. Theo giá trị ngôn ngữ có thể hiểu rằng:
vector nhận thức tổng quát nằm đâu đó ở giữa phía trước và bên trái. Kết quả là robot sẽ di
chuyển sang bên phải xa dần bức tường. Nhưng khi nó tiến gần bức tường đối diện thì

p′

p7

p2

vector
sẽ hướng sang bên phải do
thì giảm còn
thì tăng. Cứ thế robot sẽ di
chuyển qua lại giữa hai bức tường do bức tường mà robot bám theo dường như lúc nào
cũng nằm phía sau robot do ta đã bỏ qua các cảm biến cần thiết.

p8
Hình 2.2 Robot sẽ di chuyển qua lại hai bức tường nếu ta không xét đến các cảm biến

p1


c. Kết quả thực nghiệm :

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang



Hình 2.3 robot đi vào góc nhỏ
và có những khe hở nhỏ giữa
các bức tường, robot tìm được
đường đi ngược lại.

Hình 2.4 Robot gặp vật cản
khi bám tường, khi đó robot
thay đổi quỹ đạo vòng qua vật
cản (B-C) rồi trở lại nhiệm vụ
bám tường ( C-D)

2.2.2Phương phát phát hiện cạnh ( edge-detection)
Một phương pháp cũng khá phổ biến là dựa trên việc phát hiện cạnh (edge-detection).
Thuật toán đưa ra trong phương pháp này tìm cách phát hiện vị trí các cạnh đứng và lái
robot vòng qua các cạnh “thấy được” đó. Đường nối hai cạnh “thấy được” xem như là
biên của vật cản. Phương pháp này cũng có thể dùng cảm biến siêu âm để phát hiện vật
cản. Điểm bất lợi của phương pháp này là robot phải dừng lại trước vật cản để thu thập
thông tin. Tuy nhiên đây không phải điều khó khắc phục với những máy tính xử lý nhanh
trong tương lai.
Trong phương pháp dùng cảm biến siêu âm, robot đứng yên khi đang khi thực hiện
việc quét toàn cảnh môi trường làm việc. Sau khi áp dụng một số giải thuật line-fitting ,
một kế họach chuyển động toàn cục được thiết lập cho quỹ đạo kế tiếp của robot.
Hạn chế thường gặp của phương pháp này là độ chính xác của cảm biến siêu âm,
thường rơi vào các nguyên nhân sau :


Khả năng định hướng kém : hạn chế việc xác định vị trí cạnh trong không gian,
phụ thuộc vào khỏang cách tới vật cản, và góc giữa bề mặt và trục phát sóng.




Hiện tượng đọc chéo : gây ra bởi nhiễu sóng siêu âm từ các nguồn ngoài hay các
cảm biến gây nhiễu lẫn nhau. Các nhiễu này thường khó để lọc bỏ và gây khó khăn
cho việc tiến hành giải thuật.

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang




Sự phản xạ đều : khi góc của mặt phản xạ và trục cảm biến quá lớn, sóng phản xạ
sẽ không trở về nơi phát và coi như vật cản không được phát hiện, hoặc nhận biết
vật cản nhỏ hơn thực tế.

Bất cứ các nguyên nhân nào trên đây cũng đều ảnh hưởng đến thuật toán phát hiện
cạnh của vật cản ở một vị trí sai, hậu quả là quỹ đạo đưa ra không phù hợp.
2.2.3 Phương pháp biểu diễn vật cản bằng sơ đồ lưới xác định
Một phương pháp biểu diễn xác suất của vật cản trong một mô hình môi trường dạng lưới (
grid-type world model) được phát triển tại đại học Carnegie-Mellon ở Pennsylvania, Mỹ.
Mô hình luới xác định này thì đặc biệt phù hợp với điều kiện các dữ liệu thu từ cảm biến
thì không chắc chắn, trong trường hợp này là cảm biến siêu âm.
Trong lưới xác định ( certainty grid), vùng hoạt động của robot được biểu diễn bằng một
mảng hai chiều các phần tử hình vuông, gọi là các cell. Mỗi cell chứa một giá trị xác định (
certainty value) gọi là CV thể hiện mức độ đáng tin cậy rằng có vật cản xuất hiện trong cell
đó. Với phương pháp này, CV sẽ được cập nhật bằng một hàm xác suất có xét đến đặc
điểm của cảm biến. Với cảm biến siêu âm có một tầm quan sát hình nón sẽ trả về một giá
trị đo hướng tâm khoảng cách đến vật cản gần nhất nằm trong vùng hình nón, do đó không

xác định cụ thể vị trí góc của vật thể. ( hình dưới thể hiện vùng A trong đó một vật thể phải
được định vị để cho ra kết quả đo là d). Nếu một vật thể được phát hiện bởi cảm biến,
nhiều khả năng vật thể này gần trục cảm biến hơn là phần biên của hình nón. Trong

Cx
phương pháp này hàm xác suất
ở biên.

sẽ tăng CV của các cell gần trục hơn là CV của các cell

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang


Hình 2.5 Sơ đồ lưới: một giá trị d đo được chứng tỏ sự tồn tại của vật
cản đâu đó trong vùng màu đen
Trong thí nghiệm, robot tự hành đứng yên khi thực hiện việc quét toàn cảnh môi trường

Cx
với 24 cảm biến. Kế tiếp, hàm xác suất
được áp dụng với mọi giá trị khoảng cách đo
được để cập nhật lưới xác định. Cuối cùng, robot di chuyển đến vị trí mới rồi dừng lại và
lặp lại quá trình trên. Khi robot di chuyển hết căn phòng theo cách này thì lưới xác định có
thể xem như bản đồ tương đối chính xác của căn phòng. Một quỹ đạo tổng quát có thể
được tính toán off-line cho những lần hoạt động về sau.

2.2.4

Phương pháp trường thế ( Potential Field Method)

Trong phương pháp này, vật cản gây ra một lực đẩy, khi mà mục tiêu lại áp dụng một lực
kéo với robot. Vector lực tổng hợp R bao gồm tổng của lực kéo từ mục tiêu và lực đẩy từ
vật cản được dùng để tính toán cho một vị trí của robot. Với R là lực gây nên gia tốc trên
robot, vị trí mới cho robot được tính toán bằng các thuật toán.
Phương pháp Virtual Force Field do Borenstein đưa ra sử dụng luới hai chiều theo hệ tọa
độ De-cac, gọi là luới biểu đồ ( histogram grid) C để biễu diễn vật cản. Mỗi ô (i,j) trong

ci , j
lưới được gán một giá trị xác định (certainty value, CV ) kí hiệu là
thể hiện độ tin cậy
việc tồn tại vật cản tại ô đó. Việc biểu diễn này khá giống với certainty grid ở phần trên, ở
histogram grid, các CV được tăng lên khi cảm biến siêu âm xác định sự hiện diện của vật
cản tại ô đó.
Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang


Hình 2.6 Histogram Grid
Khái niệm về trường thế được áp dụng vào histogram grid như hình trên. Khi robot di

ws × ws
chuyển một cửa sổ

ô đi kèm theo nó, nằm trên một vùng hình vuông của C. Ta gọi

C*
vùng này là “active region” kí hiệu là

và các ô thuộc vùng này gọi là “active cells” kí


*

c i, j
hiệu là
. Trong thí nghiệm, kích thước của cửa sổ là 33x33 ô, và kích thước ô là 10cm
x 10cm và cửa sổ luôn bao quanh vị trí hiện tại của robot.

ci*, j

Fi , j
Mỗi active cell gây ra một lực đẩy

d
với

với robot, biên độ lực tỉ lệ thuận

và tỉ lệ nghịch

n

với d là khoảng cách giữa ô và tâm của robot, n là một số dương :

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 10


Fi , j =


FcrW n Ci, j  xi − xo yi − yo 
+

÷
d n (i, j )  d (i, j ) d (i, j ) 

(2.5)

Fcr
với :

: hằng số lực đẩy

d (i, j )
: khoảng cách giữa active cell (i,j) và robot

C (i, j )
: giá trị xác định của active cell (i,j)
W : bề rộng của robot

xo , yo
: tọa độ hiện tại của robot

xi , yi
: tọa độ của active cell (i, j)

Fr = ∑ Fi , j

Fr

Tổng tất cả các lực đẩy ký hiệu là

i, j

:

(2.6)

Ft
Đồng thời, một lực kéo

Ft = Fct (

do mục tiêu gây ra tác dụng lên robot :

xt − x0 yt − y0
+
)
dt
dt
(2.7)

Fct
với:

: hằng số lực kéo

dt
: khoảng cách từ mục tiêu đến robot


xt , yt
: tọa độ của mục tiêu
Tổng lực kéo và lực đẩy sẽ được vector lực kết quả R:

R = Fr + Ft
(2.8)
Hướng của R kí hiệu là
robot:

δ

, đơn vị deg, dùng làm giá trị tham chiếu cho lệnh chuyển hướng của

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 11


Ω = k (δ − Θ)
(2.9)
với

k: hằng số tỉ lệ chuyển hướng

Θ

: hướng hiện tại của robot

Phương trình này là cơ sở cho việc điều khiển robot.
Các hạn chế của phương pháp trường thế :



Sập bẫy khi di chuyển đến ngõ cụt tạo bởi nhiều vật cản phức tạp



Không qua được khe giữa hai vật cản

Fr'1
Hình dưới minh họa trường hợp này, lực đẩy từ hai vật cản 1 và 2 lần lượt là



'
r2

F

, tổng hay lực cản này sẽ hướng robot ra xa mục tiêu theo chiều ngược lại, nếu

Ft
cộng với lực kéo từ mục tiêu
cản.

thì được lực kết quả R không hướng robot tránh vật

Hình 2.7 Trường hợp robot không qua được khe 2 vật cản


Dao động khi gặp vật cản : hạn chế này xảy ra ở việc tính toán thuật toán, không phân

tích kĩ ở đây.



Dao động khi đi trong ngõ hẹp : nguyên nhân do robot nhận được lực đẩy từ cả hai bức
tường.

2.2.5 Phương pháp dùng optical flow :
Khác với các phương pháp trên, phương pháp này chủ yếu sử dụng camera và đã được sinh
viên Phan Tuấn Hải ( 40400725) thực hiện trong luận văn tốt nghiệp, ở đây chỉ trình bày tóm tắt cơ
sở lý thuyết và giải thuật.
Khi camera di chuyển, nó sinh ra một chuỗi theo thứ tự các frame, mỗi frame là một ánh xạ từ
không gian 3D lên một mảng pixel 2D. Giả sử trong ảnh là một cái bàn, các điểm trên cạnh bàn là
những điểm cần quan tâm. Khi camera di chuyển thẳng ta sẽ nhận thấy sự di chuyển nhỏ của
những điểm này theo chuỗi frame sinh ra. Nếu cái bàn ở xa, sự dịch chuyển quan sát được sẽ nhỏ;
khi bàn ở gần, độ dịch chuyển này sẽ lớn hơn. Ta tiến hành tính tóan vector dịch chuyển cho một

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 12


số điểm nhất định sẽ có thể định hình được vùng di chuyển của vật. Những vùng này gọi là vùng
optical flow. Có hai cách tính toán các optical flow :


Thuật toán Dense Optical Flow ( Optical Flow đặc) : tính toán các vector này cho mọi
điểm trong ảnh




Thuật toán Sparse Optical Flow ( Optical Flow thưa) : chỉ sử dụng cho các điểm đặc biệt
( ví dụ như cạnh)

Hình 2.8 Optical Flow của bàn tay
Ngõ vào của một hệ optical flow là một chuỗi các ảnh thu được từ bên ngoải, chuỗi này sẽ
chứa các thông tin để ước lượng các vector di chuyển. Do đó, camera cũng phải di chuyển hết
trong suốt quá trình lấy ảnh. Giả sử ảnh đầu tiên được lấy ở thời điểm t, xét điểm (u,v) trên ảnh có
cường độ I(u,v,t). Nếu khoảng thời gian giữa hai lần lấy ảnh là đủ nhỏ thì xem như cường độ điểm
ảnh đang xét không đổi. Xét cường độ điểm ảnh tại thời điểm t là I(u,v,t). Từ sự di chuyển của
camera, cùng một điểm đó, nó sẽ xuất hiện ở frame tiếp theo nhưng ở vị trí khác. Giả sử độ dịch

(∆u, ∆v)
chuyển đó được biểu diễn bằng vector

. Khi đó cường độ của điểm ảnh sẽ không đổi :

I (u + ∆u , v + ∆v, t + ∆t ) = I (u , y , t )
(2.10)
trong đó u,v lần lượt là hai trục nằm ngang và thẳng đứng trong hệ tọa độ của miền ảnh. Khai
triển Taylor ở vế trái biểu thức:

I (u + ∆u , v + ∆v, t + ∆t ) = I (u, v, t ) +

∂I
∂I
∂I
∆u + ∆v + ∆t + ...
∂u
∂v

∂t

(2.11)

Do độ dịch chuyển là rất nhỏ nên các thành phần bậc cao trong khai triển được bỏ qua.
Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 13


Do đó :

∂I
∂I
∂I
∆u + ∆v + ∆t = 0
∂u
∂v
∂t

Chia hai vế của biểu thức cho

∆t

và cho

(2.12)

∆t


tiến về 0, ta có :

∆u
= vu
∆t → 0 ∆ t
lim

∆v
= vv
∆t →0 ∆t

(2.13)

lim

(2.14)

Từ đó ta được :



vu

∂I ∂I
∂I
∂I
= vu + vv ⇒ ∇I T .v + = 0
∂t ∂u
∂v
∂t


(2.15)

vt


là hai vận tốc của điểm theo hai hướng nằm ngang và thẳng đứng. Biểu thức (2.15)
được coi là điều kiện của Optical Flow. Việc tính toán cụ thể được chia thành hai phần : chọn phần
tử bằng thuật toán Shi-Tomasi và theo dõi các phần tử đó bằng thuật toán Pyramid Lucas-Kanade.
Việc tránh chướng ngại vật dựa trên kỹ thuật cân bằng mà ý tưởng chủ đạo là thị sai của sự
dịch chuyển. Khi robot di chuyển thẳng, những vật ở gần sẽ có phần tử di chuyển nhanh hơn những
phần tử của vật ở xa. Đồng thời trong phạm vi quan sát thi những vật ở gần hơn sẽ dễ theo dấu hơn
nên phần tử được chọn cũng nhiều hơn. Từ ý tưởng đó, robot sẽ di chuyển để tránh xa hường có
optical flow lớn nhất ( hai hướng được xét là hướng trái và hướng phải).

2.3 THUẬT TOÁN DẪN HƯỚNG THÍCH NGHI ( ADAPTIVE NAVIGATION)
Thuật toán này được trình bày trong tài liệu tham khảo [2]. Đây là một kĩ thuật dẫn hướng cục
bộ với vị trí ban đầu và đích đã biết trước, các vật cản được phát hiện bởi ba cảm biến đo khoảng
cách từ robot đến vật cản gần nhất nhưng theo ba hướng khác nhau. Hướng di chuyển của robot
được quyết định bởi hướng đến đích và hướng tránh vật cản tính toán được. Điều kiện để thực hiện
phương pháp là các vật cản phải đứng yên. Điểm mạnh của phương pháp là chỉ yêu cầu một ít
thông tin về môi trường xung quanh so với các phương pháp khác và luật dẫn hướng cũng đơn giản
và linh họat hơn sử dụng phương pháp trường thế ( potential field method). Đây chính là phương
pháp em chọn để thực hiện đề tài.
2.3.1

Mô hình robot và kĩ thuật dẫn hướng thích nghi

Xét một bài toán dẫn hướng hai chiều (2D) trong hình (2.9) khi mà vị trí và vận tốc của
robot được biểu diễn trong hệ tọa Decac ( x(t), y(t) và v(t) với t là thời gian ). Điểm bắt đầu và


Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 14


θ (t )

( x0 , y0 )
kết thúc lần lượt là

và (0,0). Góc biểu diễn hướng của robot là

0 ≤ θ (t ) < 2π
,(

θ0
), được đo so với trục x và có giá trị đầu là . Có khả năng có vật cản trên đường đi của robot
nên mục tiêu đặt ra là dẫn hướng robot đến đích đồng thời tránh được vật cản. Các giả định sau
được đưa ra để giải bài toán :
(A1) : robot chỉ di chuyển về phiá trước
(A2) : robot rẽ trái hay phải với bán kính nhỏ nhất
(A3) : vận tốc của robot là hằng số, trừ khi tiến đến gần đích

Hình 2.9 Mô hình bài toán dẫn hướng thích nghi
Phương trình chuyển động của robot :

 x&(t ) = v(t ) cos θ (t )

 y&(t ) = v(t )sin θ (t )


(2.16)

Giả định A2 được biểu diễn bằng bất đẳng thức :

v(t )
θ&(t ) ≤
rmin
(2.17)
Xét biểu thức dạng toàn phương :

1
E (t ) = [θ (t ) − θ * (t )]2
2
(2.18)

θ * (t )
với

là góc điều khiển robot đến đích hoặc tránh vật cản.

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 15


Nếu như không có vật cản và giả định A2 không được xét đến thi robot sẽ ngay lập tức
quay về phía đích lúc bắt đầu và cứ thế chạy đến đích. Đây có thể coi là đường đi tối ưu nhưng
không không khả thi với điều kiện của robot. Do đó, luật dẫn hướng sau đây được đưa ra :


θ&(t ) = −η (θ (t ) − θ * (t ))
(2.19)

η
với

là hằng số dương. Phương pháp suy giảm Gradient được áp dụng để tìm ra góc dẫn

θ * (t )
hướng nhằm tối thiểu hóa E(t),

là góc định hướng điều kiện. Để hiểu rõ vấn đề, ta xét

θ * (t )
trường hợp dẫn hướng không có vật cản. Xem

như là góc định hướng dẫn robot đến

θ * (t ) = θt*
đích. Trong trường hợp này

φ + π
θt* =  t
φt − π

với :

(φ (t ) ≤ θ (t ))
(φ (t ) > θ (t ))
(2.20)


0 ≤ φ (t ) ≤ 2π

φ (t )

φ (t )

=,

với

là góc vị trí (gốc tọa độ trùng điểm đích).

θt* (t )
Khi robot ở xa đích,

là hằng số. Do (1.19) là phương trình vi phân bậc nhất với hệ

θt* (t )

η θ (t )
số dương

,

một cách đơn điệu tiến về

θ&(0) = η θ (0) − θ t* (t )

θ&(t )

nhất của

trong ngõ dạng bước ( step) và giá trị lớn



. Có cảm giác rằng robot sẽ lập tức quay về hướng

θt* (t )

φ (t )

đích và tiến về đích. Tuy nhiên, do
thay đổi so với tọa độ của robot ( x(t), y(t)), và
cũng thay đổi theo thời gian. Khi robot gần đích, ta phải xét thêm về sự ổn định của luật dẫn
hướng này.
2.3.2

Cách tránh vật cản

d c dl
Robot sử dụng 3 cảm biến khoảng cách để đo khoảng cách từ nó đến vật cản. Gọi

,

dr


là các khoảng cách theo các hướng ở giữa (center), trái (left), phải (right). Hướng cảm


biến trái và phải lệch so với cảm biến giữa một góc
biến và vật cản:

α

. Các giả thiết sau được đặt ra cho cảm

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 16


d max
(A4) : Khoảng đo được lớn nhất là

, nếu cảm biến không phát hiện vật cản hoặc

d max
khoảng cách lớn hơn

thi ngõ ra cảm biến là -1.

(A5) : Các vật cản được mô hình là các đa giác lồi với các góc ở đỉnh phải lớn hơn

α

.

d max
(A6) : Khoảng cách giữa các vật cản thì lớn hơn

Giả định (A4) thể hiện tình huống thực tế. Mục đích của giả định (A5) là đảm bảo việc
phát hiện vật cản bởi cả ba cảm biến. Giả định (A6) cần thiết cho việc tránh vật cản sẽ được
giải thích sau.
a.

Trường hợp 3 cảm biến đều phát hiện vật cản :
Hình (2.10) mô tả các trường hợp phát hiện vật cản có thể xảy ra. Khi vật cản được

dl ≥ dr
phát hiện ở cả 3 hướng và

như hình (a), Khoảng cách đến vật cản bên trái lớn hơn

bên phải nên robot nên rẽ trái. Đặt

ε

π
−ε
2
là góc trong hình vẽ (a), robot nên rẽ một góc

dl < d r
để tránh vật cản và tương tự cho trường hợp
hướng, ta được:

. Đem phản ứng này vào luật dẫn

π
θ a* (t ) = θ (t ) + sgn(dl − d r )( − ε )

2
(2.21)

ε = tan ((d cos α − d c ) / d sin α )
−1

(α <

π
)
2

với

(2.22)

dl , d r
d = max(

sgn(x) =

)

 +1

 −1

(2.23)

( x ≥ 0)

( x < 0)

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

(2.24)

Trang 17


Hình 2.10 Các trường hợp phát hiện vật cản của robot
b.

Trường hợp 2 cảm biến phát hiện vật cản :

dc > 0
Trong hình b và c, một vật cản được phát hiện phía trước robot (

d c > d r cos α

d c > dl cos α

dl < 0

). Trong trường

dr < 0

hợp đầu

( tương tự trường hợp


). Điều này
có nghĩa rằng một khoảng trống không vật cản đang mở ra phía bên trái và luật dẫn hướng
được cho bởi:

π
θ a* (t ) = θ (t ) + sgn( d l − d r )( − ε ) + sgn((dl − d r )π
2
(2.25)

d c < d l cos α

dr < 0

Trong trường hợp sau,

, phần không gian bên phải có vẻ thóang
hơn bên trái. Tuy nhiên có thể có một vật cản bên phải mà hiện tại robot chưa phát hiện được.
Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 18


π
−ε
2
Để đảm bảo việc tránh vật cản, robot nên rẽ trái một góc
hướng giống như công thức (1.21).

( như trong hình c) và luật dẫn


dc
Khi

< 0 ( hình d) việc chuyển hướng là không cần thiết vì không có vật cản trên đường

θ a* = θ (t )
di chuyển của robot. Do đó
c.

.

Trường hợp một cảm biến phát hiện vật cản :

Có hai trường hợp được xét đến trong hình e và hình f. Trong trường hợp đầu việc chuyển

dc < 0
hướng là không cần thiết do

θ a* = θ (t )
, nên

.

dc > 0

dl

Trong trường hợp sau, do
nên robot phải chuyển hướng. Tuy nhiên do

đều âm nên việc rẽ trái hay rẽ phải là như nhau. Ta quyết định rẽ trái 90 độ:

θ a* (t ) = θ (t ) +

dr


π
2
(2.26)

Trong tất cả các trường hợp từ a đến f thông tin từ 3 cảm biến không thể bao quát đầy đủ

d c dl

dr

sơ đổ các vật cản trong không gian. Tuy nhiên, do
, và
được cập nhật theo thời gian
thực và thêm giả định A5, robot có thể tránh được vật cản trong hầu hết các trường hợp.
2.3.3

Xây dựng thuật toán dẫn hướng thích nghi

Một yêu cầu cơ bản là, khi vật cản được phát hiện thì việc tránh vật cản phải được đặt lên
trên việc đến đích. Tuy nhiên, nếu việc đến đích bao quát luôn cả việc tránh vật cản thì robot
vẫn thực hiện việc đến đích theo công thức (2.20). Bây giờ ta xem xét khả năng robot vẫn đến
đích ngay cả khi phát hiện vật cản. Trên hình 2.10 a, b, c, và f, việc chuyển hướng là cần thiết
để tránh vật cản. Nếu các bất đẳng thức này được duy trì:


θt* (t ) ≥ θ a* (t ) ≥ θ (t )
(2.27)

θt* (t ) < θ a* (t ) < θ (t )
hoặc

(2.28)

thì việc chuyển hướng đến đích đủ để tránh vật cản. Do đó góc điều khiển là:

θ * (t ) = θt* (t )

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 19


θt* (t )

θ * (t )
Trong hình 2.10 e, chuyển hướng là không cần thiết.
nếu điều kiện này xảy ra :

θ (t ) dl < 0 d r > 0

θt* (t )
>

,


,

(2.29)

θ (t ) dl > 0 d r < 0

θt* (t )
hoặc

tiếp tục được gán bằng

<

,

,

(2.30)

Trong hình 2.10 d, việc lái cũng không cần thiết. Không giống hình e, vật cản được phát
hiện ở cả hai hướng trái và phải nhưng không phát hiện ở giữa nên robot vẫn giữ nguyên
hướng.

θ * (t )
Tổng hợp lại, một thuật tóan để tính tóan góc điều khiển

như sau :

begin


dl , d r > 0
if and

θ * (t ) = θ a* (t )
then

dc > 0
else if

θt* (t ) ≥ θ a* (t ) ≥ θ (t )

θt* (t ) < θ a* (t ) < θ (t )

then if

or

θ * (t ) = θt* (t )
then

θ * (t ) = θ a* (t )
else
end if

dl < 0
else if

θt* (t )
and


dr < 0

θ (t )
>

, or

θt* (t )
and

θ (t )
<

,

θ * (t ) = θt* (t )
then

θ * (t ) = θ a* (t )
else
end if
Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 20


end.

2.4 TỔNG KẾT CÁC PHƯƠNG PHÁP TRÁNH VẬT CảN :

Các phương pháp trên đều có những ưu nhược điểm và phạm vi áp dụng khác nhau. Phương
pháp điều khiển bám biên giải quyết được vấn đề sai số của cảm biến siêu âm bằng cách đưa ra
khái niệm nhận thức tổng quát và giải thuật mờ, nhưng robot chỉ di chuyển theo quỹ đạo nhất định,
không áp dụng được cho môi trường phức tạp. Với phương pháp phát hiện cạnh, đòi hỏi cảm biến
siêu âm phải quét hết môi trường làm việc sau đó tính toán để thiết lập quỹ đạo cho robot, do đáp
đáp ứng của robot khá chậm. Phương pháp biểu diễn vật cản bằng sơ đồ lưới đòi hỏi số lượng cảm
biến lớn để có thể bao quát toàn bộ khu vực hoạt động, tuy nhiên lại khắc phục nhược điểm góc mở
lớn của cảm biến siêu âm với việc biểủ diễn dữ liệu bằng hàm xác suất. Phương pháp trường thế
đòi hỏi tọa độ của đích đến phải được biết trước, không thích hợp với các mục tiêu di chuyển như
là trong đề tài.
Phương pháp dùng Optical Flow có ưu điểm là chỉ sử dụng một camera để phát hiện vật cản.
Tuy nhiên phương pháp này lại đòi hỏi việc lập trình tính toán khá phức tạp do phải tính các
gradient cho các điểm trên hình, do đó thời gian xử lý sẽ lâu.
Đối với phương pháp dẫn hướng thích nghi, ta chỉ cần có ba cảm biến siêu âm và giải thuật
tương đối đơn giản. Phương pháp này thích hợp cho các môi trường không phức tạp với các vật
cản tĩnh và có kích thước đủ lớn. Dù trong thuật toán gốc thì tọa độ của đích đến được xác định
trước nhưng ta cũng có thể cải tiến cho các mục tiêu di động, trong đề tài thì mục tiêu di động
chính là khuôn mặt người.

CHƯƠNG 3
ROBOT OMNI

3.1 TỔNG QUAN VỀ ROBOT TỰ HÀNH:
Có rất nhiều chọn lựa cho việc thiết kế một robot tự hành có khả năng di chuyển trên một mặt cứng
(solid surface), trong số đó có 3 dạng chủ yếu là dùng bánh xe (wheels), dùng bánh xích (track) và
dùng chân (legs). Việc dùng bánh xe được ứng dụng nhiều do kết cấu cơ khí đơn giản và việc thi công
dễ dàng. Dùng chân và bánh xích đòi hỏi kết cấu cơ khí phức tạp và phần cứng nặng hơn so với cùng
một mức tải yêu cầu, nhưng có lợi thế là di chuyển được trên những địa hình xấu ( nhấp nhô, trơn trợt).
3.1.1 Robot dùng bánh xe
Dạng đơn giản nhất của robot tự hành là dùng bánh xe, được mô tả bằng các sơ đồ ở hình dưới :

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 21


Hình 3.1 Các dạng robot dùng bánh xe
Robot tự hành dạng này bao gồm một hay nhiều bánh xe được lái ( được tô đậm trong sơ đồ ) ,
bánh tự do (không được tô) và bánh bẻ lái ( được khoanh tròn). Thiết kế ở bìa trái hình trên có một
bánh được lái và cũng để bẻ lái. Thiết kế này đòi hỏi 2 động cơ, một để điều khiển vận tốc (lái) và một
để bẻ lái. Thuận lợi của thiết kế này là việc điều khiển và bẻ lái được tách riêng biệt trên hai động cơ,
do đó việc điều khiển bằng phần mềm trên các quỹ đạo cong sẽ đơn giản. Tuy nhiên, điểm bất lợi là
robot không thể bẻ lái tại chỗ do bánh để bẻ lái không đặt ở giữa.
Thiết kế ở giữa có tính chất lái vi sai (differential drive) được sử dụng khá phổ biến trong thiết kế
robot tự hành. Sự kết hợp hai bánh xe lái độc lập cho phép robot có thể chạy thẳng, chạy vòng hoặc
xoay tại chỗ. Việc điều khiển robot trên một quỹ đạo nào đó, ví dụ như một đường cong đã biết bán
kính phải được làm bằng phần mềm. Một lợi thế nữa của thiết kế là các bánh xe được giữ cố định nên
làm cho kết cấu cơ khí đơn giản.
Cuối cùng thiết kế bìa phải, còn gọi là “Ackermann Steering”, có dạng giống như các xe vận tải
trên đường phố. Ta chỉ cần một động cơ lái cả hai bánh sau và một động cơ bẻ lái bằng cả hai bánh
trước.
Một điều cần lưu ý là cả ba thiết kế trên đều sử dụng hai động cơ cho việc điều khiển vận tốc và bẻ
lái.
Một dạng đặc biệt của robot tự hành là robot chuyển động đa hướng sẽ được phân tích ở phần sau.
Điểm bấr lợi chung cho các robot dùng bánh xe là nó đòi hỏi mặt đường hay mặt phẳng để di
chuyển. Dùng bánh xích có thể khắc phục chuyện này nhưng nó rất khó để điều khiển chính xác như là
bánh xe. Bánh xích cũng cần 2 động cơ, một cho mỗi bên.
3.1.2 Robot dùng chân :

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành


Trang 22


Hình 3.2 Robot dùng bánh xích và robot dùng chân
Giống như robot dùng bánh xích, robot dùng chân có thể di chuyển trên bề mặt phức tạp, hơn nữa
còn có thể lên xuống cầu thang hoặc bước qua các chướng ngại vật nhỏ. Có rất nhiều kiểu thiết kế lọai
này dựa vào số chân với một quy tắc tổng quát: càng nhiều chân càng dễ thăng bằng. Ví dụ robot 6
chân hình trên có thể di chuyển giống như robot 3 chân với 3 chân còn lại trên không. Một robot 3 chân
thì có thể luôn giữ được trạng thái ổn định, với trọng gần đúng bằng tâm hình tam giác tao bởi điểm
tiếp xúc của 3 chân với mặt đất. Mỗi chân robot đòi hỏi từ hai động cơ trở lên tùy thuộc vào số bậc tự
do mỗi chân. Các thiết kế cho robot 2 chân (biped robot) thường có hơn 5 động cơ cho mỗi chân và do
đó số bậc tự do cũng tăng lên, đòi hỏi yêu cầu về khối lượng và chi phí cho robot.
3.1.3 Robot lái đồng bộ chuyển động đa hướng (Synchronous-drive robot )

Hình 3.3 Robot lái đồng bộ chuyển động đa hướng với ba bánh được lái bằng một động cơ ( steering
motor), các bánh được liên kết qua các ròng rọc

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 23


Một robot lái đồng bộ ( synchronous-drive robot ) có thể được chế tạo bằng cách thêm vào các bánh
định hướng ở trọng tâm hoặc lệch trọng tâm. Điều đặc biệt của thiết kế này là hướng và vận tốc các
bánh xe luôn băng nhau. Chuyển động lái của mỗi bánh được liên kết với nhau bằng xích hoặc đai, do
đó ta luôn xác định được sự định hướng của bánh xe. Một chuyển động đa hướng ( có thể ngay lập tức
chuyển động theo bất cứ hướng nào ) có thể đạt được bằng cách lái các bánh xe theo hướng của vận tốc
mong muốn. Tuy nhiên hướng của phần khung robot thì không thể thay đổi. Đôi khi một đầu vô tâm
( turret) được dùng để thay đổi hướng của robot. Lợi ích của việc dùng robot lái đồng bộ là chỉ cần hai
động cơ để đổi hướng và thay đổi vận tốc. Do kết cấu cơ khí đã đảm bảo cho việc lái đồng bộ nên việc

điều khiển không đòi hỏi cao. Nhược điểm của phương pháp này là :




Cấu trúc cơ khí phức tạp
Nếu có hư hỏng xảy ra ở phần liên kết các bánh xe ( đai hoặc xích) thì sẽ có sự sai lệch
vận tốc giữa các bánh
Để đạt được chuyển động đa hướng thì, hướng của bánh xe phải được canh chỉnh theo
hướng mong muốn trước khi bắt đầu chuyển động

3.2. MÔ HÌNH ROBOT OMNI
3.2.1 Bánh xe omni
Bánh xe omni đã trở nên rất thông dụng trong robot tự hành vì 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.

Hình 3.4 Bánh xe omni và ứng dụng trên xe bốn bánh.

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ới Bengt Ilon vào năm 1973. 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 :


Bánh Omni với hướng chuyển động phụ 450 so với hướng chính ( hình 3.5)

Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 24





Bánh Omni với hướng chuyển động phụ 900 so với hướng chính ( hình 3.6)

Hình 3.5 Bánh Omni với hướng chuyển động phụ 450 so với hướng chính

Hình 3.6 Bánh Omni với hướng chuyển động phụ 900 so với hướng chính

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 hướng trục của
động cơ. Để đạ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
Robot tránh chướng ngại vật - GVHD : TS. Nguyễn Đức Thành

Trang 25


×