Điều khiển robot bằng logic mờ

LĨNH VỰC NGHIÊN CỨU CƠ BẢN  
ĐIỀU KHIỂN ROBOT BẰNG LOGIC MỜ  
ThS. Vũ Anh Đào  
Khoa Kỹ thuật Điện tử 1  
Tóm tắt: Trong bài này, chúng tôi sử dụng logic mờ để điều khiển một đối tượng di động -  
robot. Mỗi chuyển động được định nghĩa bằng một tập mờ dựa vào vị trí robot, giá trị của  
sensor, khoảng cách và góc so với vị trí đích. Để robot tránh chướng ngại vật, một bộ ghi nhớ  
đường đi được tạo ra để robot có thể tìm được đường đi mới khi nó gặp chướng ngại vật. Bài  
báo này bao gồm phần 1 giới thiệu chung về phương pháp này. Phần 2 giới thiệu qua về các  
hệ thống mờ. Phần 3 giới thiệu bộ mô phỏng robot Khepera và các phép biến đổi biến cần  
thiết cho các hệ thống điều khiển. Phần 4 giới thiệu mô hình bộ điều khiển và phần 5 chỉ ra  
các kết quả đạt được.  
1. Giới thiệu  
Các phương pháp thông thường để điều khiển robot thường không đủ nhanh khi môi trường  
và vị trí đích bị thay đổi. Khó khăn chủ yếu khi điều khiển robot là môi trường thường không  
biết trước, tại thời điểm lập trình khó xác định đâu là hành động tốt nhất do các kích thích mà  
robot thu được tại thời điểm hiện tại lại dựa vào các tư thế trước đó của robot.  
Trong bài này, chúng tôi đưa ra một phương pháp mới để điều khiển robot, đó là dựa vào hệ  
thống mờ với cấu trúc ghi nhớ đường đi. Ưu điểm của phương pháp này là hệ thống mờ có thể  
"nhớ được quá khứ". Mặc dù không thể biết trước kết quả của mọi hành động, cấu trúc ghi  
nhớ đường đi có thể loại bỏ những hành động tạo nên tình huống không thuận lợi trước đó, do  
đó tối ưu hoá được quá trình hoạt động của robot tại từng thời điểm.  
2. Các hệ thống mờ  
Một hệ thống mờ điển hình được chỉ ra trên hình 1. Đầu vào của hệ thống là các giá trị rõ (ví  
dụ: giá trị sensor). Khối mờ hoá biến đổi chúng thành các giá trị mờ. Khối hợp thành mờ sử  
dụng các luật mờ, kết hợp với các đầu vào mờ để tạo nên đầu ra mờ. Cuối cùng, khối giải mờ  
sẽ biến đổi chúng, tạo thành các đầu ra rõ, được sử dụng để điều khiển hệ thống.  
Các luật mờ  
Đầu vào rõ  
Bộ mờ hoá  
Đầu ra rõ  
Bộ giải mờ  
Khối  
hợp thành mờ  
Hình 1. Sơ đồ khối của một hệ thống mờ  
Luật mờ được xây dựng dựa trên ngôn ngữ tự nhiên, sử dụng các biến ngôn ngữ (distance,  
angle, công suất motor) kết hợp với các tập mờ (near, far...)  
Ví dụ:  
Nếu khoảng cách là gần và góc là dương thì công suất motor là dương và bé  
3. Môi trường mô phỏng  
Bộ mô phỏng robot Khepera được sử dụng để kiểm tra hệ thống điều khiển có cấu trúc ghi  
nhớ đường đi. Robot có 8 sensor ( S0 đến S7 ), mỗi hướng có 2 sensor. Để đơn giản, mỗi  
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG  
HỘI NGHỊ KHOA HỌC LẦN THƯ VI  
LĨNH VỰC NGHIÊN CỨU CƠ BẢN  
nhóm 2 sensor được chuyển đổi thành một giá trị bằng cách lấy trung bình các giá trị đọc  
được. Do đó, các sensor được sắp xếp để tạo nên 4 giá trị tương ứng với các vị trí ahead,  
behind, left và right.  
Hình 2. Cấu tạo đơn giản hoá của sensor  
Môi trường mô phỏng Khepera tạo nên tại mỗi vị trí của Khepera một góc α giữa robot và  
trục x. Tuy nhiên, góc cần quan tâm là góc giữa vị trí của robot và đích (β).  
Hình 3. Tính toán góc giữa robot và các vị trí đích  
Gọi d là khoảng cách giữa robot và đích , x , y là toạ độ của robot và x', y' là toạ độ  
(
)
(
)
r
r
của đích, γ là góc giữa đường đường nối robot-đích và trục x, ta có:  
2
2
d = x − x' + y − y'  
(
)
(
)
r
r
γ = arcsin y − y' / d  
(
)
(
)
r
Ta có thể tính được β theo cách:  
Nếu α + γ > π và α > 0  
thì β = π − α − γ  
(
)
)
Nếu α + γ ≤ π và α ≥ 0  
Nếu α < 0  
thì β = π − α + γ  
(
thì β = −π + α + γ  
(
)
Hướng của robot được xác định theo góc β − α và được mô phỏng trên hình 4.  
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG  
HỘI NGHỊ KHOA HỌC LẦN THƯ VI  
LĨNH VỰC NGHIÊN CỨU CƠ BẢN  
3π/4  
π/4  
left  
-π/4 < β - α ≤ π/4 → ahead  
π/4 < β - α ≤ 3π/4 → left  
-3π/4 < β - α ≤ -π/4 → right  
3π/4 < β - α ≤ -3π/4 → behin  
π
behin  
ahead  
0
right  
-3π/4  
-π/2  
Hình 4. Hướng chuyển động của robot  
4. Mô hình bộ điều khiển  
4.1 Các biến ngôn ngữ  
Đầu vào bộ điều khiển mờ có 6 biến ngôn ngữ:  
+ 4 biến đọc từ sensor: ahead, behin, left, right.  
+ angle (góc) giữa robot và đích β (theo radian)  
( )  
+ distance (khoảng cách tới đích) d .  
( )  
Đầu ra bộ điều khiển mờ là hai biến ngôn ngữ, đó là công suất cấp cho mỗi động cơ bước:  
động cơ left và right.  
đích  
β =1000  
Path[β']  
Hình 5. Cơ cấu ghi nhớ đường  
Ngoài ra, còn một số biến vào khác trong cơ cấu ghi nhớ đường đi để tránh cho robot khỏi các  
vật cản. Cơ cấu ghi nhớ đường đi Path[β'] bao gồm một vector 360 vị trí tương ứng với góc  
β (theo độ). Path[β'] có giá trị bằng 0, có nghĩa là đường đi chưa đúng (gặp va chạm), khi đó  
robot sẽ bị ngăn lại bằng một hành động của cơ cấu ghi nhớ đường đi. Path[β'] có giá trị bằng  
1, có nghĩa là robot được phép đi đường đó.  
Do vector nhớ đường được biểu thị bằng góc β với β = k + γ , k là hằng số (giả sử α là  
hằng số, chỉ biến đổi theo x và y ), khi đó, β sẽ biến đổi theo γ khi x và y thay đổi.  
2
2
Như trên ta đã tính được γ = arcsin y − y' / x − x' + y − y' . Để tính β khi x  
(
)
(
)
(
)
r
r
r
(
)
và  
y
thay đổi, ta sẽ cộng hoặc trừ đi mức biến đổi của γ , đó là  
2
2
arcsin y + ∆y / x + ∆x + y + ∆y , trong đó ∆x, ∆y là các mức biến đổi theo  
(
)
(
)
(
)
r
r
r
(
)
trục x và trục y . Nếu α thay đổi thì ta sẽ lấy β cộng hoặc trừ đi sự thay đổi đó, phụ thuộc  
vào phương trình được sử dụng để tính β.  
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG  
HỘI NGHỊ KHOA HỌC LẦN THƯ VI  
LĨNH VỰC NGHIÊN CỨU CƠ BẢN  
4.2 Tập mờ  
6 biến ngôn ngữ trên được chia thành các tập mờ sau:  
Công suất động cơ (các biến ra) được chia thành 5 tập mờ: negative_high, negative_medium,  
zero, positive_medium, positive_high.  
angle β được chia thành 5 tập mờ: negative_big, negative_medium, zero, positive_medium,  
( )  
positive_big.  
distance d được chia thành 4 tập mờ: very_far, far, near, very_near.  
( )  
(b) Khoảng cách  
(a) Góc  
(c) Công suất  
Hình 6. Các tập mờ  
4.3 Luật mờ  
Do số biến vào lớn (mỗi biến có ít nhất 4 tập mờ) nên để đơn giản, ta sẽ loại bỏ các luật ít có  
hoặc không có khả năng xảy ra, các luật tạo ra những ảnh hưởng giống nhau đối với việc di  
chuyển robot. Các luật cơ bản sẽ được chia làm 3 nhóm theo hướng di chuyển của robot: đi  
thẳng (khi không có vật cản hoặc khi vật cản ở xa), rẽ (để về đích) và đi vòng (để tránh vật  
cản)  
STT góc β ahead left  
right  
behind  
distance  
left motor right  
motor  
1
2
3
4
Z
Z
Z
Z
VF  
VF  
F
VF  
F
VF  
F
PH  
PH  
PH  
PH  
Z
PH  
PH  
PH  
PH  
Z
F
5
VN  
6
7
8
9
10  
11  
12  
13  
14  
PM  
PM  
NM  
NM  
PB  
PB  
NB  
NB  
Z
VF  
F
PM  
PM  
PH  
PH  
NH  
NM  
PH  
PH  
PM  
PH  
PH  
PM  
PM  
PH  
PH  
NH  
PM  
PH  
VF  
F
VF  
F
VF  
F
N
VF  
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG  
HỘI NGHỊ KHOA HỌC LẦN THƯ VI  
LĨNH VỰC NGHIÊN CỨU CƠ BẢN  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
Z
Z
Z
Z
Z
Z
Z
N
F
VF  
F
N
VN  
N
VN  
N
N
VN  
VN  
PM  
NM  
NM  
PH  
PH  
PH  
PH  
PM  
PH  
PH  
PH  
NM  
NH  
NH  
NH  
PH  
PH  
PH  
VN  
VN  
N
PM  
NM  
NM  
NH  
NM  
NH  
NH  
NH  
PM  
PH  
N
VN  
VN  
N
VN  
N
VN  
N
VN  
N
N
N
VN  
VN  
NH  
NH  
VN  
Bảng 1: Luật mờ (VF: very_far, F: far, VN: very_near, N: near, Z: zero, PM:  
positive_medium, PG: positive_big, NM: negative_medium, NB: negative_big, PH:  
positive_high, NH: negative_high, 1-5: đi thẳng, 6-13: rẽ, 14-29: đi vòng)  
Do tồn tại mệnh đề kết quả kép trong các luật nên nó được chia làm hai luật với cùng một  
mệnh đề điều kiện, mỗi luật tương ứng với một motor. Ví dụ:  
IF angle là NB AND distance là VF AND Path[β'] THEN righ motor là PH và left motor là  
NH  
Mệnh đề này sẽ được chuyển thành hai mệnh đề sau:  
IF angle là NB AND distance là VF AND Path[β'] THEN righ motor là PH  
IF angle là NB AND distance là VF AND Path[β'] THEN left motor là NH  
Chỉ số β' của vector ghi nhớ đường đi là góc giữa robot và đích (theo độ).  
Hình 7. Surface của bộ điều khiển mờ  
4.4. Hợp thành mờ và giải mờ  
Trong hệ thống này, ta sử dụng phương pháp hợp thành mờ MAX-MIN và phương pháp giải  
mờ trung bình trọng số cực đại.  
4.5. Kết quả  
Một số thí nghiệm đã được thực hiện trong các môi trường khác nhau và dưới đây là một số  
kết quả đạt được. Giả sử các đầu đọc của 4 sensor nhận giá trị trong khoảng từ 0 (không có  
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG  
HỘI NGHỊ KHOA HỌC LẦN THƯ VI  
LĨNH VỰC NGHIÊN CỨU CƠ BẢN  
vật cản) đến 1024 (chạm vật cản). khoảng cách nhận giá trị từ 0 đến 100. Công suất mỗi động  
cơ trong khoảng từ -10 (công suất lùi cực đại) đến 10 (công suất tiến cực đại).  
Với môi trường lý tưởng, như hình 8, cần 522 bước để tới đích dù có hay không có cơ cấu ghi  
nhớ đường đi do thiếu các vật cản có thể chặn robot.  
Hình 8. Ví dụ đường đi số 1  
Với môi trường như trong hình 9 thì cần 754 bước để đi tới đích với cơ cấu ghi nhớ đường.  
Nếu không có cơ cấu ghi nhớ đường, robot sẽ bị chặn lại khi nó hết đường do các cản gây ra.  
Hình 9. Ví dụ đường đi số 2  
5. Kết luận  
Các kết quả đạt được đã được mô phỏng bằng hệ thống logic mờ với số bước thực hiện ít hơn  
khoảng 40% so với việc sử dụng các luật rõ. Do có cơ cấu ghi nhớ đường, robot sẽ không bị  
dừng lại trong các tình huống khó khăn.  
Hiệu quả của cơ cấu ghi nhớ đường đã được chứng minh. Trong nhiều trường hợp, robot  
không thể tới đích nếu không có nó.  
Trong trường hợp không biết rõ vị trí của robot (vị trí x và y) do chúng được sử dụng để tính  
β, góc sai trong cơ cấu ghi nhớ đường sẽ được phân tích. Nếu có mẫu trong phép chia x cho y  
thì trong phần mềm sẽ có sự điều chỉnh. Nếu không có mẫu trong phép chia thì phương pháp  
này không thích hợp để sử dụng.  
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG  
HỘI NGHỊ KHOA HỌC LẦN THƯ VI  
pdf 6 trang myanh 20521 Free
Bạn đang xem tài liệu "Điều khiển robot bằng logic mờ", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfdieu_khien_robot_bang_logic_mo.pdf