pyvisa - pyvisa 中的查询时间更快?
问题描述
有什么方法可以减少pyvisa查询仪器中的值并将所述值传输到程序所需的时间?
在我的情况下,我同时使用三个示波器。他们不断地测量数据,我的 python 程序正在将值写入文本文件。一小时后,我总共获得了 9000 次测量值(仅 0.83 次测量值/秒/示波器)。
我在文档中搜索,发现该query
函数有一个时间参数,但该参数只是为了增加延迟时间。
有什么我可能会丢失的吗?
相关代码如下:
t_start = time.time()
while ((time.time()-time_run)<=3600.0):#measures for an hour
meas_x_1 = float(oscilloscope_1.query('meas:vav? chan1'))
meas_y_1 = float(oscilloscope_1.query('meas:vav? chan2'))
meas_z_1 = float(oscilloscope_2.query('meas:vav? chan1'))
meas_x_2 = float(oscilloscope_2.query('meas:vav? chan2'))
meas_y_2 = float(oscilloscope_3.query('meas:vav? chan1'))
meas_z_2 = float(oscilloscope_3.query('meas:vav? chan2'))
total_meas += 1;
#print(total_meas)
file1.write(str(total_meas) + '\t' +str(meas_x_1) + '\t' + str(meas_y_1) + '\t' + str(meas_z_1) + '\t' + str(meas_x_2) + '\t'+ str(meas_y_2) + '\t' + str(meas_z_2) + '\n')
if(total_meas % 100 == 0):
print(int(time.time()-time_run)/60)
#print(total_meas)
有关设置的其他一些信息:
示波器来自:Keysight InfiniiVision 2000-X系列,特别是DSO-X 2002A
仪器的识别是通过NI MAX(NI Measurement & Automation Explorer)
示波器通过 USB 电缆连接到示波器
解决方案
推荐阅读
- javascript - 父母和孩子 div 大小
- android - Android N, O App Overlay stays after Permission request declined
- c# - 跨站点请求伪造 Asp.net 核心 .cshtml 页面
- r - 在带有偏移项的 glm 上使用 broom (augment) 和 modelr (crossv_kfold) 时出错
- php - Xampp 托管多个应用程序
- javascript - 在不抑制验证组的情况下防止双击提交按钮
- tensorflow - YOLO and adjusting number of anchor boxes for custom dataset
- asp.net-core - EF Core: The name "SqlServerValueGenerationStrategy" does not exist in the current context
- java - 相同的实例应该有相同的引用
- shell - Set specific billing period when ordering Endurance iSCSI storage