问题标签 [nidaqmx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - 在 MATLAB 中使用距离传感器和数据采集硬件
我正在研究使用matlab数据采集工具箱直接从距离传感器(Hokuyo UBG-04LX-F01)到matlab的数据传输,我遇到了NI-DAQ(数据采集硬件)。这是我到目前为止所知道的;
- 从传感器直接发送到 matlab 的数据通常使用 ASCII 2 或 3 位字符编码进行编码。
- 诸如 (NI-DAQ 6008) 之类的数据采集硬件可以作为一种媒介,从传感器接收数据并将其发送到 matlab。
我的问题是,数据采集硬件可以将实时数据从传感器发送到 matlab 吗?发送到 matlab 的数据是否已解码,换句话说,数据采集硬件是否在将数据发送到 MATLAB 之前将数据解码为简单的正常范围或十进制值?鉴于其作为中间人的角色。
visual-studio-2012 - 无法将 NIDAQ dll 引用添加到 Visual Studio 2012
我有一个模拟图形环境的项目。我在这个程序中需要的是将它与 NIDAQ 库集成。目前我正在获取未解析的外部符号的 LNK2019。
LNK2019:函数“public:virtual void __cdecl sofa::component::behaviormodel::MyBehaviorModel::updatePosition(double)”(?updatePosition@MyBehaviorModel@behaviormodel@component@sofa@@UEAAXN@Z) C 中引用的未解析外部符号 DAQmxCreateTask :\Sofa\applications\plugins\NIPlugin\MyBehaviorModel.obj NIPlugin
我已经在我的项目中包含了头文件和lib文件,但是由于我的项目非常大并且包含很多库和子项目,所以我似乎也必须在项目中添加国家仪器的动态库。但是我不能在我的项目的引用选项中添加对我的新代码的任何新引用(没有可用的浏览选项)。我还尝试将 .dll 文件的路径添加到项目的附加目录中,但它似乎不起作用。但是当我将我的 .dll 添加到项目的 Input--> Linker 部分中的附加依赖项时,我收到 LNK1107 错误。
LNK1107:无效或损坏的文件:无法读取 0x2D0 C:\git\sofa\v15.12\src\lib\win64\nicaiu.dll 1 NIPlugin 1
你知道如何让 VS 读取我的 .dll 文件吗?
c - 访问外部生成的数组中的值
我正在获取电压读数并将其转换为压力读数。这是我第一次使用 C 的真实体验,所以我的代码很混乱,但到目前为止运行良好。我面临的问题是让程序计算介于最小和最大期望值之间的读数(存储在数组 data[i] 中)的数量。
这是代码, Sum2 和 count 是给我带来麻烦的区域。Sum2 是添加 999 个值而不是过滤,并且 count 在应该接近 500 时总是导致 998
编辑:
data[i] 中的读数是电压,我正在承受压力。我的校准曲线是 P=(V-2.9674)/.404
c++ - 在 DAQmx 设备上查找有效的触发源
通过 C++ 使用 National Instruments 的 DAQmx,我想向用户展示系统上可能的物理触发输入列表。
我可以通过调用类似的东西来设置任务以在外部触发器上启动
有没有办法获取有效值的列表trigger_source
?我发现DAQmxGetSystemInfoAttribute(DAQmx_Sys_DevNames, , )
可以获取系统中可用设备的列表,并且我知道DAQmxGetDevDILines()
类似的功能可以为我提供设备上某些类型的端口的列表。但是,我没有发现任何返回 PFI 的东西。
如果无法获得列表,是否有一种健全的方法来测试给定的猜测字符串是否"/Dev%d/PFI%d"
是有效的触发源?
c# - 如何使用 C# 在 NI-DAQ 上设置三态
我有一个 NI-DAQ 6212,我正在尝试使用 C# 将数字输出设置为三态模式。除了此参考http://zone.ni.com/reference/en-XX/help/370473H-01/mstudiowebhelp/html/bd33b0d/,我找不到有关如何将其搁置的示例
我怎样才能做到这一点?非常感谢任何输入!
谢谢!
labview - 错误 -200361 使用 USB-6356 X 系列 DAQ 板进行 SPI 控制
我正在使用 USB-6356 DAQ 板通过 SPI 控制 IC。
我正在使用NI SPI 数字波形库的一部分来创建数字波形,然后使用一个小型包装 VI 来传输代码。
我的 IC 在 RTD 上测量温度,目前控制 VI 有一个“推动单次测量”样式按钮。当我按下它时,运行 SPI 通信的一系列其他 VI 返回温度。
在按了一些次数后(非常快速地单击按钮会使这在时间上更快地发生,但不一定在单击次数上),VI 生成错误 -200361,名义上是 DAQ 板上的 FIFO 缓冲区溢出。
我不清楚这是否真的是问题的原因,但我不这么认为......
描述 USB-600{0,8,9} 设备此错误的NI 指南看起来很有希望,但遵循这些建议并没有帮助我。我用“DI.UsbXferReqCount”代替模拟等效项,因为我的读取任务是数字的。读取默认返回 4,所以我将属性更改为 write 并选择了“1”,但这没有什么区别。
我尝试使用设备管理器卸载 DAQ 板,拔下并重新插入,但这也没有改变任何东西。
我的猜测是,在读取和写入任务的“有限样本”部分结束后会生成额外的时钟样本,这些可能会添加溢出的空白数据,但返回的温度并不表示奇怪的数据,而且我会假设如果是这种情况,我的 VI 将无法将读入的数据解释为正确的温度。
我附上了我正在使用的 Transmit VI 的框图图像,但实际上要让它运行需要整个 VI 库。
控制 VI 附在NI 论坛上几乎相同的论坛帖子上。
c++ - 使类可访问 int32 CVICALLBACK DoneCallback()
这是在环境中实现c
功能的c++
问题。
National Instruments 开发了一个NIDAQmx.h
头文件,其中包含c
. 我已经成功地在一个c++
类中使用它们的功能来控制一个采集设备(cDAQ-9174)。但是它们提供的功能之一是由设备上的事件触发的回调函数。
这c
是我想实现的功能c++
事件处理程序通过函数注册到设备:
我的问题是:如何实现能够被此事件触发的类成员函数?我想象一个函数转换或某种类似的方式,但我对它的了解还不够,c
也c++
无法弄清楚。
实现此功能非常重要,这样我的班级才能知道采集任务何时结束并释放设备以供其他实例使用。
python - NI-6281 Python 错误
我在使用 National Instruments 和 Python 进行数据采集时遇到问题。我使用具有 3 个轴 x、y、z 的磁场传感器,并且我正在使用 National Instruments 库(Python)来获取数据。我设置为每 1 秒收集 100 个数据,它们每秒钟返回 3 个包含 100 个元素的列表。
下面一个用于将数据写入文件。
因此,生成的数据文件必须如下所示。
所以我尝试尽可能长时间地获取数据,但在 8000 秒后,程序出现了如图所示的奇怪错误。
结果表明
为了解决这个错误,我google并询问了很多人,但我找不到真正的原因。其中最有说服力的答案是,对于一台有HDD的电脑,1秒内写入400条数据(在Python中使用for循环)远远超出了电脑的能力,但我仍然无法相信这个,也找不到解决这个问题的解决方案。
请帮帮我:(
python - PyDAQmx.Task() reises RecursionError
简单的代码:
提出:
功能错误:
我不知道为什么。
这是在我尝试安装“instrumental-lib”和“NiceLib”(http://instrumental-lib.readthedocs.io/en/latest/ni-daqs.html)之后,但重新安装 Anaconda、PyDAQmx 和 NIDAQmx 驱动程序没有影响。
python - 数据采集连接最佳实践
配置 DAQ 并与之通信的最佳实践是什么?是配置一次数据采集器然后保持线路打开并在需要时进行通信,还是每次需要通信时打开、配置和关闭连接更好?我更关心稳定性而不是速度。使用一种或另一种方式工作有什么好处(如果有的话)?
系统规格:NI USB-6000 DAQ、Python 3 和 PyDaqMx 读取三个模拟通道。