与Visa设备超时错误
26日视图(30天)
显示旧的评论
你好,
obj = visadev (“TCPIP0:: 192.168.1.2:: inst0:: INSTR”);
obj。超时= 30;
fopen (obj);
写入文件(obj,“WAV:明星1”);
写入文件(obj sprintf (“WAV:虽然我”,1000));
写入文件(obj sprintf (“WAV:酸C %我”1));
写入文件(obj,“WAV:数据?”);
data =从文件中读(obj);
% data = binblockread (obj int8);
明确(obj);
简短的解释:开放签证设备,开始传输波形样本1,转移1000个样本,要求使用从文件中读数据,或binblockread读取数据。“WAV:数据?'命令阻止(binblock)的范围和查询数据。这个效果很好,我的电脑没有任何依赖项的范围设置(例如扫描基线的范围)。范围是connectd计算机局域网电缆和开关。设备都在同一个subnetmask,电脑使用ip地址192.168.1.1。
现在我改变了位置。相同的范围,其他笔记本电脑和Matlab版本2022。在这种情况下,笔记本电脑直接连接到通过局域网电缆范围。两个设备之间的通信效果很好但只是在依赖的时基设置范围。如果扫描基线是低,假设1毫秒以下,我可以使用上面的脚本接收数据。如果我增加扫描基线(范围越来越慢的采集时间),我得到一个timout错误从文件中读。同一个脚本工作的一个笔记本电脑导致的问题,现在在一个另一个。超时错误消息出现后很快我使用从文件中读命令。速度远远超过30秒,在签证定义的设备。这是怎样发生的呢? Binblockread also returns an error: "wrong format". Of course, binblockread is expecting something starting with #9... but did not get any values. I guess is the same timeout problem.
0评论
答案(2)
hyxamp
2023年1月25日
编辑:hyxamp
2023年1月25日
1评论
chrisw23
2023年1月25日
编辑:chrisw23
2023年1月25日
此次收购完成检测取决于你的胳膊触发器。在示例中,如果你使用单一序列收购你希望停止状态作为一个指标完成的收购。所以查询触发状态是正确的方法,但你必须知道什么是预期。
下面是美国泰克触发状态
%
武装
表明,示波器是信息获取前置触发器。
%
汽车
表明,示波器的自动模式和获得数据甚至没有一个触发器。
%
准备好了
表明所有前置触发器信息获得和示波器是准备接受一个触发器。
%
保存
表明,示波器在保存模式并不是获取数据。
%
触发
表明,示波器触发和收购后触发信息。
一个提示
“错误的格式”例外。确保设备(范围)输出缓冲区为空之前任何新的查询。我不使用工具箱,但也许有一个刷新命令。我用IviVisa通过. net。