刘维孟 , 卢伟源 ,尹秉奎 ,彭海坚 ,付祥华
(1.广东省现代农业装备研究所,广东 广州 510630;2.广东弘科农业机械研究开发有限公司,广东 广州 510630;3.珠海城市职业技术学院,广东 珠海 519090;4.珠海众华智能科技有限公司,广东 珠海 519090)
番茄作为营养的蔬菜水果,深受人们的喜爱,而温室栽培的串收小番茄[1-2],凭借其口感、营养价值等而成为餐桌上的零食,也因其温室培养不受季节影响,近年来得到大规模推广。而番茄的采摘采用人工方式费时费力,是设施农业自动化的瓶颈,研发番茄采摘机器人是适应设施农业自动化发展趋势的。
目前采摘机器人多是利用现成的服务机器人或者协作机器人,然后配上一定的行走装置以及升降装置构成采摘机器人的机械机构部分;而控制系统则采用了视觉识别,加上运动控制方式,实现对番茄等果蔬的视觉定位,实现对机械臂采摘作业以及行走装置运动等的控制[3-8]。
通常,采摘机器人的开发工作是按照传统的机电设备的开发过程进行的,即机械结构设计—电气控制设计—软件编程—实物样机—机电联调这样一个流程[9-11]。这个开发流程属于传统的串行开发流程,需要制作出来实物样机,才能进行电气系统、软件等的机电联调,如果出现机械结构设计不合理的情况,或者有更好的方案,则需要重新制造样机,开发成本较高。
本文提出了一种基于数字孪生调试技术的开发平台,能够实现番茄采摘机器人的并行设计。在设计阶段,就能通过半实物样机实现机电联调,尽早发现早期缺陷和错误,避免大的返工和浪费,节约开发成本。同时,该平台也同样可以应用到其他采摘机器人的开发上,能够加快设施农业采摘自动化设备的开发进度。
数字孪生技术[12-15]就是早期西门子提出的数字化双胞胎(Digital Twin),是目前智能制造领域的一个关键技术,它利用数字化技术,建立与物理样机一样的虚拟样机模型,这里的一样不仅仅是外观和几何模型一样,包括其运动机构、控制方式等都是一样的。在机电设备当中,实物样机中的运动控制、信号反馈、运行节拍等,都能在虚拟样机中实现对应,也就是孪生技术。通过数字孪生仿真技术,能够大幅缩短机电产品的开发周期。传统的串行开发流程如图1所示,而并行的机电联合设计流程如图2所示。
图1 传统串行开发流程
图2 并行机电联合设计流程
番茄采摘机器人的数字孪生虚拟样机的开发,是利用西门子NX软件进行搭建,首先通过软件对机械结构进行设计,或者利用其他三维设计软件进行结构设计,然后将设计导入NX软件中。
在NX软件中利用机电概念设计模块,对模型进行物理属性设置、运动机构和运动关系的设置,定义对应的传感器、时间序列、运动控制过程信号及逻辑关系等,完成虚拟样机的设置,具体的设置流程如图3所示。
图3 虚拟样机设置流程
物理属性的设置,主要是对模型添加刚体和碰撞体属性,让模型具有质量和重力以及碰撞关系,使得仿真虚拟模型与现实的实物模型更接近,这是数字孪生仿真的第一步;碰撞体设置涉及物体的碰撞,以及碰撞之后的反弹,这一项仿真需要耗费大量电脑资源,所以一般情况下,如果没有发生碰撞关系的一般不进行设置,以加快仿真的速度,减少资源的消耗。具体物理属性设置的过程如图4所示。番茄采摘机的虚拟样机模型如图5所示。
图4 物理属性设置
图5 番茄采摘机的虚拟样机模型
运动关系和运动机构的设置,主要是给模型添加约束,使虚拟样机具备与实物样机一样的旋转、滑动等运动功能,有点类似一般三维软件里的运动仿真。但是数字孪生虚拟样机中的运动关系还包含了扭矩、阻尼以及动力等。本案例中,给服务机器人各个关节添加铰链副,并在铰链副上添加位置控制;而升降台添加滑动副来模拟电缸升降的滑动机构;对于四个行走机构轮,添加铰链副来仿真轮子的转动。运动关系和运动机构设置过程如图6所示。
图6 运动关系和运动机构设置
定义传感器主要是给模型添加碰撞和拾取的传感器,在仿真模型中,通过添加碰撞传感器的方式来触发拾取动作,该碰撞传感器可以模拟实物样机中的各类开关触发信号。本案例是在夹爪位置添加碰撞传感器,并采取拾取固定副方式,来实现番茄的拾取动作仿真。传感器的设置如图7所示。
图7 定义传感器
定义时间序列主要是设置动作步骤和工序流程,根据番茄采摘的动作步骤,按照时间先后顺序,设置时间仿真序列,类似工序流程。在不与外部信号进行通信联调的纯仿真动作,可以直接通过时间仿真序列实现设备的虚拟调试,以验证其动作步骤的合理性。时间序列导出XML文件,还可以利用西门子STEP7导入生成西门子GRAPH的PLC程序,对于简单的流程动作,能够实现快速控制程序编写。时间序列的设置如图8所示。
图8 定义时间序列
如果要实现半实物样机的虚实联调,则需要定义过程信号及与外部信号通信的信号的逻辑关系,可以通过信号适配器来进行定义。本案例中,主要定义了机械臂各个轴的角度控制信号,以及卡爪、升降台电缸的电机位置信号和开关信号等。信号适配器的设置如图9所示。
图9 信号适配器设置
在虚拟样机模型搭建和设置完毕之后,接下来就是控制程序的编制,在智能制造产线设备中,主要通过PLC对设备进行程序控制。一般流程就是利用西门子博途软件编写PLC控制程序,然后将程序下载到西门子1500PLC中,利用西门子OPC UA的通信模块,实现实物PLC与虚拟数字孪生模型的通信,达到实物PLC控制虚拟模型的数字孪生调试。该方案由于PLC成本较高,且PLC程序编制相对来说有一定的门槛,不利于推广。并且由于控制器主要是国外产品,不利于农业机械的国产替代和自主可控。
本文所介绍的方案,主要以珠海众华智能开发的SmartACS运动控制软件为基础,通过基于PC的运动控制,实现对数字孪生虚拟样机模型的运动控制编程和调试;该软件通过拖拽功能块的方式编程,取代了传统的写程序代码的方式,实现了对PC运动控制卡的编程,大大降低了编程人员的入门门槛,而且目前基于PC的国产运动控制卡的性能和市场普及率相比国外品牌毫不逊色。本案例采用国产Zmotion运动控制卡,该运动控制卡除了可以实现常规的I/O信号和运动控制外,还集成视觉识别功能,配合低代码的SmartACS编程软件,能够很好地应用到采摘机的视觉定位编程上,不必额外再配套视觉识别系统,有效降低了开发成本。该软件的程序编制界面如图10所示。
图10 SmartACS软件界面
数字孪生虚拟样机搭建完毕,控制程序编制完成后,则可以开始进行虚拟调试。在这里需要运动控制板卡的控制信号通过OPC UA的通信方式,利用数字孪生模型的信号映射,实现实物信号与虚拟模型的信号对应,实现实物控制卡控制虚拟模型的虚拟调试,能够在实物样机制造前,对程序和机械结构实现虚拟的机电联调,提前发现问题,优化结构设计和控制程序。数字孪生虚拟调试信号交互原理图如图11所示。搭建好的软硬件数字孪生虚拟调试平台如图12所示。
图11 信号交互原理图
图12 虚拟调试平台
课题组开发搭建了一种基于运动控制卡的番茄采摘机器人数字孪生虚拟调试平台,采用低代码运动控制和视觉识别编程软件,对番茄采摘机器人数字孪生虚拟模型进行虚拟调试,可以在开发阶段对设计样机模型进行机电联调和程序验证,大大提高了开发的速度并降低了开发成本,同时采用了低代码编程的国产自主知识产权编程软件以及PC运动控制卡,降低了开发者和使用者的门槛,有利于后续设施农业自动化水平的提高。