完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在进行VMC测量。
加载我的校准文件后,分析仪似乎只是在开始扫描之前就坐在那里(端口1指示灯处于活动状态)。 大约1-1.5分钟后,端口2灯亮起并开始扫描。 问题是,如果我过早地读取扫描(在至少一次扫描完成之前 - 可能刚刚开始但我等到第一次扫描完成之后)我得到一个平坦的迹线(接近于零)以进行群延迟 测量。 我在开始设置所有仪器调整之前加了2分钟的延迟(比如将测量类型改为默认的组延迟等),我得到了很好的跟踪。 跟踪扫描速度本身相当慢(大约15-20秒) - 不知道这是否是影响。 那么PNA-X是否在开始扫描之前等待负载完成,或者扫描是否那么缓慢(我注意到如果我观察扫描,一次扫描完成后新的扫描不会启动 - 再次,它只是 坐在那里,端口1灯有效)? 我如何以编程方式知道何时可以实际读取跟踪? tiA 以上来自于谷歌翻译 以下为原文 I'm performing a VMC measurement. Immediately after loading my cal file, the analyzer seems to just sit there before starting a sweep (the port 1 light IS active). After about 1-1.5 mins, the port 2 light goes active and it starts to sweep. The problem is that if I read the sweep too soon (before at least one sweep is completed - may be just started but I've waited until after the 1st sweep completed) I get a flat trace (close to zero) for a group delay measurement. I added in a 2min delay prior to start setting all of my instrument adjustments (like changing the measurement type to group delay from the default, etc.) and I get a good trace. The trace sweep speed itself is fairly slow (about 15-20 seconds) - don't know if that's the impact. So is the PNA-X waiting for the load to complete before starting the sweep or is the sweep just that slow (I did notice that if I watch the sweeps, a new sweep doesn't start after one sweep completes - again, it's just sitting there w/ the port 1 light active)? How do I programmatically know when I can actually read the trace? TIA |
|
相关推荐
5个回答
|
|
VMC在开始更新扫描之前进行3次测量:S11,Freq偏移关闭;
S21,频率偏移打开,S22,频率偏移关闭。 在这种情况发生之前没有任何动 对于程序结果:如果SCPI使用“Single; * opc?并且读取OPC for Com,使用Single(1)(1表示true,保持扫描完成).PS什么PNA,什么FW,多少点,什么 IF BW,任何特殊功能,如嵌入式LO或Rx调平?编辑:Dr_joel于2012年7月13日上午10:29 以上来自于谷歌翻译 以下为原文 VMC makes 3 measurements before it starts to update the sweep: S11 with Freq offset off; S21 with frequency offset on, S22 with freqeuncy offset off. Nothing moves until that happens. For programatic results: if SCPI use "Single;*opc? and read the OPC for Com, use Single(1) (1 means true, hold for the sweep to finish). P.S. What PNA, what FW, how many points, what IF BW, any special features such as embedded LO or Rx leveling? Edited by: Dr_joel on Jul 13, 2012 10:29 AM |
|
|
|
PNA-X N5242A答:09:22:12这是我目前的代码...... MMEM:LOAD:CSAR CALC:PAR:SEL VC21_2 CALC:FORM GDEL FORM:DATA READ 32 FORM:BORD NORM CALC:GDEL:POIN 3
SENS:BAND:RES 50; 50Hz IFBW SENS:AVER:STAT ON SENS:AVER:COUN 5 CALC:DATA? LO是外部的。 我应该使用组(如在活动线程中),因为我正在平均或只是替换CALC:DATA? w / SENS:SWE:MODE SINGLE * OPC? CALC:DATA? 我尝试了以上但我仍然得到了扁平线结果。 顺便说一句,我应该在我的程序开始时放入SENS:SWE:MODE HOLD(我想在我预设它时因为我知道在我开始任何测试之前就会发生这种情况)以使扫描速度更快 ? TIA编辑:miyamky于2012年7月13日上午10:40编辑:miyamky于2012年7月13日上午11:29 以上来自于谷歌翻译 以下为原文 PNA-X N5242A A:09:22:12 Here's the code I currently have... MMEM:LOAD:CSAR CALC:PAR:SEL VC21_2 CALC:FORM GDEL FORM:DATA READ 32 FORM:BORD NORM CALC:GDEL:POIN 3 SENS:BAND:RES 50; 50Hz IFBW SENS:AVER:STAT ON SENS:AVER:COUN 5 CALC:DATA? The LO is external. Should I use groups (as in an active thread) since I'm averaging OR just replace CALC:DATA? w/ SENS:SWE:MODE SINGLE *OPC? CALC:DATA? I tried the above but I still got the flat line result again. As an aside, should I just put in SENS:SWE:MODE HOLD at the beginning of my program (I was thinking of whenever I preset it since I know that'll happen before I start ANY test) to make sweeps go faster in general? TIA Edited by: miyamky on Jul 13, 2012 10:40 AM Edited by: miyamky on Jul 13, 2012 11:29 AM |
|
|
|
现在我尝试更换:SENS:SWE:MODE SINGLE * OPC?
用:SENS:SWE:MODE HOLD TRIG:SOUR IMM SENS:AVER CLE SENS:SWE:GRO:COUN 5 SENS:SWE:MODE GRO * OPC? 第一次扫描开始后,OPC返回错误。 然后我等待(因为现在所有命令都失败了)直到第5次扫描完成后,我得到了查询未终止错误和* OPC? 现在返回+1(现在其他命令工作)。 所以现在我做错了什么? 以上来自于谷歌翻译 以下为原文 Now I tried replacing: SENS:SWE:MODE SINGLE *OPC? with: SENS:SWE:MODE HOLD TRIG:SOUR IMM SENS:AVER CLE SENS:SWE:GRO:COUN 5 SENS:SWE:MODE GRO *OPC? Once the 1st sweep started, the OPC returned w/ an error. I then just waited (because now all commands are all failing) until after the 5th sweep completed, then I got the query unterminated error and *OPC? now returns +1 (and other commands now work). So now what am I doing wrong? |
|
|
|
juujwfdf 发表于 2019-3-19 16:43 好的,我搞定了。 我换了* OPC? w / a * OPC后跟* STB循环? (寻找第5位)。 这等待直到所有5次扫描完成才返回。 对于SENS:SWE:MODE HOLD ...这似乎与通道有关。 所以我需要“保持”所有其他频道或只是我正在阅读的那个频道??? TIA 以上来自于谷歌翻译 以下为原文 Okay, I got it working. I replaced the *OPC? w/ a *OPC followed by a loop of *STB? (looking for bit 5 to be set). This waited until all 5 sweeps were complete before returning. For SENS:SWE:MODE HOLD...that seems to be channel dependent. So do I need to "hold" all other channels or just the one I'm reading from??? TIA |
|
|
|
您在早期版本中的错误可能是因为超时。 现在使用* OPC然后在状态字节中查询,您正在做正确的事情。 这是最好的使用方法。 添加一个计时器和代码,在等待队列之间等待10毫秒之类的东西,以避免以非常快的查询砰击PNA(它可以减慢其他操作,因为它试图响应STB?)。 此外,您可以添加一个计数器,并且每200次查询(每2秒)向用户发送带有按钮的消息,例如“等待扫描返回,[确定],[ABortl]”将此消息设为定时消息并降低它 一秒钟之后。将所有这些放入一个可以调用“take_sweep_and_wait”的函数中,然后重复使用它。更多信息:有一个系统范围的保持和恢复命令:SYSTem:CHANnels:HOLD(只写)放置所有 保持模式下的通道。要将单个通道置于保持模式,请使用SENS:SWE:MODE。示例SYST:CHAN:HOLD首先发出系统保持,然后设置所需的通道然后触发该通道。几乎所有(应该 是 - 但是也有一些例外)Sens和Calc SCPI树是通道或跟踪敏感的,只有少数是全局的,它们不应该是权利!另外,只是为了良好的编程工程:将IF BW设置为a 大数字,如1 kHz或10kHz,并指向11或21启动程序,所以你不必等待永远看到 程序结果。 在这种情况下会发生的情况是,您会看到程序在点较低或IF BW较高时工作正常,但在IF BW较慢时失败(超时),因此直接了解计时问题。 一切正常后,重置为您想要的值。 以上来自于谷歌翻译 以下为原文 Your errors in the earlier version are likely because of time out. You are doing the correct thing now by using *OPC and then querying in the status byte. This is the best method to use. Add a timer and code that sleeps waiting for something like 10 msec between queeries to avoid slamming the PNA with very fast queries (it can slow down other operations as it is trying to respond to STB?). Also, you might add a counter and ever 200 queries (every 2 seconds) post a message with buttons to the user with something like "waiting for sweep to return, [OK], [ABortl]' Make this a timed message and lower it after a second. Put all this into a function that you can call "take_sweep_and_wait" and you can reuse it. A bit more info: there is a system wide hold and resume command: SYSTem:CHANnels:HOLD (Write-only) Places all channels in hold mode. To place a single channel in hold mode, use SENS:SWE:MODE. Examples SYST:CHAN:HOLD First thing is issue the system hold, then setup the channel you want then trigger that channel. Almost all (should be -all- but there were some exceptions) of the Sens and Calc SCPI trees are channel or trace sensitive, only a few are global and by rights they should not be! Also, just for good programming engineeering: set the IF BW to a big number like 1 kHz or 10kHz, and points to 11 or 21 for starting the program, so you don't have to wait forever to see the program results. What would happen in this case is that you would have seen that the program works fine when the points are low or IF BW is high, but fails (timeout) with slow IF BW and so a direct clue to the timing problem. After everything works fine, then reset to your desired values. |
|
|
|
只有小组成员才能发言,加入小组>>
1299 浏览 0 评论
2379 浏览 1 评论
2199 浏览 1 评论
2068 浏览 5 评论
2955 浏览 3 评论
1143浏览 1评论
关于Keysight x1149 Boundary Scan Analyzer
760浏览 0评论
N5230C用“CALC:MARK:BWID?”获取Bwid,Cent,Q,Loss失败,请问大佬们怎么解决呀
952浏览 0评论
1299浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-29 15:36 , Processed in 1.546375 second(s), Total 85, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号