好久没弄博客了,这段时间干点杂活,以下记录。
1.jaka机器人接0v信号输入使用NPN传感器
2.输出是继电器导通端口两连线
3.jaka机器人欧拉角顺序是ZYX
PNP和NPN传感器
pnp输出低电平即0v
npn输出高电平
连接plc时应该有个公共端com端要连,由于电路导通需要,pnp时公共端高电压,npn时低电压
jaka机器人参数
dh参数
机器人实际使用的dh参数和手册给的值有误差
以下是matlab机器人工具箱建立的jaka zu3模型
%[0 d a af 0]
l0=Link([0 0.14755 0 pi/2 0],'standard');
l1=Link([0 0 0.246 0 0],'standard');
l2=Link([0 0 0.19004 0 0],'standard');
l3=Link([0 -0.11421 0 pi/2 0],'standard');
l4=Link([0 0.1155 0 -pi/2 0],'standard');
l5=Link([0 0.103 0 0 0],'standard');
jaka=SerialLink([l0,l1,l2,l3,l4,l5]);
jaka机器人建模时中间关节X方向和matlab中不完全一致,这个问题是由于有一个没按标准DH模型建立,但是不影响机器人最后末端的姿态。
欧拉角选取
之前工作到上一步一直错误,今天无聊想起来又一个个欧拉角试了下,jaka机器人欧拉角顺序是ZYX
机器人工具箱默认的是ZYZ(tr2eul)和XYZ(tr2rpy)
根据公式写出机器人旋转矩阵到角度解
function xyz=tr2ZYXeul(R)
x=atan2(R(3,2),R(3,3));
y=-asin(R(3,1));
z=atan2(R(2,1),R(1,1));
xyz=[x y z]*180/pi;
end
代码只对一般情况成立,对特殊角度和角度值没有进行分析。
动力学
等忙完整理一下