MỘT VÀI THUẬT TOÁN ĐIỀU KHIỂN TỰ CHỈNH MỜ CHO ĐIỀU KHIỂN RÔBỐT
SOME SELF TUNING FUZZY CONTROL ALGORITHM FOR ROBOT CONTROL
Lê Bá Dũng Viện Công nghệ Thông tin E-mail lbdung@ioit.ncst.ac.vn
)1
T
.
Tóm tắt:
T
Ta phải chọn
sao cho
ne ( − K
e = ee ,( ,..., &
n
tất cả các nghiệm của đa thức
1− +
nk+... nằm trong nửa ta trái của mặt phảng phức, do đó tác động điều khiển có dạng :
Bài báo đề cập đến một vài thuật điều khiển tự chỉnh mờ cho điều khiển rôbốt. Thông qua các thuật toán điều khiển này tác giả muốn trình bầy một quá trình xấp xỉ phi tuyến cho điều khiển Rôbốt
T
(4)
,..., = ) ( , kk n n ) k 1 n −1 s + sk 1
n )( m
)(ˆ xf y ueK u + + − =
]c
[ −
Với
ta có e(t)→0, khi t→∞
K
=
k 1
n
1,..., −
Abstract: The paper presents some self tuning fuzzy algorithm for robot control. Through these algorithms the author wants to describe the method to non_linear approximation for robot control
sẽ được ước lượng từ
và
1 )(ˆ xg [ , kk n
)(ˆ xf
1. MỞ ĐẦU:
]T avà tín hiệu ra y (hoặc x) sẽ tiệm cận đến quĩ đạo yêu )(ˆ xg cầu ym. Hàm f(x), g(x) [2]. Từ (1) và (4) ta sẽ có hệ điều khiển kín
(
n
n
)1 −
(5)
Ta chọn dạng luật điều khiển:
u= uc + us
(6)
T
(7)
e + ... ++ 0 = ek 1 ek n
c
)( n m
u )(ˆ xf y ueK = + + −
[ −
]o
Vậy
Trong quá trình phát triển của khoa học điều khiển, các phương pháp trước đây thường được xây dựng theo các mô hình toán học với các giả thiết cũng như thông qua các dàng buộc của bài toán nhằm đạt được một giải pháp có thể chấp nhận được. Nhưng trong thực tế ít khi tồn tại các giả thiết họăc các dàng buộc như vậy. Bài toán điều khiển cho động học phi tuyến của Rôbốt được xây dựng trên tập mờ là một trong các nội dung của tính toán mềm do A Zadeh đề xuất, và là phương pháp khả thi, có thể xấp xỉ vạn năng với mức độ chính xác tuỳ ý cho nhiêu quá trình công nghiệp [1,2], nhất là trong lĩnh vực điều khiển Rôbốt. Bài báo này trình bầy một vài thuật toán điều khiển tự chỉnh mờ cho điều khiển Rôbốt [1,2,3,6,7]
và
(8)
1 )(ˆ xg
T fψθ=
)(ˆ xf x )(
2. CÁC THUẬT TOÁN ĐIỀU KHIỂN MỜ CHO ĐIỀU KHIỂN RÔBỐT
x )(
2.1 HỆ ĐIỀU KHIỂN MỜ LAI THÍCH NGHI
)(ˆ xg
T gηθ=
Cho hệ điều khiển dạng [2]
1. Thiết kế hệ điều khiển mờ
Luật điều khiển mờ có dạng
)( x n
)( xf
)( uxg
(1)
=
+
1
iR
i 1
i A is x n
n
n
(
)1 −
T ]
T ]
2
n
(9)
…….
1
*R
ˆ E is f and A is x if and ... then x ,..., ,..., x = , xx 1
i 1
i B is x n
n
Với: x xx [ ,[ = là vector & trạng thái của hệ, x(n) là đạo hàm bậc n x. f(x), g(x) chưa xác định, u là tác động điều khiển ra. Gọi ym là tín hiệu yêu cầu và vector sai số bám e được định nghĩa:
i
)1 −
(2)
and B is x if and ... then ˆ F is g
i BA 1
1
T m
0 m
1 m
2 m
( n m
(3)
y [ y , y , y ,..., y ] =
m
m
với ... là các tập mờ, h là số luật mờ của hệt. Bàng phương pháp suy diễn tích, tập mờ đơn điệu và theo phương pháp giảI bằng trọng tâm ta có tín hiệu ra của hệ mờ:
1
e y y ˆ x = − = − ˆ x ; e
n
h
(16)
s s ≤ -η|s|
&
i
(
x
))
j
µ A
∑ ∏ ( y
i j
η là hằng số xác định dương. Đạo hàm (15) có:
i
1 =
(10)
)(ˆ xf
=
j n
1 = h
(17)
s(e,t)=x(n) – xd
(n) + a1e (n-1)+… an-1 e &
(
x
))
j
µ A
∑ ∏ (
i j
i
1 =
j
1 =
và us chọn:
n
h
(18)
i
(
x
))
j
µ B
∑ ∏ ( y
i j
có thể viết:
và un=xd
i
1 =
us=un-Kssgn(s) (n)- a1e (n-1)-… - an-1 e&
(11)
)(ˆ xg
=
j n
1 = h
(
x
))
(19)
j
+
−
µ B
n −
∑ ∏ (
i j
i
1 =
j
1 =
* sao
Từ (18) có thể viết uf = -Kssign(s) sẽ tồn tạI Ks cho thoả mãn điều kiện trượt
)(ˆ xf ( K s u )1 sgn( ) s /=& 1 )(ˆ xg 1 )(ˆ xg
: Hàm thuộc của biến mờ xj
Với: xi ( j µ A
j
(20)
Ks - K* < ζ
i
:Điểm tại đó có
)
: Số luật mờ dạng IF-THEN i y µ = F
) ( ( y 1) = µ E
3. Qúa trình chỉnh định
h y-i Và ψ
I, η được định nghĩa: n
Nhiệm vụ của quá trình tự chỉnh là xác định một cơ chế tự chỉnh vớI luật mờ:
j
∏
1
i
j
(21)
iR
(12)
i ψ
i 1
i A is s & n
1 = n
= h
( x ) µ i A j and A is s if then )( x C is K s
j
∑ ∏ (
i
1 =
j
1 =
i
( x )) µ i A j
Trong đó Ks có thể tính: n ∑
n
i
(22)
=
T ϕξ
Ks=
1 = n
j
∏
i j
j
(13)
i η
i
1 = n
= h
∑ 1 =
C µµ i i A B 1 1 x )( ( x ) µ B µµ i i B A 1 1 )( x
j
∑ ∏ (
i j
i
1 =
j
1 =
Với ξ =[c1 , c2 …… cm]T là vector các thông số tự chỉnh, và ϕ(x)=[ϕ1 … ϕm ]T là hàm mờ sau:
( x )) µ B
2. Thiết kế hệ điều khiển mờ ở mức cao
µµ i i A B 1 1
(23)
)( x
ϕ
= n ∑
µµ i i A B 1 1
i
1 =
)( n
)]
)(ˆ[ xg
−=
+
−
+
−
])( uxg
Thay thế (7) vào (1) có: e
)(ˆ[ xf
T eK
( xf (14)
Gọi ξ* là vector tối ưu sao cho tác động điều khiển trong chế độ trượt là nhỏ nhất:
(24)
*ξξε −=
Một số yêu cầu cần phải thỏa khi thiết kế bộ điều khiển ở mức cao:
Tác động điều khiển us cần phải chọn
Vậy
, ta chọn hàm Lyapunov dạng:
Tϕξ=&& * K
- Đảm bảo x sẽ bị chặn
2
(25)
=
+
T ) εε
VớI γ là hằng số dương Đạo hàm (25)
- Ở mức cao thì us phải có giá trị không khi trọng thái hệ thống ổn định và khác không khi e vượt ra ngoài khoảng ổn định. Có nghĩa là e→0 thì x→ym Với vector sai số bám e=(e,e1…..e(n-1) ) và mặt trượt được chọn
+
T εε &
ssV = & &
(26)
1 γ
(15)
e& s(e,t)=λe+
Thay thể (20) và (24) vào (26) có:
Trong đó λ là hằng số xác định dương và điều kiện cho chế độ trượt là:
V ( s x )( 1 2 1 γ
2
R(k+1)=R*(k) but not R*(k) else R**(k)
(32)
)(ˆ[ xfs
(
)1 u
]
|
=
+
−
−
+
V &
R(k+1)=R(k) or (R*(k) but not R*(k)) else R**(k) (33)
n
| sK S
T εε &
1 )(ˆ xg
1 )(ˆ xg
1 γ
* sK
Trong đó :R(k) là quan hệ mờ ở thời điểm t=kT ε& R*(k) là quan hệ mờ ở thời điểm t=(k-n)T R**(k) là quan hệ mờ thay đổi ở thời điểm t=(k-n)T
T
1 −
1 −
(27)
| ()(ˆ[{ xfs = + − |}| − ++ ς ])1 u − n ( K f w |) sK f 1 )(ˆ xg 1 )(ˆ xg 1 )(ˆ xg 1 T + ε γ
Vậy tác động thích nghi có dạng:
Dạng luật ban đầu được xây dựng mới dừng lại qua quá trình thu nhận đượcc từ các chuyên gia. Trong quá trình vận hành tri thức đó phải được bổ sung. Qúa trình bổ sung tri thức phải được thực hiện thường kỳ bằng các cách.
(28)
| s | ( sW | |) +−≤ ςβη + − γβεε & 1 γ
1 −=& sWγβε
• •
Bổ sung thông qua các chuyên gia Bổ sung qua quá trình học từ các thời điểm quá khứ, hiện tại, tương lai
Hàm Lyapunov với
sẽ cho:
| |)
1
Giả sử là hệ điều khiển ở thời điểm hiện tại t=kT, thời điểm đã qua là t=(k-n), T là thời gian cắt mẫu, k=1,2...m. Tác động ở thời điểm quá khứ t=(k-n)T sẽ đóng góp vào tác động ở thời điểm hiện tại t=kT. Ta có các quan hệ mờ từ các thời điểm như sau:
(29)
=β 1 )(ˆ xg
ςβη −+−≤& V
Quan hệ mờ ở thời điểm t=kT
S(t)
(34)
R(kT): E(kT)→C(kT)→U(kT)
P
NB NM NS Z PM PM PS
PS PS Z
Quan hệ mờ ở thời điểm t=(k-n)T
(35)
R*(kT): E(kT)→C(kT)→U(kT)
S’() N N Z P
PB PM PM PS PS PM PS
PS Z Z
NS NS NS
PM PB NS NS NM NS NM NM NM NM NM
Quan hệ mờ được thay đổi ở thời điểm t=(k-n)T
(36)
R**(kT): E(kT)→C(kT)→U(kT)
| s |
Bảng 1 Luật điều khiển mờ cho mặt trượt 2.2 HỆ ĐIỀU KHIỂN TỰ CHỈNH MỜ VỚI
THAY ĐỔI CẤU TRÚC
Dạng (31) có thể viết
R(k+1)= R(kT)∪(R(kT)∩
)∪R**(kT) (37)
Tương tự từ (32)
R (* kT )
Ta có thể thấy quan hệ mờ mới được hình thành theo luật suy diễn sau [7] R1: if x is A1 and y is B1 then z is C1 (30)
)∪ R**(kT)
R(k+1)=R*(KT)∪ (R(kT) ∩
(38)
……. Từ dạng luật trên cho ta tác động ra C’ như sau:
Tương tự từ (33)
n
R2: if x is A2 and y is B2 then z is C2 R ) (* kT
=
iR
C ' ( ,' BA )' =
Uo
)∪R**(kT)
i
1 =
n
R(k+1)=(R(kT)∪R*(KT))∪(R(kT)∩
(39)
1Uo
i
=
R ) (* kT ( BA ,' )' ( C→ A iandB i )i
Định lý 3.4 Dạng luật suy diễn (34), (35), (36) là quá trình bổ sung tri thực vào hệ luật lúc ban đầu dạng E(k)→C(k)→U(k)
Trong đó A,B,C là các tập mờ, R là quan hệ mờ của cả luật và:
Chứng minh : Thật vậy từ (34-36) có thể viết
R(k+1)=R(k) but not R*(k) else R**(k)
(31)
3
(45)
=Ie×Ic×Iu-E((k-n)T)×C((k-n)T)×U((k-nT))
T
M ,( q )( τ − = g )( ) ξξξξ & & R (* kT )
θ
θ
2∈ R
=(
× Ic× Iu)∨
M
M
g
12
11
= (Ie× (
× Iu)∨
1
] = = va [ θθξ 21 (( TnkE )) −
+
=
(46)
M
M
g
,( ) θθ & ) ,( θθ &
22
)( tq 1 )( tq 2
21
2
θ && 1 θ && 2
)
(40)
= (Ie× Ic× (
(( TnkC )) −
Ta có
Thay thế (40) vào (38) ta có:
−
=
(47)
R(k+1)=R(kT)∧ (
× Ic× Iu) ∨
U (( Tnk − ))
θ && 1 θ && 2
R(kT)∧ (Ie× (
× Iu) ∨
(( M )[ g tq )( (1 θ & ),( θθ TnkE )) − − +
Với:
R(kT)∧ (Ie× Ic × (
)∨
(( TnkE )) −
M
M
=
(48)
( )θ1−M
R*(kT)
M
M
)( θ )( θ
)( θ )( θ
1 − 11 1 − 21
1 − 12 1 − 22
Với R(kT) có thể viết
(41)
R(kT)=[Ek×Ck×Uk]
An universe which always exists for practical problem because of several properties enjoyed by M and define:
Vậy:
X
X
X
=
=
=
=
=
X 1
3
2
q 1
R(k+1)T= Ek∧ (
× Ck× Uk) ∨
(( TnkE )) −
θ 1
θ & 1
θ 2
θ & 2 3
4
u u = q 1 3 (49)
(50)
X=(X1, X2, X3. X4)
) × Uk) ∨
(( TnkE )) −
Ek × (Ck ∧ (
We have:
)∨
(( TnkC )) −
Ek × Ck × (Uk ∧ (
(42)
E(k-n)T × C(k-n)T × V(k-n)T
(( TnkE )) −
1
2
1
1 XX =& 2 1 2 = − MX g)[x,(x − & 11 2 1
1 − (x) g)[x,(xM]u ]u − 1 12 2 2 (51)
Phương trình (42) cho ta thêm 4 luật ở thời điển kT vào hệ luật ban đầu dạng E(k)→C(k)→U(k)
(x) + + +
3 X
4
X =&
4
− 1 21
− 1 22
Vậy M11=I1+I2+(1/4)m1L1
2+m2[L1
2+(1/4)L2
2+L1L2cos(θ2)
= + + (x) + (x) − g)[x, 2 1 (xM]u 1 1 − g)[x, 2 2 ]u 2 (xMX & 1
2.3 THUẬT TOÁN THIẾT KẾ TỰ CHỈNH QUA THAY ĐỔI LUẬT Bộ điều khiển tự chỉnh qua thay đổi luật được thực hiện với E,C là các đầu vào của bộ điều khiển mờ và V là đầu ra của bộ điều khiển mờ. Quá trình chỉnh định được thực hiện theo [3,5,7]
;
2+(1/2)L1L2m2cos(θ2)
2
(43)
V=<αE-(1-α)C>
M12=M21=I2+(1/4)m2L2 M22=I2+(1/4)m2L2
uxf ),( 1
f
ux ),(
(52)
uxf ),(
=
X =&
Trong đó <.> là phép hợp và α nhận các giá trị trong đoạn {0,1]. Các giá trị của α sẽ nhận được từ phép suy diễn mờ. Bằng việc thay đổi giá trị α ta sẽ nhận được các tín hiệu điều khiển khác nhau.
2 uxf ),( 3
f
ux ),(
4
Giả sử ta thiết kế hệ điều khiển PD. Phương trình bộ điều khiển PD có thể miêu tả dưới dạng
(44)
uPD=αe+(1-α) e với e(t)=r(t)-y(t)
3. MÔ PHỎNG QUẢ TRÌNH
Vậy (52) như dạng (1) Các số liệu cho mô phỏng: Độ dài khớp L1=L2=1m; Khối lượng khớp: m1=m2=50 kg; Moment inertia của hai khớp: Il1=Il2=10kg.m2
Hệ phương trình động học của Rôbốt như sau:
4
TÀI LIỆU THAM KHẢO
Luật điều khiển mờ cho mặt trượt bảng 1
1.5
[1] Lin C.T., Lee C.S.G, Neuron Fuzzy Systems,
1
Prentince-Hall International. 1996
0.5
[2] Wang L.X, A course in Fuzzy systems and control,
0
Prentince-Hall International. 1997
.5
-0
-1
-1.5
50
40
30
20
10
0
[3] Le Ba Dung, A kind of self_tuning PID Controller, Journal of Computer Sciences and Cybernetics Hanoi No1/1995
Hình 1. Kết quả quá trình mô phỏng tay máy 2 bậc tự do θ1, θ2 cho các thuật trên (đỏ-yêu cầu,
[4] Hunt K.J et all, Neuron networks for control systems, automatica, Vol 28, No.6, 1992, pp 1083-1112
4. KẾT LUẬN
[5] Le Ba Dung, An updating algorithm for fuzzy logic control (in Vietnamese), Proceeding of the second Vietnam conference on automation, Hanoi 1996
Bài báo đề cập đến một vài vấn đề điều khiển tự chỉnh cho rôbốt. Các kết quả mô phỏng cho thấy các thuật toán hội tụ nhanh và đáp ứng được yêu cầu đế ra.
[6] Lê Bá Dũng, Báo cáo đề tài cấp TTKHTN&CNQG về điều khiển Rôbốt trên cơ sở CAMERA [7] Lê Bá Dũng, Các module chương trình cho nghiên cứu điều khiển mờ, BC nhánh DT cấp NN KH- 09/04
5