目录
一、准备工作
二、学习手动移动机器人
三、项目配置
1. 设置机器人IP地址
2. 电脑和机器人通过网线连接
3. 查找并打开项目
4. 项目配置
5. 项目上传
6. 检验IO配置
四、编程
1. 新建程序
2. 程序调用
3. 变量(声明&初始化&运算)
4. 程序框架搭建(循环&判断&变量)
5. 运动指令
6. 信号指令
7. 程序运行
五、外部自动运行
1. 配置主程序(CELL.SRC)
2. 时序解读
3. 外部自动信号配置
一、准备工作
1. 机器人上电完成
2. 电脑安装Workvisual
(1)从机器人控制柜拷贝:
①菜单/配置/用户组,选择管理员权限,输入密码 kuka 登录;
②打开机器人D盘,打开文件夹workvisual,选择里面的压缩包,点击右下角编辑/复制,插入U盘,打开U盘,点击右下角编辑/添加,等待下方读条结束,拔出U盘,解压安装在电脑中即可。
(2)库卡官网下载
注:本文使用的WorkVisual为6.0.20版本,建议使用该版本或更高版本
二、学习手动移动机器人
开机后,调整机器人手动速度,上使能(按住示教器背面任意一个白色按钮上使能:两档,***档上使能,第二档安全急停),此时上方四个方框中的第二个变成绿色的I,通过右边6个按钮(“轴”模式:A1-A6,“全局”模式:XYZABC)即可移动机器人
三、项目配置
本文仅以选配Profinet(从站)、EtherNet/IP(从站)、EK1100/ EL1809/ EL2809(输入输出模块)为例:
1. 设置机器人IP地址
(1)菜单/配置/用户组,选择管理员权限,输入密码 kuka 登录;
(2)菜单/投入运行/网络配置,修改后保存(请勿使用http://192.168.0.xxx);
2. 电脑和机器人通过网线连接
网口:控制柜底部X66接口或打开柜门,门上主机上方KLI接口;
3. 查找并打开项目
打开WorkVisual,点击左上角 菜单/查找项目;
4. 通讯配置
(1)双击控制柜图标激活项目;
(2)现场总线配置(若未选配Profinet和EtherNet/IP可以直接跳过此步骤):
①若选配Profinet,双击项目结构中Profinet选项进行对备注位置进行配置,其余不需要改动;
②若选配EtherNet/IP,双击项目结构中EtherNet/IP选项进行对备注位置进行配置,其余不需要改动;
(3)信号映射;
①点击左上角 编辑器/IO Mapping;
②输入端映射:
左边框:
右边框:
映射(使用shift和ctrl可以多选,类似excel表格操作):
③输出端映射:
左边框:
右边框:
映射(使用shift和ctrl可以多选,类似excel表格操作):
5. 项目上传
(1)示教器点击 菜单/配置/用户组,选择管理员,输入密码 kuka 登录;
(2)Workvisual点击项目配置(F6或如下图操作)后,点击完成;
(3)示教器两次弹出窗口都选择“是”,完成后等待重启;
6. 检验IO配置
(1)菜单/配置/用户组,选择管理员,输入密码 kuka 登录;
(2)菜单/显示/输入输出端/数字输入端,PLC输出信号,检查输入端信号是否正确;
(3)点击信号下方的输出端,或菜单/显示/输入输出端/数字输出端,上使能,点击信号,再点击“值”,输出信号,PLC检查接收信号是否正确;
四、编程
1. 新建程序
(1)关闭示教器所有界面,回到主界面;
(2)菜单/配置/用户组,选择管理员,输入密码 kuka 登录;(3)新建文件夹(命名方式英文开头);
(4)新建模块程序;
(5)打开程序;
(6)打开程序后,调整界面,可做可不做,为了看起来更舒服;
(7)模板程序解读,两行SPTP HOME的指令可以删除(编辑/删除):
(8)调整完成后,按程序左边的叉叉符号即可关闭程序;
2. 程序调用
本节将展示程序之间互相调用如何编程(以TEST_MAIN.SRC程序中调用TEST.SRC为例):
(1)菜单/配置/用户组,选择管理员权限,输入密码 kuka 登录;(2)打开TEST_MAIN.SRC程序,
(3)点击示教器左边“笔”按钮弹出键盘
(4)在需要的位置输入TEST( ),即可调用TEST.SRC程序;
3. 变量(声明&初始化&运算)
(1)菜单/配置/用户组,选择管理员权限,输入密码 kuka 登录;
(2)打开程序,点击示教器左边“笔”按钮弹出键盘;
(3)如图所示进行变量声明、初始化和运算:
4. 程序框架搭建(循环&判断&变量)
注:若程序只是运动和简单信号交互,则可以跳过此步骤
(1)菜单/配置/用户组,选择管理员权限,输入密码 kuka 登录;(2)打开程序;(3)输入指令,本节介绍机器人主要的几种循环和逻辑判断,***终程序框架需要根据需求将循环和逻辑判断组合。
IF:使用 IF 分支后,便可以只在特定的条件下执行程序段;
LOOP(无限循环):每次运行完之后都会重新运行的循环;
WHILE(当型循环):当执行条件满足时,这种循环会一直将过程重复下去。当判断执行条件不满足时会结束循环,并执行 ENDWHILE 后的指令;
REPEAT(直到型循环):在指令部分执行完毕之后,检查是否已满足退出循环的条件。条件满足时,退出循环,执行 UNTIL 后的指令。条件不满足时,在 REPEAT 处重新开始循环;
FOR (计数循环):一种可以通过规定重复次数执行一个或多个指令的控制结构,使用时选择新建变量;
SWITCH:若需要区分多种情况并为每种情况执行不同的操作,则可用 SWITCH - CASE 指令达到目的;
(5)程序框架搭建完成后,按程序左边的叉叉符号即可关闭程序;
5. 运动指令
(1)选定程序:
(2)移动机器人到相应的点位,通过指令/运动/SPTP或SLIN,添加运动指令,添加后会自动记忆当前位置;
SPTP:点到点运动,又称关节运动,各轴配合,以***快速度到达预设点位(走指令前轨迹未知);
SLIN:直线运动,直线运动到达预设点位(走指令前轨迹已知);
(3)指令解读:
运动方式:可选SPTP或SLIN;
点位名称:可自定义(英文开头);
CONT:轨迹逼近,不停顿;
速度:根据需要修改;
(4)修改指令点位,点击对应点位的指令,光标在该指令上时,点击下方的Touch-up,再点击覆盖,此时点位会重新记忆;
(5)示例程序及对应图解:
6. 信号指令
(1)选定程序:
(2)信号指令添加方式:指令/逻辑/WAIT & WAITFOR & OUT;
(3)以上文的运动示例程序为基础,加入了信号指令,假定OUT[1]和IN[1]映射到抓手控制开关:
注:信号指令不要随意加CONT,否则有安全隐患!
7. 程序运行
(1)选定程序,若已选定,可以点击R/程序复位;
(2)调整机器人程序运行速度,上使能,按住左边的程序启动按键即可启动程序。若想跳到某一行开始运行,则点击想跳的位置,当光标在该行后,点击语句行选择即可跳行;
(3)结束后点击R/取消选择程序即可退出;
五、外部自动运行
注:确认所有程序无安全隐含后再进行自动
1. 配置主程序(CELL.SRC)
(1)菜单/配置/用户组,选择管理员权限,输入密码 kuka 登录;
(2)打开R1/CELL程序;
(3)将 程序名加括号 写在对应CASE的P00( )后面,如图所示位置;
注:CASE在后面外部自动的时候会根据程序号调用
2. 时序解读
(1)时序图:
(2)大白话解读:
①安全回路(X11)中急停和安全门都OK状态下,PLC输出 $MOVE_ENABLE(运行开通)和$DRIVE_OFF(驱动器关闭);
注:这两个信号不需要关闭,T1模式也需要$MOVE_ENABLE信号
② 选定CELL程序,按住程序启动按键,走到HOME位,弹出已达BOC提示,松开程序启动按键,此时KRC会输出$IN_HOME(位于起始位置)和$ON_PATH(机器人在轨迹上);
③ 顺时针转动示教器上的钥匙,选择EXT模式后转回来,此时KRC输出$EXT(外部自动运行),调整速度,初次外部自动建议速度小于10!!!
④ 程序启动时序(所有KRC的输出都是在收到PLC信号后自动发出的):
注:建议开关触发,请勿自动触发,导致安全风险
PLC 输出 $DRIVE_ON(驱动装置接通)
KRC 输出 $PEPI_RDY(驱动装置处于待机运行状态)
注:若手动模式已有使能,打到EXT模式未出现报错,该信号会直接输出
PLC 关闭 $DRIVE_ON(驱动装置接通)
PLC 输出 $CONF_MESS(错误确认)
KRC 关闭 $STOPMESS(集合故障)
注:若手动模式无报错,打到EXT模式未出现报错,该信号会直接关闭
PLC 输出 $EXT_START(程序启动)
KRC 输出 $PRO_ACT(程序激活)
PLC 关闭 $EXT_START(程序启动)
KRC 输出 $PGNO_REQ(程序编号请求)
PLC 输出 PGNO(程序号)(二进制转整型)
注:程序号由$PGNO_FBIT(程序号***位)和 PGNO_LENGTH(程序号位字节宽度)确定
PLC 输出 $PGNO_VALID(程序编号有效)
KRC 输出 $APPL_RUN(应用程序正在运行)
PLC 关闭 PGNO(程序号)(二进制转整型)
PLC 关闭 $PGNO_VALID(程序编号有效)
此时机器人已经进入对应CASE的子程序中。在我的程序示例中,如果PLC程序号给了1,那就是进入了TEST( );
⑤子程序运行完毕后,会返回CELL中,重复KRC输出$PGNO_REQ(程序编号请求)及后续步骤;
⑥程序运行结束后,按一下示教器左边红色暂停键,顺时针转动示教器上的钥匙,选择T1模式后转回来即可;
3. 外部自动信号配置
(1)菜单/配置/输入输出端/外部自动运行,配置外部自动运行;