一种视觉控制装置及方法与流程

文档序号:18474763发布日期:2019-08-20 20:51阅读:245来源:国知局
一种视觉控制装置及方法与流程

本发明涉及工业控制技术领域,尤其涉及一种视觉控制装置及方法。



背景技术:

传感器、控制器、机器人等设备的不断融合带来了推动了智能工厂和信息物理系统等的发展。工业自动化各个领域中的plc系统、运动控制系统和视觉系统变得越来越重要且不可分割。目前的应用中,通过视觉系统、运动控制系统和plc系统单独开发然后使用通信协议组合实现。

目前,由于应用场景的不同,三个系统的程序都需要定制化开发,同时各开发平台具有差异性。而系统间繁多的通信协议(例如,ethercat、modbus、can)进一步导致了开发的难度。

同时,视觉、逻辑和运动控制的综合应用程序总是在许多视觉系统、plc和运动控制器中组合形成系统,增加了复杂性。

结合上述两点,客户需求难度在不断提高,开发相应可自主融合三大系统的应用程序已成为开发人员任务的重中之重。

故,针对现有技术的缺陷,实有必要提出一种技术方案以解决现有技术存在的技术问题。



技术实现要素:

有鉴于此,确有必要提供一种视觉控制装置及方法,通过多层体系结构的视觉控制算法融合协议,实现视觉系统,plc系统和运动控制系统的集成,有利于实现视觉算法,逻辑控制程序,运动控制算法的扩展和复用,以降低集成应用复杂度。

为了解决现有技术存在的技术问题,本发明的技术方案如下:

一种视觉控制装置,至少设置eplc系统和视觉系统,其中,所述eplc系统和视觉系统之间采用视觉控制协议进行数据通信以实现系统之间数据标准化交互;所述视觉控制协议至少设置柔性层、控制层和算法层,所述柔性层用于实现eplc系统和视觉系统的连接;所述控制层用于处理逻辑任务,所述算法层设置多种算法,用于根据用户应用需求选择相应算法以实现高性能要求。

作为进一步的改进方案,所述eplc系统和视觉系统分别设置协议模板,所述协议模板用于管理视觉控制协议以实现定制化应用。

作为进一步的改进方案,所述协议模板至少包含模板首部、视觉控制帧模板、算法帧模板和参数帧模板,其中,

协议帧首部包括通信协议识别码和模板数据存储地址;

视觉控制帧模板包括模块唯一识别码、算法数量、参数数量、模块数据起始地址、模块启动标记、模块数据保存标准、所含算法识别码和所含参数识别码;每个视觉控制帧模板包含多个算法识别码和参数识别码;

算法帧模板:包括算法识别码、参数数量、算法数据起始地址、算法数据保存标准以及所含参数识别码;每个算法帧模板包含多个参数识别码;

参数帧模板:包含参数识别码、视觉算法参数识别码以及视觉和运动算法参数的转换比率。

作为进一步的改进方案,视觉控制协议至少设置视觉控制协议帧、算法帧和参数帧,其中,视觉控制协议帧至少包括了模块识别码、协议帧长度、参数帧数据和算法帧数据;参数帧数据和算法帧数据分别包含多个参数帧和控制帧;协议模板和视觉控制协议帧中的模块识别码一一对应;

算法帧至少包括算法识别码、控制帧长度和参数帧数据组成;算法帧和协议模板中的算法识别码需要一一对应;

参数帧至少包含参数识别码和参数数据;参数识别码为参数数据的地址;参数帧和协议模板中的参数识别码需要一一对应。

作为进一步的改进方案,根据应用需求配置所述并将其该协议模板加载到视觉系统和eplc系统的固定地址中。

作为进一步的改进方案,每个协议模板对应一种应用类型,所述eplc系统和视觉系统采用相同的协议模板。

作为进一步的改进方案,所述eplc系统和视觉系统设置解析模块,所述解析模块用于读取协议模板并进行解析,其中,在eplc系统和视觉系统中采用相同的组帧算法和和解帧算法以实现双向传输协议帧。

作为进一步的改进方案,组帧算法至少包括以下三个步骤:视觉控制组帧,算法组帧和参数组帧;

视觉控制组帧:首先通过模块识别码在协议模板中搜索得到mptx(视觉帧模板集合中的第x个),从而获包含的算法帧数量和参数帧数量;根据mptx包含算法识别码和数据识别码以及通过下述的算法组帧和参数组帧方法获得参数帧数据和算法帧数据;最后计算协议帧长度完成视觉控制组帧;

算法组帧:首先通过算法识别码在协议模板中搜索获得apty(算法帧模板集合中的第y项),apty包含参数帧数量;根据参数帧数量,调用参数组帧算法来获得参数帧数据,最后计算算法帧长度后完成;

参数组帧:根据参数识别码在协议模板中搜索获得pptz(参数帧模板集合中的第z项),然后将参数识别码和参数数据组合成参数帧。

作为进一步的改进方案,解帧算法包括以下三个步骤:视觉控制解帧,算法解帧和参数解帧;视觉控制解帧:分别从解帧指针的起始四个和接着四个字节的数据中获得模块识别码和视觉帧长度;根据模块识别码搜索协议模板获得相关mptx,将从解帧指针+8个字节开始的视觉帧长度-8字节发送到存放模块数据的起始地址;

算法解帧:根据模块识别码搜索协议模板找到相关mptx,循环处理包含的参数帧;在每个循环中,数据与参数识别码一起发送到接收数据区域;循环处理算法帧;在每个循环中,使用算法识别码来找到apty并将算法帧的数据发送到接收数据区域的相关地址;

参数解帧:使用算法识别码获得apty,循环处理算法帧,根据参数识别码将参数发送到接收数据区域。

本发明还提出了一种视觉控制方法,采用视觉控制协议实现eplc系统和视觉系统之间数据标准化交互;所述视觉控制协议至少设置柔性层、控制层和算法层,所述柔性层用于实现eplc系统和视觉系统的连接;所述控制层用于处理逻辑任务,所述算法层设置多种算法,用于根据用户应用需求选择相应算法以实现高性能要求;

在eplc系统和视觉系统中分别设置协议模板并通过配置协议模板管理视觉控制协议以实现定制化应用,其中,采用相同的协议模板、组帧算法和解帧算法实现双向传输协议帧。

与现有技术相比较,本发明通过多层体系结构的视觉控制算法融合协议实现视觉系统、plc系统和运动控制系统的集成,有利于实现视觉算法,逻辑控制程序,运动控制算法的扩展和复用,以降低集成应用复杂度。

附图说明

图1为本发明视觉控制装置的系统结构图。

图2为本发明中视觉控制协议的结构框图。

图3为本发明中协议模板的示意图。

图4为本发明中协议帧的示意图。

图5为本发明中组帧和解帧的示意图。

图6为本发明一种实施例的装置结构图。

图7为本发明一种实施例的协议模板示意图。

图8为本发明一种实施例的视觉控制协议帧示意图。

如下具体实施例将结合上述附图进一步说明本发明。

具体实施方式

以下将结合附图对本发明提供的技术方案作进一步说明。

参见图1,所示为本发明提供一种视觉控制装置的系统结构图,至少设置eplc系统和视觉系统,其中,所述eplc系统和视觉系统之间采用视觉控制协议(视觉控制算法融合visioncontrolalgorithm)进行数据通信以实现系统之间数据标准化交互;其中,eplc包含传统plc功能和运动控制功能。eplc是一种定制结构,其数字输入/输出,模拟输入/输出的数量和受控伺服系统的数量能根据需求变化而变化。尤其是可以为高性能运动控制程序定制eplc处理器的数量。包含运动控制功能的应用通常采用两个及以上的处理器,其一主要用于逻辑控制,另一个用于运动控制。装置图显示的一个典型的eplc,它采用的是双处理器结构:主处理器和从处理器。视觉系统通常包含一至多个摄像机和用于进行视觉任务的处理器。eplc与视觉系统之间的通信协议包括tcp、modbus和can等。

参见图2,所示为本发明视觉控制协议的结构图,结构图表示的是多层体系结构。该结构包括三层:柔性层、控制层和算法层。柔性层负责连接视觉系统和由plc接口和eplc。通过保存在ram中的协议模板可以实现数据在视觉系统和eplc之间对应交互。在两个系统中均保存特定的协议模板以实现视觉控制(视觉控制算法融合visioncontrolalgorithm)协议。

控制层使得处理逻辑和运动控制算法分离,从而实现处理逻辑和运动控制算法在不同处理器中独立运行。

算法层包含多种算法。独立算法层允许算法可以在单个处理器中达到高性能要求。

需要指出的是,上述三层结构是软件上的;算法保存在eplc;用户通过设置协议模板来对应数据在三层之间的流转,而具体算法是单独开发的;两个系统中的模板是一样的;需要选择一样的模板;协议模板是存储在ram中,和软件的三层架构没有关系;协议模板保存三层间数据交互的对应关系,独立于三层软件架构,而算法层是三层中的一层。

参见图3,展示了协议模板的结构。协议模板存储在视觉系统和eplc的ram中。本发明采用协议模板来支持各种类型的功能实现,并且协议模板一一对应一种类型的应用。在本发明提出架构中,用户只需要重新设计和重新加载协议模板,然后他们就可以复用视觉控制系统。协议模板可以加载到视觉系统和eplc系统的固定地址当中。重新启动两个系统后,它将被存储到固定内存区域。两个系统的解析模块将在解析协议帧时读取它。协议模板包含四个部分:模板首部,视觉控制帧模板,算法帧模板和参数帧模板。

其中每个部分解释如下:

协议帧首部:包括通信协议识别码和模板数据存储地址。

视觉控制帧模板:包括模块唯一识别码,算法数量,参数数量,模块数据起始地址,模块启动标记,模块数据保存标准,所含算法识别码和所含参数识别码。其中视觉控制帧模板不能为空,每个视觉控制帧模板可包含多个算法识别码和参数识别码。

算法帧模板:包括算法识别码,参数数量,算法数据起始地址,算法数据保存标准,以及所含参数识别码。算法帧模板不能为空,每个算法帧模板可包含多个参数识别码。

参数帧模板:它包含参数识别码,相关的视觉算法参数识别码,以及视觉和运动算法参数的转换比率。

参见图4,所示为视觉控制协议帧的示意图,视觉控制协议帧在其数据字段中包含参数帧和算法帧。算法协议帧包含参数帧,其中,

视觉控制协议帧:包括了模块识别码,协议帧长度,参数帧数据和算法帧数据。参数帧数据和算法帧数据分别包含多个参数帧和控制帧。协议模板和视觉控制协议帧中的模块识别码需要一一对应。

算法帧:由算法识别码,控制帧长度和参数帧数据组成。算法帧和协议模板中的算法识别码需要一一对应。

参数帧:包含参数识别码和参数数据。参数识别码也是参数数据的地址。参数帧和协议模板中的参数识别码需要一一对应。

参见图5,所示为本发明组帧和解帧的示意图,采用协议模板来支持各种类型的功能实现,并且协议模板一一对应一种类型的应用。在本发明提出架构中,用户只需要重新设计和重新加载协议模板,即可复用视觉控制系统。协议模板可以加载到视觉系统和eplc系统的固定地址中。重新启动两个系统后,协议模板将被存储到固定内存区域。两个系统的解析模块将在解析协议帧时读取它。使用相同的协议模板和组帧算法,解帧算法可实现双向传输协议帧。

组帧包括以下三个步骤:视觉控制组帧,算法组帧和参数组帧。传输数据区保存要传输的数据,并由参数唯一识别码索引。在视觉系统中,它表示从视觉算法获得的参数。在eplc中,数据来自内存区域。

视觉控制组帧:首先通过模块识别码在协议模板中搜索得到mptx(视觉帧模板集合中的第x个),从而获包含的算法帧数量和参数帧数量。根据mptx包含算法识别码和数据识别码以及通过下述的算法组帧和参数组帧方法获得参数帧数据和算法帧数据。最后计算协议帧长度完成视觉控制组帧。

算法组帧:首先通过算法识别码在协议模板中搜索获得apty(算法帧模板集合中的第y项),apty包含参数帧数量。根据参数帧数量,调用参数组帧算法来获得参数帧数据,最后计算算法帧长度后完成。

参数组帧:根据参数识别码在协议模板中搜索获得pptz(参数帧模板集合中的第z项),然后将参数识别码和参数数据组合成参数帧。

解帧包括以下三个步骤:视觉控制解帧,算法解帧和参数解帧。下述接收数据区域用于保存解帧参数。接收数据区域1,接收数据区域2和接收数据区域3均为临时存储数据区域。在视觉系统中,接收数据区域3保存的是反馈到视觉算法的数据。在eplc中,接收数据区域1,接收数据区域2和接收数据区域3分别为逻辑程序数据区,主从数据交换数据区和算法数据区。

视觉控制解帧:分别从解帧指针的起始四个和接着四个字节的数据中获得模块识别码和视觉帧长度。根据模块识别码搜索协议模板获得相关mptx。将从解帧指针+8个字节开始的视觉帧长度-8字节发送到存放模块数据的起始地址。

算法解帧:根据模块识别码搜索协议模板找到相关mptx。循环处理包含的参数帧。在每个循环中,数据与参数识别码一起发送到接收数据区域3。循环处理算法帧。在每个循环中,使用算法识别码来找到apty并将算法帧的数据发送到接收数据区域2的相关地址。

参数解帧:使用算法识别码获得apty。循环处理算法帧。根据参数识别码将参数发送到接收数据区域3。

上述六种算法的执行顺序是参数组帧,算法组帧,视觉控制组帧,视觉控制解帧,算法解帧和参数解帧,如图5所示。其中,视觉控制组帧将同时调用参数组帧。传输视觉控制协议帧的方向可以是从视觉系统到eplc或从eplc到视觉系统。从视觉系统到eplc方向上时,参数组帧,算法组帧和视觉控制组帧在视觉系统中运行,其余算法在eplc中运行。从eplc到视觉系统方向上时,参数组帧,算法组帧和视觉控制组帧在eplc中运行,其余算法在视觉系统中运行。

本发明还提出了一种视觉控制方法,采用视觉控制协议实现eplc系统和视觉系统之间数据标准化交互;所述视觉控制协议至少设置柔性层、控制层和算法层,所述柔性层用于实现eplc系统和视觉系统的连接;所述控制层用于处理逻辑任务,所述算法层设置多种算法,用于根据用户应用需求选择相应算法以实现高性能要求;

在eplc系统和视觉系统中分别设置协议模板并通过配置协议模板管理视觉控制协议以实现定制化应用,其中,采用相同的协议模板、组帧算法和解帧算法实现双向传输协议帧。协议模板、组帧算法和解帧算法参见上述所述,在此不再赘述。

参见图6-8,所示为本发明一种优选实施例的示意图。图6示出双目捕捉机器人采用两个摄像机来判断空间中的球位置。通过不断向eplc发送参数,机器人运行到接住球的位置并最终捕获它。

1)协议模板的设计:将直角坐标尔机器人的三个轴命名为x轴,y轴和z轴。用pid1,pid3,pid5和pid2,pid4,pid6分别表示x轴,y轴和x轴的位置和速度参数识别码。视觉系统使用米和米/秒(m/s)分别测量距离和速度。图7是所设计的协议模板。

2)视觉控制协议帧在视觉系统和eplc间的交互过程:视觉系统将视觉控制协议帧发送到eplc以调整目的地和速度,直到将最终位置发送给eplc完成接球。帧内容如图8所示。

以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1