完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
大家好,我正在使用Agilent DSOX 3000系列示波器并通过labview进行控制。
在我的应用程序中,我需要从示波器中获取平均波形。 这本身很容易,但是我遇到了范围返回的点数问题。 要获取我的波形I :: STOP:ACQ:COUN:ACQ:MODE RtiM:ACQ:TYPE AVER:DIG * OPC? :WAV:POIN:MODE MAX:WAV:POIN 5000:WAV:BYT MSBF:WAV:FORM WORD:WAV:XOR ?; XIN ?; XREF ?; YOR ?; YINC ?; YREF? :WAV:DATA? 然后基本上继续。 我遇到的问题是我很少(如果有的话)获得所要求的积分数。 今天,当我运行我的代码时,我得到一个4444点波形返回。 但我已经看到,即使示波器设置相同,它也会有所不同! 如果我使用相同的基本代码,但设置:ACQ:TYPE NORM它工作正常,我每次得到5000点。 有没有人遇到过这个? 我有什么想法可以解决这个问题吗? 它出现问题的原因是,一旦我将代码重新安装到PC上,我就需要对代码进行FFT处理,并且我希望确保从FFT中获得一致的delta F. 我知道我可以通过零填充到一定长度来填充它,但我真的不想这样做。 另外,我试图保持与线路上的其他代码的兼容性,这些代码是针对来自Lecroy范围的波形编写的,在这方面表现得好得多,并且总是返回正确的记录长度。 任何想法都感激不尽! 谢谢保罗 以上来自于谷歌翻译 以下为原文 Hi All, I'm using the Agilent DSOX 3000 series scopes and controlling via labview. In my application, I need to acquire an averaged waveform from the scope. This in itself is easy enough, but I'm running into an issue with the number of points returned by the scope. To acquire my waveform I: :STOP :ACQ:COUN :ACQ:MODE RTIM :ACQ:TYPE AVER :DIG *OPC? :WAV:POIN:MODE MAX :WAV:POIN 5000 :WAV:BYT MSBF :WAV:FORM WORD :WAV:XOR?;XIN?;XREF?;YOR?;YINC?;YREF? :WAV:DATA? and then carry on essentially. The issue I have is that I seldom (if ever) get the number of points requested. Today, when I run my code I'm getting a 4444 point waveform returned. But I have seen it vary even when the scope setup is the same! If I use the same basic code, but set :ACQ:TYPE NORM it works fine and I get 5000 points every time. Anyone come across this before? Any ideas what I can try to solve this? The reason its a problem is that I need to FFT the code once I have it back on the PC and I want to ensure I get consistent delta F out of my FFT. I know I could cludge it by zero padding to a certain length, but I don't really want to do that. Additionally I'm trying to maintain compatibility with some other code down the line which was written for waveforms coming off a Lecroy scope which behaved much better in this respect and always returned the right record length. Any thoughts gratefully received! Thanks Paul |
|
相关推荐
8个回答
|
|
|
如果在Command Expert,MATLAB,Interactive I / O或LabView之外的其他语言中运行相同的代码,您会得到相同的结果吗?
我没有3000X可用,所以我无法测试它。 我认为您应该联系当地的安捷伦技术呼叫中心。 人 以上来自于谷歌翻译 以下为原文 Do you get the same results if you run the same code in Command Expert, MATLAB, Interactive I/O, or some other language than LabView? I don't have a 3000X available, so I can't test it. I think that you should probably contact your local Agilent Technical Call Center. Al |
|
|
|
|
|
dprmorris,预脚本配置的安装文件(scp)可用于诊断此问题。
具体来说: - 你的时间/格设置是什么时候? - 你的平均数是多少? 脚本中的命令(:ACQ:COUN)缺少其参数。 - 从3000X程序员指南,:WAVEform:POINts:MODE:> MAXimum或RAW数据检索的注意事项:>>•必须停止仪器(参见:STOP命令(参见第221页)或:DIGitize命令(参见页面) 197)在根子系统中)以返回多于测量记录。 >•:TIMebase:MODE必须设置为MAIN。 >•:ACQuire:TYPE必须设置为NORMal或HRESolution。 >•MAXimum或RAW将允许返回最多4,000,000个点。 返回的点数将随着仪器配置的变化而变化。 使用:WAVeform:POINts? MAXimum查询以确定可在当前设置下检索的最大点数。 你从什么中获得:WAV:POIN? MAX查询? 谢谢, - 克里斯 以上来自于谷歌翻译 以下为原文 dprmorris, A setup file (scp) of your pre-script configuration would be useful in diagnosing this issue. Specifically: - What's your time/div setting? - What's your average count? The command in your script (:ACQ:COUN) is missing its parameter. - From the 3000X programmer's guide, :WAVEform:POINts:MODE: > Considerations for MAXimum or RAW data retrieval: > > • The instrument must be stopped (see the :STOP command (see page 221) or the :DIGitize command (see page 197) in the root subsystem) in order to return more than the measurement record. > • :TIMebase:MODE must be set to MAIN. > • :ACQuire:TYPE must be set to NORMal or HRESolution. > • MAXimum or RAW will allow up to 4,000,000 points to be returned. The number of points returned will vary as the instrument's configuration is changed. Use the :WAVeform:POINts? MAXimum query to determine the maximum number of points that can be retrieved at the current settings. What do you get from the :WAV:POIN? MAX query? Thanks, --Chris |
|
|
|
|
|
好的,谢谢你的回复。
为了澄清 - 在第一篇文章中,我真的只是列出了我正在使用的命令,因此缺少参数:ACQ:COUN命令不是问题 - 调用时会给出一个参数。 我刚试过插入一个:WAV:POIN? 紧接着之前的查询:WAV:DATA? 在我的代码中查询。 当范围处于“正常获取”并且我设置:WAV:POIN 5000,如第一个示例中所示,响应:WAV:POIN? 查询是5000预期的。 然而,当处于平均模式时,它现在返回4000(并且返回的波形确实是4000点长)。 这似乎与范围的平均数和时基无关。 如果我改变我的代码使用:WAV:POIN 10000平均采集返回8000点波形,(正常采集返回10000点)。 我不明白为什么会这样! 还有其他想法吗? 保罗 以上来自于谷歌翻译 以下为原文 Ok, thanks for the replies. To clarify - in the first post I was really just listing the commands I'm using, so the lack of parameter on the :ACQ:COUN command is not an issue - it would be given a parameter when called. I have just tried inserting a :WAV:POIN? query immediately before the :WAV:DATA? query in my code. When the scope is in "normal acquisition" and I set :WAV:POIN 5000 as in the first example, the response to the :WAV:POIN? query is 5000 as expected. When in averaging mode however, today it is returning 4000 (and the returned waveform is indeed 4000 points long). This seems to be independent of the number of averages and the timebase of the scope. If I change my code to use :WAV:POIN 10000 averaged acquisition returns an 8000 point waveform, (Normal acquisition returns 10000 points). I don't get why this is happening! Any other thoughts? Paul |
|
|
|
|
clslda 发表于 2018-12-27 09:21 长话短说:时间基础必须不同才能得到这种行为。 即,在时基X,在某些模式中(例如平均),只有xxx poitns可用。 在时基Y,只有yyy点可用。 在较长的时间基础上,可获得高达约65 k点。 查看程序员在“:波形:点:模式”下指导的部分,基本上平均模式使用测量记录。 这可能会有所帮助:在Agilent 3000X系列示波器上保存最大内存http://youtu.be/aqfvPHP4zOU免责声明:为了获得更可靠的响应,您应该考虑致电当地的安捷伦技术呼叫中心。 安捷伦论坛在“可用”的基础上进行监控,并不一定是解决技术问题的最快方式。 以上来自于谷歌翻译 以下为原文 Long story short: the time base must be differnt to get this behavior. i.e. at timebase X, only xxx poitns may be availible in certain modes (like averaging). At time base Y, only yyy points may be availible. At longer timebases, up to ~65 kpoints will be availible. Check out the section itneh programmers guide under ":waveform:points:mode" bascially average mode uses the measurement record. this may help: Saving Max Memory on Agilent 3000X Series Scopes http://youtu.be/aqfvPHP4zOU Disclaimer: For more reliable response, you should consider calling your local Agilent Technical Call Center. The Agilent Forums are monitored on an "as available" basis, and aren't necessarily the fastest way to get technical questions answered. |
|
|
|
|
ncmza 发表于 2018-12-27 09:32 感谢您的回复,看起来我只能在平均时调用“测量记录”。 但是,根据手册:WAV:POIN命令接受以下参数::: = {100 | 250 | 500 | 1000 | 2000 | 5000 | 10000 | 20000 | 50000 | 100000 | 200000 | 500000 | 1000000 | 2000000 | 4000000 | 8000000 | 如果波形点模式是MAXimum或RAW我将它设置为MAX然而在平均模式下,我永远不会得到5000点波形。 另外,如果我今天设置范围并进行测试,我可能会获得4000点,如果我重新启动示波器并将其设置为相同的,我可能会获得4140(或类似)。 缺乏一致性令人担忧。 我也在谈论科技支持,并会在我了解更多时尝试更新! 谢谢保罗 以上来自于谷歌翻译 以下为原文 Thanks for the reply, it does look like I'm limited to recalling the "measurement record" when averaging. However, according to the manual the :WAV:POIN command accepts the following arguments: ::= {100 | 250 | 500 | 1000 | 2000 | 5000 | 10000 | 20000 | 50000 | 100000 | 200000 | 500000 | 1000000 | 2000000 | 4000000 | 8000000 | } if waveform points mode is MAXimum or RAW I have it set to MAX Yet in averaging mode, I can NEVER get a 5000 point waveform. Additionally if I set the scope up and do a test today, I may get 4000 points, if I power cycle the scope and set it back up identically, I may get 4140 (or similar). There's a lack of consistency which is worrying. I am talking to tech support too on this and will try to update when I know more! Thanks Paul |
|
|
|
|
|
我最近有一个类似的问题,但我想我已经明白了。 我可能错了,但是我确定,forumers会纠正我。 所以这里:首先,你必须通过以下方式选择你的“模式”:WAV:POINTS:MODE,然后是所需的点数,通过:WAV:POINTS NORMAL - 这将使范围始终返回测量记录, 最多65k点。 所以,如果你设置如下:WAV:POINTS 1000,你将获得1000,而:WAV:POINTS 80000将返回65k。 但是等等,你可能无法得到你想要的一切。 正如前面提到的那样,它正在执行抽取并取决于你的时基,内存深度等。所以,通常你会得到你设置的,或接近你设置的。 RAW - 原始数据,直到您拥有的最大内存(我相信取决于许可证)。 MAX - 自动选择NORMAL或RAW,以提供最接近所需值的值。 ----------------现在,谈谈你所看到的行为。 我相信你做了类似“:WAV:POINTS MAX”的东西,我认为它实际上只相当于“:WAV:POINTS:MODE MAX”,它没有专门设置点数。 该文档具有误导性。 我相信最好的方法是通过2个命令显式:WAV:POINTS:MODE MAX:WAV:POINTS 5000然后,你将得到一致的结果。 将模式设置为“MAX”,让范围决定选择哪个波形(原始或测量记录)。 请注意,值WAV:POINTS:MODE不会在重新启动时保持不变(即它会被设置回NORM),因此您看到的行为对我来说似乎是正确的(即在重启之前,您会看到原始波形上的抽取 ,重新启动后,您将看到测量记录的抽取)。 再一次,总是要明确,或者在做之前检查你的模式和点:WAV:DATA?。 另外,:WAV:PRE? 可以提供一些见解。 作为旁注,我发现做[:WAV:POINTS:MODE MAX,5000]是我上面提到的两步法的另一种捷径。 SCPI指南没有清楚地表明这一点(至少对我而言),但它有效。 --Bret编辑:bret于2013年6月18日上午7:30 以上来自于谷歌翻译 以下为原文 I had a similar question in mind recently, but I think I figured it out. I may be wrong, but the forumers will correct me, I'm sure. So here goes: First, you have to choose your "mode" through :WAV:POINTS:MODE, then followed by desired number of points, through :WAV:POINTS NORMAL - this will make the scope always return the measurement record, which has a maximum of 65k points. So, if you set something like :WAV:POINTS 1000, you will get 1000, while :WAV:POINTS 80000 will return you 65k. But wait, you might not get exactly what you want all the time. As the previous post mentioned, it is performing decimation and depends on your timebase, memory depth etc. So, usually you will get either exactly what you set, or close to what you set. RAW - the raw data, up to the maximum memory that you have (I believe depends on license). MAX - automatically choose between NORMAL or RAW to give whatever is closest to your desired value. ---------------- Now, on to the behavior that you are seeing. I believe you did something like ":WAV:POINTS MAX", which I believe is essentially just equivalent to ":WAV:POINTS:MODE MAX", where it does not set the amount of points specifically. The documentation is misleading. I believe the best method is to be explicit via 2 commands: :WAV:POINTS:MODE MAX :WAV:POINTS 5000 then, you will get consistent results. Putting the mode to "MAX" let's the scope decide which waveform (raw or measurement record) to pick from. Note that the value of :WAV:POINTS:MODE does not persist over a reboot (i.e. it gets set back to NORM), so the behavior that you are seeing seems correct to me (i.e. before reboot, you are seeing decimation over raw waveform, and after reboot, you are seeing decimation over measurement record). Again, always be explicit, or check your mode and points before doing :WAV:DATA?. Also, :WAV:PRE? could provide some insight. As a side note, I found out that doing [:WAV:POINTS:MODE MAX, 5000] is an alternative shortcut to the 2-step method that I mentioned above. The SCPI guide does not show this clearly (at least to me), but it works. --Bret Edited by: bret on Jun 18, 2013 7:30 AM |
|
|
|
|
oqw1 发表于 2018-12-27 09:58 哦,我刚刚意识到你的问题也是关于平均模式。 我相信我上面的答案应该解释重启行为,并解释一般用法,但可能会或可能不会解释平均情况(我没有广泛使用该模式)。 以上来自于谷歌翻译 以下为原文 Oh I just realized your question is also on Averaging Mode. I believe my answer above should explain the reboot behavior, and also explains the general usage, but may or may not explain the Averaging case (I have not used that mode extensively). |
|
|
|
|
|
Paul,再说一遍,如果没有安装文件和/或精确的远程脚本,很难准确再现您所看到的内容。 在我的DSO-X 3054A上,我看到:> * rst>:acq:type aver>:stop>:wav:sour:chan1>:wav:poin:mode max>:wav:poin? > +15625>:wav:poin 5000>:wav:poin? > +3906抽取计算:> 15625/5000 = 3.125为了不溢出客户端缓冲区,我们选择4:1的抽取率。 > 15625/4 = 3906分虽然我无法通过相同的设置来解释不一致的行为(希望bret的回复解释它),但是正常模式和平均模式之间的分歧是由于不同的分析记录长度,并且将取决于所请求的数量 点。 谢谢, - 克里斯 以上来自于谷歌翻译 以下为原文 Paul, Again, it's difficult to reproduce exactly what you're seeing without a setup file and/or a precise remote script. On my DSO-X 3054A, I see: > *rst > :acq:type aver > :stop > :wav:sour: chan1 > :wav:poin:mode max > :wav:poin? > +15625 > :wav:poin 5000 > :wav:poin? > +3906 Decimation calculation: > 15625 / 5000 = 3.125 In order to not overflow the client's buffer, we select a decimation ratio of 4:1. > 15625 / 4 = 3906 points While I cannot account for inconsistent behavior via identical setups (hopefully bret's reply explains it), the disagreement in points between normal and averaging modes is due to differing analysis record lengths, and would depend on the number of requested points. Thanks, --Chris |
|
|
|
|
只有小组成员才能发言,加入小组>>
250 浏览 0 评论
1863 浏览 0 评论
2753 浏览 1 评论
2656 浏览 1 评论
2477 浏览 5 评论
1863浏览 0评论
433浏览 0评论
263浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-12 14:14 , Processed in 0.982202 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2107