EDA365电子论坛网
标题:
#技术风云榜#matlab机器人 生成空间轨迹包络图
[打印本页]
作者:
ededewa
时间:
2020-11-24 14:44
标题:
#技术风云榜#matlab机器人 生成空间轨迹包络图
+ A1 w. v/ F S) i
% =0=617.8157 =1= 640.8633 =2= 759.2167 =3=1335.9324 =4= 129.8272 =5= 133.5056 =6= 185.9378
2 r8 z1 T: E# v, n$ y+ U) w
%%%【【 关节在前面,连杆长度在后面】】
- R/ ~% p' s9 n) B
%变换顺序是右乘 先绕老Z轴确定 x轴 夹角(关节角)--》沿着新z轴移动 (横距)长度 ---》沿着新x轴移动(关节长度)——》 在绕新轴X确定z轴夹角(扭角)
; c8 B; ]- z8 M: ]* h+ j& h3 S
% l.m = dh(6); %%%%%连杆质量
1 Z& [4 ]& r! n: l: e. L# T$ ]
% l.r = dh(7:9)'; % a column vector
% i0 S- e( n+ u
% v = dh(10:15);
- W* m8 s) j3 g% w* ~
% l.I = [ v(1) v(4) v(6) %%%惯性矩真
8 _1 c0 t3 o4 f8 |
% v(4) v(2) v(5)
9 s+ C0 W$ n+ Y% S3 h/ a+ a4 N! O7 O
% v(6) v(5) v(3)];
4 T) X( Y% V, U7 t) `
r=[0 0 0]
0 V" y4 s0 Q7 @+ r9 c5 p( v
v=[ 0 0 0 0 0 0 0]
w0 _" y7 h* l* ]* E! O
$ X$ K* ^* S0 v$ @ S
L{1} = link([-pi/2 0.1 0 1258.68 0 ],'sta');
m1 W* P9 [- N1 V
L{2} = link([0 759.2167 0 0 0 ],'sta');
6 ~ y* H2 N" t7 L S0 q( D# |1 @$ L
L{3} = link([0 1335.9324 0 0 0 ],'sta');
A" \% y- n! z
L{4} = link([pi/2 0 0 0 0 ],'sta');
M9 J) T! }, n1 @2 m. f0 ?
L{5} = link([-pi/2 0 0 449.2706 0 ], 'sta');
' K. s) @ S, a2 V! F3 X
L{6} = link([0 0 0 0 0 ],'sta');
2 O# N2 u# `& s* a
p560m=robot(L);
! n e) d9 P0 C6 ^" _/ h
c=[ 0 0 0 pi/2 pi/2 0];%%初始化关节角
u' L5 W- J; o) v' }
drivebot(p560m,c)
* y0 ^8 B" C, n; Q p
u=pi/180;
2 b$ ~$ f+ g0 X3 _+ k+ l
for i1=1:12:360
! ^) J4 D6 u. }1 ]
for i2=1:36:360
' [/ D" k4 r* G- ~7 a2 u6 M5 v0 [2 f5 N
for i3=1:60:360
# z5 J0 c; R z
for i4=1:60:360
) \# e* ] b) L
c1=[u*i1 u*i2 u*i3 u*i4 0 0];
$ E+ R6 Z1 f5 D* }% e
T2=fkine(p560m,c1);
+ o' G9 @4 v( I( N, R
x=T2(1,4);
6 ~ s" Y# _ j9 @3 o) n7 n( \. f
y=T2(2,4);
# I2 g) F/ |3 n+ y% H9 _0 d3 {
z=T2(3,4);
/ [6 {5 f2 @) I6 J
3 ?3 i2 P1 E! x1 N
hold on;
& l( y$ G( V* f( w
plot3(x,y,z,'+','color','g');%画出运动轨迹
, q. o4 h5 |: l8 C. F/ j
0 Q+ N! \$ ?, I
end
7 E3 Z( }! H) O$ r2 ~+ n& g
end
8 d- V$ o2 i( U
end
$ [+ O1 l4 [# Y) A4 i6 W* B
end
% D( u) n4 G. Y% [: ]
title('整个空间包络图');
7 _: v+ j" Y9 `% C5 |. b' f
T1=fkine(p560m,c);
- g0 M" t; ^! f5 X7 Z' M8 x
T2=[0 0 0 500;0 0 0 500;0 0 0 0;0 0 0 0];
" [: _- O0 h5 @2 u
t=0:1:100;
0 U" d$ B' P% a! r8 U, e* k' O
T=ctraj(T1,T2,length(t));
5 H6 D9 y$ @7 B+ K
p=ikine(p560m,T,c);
. X7 x: b& ]+ o. D2 W G
3 V* y; d# ^2 q5 I C0 ~
for i=1:1:length(t)% 正常轨迹 i=1:length(t)
7 y6 b2 c6 \" e/ v
x(i)=T(1,4,i);
- H0 U: x( c! x5 }/ T- Y
y(i)=T(2,4,i);
* r" m% N- Q* c2 n, A! Q
z(i)=T(3,4,i);
) h$ d" L. ^2 A7 S4 N. [
end
: k+ P3 {% }7 W6 S
hold on;
' B, K( d( Q" @+ }# z [4 G
plot3(x,y,z,'ro');%画出运动轨迹22222
$ F$ A( w8 A; e4 l7 g2 k
plot(p560m,p);
0 X a& f7 H' ~
hold off;
+ x- a: Q3 t6 K4 c( ^2 j
7 G# g9 g- N" K+ b" R3 u
figure,plot(p560m,c);
6 b# x2 t% [* d
for i1=1%%%%画出 xz平面片图 包络图
* G4 ~2 j8 Z: q' s/ J/ Q: q% o3 w* h, C
for i2=1:36:360
[6 G$ D. b' r' `. H
for i3=1:36:360
6 o) ^) y! y9 L5 u" e2 Q% K5 U6 @1 B
for i4=1:36:360
* L" D+ l$ |7 f5 g( L7 ~2 i9 h
c1=[u*i1 u*i2 u*i3 u*i4 0 0];
1 c" _% q8 t& |9 W8 j
T2=fkine(p560m,c1);
2 Y/ x' D7 v! U( c0 ~/ Z
x=T2(1,4);
+ f7 L3 j5 y0 I6 j c. P9 N; v
y=T2(2,4);
" ]6 q! S; x" D
z=T2(3,4);
) A0 h0 `, o9 h
x3 S& p" h% O8 \
hold on;
: _2 t5 J2 C3 Y
plot3(x,y,z,'*','color','m');%画出运动轨迹
$ }! |) l' W! U6 ^5 M% m( |
+ z- q* X) X1 z$ y! [2 u
end
3 u$ W% p, t1 C' V* y7 @+ j
end
: o: i9 o( C& n" _
end
' L# A, X% M6 h# v7 S6 Y3 B& B6 k
end
( x) e7 `9 l; J- ?$ {
5 z) G# @$ ^4 [% [) g1 u- o
for i1=90%%%%画出 yz平面包络图
$ e+ \9 p4 V. |0 K" t4 u3 d
for i2=1:36:360
- V. f( f" H9 ]
for i3=1:36:360
! c! F0 l7 \& E) v
for i4=1:36:360
0 o X3 s2 K& s1 s/ E8 V' Q
c1=[u*i1 u*i2 u*i3 u*i4 0 0];
' d/ z1 @( ^% G& s- ?7 D
T2=fkine(p560m,c1);
" {. {. ^& _$ ]$ i! t* l$ H
x=T2(1,4);
! {. \8 i0 m1 o9 ~% M% y& `6 ~
y=T2(2,4);
+ O/ f3 ~" U4 f6 t# w- h
z=T2(3,4);
4 b o2 W' \0 D8 b. U/ R! C
$ r& j% K8 i' X% V+ d q7 X- J8 B
hold on;
* x8 t4 [: Y3 W; }/ i- w" _2 `7 A
plot3(x,y,z,'*','color','g');%画出运动轨迹
2 i+ C+ v2 f. ^( U
- V: i3 i) E- D* ]5 F
end
, ]( L( m1 C# r4 T
end
+ _ G5 a1 m7 H8 Q
end
I% b% w! j0 {- e! {. B4 Y" u
end
2 @) o/ C! M E- w( j# j
2 `+ H/ B$ L' H W8 n7 }7 W% Z
for i1=1:1:360%%%%画出 xz平面片图 和 yz平面包络图
" l% V- Z# \( h `! C7 m: @
for i2=1:360:360
, N5 D6 w8 \5 ~1 ?2 o6 A$ o
for i3=1:360:360
0 H9 _* t+ s' w" f+ x
for i4=1:360:360
4 B" W% `8 p% z2 n; @4 X
c1=[ u*i1 0 0 pi/2 pi/2 0];
3 g2 V* D3 T- W n, T
T2=fkine(p560m,c1);
4 D. ~2 M1 z# f' c0 d
x=T2(1,4);
$ {4 U( J/ D$ Y4 u" K+ v8 B( p
y=T2(2,4);
6 [& u6 j& m5 S, h5 |! I2 i3 @
z=T2(3,4);
: M8 G5 {7 P& N/ S" z( [- e, |
$ H) G4 a2 m* c1 u/ D
hold on;
! H' h8 j! e- c# F
plot3(x,y,z,'*','color','r');%画出运动轨迹
1 f- O! n6 e6 l
3 O) L& D; b( ~6 H. B& W6 |& M
end
' p7 s. T; M9 Y
end
8 h% U% {! p0 i6 a- z b
end
5 ]/ S' n. _( H
end
+ _& _" D8 ]7 |! B
title(' yz --- yz---xy平面包络图');
8 E* P" y0 K) ~6 V
: D8 h+ o! B# S1 I% w- v
1.png
(51.1 KB, 下载次数: 7)
下载附件
保存到相册
2020-11-24 14:44 上传
/ k1 S& T( m, h* i$ S1 Q6 C
: Q0 D4 i; ?8 a- C
作者:
NNNei256
时间:
2020-11-24 15:38
matlab机器人 生成空间轨迹包络图
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2