资源简介
将并联机器人的目的坐标变成电机的旋转角度,采用MATLAB软件写成的算法,可以在LABVIEW和其他软件联合编程调用。
代码片段和文件信息
function solution=inverfun(PxxPyyPzzRRrrL11L22)
%Delta并联机器人运动学逆解
% Px X轴位移量(mm)
% Py Y轴位移量(mm)
% Pz Z轴位移量(mm)
% R 基座电机分布圆半径(mm)
% r 动平台铰接点分布圆半径(mm)
% L1 驱动臂长度(mm)
% L2 从动臂长度(mm)
Px=Pxx;Py=Pyy;Pz=Pzz;R=RR; r=rr; L1=L11; L2=L22;
function L2=s1fun(s1) %计算1号电动机转角
L2 =abs((Py - R + r - L1*cos((pi*s1)/180))*(conj(Py) - conj(R) + conj(r) - conj(L1)*cos((pi*conj(s1))/180)) + (conj(Pz) - conj(L1)*sin((pi*conj(s1))/180))*(Pz - L1*sin((pi*s1)/180)) + (Px - (4967757600021511*R)/81129638414606681695789005144064 + (4967757600021511*r)/81129638414606681695789005144064)*(conj(Px) - (4967757600021511*conj(R))/81129638414606681695789005144064 + (4967757600021511*conj(r))/81129638414606681695789005144064))^(1/2);
end
x0=[0]; %设定迭代初值
options=optimset(‘TolFun‘1e-64); %设置fsolve函数优化选项
s1=fsolve(@s1funx0options); %求解函数
function L2=s2fun(s2) %计算2号电动机转角
L2 =abs((conj(Py) + conj(R)/2 - conj(r)/2 + (conj(L1)*cos((pi*conj(s2))/180))/2)*(Py + R/2 - r/2 + (L1*cos((pi*s2)/180))/2) + (conj(Px) + (3^(1/2)*conj(R))/2 - (3^(1/2)*conj(r))/2 + (3^(1/2)*conj(L1)*cos((pi*conj(s2))/180))/2)*(Px + (3^(1/2)*R)/2 - (3^(1/2)*r)/2 + (3^(1/2)*L1*cos((pi*s2)/180))/2) + (conj(Pz) - conj(L1)*sin((pi*conj(s2))/180))*(Pz - L1*sin((pi*s2)/180)))^(1/2);
end
x0=[0]; %设定迭代初值
options=optimset(‘TolFun‘1e-64); %设置fsolve函数优化选项
s2=fsolve(@s2funx0options); %求解函数lxxfun
function L2=s3fun(s3) %计算3号电动机转角
L2 =abs((conj(Py) + conj(R)/2 - conj(r)/2 + (conj(L1)*cos((pi*conj(s3))/180))/2)*(Py + R/2 - r/2 + (L1*cos((pi*s3)/180))/2) + (conj(Px) - (3^(1/2)*conj(R))/2 + (3^(1/2)*conj(r))/2 - (3^(1/2)*conj(L1)*cos((pi*conj(s3))/180))/2)*(Px - (3^(1/2)*R)/2 + (3^(1/2)*r)/2 - (3^(1/2)*L1*cos((pi*s3)/180))/2) + (conj(Pz) - conj(L1)*sin((pi*conj(s3))/180))*(Pz - L1*sin((pi*s3)/180)))^(1/2);
end
x0=[0]; %设定迭代初值
options=optimset(‘TolFun‘1e-64); %设置fsolve函数优化选项
s3=fsolve(@s3funx0options); %求解函数lxxfun
solution=[s1;s2;s3]
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2198 2015-08-10 02:41 delta反解\inverfun.asv
文件 2198 2015-08-07 11:22 delta反解\inverfun.m
文件 2825 2015-08-07 10:55 delta反解\RSS_parallel.asv
文件 2747 2015-08-07 10:56 delta反解\RSS_parallel.m
文件 127 2015-08-07 11:08 delta反解\Unti
目录 0 2015-08-11 11:25 delta反解
----------- --------- ---------- ----- ----
10095 6
评论
共有 条评论