【NI-DAQmx入门】利用NI MAX进行数据采集入门

2023-10-11 13:40

本文主要是介绍【NI-DAQmx入门】利用NI MAX进行数据采集入门,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.在NI MAX中创建模拟的NI-DAQmx设备

        很多时候我们没有硬件,但是我们又想验证程序的功能或者查看设备的信息,这时候就需要用到NI MAX提供的创建模拟设备的功能,基本不带FPGA的设备都可以在NI MAX里仿真,比如常见的数据采集设备、示波器、万用表等模块化仪器,如果某些设备不能仿真只能找一个类似的设备代替测试功能。

        模拟设备是使用 NIMeasurement and Automation Explorer (MAX) 中的 NI-DAQmx Simulated Device 选项创建的。

1.确认您已安装NI-DAQmx  。这将自动安装 NIMeasurement and Automation Explorer (MAX)。要将模拟设备功能与 NI-DAQmx 运行时一起使用,请确保在安装过程中选中DAQmx runtime

2.启动NI MAX,我的系统>>设备和接口,右击。

3.下拉菜单选择新建,选择 设备和接口 >> 模拟 NI-DAQmx 设备或模块化仪器。双击它或单击“完成”。

4.搜索输入要仿真的NI-DAQmx型号,或者通道列表选择设备,注意此处只有安装了对应的仪器驱动才会在此列表出现对应的选择项。

5.NI-DAQmx模拟设备跟真实的DAQ设备都出现在NI MAX 中的“我的系统 >> 设备和接口”下,需要注意的是仿真和实际设备的图标颜色不同。

6.如果是需要配置cDAQ机箱,可直接在步骤4中搜索cDAQ机箱,如果您需要添加 C 系列模块,请右键单击新的模拟 cDAQ 机箱,然后单击配置模拟cDAQ 机箱

在cDAQ机箱配置窗口可以配置多个c模块。

7.一台电脑上有多个数据采集设备容易混淆数据采集物理通道,可以在NI MAX里重命名设备名称。注意:重命名时不要使用任何空格或特殊字符,命名完成以后需要保存。

注意事项:

1.仿真设备图标为黄色,实际设备图标颜色为灰色。

 2.读取数据

  • 所有模拟设备都以满量程正弦波的形式返回模拟输入数据,噪声为满量程的百分之三。
  • 当任务中有多个通道时,每个通道的数据在时间上会略有偏移。
  • 返回数字数据,就像每个 8 位端口都在计数一样。
  • 计数器数据始终返回为 0。
  • 模拟设备不模拟时序,数据始终可供立即读取。
  • 无法读回写入输出线的数据,因为该数据没有保存在内存中的任何位置(返回的数据将如上所述)。除了值不在限制范围内时出现错误之外,无法获得有关写入输出线的信号的反馈。
  • NI-DAQmx 模拟设备为所有模拟输入通道创建嘈杂的正弦波。目前无法配置其他模拟数据。
  • 模拟设备不会检测错误 -200078,该错误是由模拟输入任务在采集开始时尝试使用计数器(而计数器已在使用中)引起的。这是由于硬件生成的错误,而不是DAQmx 任务状态模型。
  • 模拟超过 26 个温度输入任务时存在一个条件。附加通道将无法正确更新,并且值被冻结在“149.944”中。

3.写入数据

  • 除了验证数据是否在限制范围内之外,写入 NI-DAQmx 模拟设备的数据没有任何限制。

4.定时和触发

  • 模拟计时
    • 在 NI-DAQmx 7.4 - 8.1 中创建,不模拟时序。任务读写都会立即返回
    • 在 NI-DAQmx 8.3 及更高版本中创建,用于模拟时序。任务读取和写入操作将模拟完成它们所需的实际时间,就好像它们在物理设备上运行一样。 
  • 不要模拟触发。触发器将立即返回。
  • 看门狗定时器永不过期。
  • 不支持依赖硬件的事件,例如采样时钟事件
  • 时钟不能用作其他任务的外部定时源
  • 不模拟计数器任务的计时。

5.其他操作

  • 自检、校准和重置等操作始终成功。
  • 通常存储在物理设备上的数据(例如序列号)始终返回为 0。对于字符串(例如校准用户定义信息),返回的值为空字符串。
  • 模拟设备不能与物理设备包含在同一任务中。

这篇关于【NI-DAQmx入门】利用NI MAX进行数据采集入门的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/188426

相关文章

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

Java进行文件格式校验的方案详解

《Java进行文件格式校验的方案详解》这篇文章主要为大家详细介绍了Java中进行文件格式校验的相关方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、背景异常现象原因排查用户的无心之过二、解决方案Magandroidic Number判断主流检测库对比Tika的使用区分zip

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T