NI-DAQmx编程技术介绍笔记

news/2024/7/5 2:09:11

CSDN话题挑战赛第2期
参赛话题:学习笔记

学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程。这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路。学习之乐,独乐乐,不如众乐乐,把知识讲给更多的人听,何乐而不为呢?

博客写作背景----项目中解决的问题

最近遇到一个使用stm32单片机多路采集信号的项目,还需要在上位机进行波形的查看,信号算法的处理,初步定为使用labview编写上位机程序进行处理。为啥用labview呢,因为LabVIEW是美国国家仪器公司(NI)的创新软件产品,其全称是实验室虚拟仪器工程平台(Laboratory Virtual Instrument Engineering Workbench),是一种基于G语言(Graphics Language,图形化编程语言)的测试系统软件开发平台。LabVIEW并不局限于虚拟仪器的开发,它的作用是为大型复杂测试系统提供通用的软件开发平台。目前,LabVIEW已经成为测试领域应用最广泛和最有前途的软件开发平台之一。
下面是我最近写程序的一些知识,进行了部分的整理,发出来和大家一起分享,也方便我以后查找自己的编程过程。

编程知识点–做题思路

首先需要明确一些基本概念的含义及其之间的联系和区别。
(1)物理通道(Physical Channel)和虚拟通道(Virtual Channel)
物理通道是实际存在的测量信号或产生信号的端口,与采集卡上的通道名相对应,例如Dev1/ao1、SC1Mod4/ai0等,硬件一旦确定,物理通道的名称和属性就不能更改。

虚拟信道是一组配置的集合,包括名称、物理通道、端子连接方法、测量类型和标定信息等。DAQmx的每一次测量过程都需用到虚拟通道,用户可以通过DAQ助手、MAX或者DAQmx的接口API三种方法来创建或者配置虚拟信道。虚拟通道的名称和属性可以由用户随时更改。

(2)任务(Task)
任务是带有定时、触发或者其他属性的一个或多个虚拟信道的集合。一个任务代表用户所做的一次测量或者信号发生。
用户可以通过DAQ助手、MAX或者DAQmx的接口API等三种方法来创建或者配置任务,任务里的属性配置信息可以由用户进行设置并保存,从而在应用程序中使用这个任务。

(3)局部虚拟通道(Local Virtual Channel)和全局虚拟通道(Global Virtual Channel)
在DAQmx中,虚拟通道可以在任务中创建并作为任务的一部分,也可以在任务外创建并独立于任何任务。在任务中创建的虚拟通道称为局部虚拟通道,在任务外创建的虚拟通道称为全局虚拟通道。
用户可以在MAX中创建和配置全局虚拟信道,然后应用到各个任务中去,如果全局通道的属性一旦被修改,就会在使用了该全局通道的所有任务中生效。
局部虚拟通道只能在任务中创建,如果用户在几个任务中创建了相同作用的局部通道,那么这几个局部通道被认为是不同的,修改其中任何一个局部通道并不对其他的局部通道造成影响。

(4)MAX和DAQ助手
MAX(Measure & Automation Explorer)是LabVIEW中的一个对GPIB卡、数据采集卡、串口仪器、VXI仪器等硬件设备进行全面配置的工具,在LabVIEW中的作用类似于Windows系统中的设备管理器。使用MAX可以创建虚拟采集卡、创建和配置虚拟信道和任务。单击LabVIEW主菜单下“Tools→Measure & Automation Explorer”就可以启动MAX。
DAQ助手是DAQmx中的一个DAQ向导工具,以Express VI的形式存放在NI-DAQmx的子VI库下。使用DAQ助手可以创建和配置虚拟信道和任务,简化配置过程并自动生成程序代码。

DAQmx仿真设备的创建非常简单,其基本步骤如下: 打开Measurement & Automation Explorer(MAX),在左边的“Configuration”目录中选择【My System】→【Devices & Interfaces】,单击鼠标右键,在弹出快捷菜单中选择【Create New…】。 在弹出的“Create New…”对话框中选择【NI-DAQmx Simulated Devices】,即选择创建仿仿真设备,然后单击【Finish】按钮。 在弹出的“Choose Device”窗口中选择想要仿真的DAQ设备型号,这里选择PCI-6071E多功能采集卡。

单击【OK】按钮关闭对话框之后,在MAX左边【My System】→【Devices & Interfaces】→【NI-DAQmx Devices】目录中出现了已添加的仿真设备,仿真设备NI PCI-6071E:“Dev2”的图标颜色为黄色,而真实设备的图标为绿色。

经过以上3步,仿真设备创建完成,同样还可以对其进行测试,单击【Test Panels…】按钮,弹出测试面板,如图4-61所示,可进行Analog Input(模拟输入)、Analog Output(模拟输出)、Digital I/O(数字I/O)和Counter I/O(计数器)测试。

在“Analog Input”页面上,Mode(模式)选择Finite,即有限采样,其他采用默认设置,然后单击【Start】按钮开始模拟输入测试,如图4-61中显示,采集到的是一正弦波形,这是因为仿真设备没有真正的物理端口,输入信号都是其内部模拟的信号


http://lihuaxi.xjx100.cn/news/39864.html

相关文章

呕血倾力总结:「大数据技术体系」学习实践导览

导言 截止目前为止,在自己的技术生涯中,要说哪一种技术体系的学习路径最为曲折,那非大数据技术体系莫属了。相比特定编程语言的学习,相比类如云原生技术这类已然涵盖面很广的技术体系,个人感觉大数据技术的体系“繁杂…

nodejs+vue+java新鲜水果门店在线商城销售系统python flask django

今,越来越多的人乐于选择一项合适的管理方案,但是普通用户往往受到管理经验地限制,这时各类水果销售作为新型产业崛起,大量水果销售管理制度进入人们生活,而水果销售管理制无疑是水果销售管理的最好制度,在…

Group ViT(Semantic Segmentation Emerges from Text Supervision)

Group ViT(Semantic Segmentation Emerges from Text Supervision)CVPR2022 来自文本的监督信号,并不依赖于Segmentation mask的手工标注。而是像CLIP一样利用图像文本对使用对比学习的方式进行无监督的训练。 视觉方面做分割,g…

GRU学习笔记

原理结构 GRU的输入输出和普通RNN一样。有一个当前的输入xtx^txt,和上一个节点传递下来的隐状态(hidden state) ht−1h^{t-1}ht−1,这个隐状态包含了之前节点的相关信息。结合xtx^txt和ht−1h^{t-1}ht−1,GRU会得到当前隐藏节点的…

一周速学SQL Server(第三天)

相关文章链接: 一周速学SQL Server(第一天)https://blog.csdn.net/beiye_/article/details/127016065?spm1001.2014.3001.5501一周速学SQL Server(第二天)https://blog.csdn.net/beiye_/article/details/127022635?…

Cesium学习五:使用entity绘制cylinder

一、圆柱绘制代码 上一篇介绍了多边形的绘制,本篇介绍圆柱的绘制,Cesium提供的cylinder类不仅仅可以绘制圆柱,还可以绘制正多边形棱柱以及锥体等,具体代码如下(别忘了使用你自己的Token,基础环境不知道怎么…

MPLS BGP virtual private network OptionB实验

拓补图 以CE1、PE1、P1、ASBR1配置为例,CE2、PE2、P2、ASBR2的配置同理 1.配置IP地址 2.配置代码 CE: PE: ASBR: 3.总结 这次的实验是使用上次OptionA的实验的基础上进行更改然后配置的,这里面变化的点主要有以下…

信息系统项目管理基础

项目管理基础 重点: 项目的特点 项目的5个特点:临时性,独特的产品,服务或成果,逐步完善,资源约束,目的性。 目标与约束 时间,成本和质量往往是冲突的,需要取舍。 项目…