【问题标题】:nidaqmx read and write simultanously and fast in Pythonnidaqmx 在 Python 中同时快速读写
【发布时间】:2023-02-03 15:57:58
【问题描述】:

这是我的第一篇文章,所以请与我裸露。

我的情况:我正在尝试编写一个 python 程序来从二极管读出模拟信号,同时通过使用国家仪器卡将模拟电压写入设备。 一个非常简单的方法可以是:

import nidaqmx
task_1          = nidaqmx.Task()
task_2          = nidaqmx.Task()
task_1.ao_channels.add_ao_voltage_chan(channel_name1, min_val= -2, max_val=10)
task_2.ai_channels.add_ai_voltage_chan(channel_name2)
task_1.start()
task_2.start()
values1 = np.zeros(steps)
values2 = np.zeros(steps)
for i in range(steps):
    values1[i] = i
    task_1.write(i)
    values2[i] = task_2.read(1)
task_1.close()
task_2.close()

# Followed by later plotting
plt.plot(values1, values2)

我的问题:

我想要更多的读数,因为程序没有我希望的那么快。我尝试了多线程来分离读出和写入(并连续读出),还尝试了“reader.read_many_sample”功能,但这需要我知道我想要多少样本。

我在寻找什么

我正在寻找一种解决方案来应用输出信号(如斜坡扫描)并连续获取数据点(例如读数)。斜坡完成后,我希望读数停止并访问数据点。但是我希望读/写的开始和结束是同步的。

先感谢您!

【问题讨论】:

    标签: python performance nidaqmx diode


    【解决方案1】:

    你有解决这个问题吗?我也有同样的问题,期待你的回答。

    【讨论】:

      猜你喜欢
      • 2023-01-27
      • 2010-10-02
      • 1970-01-01
      • 1970-01-01
      • 2021-02-20
      • 2014-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多