【NI-DAQmx入门】触发相关

news2024/11/20 20:19:28

触发概述

        触发采集为用户提供了两个主要好处:它对输入信号相对于触发事件进行计时,因此用户仅捕获感兴趣区域中的信号,从而节省硬件带宽和内存。

模拟触发和数字触发

        模拟触发和数字触发的区别在于触发源的不同。数字触发是一种 TTL 信号,用作上升沿或下降沿采集的起点。下图显示了下降沿触发。


 

相比之下,模拟触发可以使用多种方法触发采集,例如模拟上升沿和下降沿、模拟窗口、迟滞模拟上升沿和下降沿。

对于模拟边沿触发,使用特定的信号电平和斜率进行触发。它用于设置设备以查找特定的信号电平和斜率(上升或下降)。下图,触发设置为当信号达到3.2V时从上升沿信号采集数据。
 

对于迟滞模拟边沿触发,通常用于减少由噪声或抖动引起的信号误触发。当在上升斜率上使用迟滞时,在电平迟滞下启动并越过电平时会发生触发。当信号低于电平滞后时,触发被释放。如下图所示。
 


当在下降斜率上使用迟滞时,当开始高于电平+迟滞并跨越电平时会发生触发。当信号超过电平+迟滞时,触发被释放。如下图所示。
 

预先触发和后触发

后触发采集

在后触发采集中,硬件在收到触发信号后启动 A/D 转换(图 3)。这种情况下的触发信号称为 启动触发。

预触发采集

在预触发采集中,硬件在接收到触发信号之前开始采集数据(图 4)。通过这种类型的采集,用户可以在触发事件之前查看信号。在此类应用中,硬件通过软件功能启动数据采集,并将数据存储在 PC 内存的循环缓冲区中。缓冲区足够大,可以确保存储所需数量的预触发样本。当缓冲区已满时,它只是回绕并将每个后续样本存储在内存中最旧的样本上。触发机制的主要职责是停止采集,以便内存中留下的样本代表用户想要的“时间片”。这种情况下的触发信号称为 参考触发

设计触发应用程序

使用数字启动触发器进行后触发采集

        模拟输入任务将等待,直到看到数字触发器。如果触发沿定义为上升沿,则一旦指定数字线上出现上升沿,模拟输入任务就会开始。

 数字参考触发器上的预触发采集

        在预触发采集中,A/D 转换通过软件功能调用启动。NI-DAQmx 以循环缓冲方案将数字化数据存储在计算机内存中,用新样本替换缓冲区中最旧的点。一旦接收到触发信号,驱动程序就会将触发前后指定数量的点返回给调用应用程序 

使用启动和参考触发器进行预触发采集

         在这种情况下,数字或模拟触发器而不是软件功能启动采集。一旦开始采集,就会实施循环缓冲方案(类似于之前的情况),直到接收到参考触发信号。返回的数据由相对于参考触发信号的指定数量的触发前和触发后样本组成。

模拟硬件触发

        对于模拟边沿触发,您可以将测量设备配置为寻找特定的信号电平和斜率(上升或下降)。设备识别触发条件后,设备会执行与触发相关的指定操作 

带迟滞的模拟触发

以指定迟滞作为模拟触发的条件。迟滞在触发电平之上或之下添加了一个窗口,通常用于减少由于信号中的噪声或抖动而导致的误触发。当使用具有上升斜率的迟滞时,当信号开始低于 电平 (或 阈值电平)减去迟滞,然后跨越电平高于 电平时,触发器将置。当信号低于电平减去滞后 值 时 ,触发器无效。

暂停触发

        某些 DAQ 应用可能要求用户实现暂停/恢复功能,其中外部信号控制 DAQ 硬件在采集期间何时执行 A/D 转换。NI DAQ 板卡使用称为“暂停触发器”(NI-DAQmx) 的功能来支持此类功能。这里,内部采样(扫描)时钟由外部信号选通,以便采样(扫描)时钟在外部信号为低电平时暂停,并在信号变高时恢复(反之亦然)。暂停触发(扫描时钟门控)可分为数字或模拟两种类型,具体取决于门信号的性质。下图显示了 LabVIEW 中数字暂停触发器的典型实现。 

数字暂停触发

在数字暂停触发中,采样时钟的门信号是TTL信号。任何 PFI 线都可以用作 DAQ 卡上的门信号。

模拟暂停触发

        在模拟暂停触发中,选通信号是模拟信号,其电压电平决定采集何时发生。仅具有模拟触发功能的设备支持此功能。图说明了高电平模拟暂停触发的时序图,其中仅当模拟信号高于临界电压电平时才会发生 A/D 转换。

设置停止触发
DAQmx无法直接生成停止触发。但您可以通过使用参考触发并修改读取位置的方式在LabVIEW中创建等效的停止触发。

首先,您需要创建一个有限点数据采集任务,该任务需要在参考触发之前和之后各采集N个样本点。为了给参考触发的触发前采样提供数据,这个DAQmx任务将在等待参考触发时不断地进行数据采集。即便这些通过连续采集得到的数据不是当前任务明确指定所需要的数据,您仍可以通过调用DAQmx读取访问并存储这些数据。

请参阅下述代码段,该代码段展示了一个将参考触发设置为停止触发的范例:
        上述范例使用DAQmx创建了一个模拟输入数据采集任务,该任务使用了两个触发:数字边沿开始触发和数字边沿参考触发。

        开始触发指定当前任务何时开始采集后续参考触发所需的数据样本,而参考触发则指定何时发送任务最初所要求的有限点样本,这些样本由参考触发前的采样和参考触发后的采样组成。

        若DAQmx任务使用了参考触发,那么对任务的定时进行设定时,必须为参考触发设置至少为2的触发前采样和触发后采样。因此,当您使用设置参考触发的方法实现停止触发的功能时,您始终会在停止触发发生后收到至少2个采样点。这些多余的采样点可以在后续的处理中丢弃。

软件定时触发

        软件定时触发器使用条件结构来判断所需执行的任务。

多功能DAQ的模拟输入触发分辨率

BoardTrigger Resolution
E Series8-bit
M Series10-bit
X Series16-bit

使用单独的触发条件触发多个通道

        使用NI 9775 C系列模块,该卡支持多模拟多重边沿触发,最多有四个模拟输入通道。将触发器设置为单个通道,在任何通道超过其自身阈值时开始记录。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++实现ransac

目录 一、ransac算法原理 1.1、算法概念 1.2、图解 二、c实现ransac 2.1、设置随机样本和离群点 2.2、随机抽取样本 2.3、内点计算 2.4、更新参数 2.2、完整代码 一、ransac算法原理 1.1、算法概念 随机抽样一致性 (RANSAC) 是一种迭代方法,用于根据一组包…

225.用队列实现栈(LeetCode)

思路 思路:用两个队列实现栈后进先出的特性 ,两个队列为空时,先将数据都导向其中一个队列。 当要模拟出栈时,将前面的元素都导入另一个空队列,再将最后一个元素移出队列 实现 实现: 因为C语言没有库可以…

【每日一题】—— D. Epic Transformation(Codeforces Round 710 (Div. 3))(找规律+贪心)

🌏博客主页:PH_modest的博客主页 🚩当前专栏:每日一题 💌其他专栏: 🔴 每日反刍 🟡 C跬步积累 🟢 C语言跬步积累 🌈座右铭:广积粮,缓称…

Linux socket编程(3):利用fork实现服务端与多个客户端建立连接

上一节,我们实现了一个客户端/服务端的Socket通信的代码,在这个例子中,客户端连接上服务端后发送一个字符串,而服务端接收到字符串并打印出来后就关闭所有套接字并退出了。 上一节的代码较为简单,在实际的应用中&…

揭秘Vue中的nextTick:异步更新队列背后的技术原理大揭秘!

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 ⭐ 专栏简介 📘 文章引言 一、N…

解码方法00

题目链接 解码方法 题目描述 注意点 s 只包含数字,并且可能包含前导零计算并返回 解码 方法的 总数 解答思路 使用动态规划解决本题,其思路为:从后往前遍历字符串,遍历到任一i位置的字符c时,有几种情况&#xff1…

react中间件的理解

一、是什么? 中间件(Middleware)在计算机中,是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络应用上的各个部分或不同的应用,能…

ubuntu20安装opencv4和opencv_contrib 多版本共存

openCV 卸载 openCV 安装后的源码尽可能保留,因为可以直接从build文件夹下卸载已经安装的openCV. 参考链接:视觉学习笔记10——opencv的卸载、安装与多版本管理 如果已经安装完openCV,后续想重新装,需要先卸载掉安装的openCV. 在ubuntu终端…

离散卡尔曼滤波器算法详解及重要参数(Q、R、P)的讨论

公开数据集中文版详细描述参考前文:https://editor.csdn.net/md/?not_checkout1&spm1011.2124.3001.6192神经元Spike信号分析参考前文:https://blog.csdn.net/qq_43811536/article/details/134359566?spm1001.2014.3001.5501神经元运动调制分析参考…

安防监控EasyCVR视频汇聚平台使用海康SDK播放出现花屏是什么原因?

视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同,支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。音视频流媒体视频平台EasyCVR拓展性强,视频能力丰富,具体可实现视频监控直播、视频轮播、视频录像、…

《洛谷深入浅出进阶篇》P3397 地毯————二维差分

上链接:P3397 地毯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P3397 上题干: 题目描述 在 nn 的格子上有 m 个地毯。 给出这些地毯的信息,问每个点被多少个地毯覆盖。 输入格式 第一行,两个…

Git | Git的基本操作以及原理介绍

文章目录 基本操作创建git仓库配置name和email .git目录的结构git add & git commit.git目录结构的变化 git追踪管理的数据git的版本回退回退的原理回退的三种情况 版本库中文件的删除git分支管理分支的删除合并分支时的冲突分支的合并模式分支策略git stash不要在master分…

实用篇-ES-DSL操作文档

一、mapping属性 mapping属性的官方文档: https://elastic.co/guide/en/elasticsearch/reference/current/index.html 下面的表格是介绍elasticsearch中的各个概念以及含义,看的时候重点看第二、三列,第一列是为了让你更理解第二列的意思,所…

嵌入式养成计划-54----ARM--异常处理流程

一百三十五、异常处理流程 135.1 arm处理器工作模式 135.2 异常源和异常模式关系 135.2.1 异常源 异常源就是引发处理器进入相应异常模式 135.2.2 对应关系 异常模式异常源FIQ模式FIQ类型异常源引发处理器进入FIQ模式IRQ模式IRQ类型异常源引发处理器进入IRQ模式SVC模式上电…

三、Eureka注册中心

目录 一、作用及调用方式 二、搭建eureka注册中心 三、注册user-service和order-service 四、新增实例 五、服务拉取 六、总结 一、作用及调用方式 在服务提供者启动时,它会向eureka注册中心提供自己的信息,并每30秒进行一次刷新eureka注册中心保存…

14——2

这道题目前面看不懂可以看比如后面的 这里1/3是因为S100的长度n3(100占3位),然后1出现的占比是1/3(1在第一位),0出现的占比是2/3,因为0出现了2次,(第二位,第…

【文章学习系列之模型】DAGMM

本章内容 文章概况模型结构损失函数实验结果实验分析总结 文章概况 《Deep Autoencoding Gaussian Mixture Model for Unsupervised Anomaly Detection》是2018年发表于ICLR的一篇论文,该论文提出一种端到端的无监督异常检测方法DAGMM,取得了不错的效果…

3.3 Linux 文件管理

1、查看系统信息 tty 命令 描述:查看当前系统在哪个终端语法:tty Linux默认情况下提供6个虚拟终端来让用户登录,系统将F1~F6定义为tty1~tty6。 ctrlalt(F1~F6) :从图形界面切换到命令行界面的第 n 个虚拟终端(F1 是…

社区牛奶直供站:创新供应链,满足消费者需求

社区牛奶直供站:创新供应链,满足消费者需求 社区牛奶直供站模式彻底改变了传统的多级经销链条和流通加价环节,通过削减中间环节,以相对低价直接供应牛奶给消费者。这样做实现了从奶企源头直接供应到社区家庭的目标,精准…

字符串旋转结果

文章目录 题目解法1解法2 题目 字符串旋转结果 写一个函数,判断一个字符串是否为另外一个字符串旋转之后的字符串。 例如:给定s1 AABCD和s2 BCDAA,返回1 给定s1abcd和s2ACBD,返回0. AABCD左旋一个字符得到ABCDA AABCD左旋两个字…