Bộ ĐIềU KHIểN PARALLEL ROBOT
KS. Từ Diệp Công Thành, PGS. TS. Đặng Văn Nghìn
Bộ Môn Cơ Điện Tử, Khoa Cơ Khí, Đại Học Bách Khoa Tp Hồ Chí Minh
Email:
tdcthanh@dme. hcmut. edu. vn
Tóm tắt
Khác với loại Robot nối tiếp (Serial Robot), Robot song song (Parallel Robot) có những u điểm vợt trội nh
độ cứng vững, khả năng thay đổi vị trí và định hớng linh hoạt, độ chính xác và ổn định cao, v. v.. đợc ứng
dụng trong nhiều lĩnh vực. Bài báo giới thiệu loại Robot song song - Parallel Robot có cấu trúc khép kín đợc
tạo bởi 6 chân và điều khiển độc lập. Tuy nhiên nếu dùng những phơng pháp điều khiển thông thờng thì
tính đáp ứng của robot sẽ chậm. ở đây, chúng tôi trình bày kết quả nghiên cứu về bộ điều khiển song song kết
hợp với giải thuật điều khiển song song để làm tăng tính đáp ứng và linh hoạt cho Robot.
Abstract
Different from many Serial Robots, Parallel Robot has some advantages such as: rigidity, changing position
ability and flexible navigation, accuracy and high stability... They are applied in a lot of fields. The Paper
introduce the Parallel Robot with closed-loop structure constructed by 6 dof and controlled independently.
However, if we use the control medthod as usual the respond of robot will slow. Hereby, we talk about the
research results about the Parallel Controller compacted with Parallel Algorithm in order to increase the
respond and flexibility for Robot.
1. ĐặT VấN Đề
Ngày nay, các kỹ thuật Robot với sự hỗ trợ của máy tính đã đáp ứng đợc độ chính xác
cao, thời gian thu nhận và xử lý các tín hiệu nhanh chóng, tin cậy, đã làm tăng năng suất
lao động, hạn chế các tai nạn và độc hại cho con ngời, v. v... Tuy nhiên với loại Serial
Robot hiện nay trong rất nhiều lĩnh vực đã bộc lộ rõ những nhợc điểm nh tính linh hoạt
thấp, tốc độ xử lý và khả năng đáp ứng không cao, độ cứng vững cũng nh tính chính xác
cha đảm bảo. Để khắc phục phần nào các khuyết điểm trên một loại Robot mới ra đời đó
là Parallel Robot.
Serial Robot là loại Robot liên tiếp có kết cấu hở đợc liên kết với các khâu động học và
đợc điều khiển tuần tự hoặc song song. Khác hẳn với Serial Robot, theo J-P. Merlet,
Parallel Robot là cơ cấu vòng kín trong đó khâu tác động cuối đợc liên kết đến nền bởi ít
nhất hai chuỗi động học độc lập. Trên hình 1 giới thiệu một loại Parallel Robot .
Hình 1: Một loại Parallel Robot
Do nhu cầu của thực tế, Parallel Robot đã phát triển theo nhiều hớng khác nhau nh:
- Theo bậc tự do Parallel Robot có thể có 3, 4, 5 hoặc 6 bậc tự do.
- Theo vận tốc dịch chuyển có các loại vận tốc trung bình và vận tốc cao (v /5m/s)
và còn nhiều kiểu phân loại khác nữa.
Tuy nhiên nhìn chung tất cả các loại Parallel Robot đều có những u điểm nh: khả năng
chịu tải cao, gia tốc lớn, độ cứng vững cơ khí cao, khối lợng động thấp, tần số riêng cao,
kết cấu đơn giản và các cơ cấu chấp hành đều có thể định vị trên tấm nền
Với những u điểm trên, Parallel Robot đã đợc ứng dụng trong rất nhiều lĩnh vực nh: Y
học, thiên văn học, trắc địa, các máy công cụ, v.v.
Parallel Robot là chuỗi nhiều khâu khép kín cho nên nó hết sức đa dạng và điều khiển rất
phức tạp, để thực hiện một tác động điều khiển cho khâu động học cuối, các khâu động học
phải đợc điều khiển đồng thời. Đây là một đòi hỏi khó khăn cho thiết kế bộ điều khiển.
2. Bộ ĐIềU KHIểN SONG SONG
Nh đã giới thiệu, để thực hiện việc điều khiển cho Parallel Robot, cần có một bộ điều
khiển sao cho đảm bảo đợc tính đồng thời, khả năng nhớ và quản lý từng khâu động học
độc lập. ở đây, chúng tôi giới thiệu một bộ điều khiển dùng cho Parallel Robot có 6 bậc tự
do (hình 2).
Hình 2: Sơ đồ khối của bộ điều khiển Parallel Robot
Bộ điều khiển Parallel Robot là hệ thống phức tạp, gồm một tập hợp các phần tử xử lý độc
lập liện lạc với nhau bằng cách trao đổi các thông tin. Mỗi một bộ xử lý độc lập sẽ thực
hiện một loạt các chỉ thị của chính nó và làm việc trên một tập các dữ liệu riêng biệt.
Giới thiệu các phơng pháp điều khiển song song
Các nghiên cứu đã đợc triển khai nhằm tìm kiếm phơng pháp tạo ra những chơng trình
có thể thực thi đồng thời trên những chơng trình song song. Các nghiên cứu triển khai việc
song song hoá có thể đợc phân thành 4 mức :
Máy tính
Khối điều khiển trung tâm
Khối điều khiển
đ
ộng học khâu 1
Khối điều khiển
đ
ộng học khâu 2
Khối điều khiển
đ
ộng học khâu 3
Khối điều khiển
đ
ộng học khâu 4
Khối điều khiển
đ
ộng học khâu 6
Khối điều khiển
đ
ộng học khâu 5
Khối mạch
khuếch đ
ại công suất
- ở mức ứng dụng: Các chơng trình đợc thực thi đồng thời trên những bộ xử lý khác
nhau hoặc những máy khác nhau và có thể có sự trao đổi thông tin lẫn nhau. Chúng thực
hiện việc phân phối các ứng dụng cho các bộ xử lý theo không gian và thậm chí theo thời
gian. ở mức này, mỗi chơng trình ứng dụng vẫn thực thi tuần tự.
- ở mức chơng trình: Ngời lập trình sẽ tìm kiếm giải thuật có thể thực thi đồng thời cho
vấn đề cần giải quyết. Do đó, trách nhiệm song song hoá chơng trình sẽ do ngời lập trình
thực hiện. Bằng t duy của con ngời cũng nh tùy theo đặc thù của mỗi bài toán, ngời lập
trình có thể tìm ra cách thức song song hoá khác nhau sao cho chơng trình có thể thực thi
đồng thời một cách hiệu quả nhất.
- ở mức phát biểu: Chơng trình dịch sẽ đảm nhiệm vai trò song song hoá chơng trình. Nó
sẽ tìm kiếm trong một chơng trình tuần tự từ những khả năng song song hoá, thực hiện các
biến đổi để tạo ra mã chơng trình song song, sinh thêm các mã đồng bộ và trao đổi thông
tin. u điểm chính của mức này là khó khăn của ngời lâp trình đợc giảm nhẹ và chơng
trình có tính linh hoạt và có thể áp dụng trên những mô hình máy khác nhau vì chơng
trình dịch sẽ thực hiện việc tạo mã thích hợp cho mô hình máy mà nó đang dịch sang.
-
ở
mức lệnh máy: Các bộ xử lý sẽ tìm cách thực hiện nhiều lệnh máy đồng thời theo các
cơ chế khác nhau.
Qua phân tích khả năng công nghệ và tính kinh tế, chúng tôi lựa chọn phơng pháp giả lập
song song từ máy tính ở mức chơng trình.
Thiết kế bộ điều khiển song song
Bộ điều khiển song song đợc thiết kế dựa trên giải thuật giả lập song song từ máy tính và
giao tiếp với máy tính thông qua Slot chuẩn ISA. Từ đó để đảm bảo tính nhớ và khả năng
quản lý các khâu động học độc lập thì ứng với từng khâu yêu cầu phải có địa chỉ riêng,
ngoài ra phải có khả năng mở rộng port điều khiển và giám sát quá trình điều khiển.
Chúng tôi đã lựa chọn IC 8255 làm nhiệm vụ quản lý và lập trình điều khiển cũng nh xác
định 6 địa chỉ port và điều khiển cho các khâu động học (hình 3).
Hình 3: Bộ điều khiển Parallel Robot
3. GIảI THUậT ĐIềU KHIểN GIả LậP SONG SONG
Trên các hệ thống lập trình song song, khi thiết kế cần phải đảm bảo các đặc tính nh: khả
năng mở rộng (scalability), khả năng hoạt động cục bộ (locality) và có tính module
(modularity).
- Tính đồng thời là khả năng thực hiện nhiều hành động đồng thời, thực chất là để
chơng trình thi hành cùng lúc trên nhiều processor.
VCC
PA11
PA12
PA13
PA14
PA15
PA16
PA17
PA18
PB11
PB12
PB13
PB14
PB16
PB17
PB18
PC11
PC12
PC13
PC14
PC15
PC16
PC17
PC18
PA31
PA32
PA33
PA34
PA35
PA36
PA37
PA38
PB31
PB32
PB33
PB34
PB3
5
PB36
PB37
PB38
PC31
PC32
PC33
PC34
PC35
PC36
PC37
PC38
PA61
PA62
PA63
PA64
PA65
PA66
PA68
PB61
PB62
PB63
PB64
PB6
7
PB68
PC61
PC64
PC65
PC66
PC67
PC68
PA67
PB55
PC56
PA27
PA23
PA58
PA57
PA51
PB28
PB24
PA25
PC51
PB52
PA54
PC27
PC25
PB26
PC53
PA56
PB21
PC22
PC24
PB58
PB54
PC55
PB56
PA22
PC57
PB23
PA24
PB57
PB51
PA53
PB25
PA26
PC58
PC52
PB53
PA55
PC28
PC26
PB27
PC54
PA28
PA21
PC21
PB22
PA52
PC23
PA21
PC28
PA25
PB15
PC22
PB22
PA23
PA22
PB23
PA24
PC21
PB24
PA27
PA26
PC26
PB21
PC23
PA28
PC27
PB25
PB26
PB28
PB27
PC25
PC24
PB6
5
PB66
PC62
PC63
PA14
PA15
PA11
PA16
PC14
PA17
PA18
PB11
PC16
PC18
PB18
PA12
PB12
PB16
PC13
PC15
PB15
PB17
PB13
PC17
PC11
PA13
PB14
PC12
PA31
PC33
PB34
PC36
PA32
PA34
PA35
PB35
PC31
PA36
PC34
PC35
PA38
PB32
PB33
PB36
PC37
PA37
PB31
PC32
PC38
PA33
PB37
PB38
PA58
PC53
PC58
PC56
PC52
PB56
PB55
PC55
PB57
PC51
PB58
PC54
PC57
PC62
PA41
PC63
PA42
PA65
PB62
PB43
PA63
PB66
PC66
PB45
PA67
PA68
PC65
PB65
PB64
PB63
PB46
PA61
PC67
PB61
PC47
PB67
PC61
PA62
PC64
PC68
PA64
PA66
PB68
PB54
PB51
PA56
PB53
PB52
PA57
PA54
PA52
PA55
PA53
PC45
PC46
PB41
PC42
PC43
PA46
PB44
PA44
PB48
PB45
PB48
PA45
PB47
PB46
PC44
PC48
PB42
PC41
PC44
PB47
PC46
PA47
PC42
PC47
PC48
PA48
PA41
PC41
PB43
PA43
PC43
PC45
PA42
PB41
PA47
PA43
PB44
PA46
PB42
PA48
PA44
PA45 D1
D1
D4
D3
D7
D5
D7
D4
D5
D0
D6
D2
D3
D0
D6
D2
A7
A8
A5
A6
A9
U1
8255
34
33
32
31
30
29
28
27
4
3
2
1
40
39
38
37
18
19
20
21
22
23
24
25
14
15
16
17
13
12
11
10
26
7
5
36
9
8
35
6
D0
D1
D2
D3
D4
D5
D6
D7
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
VCC
GND
RD
WR
A0
A1
RESET
CS
U8A
74HC00
1
2
3
74HC00
9
10
8
U2
8255
34
33
32
31
30
29
28
27
4
3
2
1
40
39
38
37
18
19
20
21
22
23
24
25
14
15
16
17
13
12
11
10
26
7
5
36
9
8
35
6
D0
D1
D2
D3
D4
D5
D6
D7
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
VCC
GND
RD
WR
A0
A1
RESET
CS
74HC00
4
5
6
u5
8255
34
33
32
31
30
29
28
27
4
3
2
1
40
39
38
37
18
19
20
21
22
23
24
25
14
15
16
17
13
12
11
10
26
7
5
36
9
8
35
6
D0
D1
D2
D3
D4
D5
D6
D7
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
VCC
GND
RD
WR
A0
A1
RESET
CS
P1
CONNECTOR DB25
13
25
12
24
11
23
10
22
9
21
8
20
7
19
6
18
5
17
4
16
3
15
2
14
1
R1
10k
u3
8255
34
33
32
31
30
29
28
27
4
3
2
1
40
39
38
37
18
19
20
21
22
23
24
25
14
15
16
17
13
12
11
10
26
7
5
36
9
8
35
6
D0
D1
D2
D3
D4
D5
D6
D7
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
VCC
GND
RD
WR
A0
A1
RESET
CS
U7
74HC138
8
15
14
13
12
11
10
9
7
1
2
3
5
4
6
16
GND
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
A
B
C
G2B
G2A
G1
VCC
R2
10k
u6
8255
34
33
32
31
30
29
28
27
4
3
2
1
40
39
38
37
18
19
20
21
22
23
24
25
14
15
16
17
13
12
11
10
26
7
5
36
9
8
35
6
D0
D1
D2
D3
D4
D5
D6
D7
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
VCC
GND
RD
WR
A0
A1
RESET
CS
R3
10k
R4
10k
R5
10k
JP1
HEADER 12X2
12
34
56
78
910
11 12
13 14
15 16
17 18
19 20
21 22
23 24
JP2
HEADER 12X2
12
34
56
78
910
11 12
13 14
15 16
17 18
19 20
21 22
23 24
JP6
HEADER 12X2
12
34
56
78
910
11 12
13 14
15 16
17 18
19 20
21 22
23 24
JP3
HEADER 12X2
12
34
56
78
910
11 12
13 14
15 16
17 18
19 20
21 22
23 24
JP5
HEADER 12X2
12
34
56
78
910
11 12
13 14
15 16
17 18
19 20
21 22
23 24
JP4
HEADER 12X2
12
34
56
78
910
11 12
13 14
15 16
17 18
19 20
21 22
23 24
R6
10k
P2
CONNECTOR DB25
13
25
12
24
11
23
10
22
9
21
8
20
7
19
6
18
5
17
4
16
3
15
2
14
1
74HC688
1
10
19
20
3
5
7
9
12
14
16
18
2
4
6
8
11
13
15
17
OE
GND
P=Q
VCC
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
P0
P1
P2
P3
P4
P5
P6
P7
R7
10K
SW4
SW DIP-8/SM
R8
10k
u10
74HC245
2
3
4
5
6
7
8
9
191
18
17
16
15
14
13
12
11
20
10
A0
A1
A2
A3
A4
A5
A6
A7
OE
DIR
B0
B1
B2
B3
B4
B5
B6
B7
VCC
GND
u4
8255
34
33
32
31
30
29
28
27
4
3
2
1
40
39
38
37
18
19
20
21
22
23
24
25
14
15
16
17
13
12
11
10
26
7
5
36
9
8
35
6
D0
D1
D2
D3
D4
D5
D6
D7
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
VCC
GND
RD
WR
A0
A1
RESET
CS
PA51
D0
D1
D2
D3
D4
D5
D6
D7
D2
D1
D3
D4
D5
D6
D7
D0
D0
D3
D4
D5
D6
D7
D2
D1
D3
D5
D6
D7
D0
D2
D1
D4
D3
D4
D5
D6
D7
D0
D2
D1
CS2
CS1
CS5
CS6
CS4
CS3
CS2CS1
CS5 CS6CS4
CS3
A0
A1
A0
A1
A0
A1
A0
A1
A0
A1
A0
A1
RD
RD
RD
RD RD
RD
WR
WRWR
WR
WR
WR
RESET RESET
RESETRESET
RESET
RESET
AEN
A2
A3
A4
A2
A4
RD
WR
A02
A03
A04
A05
A06
A07
A08
A09
A1
A0
A3
A5
A6
A7
A8
A9
AEN
RD
WR
RESET
VCC
GND
VCC
GND
VCC
GND
VCC
GND
VCC
GND
VCC
GND
VCC
GND
A09
A05
A06
A07
A04
A03
A02
A08
RD
VCC
GND
VCC
VCC
GND
GND
GND
VCC
GND
GND
GND
GND
PA41
PA42
PA43
PA44
PA11
PA12
PA13
PA14
PA21
PA22
PA23
PA24
PA31
PA32
PA33
PA34
PA61
PA62
PA63
PA64
PA51
PA52
PA53
PA54
- Tính mở rộng nhằm đạt đợc vấn đề quan trọng là cài đặt chơng trình một lần, nhng
có thể hoạt động trên các hệ thống khác nhau không phụ thuộc vào số processor. Nói
cách khác, chơng trình có thể cài đặt mà không quan tâm đến số processor sẽ thi hành.
- Tính cục bộ đợc thoả mãn thì chi phí của thuật giải giảm đáng kể bởi việc truy cập đến
dữ liệu cục bộ xảy ra thờng xuyên hơn việc truy cập đến dữ liệu ở xa.
- Thuộc tính modularity đợc mong đợi giống với sự mong đợi trong lập trình tuần tự.
Đây chính là sự phân chia của những thực thể phức tạp thành các thành phần đơn giản
hơn.
Phơng pháp thiết kế giải thuật giả lập song song có thể đợc xây dựng nhờ một tiến trình
thiết kế tổng quát qua 4 giai đoạn riêng biệt :
- Sự phân chia: Việc tính toán đợc thực hiện trên những vùng dữ liệu nhỏ hơn và các
thao tác đợc đa về thành những nhiệm vụ nhỏ hơn.
- Sự thông tin: Xác định các cấu trúc và thuật giải truyền thông giữa các nhiệm vụ để có
sự hoạt động phù hợp.
- Sự kết hợp: Nhiệm vụ và các cấu trúc truyền thông đơc xác định trong hai giai đoạn
đầu đợc đánh giá đối với những yêu cầu của việc thực hiện và chi phí của việc cài đặt.
Nếu cần thiết, những nhiệm vụ kết hợp lại để có những nhiện vụ lớn hơn từ đó tăng hiệu
suất thực hiện hoăc giảm chi phí của thuật giải.
- Sự sắp xếp: Mỗi nhiệm vụ đợc gán đến một processor sao cho tận dụng tối đa số
processor và tối thiểu về chi phí truyền thông.
Những đặc tính đợc yêu cầu cho việc thiết kế các giải thuật song song và đồng thời 4 giai
đoạn trong phơng pháp thiết kế giải thuật giả lập song song là cơ sở cho việc thiết kế
chơng trình điều khiển giả lập song song đợc ứng dụng cho mô hình song song Parallel.
Robot. Chơng trình điều khiển giải lập song song đợc thiết kế trên những ứng dụng với
mỗi mức ứng dụng là một chơng trình điều khiển cho một cơ cấu chấp hành nhằm thực
hiện một tác vụ có liên quan, đó là thay đổi chiều dài của các chân nhằm định hớng, vị trí
của tấm di chuyển trong không gian.
Trình tự các bớc tiến hành cho việc thiết kế chơng trình điều khiển giả lập song song
theo cơ chế phân chia thời gian thực nh sau:
- Xây dựng mô hình toán học nhằm xác định thời gian thực yêu cầu của từng ứng dụng
- Kiểm soát hệ thống các dữ liệu liên quan đến từng mức ứng dụng và đồng thời tổ chức
sắp xếp trình tự yêu cầu của mỗi mức ứng dụng
- Xác định bit địa chỉ tơng ứng với trình tự yêu cầu của mỗi mức ứng dụng
- Tiến hành phân chia khe thời gian tơng ứng với trình tự yêu cầu của mỗi mức ứng
dụng, nhằm đáp ứng khả năng song song hoá các chơng trình điều khiển của mỗi mức
ứmg dụng.
Giải thuật điều khiển giả lập song song đợc trình bày trên hình 4.