Về thuật toán bám đường cho UAV

Hiện nay, UAV được ứng dụng rộng rãi trong các lĩnh vực kinh tế xã hội cũng như

quốc phòng an ninh. Để thực hiện nhiệm vụ của mình, bài toán bám theo đường trên một

độ cao ổn định là một trong những bài toán cơ bản trong điều khiển UAV, kể cả trong

nhiệm vụ quét theo vùng được xác định bằng các điểm là đỉnh của đa giác. Đường phải

theo thường là những đường thẳng hoặc những cung tròn. Nhiệm vụ chung đặt ra cho bài

toán bám theo đường là đảm bảo độ chính xác trong quá trình bám theo đường, đồng thời

bảo đảm tính bền vững dưới tác động của nhiễu bên ngoài.

Các thuật toán bám theo đường được phát triển dựa trên giả thiết tốc độ UAV không

đổi, được phát triển cơ bản theo các hướng thuật toán carrot, thuật toán dẫn đường phi

tuyến [1], thuật toán dẫn đường trên cơ sở trường vecto [2], thuật toán bám đường trên cơ

sở bộ điều chỉnh toàn phương tuyến tính [3], thuật toán bám đuổi và thuật toán bám theo

đường ngắm [4]. Trong bài báo này, bằng cách sử dụng mô hình động hình học và công cụ

mô phỏng, các ưu điểm và nhược điểm của các phương pháp này sẽ được xem xét và phân

tích, đặc biệt là sự ảnh hưởng của tham số biến đổi.

pdf 9 trang kimcuc 20380
Bạn đang xem tài liệu "Về thuật toán bám đường cho UAV", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Về thuật toán bám đường cho UAV

Về thuật toán bám đường cho UAV
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 55, 06 - 2018 35
VỀ THUẬT TOÁN BÁM ĐƯỜNG CHO UAV 
Phạm Thị Phương Anh1*, Nguyễn Vũ2, Phan Tương Lai3 
Tóm tắt: Bám theo đường là một nhiệm vụ cơ bản của UAV. Một vài thuật toán 
đã được phát triển nhằm đảm bảo chất lượng bám theo đường cho UAV. Bài báo 
này sẽ trình bày một số thuật toán bám theo đường, đồng thời tiến hành so sánh các 
thuật toán đó thông qua công cụ mô phỏng. 
Từ khóa: UAV; Dẫn đường; Điều khiển trượt. 
1. MỞ ĐẦU 
Hiện nay, UAV được ứng dụng rộng rãi trong các lĩnh vực kinh tế xã hội cũng như 
quốc phòng an ninh. Để thực hiện nhiệm vụ của mình, bài toán bám theo đường trên một 
độ cao ổn định là một trong những bài toán cơ bản trong điều khiển UAV, kể cả trong 
nhiệm vụ quét theo vùng được xác định bằng các điểm là đỉnh của đa giác. Đường phải 
theo thường là những đường thẳng hoặc những cung tròn. Nhiệm vụ chung đặt ra cho bài 
toán bám theo đường là đảm bảo độ chính xác trong quá trình bám theo đường, đồng thời 
bảo đảm tính bền vững dưới tác động của nhiễu bên ngoài. 
Các thuật toán bám theo đường được phát triển dựa trên giả thiết tốc độ UAV không 
đổi, được phát triển cơ bản theo các hướng thuật toán carrot, thuật toán dẫn đường phi 
tuyến [1], thuật toán dẫn đường trên cơ sở trường vecto [2], thuật toán bám đường trên cơ 
sở bộ điều chỉnh toàn phương tuyến tính [3], thuật toán bám đuổi và thuật toán bám theo 
đường ngắm [4]. Trong bài báo này, bằng cách sử dụng mô hình động hình học và công cụ 
mô phỏng, các ưu điểm và nhược điểm của các phương pháp này sẽ được xem xét và phân 
tích, đặc biệt là sự ảnh hưởng của tham số biến đổi. 
Trước tiên bài toán được xây dựng như sau: 
Cho đường quỹ đạo, với vị trí của UAV là ,xM x y và góc hướng quỹ đạo của nó là 
 bài toán bám theo đường là cần xác định góc hướng mong muốn của UAV d sao cho 
khi bám theo góc hướng này, UAV sẽ tiến dần tới và bám theo đường quỹ đạo đã cho. 
Đường quỹ đạo thông thường là các đường thẳng và các cung tròn. Các đường thẳng 
thường được xác định bởi chuỗi điểm dấu, góc của đường thắng nối hai điểm dấu liên tiếp 
là góc đường ngắm  . Đối với quỹ đạo là cung tròn, các tham số của nó được xác định 
bởi tọa độ tâm O và bán kính r của nó. Khoảng cách từ UAV đến đường quỹ đạo là sai số 
ngang. Đối với quỹ đạo cung tròn, góc  được xác định là góc của tiếp tuyến với cung 
tròn tại điểm giao của đường thẳng nối tọa độ UAV với tâm đường tròn O gần với UAV 
nhất. Nhiệm vụ của thuật toán bám theo đường là làm cho sai số 0d cũng như sai số 
góc 0  trong suốt thời gian thực hiện nhiệm vụ t . 
2. CÁC THUẬT TOÁN BÁM THEO ĐƯỜNG 
 2.1. Đặt vấn đề 
Giả thiết đường quỹ đạo cần bám của UAV nằm trên mặt phẳng ngang, đồng thời vận 
tốc của UAV không đổi. Mặt phẳng nằm ngang được thể hiện bẳng tọa độ 2 chiều Oxy. 
Khi đó mô hình động hình học của UAV được xây dựng như sau: 
a ω ω g
a ω ω g
x v v ψ v 
y v v ψ v 
φ
cos cos cos
sin sin sin
u
 
 



 (1) 
Kỹ thuật điều khiển & Điện tử 
P. T. P. Anh, N. Vũ, P. T. Lai, “Về thuật toán bám đường cho UAV.” 36 
Trong đó, av : Vận tốc của UAV;  : Góc hướng của UAV;  : Tốc độ góc hướng; v : 
Vận tốc gió;  : Hướng gió; u : Tập lệnh điều khiển. 
Mô hình động học ở đây tương đương với mô hình xe trên mặt phẳng nằm ngang [5]. 
Trong trường hợp không có gió mô hình động học của UAV có dạng sau: 
a
a
x v
y v
ψ
cos
sin
u





 (2) 
Trước tiên xem xét mô hình trong điều kiện không có gió và áp dụng các thuật toán 
bám theo đường để đánh giá hiệu quả của từng thuật toán. Để đánh giá thuật toán sử dụng 
mô hình với các tham số sau: av 50m / s ; tốc độ góc tối đa 
0
maxω 30 / s ; bán kính 
cung tròn r 400m ; 
2.2. Thuật toán bám theo đường ngắm ảo 
Để xây dựng thuật toán bám theo đường ngắm ảo, xem xét các ký hiệu trong hình 1 
Hình 1. Sơ đồ UAV bám theo đường thẳng (a) và đường tròn (b) 
 theo thuật toán bám điểm ảo. 
Đối với trường hợp bám theo đường thẳng như hình 1a, các tham số cần quan tâm là 
khoảng cách đến đường và vị trí của điểm ngắm ảo. Giả sử chọn điểm ngắm ảo là điểm T 
nằm trên đường thẳng quỹ đạo, có khoảng cách đến hình chiếu của UAV lên đường này 
điểm ( , )P PP x y là  về hướng chuyển động theo quỹ đạo, còn khoảng cách từ UAV đến 
quỹ đạo là d , góc đường ngắm từ UAV (M) đến điểm T( , )t tx y là d vị trí của UAV là 
( , )M x y , góc hướng của UAV là  . Mục tiêu của thuật toán này là luôn đảm bảo cho 
góc hướng của UAV trùng với góc đường ngắm từ UAV đến điểm ngẳm ảo d (hình 1a). 
Góc hướng của UAV được xác định bằng các phương tiện đo, còn góc hướng mong 
muốn được xác định theo thuật toán sau: 
 d t tψ atan2 x x , y y (3) 
Để xác định d cần phải biết ,x y được xác định bằng các thiết bị đo gắn trên UAV và 
( , )t tx y được xác định theo thuật toán sau: 
Đặt P riM khi đó T r δiM 
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 55, 06 - 2018 37
Giả sử góc của đường thẳng 1i iM M là , góc của đường iM M là m , độ dài iM M là s 
Khi đó 
t
t
x r δ
y r δ
cos
sin


 (4) 
Ở đó và r được xác định như sau: 
 i 1 i i 1 iθ atan2 x x , y y (5) 
 2 2mr s cos θ θ s d (6) 
Với 
2 2
i is x x y y (7) 
Và m i iθ atan2 x x , y y (8) 
Thuật toán được thực hiện theo các công thức (3) đến (8) cho phép xác định góc ngắm 
từ UAV tới điểm ảo. Tuy nhiên, qua các công thức này chưa thấy nổi bật ảnh hưởng của 
sai số bám d tới độ lệch góc giữa đường thẳng ngắm với góc quỹ đạo . 
Để làm rõ ảnh hưởng này, sử dụng thuật toán chuyển hệ tọa độ. Hệ tọa độ mới có tâm 
là điểm ( , )i i iM x y , có trục Ox trùng với đường thẳng 1i iM M , tức là quay đi 1 góc  
Mỗi điểm trong hệ tọa độ cũ được chuyển sang hệ tọa độ mới thông qua phép tịnh tiến 
và phép quay tổng hợp lại trong phương trình sau: 
m
k i k ik
m
k i k ik
cos θ sin θ x x x xcosθ sinθx
sin θ cos θ y y y ysinθ cosθy
 (9) 
Như vậy, sai số bám d sẽ chính là ym 
 m i id y x x sinθ y y cosθ (10) 
Góc mong muốn sẽ chính là ψ  = atan2(δ, d) (11) 
Và đây cũng chính là góc giữa đường MT với đường 1i iM M , trong một số mô tả khác, 
đây chính là góc lệch với góc chuẩn, tức là góc của đường 1i iM M 
Với cách thể hiện như trong (11) dưới góc độ hình học rất trực quan và thể hiện rõ ảnh 
hưởng của d và  đến việc lựa chọn tín hiệu điều khiển. 
Góc hướng ban đầu của UAV khi đó sẽ là 
m
0 0ψ ψ  (12) 
Và lệnh điều khiển được chọn sẽ là: 
 m m mdu ψ k ψ ψ k(atan2 δ,d ψ)  (13) 
Trong quá trình hoạt động, góc hướng sẽ được đo bằng các thiết bị phù hợp. Trong điều 
kiện lý tưởng: 
t
m
d
0
ψ udt (14) 
Tín hiệu điều khiển (13) được đưa vào (2) để tiến hành mô phỏng. Không mất tính tổng 
quát, trong mô phỏng coi các tham số đưa vào đã được thực hiện sau phép chuyển tọa độ, 
với động học (2) và tham số UAV: av 50m / s ; 
0
maxu 30 / s 
Kỹ thuật điều khiển & Điện tử 
P. T. P. Anh, N. Vũ, P. T. Lai, “Về thuật toán bám đường cho UAV.” 38 
d y 
 2( , )d atan d  
  : Góc hướng UAV 
 Góc quỹ đạo là / 4 
 0 : Góc ban đầu / 3 
 0d : Sai lệch ban đầu 600m 
 m mdu ψ k ψ ψ .( 2 , )k atan d   
Kết quả mô phỏng như sau: 
Hình 2. Kết quả mô phỏng bám theo đường thẳng 
sử dụng thuật toán ngắm điểm ảo. 
Kết quả mô phỏng ta thấy sau 50s thì hệ thống ổn định, sai số bám là 0.8m, sai số góc 
0.04 rad; tốc độ góc dao động nhiều. 
Khi thay đổi hệ số  ta thấy nếu chọn  nhỏ thì hệ thống mất nhiều thời gian để ổn 
định nhưng sai số nhỏ, nếu lớn hệ thống ổn định nhanh nhưng sai số lớn. Khi sử dụng 
phương pháp này phụ thuộc vào cách chọn hệ số  
Đối với trường hợp bám theo đường tròn vì tính đối xứng qua tâm của đường nên ta sẽ 
không thực hiện phép quay tọa độ mà chỉ thực hiện phép tịnh tiến. Không mất tính tổng 
quát nếu coi tâm của đường tròn là gốc tọa độ khi đó: 
Hình chiếu của UAV xuống đường quỹ đạo là giao của đường thẳng OM với đường 
quỹ đạo – Điểm P. 
Điểm ngắm ảo là điểm nằm trên đường tròn và sau điểm P một dây cung có góc chặn 
là  . 
Đường tròn có bán kính R. 
Tương tự như trong chế độ đường thẳng, cần xác định góc hướng mong muốn 
 d mψ θ π  (15) 
Với λ atan2(Rsinε, (R Rcosε d)) (16) 
Và mθ atan2(x, y) (17) 
Tổng hợp lại ta nhận được 
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 55, 06 - 2018 39
 dψ (atan2 x, y π) atan2(Rsinε, (R 1 cosε d)) (18) 
Theo phương trình (18) góc mong muốn của UAV phụ thuộc vào tọa độ của nó, giá trị 
góc dây cung đón trước (điểm ngắm ảo) và khoảng cách từ UAV đến đường tròn d . Khi 
d đủ lớn atan2(Rsinε, (R 1 cosε d)) sẽ tiến gần đến 0, khi đó, hướng mong muốn 
sẽ xấp xỉ hướng đường thẳng MO, có nghĩa rằng UAV sẽ nhắm thẳng tâm của đường để 
bay tới. 
Khi UAV nằm trong đường tròn 0d , các công thức trên vẫn được sử dụng. Tuy 
nhiên, trong trường hợp đặc biệt, khi , 0d R x y và d không xác định. Trong 
trường hợp này với một điều kiện biên nhất định, ví dụ x , y  
Khi d sẽ xác định trong mọi điều kiện. 
Hình 3. Kết quả mô phỏng bám theo đường tròn sử dụng thuật toán ngắm điểm ảo. 
Kết quả mô phỏng với điều kiện ban đầu như sau: 
R=160m 
Góc hướng ban đầu : / 3 
Vị trí ban đầu: (0,190) 
Kết quả mô phỏng ta thấy sau 8s thì hệ thống ổn định, sai số bám là 1m. Khi thay đổi 
hệ số  ta thấy nếu chọn  nhỏ thì hệ thống mất nhiều thời gian để ổn định nhưng sai số 
nhỏ, nếu  lớn hệ thống ổn định nhanh nhưng sai số lớn. Khi sử dụng phương pháp này 
phụ thuộc vào cách chọn hệ số  . 
2.3. Thuật toán bám đuổi và bám theo đường ngắm 
Hình 4. Biễu diến hình học thuật toán bám đuổi và bám theo. 
Kỹ thuật điều khiển & Điện tử 
P. T. P. Anh, N. Vũ, P. T. Lai, “Về thuật toán bám đường cho UAV.” 40 
Một số ký hiệu trong thuật toán: 
u : Góc của đường iM M đường thẳng nối điểm đầu của đường quỹ đạo với UAV; 
d : Góc của đường 1iMM đường thẳng nối với UAV với điểm cuối của đường 
quỹ đạo; 
 : góc hướng của UAV; 
 : góc của đường quỹ đạo 1i iM M . 
Thuật toán bám đuổi là duy trì góc hướng của UAV trùng với góc của đường 1i iM M . 
Như vậy, góc đặt tỷ lệ với độ lệch 2 góc: 
P 1 dψ k (θ ψ) (19) 
Thuật toán bám theo đường ngắm đảm bảo góc của đường thẳng nối điểm đầu của 
đường quỹ đạo với UAV u và góc của đường thẳng quỹ đạo  trùng nhau và được xác 
định như sau: 
 l 2 uψ k .d.sin θ θ (20) 
Với d là sai số bám ngang hay là khoảng cách từ UAV đến đường quỹ đạo 
Tổng hợp hai thuật toán ta nhận được: 
 1 2 ). . (d P l d uk k d sin       (21) 
Tương tự như (13) luật điều khiển được chọn 
( )du k    (22) 
Đối với quỹ đạo tròn, thuật toán này được áp dụng dựa theo các tham số xác định như 
sau: 
d : Khoảng cách từ UAV tới đường tròn với UAV. 
d  : Góc tiếp tuyếncủa đường tròn tại giao của đường nối tâm đường tròn với 
UAV 
u  : Góc hướng của UAV 
Và như vậy: 
 1 2 ( )d d dk k dsin     (23) 
Sử dụng công thức (24) để tiến hành mô phỏng với luật điều khiển (23). 
Trong trường hợp UAV nằm ở tâm đường tròn, áp dụng điều kiện 
; ; ; yx x y     để mô phỏng. 
3. THUẬT TOÁN DẪN ĐƯỜNG CHO UAV DỰA TRÊN CHẾ ĐỘ TRƯỢT 
Các thuật toán dẫn đường đề xuất ở trên sử dụng tín hiệu điều khiển liên tục (13) (22). 
Dưới đây sẽ đề xuất thuật toán dẫn đường sử dụng tín hiệu gián đoạn. 
Để xây dựng thuật toán, sử dụng sơ đồ như hình 1, khi UAV bám theo đường nối hai 
điểm 1i iM M . Phương trình động học của UAV theo các trạng thái của , d như sau: 
.sin
Δ
d v
u
 
  

 
 (24) 
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 55, 06 - 2018 41
Như vậy, theo hệ phương trình (24), các biến trạng thái là d , khoảng cách từ UAV đến 
đường quỹ đạo;  : sai số góc của UAV và góc đường quỹ đạo; v vận tốc của UAV 
Mục đích của điều khiển là đưa các biến trạng thái của hệ (24) về gốc tọa độ, tức là 
0 d và 0 
Mặt trượt được chọn là: 
 0s d kd  (25) 
Lệnh điều khiển u được tổng hợp như sau: 
 0
 0
max
max
u khi s
u
u khi s
 (26) 
Để tránh hiện tượng rung, lệnh điều khiển được chọn là khâu Role 3 vị trí với histeresic 
như sau: 
 Để xác định u sử dụng thêm hai biến như sau: 
1
1
p khi s
p khi s
p khi s


 
1
1
q khi s
q khi s
q khi s


 
max
max
1
0 1, 1
1
u khi p
u khi p q
u khi q
 (27) 
Trong biểu thức (25), d được xác định theo (24) 
Dưới đây sẽ chứng minh hệ (24) ổn định tiệm cận khi sử dụng bộ điều khiển tổng hợp 
theo (26). 
Chọn hàm Lyapunop: 2
1
0
2
V d (28) 
Khi đó: . V d d  (29) 
Theo (25) khi tồn tại chế độ trượt .d k d  (30) 
Từ (30) ta có 2. 0V k d  
Vậy d ổn định tiệm cận. Khi đó từ (31) d cũng ổn định khi đó: 
0
d
arcsin
v
 

Hệ (24) ổn định tiệm cận 
Mặt khác: 
¨
. .Δ . . d v cos u v cos    
Từ (24) ta có: 
 . . . . . .a as s u v cos k v sin s   
Để s.s 0  các điều kiện cần thỏa mãn 
Kỹ thuật điều khiển & Điện tử 
P. T. P. Anh, N. Vũ, P. T. Lai, “Về thuật toán bám đường cho UAV.” 42 
Khi 0s . . . . 0a as u v cos k v sin   
 .u k tan  sử dụng maxu u 
Khi 0s .u k tan  sử dụng maxu u 
 Vì u là tín hiệu điều khiển có giới hạn max maxu u u nên trong một số trường 
hợp khi tan  quá lớn , không thỏa mãn điều kiên s.s 0  . Tuy nhiên, sau một thời 
gian sai số  sẽ nhỏ dần, và một khi thỏa mãn điều kiện max tan u điều kiện (32) 
sẽ thỏa mãn s.s 0  hệ ổn định tiệm cận. 
Dưới đây sẽ trình bày kết quả mô phỏng theo thuật toán đề xuất với av 50m / s ; 
0
maxu 30 / s với điều kiện ban đầu giống thuật toán bám theo điểm ảo (hình 5). 
Hình 5. Kết quả mô phỏng bám theo đường thẳng sử dụng thuật toán trượt. 
Kết quả mô phỏng ta thấy sau 35 s thì hệ thống ổn định, sai số bám là 0.6 m, sai số góc 
0.005 rad; 
Hình 6. Kết quả mô phỏng bám theo đường tròn sử dụng thuật toán trượt. 
Để sử dụng thuật toán này cho đường tròn, trạng thái 0 trong (28) được thay bằng tín 
hiệu điều khiển danh định bảo đảm tôc độ góc của UAV bằng: 
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 55, 06 - 2018 43
 au
v
R
 
Việc nhận biết UAV chuyển vào quỹ đạo được xác định bằng các thuật toán phù hợp . 
Kết quả mô phỏng với điều kiện ban đầu như sau: 
R=160m 
Góc hướng ban đầu : / 3 
Vị trí ban đầu: (0,190) 
Kết quả mô phỏng ta thấy sau 3 s thì hệ thống ổn định, sai số bám là 0.3 m. 
4. KẾT LUẬN 
Qua các kết quả mô phỏng ở trên nhận thấy dẫn đường sử dụng phương pháp ngẳm 
theo điểm ảo thì kết quả phụ thuộc nhiều vào cách chọn hệ số . Khi thay đổi hệ số  ta 
thấy nếu chọn  nhỏ thì hệ thống mất nhiều thời gian để ổn định nhưng sai số nhỏ, nếu  
lớn hệ thống ổn định nhanh nhưng sai số lớn. Trong khi đó, sử dụng thuật toán dẫn đường 
trên cơ sở chế độ trượt thì hệ thống ổn định nhanh và có thể hoạt động trong mọi chế độ. 
Đây là cơ sở để điều khiển UAV thực hiện nhiệm vụ bám theo quỹ đạo đặt trước. 
TÀI LIỆU THAM KHẢO 
[1]. S. Park, J. Deystt, and J. How, “Performance and lyapunov stability of a nonlinear 
path-following guidance method” Journal of Guidance, Control, and Dynamics, vol. 
30, no. 6, pp. 1718–1728, 2007. 
[2]. D. Nelson, D. Barber, T. McLain, and R. Beard, “Vector field path following for 
miniature air vehicles,” IEEE Transactions on Robotics, pp. 519–529, June 2007. 
[3]. A. Ratnoo, P. Sujit, and M. Kothari, “Optimal path following for high wind flights,” 
Proc. of the IFAC World Congress, Aug 2011. 
[4]. M. Kothari, I. Postlethwaite, and D. Gu, “A suboptimal path planning algorithm using 
rapidly-exploring random trees” International Journal of Aerospace Innovations, vol. 
2, no. 1, pp. 93–104, 2010. 
[5]. L. E. Dubins, “On curves of minimal length with a constraint on average curvature 
and with prescribed initial and terminal positions and tangents,” American Journal of 
Mathematics, vol. 79, p. 497516,1957. 
ABSTRACT 
PATH FOLLOWING ALGORITHM FOR UAV 
 Path following is a basic mission of UAVs. Therefor some algorithms have been 
developed in oder to ensure the quality of UAV’s path following. Some algorithms 
for path following and verifying the results via simulation tool are presented in this 
article. 
Keywords: UAV; Sliding mode; Path following. 
Nhận bài ngày 12 tháng 4 năm 2018 
Hoàn thiện ngày 07 tháng 6 năm 2018 
Chấp nhận đăng ngày 08 tháng 6 năm 2018 
Địa chỉ: 1 Viện Tự động hóa KTQS; 
 2 Cục Khoa học Quân sự/BQP; 
 3 Viện Khoa học và Công nghệ quân sự. 
 * Email: ptpanh2003@yahoo.com. 

File đính kèm:

  • pdfve_thuat_toan_bam_duong_cho_uav.pdf