RobotStudio二次开发在药瓶搬运中的应用

2022-06-27 13:10孔艳艳
兰州工业学院学报 2022年3期
关键词:输送链药瓶药盒

孔艳艳

(闽江师范高等专科学校 机电工程系,福建 福州 350018)

在智能制造大环境下,我国医药行业产值虽然逐年增长,但是智能化低、专业人才缺口大等问题,已成为必须要解决的难题。疫情期间,许多制造类企业都在产业升级,朝着智能化方向发展。文献[1] 在药品包装自动化方面进行了研究,采用模块化结构,由PLC、触摸屏(HMI)、动力驱动装置等实现泡罩药品自动化包装;但存在包装的药品单一,无法满足市场上包装多样化的需求。文献[2-3]采用RobotStudio仿真软件搭建工作站,Smart组件动画模拟工厂产线。这2种生产线在应用行业还是智能制造,工业机器人技术人才是有储备的;但在医药行业,工业机器人的应用较少,相关技术人员更是紧缺。在这种情况下,医药包装行业即使有相应资金采购机器人,也会因为编程与调试人员的紧缺,短时间内无法通过修改机器人的RAPID程序满足包装工艺的多样性。

本文基于药瓶搬运工艺的实际生产要求,采用RobotStudio仿真软件,结合PC SDK二次开发包和Visual Studio编程软件,实现多样化药瓶搬运的二次开发,操作人员只需要在二次开发界面输入相应工艺参数,即可满足多种规格的药瓶包装,对降低操作人员的调试难度、提高包装效率的研究具有指导意义。

1 编程软件二次开发框架

RobotStudio是ABB机器人的仿真软件,它是建立在ABB虚拟控制器之上,相当于一个机器人生产运行的精确副本,能非常逼真地模拟生产运行。

ABB机器人为用户提供了大量便捷的二次开发和应用工具。对于它的二次开发,通讯模式的选择非常关键,主要的通讯方式有5种:套接字通讯(Socket)、PC SDK、消息队列RAPID Message Queue(RMQ)、Robot Web Service(RWS)、OPC Server[4]。本文采用PC SDK通讯,可以实现PC与IRC5间的通讯,主要用到其Controller API,采用逐级访问的方式,调用控制器的某个功能,实现在二次开发界面上扫描和连接机器人、轨迹规划、变量设置和事件日志等功能。RobotStudio二次开发总体框架如图1所示。

图1 RobotStudio二次开发框架

2 二次开发流程

2.1 界面设计

2.1.1 开发接口引用

要实现控制ABB机器人的前提是:在C#建立的基于.NET的二次开发窗体应用程序中引用3个动态链接库文件:ABB.Robotics.Controllers.PC.dll、Robotstudio.Services.RobApi.dll和Robotstudio.Services.RobApi.Desktop.dll。

然后,在二次开发窗体应用程序的全局变量声明中声明要使用的功能,其声明方式如下:

using ABB.Robotics;

using ABB.Robotics.Controllers;

using ABB.Robotics.Controllers.Discovery;

using ABB.Robotics.Controllers.EventLogDomain;

using ABB.Robotics.Controllers.RapidDomain ;

using ABB.Robotics.Controllers.MotionDomain;

using ABB.Robotics.Controllers.FileSystemDomain;

2.1.2 窗口布局

根据药瓶搬运的控制要求,主要包括:药瓶搬运、变量设置和事件日志3部分。其中,药瓶搬运有3个区域:控制器通讯区、轨迹规划区和目标点数据显示区。主要用到的窗体控件有:ListView、Button、DataGridView和TextBox等。在控制器通讯区,扫描控制器按钮可以搜索到现有的机器人控制器信息,并将机器人控制器信息显示在列表里。连接控制器按钮可以实现用户选择的机器人登录和注销。轨迹规划区,是根据控制要求设置取放瓶轨迹参数。目标点数据显示区,显示的是机器人工作站在轨迹规划参数设置完成后,机器人运动的坐标点。二次开发后的窗口布局如图2所示。

图2 二次开发窗体布局

2.2 PC SDK通信:数据交互

为实现二次开发系统与机器人端数据交互,机器人系统配置时,必须在通信类选项中勾选“616-1 PC Interface”选项,它是PC机上开发用户界面来控制机器人的选项。

ABB机器人使用的机器语言是RAPID,易学易用,灵活性强,包含了一连串控制机器人的指令,这些指令可以移动机器人、设置输出、读取输入等。PC SDK二次开发包不支持直接调用机器人中的运动指令,而是通过修改RAPID程序中的变量间接控制机器人。

2.3 运动流程分析

当二次开发的系统界面与机器人端实现了数据交互,就可以用Robotstudio预编写的RAPID程序完成药瓶搬运的任务。

2.3.1 目标点位姿数据

对ABB机器人来说,其运动轨迹是由若干个目标点按次序连线组成,即

CONSTrobtargetputini:=

目标点数据类型由4部分组成:trans、rot、robconf和extax。其中:trans组件表示工具中心点TCP(Tool Center Point)的位置;rot组件表示当前点位时工具姿态;robconf组件表示机械臂的轴配置; extax组件表示附加轴的位置。

rot即机器人姿态采用四元数来表示,是为了避免机器人姿态运动学方程在大角度时出现奇异现象。四元法是实数和复数以及三维空间点矢量的扩充。其表达式为

q=q4+q1i+q2j+q3k,

(2)

对于Z-Y-X变换,转换表达式为

(3)

展开得

式中:α、β、γ分别为绕Z、Y、X轴的旋转角。

2.3.2 流程图

近年来,持续稳产的原油量使得已经饱和的油田电网负荷越来越大,每年油田电网的变电站数量不断增加,导致传统的油田电网模式已经不能适应,因此,需要拥有智能化、信息化、数字化和自动化的全新管理模式来提高工程效率,降低工程成本。采用智能变电站技术不仅可以实现油田电网无人值守、进一步推行电网调度变自动化,在调整管理模式后,有效减少岗位用工紧张问题。另一方面,因为油田电网规模的不断扩大,全面检修工作量不断增大,也很难保证质量,利用自动化的变电站技术后,科学的对停电时间进行设定,打造可靠、坚强的供电电网,提升油气生产供电工程。

药瓶搬运流程如图3所示,由主程序(main)、PC SDK通讯、初始化子程序、算法子程序和运行轨迹子程序等组成。

图3 药瓶搬运流程

3 虚拟仿真

3.1 布局仿真工作站

药瓶包装工作站所需要的模型由SOLIDWORKS建模,并保存后缀名为*.step格式,导入到RobotStudio仿真环境下。按要求布局的工作站如图4所示,主要包括ABB IRB120机器人、传感器、药盒、药瓶、药瓶分拣输送链、药盒输送链以及光栅报警装置等。

1—ABB IRB120机器人;2—传感器;3—光栅报警装置; 4—药瓶分拣输送链;5—药瓶;6—药盒;7—药盒输送链图4 仿真工作站布局

3.2 创建工具和工件坐标系

在仿真软件下,建立工具坐标系,目的是将工具坐标系置于真空吸盘的中心处,便于机器人工作过程中TCP的姿态调整。在对应的吸盘工具坐标系下,创建工件坐标系,采用的是三点法,确定坐标系原点、X正方向和Y正方向,再根据右手定则判断Z正方向。

3.3 Smart组件创建动态效果

1) 创建动态输送链。

建立输送Smart组件(sc-infeeder),所需要的组件有:Source、Queue、PlaneSensor和LogicGate[NOT]。其工作流程为:启动信号(start)置1,触发1次Source,使其产生1个药瓶(YP)复制品。产生的药瓶复制品自动加入到设定好的队列Queue中,则药瓶复制品随着Queue一起沿着输送链运动。药品复制品到达输送链末端,触发面传感器(PlaneSensor),退出队列Queue,并将产品到位信号do_ok置1。通过非门的中间连接,实现当药瓶被机器人搬运走后,自动触发Source再产生1个药瓶复制品,进入下一个循环。IO设置如表1所示。

表1 输送链组件 I/O连接

2) 创建动态吸盘工具。

吸盘Smart组件是仿真吸盘工具,实现吸放动作,需要的子组件有:LineSensor、Attacher、Detacher、LogicGate[NOT]和LogicSRLatch,如图5所示。

图5 吸盘Smart组件

3.4 工作站逻辑设定

完成Smart组件的动态效果后,需要设定Smart组件与机器人端的信号通信,才能实现药瓶搬运的仿真动画[5]。图6是工作站的逻辑设定,其工作流程为:发出启动输送链信号,药瓶传送;药瓶到位后,机器人开始运动;机器人到达抓取点,Y4置1,并将信号传送给Smart-xipan的输入INY4,吸盘吸取药瓶;机器人到达放置点,Y4置0,吸盘放下药瓶。信号传送给机器人输入X1,等待下一次运行指令。

图6 工作站逻辑设定

3.5 仿真轨迹优化

1) 合理规划目标点。首先,目标点运动指令的选择遵循:不需要保证直线运动的路径,尽量用MoveJ指令代替MoveL指令。抓放点前后的非作业点,不仅要使用MoveJ指令,还要统一使用较大的转弯半径,减少转角时的速度衰减。其次,在保证安全的前提下,尽量减少中间过渡点、合理选择安全点到取放瓶点间距。

2) 调整机器人位姿。在保证避开奇异点的情况下,以最少的关节运动到达目标点。

3) 合理使用延时指令。在IO信号与运动指令之间,适当增加延时指令,保证抓放的准确率。

经过优化和反复调试,1个药瓶搬运轨迹可缩短4.5 s。仿真结果表明,这种优化方法是可行的,可以在有限的时间内,规划出相对合理的工艺路线。

4 调试验证

完成药瓶搬运的二次开发后,验证仿真结果。首先,在机器人仿真示教器中,打到“自动模式”档,加载二次开发的窗体。在出现如图7(a)所示运行界面下,扫描控制器,选中需要连接的控制器,一键连接,出现“登录成功”提示。然后,就可以按要求的药瓶和药盒尺寸,规划相应的运动轨迹。如图7(b)所示,在机器人运动过程中,RobotStudio会监控机器人的位姿和IO信号,可根据运动要求和输出的事件日志,调整相应参数。如图7(c)所示,经过反复验证:仿真环境与现场环境虽然有误差,但通过编辑工具和工件坐标系,纠正仿真与现场之间的误差,并不影响规定尺寸药盒的包装;抓放瓶准确率高。

(a) 窗体运行

(b) 抓取药瓶点运动

(c) 放置药瓶点运动图7 二次开发仿真调试验证

5 结语

本文以药瓶搬运工艺为例,阐述了RobotStudio二次开发的思路及开发过程。通过二次开发,可以将工业机器人编程过程中的繁琐部分智能化,有效缩短了调试周期,降低操作员操作难度的同时,增加产线柔性。经现场验证:准确率高,操作简单,效率高,完全满足企业生产实际需求,对实现医药包装的智能化发展具有一定的参考意义。

猜你喜欢
输送链药瓶药盒
基于RobotStudio的Delta机器人双输送链跟踪分拣仿真研究
风冷式干渣机不锈钢输送链链板翘边分析与治理
机器人输送链参数与基坐标系校准融合方法
抗击新型冠状病毒绝句
一种免排序方便避光药盒的设计与应用
红外光谱法鉴别维药盒果藤根药材模型研究
一种新型可燃药盒的特性研究
提醒你按时吃药的智能药瓶
旅行便携随身药盒
一种铅电解阴极板洗涤装置