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,000

  • 5 在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 工业相机:计数器和定时器的使用方法相关推荐

  1. Flir Blackfly S 工业相机:通过外部触发实现多摄像头同步拍摄

    Flir Blackfly S 工业相机:通过外部触发实现多摄像头同步拍摄 前言 PWM 简介 PWM寄存器 PWM实现方法 1 开启 TIM14 和 GPIO 时钟,配置 PF9 选择复用功能 AF ...

  2. Flir Blackfly S 工业相机:配置多个摄像头进行同步拍摄

    Flir Blackfly S 工业相机:配置多个摄像头进行同步拍摄 Flir Blackfly S 工业相机介绍 同步拍摄概念 同步拍摄应用场景 Flir Blackfly S 同步拍摄方法 在摄像 ...

  3. Flir Blackfly S 工业相机:自动曝光配置及代码

    Flir Blackfly S 工业相机:自动曝光配置及代码 自动曝光 什么是目标灰度值(曝光值) 如何辨别曝光值是否正确 自动曝光是工作流程 如何设置自动曝光 用SpinView配置自动曝光 通过S ...

  4. 罗克韦尔AB PLC RSLogix5000中定时器指令使用方法介绍

    罗克韦尔AB PLC RSLogix5000中定时器指令使用方法介绍 定时器指令用于控制基于时间的操作,属于输出指令. 定时器指令 定时器指令共有3个:  延时导通定时器 TON  延时断开定时器 ...

  5. 单片机软件定时器的使用方法

    单片机软件定时器的使用方法 特别声明:文章是原创但是本文讲述的思想是在国外的开源代码中借鉴的 初学者在编写单片机程序时经常会用到延时函数,但是当系统逐步复杂以后(没有复杂到使用操作系统)延时会因为延时 ...

  6. CD4541B定时器的使用方法

        本文介绍CD4541B定时器的使用方法. 1.电路图: 2.CD4541B引脚说明:     引脚1:接振荡电阻(1K欧~1M欧姆).     引脚2:接振荡电容(0.0001uF~0.1uF ...

  7. 51单片机定时器的使用方法

    定时器的使用方法 1.选择工作方式(设置M1,M0) 设置TMOD的值 选择控制方式(设置GATE) 选择定时器还是计数器模式(设置C/T) 给定时/计数器赋初值(设置THx和TLx) 2.开启定时器 ...

  8. python定时器timer_python通过线程实现定时器timer的方法

    本文实例讲述了python通过线程实现定时器timer的方法.分享给大家供大家参考.具体分析如下: 这个python类实现了一个定时器效果,调用非常简单,可以让系统定时执行指定的函数 下面介绍以thr ...

  9. 海岸鸿蒙慕建洲,用于校准液体自动颗粒计数器的标准物质及其制备方法.pdf

    用于校准液体自动颗粒计数器的标准物质及其制备方法 技术领域 本发明属于标准物质制备技术领域,涉及用于校准液体自动颗粒计数器的标准物 质及其制备方法,并涉及一种用于校准液体自动颗粒计数器的标准物质的制备 ...

最新文章

  1. android-async-http使用例子
  2. linux下kafka与zookeeper集群部署
  3. linux的system () 函数详解
  4. 一大早,分享一个好消息
  5. wap精武堂源码php_精武堂怎么学技能更牛?
  6. 离散数学 习题篇 —— 等价关系的计数
  7. matlab画圆的命令_matlab画圆命令资料
  8. 需要视频素材?这个6个网站就够了
  9. segue跳转_使用SwiftUI的Segue Shenanigans
  10. 世界所有国家的信息(2)
  11. C语言函数定义和函数调用
  12. OCR表格识别——(二)
  13. 28000 mysql_MysqlERROR1698(28000)解决
  14. python绘制等边三角形的代码_python 打印直角三角形,等边三角形,菱形,正方形的代码...
  15. PowerPMAC技术培训------3、PowerPMAC编程工具-IDE
  16. 在甲骨文云容器实例(Container Instances)上部署firefox
  17. 基于hi3531、ffmpeg、x264的h264压缩
  18. vue的基础练习实例
  19. 案例:同程凤凰缓存系统基于Redis的设计与实践。
  20. 如何在SuperMap iDesktop发布交通网络分析服务(学习笔记)

热门文章

  1. 在sap系统设置纸张打印格式
  2. 金门——《309暗室》之一
  3. ZOJ 3328 Wu Xing(五行)
  4. xrange与range之间的区别
  5. VBA:根据某个单元格的值,判断在另一个单元格内是否有并标红
  6. 移植Freemodbus到STM32(基于CubeMX,HAL库)-避坑篇
  7. 编写一个分奇偶的c语言程序,程序设计入门——C语言 第3周编程练习 1 奇偶个数(5分)...
  8. ASP.NET实现大文件上传和下载
  9. Research Proposal for PhD Studies
  10. Selenium安装地址