Về một phơng pháp điều khiển hệ Camera-robot
bám mục tiêu sử dụng mạng Nơ ron
Bùi Trọng Tuyên Phạm Thợng Cát
Viện Vật Lý Viện Công Nghệ Thông Tin
Email: Email:
Tóm tắt nội dung
Báo cáo trình bầy khả năng ứng dụng mạng nơ ron trong điều khiển hệ thống bao gồm tay máy có gắn
camera để quan sát và bám theo mục tiêu. Phơng thức điều khiển dựa trên nguyên lý tuyến tính hoá tín hiệu
ảnh phản hồi. Mạng nơ ron đợc đa vào nhằm giảm nhẹ tác động của những thành phần ngẫu nhiên, cho
phép sử dụng các tham số có độ chính xác hạn chế vào trong mô hình động học của hệ thống. Mạng nơ ron
đợc xem nh là một yếu tố thích nghi bổ xung vào hệ thống điều khiển để tăng cờng khả năng của chúng.
An application of Neural Networks based visual servoing for hand-eye robot tracking target is
introduced in this paper. The used control method bases input-output feedback linearization technique. The
Neural Network is introdeced to compensate model uncertainties of overall system. It suffers if the parameter
values are inaccurate in the model of dynamics, the presence of image distortions and time varying. Adding
the NN controller as adaptive item in the control system is one effective way to compensate for the ill effects
of these uncertainties and in fact it can in some cases be used for parameter estimation.
1. Giới thiệu mô hình hệ thống điều khiển Rô bốt sử dụng CAMERA
Công việc sử dụng các hình ảnh thu nhận đợc bằng camera trong quá trình điều
khiển Rô bốt (visual servoing) là một hớng nghiên cứu đang đợc quan tâm trong lĩnh vực
điều khiển Rô bốt. Điểm chính yếu của kỹ thuật này là những thông tin hình ảnh nhận đợc
từ camera sẽ là những thông tin phản ảnh sự quan sát đợc về hệ thống và môi trờng.
Visual servoing là sự tổng hợp kết quả của rất nhiều lĩnh vực khác nhau bao gồm xử
lý ảnh tốc độ cao, động học, động lực học, lý thuyết điều khiển và kỹ thuật tính toán thời
gian thực.
Hệ thống điều khiển Rô bốt có camera phổ biến sử dụng hai dạng mô hình sau:
n Camera đợc đặt trong không gian làm việc
o
Camera đợc gắn trên đầu tay nắm Rô bốt (hand-eye Rô bốt)
Hình 1. Mô hình hệ thống điều khiển Rô bốt sử dụng camera
Mô hình thứ nhất camera đợc đặt trong không gian làm việc của Rô bốt, khi đó
ảnh của đối tợng quan sát không phụ thuộc vào chuyển động của Rô bốt.
Mô hình thứ hai camera đợc gắn ở đầu tay nắm Rô bốt, trong trờng hợp này ảnh
đối tợng mà camera thu nhận đợc phụ thuộc vào chuyển động của Rô bốt.
Phân loại các hệ thống điều khiển visual servoing
Dựa theo tiêu chí khai thác sử dụng hình ảnh thu nhận đợc từ camera ngời ta có
thể chia các hệ điều khiển visual servoing thành hai loại nh sau:
n
Điều khiển trên cơ sở sử dụng những thông tin về vị trí đối tợng trích lọc ra
đợc từ ảnh (Position_based servoing control). Trong điều khiển position-based, các đặc
trng đợc trích lọc ra từ ảnh kết hợp với mô hình hình học của đối tợng (giới hạn trong
các đối tựơng là vật rắn) để xác định vị trí của đối tợng trong hệ trục toạ độ của camera.
Còn sai lệch giữa tín hiệu phản hồi vị trí của mục tiêu và vị trí mong muốn đợc tính toán
trong không gian làm việc (hệ toạ độ Đề các).
o Điều khiển trên cơ sở sử dụng trực tiếp ảnh (Image_based servoing control). Với
dạng điều khiển này, tín hiệu sai lệch đợc định nghĩa và tính toán trực tiếp ngay trong
không gian tham số đặc trng ảnh.
Trong mỗi loại lại có thể chia thành hai nhóm dựa theo phơng pháp điều khiển,
một là thực hiện quá trình điều khiển theo hai phase riêng biệt quan sát và chuyển động
(look-and-move), loại thứ hai là sử dụng điều khiển trực tiếp (direct visual servoing). Nếu
hệ thống điều khiển phân cấp chỉ sử dụng tín hiệu ảnh do camera cung cấp để thiết lập các
giá trị đầu vào cho các bộ điều khiển của từng khớp và đồng thời sử dụng các vòng phản
hồi tại từng khớp để giữ ổn định chuyển động của Rô bốt thì đó là hệ điều khiển kiểu
look-
and-move. Ngợc lại hệ thống điều khiển trực tiếp loại bỏ hoàn toàn vòng phản hồi tại từng
khớp, bộ điều khiển visual servoing tính toán tín hiệu điều khiển trực tiếp cho các khớp, nó
chỉ sử dụng các tín hiệu phản hồi bằng hình ảnh để giữ ổn định chuyển động của Rô bốt.
Hình 2a. Cấu trúc điều khiển position-based look-and-move
Hình 2b. Cấu trúc image-based look-and-move
Hình 2c. Cấu trúc position-based direct visual servoing
Hình 2d. Cấu trúc image-based direct visual servoing
Bên cạnh đó cũng có thể phân loại theo tiêu chí ảnh về mục tiêu quan sát, có hệ
thống chỉ quan sát đợc mục tiêu và một loại quan sát cả mục tiêu và đầu tay năm Rô bốt.
Hệ thống thứ nhất gọi là hệ end-point-loop (EOL), trong các hệ thống này đòi hỏi phải
chuẩn hoá quan hệ không gian giữa tay nắm Rô bốt và camera. Ngợc lại hệ thống sau end-
closed-loop (ECL) có thể quan sát cả đối tợng và đầu tay nắm Rô bốt nên không phụ
thuộc vào ánh xạ quan hệ không gian giữa tay nắm Rô bốt và camera.
Đặc trng ảnh và không gian tham số đặc trng ảnh
Một bớc cần thiết đối với bất kỳ một thuật toán điều khiển áp dụng visual servoing
đặc biệt các hệ thống sử dụng image-based là xác định đặc trng ảnh và quan hệ của nó đối
với mô hình. Đặc trng ảnh có thể hiểu là bất kỳ một đặc điểm nào về cấu trúc có thể trích
lọc ra từ ảnh bao gồm cả các tính chất chủ yếu về đặc tính phổ, đặc tính hình học của đối
tợng. Với các giá trị thực xuất hiện trong quá trình đo đạc các đặc trng ảnh đợc trích lọc
ra từ một hoặc nhiều ảnh liên tiếp cho phép ta xây dựng không gian tham số đặc trng ảnh.
Đối với các các vật thể rắn có cấu trúc hình học cố định (đó cũng là đối tợng chủ
yếu sử dụng trong kỹ thuật điều khiển Rô bốt) các thông số đặc trng ảnh thờng là toạ độ
của các điểm đặc trng trên mặt phẳng ảnh [u, v] , khoảng cách giữa các điểm và tham số
của các đoạn thẳng trên ảnh [, ] , trong tâm và diện tích (S), Tập hợp các véc tơ đặc
trng ảnh tạo thành không gian thông số đặc trng ảnh ký hiệu = [u
1
v
1
,
1
1
S
1
S
2
].
2. Sử dụng mạng nơ-ron trong điều khiển hệ Robot-camera
bám mục tiêu
Mô tả khái quát hệ thống Robot-camera và bài toán điều khiển camera bám theo đối
tợng bằng sử dụng tín hiệu đặc trng ảnh
Sơ đồ khối hệ thống chỉ ra trên hình 3 trong đó có một camera đợc gắn ở đầu của
tay máy có m khớp nối, sử dụng để thu nhận hình ảnh của đối tợng quan tâm. Các tham
biến X
c
và X
0
mô tả vị trí và hớng của camera và đối tợng trong không gian thực. Các
vectơ
&
,
và
tơng ứng là vị trí góc, vận tốc góc các khớp của tay máy và đặc trng ảnh
chúng có thể đo và thu ảnh bằng camera. Véc tơ momen điều khiển
T
m
] [
21
=
, trong
bài toán điều khiển camera bám theo đối tợng bằng ảnh, đợc tính toán trên cơ sở sai lệch
(e) của đặc trng ảnh hiện thời
actual
nhận từ camera và đặc trựng ảnh mong muốn
desired
,
thêm vào đó là các tín hiệu phản hồi trạng thái của các biến trong của robot
&
,
nhằm mục
đích đa camera về vị trí mà tại đó hình ảnh thu nhận đợc về đối tợng tơng đơng với
hình ảnh mong muốn.
Mô hình động học của Robot
Động học của một robot có m khớp nối đợc mô tả bằng một hệ phơng trình vi phân
nh sau:
),()(
&&&
hH +=
(1)
Trong đó
T
m
] [
21
= là véc tơ góc của các khớp nối,
T
m
] [
21
= là véc tơ mô men
tơng ứng với các khớp. H(
) là ma trận quán tính [m x m] phần tử là các hàm số phụ
thuộc vào góc
và véc tơ h ),(
&
là véc tơ đại diện cho lực Coriolis, lực ly tâm và trọng
lực phụ thuộc phi tuyến vào góc
vận tốc góc
&
.
+
-
e
+
d
Controller
Robot
Camera
X
o
X
c
&
,
H
ình 3. Hệ thống điều khiển tay máy có gắn camera
Đặt các biến trạng thái là vector góc
và vector vận tốc góc
&
ta có phơng trình
trạng thái của robot nh sau:
+
=
)(
0
),()(
1
1
H
hH
dt
d
&
&
&
(2)
Mô tả trạng thái của hệ thống điều khiển phi tuyến cho camera gắn trên tay máy
Trong báo cáo này trình bày một hệ thống điều khiển phi tuyến trên cở sở tuyến tính
hoá các tín hiệu đặc trng ảnh đợc phản hồi trực tiếp từ đầu ra trở lại đầu vào, thêm vào đó
việc bù trực tiếp ảnh hởng quá trình động học của robot cũng đợc sử lý có hiệu quả bằng
việc mở rộng thuật toán tính mô men thực cho các khớp.
Hoạt động của hệ thống có thể hình dung nh sau: khi camera gắn trên tay robot hớng
về đối tợng và thu nhận đợc ảnh của đối tợng nếu các khớp của robot thực hiện một
phép quay
T
m
] [
21
=
sẽ làm cho vị trí của vật trên ảnh cũng bị thay đổi theo.
Gọi
là véc tơ đặt trng ảnh của đối tợng đợc định nghĩa trong không gian ảnh 2
chiều (2D) có 2n chiều tơng ứng n đặc trng đợc chọn và
là sự thay đổi vi phân của
đặc trng ảnh khi vị trí và hớng của camera thực hiện một dịch chuyển vi phân
X
c
,
,
một
ma trận đợc Weiss đa ra ( tham khảo thêm tài liệu [1] ) gọi là ma trận Jacobian của đặc
trng ảnh để mô tả mối quan hệ giữa các đại lợng này nh sau:
= J
feature
X
c
(3)
Để thể hiện sự biến thiên của đặc trng ảnh theo các biến trong của robot
T
m
] [
21
=
ta có công thức sau:
= J
feature
J
robot
(4)
ở đây J
robot
là ma trận Jacobian của robot ta ký hiệu J(
,
) = J
feature
J
robot
. Trong bài toán
điều khiển robot bằng hình ảnh (visual servoing) ma trận J(
,
) có thể đợc xác định bằng
nhiều phơng pháp khác nhau tham khảo thêm trong tài liệu [2], trong mô hình điều khiển
đợc trình bày trong bài báo này, đối với từng cấu hình của robot và camera cụ thể thì ma
trận J(
, ) sẽ đợc xác định bằng phơng pháp giải tích.
Giả thiết rằng ta đã xác định đợc ma trận J(
, ) và ma trận đó không bị suy biến
(đủ hạng) với một đối tợng không chuyển động. Trong trờng hợp đó đặc trng ảnh của
đối tợng chỉ còn phụ thuộc vào các biến trong của robot
)(
def
= . (5)
Chọn các biến trạng thái của hệ thống là:
][] , [
2121
TTT
mm
x
&&&&
==
(6)
)(
d
Gz
=
(7)
Đợc dùng là biến mô tả sai lệch đặc trng ảnh, G là ma trận hằng số [2n x m] phần
tử. Tổ hợp các phơng trình (2), (6) và (7) ta nhận đợc phơng trình trạng thái và đầu ra
của mô hình camera gắn trên tay máy nh sau:
)()( xgxfx
+
=
&
, )(
d
Gz
=
(8)
với:
=
hH
f
1
&
,
=
1
0
H
g
(9)
Lu ý chúng ta có thể đo đợc
&
, cũng nh tính đợc
từ việc phân tích ảnh thu nhận
đợc.
Nhằm áp dụng kỹ thụât tuyến tính hóa tín hiệu phản hồi vào mô hình hệ thống trên ta thực
hiện phép lấy đạo hàm bậc nhất và bậc hai của đầu ra z nhận đợc kết quả nh sau:
&
&
GJz = (10)
Để đơn giản đặt
à
&
J
def
=
)(
)(
1
1
à
à
à
++
=
+
=
hGJHG
hH
Gz
&
&
&
&&
(11)
Viết lại phơng trình (11) theo dạng
ELz
+
=
&&
(12)
Hoặc theo dạng:
=
+
z
&&
(13)
Trong đó
hGJHGL
1
=
à
&
và
1
= GJHE (14)
=
1
)(
GJH
và
=
hGJH +
à
&
1
)(
(15)
3. Thiết kế hệ thống điều khiển sử dụng mang nơ ron
Điều khiển robot bằng phơng pháp tính mô men đợc ứng dụng rộng rãi, trong các hệ
thống điều khiển đó đòi hỏi các thông số của hệ động học cần đợc xác định chính xác,
trong các trờng hợp mà các thông số của hệ thống xác định đợc không đảm bảo đủ độ
chính xác cần thiết (hầu hết các hệ thống trong thực tế đều rơi vào trng hợp này) thì
phơng pháp trên tỏ ra thiếu tính hiệu quả.
Trong báo cáo đa ra một sơ đồ điều khiển trong đó mạng nơ ron đợc đa vào hệ điều
khiển nhằm giảm ảnh hởng xấu của việc xác định không chính xác các thông số động học
của hệ thống và sự méo của ảnh trong quá trình thu của camera.
Trong những năm gần đây, nhiều nghiên cứu trên thế giới đã đợc tiến hành xung
quanh vấn đề này. Chúng tôi đã lựa chọn nhng kết quả đợc Seul Jung and T.C Hsia công
bố trong tài liệu [6], [7], [8] để áp dụng vào mô hình điều khiển của mình. Sơ đồ hệ thống
điều khiển đợc phát triển có ứng dụng mạng nơ ron cho trong hình 4.
Hình 4. Sơ đồ hệ thống điều khiển tay máy gắn camera có sử dụng mạng nơ ron.
K
P
K
d
Tay máy
gắn
Camera
)(t
&
)(t
)(tz
)1( tz
)2( tz
Mạn
g
Nơron
+
+
+
)
(
t
-
-
+
-
+
+
+
+
+
)(tz
)(tz
&
)(t
J
G
d
)(t
G
Nh đã trình bầy ở trên, các véc tơ z đợc sử dụng thay thế cho tín hiệu phản hồi của
đặc trng ảnh. Để có thể tính đựợc mô men
trong sơ đồ ở hình 4 các đại lợng
,
đợc xác định theo công thức (15). Tuy nhiên trong quá trình tính toán
,
theo công
thức (15) phải sử dụng các giá trị gần đúng
)(
H và ),(
&
h
để thay thế cho )(
H và
),(
&
h do vậy cũng sẽ chỉ nhận đợc các giá trị gần đúng
,
(
=
-
và
=
) của ,
.
Sơ đồ hệ thống điều khiển đợc mô tả trong hình 4 với tín hiệu điều khiển
đợc xác
định nh sau:
&
&
GJKGJKzKzK
ddpdp
== )( (16)
Các ma trận
K
p
K
d
chọn là các ma trận hệ số xác định dơng.
Khi cha quan tâm đến mạng nơ-ron thì mô men điều khiển
đợc tính
=
+
(17)
thay (16) vào (17) ta có
=
)(
+
zKzK
dp
&
(18)
mặt khác phơng trình (13) mô tả trạng thái của hệ thống có thể đợc viết lại
=
+
=
z
&&
)
( +
z
&&
(19)
Đồng nhất các phơng trình (18) và (19)
)(
+
zKzK
dp
&
=
)
( +
z
&&
)(
zKzKzz
pd
++=+
&&&&&
Rút ra đợc phơng trình đặc trựng của hệ kín nh sau:
)(
)(
1
+=++=
zzKzKz
pd
&&&&&
(20)
Trong trờng hợp xác định đợc chính xác các tham số của hệ thống nghĩa là
0
=
và
0=
0
=
+
+
zKzKz
pd
&&&
(21)
Nh vậy sẽ đảm bảo cho hệ thống ổn định tại điểm
)0,0(),(
=
zz
&
hoặc
d
=
thông qua
việc lựa chọn các ma trận hệ số
pd
KK ,
.
Nh đã trình bầy ở trên mạng nơ ron đợc đa vào để bù cho những tham số của hệ
thống xác định không chính xác. Mạng nơ ron sử dụng là mạng truyền thẳng (feedforwork
neural network) có cấu trúc hai lớp, lớp ẩn (hidden layer) và lớp đầu ra (output layer) với
đầu vào là 3 vectơ z tại các thời điểm z(t), z (t-1.
T), z (t-2.
T) và chu kỳ trễ (delay-time
step
T) là chu kỳ lấy mẫu của thông tin ảnh hồi tiếp. Các nơ-ron ở lớp ẩn có hàm kích
hoạt là sigmoid (sigmoid activated function). Đầu ra của mạng
T
m
] [
21
= có số nơ
ron tơng ứng số khớp nối của robot và hàm kích hoạt là tuyến tính.
Sau khi đã bổ xung mạng nơ ron thì mô men tại các khớp nối đợc tính nh sau:
)(t
new
=
(
) (
+
) +
),(
&
(22)
thực hiện các bớc biến đổi nh trong (18), (19), (20) và (21) nhận đợc sai số của vòng
kín là:
=
+
+= zKzKz
Pd
&&&
-1
(
&&
+
) -
(23)
Mục đích của việc bổ xung mạng nơ ron là nhằm giảm sai số
về không. Do vây
đợc
xem nh là chính sai số của đầu ra mạng nơ ron và đợc sử dụng để huấn luyện mạng. Giá
trị lý tởng của
là tại
= 0 và là:
=
-1
(
&&
+
).
Để chứng minh cho nhận xét trên, quá trình huấn luyên mạng là nhằm tối thiểu hóa hàm sai
số
, đặt hàm mục tiêu E
vvE
T
2
1
=
(24)
Lấy đạo hàm của hàm số E theo các trọng (w) của mạng ta đợc:
v
w
v
w
v
w
E
TT
=
=
(25)
vì thực tế theo (23) thì
ww
v
T
T
=
. Thuật học lan truyền ngợc (back-propagation) đợc sử
dụng để cập nhật các giá trị trọng mới, thuật học đợc cải tiến bằng việc bổ xung thêm một
thành phần gọi là momentum đợc dẫn ra trong công thức (26).
)1()( +
= twv
w
tw
T
(26)
Với
là tốc độ cập nhật trọng và
là hệ số của thành phần momentum.
4. Kết luận
Những nghiên cứu cho thấy việc áp dụng phơng pháp tính mô men trong điều khiển
robot có sử dụng trực tiếp các thông tin ảnh phản hồi là thực hiện đợc và có ý nghĩa thực
tế. Việc đa thêm mạng nơ ron nh là một yếu tố thích nghi nhằm bù nhng sai lệch do
việc không xác định đợc chính xác các tham số của hệ thống là hoàn toàn phù hợp.
Các chơng trình mô phỏng trên MATLAB đợc tiến hành với camera gắng trên tay
máy hai bậc tự do (2 DOF) có các thám số động lực học đợc xác định gần đúng trong
khoảng 80% giá trị danh định và đối tợng quan sát đợc đặt trên một mặt phẳng trực giao
với trục quang học của camera. Các kết quả nhận đợc đã cho thấy khả năng ứng dụng các
phơng pháp tuyến tính hoá tín hiệu ảnh phản hồi nói trên và tác dụng của mạng nơ ron
đợc bổ xung vào hệ thống điều khiển.
Tài liệu tham khảo
[1]. A. C. Sanderson, L. E. Weiss, and C. P. Neuman. Dynamic sensor-based control
of robots with visual feedback, IEEE Trans.Robot.Autom, vol. RA-3, pp.404-417,
Oct.1987.
[2]. Seth Hutchinson, gregory D. Hager, and Peter I. Corke. A Tutorial on
Visual Servo Control, IEEE Transactions on Robotics and Automation, 12(5) October
1996.
[3]. Martin Jọgersand and Randal Nelson. On-line Estimation of Visual-Motor
Models using Active Vision, In Proc. ARPA Image Understanding Workshop 96,1996.
[4]. Koichi Hashimoto and Hidenori Kimura. LQ Optimal and Nonlinear
Approaches to Visual servoing
[5]. K. Hashimoto, T. Ebine, and H. Kimura. Visual Servoing with Hand-Eye Manipulato
Optimal Control Approach
,
IEEE Trans. Robot. Autom. 1996
[6]. Seul Jung and T.C Hsia,
A Study on Neural Network Control of Robot Manipulators
[7]. Seul Jung and T.C Hsia, On-line Neural Network Control of Robot Manipulators,
International Conference on Neural Information Processing, vol. 3, 1663-1668, 1994.
[8]. Seul Jung and T.C Hsia. A New Neural Network Control Technique for Robot
Manipulator, Robotica, vol.13, pp 477-484,1995
[9]. Bùi Trọng Tuyên and Phạm Thợng Cát.
Pose-estimation of object in 3D virtual
space using an image received by camera applying to Robot-visual Servo Control,
Journal of Science and Technique, Military Technical Academy of Vietnam, pp 31-42,
No. 97 (IV-2001).
[10]. Somlo - B.Lantos - P.T.Cat. Advanced Robot Control,
Akadémia Kiadó, Budapest, 1997.