Tải bản đầy đủ (.pdf) (24 trang)

tìm hiểu và xây dựng phần mềm hỗ trợ bài toán tìm đường đi ngắn nhất tránh vật cản cho xe tự hành trong không gian 2d ppt

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 (1.08 MB, 24 trang )

Giáo viên hướng dẫn : TS. Vũ Đức Lung
Học viên thực hiện : Thái Quốc Thắng
Đồng Nai, tháng 11 năm 2013
TÌM HIỂU VÀ XÂY DỰNG PHẦN MỀM HỖ
TRỢ BÀI TOÁN TÌM ĐƯỜNG ĐI NGẮN
NHẤT TRÁNH VẬT CẢN CHO XE TỰ
HÀNH TRONG KHÔNG GIAN 2D
ĐỀ TÀI:
TRƯỜNG ĐẠI HỌC LẠC HỒNG
CNTT - CAO HỌC KHÓA 3
1
 NỘI DUNG TRÌNH BÀY
1. Giới thiệu bài toán.
2. Mục tiêu.
3. Giải pháp cho bài toán.
4. Hiện thực và đánh giá kết quả.
5. Kết luận và hướng phát triển.
2
1. Giới thiệu bài toán:
3
1. Giới thiệu bài toán:
- Xe tự hành không có khả năng tránh vật cản
trên đường đi. Vì xe tự hành không tự động tìm
cho mình được một đường đi.
- Khi di chuyển, xe tự hành có khả năng di
chuyển ra khỏi đường đi. Do đó, xe tự hành có
thể sẽ không di chuyển về đúng điểm đích.
- Xe tự hành không có khả năng ghi nhận lại
hình ảnh quan sát được trên đường đi, để làm
dữ liệu thông tin phát triển sau này.
4


2. Mục tiêu:
- Xây dựng chương trình tìm đường đi ngắn nhất
tránh vật cản cho xe tự hành trong môi trường
2 chiều.
- Xây dựng khối chức năng, giúp xe tự hành di
chuyển bám theo đường đi đã hoạch định một
cách chính xác.
- Xây dựng hệ thống camera để truyền hình ảnh
ghi nhận được về máy tính điều khiển và kết
quả sẽ được kiểm thử trên một xe tự hành thật.
5
3. Giải pháp cho bài toán:
1. Tìm hiểu bài toán path planning.
2. Tìm hiểu đường đi ngắn nhất dùng visibilty graph
(độ phức tạp O(n
2
logn)) kết hợp giải thuật
Dijkstra.
3. Xây dựng khối chức năng giúp điều khiển xe tự
hành di chuyển chính xác theo đường đi, dựa vào
lý thuyết bộ điều khiển vi tích phân tỷ lệ
(Proportional-Integral-Derivative - PID).
4. Xây dựng hệ thống camera để ghi lại hình ảnh
quan sát được của xe tự hành và truyền về máy
tính điều khiển. Và một mô hình kiểm thử được
lắp đặt.
6
3. Giải pháp cho bài toán
3.1. Tìm hiểu bài toán path planning:
- Path planning là một bài toán tìm đường đi,

được áp dụng nhiều trong các lĩnh vực như
sinh tin học, CAD/CAM, layout, xử lý ảnh,…
và đặc biệt rất nhiều trong lĩnh vực robot.
7
- Bài toán đặt ra là tìm ra đường đi tốt nhất theo
một tiêu chuẩn tối ưu nào đó, sao cho đối
tượng di chuyển từ điểm bắt đầu đến điểm đích
trên đường đi này mà không va vào các vật cản
trong môi trường hai hoặc nhiều chiều.
3. Giải pháp cho bài toán
3.2. Đường đi ngắn nhất trong visibilty graph:
Cho một tập S là các đa giác rời nhau…
Khi đó G
vis
(S) = (V(S), E
vis
) là visibility graph của tập
S, với điều kiện E
vis
= {uv  u, v  V(S), u thấy v}
…và V(S) là đỉnh của tập S.
Định nghĩa: u thấy v    C
free

P
start

P
goal


Trong đó: S
*
= S  {P
start
, P
goal
}.
Hệ quả: Đường đi ngắn nhất giữa P
start
và P
goal
tương
ứng với một đường đi trong G
vis
(S
*
).
ngắn nhất
8
3. Giải pháp cho bài toán
3.2. Đường đi ngắn nhất trong visibilty graph:
 Giải thuật tìm đường đi ngắn nhất:
ShortestPath(S, P
start
, P
goal
)
Đầu vào: Một tập S của các đa giác rời nhau, 2
điểm P
start

và P
goal
trong không gian tự do.
Đầu ra: Đường đi ngắn nhất giữa hai điểm P
start

P
goal
.
1. G
vis

VisibilityGraph  P
start
, P
goal
}).
2. Gán mỗi cung (v,w) trong G
vis
một trọng số bằng
chính chiều dài của đoạn 
3. Sử dụng giải thuật Dijkstra để tính đường đi ngắn
nhất giữa điểm P
start
, P
goal
.
9
3. Giải pháp cho bài toán
3.3. Sử dụng giải thuật Dijkstra để tìm đường đi:

 Giải thuật Dijkstra:
B1 : Khởi tạo: Đặt k
v
:= false vV; d
v
= ∞, vV{a}, d
a
:= 0
B2 : Chọn vV sao cho k
v
= false và d
v
= min{d
t
tV, k
t
= false}
Nếu d
v
= ∞ thì kết thúc, không tồn tại đường đi từ a đến b.
B3 : Đánh dấu đỉnh v, gán k
v
:= true.
B4: Nếu v = b, kết thúc và d
b
chính là độ dài đường đi ngắn
nhất đi từ a đến b.
Ngược lại nếu v ≠ b thì chuyển sang B5.
B5 : Với mỗi đỉnh u kề với v mà k
u

= false, kiểm tra.
Nếu d
u
> d
v
+ w(v,u) thì d
u
:= d
v
+ w(v,u).
Ghi nhớ đỉnh v: p
u
:= v. Quay lại bước B2.
10
Độ phức tạp của giải thuật O(n
2
)
4. Khối chức năng điều khiển xe tự hành
 Bao gồm 2 chức năng:
1. Chức năng xác định vị trí hiện tại của xe tự
hành.
2. Chức năng bám đường đi chính xác cho xe tự
hành dựa trên Bộ điều khiển PID.
11
4. Khối chức năng điều khiển xe tự hành
4.1. Chức năng xác định vị trí hiện tại của xe:
Màn hình giao diện chính của khối chức năng xác
định vị trí hiện tại của xe:
12
Red_Filter

MinValueColorFilter
MaxValueColorFilter
Green_Filter
MinValueColorFilter
MaxValueColorFilter
Red Green Blue
130
0
0
256
100
100
150
150
0
200
256
80
4. Khối chức năng điều khiển xe tự hành
4.2. Chức năng bám đường đi chính xác:
PID là một bộ điều khiển vi tích phân tỷ lệ
(Proportional Integral Derivative – PID) là một cơ chế
phản hồi vòng điều khiển. Bộ điều khiển PID bao gồm 3
thông số riêng biệt, đôi khi nó còn được gọi là điều khiển
ba khâu. Viết tắt P, I và D:
- “P” : Khâu giá trị tỷ lệ (Proportional);
- “I” : Khâu tích phân (Integral);
- “D” : Khâu vi phân (Derivative).
4.2.1. Lý thuyết bộ điều khiển PID:
13

4. Khối chức năng điều khiển xe tự hành
4.2. Chức năng bám đường đi chính xác:
4.2.1. Lý thuyết bộ điều khiển PID:
 Khâu tỷ lệ “P”:
Làm thay đổi giá trị đầu ra, tỷ lệ với giá trị sai số
hiện tại. “P” được gọi là độ lợi tỷ lệ. Được cho bởi:
P
out
= K
p
e(t)
Trong đó:
P
out
: Thừa số tỷ lệ của đầu ra
K
p
: Độ lợi tỷ lệ, một thông số điều chỉnh
e : Sai số
t : Thời gian hiện tại hay thời gian tức thời
14
4. Khối chức năng điều khiển xe tự hành
4.2. Chức năng bám đường đi chính xác:
4.2.1. Lý thuyết bộ điều khiển PID:
 Khâu tỷ lệ “I”:
Làm tăng tốc chuyển động của quá trình tới điểm
đặt và khử số dư sai số ổn định với một tỷ lệ chỉ phụ
thuộc vào bộ điều khiển. Được cho bởi:
I
out

= K
i


  



Trong đó:
I
out
: Thừa số tích phân của đầu ra
K
i
: Độ lợi tích phân, một thông số điều chỉnh
e : Sai số
t : Thời gian hiện tại hay thời gian tức thời
 : Một biến tích phân trung gian
15
4. Khối chức năng điều khiển xe tự hành
4.2. Chức năng bám đường đi chính xác:
4.2.1. Lý thuyết bộ điều khiển PID:
 Khâu tỷ lệ “D”:
Làm giảm biên độ vọt lố được tạo ra bởi thành
phần tích phân và tăng cường độ ổn định của bộ điều
khiển hỗn hợp. Thừa số vi phân được cho bởi:
D
out
= K
d




e(t)
Trong đó:
D
out
: Thừa số vi phân của đầu ra
K
i
: Độ lợi vi phân, một thông số điều chỉnh
e : Sai số
t : Thời gian hiện tại hay thời gian tức thời
16
4. Khối chức năng điều khiển xe tự hành
4.2. Chức năng bám đường đi chính xác:
4.2.1. Lý thuyết bộ điều khiển PID:
Tổng chập của ba tác động này dùng để điều chỉnh
quá trình thông qua một phần tử điều khiển. Cho u(t)
là đầu ra của bộ điều khiển, biểu thức cuối cùng của
giải thuật PID là:
u(t) = MV(t) = K
p
e(t) + K
i


  



+ K
d



e(t)
Trong đó các thông số điều chỉnh:
K
p
: Độ lợi tỉ lệ.
K
i
: Độ lợi tích phân
K
d
: Độ lợi vi phân
17
4. Khối chức năng điều khiển xe tự hành
4.2. Chức năng bám đường đi chính xác:
4.2.2. Xây dựng chức năng bám đường:
và tiểu đường đi P
i
kết nối tập các điểm từ w
i
đến
w
i+1
.

(i+1)


w
(i+1)
w
i
x
t
x

n
i

i


i

e
t
= x
t
tan(µ
t
)n
i
Gọi P là một đường đi được xác định bởi một chuỗi N
điểm
Khi đó, vị trí hiện tại được cho x
t


Cho n
i
là vector để theo dõi lỗi.
và hàm theo dõi lỗi sẽ là:
18
4. Khối chức năng điều khiển xe tự hành
4.2. Chức năng bám đường đi chính xác:
4.2.2. Xây dựng chức năng bám đường:
Bộ điều khiển được hiện thực dựa trên vòng lặp đóng
sử dụng điều khiển P trong bộ điều khiển PID:
u
t
= K
p
e
t
K
p
được xác định bằng phương pháp điều chỉnh Ziegler-
Nichols.
Control type K
p
K
i
K
d

P K
u
/2 - -

PI K
u
/2.2 1.2K
p
/T
u
-
Classic PID 0.60K
u
2K
p
/T
u
K
p
T
u
/8
19
Bảng phương pháp điều chỉnh Ziegler–Nichols:
5. Chức năng ghi và truyền hình ảnh:
Trong quá trình di chuyển xe tự hành sử dụng một
Camera IP giao tiếp qua thiết bị Wireless và kết nối máy
tính điều khiển thông qua thiết bị Access Point để truyền
hình ảnh quan sát được về cho máy tính điều khiển.
Thiết lập kết nối không dây giữa các thiết bị thông qua
thông qua Access Point:
20
Kết nối Camera và máy tính
vào AP1

6. Hiện thực và đánh giá kết quả:
6.1. Hiện thực:
21
6. Hiện thực và đánh giá kết quả:
6.2. Đánh giá kết quả:
• Nghiên cứu và hệ thống hóa lý thuyết tìm
đường đi ngắn nhất tránh vật cản cho xe tự
hành dùng visibility graph với độ phức tạp
O(n
2
logn);
22
• Tìm hiểu và xây dựng khối chức năng di chuyển
bám theo đường đi một cách chính xác, dựa
khâu tỷ lệ “P” trong bộ điều khiển PID kết hợp
hệ thống camera và bộ thư viện EmguCV.
• Xây dựng khối chức năng truyền hình ảnh quan
sát được trên đường đi từ camera về cho máy
tính điều khiển.
7. Hướng phát triển của đề tài:
• Phát triển hệ thống phù hợp với môi trường
thực tế;
23
• Phát triển bài toán tìm đường lên 3D;
• Xe tự hành có khả tránh vật cản bất ngờ xuất
hiện;
• Ứng dụng thực tế cho xe tự hành với khoảng
cách xa hơn và cần chuyển từ giao tiếp
Bluetooth lên các mạng không dây tầm xa hơn.
Xin chân thành cảm ơn

q Thầy Cô và các bạn
đã quan tâm theo dõi !!!

×