APP下载

基于视觉检测和EtherCAT总线的控制系统设计*

2018-12-03张昊苏陈成军

机电工程技术 2018年11期
关键词:主站实时性内核

张昊苏,陈成军

(青岛理工大学机械工程学院,山东青岛 266520)

0 引言

控制系统作为制造业的灵魂,在工业生产中不可或缺。随着《中国制造2025》的逐步落实,信息化、智能化、柔性化已经成为工业控制系统的发展趋势[1-2]。控制系统涵盖的范围日益扩大,所要完成的控制内容逐步增加,控制内容不再局限于简单的运动控制,多控制任务融合成为控制系统的未来方向[3]。

现场总线技术作为沟通上位机与下位机的桥梁,其性能的优劣决定着整个控制系统的性能[4-5]。工业以太网控制总线技术的兴起极大地推动了控制系统的信息化和智能化发展[6-8]。EtherCAT作为一种开放的工业以太网技术,具有实时性高、通信速率快、标准统一、拓扑灵活等特点[9-11]。现已被广泛应用于工业控制前沿。

机器视觉系统是利用工业摄像头及控制器实现识别、检测的控制系统[12]。机器视觉系统要求识别处理具有实时性,但能够适应恶劣、长时间的工作环境[13]。随着劳动力成本的增加,工业加工产品精度需求的提高,以及智能化的制造发展方向,机器视觉检测已然成为工业生产的必备功能。

本文作者在以上研究基础上,采用KRTS的软件框架设计构建一套基于EtherCAT总线的集成视觉控制系统。将机器视觉和EtherCAT总线技术融于一体,达到高速图像采集、实时图像处理、实时运动控制的目的。

1 系统总体方案设计

该控制系统由视觉检测和运动控制两部分组成。视觉检测部分的图像数据采集由工业相机完成,工业相机采用GigE接口形式。图像处理任务由控制器完成。运动控制部分主要是EtherCAT主站和从站的搭建,控制命令由主站发出经从站传递给驱动器,完成对三自由度工作台的运动控制。为节省资源提高控制系统的可操作性,控制器采用普通PC+EtherCAT从站的形式。图像处理单元和EtherCAT主站的数据共享由KRTS软件框架完成。控制系统总体设计方案如图1所示。

图1 控制系统总体设计方案框图

2 控制系统实验硬件搭建

控制器采用安装Windows系统的PC或者IPC,要求具有双网卡,分别用于EtherCAT通信和相机通信。

视觉检测的硬件部分主要是工业相机、镜头及光源等。视觉检测硬件框图如图2所示,光源给相机采集图像提供必要的亮度以避免环境干扰;光电传感器用于检测工件,当工件到达指定工位后,光电传感器工作,触发工业相机,进行信息的采集;工业相机选用具有千兆以太网GigE接口的工业相机,具有传输速率快、性能稳定的特点。

图2 视觉检测硬件框图

EtherCAT从站使用本课题组设计的测控从站。该从站由从站控制器倍福ET1100和微处理器STM32共同搭建,包括通信板和测控板两部分。通信板经网口实现与系统主站的EtherCAT通信功能,接收系统主站发送的EtherCAT下行数据帧并进行解析,获取主站发送的控制信息并将控制信息通过SPI接口转发给测控板微处理器STM32,同时将测控板采集的数据信息经SPI接口插入到EtherCAT数据帧中返回给主站。测控板为测控系统测量及控制功能的实现单元,包括8路开关量输入、4路脉冲量输入、8路模拟量输入以及8路开关量输出、4路脉冲量输出、4路模拟量输出等功能[14]。测控从站实物图如图3所示。

图3 EtherCAT从站实物图

该系统主要使用其中的4路脉冲量输出功能,该部分硬件框架如图4所示。EtherCAT从站采用SM同步模式,收到主站下发的EtherCAT数据帧后,从站响应PDI(Process Data Interface)中断,执行PWM脉冲输出任务。由STM32定时器完成PWM输出至驱动器。

图4 EtherCAT从站脉冲输出部分硬件框架图

运动执行机构使用三自由度工作台,由步进电机驱动,装有限位开关。工作台实物图如5所示。

图5 工作台实物图

3 软件平台搭建

3.1 软件平台简介

由于EtherCAT总线采用主从模式,通信由主站发起,必须在极短的通信周期内完成通信任务。因此,主站平台必须具有稳定的实时性能。机器视觉部分在要求图像传输速率快速稳定外,必须能够实时完成图像处理并与EtherCAT主站共享通信数据。控制器采用软件平台采用德国Kithara公司开发的基于Windows的实时套件KRTS(Kithara RealTime Suite)。

KRTS是Kithara构建的基于Windows的实时子系统下的功能模块,以提供相关API的方式,将具有实时性要求的功能通过动态链接库DLL的形式加载到内核层执行,为应用程序提供特定的功能或服务。其实时套件包括Ether-CAT主站模块、以太网通信模块、实时视觉模块等。其实时性能能够达到微妙级抖动,满足控制系统要求。能够将不同的任务分配到指定的CPU中执行,提高实时处理性能。此外,KRTS通过不同虚拟地址映射同一物理地址的方式提供特殊的共享内存机制,不仅能够实现应用层之间的数据共享,也能够实现内核层与应用层之间的数据共享。EtherCAT主站和图像处理的通与共享内存相关的API来实现[15-16]。软件的具体开发在VS2010开发环境下完成。

3.2 控制系统软件设计

控制系统软件流程图如图6所示。程序开始运行后,首先加载Kithara驱动并初始化KRTS,完成实时内核的加载和共享内存的创建。实时内核用于处理EtherCAT主站的控制命令、主从站之间的实时周期通信、图像数据的接收以及图像数据的实时处理。运动控制部分完成EtherCAT主从站的初始化及其之间的周期通信,根据图像检测处理后由共享内存传来的实时数据执行相应的控制命令。

图6 控制系统软件流程图

运动控制部分主要是EtherCAT主站及主从站之间通信的建立。EtherCAT主站建立流程图如图7所示。首先,打开用于EtherCAT主从站之间通信的网卡。然后,创建数据集和定时器及其回调函数,数据集主要用于存放EtherCAT通信相关的数据,在主站接收到从站的数据帧后进入数据集回调函数进行EtherCAT数据的处理,定时器用于周期性发送EtherCAT数据帧。数据集回调函数及定时器回调函数都在内核层执行,保证EtherCAT通信的实时性。其次,扫描并建立EtherCAT从站,根据从站设备描述文件获取实时传递的数据接口信息[9]。最后,开启定时器建立EtherCAT主、从站之间的数据通信。

图7 EtherCAT主站建立流程图

视觉检测部分初始化包括工业相机的初始化配置,图像处理算法的加载配置。图像处理算法采用开源计算机视觉库OpenCV,OpenCV算法在内核层中执行保证图像处理的实时性。具体执行过程如图8所示。接收到图像信息后首先判断图像格式,进而转换为OpenCV图像格式。在程序中OpenCV图像处理任务与图像接收任务分配在不同的CPU中执行,因此在确定图像格式可处理后即可释放图像接收缓存用于下一帧图像的接收,提高系统效率。图像处理完成后将处理结果及对应控制信息写入共享内存,用于界面显示和运动控制。

控制系统人机界面完成采集图像的显示及对硬件系统的控制,需要设定EtherCAT主站及视觉检测使用的网卡及EtherCAT的通信周期。控制界面如图9所示。

4 实验

4.1 控制系统实验平台搭建

将控制系统安装到普通计算机,以检测圆形工件——三自由度工作台循环移动为例,测试控制系统。实验平台实物图如图10所示。部分实验平台硬件信息如表1所示。当工业相机检测到圆形工件后,工作台作出相应运动,达到图像实时处理、运动实时控制的目的。

图8 图像处理流程

表1 试验台硬件信息

4.2 控制系统实时性测试

图9 控制系统界面

图10 实验平台实物图

控制系统的实时性决定了系统作出稳定相应的性能。控制系统能够稳定地提供低抖动的定时器是衡量系统实时性的主要指标。本文作者通过测量装有Kithara内核的普通PC对1 ms定时器的抖动值来衡量其实时性。测量结果如图11所示,该结果表明控制系统的1 ms定时抖动基本稳定在10 s左右,抖动小,系统实时性能可靠,响应快速。

图11 系统的1ms定时器抖动

5 结束语

本文作者基于德国Kithara公司KRTS设计出一套集成视觉检测和EtherCAT总线的运动控制系统。视觉检测的图像处理与运动控制都在实时内核中完成,在相机采集速度满足的条件下基于GigE接口的稳定快速图像传输以及EtherCAT总线的高效运动控制数据传输使得本控制系统能够完成实时性要求较高的检测及运动控制。同时,将视觉检测处理控制部分与运动控制部分结合在同一台PC中完成,降低控制成本。圆形工件检测——三自由度工作台循环移动的实验表明,控制系统达到实时图像检测处理与实时运动控制融合的目的。因此,在多控制任务融合的控制系统发展趋势下该系统将会广泛应用于工业发展。

猜你喜欢

主站实时性内核
多内核操作系统综述①
强化『高新』内核 打造农业『硅谷』
活化非遗文化 承启设计内核
基于S7-1200 PLC的DP总线通信技术在马里古伊那水电站泄洪冲沙孔门机上的应用
Linux内核mmap保护机制研究
变电站综合自动化系统调试新方法研究
航空电子AFDX与AVB传输实时性抗干扰对比
EtherCAT主站与主站通信协议的研究与实现*
多表远程集抄主站系统
计算机控制系统实时性的提高策略