一、Cognex925B的简介

                                         

Cognex925B是一款线激光扫描传感器,利用激光三角的原理测量Z方向的断差。

二、Cognex925B的参数简介

         

如上图所示,深蓝色部分就是Cognex925B的量测区域,我们来解析一下参数的含义:

Near Field of View 就是梯形的上边(蓝色区域),Far Field of View就是梯形的下边,X方向的精度为18.3um-22.7um,Z方向的精度为2um。

三、通过VisionPro处理925B的内容

1.启动Cognex GigE Vision配置程序。 如果您的桌面上没有配置器,请参见附录B。 按照GigE Vision摄像机用户指南(参见附录B)中的说明配置设备的IP地址。

2、启动VisionPro®QuickBuild软件

通过双击VisionPro®QuickBuild图标启动QuickBuild。

3、将DS900传感器初始化为采集源

A、在QuickBuild工作区中,找到并双击CogJob1下的图像源条目。

B、在“图像源”对话框中,选择相机作为源。

C、在“图像采集设备”下拉列表中,找到DS900设备,然后单击“初始化采集”。

4、配置采集设置

请继续阅读下面的“配置DS900采集”部分

四、配置925B采集部分

本节将介绍采集配置界面各个选项卡中各种参数的设置。

曝光

曝光值(以毫秒为单位)应根据扫描的材料进行设置。

建议如下:

表1:推荐的快门时间(近似)

目标材料

快门时间

白色纸/塑料

10 - 50μs

彩色塑料

50 - 100μs

金属表面

0.1 - 1ms

黑色塑料/橡胶

0.5 - 1ms

 超时

如果启用,此设置(以毫秒为单位)应设置为大于以下三个因素的总和:

1、采集请求和采集开始之间的最大时间(可能由于使用编码器时启动运动的延迟);

2、扫描部件所需的最大时间(由运动速度和扫描长度控制); 和

3、扫描完成后完成图像数据传输所需的最长时间。

选通和触发选项卡

触发模式

只有两种支持的模式是手动和自由运行。 DS900系列传感器不支持硬件触发。 自由运行模式可以使采集支持稍高的线速率。 设置Auto和Semi分别将系统设置为Free和Manual的等效状态。

图像属性选项卡

区域

原点X和原点Y参数应始终设置为零。 Height参数可以根据扫描的产品长度而变化,但不应大于64000.适当的值可以通过以下公式估计:

Height = 产品长度/Yscale   (Yscale即每扫描一次走的距离)

输出像素格式和ROI模式

使用两者的默认值(自动)。

校准选项卡

使用默认参数。

主3D校准空间:Sensor3D,

2D校准空间名称:Sensor2D,

所选空间:已选中。

GigE标签

功能访问

此部分可用于设置或查询各种GigE功能。强烈建议不要使用此部分设置GigE功能,因为这样做可能会导致不可预测的结果,甚至可能导致采集失去响应和无法恢复。但是,可以安全地查询GigE功能。要执行查询,只需在要素文本框中键入要素名称,然后按读取按钮。然后,该要素的值将返回到“值”文本框中。

传输超时

此值类似于“设置”选项卡上的超时值,但不需要包括预获取时间。建议初始设置为20000毫秒。注意,如果命中超时,将返回以下获取错误消息:“获取失败异常。 (缓冲区检索失败(MISSING_PACKETS))“通常,它需要被设置为比预期的最长获取所花费的时间更长的值。如果编码器停止一段时间,然后继续,则空闲时间必须包括在传输超时的估计中。

数据包大小

设置此值在DS900采集的情况下不起作用,因为它由Cognex采集驱动程序内部控制。

延迟级别

此值应保留其默认值3。

自定义属性选项卡

此选项卡用于设置其他选项卡中不可用的各种相机参数。 在DS900的情况下,有许多重要的参数需要使用此方法设置。 每个参数将在下面概述。 使用位于功能列表上方的添加新按钮(Acquisition Profile Plus演练DS 900 Acquisition addnewbutton)添加参数。 使用位于功能列表上方的删除按钮(Acquisition Profile Plus演练DS 900采集删除按钮)删除参数。 网格中参数的顺序决定了它们写入相机的顺序。 此顺序在大多数情况下无关紧要,但可能会在添加非默认参数时产生影响,这些参数可能会对设置产生影响。 下表列出了用于配置正确采集的参数。 可选参数如此标记。

注意

请不要使用红色参

DS925B摄像机参数表

 

 

 

 

 

DS900类别

 

相机模式

范围(默认)

完成多行扫描后返回16位范围图像。 图像的大小反映了在“图像属性”选项卡中设置的参数。

强度

返回包含从单次采集返回的配置文件的1280x1024图片。

灰度范围

返回包含在范围模式中返回的图像的16位范围图像以及同一扫描的散射亮度图像。 后者可以与2D图像分析工具一起使用。

注意

有关实际示例,请参阅QuickBuild示例作业使用RangeWithGrey图像部分3D示例应用程序。

XScale

用于设置图像在X方向(水平)的缩放系数。 降低XScale会使数据填充更多的图像宽度。 它不会更改保留在提供的像素值(图像属性选项卡|宽度参数)的输出图像大小。

启用重新采样

当启用(默认)时,将对所采集的图像进行重采样以产生所需的X缩放。禁用时,图像将返回到获取的用户(1280像素宽,作为推荐设置)。由于默认值为true,所有范围图像都将重新采样。

运动输入

l   模拟编码器(默认):使用内部定时器使传感器获取。

编码器:传感器将期望来自外部有线编码器的编码器脉冲。

手动:此模式保留以备将来使用。

每行的步数

此设置应用于控制编码器脉冲与所采集线路的比率。增加此值会降低传感器采集线的速率。默认值为4。

每周期距离

采集线之间的运动毫米数。这由编码器规格设置,根据StepsPerLine参数减小。对于正方形像素,此值必须与XScale参数值匹配。默认值为1.更改每个循环的距离不会更改范围图像的外观。此属性不以任何方式影响图像缩放。为了实现“正方形像素”,每像素的XScale必须匹配实际上在每像素的Y中获取的。更改此属性不会影响。

预期运动速度

这应该与运动级的物理速度匹配,以毫米每秒为单位。默认值为200。

注意

这仅适用于运动输入参数设置为模拟编码器。

忽略TooFast编码器

启用时,采集线路速率将限制为相机能够采集的速率。当使用外部编码器并且编码器驱动太快时,采集将有效地由基于时间的编码器控制。默认值为False,因此过快的编码器速率将被标记为错误。请注意,DS900上不能配置编码器方向,编码器分辨率和单通道编码器。如果禁用此参数,则采集将引发编码器超限错误(如果编码器脉冲速率超过最大采集帧速率)。启用此参数将导致遗漏的编码器脉冲被忽略。用于VisionPro 8.4的DS900系列不会生成缺少线。

测量领域

控制梯形扫描区域的哪个部分是从中返回的数据。请参阅测量字段查找表以确定需要设置的值。默认值为5。

扫描轮廓上满足或超过阈值的像素用于产生距离图像。低于阈值的像素被视为缺失。范围为0 - 255.默认值为128。

阈值动态

允许传感器自动调整配置文件的阈值,以通过在配置文件的不同部分允许不同的阈值来实现改进的结果。默认值为OFF。

配置文件相机获取方向

当设置为激光到镜头时,将调整图像变换,并可选择垂直翻转图像以校正镜像。默认值为“镜头到激光”。

数据包间超时

C控制在超时之前驱动程序在数据包之间等待的时间间隔的最大值。由于DS9xx传感器在获取数据包时发送数据包,因此当使用物理编码器时,超过此间隔的任何停止或极限运动减慢都会导致采集失败。默认为1000 mSec。

自动更正像素行顺序

当为真(默认值),轮廓相机获取方向设置为激光到镜头时,获取的距离图像将垂直翻转以删除镜像。

激光模式

l   Strobed(默认) - 开始采集时(激光延迟中指定的延迟)打开激光,并在采集停止时关闭激光,即“仅在采集期间激光打开”。

手动 - 采集代码不控制激光,用户通过CP激光功率XML功能控制激光。这适用于出现异常长的激光延迟的情况

将需要设置以产生可靠的采集。

概要

关闭延迟:激光模式= Strobed,Lase rDelay = 0

关闭选通,激光打开:激光模式=手动,CP激光功率=标准功率

关闭选通,激光关闭:激光模式=手动,CP激光功率=关

激光延迟

指定激光打开和开始采集之间的延迟时间(以秒为单位)。默认值为0.005(5 mSec)。如果延迟设置为大于1秒,则会发生采集错误。将激光延迟设置为0会导致无延迟。

相机功能类别| 算法控制

 

中位数

定义要应用于轮廓的中值滤波器的内核大小,以帮助平滑和降噪。 可能的值是禁用,3位数,中位数5,中位7的默认值是禁用。

平均

定义要应用于轮廓的平均滤波器的内核大小,以帮助平滑和降噪。 可能的值是禁用,平均3,平均5和平均7。 默认值是禁用。

测量字段查找表

四、具体实战选型

讲了这么多,我们用一个实际的案例来看看如何选型:

A:选用模拟编码器

Step1:根据产品要测量的高度差,确定激光器到产品的距离及根据字段产找表最合适的测量领域。

一般而言我们让工作距离是53.5+25=78.5mm,或者比78.5mm小一点,字段查找表高度上有8个格,每个格大约是25/8 = 3.125mm。

当工作距离是78.5mm时,测量矩形的长边刚好在离传感器78.5mm的平面上,这个时候根据产品离基准面的高度确定选哪个测量领域。

说到底第一步就是先把测量领域确定下来,这一点至关重要。

Step2:根据马达的速度确定DistancePerCircle(每周期运动距离)      DistancePerCircle = 马达速度(单位是mm/s)/测量领域对应的频率

YScale = DistancePerCircle *StepsPerLine/4     一般StepsPerLine = 4 就是说YScale = DistancePerCircle

设置XScale以匹配计算的YScale以获取正方形像素。或者,您可以选择不同的XScale,以更好地利用图像的像素宽度,并减少丢失的像素。

XScale不影响处理速度和编码器超限条件。作为指导,有效的XScale通常在0.05和0.01之间。其他值也可以工作,但会导致图像不必要的欠采样或过采样。

简单说就是原则上设置XScale = YScale ;

Step3 :设定Height

根据Height = 要测量的长度/DistancePerCircle 确定编码器Height的数值。

Cognex925B的使用方法的更多相关文章

  1. javaSE27天复习总结

    JAVA学习总结    2 第一天    2 1:计算机概述(了解)    2 (1)计算机    2 (2)计算机硬件    2 (3)计算机软件    2 (4)软件开发(理解)    2 (5) ...

  2. mapreduce多文件输出的两方法

    mapreduce多文件输出的两方法   package duogemap;   import java.io.IOException;   import org.apache.hadoop.conf ...

  3. 【.net 深呼吸】细说CodeDom(6):方法参数

    本文老周就给大伙伴们介绍一下方法参数代码的生成. 在开始之前,先补充一下上一篇烂文的内容.在上一篇文章中,老周检讨了 MemberAttributes 枚举的用法,老周此前误以为该枚举不能进行按位操作 ...

  4. IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法

    直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...

  5. 多线程爬坑之路-Thread和Runable源码解析之基本方法的运用实例

    前面的文章:多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类) 多线程爬坑之路-Thread和Runable源码解析 前面 ...

  6. [C#] C# 基础回顾 - 匿名方法

    C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...

  7. ArcGIS 10.0紧凑型切片读写方法

    首先介绍一下ArcGIS10.0的缓存机制: 切片方案 切片方案包括缓存的比例级别.切片尺寸和切片原点.这些属性定义缓存边界的存在位置,在某些客户端中叠加缓存时匹配这些属性十分重要.图像格式和抗锯齿等 ...

  8. [BOT] 一种android中实现“圆角矩形”的方法

    内容简介 文章介绍ImageView(方法也可以应用到其它View)圆角矩形(包括圆形)的一种实现方式,四个角可以分别指定为圆角.思路是利用"Xfermode + Path"来进行 ...

  9. JS 判断数据类型的三种方法

    说到数据类型,我们先理一下JavaScript中常见的几种数据类型: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Functi ...

随机推荐

  1. ARP输入 之 arp_rcv

    概述 arp_rcv是ARP包的入口函数,ARP模块在二层注册了类型为ETH_P_ARP的数据包回调函数arp_rcv,当收到ARP包时,二层进行分发,调用arp_rcv: arp_rcv对ARP输入 ...

  2. 【软件工程】Beta冲刺(4/5)

    链接部分 队名:女生都队 组长博客: 博客链接 作业博客:博客链接 小组内容 恩泽(组长) 过去两天完成了哪些任务 描述 新增数据分析展示等功能API 服务器后端部署,API接口的beta版实现 展示 ...

  3. linux基础技巧

    命令行颜色显示: \[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\0 ...

  4. linux编辑文本(vim)时跳转到最后一行和第一行及相关指令

    vi操作 1.跳到文本的最后一行:按“G”,即“shift+g” 2.跳到最后一行的最后一个字符 : 先重复1的操作即按“G”,之后按“$”键,即“shift+4”. 3.跳到第一行的第一个字符:先按 ...

  5. SCM是什么?

    答: 全称为Software Configuration Management,即为软件配置管理

  6. .SpringIOC容器

    创建对象 SpringIOC容器,是spring核心内容. 作用: 创建对象 & 处理对象的依赖关系 IOC容器创建对象: 创建对象, 有几种方式: 1) 调用无参数构造器 2) 带参数构造器 ...

  7. Hander创建消息

    每一个消息都需要被指定的Handler处理,通过Handler创建消息便可以完成此功能.Android消息机制中引入了消息池.Handler创建消息时首先查询消息池中是否有消息存在,如果有直接从消息池 ...

  8. 搞清clientHeight、offsetHeight、scrollHeight、offsetTop、scrollTop

    每个HTML元素都具有clientHeight offsetHeight scrollHeight offsetTop scrollTop 这5个和元素高度.滚动.位置相关的属性,单凭单词很难搞清楚分 ...

  9. Python3+RobotFramewok 用户自定义库的开发(四)

    在介绍这个之前,可以先看下python的目录Python\Lib\site-packages下面的文件夹,你会发现这个目录下面有DatabaseLibrary.RequestsLibrary.Sele ...

  10. flutter richText富文本

    flutter中富文本使用 RichText( text: TextSpan( text: '登陆即同意', style: TextStyle(fontSize: 14, color: Colors. ...