线扫相机使用教程

一.线扫相机的采集原理
在现有的工业 2D 相机中,主要有两种类型的相机,面阵相机和线扫相机。这两种相机有其
各自的特点。
面阵相机:主要用于采集较小尺寸的产品,特别是长度方向较小的产品。其采集原理是通过
单次或多次曝光,最后形成一张固定分辨率的图像,其分辨率不能超过最大的分辨率,且最
大分辨率不能更改。相机采集的时候可以是静止的也可以是运动的。
线扫相机:主要是用于采集较大尺寸的产品,且产品和相机之间存在固定方向的相对运动。
由于其相机的芯片的像元只有一行(彩色为 3 行,黑白为 1 行或者 2 行,一般都不超过 3
行),因此,可以设定任意的行高,理论上可以采集行高可以“无限”,采集的图像分辨率用户
可以根据实际需要设定,这种图像的采集方式可以描述成“聚线成面”。其主要用于食品、纺
织、医药、3C、五金(卷材)、包装等行业。
在这里插入图片描述
二.线扫相机的选型
在实际项目中,怎么选择相机的型号呢?线阵相机有几个关键的参数:
幅宽:与相机扫描方向垂直的方向的视野。例如产品的宽度为 80mm,那么实际采图的时候
需要适当加大一些,可以把幅宽定位 100mm,具体以实际项目为准。
分辨率:线扫相机常用的 2K、4K、8K、16K、32K。
在这里插入图片描述
三.硬件连接
使用线阵相机采集图像的时候,一般需要连接编码器,使用编码器的输出信号作为相机采集
的行信号,编码器一般使用 5V 差分编码器,使用传感器或者 PLC 的输出信号作为帧信号,
帧信号适用于图像开始采集的信号,行信号是控制每一行的采集。
在使用相机采集图像之前,需要先连接好相机的硬件,包括相机电源、网线和 I/O。目前
HC 软件使用线扫相机(Gige 口)有两个品牌:Dalsa 和海康。这两款相机在 HC 软件使用
的时候只支持硬件外触发,因此首先需要连接好相机的电源、网线和 I/O。下面主要讲解这
两款相机的 I/O 接线。
Dalsa 线扫相机
根据 Dalsa 提供的手册中,I/O 的定义如下:
在这里插入图片描述
接线实例一:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:PNP 传感器或 PLC,信号源选择 line3
行触发信号源:5V 差分编码器,A 相接入 line1,B 相接入 line2
在这里插入图片描述
海康 2K/4K 线扫相机
根据海康用户手册,其 I/O 定义如下,对应相机型号:MV-CL021-40GM、MV-CL022-40GC
和 MV-CL042-90GM/C
在这里插入图片描述
接线实例二:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:PNP 传感器或 PLC,信号源选择 line1+,无下拉电阻
行触发信号源:5V 差分编码器,A 相接入 line0,B 相接入 line3
在这里插入图片描述
接线实例三:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:NPN 传感器或 PLC,信号源选择 line1+
行触发信号源:5V 差分编码器,A 相接入 line0,B 相接入 line3
在这里插入图片描述
接线实例四:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:NPN 传感器或 PLC,信号源选择 line2
行触发信号源:5V 差分编码器,A 相接入 line0,B 相接入 line3
在这里插入图片描述
接线实例五:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:PNP 传感器或 PLC,信号源选择 line2
行触发信号源:5V 差分编码器,A 相接入 line0,B 相接入 line3
在这里插入图片描述
海康 8K 线扫相机
根据海康用户手册,其I/O定义如下,对应相机型号:MV-CL022-91GM/C、
MV-CL042-91GM/C、MV-CL084-91GM、MV-CL086-91GC 和MV-CL024-91GM/C
在这里插入图片描述
接线实例六:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:PNP 传感器或 PLC,信号源选择 line1+,接下拉电阻 R1=4.7KΩ(若电压为
12V,R1=1KΩ)
行触发信号源:5V 差分编码器,A 相接入 line0,B 相接入 line3
在这里插入图片描述
接线实例七:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:PNP 传感器或 PLC,信号源选择 line1-,无下拉电阻
行触发信号源:5V 差分编码器,A 相接入 line0,B 相接入 line3
在这里插入图片描述
接线实例八:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:NPN 传感器或 PLC,信号源选择 line1+,接上拉电阻 R1=4.7KΩ(若电压为
12V,R1=1KΩ)
行触发信号源:5V 差分编码器,A 相接入 line0,B 相接入 line3
在这里插入图片描述
接线实例九:帧触发+行触发(编码器)采集,接线图如下
帧触发信号源:NPN 传感器或 PLC,信号源选择 line1+,无上拉电阻
行触发信号源:5V 差分编码器,A 相接入 line0,B 相接入 line3
在这里插入图片描述
四.客户端使用
Dalsa 客户端的使用
连接相机并配置 IP
连接好相机的电源以及触发信号并连接网线后, 由于出厂的相机的 IP 不是在工控机对应网
口的同一网段,所以再连接网线后,使用 Dalsa 的网络配置工具 Network Configuration Tool,
配置相应的 IP。操作步骤如下:
1.双击Network Configuration Tool图标,打开软件,点击右下角Scan Network,将默认ip的相机找到。然后点击找到的相机
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/02a42c43c79a4da49b21897a996d992a.png在这里插入图片描述
2. 选中相机,再点击 Divice IP Configuration,此时可看到相机的默认 IP,点击下方的
Automatic Recovery(Force IP)可临时修改相机 IP 与网卡一致。
在这里插入图片描述
3. 临时修改完 IP 后,相机显示连接正常,然后再点击图三中的第一部 Persistent IP Mode,点击后 IP 变为可编辑,根据需要修改(推荐统一 IP 网口 1 为 192.168.10.88,网口 2 为192.168.20.88,其他网口以此类推),再点击下方的 Apply 按钮,相机静态 IP 配置完成。
在这里插入图片描述
采集图像
配置好静态 IP 后,就可以关掉 IP 配置工具, 双击打开客户端Sapera CamExpert就可以连接相机了,步骤如下:

  1. 打开 CamExpert,点击 Device,展开 Linea_M4096-7um_1,再点击下方出现的相机。
    在这里插入图片描述
  2. 重要参数设置
    曝光、增益
    在这里插入图片描述行触发和帧触发
    在 Trigger Selector 中选择 Single Line Trigger(行触发)的时候,可以设置对应的行触发参数,例如 Trigger Mode 的 ON/OFF(ON 即为使用外部信号作为行触发信号,OFF即不使用外部信号作为行触发信号,以内部特定频率的信号为行触发信号),Trigger
    Source 设置对应的 I/O 作为外部信号的输入端子
    在这里插入图片描述
    在 Trigger Selector 中选择 Single Frame Trigger(帧触发)的时候,可以设置对应的帧触发参数,例如 Trigger Mode 的 ON/OFF(ON 即为使用外部信号作为帧触发信号,OFF 即不使用外部信号作为帧触发信号),Trigger Source 设置对应的 I/O 作为外部信号的输入端子
    在这里插入图片描述
    行高
    在 Image Format Controls 中 Height 对应的就是图像的行高,也就是图像的 Y 方向分辨率
    在这里插入图片描述
  3. 平场校正方法
    平场模式选择:Off-关闭;Active-打开;Calibration-设置模式。
    在这里插入图片描述
    平场未开启状态,如下图,两侧暗,中间亮
    在这里插入图片描述
    将平场模式切换到设置模式,第一个为目标值,设置到合适灰度值,如 200。第二项FPN 为暗场,第三项 PRNU 为明场
    在这里插入图片描述
    将镜头盖盖好,点击 FPN,设置好目标值后,将白纸平铺在视野范围内,点击 PNRU项,做完后切换到 Active 模式点击采集。效果如下:幅面范围内图像均匀
    在这里插入图片描述
    设置保存:
    完成平场后点击下图中的 save 保存设置
    在这里插入图片描述
  4. 调焦
    用一张画有细线的白纸放在相机视野的正中间,调节焦圈直至线条最清晰。完成调焦后
    将镜头所有螺丝都锁紧。
    在这里插入图片描述
  5. 用户参数保存
    选择 Power-up Configuration,选择 User 1,点击 Save 保存参数到账户 1,并将上电参数设置 UserSet1
    在这里插入图片描述海康客户端的使用
    海康线扫相机的连接和普通面阵相机的连接方法相同,这里就不再讲述。下面主要介绍客户
    端的部分参数。
  6. 相机常规参数
    曝光、增益:设置方式和面阵相机基本一样,此处就不再讲述。
    触发模式、行触发、编码器、频率转换器、帧触发:
    触发模式:海康线阵相机硬件触发分为 4 种模式,分别是内触发、行触发、帧触发、行触发
    +帧触发。其设置方式如下
    在这里插入图片描述
    行触发:在硬件外触发的情况下,需要设置行触发的信号源,可以通过如下方法设置
  1. Acquisition Control–>>Trigger Selector–>>Line Start
  2. Trigger Mode–>>on
  3. Trigger source–>>选择 line 中的一路或者 Encoder Module Out(编码器)或者 Frequency
    Converter(频率转换器)
    在这里插入图片描述
    编码器:使用编码器信号的时候,接受的是 AB 相的差分信号
    在这里插入图片描述
    通过 Encoder Control 实现编码器的参数设置,Encoder Source A 和 Encoder Source B 可以分别选择不同的外部信号源。
  4. Encoder Trigger Mode:设置源信号的触发方向,可选择 Any Direction(正方向或反方向均可触发)、Forward Only(正方向触发)、Backward Only(反方向触发)。
  5. Encoder Counter Mode:设置计数方向,可选择Ignore Direction(正向或方向触发均计数)、Follow Direction(正向触发时有效,Encoder Counter 参数增加,反向运动时减少)和Backward Direction(反向触发时计有效,Encoder Counter 参数增加,正向运动
    时减少)
    在这里插入图片描述
    频率转换器:使用频率转换器的时候,接受的也是编码器的信号,只不过设置了分频或者倍频的参数,海康相机是通过预除器、乘法器、分频器来实现信号的分频或者倍频。其流程如下:
    在这里插入图片描述
  6. Frequency Converter Control -->>Input Source 参数选择频率转换的信号来源,可选 Line *或 Encoder Module Out。其中 Line *需要为输入信号。
  7. Signal Alignment–>>Rising Edge(上升沿)或者 Falling Edge(下降沿)
  8. PreDivider:预除器,输入的源信号首先通过预除器处理,通过设置的整数整除,达到降低源信号频率的目的,并将处理后的信号送到乘法器。
  9. Multiplier:乘法器,预除器处理后的信号送到乘法器,乘法器将该信号频率乘以设置的整数,达到增加信号频率的目的,并将信号送到分频器。
  10. PostDivider:分频器,乘法器处理后的信号送到分频器,分频器将该信号通过设置的整数整除,降低信号频率,并将产生的信号作为相机最终的触发信号。
    在这里插入图片描述
    帧触发:在硬件外触发的情况下,需要设置帧触发的信号源,可以通过如下方法设置
  11. Acquisition Control–>>Trigger Selector–>>Frame Burst Start
  12. Trigger Mode–>>on
  13. Trigger Source–>>Line 0(根据实际情况选择)
  14. 其他参数设置方法参照面阵相机。
    在这里插入图片描述
    其他触发相关参数:
  15. 帧触发出图数:Acquisition Control–>>Acquisition Burst Frame Count;设置为 1 的时候,为单帧触发模式,大于 1 的时候为多帧触发模式。
  16. 触发响应方式:Acquisition Control–>>Trigger Activation,可以选择Rising Edge、FallingEdge、Level High、Level Low、Any Edge。
  17. 帧触发缓存:Acquisition Control–>>Trigger Cache Enable,启用此信号的时候,若第2 个触发信号第1 行图像的曝光结束时间不早于相机当前第1 个触发信号最后1 行的出图时间,则第2 个触发信号正常出图HC软件连接相机使用;若第2 个触发信号第1 行图像的曝光结束时间早于相机当前第1 个触发信号最后1行出图时间,则相机内部会做处理,将第2 个触发信号第1 行图像的曝光开始时间推迟,确保第2 个触发信号第1 行图像的曝光结束时间不早于第1 个触发信号最后1 行的出图时间。若不启用此信号,第二个触发信号直接被过滤掉,不做处理。
  18. 行触发缓存:Acquisition Control–>>Line Trigger Cache Enable
  19. 触发防抖:Digital IO Control–>> Line Debouncer Time;当设置的Debouncer 时间大于触发信号的时间时,则该触发信号被忽略。
  1. 平场矫正(PRNUC)功能
    1) 为什么要对线阵相机进行平场矫正
    线阵相机需要平场矫正(PRNUC)主要是因为获取得图像有异常,如图像边缘亮度与中心亮度不一致情况等,对于现场使用相机获取图像数据有较大影响,故而需要对线阵相机进行平场矫正操作一板情况下有以下原因需要平场矫正:
    (1) 光照不均
    (2) 镜头中心和镜头边缘响应度不一致
    (3) 成像元器件得各像元响应不一致
    (4) 固定的图像背景噪声
    如下图,图像两侧偏暗,中间亮
    在这里插入图片描述
    2) 平场矫正步骤
    (1) 在相机视野内铺一张没有折痕白纸
    (2) 调节相机参数,使图像的灰度值在120-160之间
    (3) 调节镜头,使相机采集的图像尽量模糊
    (4) Shading Selector 选择PRNUC Correction
    (5) Activate Shading 点击Execute
    (6) PRNUC Enable勾选使能
    矫正前后后的效果如下图:
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/248967.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 驱动开发基础知识—— 具体单板的 LED 驱动程序(五)

个人名片: 🦁作者简介:一名喜欢分享和记录学习的在校大学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755qq.com 🦉个人WeChat:V…

震动传感器详解

当涉及到物体的震动检测和感应时,震动模块成为一种常见且实用的工具。这种小巧而功能强大的设备可以用于各种应用,从智能家居到安防系统,再到工业自动化等领域。通过感知和转换物体震动为电信号,震动模块在许多方面都发挥着重要的…

leetcode88合并两个有序数组

力扣(LeetCode)-合并两个有序数组 方法一 | 合并后排序 题目要求将两个有序数组合并并保证合并后的数组仍然有序。 观察题目可以看出,nums1的容量大小总是 mn,所以 nums2能够合并到 nums1中。 那就将 nums1中未赋值的地方赋上 …

yarn 现代的包管理工具 介绍

一、前言 yarn 是一个现代的包管理工具,它是 npm(Node Package Manager)的一个替代品。yarn 由 Facebook 开发,并在 2016 年发布。它解决了当时 npm 的一些问题,尤其是在性能和安全性方面。 yarn 主要用于以下几个方面…

C语言基础13

今天是学习嵌入式相关内容的第十四天,以下是今日所学内容 1.结构体: 1.结构体类型定义 2.结构体变量的定义 3.结构体元素的访问 4.结构体的存储 内存对齐 结构体整体的大小必须为最大基本类型长度的整数倍 5.结构体作为函数参数 值传递 练习:定…

Collections集合工具类-JAVA

java.util.Collections:是个集合工具类它不是集合&#xff0c;而是集合的工具类 常用 API&#xff1a;注意 binarySearch 方法要求元素有序 方法实现&#xff1a; public class Test01 {public static void main(String[] args) {ArrayList<String>list1new ArrayList…

html+js+css静态故宫主题

登录代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>登录 - 故宫博物院</title><…

前端Web开发

安装flask框架 pip install flask 导入flask模块 from flask import Flask 【可能遇到的问题】 出现了如下警告&#xff1a; WARNING: You are using pip version 21.2.4; however, version 22.0.4 is available.You should consider upgrading via the D:\Python\python…

鸿蒙ArkUI开发-实现增删Tab页签

场景介绍 部分应用在使用过程中需要自定义添加或删除标签的场景&#xff0c;比如在浏览器中的顶部标签栏中需要新打开或关闭网页页签&#xff0c;而这种场景与Tabs组件效果类似&#xff0c;但Tabs组件不提供增加或删除页签的功能&#xff0c;不能自由的增加删除页签&#xff0…

python数据类型-列表

1 python中列表的定义 python中列表是一种有序和可更改的集合&#xff0c;允许重复的成员&#xff0c;列表中的元素之间数据类型可以不同&#xff08;元素之间数据类型可以不相同&#xff0c;这一点和其它的面向对象的开发语言有很大的不同&#xff0c;如C#、Java&#xff09;…

UI设计行业的就业前景如何?

UI设计师的就业前景是许多新人进入这个行业之前关注的问题之一。在数字时代&#xff0c;用户界面设计在各个行业发挥着越来越重要的作用。优秀的UI设计师需要优化他们的产品和服务&#xff0c;无论是互联网公司、软件开发公司、医疗器械、汽车制造等传统行业。本文将从市场需求…

基于Javaweb开发的二手图书零售系统详细设计【附源码】

基于Javaweb开发的二手图书零售系统详细设计【附源码】 &#x1f345; 作者主页 央顺技术团队 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; &#x1f345; 查看下方微信号获取联系方式 承接各种定制系统…

【Vue】前端项目引入阿里图标

【Vue&React】前端项目引入阿里图标 方式11、登录自己的iconfont-阿里巴巴矢量图标库&#xff0c;把需要的图标加入到自己的项目中去&#xff1b;2、加入并进入到项目中去选择Font class 并下载到本地3、得到的文件夹如下4. 把红框中的部分粘贴到自己的项目中&#xff08; …

【HarmonyOS 4.0 应用开发实战】TypeScript入门之接口详讲

个人名片&#xff1a; &#x1f43c;作者简介&#xff1a;一名大三在校生&#xff0c;喜欢AI编程&#x1f38b; &#x1f43b;‍❄️个人主页&#x1f947;&#xff1a;落798. &#x1f43c;个人WeChat&#xff1a;hmmwx53 &#x1f54a;️系列专栏&#xff1a;&#x1f5bc;️…

接口的多继承

接口的多继承也就是一个接口可以同时继承多个接口&#xff0c;也是使用extends关键字实现。 接口的多继承的好处&#xff1a;假如有一个实现类要继承三个接口&#xff0c;现在只需要将多个接口“合并”为一个接口&#xff0c;就可以便于实现类实现。 注意&#xff1a;1.如果一…

为什么要用云手机养tiktok账号

在拓展海外电商市场的过程中&#xff0c;许多用户选择采用tiktok短视频平台引流的策略&#xff0c;以提升在电商平台上的流量&#xff0c;吸引更多消费者。而要进行tiktok引流&#xff0c;养号是必不可少的一个环节。tiktok云手机成为实现国内跨境养号的一种有效方式&#xff0…

Kafka-服务端-PartitionLeaderSelector、ReplicaStateMachine

PartitionLeaderSelector 通过对前面的分析可知&#xff0c;PartitionMachine将Leader副本选举、确定ISR集合的工作委托给了PartitionLeaderSelector接口实现&#xff0c;PartitionMachine可以专注于管理分区状态。这是策略模式的一种典型的应用场景。 图展示了PartitionLead…

WINDOWS中电源设置小工具

你可以使用WinPowerSet&#xff0c;玩CS2之前&#xff0c;把电源设置为“高性能”&#xff0c;玩后设置为“平衡”。 WinPowerSet 下载地址&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1iOp29c4ica9L47t_l9lZ2w?pwdd248 提取码&#xff1a;d248 最近新配了一台12…

vue使用富文本

1、安装 cnpm install vue-quill-editor2、在main.js中引入 // 富文本 import VueQuillEditor from vue-quill-editor // require styles 引入样式 import quill/dist/quill.core.css import quill/dist/quill.snow.css import quill/dist/quill.bubble.css Vue.use(VueQuill…

Roxlabs全球IP代理服务:解锁高效数据采集与网络应用新境界

引言 在这个数字化迅速发展的时代&#xff0c;数据采集和网络应用的重要性显得愈发突出。江苏阿克索网络科技有限公司旗下的Roxlabs&#xff0c;以其卓越的全球IP代理服务&#xff0c;正引领着这一领域的创新和发展。Roxlabs不仅提供遍及200多个国家和地区的高质量动态住宅IP资…