问题标签 [data-acquisition]

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.

0 投票
3 回答
2000 浏览

java - 数据采集​​硬件的java驱动程序?

我需要做一些数据采集并想使用 Java 来编写我的数据采集应用程序。现在我正在使用一个 LabJack,它的驱动程序有一个 Java 包装器,它对于简单的东西工作正常,但我需要升级到真正的东西。

有人知道有 Java 设备驱动程序可用的数据采集平台(NI 或 Measurement Computing 或其他之一)吗?

0 投票
2 回答
2203 浏览

database-design - 多变量类型数据采集的数据库设计

我将设计和实现用于数据采集的数据库,并开始思考什么是多变量解决方案的最佳关系数据库结构。可以有几十个变量(可配置),不同的类型(布尔,整数,至少浮点数,也许是字符串)。不同变量的值不相关。我需要存储变量、新值和时间戳。存储变量由时钟或值的变化触发。

最简单的解决方案是一张带有变量 FK、新值和时间戳的表,但由于变量可以有不同的类型,新值的类型会导致问题。我认为可能的解决方案很少,都涉及变量定义的单独表和时间序列的一个或多个表,每个变量值时间戳一个记录:

  1. 有一些可以存储所有值的通用数据类型(字符串?)
  2. 有多个列,每种类型一个
  3. 数据值有多个表,每种类型一个表

还有什么?

基本上我正在寻找好的“数据库设计模式”。

0 投票
14 回答
68654 浏览

virtualization - 为什么人们不将LabVIEW用于数据采集和虚拟化以外的目的?

这被标记为一个主观问题,我希望我不会得到太多的反对票。

LV 似乎为传统的基于文本的编程提供了一个不错的图形替代方案。据我了解,它不仅仅是一种虚拟化/数据采集编程语言。尽管如此,它似乎将这种范式与其创造者的名字挂钩。

我的问题出现了,因为它似乎没有被广泛用于多用途应用程序。我不是任何类型的 LV 专家,我更像是一个学习者。我还是习惯了LV。

0 投票
1 回答
1364 浏览

.net - Atalasoft DotImage 许可

我一直在尝试以低廉的价格找到像样的图像采集 + 图像处理解决方案。

我看过像 Kodak、Global360、Iris 这样的名字。

我发现所有这些供应商都非常、非常、非常昂贵。

我还发现 SDK API 许可证同样昂贵,甚至更多。

请参阅Atalasoft

那里有像样的开源图像采集和图像处理组件 API 吗?

我知道该软件的开发和支持可能会很忙。但是,开发自己的解决方案是否值得购买完整的解决方案。

谢谢

0 投票
1 回答
138 浏览

data-acquisition - 数据采集​​系统

仪器分辨率和精度是什么意思以及它们是如何计算的

0 投票
1 回答
1237 浏览

database - 同时使用消息队列和数据库

我将开发一个系统,该系统将涉及一个数据采集服务器,其中每次采集都会填满一行。我还需要能够通知用户应用程序何时获取了新数据。

根据我的阅读,将数据库用作消息队列并不是一个好主意,反之亦然,但我想知道是否可以同时使用两者?

采集应用程序可以将新行添加到数据库中,然后通知消息系统中的侦听器。这会是此类系统的最佳方法吗?会不会太复杂?是否有已经实现这一点的设计模式?

0 投票
1 回答
351 浏览

c++ - MEX 文件以循环方式将脉冲输出到 DAQ 板

我想我必须使用 MEX 文件将循环中的数字脉冲(40 kHz)从 Matlab 输出到我的 DAQ-Board,我有一些来自 DAQ-Board 供应商的 API,但我真的不知道它们是否有用。这是 Mathworks 网站上关于 MEX 文件和 API 的大型文档,这让我感到困惑。所以我在这里问是否有人可以指导我或向我展示一个示例代码来实现这一点!

0 投票
9 回答
5585 浏览

labview - LabVIEW + National Instruments 硬件或???

我正在为我的公司购买用于各种项目的新数据采集系统。起初,它的主要目的是监控多达 20 个热电偶并控制复合材料烤箱的温度。不过,我还计划用它来监控加速度计、应变仪,并充当信号发生器。

我可能不会是唯一使用它的人,但我对 Atmel 微控制器 (C) 有丰富的编程经验。我以前使用过 LabVIEW,但大约是 5 年前。LabVIEW 会很好,因为我和我的同事都很容易上手。另一方面,它很昂贵。现在我有一个 NI CompactDAQ 系统,它有 2 个电压和一个热电偶卡 + LabVIEW,价格为 5779 美元!

我将尝试以更少的 $ + LabVIEW 获得不同的 NI 硬件的相同 I/O 功能,看看我是否能以更少的 $ 获得它。我想看看是否有人对我有除LabVIEW之外的任何建议。

提前致谢!

0 投票
4 回答
4922 浏览

labview - Matlab的数据采集工具箱?

我一直在花大量时间阅读National Instruments的产品及其与LabVIEW一起使用时的功能。但是,LabVIEW 和 National Instruments 的硬件几乎是我唯一看过的东西,我很好奇在采集和控制方面有什么可以与 LabVIEW 竞争。

硬件支持对我来说很重要。National Instruments 拥有许多不同且高质量的硬件。此外,还有一些第三方制造商为 LabVIEW 编写驱动程序。MathWorks列出了所有已编写驱动程序以使用此工具箱的制造商。但是制造商是否仍在这样做,或者 MATLAB 工具箱是否已经失去了人气?

0 投票
1 回答
1294 浏览

matlab - 从 NI 板进行数据采集时如何避免 matlab 中的数据丢失事件?

在获取波形数据(2 个通道)和模拟输入触发(设置为预触发模式 - 负延迟值)时,我在 matlab 中接收到 DataMissed 事件。

这是代码:

运行此代码时,我在收到触发事件后收到数据丢失事件(使用 showdaqevents(ai))。但是,数据丢失事件的样本数为 NA,所以我不能完全确定它们是在触发之后出现的。

这是 showdaqevents 输出的示例:

查看 matlab文档中的数据丢失事件,给出了两种解释:

  • 引擎跟不上采集速度。
  • 驱动程序在读取先前获取的数据之前将新数据写入硬件的 FIFO 缓冲区。您通常可以通过使用 BufferingConfig 属性增加内存块的大小来避免此问题。

我尝试使用 daqmem 命令增加可用内存,但我还没有发现它可以工作。500000 个样本/秒,3 个通道每个触发器总共大约 90 MB,daqmem 报告有超过 360MB 的可用空间(尽管缓冲模式设置为自动)。我想知道是否需要在 while 循环中定期调用 getdata(ai) 来清除内存。另一种可能性是我运行的系统采样率太高?

硬件:

  • 双核 CPU (Athlon X2 3200)、4GB RAM、500GB SATA 硬盘
  • NI PCI-6122

我应该提到,在按下触发器之前让系统获取的时间越长(及时),获得 DataMissed 事件的可能性就会越高。

我的数据采集代码是否有问题(我最不确定在采集过程中是否有暂停)?硬件?有什么不用担心的吗?Visual Studio 是否更适合处理 NI 板?