Flir Blackfly S USB3 工业相机:计数器和定时器的使用方法
Flir Blackfly S USB3 工业相机:计数器和定时器的使用方法
- 概念介绍
- 配置计数器和定时器控制
- 产生 PWM(Pulse Width Modulation)的例程
- 第一步 设置GPIO口的连接
- 第二部 设置上位机软件(SpinView)
- 检测丢失触发数量的例程
本文档概述了 Blackfly S 相机中的计数器和定时器的使用方法。
Blackfly S 采用业内先进的冰块外形传感器。
具有强大功能,可以轻松生成所需的精确图像,并加速应用程序开发。
包括对图像捕获和相机预处理的自动和精确手动控制。
Blackfly S 提供GigE、USB3、套装和板级版本。
精确图像 索尼CMOS传感器中的选择包括:全局快门、偏振和高灵敏度BSI传感器。
实物图如下:
概念介绍
计数器和定时器功能可以实现:
- 创建函数发生器
- 记录信号触发的次数
一些一般应用包括:
- 输入到逻辑块
- 外部信号输出用于控制外部设备
- 跟踪相机曝光的次数
- 跟踪外部输入信号触发的次数
- 在预定义的时间段触发相机
**注意:**下面使用 SpinView 应用程序来演示计数器和定时器控制的配置和执行。
配置计数器和定时器控制
下面的说明就是对应上面的红框序号
- 1.选择计数器 Counter 0或者Counter 1
- 2.选择计数器增加触发的信号源 例如图片中是Line0
- 3.触发事件包括低电平触发、高电平触发、下降沿触发、上升沿触发、任意沿触发
- 4.设置计数器延时个数,来表示几个计数个数来触发计数器开启事件
- 5.设计计数器持续个数,来表示几个计数个数后触发计时器结束事件
- 6.选择控制计数器开启的信号源
选择控制计数器开启的触发事件
触发事件的电平来源可以包括如下:
- 固定频率的触发信号
- 线的输入
- 用户的输出
- 计数器开启事件
- 计数器结束事件
- 逻辑模块输出
- 曝光开始
- 曝光结束
- 帧触发等待
计数器的状态可以从nodemap中获得是激活还是空闲
产生 PWM(Pulse Width Modulation)的例程
例子的目标是实现一个50hz占空比为70%的PWM信号
第一步 设置GPIO口的连接
第一步是设置从相机中输出PWM信号的硬件。对于本例程,使用一个示波器显示这个信号。
相机的GPIO口的定义根据相机型号区别很大。
Blackfly S (BFS)的定义如下:
BFS相机有一个6引脚的GPIO口。它包括一个非隔离输出引脚和一个光隔离输出引脚
如果用这个光隔离引脚输出的话(本例程就是),相机需要一个上拉电阻来增强PWM信号。
配置硬件相机输出PWM需要:
- 1 连接相机的 pin 4 引脚(白色的线,光隔离输出)到示波器的信号输入端
- 2 连接相机的 pin 5 引脚 (蓝色的线,光隔离GND)到示波器的地信号上
配置上拉电阻来增强信号:
- 1 连接一个10kΩ电阻的一端到相机的 pin 3 引脚(红色的线,3.3v 输出)
- 2 连接这个电阻的另一端到相机的 pin 4 引脚(白色的线,光隔离输出)
- 3 连接相机的 pin 6 (棕色的线,GND)到相机的 pin 5 (蓝色的线,光隔离GND)
第二部 设置上位机软件(SpinView)
下面的部分展示如何在SpinView中设置PWM
1 选择一个计数器 Counter 0 或者 Counter 1
2 在计数器事件中选择 MHz Tick 代表的是 1MHz的信号
3 为了建立50Hz的周期信号,需要设置 Counter Duration 为20000 计算方法就是 1MHz/50Hz=20000 cycles/duration
4 定义Counter Duration和Counter Delay 的值来建立70%的占空比
计算方法是 Counter Delay = 30% x 20,000 = 6,000
Counter Duration = 70% x 20,000 = 14,0005 在Counter Trigger Source 里面选择FrameTriggerWait,然后设置Counter Trigger Activation为 Level High
6 禁止 Exposure Auto,设置 Exposure Time 小于1/50 s
7 使能 Trigger Mode 选择 Trigger Source 为 Counter0 Start
8 配置GPIO 使得Line1 为 Output。然后 Line Source 为 Counter 0 Active
9 使能 3.3V的line (红色的线)
10 开始通过示波器可以看到配置的PWM输出
检测丢失触发数量的例程
丢失触发数量 = 触发总数- 曝光数量
通过Counter0 计数 触发的总数
通过Counter1 计数 曝光的数量
方法如下:
- 1 禁止Exposure Auto 并且设置一个较长的Exposure Time比如3.5s
- 2 使能Trigger Mode 并且设置Trigger Source为line0 上升沿
- 3 连接Line0 到相机
- 4 配置Counter 0 计数触发的次数 :Counter Event Source选择Line 0 ,Counter Event Activation设置Rising Edge,然后Trigger Source选择Line0 ,Counter Trigger Activation 选择Rising Edge,最后Counter Duration为一个较大的数值,Counter Delay 为0
- 5 配置Counter 1 来记录曝光的次数
首先 设置Counter Event Source为ExposureStart,设置 Counter Event Activation为Rising Edge
然后 设置Counter Trigger Source为ExposureStart,设置Counter Trigger Activation为Rising Edge
最后 Counter Duration为一个较大的数值,Counter Delay 为0
- 6 使能1Hz的触发源,相机开始拍摄照片
- 7 在SpinView中右键,刷新,这样 Counter Value 就会显示具体数值
查看Counter0的 Counter Value
然后选择Counter 1 ,记下计数器的值
- 8 最后计算丢失触发
就是 Counter0 Value – Counter1 Value的值 3-1 为2.
Flir Blackfly S USB3 工业相机:计数器和定时器的使用方法相关推荐
- Flir Blackfly S 工业相机:通过外部触发实现多摄像头同步拍摄
Flir Blackfly S 工业相机:通过外部触发实现多摄像头同步拍摄 前言 PWM 简介 PWM寄存器 PWM实现方法 1 开启 TIM14 和 GPIO 时钟,配置 PF9 选择复用功能 AF ...
- Flir Blackfly S 工业相机:配置多个摄像头进行同步拍摄
Flir Blackfly S 工业相机:配置多个摄像头进行同步拍摄 Flir Blackfly S 工业相机介绍 同步拍摄概念 同步拍摄应用场景 Flir Blackfly S 同步拍摄方法 在摄像 ...
- Flir Blackfly S 工业相机:自动曝光配置及代码
Flir Blackfly S 工业相机:自动曝光配置及代码 自动曝光 什么是目标灰度值(曝光值) 如何辨别曝光值是否正确 自动曝光是工作流程 如何设置自动曝光 用SpinView配置自动曝光 通过S ...
- 罗克韦尔AB PLC RSLogix5000中定时器指令使用方法介绍
罗克韦尔AB PLC RSLogix5000中定时器指令使用方法介绍 定时器指令用于控制基于时间的操作,属于输出指令. 定时器指令 定时器指令共有3个: 延时导通定时器 TON 延时断开定时器 ...
- 单片机软件定时器的使用方法
单片机软件定时器的使用方法 特别声明:文章是原创但是本文讲述的思想是在国外的开源代码中借鉴的 初学者在编写单片机程序时经常会用到延时函数,但是当系统逐步复杂以后(没有复杂到使用操作系统)延时会因为延时 ...
- CD4541B定时器的使用方法
本文介绍CD4541B定时器的使用方法. 1.电路图: 2.CD4541B引脚说明: 引脚1:接振荡电阻(1K欧~1M欧姆). 引脚2:接振荡电容(0.0001uF~0.1uF ...
- 51单片机定时器的使用方法
定时器的使用方法 1.选择工作方式(设置M1,M0) 设置TMOD的值 选择控制方式(设置GATE) 选择定时器还是计数器模式(设置C/T) 给定时/计数器赋初值(设置THx和TLx) 2.开启定时器 ...
- python定时器timer_python通过线程实现定时器timer的方法
本文实例讲述了python通过线程实现定时器timer的方法.分享给大家供大家参考.具体分析如下: 这个python类实现了一个定时器效果,调用非常简单,可以让系统定时执行指定的函数 下面介绍以thr ...
- 海岸鸿蒙慕建洲,用于校准液体自动颗粒计数器的标准物质及其制备方法.pdf
用于校准液体自动颗粒计数器的标准物质及其制备方法 技术领域 本发明属于标准物质制备技术领域,涉及用于校准液体自动颗粒计数器的标准物 质及其制备方法,并涉及一种用于校准液体自动颗粒计数器的标准物质的制备 ...
最新文章
- android-async-http使用例子
- linux下kafka与zookeeper集群部署
- linux的system () 函数详解
- 一大早,分享一个好消息
- wap精武堂源码php_精武堂怎么学技能更牛?
- 离散数学 习题篇 —— 等价关系的计数
- matlab画圆的命令_matlab画圆命令资料
- 需要视频素材?这个6个网站就够了
- segue跳转_使用SwiftUI的Segue Shenanigans
- 世界所有国家的信息(2)
- C语言函数定义和函数调用
- OCR表格识别——(二)
- 28000 mysql_MysqlERROR1698(28000)解决
- python绘制等边三角形的代码_python 打印直角三角形,等边三角形,菱形,正方形的代码...
- PowerPMAC技术培训------3、PowerPMAC编程工具-IDE
- 在甲骨文云容器实例(Container Instances)上部署firefox
- 基于hi3531、ffmpeg、x264的h264压缩
- vue的基础练习实例
- 案例:同程凤凰缓存系统基于Redis的设计与实践。
- 如何在SuperMap iDesktop发布交通网络分析服务(学习笔记)
热门文章
- 在sap系统设置纸张打印格式
- 金门——《309暗室》之一
- ZOJ 3328 Wu Xing(五行)
- xrange与range之间的区别
- VBA:根据某个单元格的值,判断在另一个单元格内是否有并标红
- 移植Freemodbus到STM32(基于CubeMX,HAL库)-避坑篇
- 编写一个分奇偶的c语言程序,程序设计入门——C语言 第3周编程练习 1 奇偶个数(5分)...
- ASP.NET实现大文件上传和下载
- Research Proposal for PhD Studies
- Selenium安装地址