使用 npTDMS 通过 Python 访问原始 NIDAQMx 数据,或者,LabView 的替代远景
Accessing Raw NIDAQMx data through Python with npTDMS, Or, the vicarious vista of LabView
问题
我在我的台式电脑上创建了一个模拟系统,它由一个 PCIe6738 组成,它向一个使用特定虚拟仪器驱动的模拟 USB 3646 提供 1kHz 双通道信号。这些数据作为 .tdms 文件收集在本地文件夹中。我可以通过以下 python 代码行
访问内容
import numpy as np
import nptdms as npt
from matplotlib import pyplot as plt
# Read in the file
tdmsFile = npt.TdmsFile.read("ITestTDMS.tdms")
all_groups = tdmsFile.groups()
all_groups 保存着我正在寻找的数据。请参阅此电子邮件所附屏幕截图中的层次结构 (radarCartHope.png)
A foray in arrays
我不确定如何操作 all_groups
以访问原始 nparray 数据。我尝试过 all_groups[0]["_channels"]['SimDev1/ai0']['data']
及其派生词。你能帮我学习如何访问这些数据吗?
谢谢
我建议您使用“本机”TDMS 查看器或类似工具,以了解 TDMS 文件中组和通道的组织方式。
您可以使用:
- (如果您有 LabVIEW)VI TDMS File Viewer
- The addon for Excel
我从未使用 Python 读取 TDMS 文件。无论如何,TDMS 文件具有以下典型组织:
- 群组名称为设备名称。它是 NI 采集板的名称。它在 NI MAX(NI 测量和自动化软件)中定义。我认为你的情况是 SimDev1。不同的设备(板)对应不同的组。
- 每个组都包含一些频道。通道名称应为:ai0, ai1, ai2, ecc....
问题
我在我的台式电脑上创建了一个模拟系统,它由一个 PCIe6738 组成,它向一个使用特定虚拟仪器驱动的模拟 USB 3646 提供 1kHz 双通道信号。这些数据作为 .tdms 文件收集在本地文件夹中。我可以通过以下 python 代码行
访问内容import numpy as np
import nptdms as npt
from matplotlib import pyplot as plt
# Read in the file
tdmsFile = npt.TdmsFile.read("ITestTDMS.tdms")
all_groups = tdmsFile.groups()
all_groups 保存着我正在寻找的数据。请参阅此电子邮件所附屏幕截图中的层次结构 (radarCartHope.png)
A foray in arrays
我不确定如何操作 all_groups
以访问原始 nparray 数据。我尝试过 all_groups[0]["_channels"]['SimDev1/ai0']['data']
及其派生词。你能帮我学习如何访问这些数据吗?
谢谢
我建议您使用“本机”TDMS 查看器或类似工具,以了解 TDMS 文件中组和通道的组织方式。 您可以使用:
- (如果您有 LabVIEW)VI TDMS File Viewer
- The addon for Excel
我从未使用 Python 读取 TDMS 文件。无论如何,TDMS 文件具有以下典型组织:
- 群组名称为设备名称。它是 NI 采集板的名称。它在 NI MAX(NI 测量和自动化软件)中定义。我认为你的情况是 SimDev1。不同的设备(板)对应不同的组。
- 每个组都包含一些频道。通道名称应为:ai0, ai1, ai2, ecc....