导图社区 控制系统与离线编程
ABB机器人和系统控制基础学习笔记
编辑于2019-06-10 14:23:34控制系统与离线编程
基础拓展
手动-工具工件-程序结构与运动语句-信号-逻辑控制
手动操作与坐标系
手动操作
单轴运动
第3轴:拧螺丝规则上下
线性运动
机器人上某点(工具坐标中指定的TCP点)沿着指定的坐标系平移
重定位运动
TCP点不动,绕轴运动
坐标系
Wobj0:工件坐标系初始,固定在大地上,机器人系统中固定的物体都参考Wobj0
Tool0:法兰盘坐标系,原点在法兰盘中心,没有固定方向,机器人系统中跟随机械手运动物体的参考
当机器人处于机械零点的时候,法兰盘中的Tool0的X垂直向下,Y右手边,Z垂直法兰盘
工件工具
同步获取TCP
1、精确加工必须做TCP
2、好的TCP可以使调试更方便
3、如何仿真获取TCP位置 (按创建顺序写的笔记)
1、创建模型,并摆放合适位置
这一步也是确定好与法兰盘接触的一面,一定要注意安装在法兰盘上的那面的位置
使用“一点法”对齐模型:点击该部>单击右键>位置>放置>一点法>选择表面>选择中心捕捉
2、创建TCP点(创建TCP框架):建模>创建组件组(将组成该模型的各个部件全部放到一个组件里,一个组件就是一个模型)>框架>创建框架
直接创建:右击创建的框架>设定为表面的法线方向>表面中点捕捉
三点法创建:注意不能勾选“设为USC”,否则大地会偏移
3、创建工具:将组件和框架合成工具 步骤:使用已有部件>数值来自目标点/框架>转移(中间竖直按键)>完成
4、保存为库文件
工件坐标系
机器人只要修改位置,使用的是手动操作中的显示值。
手动操作中显示的XYZ值参考工件坐标系,工具坐标系指定了机器人使用哪个点到达这个位置。
软件创建工件坐标系:基本>其他>创建工件坐标系>用户坐标框架>取点创建框架>三点法>捕捉端点
Robhold(机器人是否抓持工具)
TRUE:机器人抓持工具,工具TCP位置方向参考tool0,此时创建的工件必须是固定的
FALSE:机器人不抓持工具,既工具是固定的,工具TCP此时参考大地,此刻创建的工件必须设置为被机器人抓持,通过改变工件位置来迎合工具
工具为TRUE,工件必须为FALSE;如果工具为FALSE,工件必须为TURE
实例
基本>其他>创建工具数据
1、名称 2、是否抓持 3、捕捉点位
1、在软件中创建固定工具和手持坐标系 2、同步到示教器 3、运动语句中应用、两点之间的关系 4、操作:线性+重定位
注:RobTarget XYZ Q1 Q2 Q3 Q4 (工具的指向)
拷贝整个机器人系统文件推荐这种方法
打包:文件>共享>打包 解包:文件>共享>解包
程序结构与运动语句
程序结构
坐标系在运动语句中的应用
任务>模块>例行程序>main
修改位置或新建点位都使用手动操作中的值
点位在坐标系下形成一串轨迹,轨迹与工具无关。工具决定机器人使用哪一个加工点加工这条轨迹。
速度数据(speeddata):新建速度数据>查看值>修改数据
工件数据中,uframe中trans中的xyz的 “数值增量” 等价于oframe中trans中的xyz的 “数值”。 例如:WobjData.Oframe.trans.z = WobjData.Oframe.trans.z+20
系统计时指令
计时指令应用SystemTime(按应用顺序做的笔记)
首先定义一个时间变量 clock1
系统中的时间单位为s
系统中的长度单位为mm
CLKReset clock1(计时复位)
CLKStart clock1(计时开始)
CLKStop clock1(计时停止)
定义一个num量:nTime,然后赋值 nTime:= CLKRead(clock1)
CLKRead(计时读取),是一个功能
TPErase(清屏指令)
TPWrite(写屏指令)
TPWrite CData();系统当前日期
TPWrite CTime();系统当前时间
TPWrite "The last time is" \Num:= nTime;
实例
信号的创建
硬件接线
根据接线进行配置
监控仿真强制
输入输出>全部信号
程序的使用
仿真
机器人系统的讲解
系统备份
如何备份与恢复
控制器>备份
一个系统600MB左右,一个SD卡1.8G,最多保存3个系统
机器人的系统备份只能还原到同一台机器人上
BACKINFO
系统的参数:license 系统的许可证、Virtual 虚拟的(相当于电脑的C盘)
HOME
系统提供的内部存储(相当于电脑中的D盘)
RAPID
分模块保存的程序文件夹,程序的保存和加载不区分机器人,在示教器中以及软件中去加载与另存
SYSPAR
系统配置,IO的加载与保存,不区分机器人(只要有选项即可)
如何打开备份
方法1:新建>工作站和机器人控制器解决方案>还原备份
获取备份的系统环境,还原
方法2:创建并修改系统:控制器>安装管理器>在虚拟中点击新建>命名>源自备份>并浏览备份(图1)>一直下一步直至应用>机器人系统>已有系统>选中新建系统(图2)>确定
图1
图2
如何在真实机器人上去创建系统(用于系统崩溃、升降版本) (按操作顺序写笔记)
用网线连接
一键链接
获取机器人系统备份
使用电脑连接机器人服务端口,设置IP:192.168...
控制器>安装管理器>在网络中点击新建系统并浏览备份>一直下一步直至应用
创建等待时间5-15分钟,注意看指示灯(DISC-ACT),指示灯在闪烁,说明机器人正在读取SD卡,灯灭,说明读取完毕
机器人重启进入引导界面,成功后,自动重启进入系统(注意不要按Delete删除键)
安装在SD卡里面(电脑自动识别磁盘)
控制器>安装管理器>恢复磁盘>选中需要恢复的备份系统>写入磁盘
本体与IRCS电路
本体
IRB1410
接地屏蔽线
SMB编码线
温度控制器(PTC)是串联在整个电路中的
伺服电机(M)
抱闸制动器(B)
机器人六个轴抱闸单元依据型号不同,串联或并联
编码器(R)
动力线:三相四线:三根相线,一根地线;注意:有的机器人1、2、3轴如果一根动力线连接,太粗,所以用两条动力线,如图
制动释放装置(BU)
反馈单元(FB)
SMB板
编码器中的脉冲反馈回SMB板
风扇(FAN)
插座、开关(SW)
屏蔽线
电池组(G)
零点校准
以下情况下需要更新转数计数器
运输后
更换SMB板后
更换电池后
更换主机后
更换轴计算机后
有电流干扰时
操作方法
手动单轴回机械零点
查看校准中的电机偏移值(度)
电机偏移值:手动单轴回零时,假如外部定位线刚好对准时,而内部电机转了10.5圈,根据编码器工作情况,一共发射了10次脉冲,如果下次机器人回零点时那么也会发送10次脉冲,而之前的内部电机转动0.5圈产生的角度不用了?这样精度上会出现误差,所以给他一个电机偏移值作为补偿(在一定范围内)。
更新转数计数器
处理故障位置
机器人的序列号就是SMB板的序列号,电机的偏移值与序列号一致,具有唯一性。
控制柜存储器
更换SMB板后,由于序列号不同,所以一般采用这种方法:示教器>校准>高级>机械手存储器>高级>清除机械手存储器>更新>使用控制器数据更新机械手
机械手存储器
示教器>校准>高级>机械手存储器>高级>清除控制器存储器>更新>使用机械手数据更新机械手
添加系统选项
在RS中打开文件 >打开示教器中的HOME >右键打开文件位置 >将买来的选项放入HOME文件夹中 >在RS中打开示教器 >加载模块 >pp移至main >上电运行(选项中的程序不可见) >运行至DONE >重置系统 >恢复备份
控制柜
主计算机单元
超级电容
安全面板(机器人安全链为双回路)
空开(220V/480V)
220V出来接的XT16端子排提供供电是正负间隔
电源分配板
轴计算机
IO板卡(用户单元)
交流接触器板
给交流接触器K42、K43、K44的线圈上电
变压器
系统电源
用户电源
XT31端子排提供供电是左正(24V)右负(0V)
驱动器
配置
通讯与机器人信号配置
快捷键:控制面板>配置可编程按键
笔记详细:ABB机器人通讯>信号关联、监视与仿真
脉冲信号输出指令:PulseDO
比SET好用
例子:PulseDO\PLength:=10,do1; 信号置为1,10S后复位为0
信号交叉连接功能(Cross Connection)
信号之间的逻辑关系,又叫“信号关联”,通过几个不同的信号在“与或非”后得到的结果,再给到一个最终信号。 一般运用于时序得控制和工艺的控制,无论手动、自动或急停状态都有效,所以需要配合虚拟板卡使用。
结果 Resultant
条件 Actor
取反 Invert
关联 Operator
例子:先在Signal配置几个信号,然后在 Cross Connection中将配置的信号进行关联
例1:当水(di2_FlowOK)和气(di3_AirOK)准备好,而且无报错(di4_Error 取反),则确认已准备好(di1_EquReady)
di1_EquReady Digital Input d652_sim di2_FlowOK Digital Input d652 di3_AirOK Digital Input d652 di4_Error Digital Input d652
di1_EquReady 放在一个虚拟的652板卡中(板卡虚拟后无地址),这样通过关联的状态输出的结果只是一个虚拟值,当条件都满足时,仿真结果会变为1,而现实中不会真的将di1_EquReady置1
例2:生命位检测(判断机器人和PLC的通讯是否正常)
di5_LifeBit Digital Input d652 d02_LifeBit Digital Output d652
用输入信号(di5_LifeBit)作为条件(从PLC过来),输出信号(d02_LifeBit)作为结果,当机器人接收PLC信号后,再反馈一个信号回去。起反馈作用
例3:三色灯的制作: 结果 条件1 条件2 条件3 红灯亮 急停 or 故障 or 报警 绿灯亮 RobAtHome and 红灯亮(INV) and 上电 黄灯亮 红灯亮(INV) and RobAtHome(INV) and CycleOn(机器人指针动作)
系统信号输入输出
只需要配置即可,不需要程序使用
System input
使用输入信号控制系统状态 - Action动作
机器人处于自动状态下才有效,手动无效
常用状态
Motors On 上电
Motor Off 下电
Start 启动
Start at main 主程序启动,一般用于小项目
Stop 停止
Reset Emergency Stop 复位紧急停止
System output
当机器人处于某种状态时,自动对外输出状态信号
机器人处于自动或手动状态下都有效
常用状态
Motors On 上电(其状态与复位按钮灯的状态一致)
Motor Off 下电
Cycle On 运行(单周/循环取决于系统输入时对Start的定义)
Auto On 自动运行
Emergency Stop 紧急停止 (一般接指示灯)
DeviceNet Device
从站-信号
StateWhenStartup(开机时从站的状态)
Dock/UnDock 抓取工具 Grip 抓手(换枪)
换工具,换到那个工具用哪个从站
实际案例: 1、机器人法兰盘上无工具,将板卡装置在工具上,机器人启动时板卡(从站)状态为“禁用”,当机器人装上该工具后,才接通激活板卡(从站),这时候要用到激活从站指令IOEnable 2、如果是多个工具切换,可以通过板卡中输入信号的导通来识别是哪一个工具,哪一个从站,如图
激活从站指令IOEnable
IOEnable "d652", 5;
d652为从站名称,5为激活最大等待时间,单位秒
禁用从站指令IODisable
IODisable "d652", 5;
d652为从站名称,5为禁用最大等待时间,单位秒
如何组态ABB从站
硬件连接
通讯线并联
更改地址(旋钮、拨码、短接片)
波特率500KBS
DeviceNet Device选项下选择:DeviceNet Generic Device(在使用非ABB的IO板的情况下选择)
获取产品描述文件gsd文件,将文件信息填入DeviceNet Generic Device中
确认交互长度
(Connection Input Size)输入:输入口总数/1byte(8bit) 如652,16个输入口,所以交互长度为2
(Connection Output Size)输出:输出口总数/1byte(8bit) 如652,16个输出口,所以交互长度为2
Signal信号
Name 名字
Type of Signal 信号类型
Assigned to Device 所配置的板卡
Signal Identification Label 信号识别标签类别
Category 备注
AccessLevel 信号的访问级别
All 全部
ReadOnly 只读
Default 默认
自行设置访问级别(常用设置方法)
ReadOnly 只读
WriteEnable 可写
Local Client Manual 示教器手动 Auto 示教器自动
Filter Time Passive(消极的)(ms)关断延时
信号由1变0时延时,阻碍信号关断的时间
Filter Time Active(ms)接通延时
信号由0变1的延时,阻碍接通的时间
Invert Physical Value 取反信号的实际值
组信号
组信号输入
程序号(Gi_ActiveNO)
nActiveNO:=Gi_ActiveNO
组信号输出
报警输出(Gi_ErrorInfo)
SetGo Gi_ErrorInfo,5
如果地址不连续,可以用“,”隔开,如1-4,5-8或者4-7,0-1(后一种情况相当于高低位互换)
一般用于多种型号的物体的加工,比如4个信号可以组合成16种型号
离线编程与程序架构
结构框架按编写程序的结构做笔记
PrgStart 常用于主程序模块命名
Main 主程序
ToHome 回初始点
bComplete 判断是否完成(BooL:true/false)
工序未完成(未进行)
rGoPrgNO 获取程序步骤号(例行程序命名)
nActiveNO 程序步骤号
判断程序号已经选择好并 StartPick 确认启动抓取
ReadID 读取序列号(例行程序命名)
rPallen 码垛循环结构(例行程序命名)
rWork 工作流程(例行程序命名)
pPrePick 准备抓取点位
pPickPart 抓取点位
pSafeH 安全高度点位
PreDrop 准备释放点位
pBase 放置点位
rRecheckCycle 循环结束检测(复位)(例行程序命名)
工序已完成
rRecheckCycle 循环结束检测(复位)(例行程序命名)
程序模板
仿真调试与动画制作
Smart组件
组成:动画的基本单元
队列中的BACK是指即将加入队列的部件
属性与连接:如果认为两个属性相同,可以进行连接
属性:对组件进行描述
信号:触发动画
信号与连接
上面的窗口:与外部交互的信号
内部的逻辑关系
工作站逻辑:建立动画与机器人的联系
比如:输送链动画中物体到达光电传感器,输出的信号与机器人的输入信号连接,告诉机器人已经有物体到达,机器人开始有动作
比如:抓取动画中,机器人抓手到达抓取位后,置位抓手的信号(输出信号)与抓手动画抓取的信号(输入信号)相连接,既是机器人告诉抓手,该抓取物体了,抓手开始有动作
自动路径(按操作顺序做笔记)
Shift 选中路径 > 创建
路径中有的轴配置出现错误,无法以该姿态到达该路径,通过选中一个无错的目标点,点击右键,选复制方向,返回用Shift选中所有目标点,右键应用方向