• /static/upload/image/20220624/1656061440599189.jpg
筛选机控制器

筛选机控制器是专用于螺丝旋转盘检测机的控制而设计,可以实现多个相机和多个吹气口的控制,相机和吹气口的总个数最多可达16个。高性价比,满足您多种工业视觉要求。



1656061640742664.jpg

筛选机控制器


筛选机控制器(CK3PMCV1.0)专用于螺丝旋转盘检测机的控制,螺丝检测机的控制部分主要包括以下部件:

1. 主旋转盘伺服电机

2. 跟随旋转的导向步进电机

3. 产品位置触发检测的光电开关

4拍照触发相机CCD1-CCD8

5. 判断OK时的吹气口

6. 判断NG时的吹气口

8. 其它情况时需要重测的吹气口


  一、控制器实物图(如下):  

1. IN13:为触发输入口;

2. OUT1--16:可配置为触发光源控制器、触发吹气、控制报警灯、控制振盘等;

3. POWER:VCC/IOVCC接+24V,GND/IOGND接0V;

4. LAN:接网线;

5. M1--M3:接电机伺服.


 1656061640742664.jpg

   二、工作点位置示意图: 


1656061682718400.png 

 

其中,除了触发检测的光电开关为筛选机控制器的输入信号外,其它从4—8对应为筛选机控制器的5个输出信号,依次为:CCD1输出触发第一个相机的光源控制;CCD2输出触发第二个相机的光源控制;第一个吹气口判断OK时吹气气阀控制;第二个吹气口判断NG时吹气气阀控制;第三个吹气口需要重测时气阀控制,具体接线方式请参考硬件接线图说明

筛选机控制器可以实现多个相机和多个吹气口的控制,相机和吹气口的总个数最多可达16个,无论是相机还是吹气口,统称为控制工作点。

下面以检测螺丝为例:

当被检测的螺丝经过光电检测开关处时,筛选机控制器将检测到一个输入信号,当这颗螺丝旋转到第一个工作点时,筛选机控制器将根据设置的参数决定是否输出此工作点的输出信号,依此类推。工作点数不同或机构的设计顺序、控制信号输出的要求不同时,有两个重要的参数需要设置,分别为:

1. 工作点总个数参数设置I89:I89应设置为(2*工作点总个数-1),I89默认值为9表示总共有5个工作点(2台相机+3个吹气口)

2. 工作点输出使能控制位参数设置I99:I99默认值为783,作为判断各工作点执行的使能标记位,需要根据相机的位置和重测吹气工作点位来设置此值,I99的设置流程如下:

    a) 从光电检测开关位置起,沿旋转盘旋转的方向为各工作点编号,序号从0开始。

    b) 记录下相机的序号,以及重测吹气口的序号。

    c) 通过以下公式计算得出I99的值:3*4^(CCD1序号)+ 3*4^(CCD2序号)+ 3*4^(重测吹气口工作点序号),以CCD1序号为0,CCD2序号为1,重测吹气口序号为4为例,I99=3+12+768 = 783

    d) 利用公式计算出判断OK时和判断NG时的吹气口输出使能数值,分别为判断OK时吹气口输出使能:3*4^(OK吹气口的序号)=48;判断NG时吹气口输出使能:3*4^(NG吹气口的序号)=192;此数值在后续配置Builder软件参数时将会用到。

    

三、筛选机控制器 Builder处理架构   


1. 为每一个相机设置一个任务,完成相机的设置、图像的采集、视觉图像处理和判断、结果队列的入队,除了以上任务外,最后一个相机还需统计当前任务的总耗时时间,并在每一次循环结束前将拍照耗时时间入队,用于计算螺丝检测的效率,即每分钟检测螺丝的个数

2. 设置一个任务用于统计检测结果以及与筛选机控制器通讯,此任务的主流程完成以下工作:

    a) 设置以太网

    b) 各相机的图像判断结果队列出队(有几个相机,队列中的元素个数就有几个)

    c) 拍照耗时时间数据出队,如果拍照耗时时间出队OK,则对此时间做累加

    d) 如果图像判断结果队列出队OK,则对结果做综合判断处理,并将结果生成ASCII文本并通过以太网发送给筛选机控制器;同时做检测个数的统计、检测效率的换算、耗时时间累加的初始化等计算

    e) 在界面上设置计数统计、效率显示,添加操控按扭

    f) 在通讯任务流程中,增加多个分支节点流程与界面中的操控按扭相对应,功能按扭分别为:初始化检测队列、启动、紧急暂停、清空台面待检测螺丝、停止上料等


 四、筛选机控制器Builder处理流程描述  


(一)工具简介:数据队列

数据队列说明:一般由数据入队、数据出队和清空队列组成,可以让多个流程内的数据传输

数据出队:数据出队工具用于定义一个数据队列表,每执行一次会将满行的数据输出

数据入队:将数据插入到一个队列中,用于将数据传送到其它流程或者缓存数据。

清空队列:将一个数据队列中的所有数据清空

1656061897832041.jpg 

三个数据入队分别为不同流程的数据入队,我们将其状态分别写入不同位置的数据(一个队列的默认数据起始位置从0开始)

图片4.png 

 

结果变量==0表示NG

结果变量==1表示OK

TASK1处理第一个相机的图像采集和处理,视觉图像处理结果入队(队列索引号为0),TASK2的处理流程和TASK1类似,视觉图像处理结果入队(队列索引号为1)


(二)TASK1的处理流程:

1. 第一个相机工具设置

2. 用户变量定义

a) 定义第一个相机图像的处理结果CAM1_RESULT

b) 定义图像参数变量

c) 第一个相机图像采集

3. 判断第一个相机图像是否采集到,如果没有采集到,跳过第5 步

4. 对第一个相机采集到的图像进行图像处理

d) 进行图像处理,返回处理结果CAM1_RESULT

e) 将第一个相机的处理结果做数据入队,索引号为0


(三)TASK2的处理流程:

1. 第二个相机工具设置

2. 用户变量定义

a) 定义第二个相机图像的处理结果CAM2_RESULT

b) 定义图像参数变量

c) 定义耗时统计的时间变量

3. 统计拍照和图像处理总耗时初始化计时器

4. 第二个相机图像采集

5. 判断第二个相机图像是否采集到,如果没有采集到,跳过第6 步

6. 对第二个相机采集到的图像进行图像处理

d) 进行图像处理,返回处理结果CAM2_RESULT

e) 将第二个相机的处理结果做数据入队,索引号为1

7. 统计拍照和图像处理总耗时结束,得到拍照的总耗时时间

8. 将拍照总耗时时间入队


(四)TASK3的处理流程

1. 启动以太网工具,并设置好IP地址

2. 用户变量定义

a) 定义测试产品的总数量计数:TOTAL_No

b) 定义结果出队序号计数变量:QUEUE_No

c) 定义出队的第一个相机图像的处理结果:QUE_RESULT1

d) 定义出队的第二个相机图像的处理结果:QUE_RESULT2

e) 定义一个临时的处理结果数据TEMP_RESULT

f) 定义第一种不良丝杆不良计数NG1_COUNT

g) 定义第二种不良螺帽不良计数NG2_COUNT

h) 定义OK品计数OK_COUNT

i) 定义总的不良品计数NG_COUNT

j) 定义螺丝检测的良率OK_RATE

k) 定义循环计数到100个螺丝的计数值CNT100_LOOP,计数到100后清0

l) 定义拍照耗时时间的累加变量TIME_SUM

m) 定义统计检测螺丝的速度STAT_VEL

3. 从逻辑控制工具箱中,设置一个 数据出队 的工具,并定义两个队列的元素,分别代表第一个相机的检测结果和第二个相机的检测结果

4. 条件判断,判断 数据出队 的状态是否为TRUE,如果不为TRUE,则跳过第5步

5. 数据出队为TRUE时,做如下 流程处理

n) 设置变量,QUE_RESULT1 = 数据出队.CCD1_R

o) 设置变量,QUE_RESULT2 = 数据出队.CCD2_R

p) 通过系统工具中的代码编辑工具,将两次检测的结果综合成一个结果,代码如下:

    ① 0001 QUEUE_No = TOTAL_No & 1023

    ② 0002 If (QUE_RESULT1==0)

    ③ 0003   NG1_COUNT = NG1_COUNT+1

    ④ 0004 EndIf

    ⑤ 0005 If (QUE_RESULT2==0)

    ⑥ 0006   NG2_COUNT = NG2_COUNT+1

    ⑦ 0007 EndIf

    ⑧ 0008 If ((QUE_RESULT1==1)&(QUE_RESULT2==1))

    ⑨ 0009   TEMP_RESULT=48

    ⑩ 0010   OK_COUNT = OK_COUNT+1

    ⑪ 0011 Else

    ⑫ 0012   TEMP_RESULT=192

    ⑬ 0013   NG_COUNT = NG_COUNT+1

    ⑭ 0014 EndIf

    ⑮ 0015 TOTAL_No = TOTAL_No+1

    ⑯ 0016 OK_RATE = 100*OK_COUNT/TOTAL_No

    ⑰ 0017  CNT100_LOOP = CNT100_LOOP+1

    ⑱ 0018 IF (CNT100_LOOP>=100)

    ⑲ 0019    CNT100_LOOP=0

    ⑳ 0020    STAT_VEL = 6000000/TIME_SUM

    ㉑ 0021    TIME_SUM=0

    ㉒ 0022 EndIf

    ㉓ 0023 IF (TIME_SUM>600000)

    ㉔ 0024    STAT_VEL=0

    ㉕ 0025 EndIf

q) 生成最终结果的文本:在系统工具中,用生成文本工具,文本内容为:M%d=%d,链接的数字为队列序号QUEUE_No 和 TEMP_RESULT

r) 发送最终结果文本给筛选机控制器

s) 螺丝检测的速度将保存在用户变量 STAT_VEL中,用于显示检测效率数值

6. 分支选择功能中,队列清零 流程的实现

t) 用设置变量工具,将队列的所有计数器清0,包括以下计数器:

    ① 定义测试产品的总数量计数:TOTAL_No

    ② 定义结果出队序号计数变量:QUEUE_No

    ③ 定义第一种不良丝杆不良计数NG1_COUNT

    ④ 定义第二种不良螺帽不良计数NG2_COUNT

    ⑤ 定义OK品计数OK_COUNT

    ⑥ 定义总的不良品计数NG_COUNT

    ⑦ 定义螺丝检测的良率OK_RATE

    ⑧ 定义循环计数到100个螺丝的计数值CNT100_LOOP,计数到100后清0

    ⑨ 定义拍照耗时时间的累加变量TIME_SUM

    ⑩ 定义统计检测螺丝的速度STAT_VEL

u) 将CCD1和CCD2结果队列清空

v) 通过以太网发送清零命令给筛选机控制器,文本内容为  ENA PLC1

7. 分支选择功能中,启动 流程的实现

a) 通过以太网发送 启动 命令给筛选机控制器,文本内容为  ENA PLC3

8. 分支选择功能中,紧急暂停 流程的实现

a) 通过以太网发送 紧急暂停 命令给筛选机控制器,文本内容为  ENA PLC2

9. 分支选择功能中,清空盘面螺丝 流程的实现

a) 通过以太网发送 清空盘面螺丝 命令给筛选机控制器,文本内容为  ENA PLC4

10. 分支选择功能中,停止振动盘 流程的实现

b) 通过以太网发送 停止振动盘 命令给筛选机控制器,文本内容为  I6728..6729=1

11. 调机参数的设置:通过定义用户变量,并将用户变量保存到文件中的方法实现,分别定义如下变量

a) CCD1_ANGLE:第一个相机触发亮灯位置与光电开关在旋转盘中的机械位置角度,单位为度,初值可以通过测量设备结构图来获得

b) CCD2_ANGLE:第二个相机与光电开关的机械位置角度,单位为度,参考CCD1_ANGLE

c) BLOW1_OK_ANGLE:第一个吹气口与光电开关的机械位置角度

d) BLOW2_NG_ANGLE:第二个吹气口与光电开关的机械位置角度

e) BLOW2_RE_ANGLE:第三个吹气口与光电开关的机械位置角度

f) LED_ON_ANGLE:LED光源亮灯延时所对应的主旋转盘转动的角度

g) BLOW1_ON_ANGLE:第一个吹气口吹气打开延时所对应的主旋转盘转动的角度

h) BLOW2_ON_ANGLE:第二个吹气口吹气打开延时所对应的主旋转盘转动的角度

i) BLOW3_ON_ANGLE:第三个吹气口吹气打开延时所对应的主旋转盘转动的角度

j) MIN_INTERVAL_ANGLE:螺丝重叠时两个螺丝最小间隔位置所对应的主旋转盘转动角度,此值必需大于光源亮灯延时角度与吹气延时角度的最大值

k) SPEED_RATE:主旋转盘转速进给率,默认参数为100表示100%的进给率,主旋转盘转速大约为6.7~6.8r/min,此值设置大于100时转盘速度将比默认速度加快,检测效率提升,同时增加了重叠误判为NG和重测的概率;小于100时转盘速度将比默认速度慢,检测效率降低,同时减小了重叠误判为NG和重测的概率;

12. 调机参数的文本生成和参数发送,生成文本说明如下:

a) I8000=%0.6f*28672/9
        :设置第一个相机的触发位置偏移角度,添加的数据链接为:CCD1_ANGLE

b) I8001=I8000+%0.6f*28672/9
        :设置第一个相机光源的亮灯延时角度,添加的数据链接为:LED_ON_ANGLE

c) I8002=%0.6f*28672/9
        :设置第二个相机的触发位置偏移角度,添加的数据链接为:CCD2_ANGLE

d) I8003=I8002+%0.6f*28672/9
        :设置第二个相机光源的亮灯延时角度,添加的数据链接为:LED_ON_ANGLE

e) I8004=%0.6f*28672/9
        :设置第一个吹气口的触发位置偏移角度,添加的数据链接为:BLOW1_OK_ANGLE

f) I8005=I8004+%0.6f*28672/9
        :设置第一个吹气口的吹气延时角度,添加的数据链接为:BLOW1_ON_ANGLE

g) I8006=%0.6f*28672/9
        :设置第二个吹气口的触发位置偏移角度,添加的数据链接为:BLOW2_NG_ANGLE

h) I8007=I8006+%0.6f*28672/9
        :设置第二个吹气口的吹气延时角度,添加的数据链接为:BLOW2_ON_ANGLE

i) I8008=%0.6f*28672/9
        :设置第三个吹气口的触发位置偏移角度,添加的数据链接为:BLOW3_RE_ANGLE

j) I8009=I8008+%0.6f*28672/9
        :设置第三个吹气口的吹气延时角度,添加的数据链接为:BLOW3_ON_ANGLE

k) I85=%0.6f*28672/9
        :设置螺丝重叠时的最小间隔角度,添加的数据链接为:MIN_INTERVAL_ANGLE

l) %%%d
        :设置旋转盘转速进给率,添加的数据链接为:SPEED_RATE

13. 分支选择功能中,调机参数发送 流程的实现

a) 通过以太网发送 第12步中生成的调机参数文本给筛选机控制器

14. 分支选择功能中,工作点位置微调 流程的实现,以CCD1相机拍照位置后移为例

a) 通过设置变量,将变量CCD1_ANGLE设置为表达式 CCD1_ANGLE+0.016,(0.016代表微调的角度,可以根据需要加大或减小此值以调整微调的粒度)

b) 通过以太网发送以下文本:I8000=I8000 + 0.016*28672/9
I8001=I8001 + 0.016*28672/9

15. 如果要将工作点位置前移,则将“+”号变为“-”号即可,如果要调整其它工作点,对应关系如下表:


变量序号

描述

默认含义

I8000

从光电检测开关位置起编号为0的工作点,输出打开的位置角度

第一个相机输出光源开的位置与光电触发位置的偏移角度

I8001

从光电检测开关位置起编号为0的工作点,输出关闭的位置角度

第一个相机输出光源关的位置与光电触发位置的偏移角度

I8002

从光电检测开关位置起编号为1的工作点,输出打开的位置角度

第二个相机输出光源开的位置与光电触发位置的偏移角度

I8003

从光电检测开关位置起编号为1的工作点,输出关闭的位置角度

第二个相机输出光源关的位置与光电触发位置的偏移角度

I8004

从光电检测开关位置起编号为2的工作点,输出打开的位置角度

第一个吹气口开始吹气的位置与光电触发位置的偏移角度

I8005

从光电检测开关位置起编号为2的工作点,输出关闭的位置角度

第一个吹气口结束吹气的位置与光电触发位置的偏移角度

I8006

从光电检测开关位置起编号为3的工作点,输出打开的位置角度

第二个吹气口开始吹气的位置与光电触发位置的偏移角度

I8007

从光电检测开关位置起编号为3的工作点,输出关闭的位置角度

第二个吹气口结束吹气的位置与光电触发位置的偏移角度

I8008

从光电检测开关位置起编号为4的工作点,输出打开的位置角度

第三个吹气口开始吹气的位置与光电触发位置的偏移角度

I8009

从光电检测开关位置起编号为4的工作点,输出关闭的位置角度

第三个吹气口结束吹气的位置与光电触发位置的偏移角度

I8010

从光电检测开关位置起编号为5的工作点,输出打开的位置角度


I8011

从光电检测开关位置起编号为5的工作点,输出关闭的位置角度




如果增加相机或调整吹气口的位置,以机构的位置顺序编号为准,最多可以有32个位置变量可以设置。

 

关于我们的测试过程

CK的测试过程包括以下阶段:

1、与CK的销售工程师确定你的目标

因为每个视觉项目都代表一组独特的挑战。我们的目标是了解项目成功的关键因素。CK的销售工程师与您合作,了解您的测试目标是什么,以及哪些功能最能满足目标。

2、提出测试解决方案

一旦明确了测试目标,我们就提出了一个专门满足这些目标的解决方案。典型的提案概述了项目任务、可交付成果、进度和成本。我们使用您的测试需求和规范来设计满足您的目标的解决方案。

3、完善提案

如有必要,我们对提案进行改进,以便就满足所有指定测试标准、时间表和预算的最终计划达成共识。

4、执行计划

我们执行测试计划,使用我们行之有效的测试方法和行业最佳实践,按时、按预算完成所有测试任务。

在测试项目期间,将项目状态与缺陷报告和测试摘要进行通信。缺陷报告可在我们的销售工程师实时获取。

我们在项目执行期间以及测试项目的所有其他阶段提供个性化的关注。

5、项目完成和下一测试周期计划

在测试项目完成时,客户收到项目的最终可交付成果。这可能是最终的报告、测试自动化脚本或其他测试文档。

此外,大多数项目还会收到一份详细的状态报告,其中概述了测试项目的进度。这对于功能测试项目特别有用,在功能测试项目中,可以提供关于特定问题区域的有用摘要信息和进一步测试的建议。

然后,我们与客户一起确定是否需要另一个测试周期,如果需要,还需要多少进一步的测试。


* 为了能够及时处理信息并将结果反馈给您,建议通过邮件方式与我们联系:点击发送邮件

* 为了能够及时处理信息并将结果反馈给您,建议通过邮件方式与我们联系: 点击发送邮件

1656062144177956.jpg

筛选机控制器


   01     外形尺寸    


1656061956498044.png