CN108776460B - 基于pc的高速图像检测分拣生产线控制***及其控制方法 - Google Patents
基于pc的高速图像检测分拣生产线控制***及其控制方法 Download PDFInfo
- Publication number
- CN108776460B CN108776460B CN201810408513.4A CN201810408513A CN108776460B CN 108776460 B CN108776460 B CN 108776460B CN 201810408513 A CN201810408513 A CN 201810408513A CN 108776460 B CN108776460 B CN 108776460B
- Authority
- CN
- China
- Prior art keywords
- encoder
- image
- thread
- value
- encl
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000001514 detection method Methods 0.000 title claims abstract description 44
- 238000004519 manufacturing process Methods 0.000 title claims abstract description 28
- 238000012545 processing Methods 0.000 claims abstract description 21
- 239000000463 material Substances 0.000 claims description 98
- 230000004044 response Effects 0.000 claims description 19
- 230000001133 acceleration Effects 0.000 claims description 16
- 238000000926 separation method Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000003139 buffering effect Effects 0.000 claims description 6
- 125000004122 cyclic group Chemical group 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000003672 processing method Methods 0.000 claims description 6
- 238000012937 correction Methods 0.000 claims description 5
- 101100065246 Mus musculus Enc1 gene Proteins 0.000 claims description 3
- 238000003708 edge detection Methods 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 3
- 238000003709 image segmentation Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4185—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31088—Network communication between supervisor and cell, machine group
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Image Processing (AREA)
- Sorting Of Articles (AREA)
Abstract
本发明公开了一种基于PC的高速图像检测分拣生产线控制***及其控制方法,***包括:PC、图像检测装置、分拣装置、编码器组件、运动控制与IO扩展卡、运算加速卡和连续式皮带流水线。本发明采用多核多线程控制技术,实现图像数据采集、数据处理判断、分拣逻辑控制、人机界面等管控一体化实时控制。***具有高速、实时、成本低、结构简单、扩展方便、编程灵活、软件移植性好、算法实现容易等优点。
Description
技术领域
本发明属于高速检测分拣生产线控制技术领域,具体涉及一种基于PC的高速图像检测分拣生产线控制***及其控制方法。
背景技术
高速视觉检测分拣生产线在现代工业领域应用广泛,个人计算机(PC)在自动化***中也得到广泛应用。通常,PC作为上位机,进行通信、存储、HMI、监控、管理等非实时工作;PLC、单片机、DSP等嵌入式计算机作为下位机,负责实时控制。若PC既进行管理、HMI、监控、通信,又进行控制,则称为基于PC的控制***,目前也得到越来越多的应用。基于PC的控制***通常安装通用操作***和实时操作***,分别进行非实时和实时任务开发。PC具有速度不断加快、多核化趋势、存储容量大、软件资源丰富、可视化编程容易、总线标准化程度高、联网方便、扩展方便、使用人群广等优点,加之智能传感器、智能执行器和现场总线的发展,使得没有实时操作***情况下实现自动控制成为了可能。
图像检测分拣高速生产线***集数据采集、图像处理、人机界面、存储、逻辑控制、位置校正于一体,传统的上位机PC加下位机PLC的控制方式会导致结构复杂、成本高、扩展不方便、定位不准确、通信瓶颈带来实时性差可靠性低等问题。
发明内容
针对于上述现有技术的不足,本发明的目的在于提供一种基于PC的高速图像检测分拣生产线控制***及其控制方法,本发明实现了控制***的管控一体化,具有高速、实时、定位准确、结构简单、编程灵活方便、扩展容易、可实现大计算量等优点,可满足类似工业领域的应用需求。
为达到上述目的,本发明采用的技术方案如下:
本发明的一种基于PC的高速图像检测分拣生产线控制***,包含:PC、图像检测装置、分拣装置、编码器组件、运动控制与IO扩展卡、运算加速卡和连续式皮带流水线;
所述PC通过高速并行总线分别与运动控制与IO扩展卡和运算加速卡相连;所述PC通过高速串行总线与所述图像检测装置相连;所述运动控制与IO扩展卡分别与编码器组件、分拣装置及连续式皮带流水线相连;所述编码器组件的轴滚轮与连续式皮带流水线的皮带接触并随皮带的前进而滚动。
优选地,***运行时,所述轴滚轮与皮带之间同步运行。
一种基于PC的高速图像检测分拣生产线控制***的控制方法,基于上述***,包括步骤如下:
1)实时获取连续式皮带流水线上的图像检测数据;
2)将上述图像检测数据进行处理;
3)根据图像处理结果及编码器实时位置信号产生分拣逻辑信号;
上述步骤1)中采用多核多线程控制方法、实时获取编码器长值EncL方法、每帧/幅图像纵坐标基准校正方法及消息响应图像处理方法;
上述步骤2)中采用先进先出物料特性数据栈FIFOS缓冲方法及消息响应图像处理方法;
上述步骤3)中采用多核多线程控制方法、实时获取编码器长值EncL方法及先进先出物料特性数据栈FIFOS缓冲方法;
所述皮带流水线向单一方向运转,使得所要检测分拣的物料先经过图像检测装置位置后再经过分拣装置位置。
优选地,所述方法还包括:PC计算任务过重而实时性达不到要求时,运算加速卡进行计算加速,保证控制实时性要求。
优选地,所述多核多线程控制方法包括:图像采集线程、类PLC线程和主界面线程;所述图像采集线程进行如下操作:初始化后开始图像采集,不断循环扫描图像检测装置一帧/幅图像是否采集完成信号,当一帧/幅图像采集完成时,进行一次实时获取编码器长值EncL、高速批量读取当前一帧/幅图像数据、发出一帧/幅图像采集完成消息,继续不断循环扫描图像检测装置一帧/幅图像是否采集完成信号;图像采集帧频率或每幅图像采集频率根据连续式皮带流水线的速度设置,做到相邻帧/幅图像全覆盖流过的物料且少重叠或不重叠;所述类PLC线程进行如下操作:通过循环扫描方式进行实时获取编码器长值EncL和分拣逻辑控制;所述主界面线程具体包括:参数设置、人机界面、监控、控制启停数据采集线程和类PLC线程。
所述图像采集线程、类PLC线程和主界面线程被程序设定运行于PC的多核处理器的不同物理核,以保证各线程运行互不干扰。
优选地,所述实时获取编码器长值EncL方法包括:实时获取编码器长值EncL作为物料位置纵坐标值,并利用编码器长值EncL进行每帧/幅图像纵坐标基准校正;
实时获取编码器长值EncL执行如下操作:在所述类PLC线程每个循环扫描周期内,首先进行一次当前编码器值Enc的读取,若该当前编码器值Enc小于常数C1,且上次扫描编码器值Enc_1大于字长最大值OV与C1之差,则两次扫描周期间发生了一次编码器数据上溢出,将编码器溢出次数OVC加1,用编码器溢出次数OVC、当前编码器值Enc和编码器字长最大值OV计算出当前编码器长值EncL,编码器长值EncL定义为64位无符号整数;编码器长值EncL作为图像、物料的纵坐标Y,纵坐标Y的单位与编码器脉冲当量一致,C1选小于字长最大值OV的一半。
优选地,所述实时获取编码器长值EncL在类PLC线程的每次循环扫描中执行一次,在上述当一帧/幅图像采集完成时执行一次该处理期间停止,即所述类PLC线程和所述图像采集线程执行所述实时获取编码器长值EncL不同时进行,两者必居其一。
优选地,在所述图像采集线程中,进行一次所述实时获取编码器长值EncL,该编码器长值EncL作为该帧/幅图像纵坐标基准,即为所述每帧/幅图像纵坐标基准校正,保证生产线长期连续运行而不会产生纵坐标累积误差。
优选地,所述先进先出物料特性数据栈FIFOS缓冲方法具体包括:定义一个物料编号、纵坐标值、横坐标值、属性值的结构体类型MS,再定义一个元素的数据类型为结构体类型MS、适当深度的先进先出物料特性数据栈FIFOS;在每帧图像处理完时组织好每个物料数据结构,按物料纵坐标从小到大依次压栈所述先进先出物料特性数据栈FIFOS;所述类PLC线程中逻辑控制时,再依次出栈所述先进先出物料特性数据栈FIFOS,出栈结构体类型MS数据中的纵坐标值与当前编码器长值EncL比较,数据匹配则发出分拣指令。
优选地,所述先进先出物料特性数据栈FIFOS栈深度需大于图像检测装置位置至分拣装置位置之间可能的最大物料数。
优选地,所述消息响应图像处理方法指对一帧/幅图像采集完成消息的响应程序,在该响应程序中进行图像滤波、图像分割、边缘检测、图像拼接、形心/质心计算、物料判别的处理,按物料形心/质心纵坐标从小到大依次编号并形成物料特性数据结构,按物料编号从小到大依次将该帧/幅图像中各物料特性数据结构压栈所述先进先出物料特性数据栈FIFOS。
所述消息响应图像处理需在下一帧/幅图像采集完消息发出前完成,以保证皮带流水线的连续性、实时性,并留有余量;若PC不能满足该要求,则通过所述运算加速卡进行运算处理加速,以确保当前帧/幅所有图像处理工作在下一帧/幅图像采集完消息发出前完成。
优选地,所述类PLC线程具体还包括:先进先出物料特性数据栈FIFOS前进方向相邻物料距离近则连续出栈;出栈数据依次存放于元素也为结构体类型MS的数组Pop内,每出栈并存放一个数据,候分离数WS加1;否则暂停出栈,以减少候分离物料数,从而减轻类PLC线程中的循环扫描负荷,减少类PLC扫描周期;每个类PLC扫描周期内都对候分离物料数据依次循环进行纵坐标Pop[0to WS-1].Y与一固定偏移量常数C2之和,与实时编码器长值EncL进行比较,两者在一定范围内匹配,则结合物料横坐标发出对应横坐标处的分拣逻辑指令;Pop数组长度设为与所述先进先出物料特性数据栈FIFOS深度一致;当某物料分离结束,需要将Pop数组中该物料数据剔除,其余候分离物料数据依次替补重新排序,每剔除一个数据则候分离数WS数值减1;当候分离数WS等于1时,所述先进先出物料特性数据栈FIFOS恢复出栈。
本发明的有益效果:
本发明采用通用非实时多任务操作***下,基于PC的自动控制***,PC功能包括:通信、人机界面、监控、算法判断、类似于PLC逻辑控制等,具有高速、实时、成本低、结构简单、扩展容易、定位准确、软件移植性好、算法实现容易、无需实时操作***、管控一体化、软件物料缓冲等优点。
附图说明
图1为本发明的***组成示意图。
图2为本发明的多核多线程控制结构示意图。
图3为本发明的图像采集线程的流程图。
图4a为本发明的实时获取编码器长值EncL的流程图。
图4b为本发明的实时获取编码器长值EncL的示意图。
图5为本发明的消息响应图像处理的流程图。
图6a为本发明的类PLC逻辑控制的流程图
图6b为本发明的类PLC逻辑控制的示意图。
具体实施方式
为了便于本领域技术人员的理解,下面结合实施例与附图对本发明作进一步的说明,实施方式提及的内容并非对本发明的限定。
参照图1所示,本发明的一种基于PC的高速图像检测分拣生产线控制***,包含:PC1、图像检测装置2、分拣装置3、编码器组件4、运动控制与IO扩展卡5、运算加速卡6和连续式皮带流水线7。
所述PC1通过高速并行总线分别与运动控制与IO扩展卡5和运算加速卡6相连;所述PC1通过高速串行总线与图像检测装置2相连;所述运动控制与IO扩展卡5通过电路分别与编码器组件4、分拣装置3和连续式皮带流水线7相连;所述编码器组件4的轴滚轮与连续式皮带流水线7的皮带接触并随皮带的前进而滚动,***运行时滚轮与皮带之间不得打滑;建立图示坐标系。
示例中,PC1采用研华IPC-610工控机,该工控机含有8个PCI插槽,intel i7-2600型4核64位主频3.4GHz CPU,8GB内存,安装Windows 7操作***和微软Visual C++2012软件,基于MFC对话框开发控制程序完成HMI、通信、逻辑控制、数据处理等功能程序;图像检测装置2采用Basler raL4096-24gm型黑白线阵相机,分辨率4096pix,单线,行频最高26kHz,千兆以太网GigE接口;分拣装置3采用线阵列压缩空气喷嘴方式,喷嘴间距5mm,喷嘴开闭由高速开关阀控制;编码器组件4的编码器采用HEDSS公司分辨率10000脉冲/圈的型号为ISC3806增量式旋转光电编码器,编码器轴装有直径31.831mm的滚轮;运动控制与IO扩展卡5采用固高科技GTS-800-PV-PCI型运动控制卡,能接收四倍频后达8MHz的编码器输入,带16个数字量输出,若不够可扩展IO模块,用于控制电磁阀进行分拣操作;运算加速卡6采用GeForce GTX 1060芯片的GPU;连续式皮带流水线7由台达伺服驱动器(型号ASD-B2-0421-B,功率400W)及伺服电机(型号ECMA-C20804R3,最高转速3000r/min,功率400W)通过减速比为1:5的涡轮蜗杆减速机驱动运转,皮带线速度可达2m/s,皮带宽度400mm。则所述PC1通过PCI总线分别与运动控制与IO扩展卡5和运算加速卡6相连;所述PC1通过千兆以太网总线与图像检测装置2相连;所述运动控制与IO扩展卡5通过电路分别与编码器组件4、分拣装置3和连续式皮带流水线7相连;所述编码器组件4的轴滚轮与连续式皮带流水线7的皮带相切合,且两者运动方向相配。
一种基于PC的高速图像检测分拣生产线控制***的控制方法,基于上述***,包括步骤如下:
1)实时获取连续式皮带流水线上的图像检测数据;
2)将上述图像检测数据进行处理;
3)根据图像处理结果及编码器实时位置信号产生分拣逻辑信号;
上述步骤1)中采用多核多线程控制方法、实时获取编码器长值EncL方法、每帧/幅图像纵坐标基准校正方法及消息响应图像处理方法;
上述步骤2)中采用先进先出物料特性数据栈FIFOS缓冲方法及消息响应图像处理方法;
上述步骤3)中采用多核多线程控制方法、实时获取编码器长值EncL方法及先进先出物料特性数据栈FIFOS缓冲方法;
所述皮带流水线向单一方向运转,使得所要检测分拣的物料先经过图像检测装置位置后再经过分拣装置位置。
PC计算任务过重而实时性达不到要求时,运算加速卡进行计算加速,保证控制实时性要求。
参照图2所示,所述多核多线程控制方法包括:图像采集线程、类PLC线程和主界面线程。
参照图3所示,所述图像采集线程进行如下操作:初始化后开始图像采集,不断循环扫描图像检测装置一帧/幅图像是否采集完成信号,当一帧/幅图像采集完成时,进行一次实时获取编码器长值EncL、高速批量读取当前一帧/幅图像数据、发出一帧/幅图像采集完成消息,继续不断循环扫描图像检测装置一帧/幅图像是否采集完成信号;图像采集帧频率或每幅图像采集频率根据连续式皮带流水线的速度设置,做到相邻帧/幅图像全覆盖流过的物料且少重叠或不重叠;参考图6a和图6b,所述类PLC线程进行如下操作:类似于工业PLC工作原理,通过循环扫描方式进行实时获取编码器长值EncL和分拣逻辑控制;所述主界面线程具体包括:参数设置、人机界面、监控、控制启停数据采集线程和类PLC线程等。
示例中,皮带线速度2m/s时,线扫描相机行频设置为20kHz,设置2000行为一帧,则纵坐标方向相邻两像素表示的距离约0.1mm。
示例中,参考图6a,候分离数WS为50时,所述类PLC线程循环扫描周期测试平均值小于50μs,该循环扫描周期极短,可以满足高速分拣需要。
参照图4a、图4b所示,由于所述连续式皮带流水线始终向一个方向运转,则编码器值Enc是一个数据位长度固定的无符号整数,通常其数据位长度小于32位,设该无符号整数可表示的字长最大值OV,***上电运转后编码器值Enc一直增加,随着皮带移动距离的增加,编码器值Enc易频繁产生数据上溢出,给控制带来麻烦。所述实时获取编码器长值EncL执行如下操作:在所述类PLC线程每个极短的循环扫描周期内,首先进行一次当前编码器值Enc的读取,若该当前编码器值Enc小于常数C1,且上次扫描编码器值Enc_1大于字长最大值OV与C1之差,则两次扫描周期间发生了一次编码器数据上溢出,将编码器溢出次数OVC加1,用编码器溢出次数OVC、当前编码器值Enc和编码器字长最大值OV计算出当前编码器长值EncL,编码器长值EncL定义为64位无符号整数,这样***以一定速度连续运转甚至数年,编码器长值EncL都不会发生溢出现象。编码器长值EncL作为图像、物料的纵坐标Y,纵坐标Y的单位与编码器脉冲当量一致,C1选小于字长最大值OV的一半,在所述类PLC线程每个循环扫描周期极短的条件下,可以保证两次扫描周期间最多发生一次编码器值溢出现象;且C1大于所述类PLC线程相邻两个循环扫描周期编码器脉冲增量最大值,C1也不能太小,否则不能捕获溢出,实际取值略小于OV的一半。
本发明中,C1为整数常数,小于OV/2,大于最大类PLC扫描周期时前后两次编码器增量值,捕获编码器值溢出用;FIFOS为先进先出物料特性数据栈,存放物料数据的数据缓冲栈,元素类型为MS型;WS为当前进入类PLC逻辑控制扫描判断的MS型数据软件候分拣物料数;MS为定义的物料编号、纵坐标、横坐标、物料特性数据等数据结构体;Pop[],元素为MS型结构体的数组,作为类PLC线程逻辑控制时出栈FIFOS软件等候分离物料数据暂存区,数组长度不超过FIFOS深度;Pop[i].Y,Pop为数组第i+1个元素纵坐标Y;C2主要与图像检测装置到分拣装置距离编码器脉冲数有关,图像采集到分拣操作有延迟,这也是数据栈FIFOS设置的主要原因,C2还跟装置机械、电气响应时间等有关;C3与一定速度下,分拣控制最佳范围有关,可实验确定;C4,物料按编码器长值EncL依次压栈,会出现扎堆现象,为使得控制有充分准备时间,每堆之间达到一定距离C4,可以暂停出栈,可以降低PLC扫描时间。
编码器值为24位无符号整数,则编码器字长最大值OV=224-1=16777215,在皮带线速度为2m/s连续运转时,编码器分辨率或脉冲当量约0.01mm,大约每1.4分钟发生一次数据溢出现象,而编码器长值EncL溢出大约需2900000年。此处选择C1=6000000,在皮带线速度为2m/s时,类PLC扫描周期大于80s才可能相邻两次扫描出现1次以上溢出,而实际类PLC扫描周期小于1ms。计算编码器长值公式如下:
EncL=16777215×OVC+Enc
所述实时获取编码器长值EncL在类PLC线程的每次循环扫描中执行一次,但在上述当一帧/幅图像采集完成时执行一次该处理期间停止,即所述类PLC线程和图像采集线程执行实时获取编码器长值EncL不同时进行,两者必居其一。
在所述图像采集线程中,进行一次实时获取编码器长值EncL,该编码器长值EncL作为该帧/幅图像纵坐标基准,即为所述每帧/幅图像纵坐标基准校正,保证生产线长期连续运行而不会产生纵坐标累积误差。
参照图5、图6a和图6b所示,本发明采用先进先出物料特性数据栈FIFOS缓冲方法,定义一个物料编号、纵坐标值、横坐标值、属性值等的结构体类型MS,再定义一个元素的数据类型为结构体类型MS、适当深度的先进先出物料特性数据栈FIFOS;在每帧图像处理完时组织好每个物料数据结构,按物料纵坐标从小到大依次压栈先进先出物料特性数据栈FIFOS;所述类PLC线程中逻辑控制时,再依次出栈先进先出物料特性数据栈FIFOS,出栈结构体类型MS数据中的纵坐标值与当前实时编码器长值EncL比较,数据匹配则发出分选指令等。栈深度需大于图像检测装置位置至所述分拣装置位置之间可能的最大物料数。
由于图像检测装置位置到分拣装置位置有一段距离,定义了一个结构体类型MS,包括一帧数据中的物料编号、编码器长值表示的Y坐标、线阵列X坐标、特性,如下式:
struct MS{unsigned long Num;unsigned long long Y;long X;long Ftr;};
再定义一个元素数据类型为MS结构体类型的FIFOS栈作为数据缓冲区,编写压栈、出栈、获取栈指针、获取栈空否、获取栈满否等函数进行调用,栈深度由图像检测装置到分拣装置处实际可能的最大物料数量决定,可以解决物料数据缓存问题。
参考图5,本发明采用消息响应图像处理方法,是对一帧/幅图像采集完成消息的响应程序,在该响应程序中进行图像滤波、图像分割、边缘检测、图像拼接、形心/质心计算、物料判别等处理,按物料形心/质心纵坐标从小到大依次编号并形成物料特性数据结构,按物料编号从小到大依次将该帧/幅图像中各物料特性数据结构压栈所述先进先出物料特性数据栈FIFOS。
所述消息响应图像处理工作须在下一帧/幅图像采集完消息发出前完成,以保证生产线的连续性、实时性,并留有余量。若PC不能满足该要求,则可通过所述运算加速卡进行运算处理加速,以确保当前帧/幅所有图像处理工作在下一帧/幅图像采集完消息发出前完成。
参考图6a、图6b,本发明类PLC线程中循环进行如下主要操作:所述先进先出物料特性数据栈FIFOS前进方向相邻物料距离近则连续出栈;出栈数据依次存放于元素也为结构体类型MS的数组Pop内,每出栈并存放一个数据,候分离数WS加1;否则暂停出栈,以减少候分离物料数,从而减轻类PLC线程中的循环扫描负荷,减少类PLC扫描周期;每个类PLC扫描周期内都对候分离物料数据依次循环进行纵坐标Pop[0to WS-1].Y与一固定偏移量常数C2之和,与实时编码器长值EncL进行比较,两者在一定范围内匹配,则结合物料横坐标发出对应横坐标处的分拣逻辑指令;Pop数组长度可设为与先进先出物料特性数据栈FIFOS深度一致;当某物料分离结束,需要将Pop数组中该物料数据剔除,其余候分离物料数据依次替补重新排序,每剔除一个数据则候分离数WS数值减1;当候分离数WS等于1时,先进先出物料特性数据栈FIFOS恢复可出栈。需要注意图像检测装置至分拣装置之间物料与皮带之间不能产生相对滑动,线速要保持匀速,否则分拣控制将出现偏差。
所述图像采集线程、所述类PLC线程和所述主界面线程被程序设定运行于PC的多核处理器的不同物理核,以保证各线程运行互不干扰。
根据各控制任务实时性要求,整个应用控制程序进程优先级设定为“实时”级,所述图像采集线程、所述类PLC线程和所述主界面线程被程序分别设定为“最高”、“时间苛刻”和“高于正常”等不同的线程相对优先级。如果不同重要线程不设定运行于不同物理核,应用程序进程优先级和线程相对优先级设定不好,则会影响控制***实时性。
本发明具体应用途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进,这些改进也应视为本发明的保护范围。
Claims (4)
1.一种基于PC的高速图像检测分拣生产线控制***的控制方法,其特征在于,基于PC的高速图像检测分拣生产线控制***包含:PC(1)、图像检测装置(2)、分拣装置(3)、编码器组件(4)、运动控制与IO扩展卡(5)、运算加速卡(6)和连续式皮带流水线(7);
所述PC(1)通过高速并行总线分别与运动控制与IO扩展卡(5)和运算加速卡(6)相连;所述PC(1)通过高速串行总线与所述图像检测装置(2)相连;所述运动控制与IO扩展卡(5)分别与编码器组件(4)、分拣装置(3)及连续式皮带流水线(7)相连;所述编码器组件(4)的轴滚轮与连续式皮带流水线(7)的皮带接触并随皮带的前进而滚动;方法包括步骤如下:
1)实时获取连续式皮带流水线上的图像检测数据;
2)将上述图像检测数据进行处理;
3)根据图像处理结果及编码器实时位置信号产生分拣逻辑信号;
上述步骤1)中采用多核多线程控制方法、实时获取编码器长值EncL方法、每帧/幅图像纵坐标基准校正方法及消息响应图像处理方法;
上述步骤2)中采用先进先出物料特性数据栈FIFOS缓冲方法及消息响应图像处理方法;
上述步骤3)中采用多核多线程控制方法、实时获取编码器长值EncL方法及先进先出物料特性数据栈FIFOS缓冲方法;
连续式皮带流水线向单一方向运转,使得所要检测分拣的物料先经过图像检测装置位置后再经过分拣装置位置;
所述多核多线程控制方法包括:图像采集线程、类PLC线程和主界面线程;所述图像采集线程进行如下操作:初始化后开始图像采集,不断循环扫描图像检测装置一帧/幅图像是否采集完成信号,当一帧/幅图像采集完成时,进行一次实时获取编码器长值EncL、高速批量读取当前一帧/幅图像数据、发出一帧/幅图像采集完成消息,继续不断循环扫描图像检测装置一帧/幅图像是否采集完成信号;图像采集帧频率或每幅图像采集频率根据连续式皮带流水线的速度设置,做到相邻帧/幅图像全覆盖流过的物料且少重叠或不重叠;所述类PLC线程进行如下操作:通过循环扫描方式进行实时获取编码器长值EncL和分拣逻辑控制;所述主界面线程具体包括:参数设置、人机界面、监控、控制启停数据采集线程和类PLC线程;
所述实时获取编码器长值EncL方法包括:实时获取编码器长值EncL作为物料位置纵坐标值,并利用编码器长值EncL进行每帧/幅图像纵坐标基准校正;
实时获取编码器长值EncL执行如下操作:在所述类PLC线程每个循环扫描周期内,首先进行一次当前编码器值Enc的读取,若该当前编码器值Enc小于常数C1,且上次扫描编码器值Enc_1大于字长最大值OV与C1之差,则两次扫描周期间发生了一次编码器数据上溢出,将编码器溢出次数OVC加1,用编码器溢出次数OVC、当前编码器值Enc和编码器字长最大值OV计算出当前编码器长值EncL,编码器长值EncL定义为64位无符号整数;编码器长值EncL作为图像、物料的纵坐标Y,纵坐标Y的单位与编码器脉冲当量一致,C1选小于字长最大值OV的一半;
所述先进先出物料特性数据栈FIFOS缓冲方法具体包括:定义一个物料编号、纵坐标值、横坐标值、属性值的结构体类型MS,再定义一个元素的数据类型为结构体类型MS、适当深度的先进先出物料特性数据栈FIFOS;在每帧图像处理完时组织好每个物料数据结构,按物料纵坐标从小到大依次压栈所述先进先出物料特性数据栈FIFOS;所述类PLC线程中逻辑控制时,再依次出栈所述先进先出物料特性数据栈FIFOS,出栈结构体类型MS数据中的纵坐标值与当前编码器长值EncL比较,数据匹配则发出分拣指令;
所述消息响应图像处理方法指对一帧/幅图像采集完成消息的响应程序,在该响应程序中进行图像滤波、图像分割、边缘检测、图像拼接、形心/质心计算、物料判别的处理,按物料形心/质心纵坐标从小到大依次编号并形成物料特性数据结构,按物料编号从小到大依次将该帧/幅图像中各物料特性数据结构压栈所述先进先出物料特性数据栈FIFOS。
2.根据权利要求1所述的基于PC的高速图像检测分拣生产线控制***的控制方法,其特征在于,所述方法还包括:PC计算任务过重而实时性达不到要求时,运算加速卡进行计算加速。
3.根据权利要求1所述的基于PC的高速图像检测分拣生产线控制***的控制方法,其特征在于,所述类PLC线程具体还包括:先进先出物料特性数据栈FIFOS前进方向相邻物料距离近则连续出栈;出栈数据依次存放于元素也为结构体类型MS的数组Pop内,每出栈并存放一个数据,候分离数WS加1;否则暂停出栈;每个类PLC扫描周期内都对候分离物料数据依次循环进行纵坐标Pop[0to WS-1].Y与一固定偏移量常数C2之和,与实时编码器长值EncL进行比较,两者在一定范围内匹配,则结合物料横坐标发出对应横坐标处的分拣逻辑指令;Pop数组长度设为与所述先进先出物料特性数据栈FIFOS深度一致;当某物料分离结束,需要将Pop数组中该物料数据剔除,其余候分离物料数据依次替补重新排序,每剔除一个数据则候分离数WS数值减1;当候分离数WS等于1时,所述先进先出物料特性数据栈FIFOS恢复出栈。
4.根据权利要求1所述的基于PC的高速图像检测分拣生产线控制***的控制方法,其特征在于,所述图像采集线程、类PLC线程和主界面线程被程序设定运行于PC的多核处理器的不同物理核。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810408513.4A CN108776460B (zh) | 2018-05-02 | 2018-05-02 | 基于pc的高速图像检测分拣生产线控制***及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810408513.4A CN108776460B (zh) | 2018-05-02 | 2018-05-02 | 基于pc的高速图像检测分拣生产线控制***及其控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108776460A CN108776460A (zh) | 2018-11-09 |
CN108776460B true CN108776460B (zh) | 2020-11-06 |
Family
ID=64026940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810408513.4A Active CN108776460B (zh) | 2018-05-02 | 2018-05-02 | 基于pc的高速图像检测分拣生产线控制***及其控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108776460B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109834063A (zh) * | 2019-04-11 | 2019-06-04 | 苏州嘉诺环境工程有限公司 | 垃圾分选***及垃圾分选方法 |
CN111169936B (zh) * | 2019-12-30 | 2022-02-18 | 无锡信捷电气股份有限公司 | 一种plc多工位控制的实现方法 |
CN111632869A (zh) * | 2020-05-29 | 2020-09-08 | 青岛铁木真软件技术有限公司 | 用于橡胶产品的分拣方法、***及设备 |
CN114025077B (zh) * | 2020-09-14 | 2024-01-09 | 刘武平 | 一种图像采集方法及采集*** |
CN112381843B (zh) * | 2020-11-05 | 2024-05-03 | 新拓三维技术(深圳)有限公司 | 工业自动化扫描监控方法、***、终端设备和存储介质 |
CN115236627B (zh) * | 2022-09-21 | 2022-12-16 | 深圳安智杰科技有限公司 | 一种基于多帧多普勒速度扩维的毫米波雷达数据聚类方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104741321A (zh) * | 2015-03-17 | 2015-07-01 | 汕头轻工装备研究院 | 一种快速自动上下料的数控分拣*** |
CN105424718A (zh) * | 2015-11-02 | 2016-03-23 | 东华大学 | 一种基于双工位的车镜瑕疵在线自动检测装置与方法 |
CN105701476A (zh) * | 2016-02-04 | 2016-06-22 | 合肥泰禾光电科技股份有限公司 | 一种基于机器视觉的生产线产品自动化识别***及方法 |
CN107515226A (zh) * | 2017-09-22 | 2017-12-26 | 苏州天键衡电子信息科技有限公司 | 一种产品自动检测分拣的影像测量装置的工作方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10049440B2 (en) * | 2015-12-28 | 2018-08-14 | Key Technology, Inc. | Object detection apparatus |
-
2018
- 2018-05-02 CN CN201810408513.4A patent/CN108776460B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104741321A (zh) * | 2015-03-17 | 2015-07-01 | 汕头轻工装备研究院 | 一种快速自动上下料的数控分拣*** |
CN105424718A (zh) * | 2015-11-02 | 2016-03-23 | 东华大学 | 一种基于双工位的车镜瑕疵在线自动检测装置与方法 |
CN105701476A (zh) * | 2016-02-04 | 2016-06-22 | 合肥泰禾光电科技股份有限公司 | 一种基于机器视觉的生产线产品自动化识别***及方法 |
CN107515226A (zh) * | 2017-09-22 | 2017-12-26 | 苏州天键衡电子信息科技有限公司 | 一种产品自动检测分拣的影像测量装置的工作方法 |
Non-Patent Citations (1)
Title |
---|
基于机器视觉的快速分拣食品包装***研究;刘子龙;《中国优秀硕士学位论文全文数据库工程科技Ⅰ辑》;20160415(第04期);B024-144:P79 * |
Also Published As
Publication number | Publication date |
---|---|
CN108776460A (zh) | 2018-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108776460B (zh) | 基于pc的高速图像检测分拣生产线控制***及其控制方法 | |
CN102169093B (zh) | 基于图形处理器的多工位机器视觉成像检测方法及*** | |
US9604365B2 (en) | Device and method of transferring articles by using robot | |
He et al. | An improved Canny edge detector and its realization on FPGA | |
CN206154352U (zh) | 具有运动目标检测与跟踪功能的机器人视觉***及机器人 | |
TWI598572B (zh) | 感測器以及將時間資訊與一感測器所檢出的測量資料作關聯的方法 | |
CN111392402B (zh) | 一种自动化抓取方法、装置、设备和存储介质 | |
US20150042784A1 (en) | Image photographing method and image photographing device | |
CN111830039B (zh) | 一种智能化的产品质量检测方法及装置 | |
CN102566867B (zh) | 鼠标绘制波形的处理方法及装置 | |
US20190101885A1 (en) | Actuator control system, actuator control method, information processing program, and storage medium | |
CN206740935U (zh) | 一种can总线伺服电机的瞬态响应测试装置 | |
CN104267834A (zh) | 空中鼠标***及其操控方法 | |
Xiong et al. | A PC-based control method for high-speed sorting line integrating data reading, image processing, sequence logic control, communication, and HMI | |
CN113172636B (zh) | 一种自动手眼标定方法、装置及存储介质 | |
EP3462258A1 (en) | Control device with corresponding method and recording medium to generate a corrected path | |
EP3351927B1 (en) | Inspection system, controller, inspection method, and inspection program | |
CN105339854A (zh) | 可编程控制器 | |
CN111626946B (zh) | 用于高速物料传输视觉检测***的运动模糊核测量方法 | |
CN101566896B (zh) | 一种实现红外扫描与摄像头同步工作的方法及*** | |
CN115174761A (zh) | 调整相机的图像采集频率、图像采集的方法及装置 | |
CN103543157B (zh) | 离线带材表面图像模拟动态采集方法及装置 | |
CN104077198B (zh) | 门铃db恢复方法及装置、具有该装置的输入/输出i/o设备 | |
CN103632041A (zh) | 一种数据处理方法及装置 | |
CN105700462B (zh) | 一种通过plc与上位机实现高速数据采集与存储的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |