小伙伴们在日常应用abb机器人过程中,也遇到过在更换不同工具后由于工具的差异造成轨迹偏差的问题吧?今天分享一下如何通过修改tcp数据来批量偏移轨迹的方法。(结尾附程序)
第一步 :使用原始工具示教一个参考点,注意使用的tooldata与工具一致。
第二步 :更换新的工具,手动增量模式操作摇杆,将新工具的tcp点与参考点对齐,与第一步位置一致,并记录xyz各方向的移动数据,例如;x 72,y 0,z 92。
第三步 :准备笔记本电脑,将tcp_offset模块导入电脑虚拟系统,打开程序将原始的工具数据中的“tframe”值更新到original变量内,将第二步记录的数据取反,更新到offset变量内例如;x -72,y 0,z -92,四元组设置为q1 1,q2 0,q3 0,q4 0表示坐标系的转角无变化。
第四步 :运行tcp_offset_1()程序显示出计算结果;pos_x,pos_y,pos_z数据。
第五步:将运算出的tooldata结果数据更新到原始的tooldata数据中。
第六步:运行第一步示教的参考程序,工具的tcp可以运行到参考点,表示偏移成功。
程序代码:
module tcp_offset
pers tooldata original:=[true,[[352.29,-219.87,579.09],[0.053056,0.606439,-0.069145,0.790339]],[96.3,[19.3,21.5,435.9],[1,0,0,0],13.275,13.407,2.633]];
pers tooldata deviation:=[true,[[-72,0.0,-92.0],[1,0,0,0]],[96.3,[19.3,21.5,435.9],[1,0,0,0],13.275,13.407,2.633]];var pose pose_original;var pose pose_deviation;var pose pose_resuit;var string pos_x;var string pos_y;var string pos_z;proc tcp_offset_1()
pose_original:= original.tframe; pose_deviation:= deviation.tframe;pose_resuit := posemult(pose_original, pose_deviation);pos_x:=numtostr(pose_resuit.trans.x,6);pos_y:=numtostr(pose_resuit.trans.y,6);pos_z:=numtostr(pose_resuit.trans.z,6);tpwrite calculation resuits:;tpwrite pos_x:+ pos_x + pos_y:+pos_y + pos_z: + pos_z;tpwrite end;endprocendmodule
照明墙壁的能源成本是多少?
盘点诺基亚复苏之路5摄旗舰即将上市
示波器数字测量与分析:凭借出色功能实现最佳数字分析
PLC指示灯不亮,是PLC电源板烧了吗?
浅谈连接器测试步骤
如何通过修改TCP数据来批量偏移轨迹的方法
半导体“寒冬”到底是个怎样的寒冬?
具有有源输出放电功能的线性稳压器需要快速关断的目标系统
如何在Petalinux下定位decice-tree错误的一些技巧
如何评估数字货币的基本价值
中国移动发挥基础5G能力,提供“网-边-云”一站式孵化服务
安徽省专利金奖名单公布!本源量子这项专利获奖
摩托车刹车灯延时熄灯电路图
企业怎样打造一个物联网卡服务器
DS9098P iButton固定圈
压力传感器的分类 各种压力传感器的原理
H.264视频编解码FPGA低延迟解决方案
AD670模数转换电路
各接口传输速率列表分享
G20峰会中美重启贸易磋商,关税取消有望?