Professional Documents
Culture Documents
Đồ Án Môn Học: Trường Đại Học Bách Khoa Hà Nội Viện Cơ Khí
Đồ Án Môn Học: Trường Đại Học Bách Khoa Hà Nội Viện Cơ Khí
VIỆN CƠ KHÍ
ĐỒ ÁN MÔN HỌC
ĐỀ TÀI:
THIẾT KẾ VÀ ĐIỀU KHIỂN ROBOT BA BẬC TỰ DO
MSSV : 20152383
Hà Nội, 06/2017
Đồ Án Thiết Kế Hệ Thống Cơ điện tử GVHD:TS.Nguyễn Kiên Trung
LỜI MỞ ĐẦU
Robot công nghiệp là lĩnh vực được nghiên cứu và phát triển mạnh trên thế
giới nhưng ở nước ta, lĩnh vực này còn mới mẻ. Ngày nay trong quá trình sản xuất
hiện đại, hầu hết các quy trình được thực hiện bằng máy chuyên dùng. Các
phương pháp này đã làm giảm rõ rệt chi phí sản xuất các sản phẩm công nghiệp
phù hợp với đa số người tiêu dùng.
Tuy nhiên, mỗi máy công cụ được thiết kế để thực hiện nguyên công cho
trước, mỗi khi cần thay đổi kiểu mẫu sản phẩm, thì toàn bộ dây chuyền sản xuất
phải được cải tạo lại. Việc sửa đổi rất tốn kém. Chính những lý do đó đã thúc đẩy
sự phát triển của phươnng pháp sản xuất tiên tiến, đó là chế tạo ra các loại robot
được đưa vào quy trình chế tạo để thực hiện nhiều nguyên công như: chuyển tải
vật tư và các thiết bị trong các dây truyền hiện đại, hàn điểm, sơn phun và lắp ráp
trong công nghiệp ô tô. Đây là kiểu tự động hóa linh hoạt và mang lại hiệu quả
kinh tế cao, rất cần thiết trong hoàn cảnh đất nước ta hiện nay đang tiến tới công
nghiệp hóa hiện đại hóa toàn diện.
Robot công nghiệp được ứng dụng rộng rãi trong các dây truyền sản xuất
hiện đại và có sự linh hoạt cao. Vì vậy việc nghiên cứu và chế tạo robot là rất cần
thiết và vô cùng quan trọng .
Chúng em xin chân thành cảm ơn sự hướng dẫn tâm huyết của thầy
TS.Nguyễn Kiên Trung– Bộ môn Công nghệ chế tạo máy - Viện cơ khí – Đại học
Bách khoa Hà Nội đã tận tình chỉ bảo, giúp đỡ chúng em trong suốt thời gian hoàn
thành đồ án này.
Do kiến thức còn hạn hẹp và thời gian thực hiện không nhiều nên trong quá
trình thực hiện sẽ không tránh khỏi những thiếu sót. Đề tài rất mong được sự góp
ý của quý thầy cô.
MỤC LỤC
– Hệ thống điều khiển theo chương trình có khả năng lập trình linh
hoạt
• Tay máy hoạt động được nhờ các động cơ thông qua các bộ truyền như:
hộp giảm tốc bánh răng, bánh răng - thanh răng, trục vít, khí nén, …
• Kết cấu tay robot vững chắc, hoạt động tin cậy, dễ dàng đạt đến vị trí của
vật thể được tác động.
- Lắp ráp và thử nghiệm các chi tiết khác nhau, lắp ráp các linh kiện
điện tử
- Kiểm tra bảng PC, tự động làm sạch các thành phần mạch
Thân robot: Là khâu cố định,đặt thẳng đứng giữ robot cố định khi làm
việc, gắn với khâu động 1 qua khớp xoay 1 với trục z01 thẳng đứng
Khâu 1: khâu dẫn động nằm ngang vuông góc với trục thẳng đứng trong
suốt quá trình làm việc của robot,có khả năng quay xung quanh trục Z0 qua
khớp xoay 1 .
Khâu 2: Khâu động có khả năng xoay trong mặt phẳng chứa trục Z0 .
Khâu 3: Giống như khâu 2 , có khả năng quay trong mặt phẳng chứa trục
Z0 .
Hệ dẫn động
Sử dụng hộp giảm tốc , biến tần hoặc PWM .... để điều khiển tốc độ .
Hệ điều khiển
L1 = 240 mm .
L2 = 350mm .
L3 = 325 mm .
Chọn:
3
- θ1=[0; ]
- θ2=[0; ]
- θ3=[0; ]
Khâu 2: Khâu động quay quanh trục nằm ngang vuông góc với khâu 1.
Khâu 3: Khâu thao tác quay quanh trục nằm ngang vuông góc khâu .
Khảo sát động học thuận, khảo sát động học ngược
1) Bảng D-H
Joint θi di ai αi
1 θ1 d1 0 90◦
2 θ2 0 a2 0◦
3 θ3 0 a3 0◦
Trong đó :
θ1 , θ2 , θ3 là các biến , góc quay theo thời gian của các khớp .
d1 , a2 , a3 là các góa trị hằng số , là độ dài của các khâu đã chọn ở bên
trên :
d1 =240 mm (L1).
a2 =350 mm (L2).
a3 = 325mm (L3).
Ta có dạng tổng quát của ma trận Denavit – Hartenberg cho các khâu :
−
i-1 −
Ai = (2.0)
0
0 0 1
⎡cθ1 0 sθ1 0 ⎤
⎢ sθ 0 − cθ1 0 ⎥
0
A1= ⎢ 1 ⎥ (2.1)
0 1 0
⎢ ⎥
⎣ 0 0 0 1⎦
− s1
0 − −
A2=0A1*1A2= (2.4)
0 +
0 0 0 1
− s1 +
− − + 0 0
0 R3 r3
A3=0A2*2A3= = (2.5)
0 + + 0T 1
0 0 0 1
Ma trận 0A3 cho ta biết hướng và vị trí khâu thao tác trong hệ tọa độ cố định
hay nói cách khác là vị trí của điểm tác động cuối và hướng của hệ tọa độ động
gắn vào khâu tại điểm tác động cuối trong hệ cố định . Vì thế nó còn được biểu
diễn thông qua các biến khớp qi .
Khi đó ma trận (2.8) được kí hiệu thành : 0A3(q) .
Sử dụng các góc Cardan xác định hướng của vật rắn . Gọi [xE ,yE ,zE , , , ]
là giá trị mô tả trục tiếp vị trí và hướng của điểm tác động cuối E so với hệ cố
định .Do các tọa độ đều là hàm của thời gian nên ta biểu diễn :
0
R 0r3
0
A3 = T3 (2.6)
0 1
Với :
0
RE là ma trận Cardan .
−
0 + − + −
Rn = (2.7)
− + +
0
rE là vec tơ mô tả vị trí của điểm tác động cuối trong hệ tọa độ
Ox0y0z0 .
0
rE = [ xE (t) , yE (t) , zE (t) ]T (2.8)
0T = [ 0 , 0 , 0 ] .
Dó đó ma trận 0 A4 (q) biểu diễn vị trí của khâu thao tác trong hệ tọa độ cố
định thông qua biến khớp qi . Còn ma trận 0AE (t) cũng mô tả vị trí và hướng
của khâu thao tác thông qua hệ tọa độ của khâu thao tác . Và ở đây ta chọn là
các goác Cardan .
Từ đó ta có phương trình động học Robot có dạng :
= +
= +
= a3 + a2s2 +
+
0
Suy ra rE(t) = + (2.10)
a3 + a2s2 +
Và :
Ta có hướng của khâu thao tác cuối được biểu diễn bởi ma trận :
− s1
0
RE = − − (2.11)
0 0 0
Từ đó ta có thể tính được vận tốc và gia tốc khâu thao tác :
• Vận tốc điểm thao tác cuối :
−( s1 + a1 ) ̇ − ( c1 + a1 ) ̇ − ̇
vE = 0 ̇ (t) = ( c1 + a1 ) ̇ − ( s1 + a1 ) ̇ − ̇ (2.12)
(a3c23 + a2c2) ̇ + a3c23 ̇
Mà VE = JTE. ̇ nên ta có ma trận Jacobi tịnh tiến :
−( s1 + a1 ) −( c1 + a1 ) −
JTE = ( c1 + a1 ) −( s1 + a1 ) − (2.13)
0 (a3c23 + a2c2) a3c23
Theo yêu cầu đề bài góc quay các khớp : 135˚ x 270˚ 270˚ .
Ta chọn quy luật chuyển động cho các khớp:
3 3
- θ1= ⇒ ̇ =
- θ2= . ⇒ ̇ = ;
- θ3= . ⇒ ̇ = ;
Chọn:
3
- θ1=[0; ]
- θ2=[0; ]
- θ3=[0; ]
Đơn vị của góc quay là rad và khoảng tịnh tiến là mm.
Số liệu đề bài cho chiều dài các trục d1=240;a2=350;a3=325.
*Tính vận tốc góc các khâu trong hệ tọa độ cơ sở:
0
0
R1= 0 − (2.15)
0 1 0
− s1
0
R2= − − (2.16)
0
− s1
0
R3= − − (2.17)
0
− θ̇ 0 θ̇
0 ̇
R1 = θ̇ 0 θ ̇ (2.18)
0 0 0
− ̇ − ̇ ̇ − ̇ θ̇
Ṙ =
0 ̇ − ̇ − ̇ − ̇ θ ̇ (2.19)
̇ − ̇ 0
− ̇ − ( ̇ + ̇ ) ̇ − ( ̇ + ̇ ) θ̇
R3̇ =
0 ̇ − ( ̇ + ̇ ) − ̇ − ( ̇ + ̇ ) θ ̇ (2.20)
( ̇ + ̇ ) − ( ̇ + ̇ ) 0
0 −θ ̇ 0
0̇ 0 T
ω = R1 R1 = θ ̇ 0 0 (2.21)
0 0 0
0 −θ ̇ − ̇
ω =0R ̇ 0R2T = θ̇ 0 ̇ (2.22)
̇ − ̇ 0
0 −θ ̇ − ( ̇ + ̇ )
ω = θ̇ 0 ( ̇ + ̇ )
( ̇ + ̇ ) − ( ̇ + ̇ ) 0
0 0
ω = 0 = 30 (2.23)
θ̇
3
− ̇ ⎡− sin( )⎤
̇ ⎢ 3 ⎥
ω = = ⎢ cos( ) ⎥(2.24)
θ̇ ⎢ 3 ⎥
⎣ ⎦
3
− sin( )⎤
− ( ̇ + ̇ ) ⎡
⎢ 3 ⎥
ω = ( ̇ + ̇ ) = ⎢ cos( )⎥
θ̇ ⎢ 3 ⎥
⎣ ⎦
trong công nghiệp thường có vùng làm việc xác định.Nhiệm vụ là tính toán thiết
kế cách chuyển động của khớp để thỏa mãn yêu cầu làm việc.
Nhóm chọn giải bằng phương pháp giải tích vì phạm vi đề bài nhỏ.
Nghiệm của bài toán động học ngược robot là nghiệm của hệ phương trình:
− s1 +
− - c1 + =
0 a3s23 + a2s2+
0 0 0 1 0 0 0 1
= ( )[1,4] − ( )[1,4] = + − =0
⎧
⎪ = ( )[2,4] − ( )[2,4] = + − =0
⎪
= ( )[3,4] − ( )[3,4] = a3 + a2s2 + − =0
⎨ = ( )[1,1] − ( )[1,1] = −c ⋅s =0
⎪
⎪ = ( )[2,2] − ( )[2,2] = − + s ⋅ s .s − . = 0
⎩ = ( )[3,3] − ( )[3,3] = −c ⋅ c = 0
Ta có hệ phương trình sau
+ = (∗)
+ = (∗∗)
a3 + a2s2 + = (∗∗∗)
Ta bình phương (*) và (**) cộng 2 vế với nhau :
( + ) = xE2+yE2
+ =± +
+ =± +
(****)
a3 + a2s2 = −
Ta lại bình phương 2 phương trình của hệ trên rồi cộng lại với nhau
( )
=
=± 1−
= arctan2( , )
Thế s3 , c3 vào (****) ta được :
( + ) + a3 =± +
a3 +( + a2) = −
(( + ) = A ; a3 = B ta có:
⎧ −A(± + ) + B( − )
⎪ =
A −B
⎨ ± + − .
⎪ =
⎩
=> θ = arctan2( , )
=
=>
=
Tính các phản lực,ngẫu lực tác dụng lên các khớp của robot để robot đạt trạng
thái cân bằng khi không chuyển động.
MOi = iMi+1,i - i i
Fi,i-1 -i i
Pi - iMi,i-1 (2)
iFi,i-1 : lực tác dụng từ khâu i-1 sang khâu i tại Oi-1 .
iFi+1,i : lực tác dụng từ khâu I sang khâu i+1 tại Oi .
iM1,i-1 : momen lực tác dụng từ khâu i-1 sang khâu i .
iMi+1,i : momen lực tác dụng từ khâu i sang khâu i+1 .
-iFi+1,i : lực tác dụng từ khâu i+1 sang khâu i tại Oi .
-iMi+1,i : momen lực tác dụng từ khâu i+1 sang khâu i .
⃗ : vector có gốc tại Oi,mút tại Oi-1 .
⃗ : vector có gốc tại Oi,mút tại Ci .
Để đạt điều kiện cân bằng thì :
MOi = iMi+1,i - i i
Fi,i-1 -i i
Pi - iMi,i-1 = 0 (4)
Trong đó các ma trận sóng ( ma trận đối xứng lệch ) của các vecto định vị điểm
đặt lực :
0 −izi-1 i
yi-1 0 −izci iyci
i
= i
zi-1 0 −ixi-1 ; = izci 0 −ixci ;
−iyi-1 i
xi-1 0 −iyci ixci 0
Từ (3),(4) ta có :
i
Fi,i-1 = iFi+1,i - iPi (5)
i
Mi,i-1 = iMi+1,i - ii i
Fi,i-1 -i i
Pi (6)
0 − s1
0
R1= 0 − ; 0R2= − − ; 0R3=
0 1 0 0
− s1
− − .
0
Giả sử các thanh đồng chất, khối tâm nằm ở chính giữa các thanh .
0
0
g3 = 0 ;
−
0
0 0 0
P3=m3 g3 = ;
−
− − − −
3
r = 0 0
→ r = R3 r = 0 3 − − 0 = − ;
0 0 0 −
0 −
0
→ = − 0 ;
− 0
− − ⎡− ⎤
3
r = 0 0
→ r 0 3
= R3 r = − −
0 =⎢− ⎥
0 ⎢ ⎥
0 0 ⎣ − ⎦
;
⎡ 0 − ⎤
→0
=⎢− 0 ⎥;
⎢ ⎥
⎣ − 0 ⎦
0
0
F4,3= 0 ;
0
0
M4,3=0;
Thay các đại lượng trên vào phương trình ta có:
0 0 0
0 0 0
F3,2 = 0 - = ;
0 −
0 − 0
0 0
M3,2 = - − 0 -
− 0
⎡ 0 − ⎤ 0
⎢− 0 ⎥ 0 = − ;
⎢ ⎥ −
⎣ − 0 ⎦ 0
b) khâu 2 .
0
F2,1 = 0F3,2 - 0P2
0
M2,1 = 0M3,2 - 0 0
F1,2 -0 0
P2
Giả sử các thanh đồng chất, khối tâm nằm ở chính giữa các thanh .
0
0
g2 = 0 ;
−
0
0 0 0
P2=m**2 g2 = ;
−
− − s1 − −
2
r = 0 0
→ r = R2 r = 0 2 − − 0 =− ;
0 0 0 0
0 0 −
→0 = 0 0 ;
− 0
− s1
2
r = → r 0 0
= R2 r 2
= − − = ;
0 0
0 0 0 0
⎡ 0 0 ⎤
→0 =⎢ 0 0 ⎥;
⎢ ⎥
⎣ 0 ⎦
0
0 0
F3,2= ;
0
M3,2= − ;
0
Thay các đại lượng trên vào phương trình ta có:
0 0 0
0 0 0 0
F2,1 = - = ;
− +
0 0 − 0
0 0 0 0
M2,1 = − - -
− 0 +
0
⎡ 0 0 ⎤ 0
⎢ 0 0 ⎥ 0 =
⎢ ⎥ −
⎣ 0 ⎦
+ +
− − − ;
0
c) Khâu 1.
0
F1,0= 0F2,1 - 0P1
0
M1,0 = 0M2,1 - 0 0
F1,0 -0 0
P1
Giả sử các thanh đồng chất, khối tâm nằm ở chính giữa các thanh .
0
0
g1 = 0 ;
−
0
0 0 0
P1=m1 g1 = ;
−
0 − s1 0
1
r = − 0
→ r = R1 r = 0 1 − − − = ;
0 0 0 −
0
→0 = − 0 − ;
− 0
0 − s1 0 ⎡ ⎤
1 − − ⎢ ⎥
r = → 0r = 0R1 1r = =⎢ ⎥;
0 0 0 ⎢ ⎥
⎣ ⎦
⎡ 0 ⎤
⎢ ⎥
→0 =⎢ 0 − ⎥;
⎢ ⎥
⎣− 0 ⎦
0
0 0
F2,1= ;
+
+ +
0
M2,1= − − − ;
0
Thay các đại h ta có:
0 0 0
0 0 0 0
F1,0 = - = ;
+ − ( + + )
+ +
0
M1,0= − − − -
0
0 0
− 0 − 0 -
− 0 ( + + )
⎡ 0 ⎤ 0
⎢ ⎥ 0
⎢ 0 − ⎥ ;
⎢ ⎥ −
⎣− 0 ⎦
Suy ra :
0
M1,0 x =( + − ) +( − )
+( − )
0
M1,0 y = (− − + ) + (− + )
+( − ) g.
0
M1,0 z = 0
1 0 240 24,79
2 350 0 7.5
3 325 0 8
Ta có:
0 0
_0F3,2 = 0 (N), 0M3,2 = 0 (Nm) .
80 0
0 0
_0F2,1 = 0 (N), M2,1= −28,53 (Nm) .
0
155 0
0 0
_0F1,0 = 0 (N) , 0M1,0=
−28,53 (Nm) .
402,9 0
Động lực học thuận (direct dynamics) khảo sát tính toán các đại lượng
đặc trưng cho chuyển động dưới tác dụng của lực đã xác định .
Động lực học ngược ( inverse dynamics) khảo sát tính toán các lực dẫn
động để robot thực hiện được chuyển động thao tác theo quy luật đã xác
định .
Thiết lập phương trình Lagrange cho hệ nhiều vật rắn .
Vị trí mỗi vật Bi trong hệ quy chiếu cơ sở R0 (Ox0y0z0) được xác định bởi
vector xác định khối tâm và ma trận cosin chỉ hướng rci=rci(q) và
Ri=Ri(q) .
Trạng thái vận tốc của vật rắn Bi được xác định bởi vận tốc khối tâm vci
và vận tốc góc của nó ωi .
̇ ; ῶ =Ṙ . T .
drci ∂rci
Với v = =
ci i i i
∂
Trong đó I là ma trận tenxo quán tính của vật rắn thứ i với khối tâm Ci của
nó trong hệ tọa độ cơ sở .
T= ∑ [mi (JTi. )̇T JTi. ̇ + (JRi. ̇ )T i JRi. ̇] = ̇T∑ (mi JTiTJTi + JRiT iJRi) ̇ .
T= ̇ T M(q) ̇ trong đó :
m11(q) … m1n(q) q1
M(q)= ⋮ ⋱ ⋮ ; q= ⋮ ;
mn1(q) … mnn(q) qn
=>T= ∑ ∑ mij(q1,....,qn) ̇ q̇ j
G(q)= [gj(q)]nx1
∂∏
gj(q)=
∂qj
[q1 q2 q3 q4 ]T=[θ1 , θ2 , 3 ]T
Từ phần mềm ta suy ra được tọa độ trọng tâm theo hệ tọa độ khâu :
Khâu Vị trí trọng tâm so với tọa độ Khối Momen quán tính khối từng khâu
gắn trên khâu lượng
xGi yGi ZGi Ixx Iyy Izz Ixy Ixz Iyz
1 0 87 I1x I1y I1z 0 0 0
2 0 0 12.5 I2x I2y I2z 0 0 0
3 0 0 14 I3x I3y I3z 0 0 0
Bảng 2:Thông số vị trí khối tâm,khối lượng và momen quán tính của các khâu
Coi các khâu được chế tạo bởi vật rắn đồng chất,đối xứng nên Ixy,Ixz,Iyz=0 .
a. Vị trí và hướng của hệ tọa độ Cixciycizci có gốc là ci biểu diễn trong hệ tọa
độ cơ sở xác định bởi ma trận :
i ( ) ( )
0
A = 0 A . Aci = (5.1)
Trong đó :
0
A – ma trận biến đổi tọa độ thuần nhất của từ khâu i sang khâu 0 .
i
Aci – ma trận biến đổi tọa độ thuần nhất của hệ tọa độ Cixciycizci biểu
diễn trong khâu i .
Từ công thứ (5.1) ta có :
⎡cθ1 0 sθ1 0 ⎤ 1 0 0 c1 0 c1
⎢
0Ac1 = sθ1
0 − cθ1 0 ⎥ 0 1 0 0 −
⎢ 0 ⎥ 0 = s1 s1 ;
1 0 0 1 0 0 1 0 +
⎢ ⎥
⎣ 0 0 0 1⎦ 0 0 0 1 0 0 0 1
− s1 1 0 0
0Ac2
− − 0 1 0 0
= =
0 + 0 0 1 0
0 0 0 1 0 0 0 1
− s1 +
− − +
0 + +
0 0 0 1
− s1 + 1 0 0
0Ac3
− − + 0 1 0 0
= =
0 + + 0 0 1 0
0 0 0 1 0 0 0 1
− s1 + +
− − + +
0 + + +
0 0 0 1
*Ma trận tenxo quán tính của khâu i đối với khối tâm Ci trong hệ tọa độ động
gắn với khâu i .
Xét khâu 1:
(− ) ̇1
vc1 = 0 ̇ = ( ) ̇1 ;
0
Xác định ma trận Jacobi tịnh tiến
− 0 0 − 0
JTc1= 0 0 => JTc1T= 0 0 0;
0 0 0 0 0 0
Lại có:
0 0 − ̇
ω = Rc10 T0 ̇
Rc1 = 0 => wc1 = [ 0 , ̇ ,0] ;
0 0
̇ 0 0
0 0 0 0 0 0
+Khâu 2
Ma trận ten xơ quán tính của khâu đối với khối tâm C2 trong hệ tọa độ động
C2xC2yC2zC2 .
0rc2=[ + , + , + + ]T
Đặt L = ( + ).
Suy ra : 0rc2 = .
+
+Vận tốc khối tâm c2 :
̇ − − ̇
.
vc2= 0 rc2 = ̇ − ̇ ;
̇
+Ma trận Jacobi tịnh tiến
− − 0
JTc2= − 0 ;
0 0
− 0
=>JTc2 = −
T − ;
0 0 0
+Ma trận Jacobi quay :
Có :
0 −θ ̇ ̇
ω =0Rc2T 0Rc2̇ = θ̇ 0 − ̇ => wc2 = [ ̇ , ̇ , θ̇ ]
− ̇ ̇ 0
0 0 0
=>JRc2= 0 0 ; JRc2T= 0 0 1 ;
0 1 0 0 0 0
+Khâu 3
Ma trận tenxo quán tính của khâu đối với khối tâm C3 trong hệ tọa độ C3x3y3z3 .
[( + ) + ]
- = [(
0rc3 + ) + ]
( + ) + +
Đặt k1 = [(x + a )c + a c ] ; k2 =(x + a )s + a s ; k3 = (x + a )s ;
k4 =(x + a )c .
Suy ra : 0rc3 = .
+
.
− θ̇ − ̇ − ̇
- vc3= 0 rc3 = ̇ − ̇ − ̇ ;
̇ + ̇
+Ma trận tịnh tiến Jacobi
− − −
- JTc3= − − ;
0
− 0
- => JTc3T= − − ;
− −
+Ma trận quay Jacobi .
Ta có :
0 −θ ̇ − ̇ ̇
̇
ω =0Rc3T 0 Rc3 = θ ̇ + ̇ ̇
0 −
− ̇ ̇ 0
=> wc3 = [ ̇ , ̇ , θ̇ + ̇ ]
0 0 0
- JRc3= 0 0 ;=> JRc3T= 0 0 1 ;
0 1 1 0 0 1
b. Ma trận khối lượng .
M(q)= [ ( + )] .
M1(q)= + .
− 0 − 0 0 0 0 0 1 0 0
=m1 0 0 0 0 0 +0 1 0 0 1 0
0 0 0 0 0 0 0 0 0 0 0 1
0 0 0
0 1 0
0 0 0
0 0
= 0 1 0 ;
0 0 0
M2(q)= + .
− 0 − − 0
=m2 − − − 0
0 0 0 0 0
0 0 0 0 0
+ 0 0 1 0 0 0 0 =
0 0 0 0 0 0 1 0
c m + + 0 0
0 s m +I 0
0 0 0
M3(q)= +
− 0 − − −
=m3 − − − − +
− − 0
0 0 0 0 0
0 0 1 0 0 0 0
0 0 1 0 0 0 1 1
=
+ + 0 0
0 ( + ) + ( + ) +
0 ( + ) + +
M(q)=M1(q)+M2(q)+M3(q) .
c. Sau khi xác định được M(q) ta có biểu thức động năng .
Dạng ma trận :
Bùi Văn Mạnh – KT Cơ Điện tử 03-k60 Page 35
Đồ Án Thiết Kế Hệ Thống Cơ điện tử GVHD:TS.Nguyễn Kiên Trung
M(q) = ;
Trong đó :
= + + + + + +
.
= +( + ) + + .
=( + ) + .
=( + ) + .
=2 + .
m12=m21 = = =0.
Với L = ( + ) ; k1 = [(x + a )c + a c ] ; k2 =(x + a )s + a s ; k3 =
(x + a )s ; k4 =(x + a )c .
d. Xác định ma trận C(q, ̇ ) ̇ =[c1 c2 c3 ]T
Với cj = ,
( , , ) ̇ ̇ ta có :
c1= +2 +2 − − −
c2=2 + +2 +2 +2 − −
c3=2 +2 +2 +2 + − −
Thay số vào ta được :
c1=[−2 −2 ] ̇ − ̇ − ̇ −
k1k3c1m3 ̇ .
c2= ̇ +[ +2 −2 ] ̇ +
[2 −2 ] ̇3 + ̇ +[ ( + ) +
( − ) ] ̇
3− [− − ] ̇ −2 ̇
c3= ̇ +[ ( + ) + ( − ) ] ̇
2+
4 ̇ +2 ̇ − 3
̇ −[2
3 −2 ] ̇
3
..
=>C q, q q = ;
Xác định biểu thức thế năng :
= (q) =migzci .
g =[0 –g 0]T
− =( + )
=> − =( + )
− =( + )
G(q)=[gj(q)]3x1
g1(q)= =0
q1
g2(q)= =L g .
q2
g3(q)= = m3g .
q3
0
=> G(q)= g .
m3g
Tính các lực suy rộng của các lực không thế.Robot gắp vật bỏ qua ảnh hưởng
của ngoại lực,lực ma sát cản trở chuyển động thì lực suy rộng chỉ có trọng lực
của phôi tác dụng lên khâu 3,hướng thẳng đứng chiều hướng xuống dưới
( − ) ] ̇
3− [− − ] ̇ −2 ̇ +
g = U2 .
( + + ) ̈ + (2 + ) ̈ +
̇ +[ ( + ) + ( − ) ] ̇ 2+ 4 ̇ +
2 ̇ − ̇
3 3 −[2 −2 ] ̇ 3 + m3g = U3 .
Với L = ( + ) ; k1 = [(x + a )c + a c ] ; k2 =(x + a )s + a s ; k3 =
(x + a )s ; k4 =(x + a )c .
Tiến hành mô phỏng đặt lực và momen vào các khâu của robot sử dụng phần
mềm solidwork ta thu được kết quả ứng suất tác dụng vào các khâu như sau:
Ứng suất lớn nhất tác dụng lên khâu 1 là: 9.103 .
Ứng suất lớn nhất tác dụng lên khâu 2 là: 9,2.104 .
Ứng suất lớn nhất tác dụng lên khâu 3 là: 1,9.104 .
Ứng suất lớn nhất tác dụng vào các khâu là 9,2. 10 < [ ] = 6. 10 => Các
khâu đủ bền .
tròn để sang vị trí đặt phôi. Cuối cùng,robot hạ điểm thao tác theo trục z đến vị
trí đặt mong muốn rồi thả vật.
Chọn phương án dịch chuyển các khâu sao cho các tọa độ khớp qk (k
= , …)là các đa thức bậc 3 của thời gian như sau :
= + + +
̇ = + +
̈ = +
Gọi qi0,qie lần lượt là vị trí đầu và vị trí cuối của quỹ đạo .
ti là thời gian dịch chuyển từ vị trí đầu đến vị trí cuối của đoạn quỹ đạo .
te là tổng thời gian chuyển động từ vị trí O sau đó quay về vị trí O .
Vận tốc điểm đầu và điểm cuối quỹ đạo chọn bằng 0 .
- Áp dụng công thức để tính các hệ số trong pt (1) cho từng đoạn quỹ đạo
chuyển động:
ai0 = qi0
ai1 = 0
( )
ai2 =
( )
ai3 =
b) Ví dụ cụ thể .
Quá trình chuyển động gồm 3 giai đoạn:
+ Giai đoạn 1: robot đi từ A(300,400,200) tới điểm B(300,400,500) với quỹ
đạo là đường thẳng .
Thiết kế quỹ đạo chuyển động trong không gian thao tác :
Giai đoạn 1: robot đi từ A(300,400,200) tới điểm B(300,400,500) với quỹ
đạo là đường thẳng .
• Ta có quy luật : = + + + .
• Chọn thời gian di chuyển : t1 = 2s .
• Quãng đường di chuyển: q = 300 .
• Điểm đầu A(300,400,200).
• Điểm cuối B(300,400,500).
Suy ra q10 = 200 , q1e = 500 .
Từ đó ta có :
= 200
⎧ =0
⎪
3(500 − 200)
= = 225
⎨ 2
⎪ 2(200 − 500)
⎩ = = −75
2
Vậy nên :
= + −
̇ = −
̈ = −
Đồ thị quỹ đạo , vận tốc , gia tốc theo thời gian gđ 1
Giai đoạn 2: robot đi từ B(300,400,500) tới điểm C(300,-400,500) với quỹ
đạo là đường tròn tâm H(100,0,500) ,bán kính R = √200 + 400 = 200 5
(mm) .
• Ta có quy luật : = + + + .
• Chọn thời gian di chuyển : t1 = 2s .
• Quãng đường di chuyển(độ dài cung): q = 2r.arctan (2) .
• Điểm đầu B(300,400,500) .
• Điểm cuối C(300,-400,500) .
Từ đó ta có :
= 4456
⎧ =0
⎪
3(−4456 − 4456)
= = −6684
⎨ 2
⎪ 2(4456 + 4456)
⎩ = = 2228
2
Vậy nên :
= − +
̇ = − +
̈ =− +
Đồ thị quỹ đạo , vận tốc , gia tốc theo thời gian gđ 2
Giai đoạn 3:robot di từ C(300,-400,500) tới D(300,-400,200) với quỹ đạo là
đường thẳng .
• Ta có quy luật : = + + + .
• Chọn thời gian di chuyển : t1 = 2s .
• Quãng đường di chuyển: q = 300 .
• Điểm đầu C(300,-400,500) .
• Điểm cuối D(300,-400,200) .
Suy ra q10 = 500 , q1e = 200 .
Từ đó ta có :
= 500
⎧ =0
⎪
3(200 − 500)
= = −225
⎨ 2
⎪ 2(500 − 200)
⎩ = = 75
2
Vậy nên :
= − +
̇ = − +
̈ =− +
Đồ thị quỹ đạo , vận tốc , gia tốc theo thời gian gđ 3
Động cơ bước là một loại động cơ điện có nguyên lý và ứng dụng khác biệt
với đa số các động cơ điện thông thường. Chúng thực chất là một động cơ đồng
bộ dùng để biến đổi các tín hiệu điều khiển dưới dạng các xung điện rời rạc kế
tiếp nhau thành các chuyển động góc quay hoặc các chuyển động của rôto có
khả năng cố định rôto vào các vị trí cần thiết.
Về cấu tạo, động cơ bước có thể được coi là tổng hợp của hai loại động cơ:
Động cơ một chiều không tiếp xúc và động cơ đồng bộ giảm tốc công suất nhỏ.
2. Hoạt động
Động cơ bước không quay theo cơ chế thông thường, chúng quay theo
từng bước nên có độ chính xác rất cao về mặt điều khiển học. Chúng làm việc
nhờ các bộ chuyển mạch điện tử đưa các tín hiệu điều khiển vào stato theo thứ
tự và một tần số nhất định. Tổng số góc quay của rôto tương ứng với số lần
chuyển mạch, cũng như chiều quay và tốc độ quay của rôto phụ thuộc vào thứ
tự chuyển đổi và tần số chuyển đổi.
3. Ứng dụng
Trong điều khiển chuyển động kỹ thuật số, động cơ bước là một cơ cấu
chấp hành đặc biệt hữu hiệu bởi nó có thể thực hiện trung thành các lệnh đưa
ra dưới dạng số.
Động cơ bước được ứng dụng nhiều trong ngành Tự động hoá, chúng được
ứng dụng trong các thiết bị cần điều khiển chính xác. Ví dụ: Điều khiển robot,
điều khiển tiêu cự trong các hệ quang học, điều khiển định vị trong các hệ
quan trắc, điểu khiển bắt, bám mục tiêu trong các khí tài quan sát, điều khiển
lập trình trong các thiết bị gia công cắt gọt, điều khiển các cơ cấu lái phương và
chiều trong máy bay...
Trong công nghệ máy tính, động cơ bước được sử dụng cho các loại ổ đĩa
cứng, ổ đĩa mềm, máy in...
Trong phạm vi đồ án này, nhóm điều khiển động cơ bước dựa trên
phương pháp “Điều chế độ rộng xung”
1. Giới thiệu phương pháp điều khiển tần số , băm xung cho động cơ step .
Giá trị trung bình của điện áp (và dòng điện) cung cấp cho tải được kiểm
soát bằng cách thay đổi việc đóng cắt giữa nguồn và tải tắt với tốc độ rất
nhanh. Thời gian đóng càng lâu so với thời gian cắt, thì tổng công suất cung cấp
cho tải càng cao.
Tần số đóng cắt PWM phải cao hơn nhiều so với tần số ảnh hưởng đến tải
(các thiết bị sử dụng điện), để dạng sóng cuối cùng được đưa tới tải phải càng
mịn càng tốt. Tốc độ (hoặc tần số) mà tại đó các nguồn cấp phải đóng cắt có
thể rất khác nhau tùy thuộc vào tải và ứng dụng, ví dụ
Việc đóng cắt phải được thực hiện nhiều lần một phút đối với một bếp
điện; 120 Hz trong một bộ dimmer đèn sợi đốt; giữa một vài kiloHertz (kHz),
cho đến hàng chục kHz trong một bộ điều khiển động cơ; và khoảng vài chục
hoặc vài trăm kHz trong các bộ khuếch đại âm thanh và các bộ nguồn máy tính.
Thuật ngữ chu kỳ làm việc mô tả tỷ lệ giữa thời gian “bật” với thời gian điều
chỉnh hoặc “chu kỳ” làm việc; chu kỳ làm việc thấp tương ứng với công suất
thấp, bởi vì nguồn điện bị cắt trong phần lớn thời gian điều chỉnh. Chu kỳ làm
việc được thể hiện theo phần trăm, 100% là bật hoàn toàn.
Ưu điểm chính của PWM đó là tổn hao công suất trên các thiết bị đóng cắt
(Chuyển mạch) rất thấp. Khi khóa chuyển mạch tắt thì không có dòng điện nào
đi qua, và khi bật thì nguồn sẽ được đưa sang phụ tải, thì hầu như không có
sụt áp trên thiết bị chuyển mạch. Tổn hao công suất, là tích của điện áp và
dòng điện, do đó trong cả hai trường hợp gần như bằng không. PWM cũng
hoạt động tốt với điều khiển kỹ thuật số, mà vì tính chất bật/tắt, ta có thể dễ
dàng thiết lập chu kỳ làm việc cần thiết.
PWM cũng đã được sử dụng trong một số hệ thống truyền thông, trong đó
chu kỳ làm việc của nó được sử dụng để truyền tải thông tin qua một kênh
truyền thông.
2. Nguyên lý
Điều chế độ rộng xung sử dụng một sóng xung hình chữ nhật có độ rộng
được điều chế dẫn đến sự biến thiên của giá trị trung bình của dạng sóng. Nếu
chúng ta xem xét một sóng xung ( ), với chu kỳ , giá trị thấp , giá trị
cao , và chu kỳ làm việc D (xem hình 1), giá trị trung bình của dạng sóng
đó được cho bởi:
Hình 1: một sóng xung, thể hiện các định nghĩa của , và D.
1
= ( ) .
Vì ( ) là một sóng xung, giá trị của nó là trong khoảng < <
. , và trong khoảng . < < . Biểu thức trên trở thành:
1
= +
1
= ( . . + (1 − ) )
= . + (1 − ) .
Biểu thức sau này có thể khá đơn giản trong nhiều trường hợp trong đó =
0 khi = . . Từ đó, rõ ràng là giá trị trung bình của tín hiệu ( ) trực tiếp
phụ thuộc vào chu kỳ làm việc D.
Cách đơn giản nhất để tạo ra một tín hiệu PWM là phương pháp giao thoa,
chỉ yêu cầu cần có một sóng răng cưa hoặc sóng tam giác (dễ dàng tạo ra bằng
cách sử dụng một bộ tạo dao động đơn giản) và một mạch so sánh. Khi giá trị của
tín hiệu tham chiếu (tín hiệu đặt) (sóng sin màu đỏ trong hình 2) lớn hơn sóng
điều biến (màu xanh lam), thì tín hiệu PWM (màu đỏ tía) sẽ ở trạng thái cao, nếu
không thì ở trạng thái thấp.
Hình 2: Một phương pháp đơn giản để tạo ra mạch xung PWM tương
ứng với một tín hiệu cho trước là PWM giao thoa: tín hiệu (ở đây là sóng sin
màu đỏ) được so sánh với dạng sóng răng cưa (màu xanh lam). Khi tín hiệu
sau là nhỏ hơn tín hiệu trước, tín hiệu PWM (màu đỏ tía) sẽ ở trạng thái cao
(1). Nếu không thì nó ở trạng thái thấp (0).
Phần này cung cấp một dẫn xuất ngắn gọn của một mô hình phi tuyến của
động cơ bước 2 pha PM.
Phương trình động lực học của trục rotor được đưa ra bởi:
= − − (1)
F – hệ số ma sát nhớt
– mô men tải
Phương trình (1) tạo cơ sở cho mô hình động lực học chung của rotor động
cơ bước PM. Do đó với động cơ PM có P cặp cực rôto và hai pha ( ) tại 0 và ( /
2), các phương trình không gian trạng thái sau có thể được suy ra:
= (− sin + cos )− −
=− + sin
+ (2)
=− − cos −
Xem xét trường hợp khi tải được kết nối với động cơ qua một trục cứng dài
có độ cứng k, thì quán tính của động cơ sẽ là và quán tính tải sẽ là như trong
hình 3.
Trong trường hợp này, phương trình tải trọng và trục đàn hồi sẽ là:
= (3)
1
= [− ( − )− ( − )]
Một kỹ thuật điều khiển cổ điển cho PMSM dựa trên biến đổi vectơ (u) và
(i) được biểu diễn trong hệ quy chiếu gắn với stato cố định (a, b) thành các vectơ
biểu diễn trong một khung (d, q) xoay dọc theo vectơ lực dẫn động giả tưởng sao
cho:
cos sin
=
−sin cos
Phương trình trạng thái (2) thể hiện dưới dạng dòng điện và điện áp trong
tọa độ xoay (d, q) trở thành:
1
= − − − [ ( − )+ ( − )]
=− + .
+ (4)
=− − . − +
% so cap cuc
P = 6; % khong thu nguyen
% he so cua dong co
Km = 2; % Nm/rad
% momen tai
TL = 5; % Nm
k = 0.9;
Chạy mô phỏng và Tune bộ điều khiển PID, ta nhận được kết quả như sau:
Từ kết quả đáp ứng nhận được trên các đồ thị, ta rút ra một số nhận xét:
+ Bộ điều khiển vị trí góc quay tương đối đạt yêu cầu khi độ
quá điều chỉnh và thời gian đáp ứng nhỏ
+ Bộ điều khiển vận tốc góc chưa đạt yêu cầu do độ quá điều
chỉnh rất lớn. Do vậy, bộ điều khiển này phải cần tiếp tục nghiên cứu
và khắc phục
Phần cứng:
- Arduino UNO
- Driver điều khiển động cơ A4988
- Breadboard
- Nguồn cấp 12V (dòng điện tối thiểu 1A)
- Dây nối
Kết nối driver, động cơ bước vào Arduino như sau:
void setup()
{
Serial.begin(BAUD);
pinMode(6,OUTPUT); // Enable pin - chân khởi động - nối vào
GND sẽ giúp ta bật động cơ bước, nối vô VCC động cơ bước được
thả ra. Nôm na: GND = servo.attach, VCC = servo.detach
pinMode(5,OUTPUT); // Step pin
pinMode(4,OUTPUT); // Dir - pin
digitalWrite(6,LOW); // Set Enable low
}
void loop()
{
digitalWrite(6,LOW); // Đặt Enable ở trạng thái LOW
digitalWrite(4,HIGH); // Đặt Dir ở trạng thái HIGH
Serial.println("Cho chay 200 steps (1 vong)");
for(x = 0; x < 200; x++) // Cho chay 1 vong
{
digitalWrite(5,HIGH); // Output high
delay(10); // chờ
digitalWrite(5,LOW); // Output low
delay(100); // chờ
}
Serial.println("Pause");
delay(1000); // dừng 1 s rồi quay tiếp
}
Trong đó vế trái của phương trình là mô hình với các tham số của robot, vế
phải là momen mà bộ điều khiển tác động lên robot. Momen này được sinh
ratừ bộ điều khiển với giá trị thỏa mãn yêu cầu đã nêu ở trên.
Chúng ta phải xét xem cấu trúc của bộ điều khiển như thế nào thì có thể
đáp ứng mục tiêu thiết kế. trược hết chúng ta chia bộ điều khiển thành hai
phần: một phần dựa trên mô hình và một phần dựa trên phản hồi.
u= +
Trong đó α, β là các hàm được chọn lựa sao cho nếu τ với tư cách là đầu
vào mới của hệ, thì hệ trở thành hệ khối lượng đơn vị.
Với cấu trúc này của luật điều khiển, phương trình của hệ trở thành:
Với mục tiêu biến hệ thành hệ khối lượng đơn vị với u là thành phần đầu
vào thì α, β có thể được chọn:
= ( )
= ( , ̇ , ̈) + ( ) –
Sau khi chọn được α, β thì phương trình còn lại là:
̈ =u
Chúng ta còn lại tham số cuối cùng cần chọn để thu được hệ khối lượng
đơn vị :
= ̈ + ( − )+ ( − )
Trong đó các giá trị đầu vào là quy luật vị trí, quy luật vận tốc, quy luật gia
tốc mong muốn đã được tính toán trong phần thiết kế quỹ đạo:
( )
̇ ( )
̈ ( )
Ta tìm được biểu thức đặc trưng cho hệ điều khiển vòng kín robot:
̈+ ̇+ e=0
Với:
= −
̇ = ̇ − ̇
̈ = ̈ − ̈
Hệ phương trình trên bao gồm các phương trình độc lập, các ma trận
Kd , Kp là các ma trận đường chéo, do vậy phương trình này có thể viết riêng
cho từng khớp:
̈+ ̇+ =0
Theo lí thuyết về dao động kĩ thuật, khi nhìn vào phương trình trên ta có
thể nhận xét đây là phương trình dao động tự do có cản, ứng xử của hệ
thống phụ thuộc vào hệ số kvi và kpi. Trong đó mục tiêu của chúng ta là đưa
đáp ứng của hệ càng sát với giá trị mong muốn càng tốt, khoảng thời gian đạt
được đáp ứng càng nhanh càng tốt. Do đó, giá trị nghiệm hướng tới là
trường hợp nghiệm kép, giá trị thực, và trường hợp này gọi là trường hợp tới
hạn khi k d 2 k P .
Từ nội dung trên ta có thể xây dựng được sơ đồ khối của mô hình hệ thống
như sau:
Từ sơ đồ trên có thể nhận thấy rằng chúng ta đang điều khiển hệ thống
trong không gian khớp theo thời gian. Tín hiệu đặt và tín hiệu phản hồi đều
tương ứng với từng khớp (vị trí, vận tốc,gia tốc).
Khối PD :
Với Kp=[625 625 625]
Kd=[50 50 50]
Khối Robot :
• dq và dq_dat :
Phụ lục
%MA TRAN C
c11=(I2x*dq2*sin(2*q2))/2 - (I2y*dq2*sin(2*q2))/2 + (I3x*dq2*sin(2*q2 +
2*q3))/2 + (I3x*dq3*sin(2*q2 + 2*q3))/2 - (I3y*dq2*sin(2*q2 + 2*q3))/2 -
(I3y*dq3*sin(2*q2 + 2*q3))/2 ...
- (L2^2*dq2*m2*sin(2*q2))/2 - (L2^2*dq2*m3*sin(2*q2))/2 -
(a2^2*dq2*m2*sin(2*q2))/2 - (L3^2*dq2*m3*sin(2*q2 + 2*q3))/2 -
(L3^2*dq3*m3*sin(2*q2 + 2*q3))/2 - (a3^2*dq2*m3*sin(2*q2 + 2*q3))/2 ...
- (a3^2*dq3*m3*sin(2*q2 + 2*q3))/2 + L2*a2*dq2*m2*sin(2*q2) +
L3*a3*dq2*m3*sin(2*q2 + 2*q3) + L3*a3*dq3*m3*sin(2*q2 + 2*q3) -
(L2*L3*dq3*m3*sin(q3))/2 + (L2*a3*dq3*m3*sin(q3))/2 ...
- L2*L3*dq2*m3*sin(2*q2 + q3) - (L2*L3*dq3*m3*sin(2*q2 + q3))/2 +
L2*a3*dq2*m3*sin(2*q2 + q3) + (L2*a3*dq3*m3*sin(2*q2 + q3))/2;
c12=-(dq1*(I3y*sin(2*q2 + 2*q3) - I3x*sin(2*q2 + 2*q3) - I2x*sin(2*q2) +
I2y*sin(2*q2) + a3^2*m3*sin(2*q2 + 2*q3) + L2^2*m2*sin(2*q2) +
L2^2*m3*sin(2*q2) + a2^2*m2*sin(2*q2)...
+ L3^2*m3*sin(2*q2 + 2*q3) + 2*L2*L3*m3*sin(2*q2 + q3) -
2*L2*a3*m3*sin(2*q2 + q3) - 2*L2*a2*m2*sin(2*q2) - 2*L3*a3*m3*sin(2*q2 +
2*q3)))/2;
c13=-(dq1*(I3y*sin(2*q2 + 2*q3) - I3x*sin(2*q2 + 2*q3) + a3^2*m3*sin(2*q2 +
2*q3) + L3^2*m3*sin(2*q2 + 2*q3) + L2*L3*m3*sin(q3)...
- L2*a3*m3*sin(q3) + L2*L3*m3*sin(2*q2 + q3) - L2*a3*m3*sin(2*q2 + q3) -
2*L3*a3*m3*sin(2*q2 + 2*q3)))/2;
c21=(dq1*(I3y*sin(2*q2 + 2*q3) - I3x*sin(2*q2 + 2*q3) - I2x*sin(2*q2) +
I2y*sin(2*q2) + a3^2*m3*sin(2*q2 + 2*q3) + L2^2*m2*sin(2*q2) +
L2^2*m3*sin(2*q2) ...
+ a2^2*m2*sin(2*q2) + L3^2*m3*sin(2*q2 + 2*q3) + 2*L2*L3*m3*sin(2*q2 +
q3) - 2*L2*a3*m3*sin(2*q2 + q3) - 2*L2*a2*m2*sin(2*q2) - 2*L3*a3*m3*sin(2*q2
+ 2*q3)))/2;
c22=-L2*dq3*m3*sin(q3)*(L3 - a3);
c23=-L2*m3*sin(q3)*(dq2 + dq3)*(L3 - a3);
c31=(dq1*(I3y*sin(2*q2 + 2*q3) - I3x*sin(2*q2 + 2*q3) + a3^2*m3*sin(2*q2 +
2*q3) + L3^2*m3*sin(2*q2 + 2*q3) ...
+ L2*L3*m3*sin(q3) - L2*a3*m3*sin(q3) + L2*L3*m3*sin(2*q2 + q3) -
L2*a3*m3*sin(2*q2 + q3) - 2*L3*a3*m3*sin(2*q2 + 2*q3)))/2;
c32=L2*dq2*m3*sin(q3)*(L3 - a3);
c33=0;
C=[c11,c12,c13;c21,c22,c23;c31,c32,c33];
%LUC KO THE
Q=[ 0;-m*g*(L3*cos(q2 + q3) + L2*cos(q2));-m*g* L3*cos(q2 + q3)];
%Khau 2
m2=6.44; %[kg]
I2x=0.01; %[kg m2]
I2y=0.09; %[kg m2]
I2z=0.1; %[kg m2]
a2=.18; %[m]
L2=0.350; %[m]
%khau 3
m3=6.64; %[kg]
I3x=.01; %[kg m2]
I3y=.08; %[kg m2]
I3z=0.09; %[kg m2]
a3=.15; %[m]
L3=0.325; %[m]
%MA TRAN C
c11=(I2x*dq2*sin(2*q2))/2 - (I2y*dq2*sin(2*q2))/2 + (I3x*dq2*sin(2*q2 +
2*q3))/2 + (I3x*dq3*sin(2*q2 + 2*q3))/2 - (I3y*dq2*sin(2*q2 + 2*q3))/2 -
(I3y*dq3*sin(2*q2 + 2*q3))/2 ...
- (L2^2*dq2*m2*sin(2*q2))/2 - (L2^2*dq2*m3*sin(2*q2))/2 -
(a2^2*dq2*m2*sin(2*q2))/2 - (L3^2*dq2*m3*sin(2*q2 + 2*q3))/2 -
(L3^2*dq3*m3*sin(2*q2 + 2*q3))/2 - (a3^2*dq2*m3*sin(2*q2 + 2*q3))/2 ...
- (a3^2*dq3*m3*sin(2*q2 + 2*q3))/2 + L2*a2*dq2*m2*sin(2*q2) +
L3*a3*dq2*m3*sin(2*q2 + 2*q3) + L3*a3*dq3*m3*sin(2*q2 + 2*q3) -
(L2*L3*dq3*m3*sin(q3))/2 + (L2*a3*dq3*m3*sin(q3))/2 ...
- L2*L3*dq2*m3*sin(2*q2 + q3) - (L2*L3*dq3*m3*sin(2*q2 + q3))/2 +
L2*a3*dq2*m3*sin(2*q2 + q3) + (L2*a3*dq3*m3*sin(2*q2 + q3))/2;
c12=-(dq1*(I3y*sin(2*q2 + 2*q3) - I3x*sin(2*q2 + 2*q3) - I2x*sin(2*q2) +
I2y*sin(2*q2) + a3^2*m3*sin(2*q2 + 2*q3) + L2^2*m2*sin(2*q2) +
L2^2*m3*sin(2*q2) + a2^2*m2*sin(2*q2)...
+ L3^2*m3*sin(2*q2 + 2*q3) + 2*L2*L3*m3*sin(2*q2 + q3) -
2*L2*a3*m3*sin(2*q2 + q3) - 2*L2*a2*m2*sin(2*q2) - 2*L3*a3*m3*sin(2*q2 +
2*q3)))/2;
c13=-(dq1*(I3y*sin(2*q2 + 2*q3) - I3x*sin(2*q2 + 2*q3) + a3^2*m3*sin(2*q2 +
2*q3) + L3^2*m3*sin(2*q2 + 2*q3) + L2*L3*m3*sin(q3)...
- L2*a3*m3*sin(q3) + L2*L3*m3*sin(2*q2 + q3) - L2*a3*m3*sin(2*q2 + q3) -
2*L3*a3*m3*sin(2*q2 + 2*q3)))/2;
c21=(dq1*(I3y*sin(2*q2 + 2*q3) - I3x*sin(2*q2 + 2*q3) - I2x*sin(2*q2) +
I2y*sin(2*q2) + a3^2*m3*sin(2*q2 + 2*q3) + L2^2*m2*sin(2*q2) +
L2^2*m3*sin(2*q2) ...
+ a2^2*m2*sin(2*q2) + L3^2*m3*sin(2*q2 + 2*q3) + 2*L2*L3*m3*sin(2*q2 +
q3) - 2*L2*a3*m3*sin(2*q2 + q3) - 2*L2*a2*m2*sin(2*q2) - 2*L3*a3*m3*sin(2*q2
+ 2*q3)))/2;
c22=-L2*dq3*m3*sin(q3)*(L3 - a3);
c23=-L2*m3*sin(q3)*(dq2 + dq3)*(L3 - a3);
c31=(dq1*(I3y*sin(2*q2 + 2*q3) - I3x*sin(2*q2 + 2*q3) + a3^2*m3*sin(2*q2 +
2*q3) + L3^2*m3*sin(2*q2 + 2*q3) ...
+ L2*L3*m3*sin(q3) - L2*a3*m3*sin(q3) + L2*L3*m3*sin(2*q2 + q3) -
L2*a3*m3*sin(2*q2 + q3) - 2*L3*a3*m3*sin(2*q2 + 2*q3)))/2;
c32=L2*dq2*m3*sin(q3)*(L3 - a3);
c33=0;
C=[c11,c12,c13;c21,c22,c23;c31,c32,c33];
%LUC KO THE
Q=[ 0;
-m*g*(L3*cos(q2 + q3) + L2*cos(q2));
-m*g* L3*cos(q2 + q3)];
end
1. Wikipedia
https://vi.wikipedia.org/wiki/%C4%90%E1%BB%99ng_c%C6%A1_b%C6%B0%E1%
BB%9Bc (Động cơ bước)
https://vi.wikipedia.org/wiki/%C4%90i%E1%BB%81u_ch%E1%BA%BF_%C4%91%E
1%BB%99_r%E1%BB%99ng_xung (Điều chế độ rộng xung)
2. arduino.vn
http://arduino.vn/bai-viet/685-huong-dan-dieu-khien-dong-co-buoc
3. PGS.TS Phan Bùi Khôi . Bài giảng Robotic. Trường ĐH Bách Khoa Hà Nội
2014.
4. Tài liệu trên internet.
5. GS.TSKH Nguyễn Văn Khang . Cơ sở Robot công nghiệp . Nhà xuất bản
Khoa học và Kỹ thuật, Hà Nội 2011.