Professional Documents
Culture Documents
MSSV:20162542
BÁO CÁO BÀI TẬP LỚN ROBOT (BÀI TẬP 2).
Đề bài
Cho Robot θ – r có r1 = 0,6 m; m1 = m2 = 3 Kg. Khớp tịnh tiến chuyển động với
tốc độ r = 0,05 m/s. Khớp quay quay với tốc độ θ = π/15 rad/s(12 độ/s). Thời
gian chuyển động là 5s. Giá trị góc ban đầu là 0o.
Xác định góc θ của Robot ở cuối hành trình chuyển động.
Hãy xác định momen ở khớp quay và lực tổng hợp ở khớp tịnh tiến khi Robot
ở vị trí cuối hành trình chuyển động.
Thiết kế bộ điều khiển “Bù trọng lượng”
Mô phỏng hệ thống.
BÀI LÀM
a. Xác định góc θ của Robot ở cuối hành trình chuyển động.
Góc θ của Robot ở cuối hành trình chuyển động:
θc =θ 1+θ . t=0+12.5=60(độ)
b. Xác định momen ở khớp quay và lực tổng hợp ở khớp tịnh tiến khi
Robot ở vị trí cuối hành trình chuyển động.
Hàm Lagrange là hiệu của tổng động năng K và tổng thế năng L của hệ:
L K P 11\* MERGEFORMAT ()
Momen (lực) theo phương trình chuyển động Lagrange:
d L L
M i Fi
dt q i qi
22\* MERGEFORMAT ()
Trong đó, v1 là tốc độ chuyển động tịnh tiến của điểm A (tâm thanh nối 1)
Vị trí điểm A so với khung tọa độ gốc:
X 1 r1.cos X r1.sin .
1
Y1 r1.sin Y1 r1.cos . 99\* MERGEFORMAT ()
v12 X 12 Y12 r12 .sin 2 . 2 r12 .cos 2 . 2 r12 . 2 1010\*
MERGEFORMAT ()
Thay (10) vào (8) ta được:
1
K1 m1r12 2
2 1111\* MERGEFORMAT ()
Động năng thanh nối 2 (J2=0):
v22
K 2 m2
2 1212\* MERGEFORMAT ()
Trong đó, v2 là tốc độ chuyển động tịnh tiến của điểm B (tâm thanh nối 2)
Vị trí điểm B so với khung tọa độ gốc:
X 2 r.cos X r.sin . r .cos
2
Y2 r.sin Y2 r.cos . r .sin
1313\*
MERGEFORMAT ()
v22 X 22 Y22 r 2 . 2 r 2 1414\* MERGEFORMAT ()
Thay (14) vào (12) ta được:
1
K 2 .m2 . r 2 . 2 r 2
2
1515\* MERGEFORMAT ()
Thay (11) và (15) vào (7) ta được tổng động năng K của hệ của hệ:
1 1
K K1 K 2 .m1.r12 . 2 .m2 . r 2 . 2 r 2
2 2
1616\*
MERGEFORMAT ()
Hàm Lagrange
Từ các biểu thức (6) và (16) thay vào (1) ta được:
1 1
L K P .m1.r12 . 2 .m2 . r 2 . 2 r 2 m1.g .r1.sin m2 .g.r.sin
2 2 1717\*
MERGEFORMAT ()
Tính momen khớp quay ( qi ):
Áp dụng (2) với qi ta được:
d L L
M
dt 1818\* MERGEFORMAT ()
Từ (18) ta có:
L
m1.r12 . m2 .r.
d L
dt
2
m1.r1 . m2 . 2.r.r .θ r .
2
L
m1.g .r1.cos m2 .g .r.cos
1919\* MERGEFORMAT ()
m2 . r
dt r
L
m2 .r . 2 m2 .g .sin
r 2222\* MERGEFORMAT ()
Thay (22) vào (21) ta được: Lực khớp tịnh tiến
F m2 r m2 r 2 m2 g sin 2323\* MERGEFORMAT ()
Tính toán mô men khớp quay M và lực ở khớp tịnh tiến khi Robot ở cuối
hành trình chuyển động:
Thay các số liệu:
m1 m2 3( Kg )
r1 0, 6m , r 0,1m / s
t 5s r2 rc r1 rt
0.6 5.0, 05 0.85(m)
,
r 0 (do khớp tịnh tiến chuyển động với vận tốc không đổi)
2 c / 3, 2 c / 15,2 c 0 (do khớp quay chuyển động với vận
Trong đó,
q
r : Ma trận biến khớp
M
M
F : Ma trận mô-men hoặc lực của khớp,
m1r12 m2 r 2 0
H
0 m2
: Ma trận thành phần tỉ lệ với gia tốc
m rr m2 r
C 2
m2 r
0
: Ma trận thành phần tỉ lệ với tốc độ
(m r m2 r ) g cos
G 11
m2 g sin : Ma trận mô-men và lực của trọng lực.
Mục đích bộ điều khiển: khử ảnh hưởng của G (q ) tới độ chính xác tĩnh (
eq 0
không phụ thuộc G).
Phương trình luật điều khiển PD bù trọng lượng có dạng:
M dk G (q ) K P K D q 2424\* MERGEFORMAT ()
Trong đó:
* q
q *
r r r r
k p 0
KP
0 k pr
k 0
K D d
0 kdr
%------------------------------------------------------
qdd1(i) = qd(1);
qdd2(i) = qd(2);
Aq1(i) = q(1); %Goc quay khop quay
Aq2(i) = q(2); %r
Adq1(i) = dq(1);%Toc do khop quay
Adq2(i) = dq(2);%Toc do khop tinh tien
AM1(i) = M(1); %Mo men khop quay
AM2(i) = M(2); %Luc truyen dong cho khop tinh
tien
AeTheta(i) = qd(1) - q(1); %Sai lech goc quay
Aer(i) = qd(2) - q(2); %Sai lech chuyen dong tinh
tien
%------------------------------------------------------
--
%Luu du lieu vao file
fprintf(file1,'%2.4f%2.4f%2.4f%2.4f%2.4f%3.4f
%3.4f\n',t,qd(1),q(1),qd(2),q(2),M(1),M(2));
end
fclose(file1);
%------------------------------------------------------
--
% Ve do thi ket qua mo phong
%------------------------------------------------------
--
figure
% Mo men khop
subplot(2,2,1,'FontSize',14)
plot1 = plot(At1,AM1,At1,AM2);
title('Momen khop quay va luc khop tinh tien');
set(plot1(1),'LineWidth',2.5,'DisplayName','Momen
khop 1');
set(plot1(2),'LineWidth',2.5,'LineStyle','--','Color','
r',...
'DisplayName','Luc khop 2');
xlabel('Thoi gian (s)');
ylabel('');
legend('show');
grid on;
% Sai so goc quay va tinh tien tren cung do thi
subplot(2,2,2,'FontSize',14)
plot1 = plot(At1,AeTheta,At1,Aer);
title('Sai so cac bien khop');
set(plot1(1),'LineWidth',2.5,'DisplayName','e(theta)');
set(plot1(2),'LineWidth',2.5,'LineStyle','--','Color','
r',...
'DisplayName','e(r)');
xlabel('Thoi gian (s)');
ylabel('');
legend('show');
grid on;
set(plot1(2),'LineWidth',2.5,'LineStyle','--','Color','
r',...
'DisplayName','r dat');
xlabel('Thoi gian (s)');
ylabel('');
legend('show','Location','NorthWest');
grid on;
% Phong to hinh
drawnow
jFig = get(handle(gcf), 'JavaFrame');
jFig.setMaximized(true);