KUKA机器人之了解简单的机器人程序

首先提出几个问题:

 

 

机器人是怎记住位置的?

机器人是怎么到达它的目标点的?

到达目标点的速度多快?

什么样的姿态到达?

机器人能不能识别障碍?

 

带着这些问题我们开始学习第一条指令

PTP运动指令

 

运动指令在示教器上是酱紫的。被称为“联机表单”,通过输入或者选择就可以实现运动指令的编辑

 

机器人就是通过这些运动指令记住自己需要到达的目标位置的。

 

我们来学习一下怎么添加一个这样的运动指令

 

前提条件

 已设置运行方式 T1

 机器人程序已选定。

1. 将 TCP 移向应被示教为目标点的位置。

2. 将光标置于其后应添加运动指令的那一行中。

3. 菜单序列指令 > 运动 > PTP。也可按下“运动”。

就会出现这样一个联机表单

 

1.运动类型 PTP/LIN/CIRC

2.目标点的名称

3.是否精确到达目标点

4.运行速度

5.运行参数

其中2和5都带有标志,这是可以点开跳出更多选项的窗口。

 

那么我们分别介绍一下:

1.运动类型 PTP/LIN/CIRC

PTP 是指从当前位置到达某一点的运行方式为,点到点方式

就是说不考虑两点之间的轨迹,机器人会6个轴同时启动同时停止,并且以主导轴(范围最大的轴)的运行速度,计算整个运行过程的运行速度。

 

 

LIN 是指直线运动,即当前位置到达目标点的运行方式,以直线方式运行。

 

CIRC 是指圆弧运动,圆弧运动需要一个辅助点和目标点,两个运动点来实现,其运行轨迹是从当前位置到达目标点,并经过辅助点形成一个圆弧的轨迹运动

 

 

2.目标点的名称。是指我们需要到达的目标点的名字,新打开一个运动指令会默认以Px的形式出现。

3.是否精确到达目标点。在我们编辑一个程序时,经常会为了躲避障碍,或者在调整姿态时添加过度点,这些过度点不需要机器人精确到达这个位置,更不需要机器人到达位置停下来,因此这样的点就可以设置成“CONT”。

这样可以缩短节拍,让机器人的动作更流畅,并且可以减少机器人的磨损。

 

如图,P2点就是我们添加了“CONT”的运动指令。
 

4.运行速度 。指机器人到达目标点以多块的速度到达。这里需要注意一下速度的单位。

第一个选框选PTP运动时,速度单位是“%”,LIN/CIRC时这里的单位是M/S

就是说以轨迹运动,是每秒多少米的速度单位。而PTP运动则是以机器人各个电机的功率的百分比来计算的。

因此。点位示教的好的,就会运行更快、更节省能源、减少机器人的机械磨损。

 

5运动参数 这里包含了加速度、逼近距离、姿态引导

 加速度,是指从静止状态到达设定速度的时间。

 轨迹逼近距离(如果在栏 (3) 中输入了 CONT),是指逼近的范围大小

 姿态引导(仅限于沿轨迹的运动),在LIN和CIRC运动中以什么样的姿态引导方式到达目标点。分为“标准”“恒定不变”


如果点开1或者5旁边的符号会分别跳出以下两个选框。

 

 

不需要多说 看图就知道什么意思啦

 

====================================================================

一个运动指令其实也是一个折合,打开来就是这个样子的,刚刚所填写的信息都会以不同方式在这下面调用或者传输到其他子程序里面。

 

在8.5以后出现了SPTP指令,这个指令的折合展开来看,与以前版本有很大的不同。

这里面的句法完全变了个模样。

;FOLD SPTP P1 Vel=100 % PDAT1 Tool[1] Base[1] ;%{PE};FOLD Parameters ;%{h};Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=P1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP;ENDFOLDSPTP XP1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FP1), $BASE = SBASE(FP1.BASE_NO), $IPO_MODE = SIPO_MODE(FP1.IPO_FRAME), $LOAD = SLOAD(FP1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0);ENDFOLD

SPTP XP1 WITH...这后面接参数

这样一来我们就可以更方便的拼写出一条运动指令了。要比原来的PTP方便很多。

也有人把这种叫做样条运动。

 

另外还有样条组等等运动方式,据说打磨方面会使用更多。我也不知道怎么用就不多说了。

 

看到这里最开始的几个问题都有答案了吧

 

如果你需要了解更多相关数据请关注我哦。

 

  • 9
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
库卡机器⼈怎么⽤c语⾔写程序,KUKA机器⼈之了解简单的机 器⼈程序 ⾸先提出⼏个问题: 机器⼈是怎记住位置的? 机器⼈是怎么到达它的⽬标点的? 到达⽬标点的速度多快? 什么样的姿态到达? 机器⼈能不能识别障碍? 带着这些问题我们开始学习第⼀条指令 PTP运动指令 运动指令在⽰教器上是酱紫的。被称为"联机表单",通过输⼊或者选择就可以实现运动指令的编辑 机器⼈就是通过这些运动指令记住⾃⼰需要到达的⽬标位置的。 我们来学习⼀下怎么添加⼀个这样的运动指令 前提条件 已设置运⾏⽅式 T1 机器⼈程序已选定。 1. 将 TCP 移向应被⽰教为⽬标点的位置。 2. 将光标置于其后应添加运动指令的那⼀⾏中。 3. 菜单序列指令 > 运动 > PTP。也可按下"运动"。 就会出现这样⼀个联机表单 1.运动类型 PTP/LIN/CIRC 2.⽬标点的名称 3.是否精确到达⽬标点 4.运⾏速度 5.运⾏参数 其中2和5都带有 标志,这是可以点开跳出更多选项的窗⼝。 那么我们分别介绍⼀下: 1.运动类型 PTP/LIN/CIRC PTP 是指从当前位置到达某⼀点的运⾏⽅式为,点到点⽅式 就是说不考虑两点之间的轨迹,机器⼈会6个轴同时启动同时停⽌,并且以主导轴(范围最⼤的轴)的运⾏速度,计算整个运⾏过程的运⾏速 度。 LIN 是指直线运动,即当前位置到达⽬标点的运⾏⽅式,以直线⽅式运⾏。 CIRC 是指圆弧运动,圆弧运动需要⼀个辅助点和⽬标点,两个运动点来实现,其运⾏轨迹是从当前位置到达⽬标点,并经过辅助点形成⼀ 个圆弧的轨迹运动 2.⽬标点的名称。是指我们需要到达的⽬标点的名字,新打开⼀个运动指令会默认以Px的形式出现。 3.是否精确到达⽬标点。在我们编辑⼀个程序时,经常会为了躲避障碍,或者在调整姿态时添加过度点,这些过度点不需要机器⼈精确到达 这个位置,更不需要机器⼈到达位置停下来,因此这样的点就可以设置成"CONT"。 这样可以缩短节拍,让机器⼈的动作更流畅,并且可以减少机器⼈的磨损。 如图,P2点就是我们添加了"CONT"的运动指令。 4.运⾏速度 。指机器⼈到达⽬标点以多块的速度到达。这⾥需要注意⼀下速度的单位。 第⼀个选框选PTP运动时,速度单位是"%",LIN/CIRC时这⾥的单位是M/S 就是说以轨迹运动,是每秒多少⽶的速度单位。⽽PTP运动则是以机器⼈各个电机的功率的百分⽐来计算的。 因此。点位⽰教的好的,就会运⾏更快、更节省能源、减少机器⼈的机械磨损。 5运动参数 这⾥包含了加速度、逼近距离、姿态引导 加速度,是指从静⽌状态到达设定速度的时间。 轨迹逼近距离(如果在栏 (3) 中输⼊了 CONT),是指逼近的范围⼤⼩ 姿态引导(仅限于沿轨迹的运动),在LIN和CIRC运动中以什么样的姿态引导⽅式到达⽬标点。分为"标准""恒定不变" 如果点开1或者5旁边的 符号会分别跳出以下两个选框。 不需要多说 看图就知道什么意思啦 ==================================================================== ⼀个运动指令其实也是⼀个折合,打开来就是这个样⼦的,刚刚所填写的信息都会以不同⽅式在这下⾯调⽤或者传输到其他⼦程序⾥⾯。 在8.5以后出现了SPTP指令,这个指令的折合展开来看,与以前版本有很⼤的不同。 这⾥⾯的句法完全变了个模样。 ;FOLD SPTP P1 Vel=100 % PDAT1 Tool[1] Base[1] ;%{PE};FOLD Parameters ;%{h};Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=P1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP;ENDFOLDSPTP XP1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FP1), $BASE = SBASE(FP1.BASE_NO), $IPO_MODE = SIPO_MODE(FP1.IPO_FRAME), $LOAD = SLOAD(FP1.TOOL_NO)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值