首页 / 专利库 / 电池与电池 / 化成 / 一种多通道视觉检测控制方法、系统软件架构及构建方法

一种多通道视觉检测控制方法、系统软件架构及构建方法

阅读:298发布:2021-04-14

专利汇可以提供一种多通道视觉检测控制方法、系统软件架构及构建方法专利检索,专利查询,专利分析的服务。并且本 发明 公开一种多通道视觉检测控制方法、系统 软件 架构及构建方法,其中,视觉检测控制 系统软件 架构构建方法包括以下步骤:构建 传感器 和相机快速插拔 接口 ,完成摄像头初始配置和传感器通道配置;构建检测 进程 池和用于检测数据存储的 数据处理 进程,并在检测进程池中初始化多个检测进程;主线程初始化线程池,线程池包括产品 图像采集 处理线程池以及产品剔废处理线程池;建立并初始化一个踢废队列;主线程接收到传感器发出的 信号 后,从线程池中获取一个线程进行处理。通过使用上述方法及系统架构,能有效地降低检测控制系统软件的开发难度;提供了传感器和相机的接口设计,能快速实现 硬件 的增减,有利于现场的快速配置。,下面是一种多通道视觉检测控制方法、系统软件架构及构建方法专利的具体信息内容。

1.一种视觉检测控制系统软件架构构建方法,其特征在于,包括以下步骤:
构建传感器和相机快速插拔接口,完成摄像头初始配置和传感器通道配置;
构建检测进程池和用于检测数据存储的数据处理进程,并在所述检测进程池中初始化多个检测进程;其中,所述检测进程池对应有一个主线程;
主线程初始化线程池,所述线程池包括产品图像采集处理线程池以及产品剔废处理线程池;
建立一个踢废队列,并完成初始化,分配好用于踢废数据存储内存空间;其中,所述踢废队列为双向队列;
主线程接收到传感器发出的信号后,从线程池中获取一个线程进行处理。
2.根据权利要求1所述构建方法,其特征在于,所述主线程接收到传感器发出的信号后,从线程池中获取一个线程进行处理的步骤包括:
建立一个任务队列,一个忙队列和一个空闲队列,并完成初始化,分配好内存空间,用于线程请求
初始化所述线程池,并且预生产多个用于快速响应所述任务队列的线程请求的线程;
所述主线程在接收到所述传感器发出的信号的时候,从所述线程池中获取一个空闲线程,并将所述空闲线程放入到所述忙队列中;
将回调函数指针和参数链接到所述空闲线程中,唤醒所述空闲线程,在run()函数中执行用户的回调函数,所述空闲线程完成任务;
统计所述空闲队列的数量;若所述空闲队列中的数量大于预设最大运行空闲值,则结束掉所述空闲线程;反之,则将所述空闲线程重新放回到空闲队列中。
3.根据权利要求1所述构建方法,其特征在于,所述主线程接收到传感器发出的信号后,从线程池中获取一个线程进行处理的步骤包括:
主线程接收到来料传感器发出的信号后,从产品图像采集处理线程池中获取一个第一线程进行处理,所述第一线程控制所述相机拍照和进行图形运算,并将得到的数据压入所述踢废队列的末端;
主线程接收到踢废传感器发出的信号后,从产品剔废处理线程池中获取一个第二线程进行处理,所述第二线程从所述踢废队列中获取并解析队首数据,判断是否进行踢废处理。
4.一种视觉检测控制方法,其特征在于,包括以下步骤:
接收产品经过来料传感器产生的来料信号,从产品图像采集处理线程池中获取一个第一线程进行处理,控制相机对所述产品拍照并对拍照的图形进行处理;
接收所述产品经过踢废传感器产生的触发信号,从产品剔废处理线程池中获取一个第二线程进行处理,所述第二线程从踢废队列中获取队首的数据,解析所述队首数据,判断是否进行踢废处理;其中,所述踢废队列是预先建立的且分配有用于数据存储内存空间。
5.根据权利要求4的检测控制方法,其特征在于,所述对拍照的图形进行处理包括:
对图像进行图像分割、边缘处理和缺陷判断;
若是判断图像对应的产品存在缺陷,则生成一个不合格产品信息数据,并将所述不合格产品信息数据压入踢废队列的末端;若是判断图像对应的产品不存在缺陷,则生成一个合格产品信息数据,并将所述合格产品信息数据压入踢废队列的末端;其中,所述踢废队列为双向队列。
6.根据权利要求4或5所述的检测控制方法,其特征在于,所述第二线程从踢废队列中获取队首数据,解析所述队首数据,判断是否进行踢废处理的方法为:
若所述队首数据为所述合格产品信息数据,不进行踢废处理;
反之,则将不合格产品信息数据对应的所述产品踢出。
7.一种视觉检测控制系统软件架构,其特征在于,包括:
一个主线程,用于接收产品经过传感器产生的信号,从线程池中获取线程并完成处理;
一个产品图像采集处理模,与所述主线程相连,用于对产品进行图像采集,对所述图像进行图像分割、边缘处理并判断图像对应的产品是否存在缺陷,若是判断图像对应的产品存在缺陷,则生成一个不合格产品信息数据,并将所述不合格产品信息数据压入踢废队列的末端;若是判断图像对应的产品不存在缺陷,则生成一个合格产品信息数据,并将所述合格产品信息数据压入踢废队列的末端;
一个产品剔废处理模块,与所述主线程相连,并与产品图像采集处理模块相连,用于生成一个第二线程,并根据所述踢废队列中依次弹出的数据判断是否执行踢废动作,若所述弹出的数据是所述不合格产品信息数据,则执行踢废动作,若所述弹出的数据是所述合格产品信息数据,则不执行踢废动作。
8.根据权利要求7所述的软件架构,其特征在于,所述产品图像采集处理模块与所述产品剔废处理模块分别对应建立有第一线程池与线程池;其中,
所述第一线程池产生所述第一线程;
所述第二线程池产生所述第二线程。
9.根据权利要求7所述的软件架构,其特征在于,所述踢废队列是双向队列。
10.根据权利要求8所述的软件架构,其特征在于,所述第一线程池与所述第二线程池中分别预设有多个线程。

说明书全文

一种多通道视觉检测控制方法、系统软件架构及构建方法

技术领域

[0001] 本发明涉及视觉检测控制系统软件架构领域,具体涉及一种低成本多通道视觉检测控制方法、系统软件架构及构建方法。

背景技术

[0002] 随着视觉检测技术的不断发展,应用范围也不断扩大。视觉检测系统从硬件组成上主要分为两大类:基于X86架构的PC系统和基于ARM架构的嵌入式系统。ARM架构的形式的集中度最高,PC系统集成度相对较低。但PC系统运用最为广泛,也是视觉检测系统最早的采用形式。
[0003] 基于ARM架构的嵌入式系统飞速发展,硬件设备越来越高。不断攀升的硬件设备,对于一些附加值较低,又急需提升产品质量的行业造成极大的产业升级成本。
[0004] 目前,从现有的资料来看,基于X86架构的PC系统所架设的视觉检测系统最为便宜。但对使用环境要求较高,一是对产品的间距一致性和定位精度要求高,这样就要求与检测系统所配套的工装设计精度和复杂性提高,不利于实际运用;二是在多通道图像采集过程中,软件架构体系复杂,实施起来难度很大。
[0005] 现有的基于X86的PC系统的检测系统,因其硬件较为便宜,要求配套结构设计精度要求过为苛刻,软件架构上面设计又臃肿复杂,难以适用于附加值较低的行业的自动化提升需求。

发明内容

[0006] 有鉴于此,本发明的目的之一在于提供一种低成本多通道视觉检测控制系统软件架构构建方法,有效降低检测控制系统软件的开发难度,缩短开发周期。
[0007] 为实现上述目的,本发明的技术方案为:
[0008] 一种视觉检测控制系统软件架构构建方法,包括以下步骤:
[0009] 构建传感器和相机快速插拔接口,完成摄像头初始配置和传感器通道配置;
[0010] 构建检测进程池和用于检测数据存储的数据处理进程,并在检测进程池中初始化多个检测进程;其中,所述检测进程池对应有一个主线程;
[0011] 主线程初始化产品图像采集处理线程池以及产品剔废处理线程池;
[0012] 建立一个踢废队列,并完成初始化,分配好用于踢废数据存储内存空间;其中,所述踢废队列为双向队列;
[0013] 主线程接收到传感器发出的信号后,从线程池中获取一个线程进行处理。
[0014] 进一步地,所述主线程接收到传感器发出的信号后,从线程池中获取一个线程进行处理的步骤包括:
[0015] 建立一个任务队列,一个忙队列和一个空闲队列,并完成初始化,分配好内存空间,用于线程请求
[0016] 初始化线程池,并且预生产多个用于快速响应所述任务队列的线程请求的线程;
[0017] 所述主线程在接收到所述传感器发出的信号的时候,从所述线程池中获取一个空闲线程,并将所述空闲线程放入到所述忙队列;
[0018] 将回调函数指针和参数链接到所述空闲线程中,唤醒所述空闲线程,在run()函数中执行用户的回调函数,所述空闲线程完成任务;
[0019] 统计所述空闲队列的数量;若所述空闲队列中的数量大于预设最大运行空闲值,则结束掉所述空闲线程;反之,则将所述空闲线程重新放回到空闲队列中。
[0020] 进一步地,所述主线程接收到传感器发出的信号后,从线程池中获取一个线程进行处理的步骤包括:
[0021] 主线程接收到来料传感器发出的信号后,从产品图像采集处理线程池中获取一个第一线程进行处理,所述第一线程控制所述相机拍照和进行图形运算,并将得到的数据压入所述踢废队列的末端;
[0022] 主线程接收到踢废传感器发出的信号后,从产品剔废处理线程池中获取一个第二线程进行处理,所述第二线程从所述踢废队列中获取并解析队首数据,判断是否进行踢废处理。
[0023] 有鉴于此,本发明的目的之二在于提供一种视觉检测控制方法,使视觉检测控制系统的检测质量的成功率更高,对系统的稳定性要求较低。
[0024] 为实现上述目的,本发明的技术方案为:
[0025] 一种视觉检测控制方法,包括以下步骤:
[0026] 接收产品经过来料传感器产生的来料信号,从产品图像采集处理线程池中获取一个第一线程进行处理,控制相机对所述产品拍照并对拍照的图形进行处理;
[0027] 接收所述产品经过踢废传感器产生的触发信号,从产品剔废处理线程池中获取一个第二线程进行处理,所述第二线程从踢废队列中获取队首的数据,解析所述队首数据,判断是否进行踢废处理;其中,所述踢废队列是预先建立的且分配有用于数据存储内存空间。
[0028] 进一步地,所述对拍照的图形进行处理包括:
[0029] 对图像进行图像分割、边缘处理和缺陷判断;
[0030] 若是判断图像对应的产品存在缺陷,则生成一个不合格产品信息数据,并将所述不合格产品信息数据压入踢废队列的末端;若是判断图像对应的产品不存在缺陷,则生成一个合格产品信息数据,并将所述合格产品信息数据压入踢废队列的末端;其中,所述踢废队列为双向队列。
[0031] 进一步地,所述第二线程从踢废队列中获取队首数据,解析所述队首数据,判断是否进行踢废处理的方法为:
[0032] 若所述队首数据为所述合格产品信息数据,不进行踢废处理;
[0033] 反之,则将不合格产品信息数据对应的所述产品踢出。
[0034] 有鉴于此,本发明的目的之三在于提供一种视觉检测控制系统软件架构,将控制系统软件的各项功能合理地分配到两个模之中,各个模块独立性高,方便维护和升级。
[0035] 为实现上述目的,本发明的技术方案为:
[0036] 一种视觉检测控制系统软件架构,包括:
[0037] 一个主线程,用于接收产品经过传感器产生的信号,从线程池中获取线程并完成处理;
[0038] 一个产品图像采集处理模块,与主线程相连,用于对经过的产品进行图像采集,对图像进行图像分割、边缘处理并判断图像对应的产品是否存在缺陷,若是判断图像对应的产品存在缺陷,则生成一个不合格产品信息数据,并将不合格产品信息数据压入踢废队列的末端;若是判断图像对应的产品不存在缺陷,则生成一个合格产品信息数据,并将合格产品信息数据压入踢废队列的末端;
[0039] 一个产品剔废处理模块,与所述主线程相连,并与产品图像采集处理模块相连,用于生成一个第二线程,并根据所述踢废队列中依次弹出的数据判断是否执行踢废动作,若所述弹出的数据是所述不合格产品信息数据,则执行踢废动作,若所述弹出的数据是所述合格产品信息数据,则不执行踢废动作。
[0040] 进一步地,所述产品图像采集处理模块与所述产品剔废处理模块分别对应建立有第一线程池与线程池;其中,
[0041] 所述第一线程池产生所述第一线程;
[0042] 所述第二线程池产生所述第二线程。
[0043] 进一步地,所述踢废队列是双向队列。
[0044] 进一步地,所述第一线程池与所述第二线程池中分别预设多个线程。
[0045] 有益效果
[0046] 本发明公开的一种低成本多通道视觉检测控制系统软件架构及构建方法,是基于多线程和双向队列等技术手段。本发明将控制系统软件的各项功能合理地分配到两个线程池中,通过使用多线程技术,避免了在产品检测过程中,检测产品之间的间隔距离一致的要求,有效地降低了检测控制系统结构设计的难度,以及传送带的速度稳定性要求,无需使用分拨盘等设施;且实施过程简单,可有效地降低检测控制系统软件的开发难度,缩短开发周期;各个模块独立性高,方便维护和升级。本发明提供的视觉检测控制系统软件架构还提供了传感器和相机的接口设计,能快速实现硬件的增减,有利于现场的快速配置。附图说明
[0047] 为了更清楚地说明本发明实施例现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍。显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
[0048] 图1为本发明的一种视觉检测控制系统拓扑图;
[0049] 图2为本发明的一种视觉检测控制系统器件安装示意图;
[0050] 图3为本发明的一种视觉检测控制系统构建软件架构方法流程图
[0051] 图4a为本发明的一种视觉检测控制系统构建软件架构方法中步骤S140的一实施例流程图;
[0052] 图4b为本发明的一种视觉检测控制系统构建软件架构方法中步骤S140的另一实施例流程图;
[0053] 图4c为本发明的一种视觉检测控制系统构建软件架构方法中步骤S140的一具体实施例流程图;
[0054] 图5为本发明的一种视觉检测控制系统软件架构的一实施例结构示意图;
[0055] 图6为本发明的一种视觉检测控制方法的一实施例流程示意图。

具体实施方式

[0056] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0057] 所举实施例是为了更好地对本发明进行说明,但并不是本发明的内容仅局限于所举实施例。所以熟悉本领域的技术人员根据上述发明内容对实施方案进行非本质的改进和调整,仍属于本发明的保护范围。
[0058] 本发明中的低成本视觉检测控制方法和系统主要应用于生产企业中的质量检测,如药品包装检测,药品质量检测,出厂质量检测等等。参考图1,为本发明的一种视觉检测控制系统的一实施例拓扑图,其中包括承载本发明一种视觉检测控制系统架构的工控机,在本实施例中,工控机在通过IO卡(数据信息处理的集成卡)接收来料传感器和踢废传感器的信号后,分别发出控制指令触发相机拍照;另一方面,工控机要完成图像处理以及判断是否需要进行废品踢除工作。从图中可以看出,工控机是整个控制系统的主控制单元,不仅要处理外部的传感器信号,还要执行大量的运算,是整个控制系统的决定性单元;本发明就是针对工控机控制软件而设计的。当然,这只是一个特定的实施例,在其他实施例中,也可以是其他装置控制整个视觉检测控制系统的正常运转。
[0059] 在本实施例中,对视觉检测控制系统中的相关电气器件的一实施例安装示意图如图2,检测产品一次从左侧进入,由输送带将产品输送经过来料传感器、相机、踢废传感器、踢废气嘴。以上只是对本发明的实施场景的简单介绍,具体的实施方式参考以下实施例。
[0060] 实施例1
[0061] 参考图3,为本发明的一种视觉检测控制系统软件架构构建方法一实施例中流程示意图。一种视觉检测控制系统软件架构构建方法,包括以下步骤:
[0062] S100:构建传感器和相机快速插拔接口,完成摄像头初始配置和传感器通道配置;然后执行步骤S110;
[0063] 本实施例中,通过构建传感器和相机快速插拔接口,能通过对应的通道控制相机和传感器,视觉检测控制系统软件架构与相机、传感器实现通信交流,本实施例中,传感器的类型根据检测过程、检测工件自行选择,如红外传感器、接触感应传感器等。。
[0064] S110:构建检测进程池和用于检测数据存储的数据处理进程,并在检测进程池中初始化多个检测进程;然后执行步骤S120;
[0065] 本实施例中,检测进程池中存在产品检测过程中的所有进程,检测进程池对应有一个主线程,主线程实现视觉检测控制系统软件架构的检测运行过程。
[0066] S120:主线程初始化线程池;然后执行步骤S130;
[0067] 本实施例中,线程池包括产品图像采集处理线程池以及产品剔废处理线程池,其中产品图像采集处理线程池预先初始化多个用于图像采集、图像处理等功能的线程;产品剔废处理线程池预先初始化多个数据解析等功能的线程。
[0068] S130:建立一个踢废队列,并完成初始化,分配好用于踢废数据存储内存空间;然后执行步骤S140;
[0069] 本实施例中,可采用deque(双端队列)的方式建立一个踢废队列。
[0070] S140:主线程接收到传感器发出的信号后,从线程池中获取一个线程进行处理。
[0071] 在一具体实施例中,步骤S140具体的实施步骤参考图4a和图4b,其中,图4b中的AddJob指增加任务;m_AvailNum指线程可使用数量;m_AvailHigh指线程最大设定数量;m_AvailLow指线程最小设定数量;m_AvailLow-m_AvailNum指线程最小设定数量减去当前线程可使用数量;m_AvailNum-m_AvailHigh指当前线程可使用数量减去线程最大设定数量;DispenseJobThread指分配任务线程。具体步骤如下:
[0072] S141:建立一个任务队列,一个忙队列和一个空闲队列,并完成初始化,分配好内存空间,用于线程请求;然后执行步骤S142;
[0073] 本实施例中,任务队列,忙队列和空闲队列均可采用deque方式建立,其中空闲队列相当于记录进程池的空闲进程的记录表。
[0074] S142:初始化线程池,并且预生产多个用于快速响应任务队列的线程请求的线程;然后执行步骤S143;
[0075] S143:主线程在接收到传感器发出的信号的时候,从线程池中获取一个空闲线程,并将空闲线程放入到忙队列中;然后执行步骤S144;
[0076] S144:将回调函数指针和参数链接到空闲线程中,唤醒空闲线程,在run()函数中执行用户的回调函数,空闲线程完成任务;然后执行步骤S145;
[0077] S145:统计空闲队列的数量;若空闲队列中的数量大于预设最大运行空闲值,则结束掉所述空闲线程;反之,则将空闲线程重新放回到空闲队列中。
[0078] 在另一具体实施例中,在步骤S140中,传感器包括来料传感器和踢废传感器,线程池包括产品图像采集处理线程池和产品剔废处理线程池,具体的步骤参考图4c:
[0079] S146:主线程接收到来料传感器发出的信号后,从产品图像采集处理线程池中获取一个第一线程进行处理,第一线程控制所述相机拍照和进行图形运算;然后执行步骤S147;
[0080] 本实施例中,图形运算包括图像分割、边缘处理以及数据处理等,这些可以根据不同的需求定义,比如对一个产品做出厂质量检测,则预先定义一套对出厂质量检测的产品需要做的图形运算流程,之后所有对出厂质量检测产品的图形运算按照这个预先定义的流程操作,最后将数据处理后的数据压入踢废队列的末端。
[0081] S147:主线程接收到踢废传感器发出的信号后,从产品剔废处理线程池中获取一个第二线程进行处理,第二线程从踢废队列中获取并解析队首数据,判断是否进行踢废处理。
[0082] 本实施例中,第二线程连接踢废气嘴,当第二线程获得的队首数据被解析处需要进行踢废时,第二线程控制踢废气嘴的打开,将队首数据对应的产品从输送带上踢出。当然在其他实施例中也可以是其他能使输送带上的产品剔除的装置,如踢废气缸等。如果队首数据被解析出不需要进行踢废时,则不作任何操作,解析判断是否进行踢废处理可以按照预先定义好的数据报传递协议来确定队首数据对应的操作。
[0083] 实施例2
[0084] 基于实施例1的一种视觉检测控制系统软件架构构建方法,本实施例具体描述使用实施例1的视觉检测控制系统软件架构构建方法形成的一种视觉检测控制系统软件架构,具体地,参考图5本实施例中的一种视觉检测控制系统软件架构,包括:
[0085] 一个主线程200,用于接收产品经过传感器产生的来料信号,从线程池中获取线程并完成处理;
[0086] 本实施例中,传感器的类型可根据检测过程、检测工件自行选择,如红外传感器、接触感应传感器等。在本实施例中,有两个类型的传感器,一个来料传感器,一个踢废传感器;在一个具体实施例中,来料传感器和踢废传感器在感应到产品时会发出信号,本实施例中的主线程200接收到这个信号时,从线程池中获取一个线程,并完成相应的处理。
[0087] 一个产品图像采集处理模块210,与主线程200相连,用于对经过的产品进行图像采集,对所述图像进行图像分割、边缘处理并判断图像对应的产品是否存在缺陷,若是判断图像对应的产品存在缺陷,则生成一个不合格产品信息数据,并将所述不合格产品信息数据压入踢废队列的末端;若是判断图像对应的产品不存在缺陷,则生成一个合格产品信息数据,并将所述合格产品信息数据压入踢废队列的末端;
[0088] 本实施例中,产品图像采集处理模块210对应有一个产品图像采集处理线程池,该产品图像采集处理线程池预先设有多个第一线程,用于快速响应任务队列的线程请求,无需在运行时再动态创建第一线程。
[0089] 在一具体实施例中,主线程200接收到来料传感器发出的来料信号后,从产品图像采集处理模块210对应的产品图像采集线程池中获取一个第一线程,第一线程控制相机对产品拍照,并将拍照的图形进行图像分割、边缘处理并判断图像对应的产品是否存在缺陷;若是判断图像对应的产品存在缺陷,例如一个药品的包装存在漏气、缺的情况,则生成一个不合格产品信息数据,并将不合格产品信息数据压入踢废队列的末端;反之,则生成一个合格产品信息数据,并将合格产品信息数据压入踢废队列的末端。
[0090] 具体地,在一实施例中,预先规定需要检测产品的质量检测标准,比如药品的出厂包装的重量、尺寸等,当第一线程对经过的产品的照片进行图像分割等操作后,将操作后得到的检测数据与预先制定的质量标准检测数据进行对比,超出质量检测标准数据的即为不合格产品,第一线程也会相应生成一个不合格产品信息数据。当然,对于不同的产品,质量检测标准不同,需要的检测数据不同,对产品图像的操作也不同。
[0091] 一个产品剔废处理模块220,与主线程20相连,并与产品图像采集处理模块210相连,用于生成一个第二线程,并根据踢废队列中依次弹出的数据判断是否执行踢废动作,若弹出的数据是不合格产品信息数据,则执行踢废动作,若弹出的数据是合格产品信息数据,则不执行踢废动作。
[0092] 在一实施例中,产品剔废处理模块220对应有一个产品剔废处理线程池,并在产品剔废处理线程池中预设有多个第二线程,用于快速响应任务队列的线程请求,无需在运行时再动态创建第二线程。
[0093] 在一具体实施例中,主线程200在第一线程任务完成时,从产品剔废处理线程池中获取一个第二线程,第二线程会根据第一线程处理过的踢废队列中的数据进行处理,由于本实施例中,第一线程和第二线程之间使用双向队列进行通信,因此,第二线程根据踢废队列中的中的数据顺序,依次判断是否需要踢废。若第二线程判断出从踢废队列中获得的数据是是不合格产品信息数据,则执行踢废动作,第二线程控制踢废气嘴的打开,将不合格产品信息数据对应的产品踢出;当然在其他实施例中也可以是其他能使输送带上的产品剔除的装置,如踢废气缸等;若弹出的数据是合格产品信息数据,则不执行踢废动作。
[0094] 在本实施例中,通过预先定义好的数据报传递协议来判断踢废队列中的数据是否是合格产品数据。
[0095] 实施例3
[0096] 基于实施例1的一种视觉检测控制系统软件架构构建方法,和实施例2的一种视觉检测控制系统软件架构,本实施例具体描述一种视觉检测控制方法;具体地,参考图6,一种视觉检测控制方法,包括以下步骤:
[0097] S300:接收产品经过来料传感器产生的来料信号,从产品图像采集处理线程池中获取一个第一线程;然后执行步骤S310;
[0098] S310:第一线程控制相机对产品拍照并对拍照的图形进行图像分割、边缘处理;然后执行步骤S320;
[0099] S320:缺陷判断,判断图像对应的产品是否存在缺陷;
[0100] 若是判断图像对应的产品存在缺陷,则执行步骤S322;
[0101] 是判断图像对应的产品不存在缺陷,则执行步骤S324;
[0102] 本实施例中,产品的缺陷判断是通过将预先规定的产品质量检测标准与产品图像处理后的检测数据做对比得到的。比如,对一个产品的包装质量的检测,预先规定该产品的包装标准样式,形状、重量等数据,当该产品进行视觉检测时,第一线程通过将该产品的拍照图像进行图像分割等处理,将处理得到的检测数据与预想规定的质量检测标准数据做对比,如果超出质量检测标准的范围,就视为不合格产品,生成一个不合格产品信息数据。当然,这只是包装质量检测的标准,在其他的产品视觉检测中,如中间产品检测、出厂质量检测等等,需要制定不同的产品检测质量标准,因为需要的检测数据不一样,对产品图像的处理方式也就不一样。
[0103] S322:生成一个不合格产品信息数据,并将不合格产品信息数据压入踢废队列的末端;
[0104] S324:生成一个合格产品信息数据,并将合格产品信息数据压入踢废队列的末端。
[0105] 本实施例中,在执行完步骤S322或是S324之后,执行步骤S330;
[0106] S330:接收产品经过踢废传感器产生的触发信号,从产品剔废处理线程池中获取一个第二线程进行处理,然后执行步骤S340;
[0107] 本实施例中,传感器的类型根据检测过程、检测工件自行选择,如来料传感器和踢废传感器的种类可以是红外传感器、接触感应传感器等。
[0108] S340:第二线程从踢废队列中获取队首数据,解析队首数据;然后执行步骤S350;
[0109] S350:判断是否进行踢废处理;其中,踢废队列是预先建立的且分配有用于数据存储内存空间。
[0110] 若队首数据为合格产品信息数据,则执行步骤S352;
[0111] 若队首数据为不合格产品信息数据,则执行步骤S354;
[0112] S352:不进行踢废处理;
[0113] S354:将不合格产品信息数据对应的所述产品踢出。
[0114] 本实施例中,会预先定义数据报传递协议,当第二线程获得队首数据时,通过数据报传递协议确定队首数据是合格产品数据还是不合格产品数据,从而确定是否踢废。
[0115] 本实施例中,若队首数据为合格产品信息数据,踢废气嘴会打开,将不合格产品信息数据对应的产品踢出;当然在其他实施例中也可以是其他能使输送带上的产品剔除的装置,如踢废气缸等;若队首数据为合格产品信息数据是合格产品信息数据,则不执行踢废动作。
[0116] 本发明公开的一种低成本视觉检测控制系统软件架构,通过对应的电气器件安装如图2,需要注意的是,在实施过程中,为了保证踢废时间的充分性,若产品经过传感器到相机正中心拍照需要的时间为t1,产品从正中心到踢废传感器需要的时间为t2,图像处理需要的时间为t3,在结构安装上面要求安装间距应该满足t2>t3。
[0117] 基于实施例中的方法,软件架构也在自主的检测平台上面得到验证,在一具体实施例中,检测平台的具体配置如下:研华工控机610L,主板AKMB-G41,处理器为E5300,2G内存,IO卡采用研华PCI-1761,Windows 7操作系统;开发环境为Microsoft visual studio 2010,编程语言为c++。
[0118] 采用的验证方法如下:
[0119] 分别取500个良品与500个不良品进行检测,分别在不同的传送带速度下面进行测试,比较不同带速下面的误踢率、漏踢率和资源占用率三个计算指标,检测环境如下表:
[0120]
[0121] 测试结果如下表所示:
[0122]
[0123] 通过上面的数据可以看出,架构性能优越,能够很好的适应不同带速的要求,没有出现漏踢的情况,所有的次品都被完全的踢除。随着带速的增加,产品间距逐渐减小,处理所需的线程数量增加,系统资源占用率增加。
[0124] 以上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈