完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,我正在使用IVI驱动程序并为我的E4438C VSG编写c#。
我目前能够从ARB触发突发波形(~500ms),但为了使其正常工作,我启用RF,发送软件触发,在软件中休眠500ms然后禁用rf。 在突发完成(所有样本都被传输)而不是睡眠之后,触发器是否有一种方法可以禁用rf? 我试图保持RF开启,但是当我的应用程序无法容忍时,VSG会传输持续的能量,因此我正在使用RF打开/关闭。 谢谢Reese -------代码片段IIviRFSigGen drvr =(IIviRFSigGen)驱动程序; drvr.DigitalModulation.Arb.TriggerSource = IviRFSigGenArbTriggerSourceEnum.IviRFSigGenArbTriggerSourceSoftware; drvr.DigitalModulation.Arb.SelectedWaveform = arbfile; drvr.RF.Frequency = xmtFrequency; //设定频率drvr.RF.Level = xmtPower; // set level(dBm)drvr.IQ.Source = IviRFSigGenIQSourceEnum.IviRFSigGenIQSourceArbGenerator; drvr.IQ.Enabled = true; drvr.RF.OutputEnabled = true; drvr.SendSoftwareTrigger(); Thread.sleep代码(500); //等待突发传输driver.RF.OutputEnabled = false; 以上来自于谷歌翻译 以下为原文 Hello, I am using the IVI driver and writing c# for my E4438C VSG. I am currently able to trigger a burst waveform (~500ms) from the ARB, but in order to get it to function, I enable the RF, send the software trigger, sleep in software for 500ms and then disable the rf. Is there a way for the trigger to disable the rf after the burst is complete (all samples are transmitted) rather than to sleep? I tried to just keep the RF on, but there is continuous energy transmitted from the VSG when it is idle that my application can not tolerate, so I am using the RF on/off. Thanks Reese ------- code fragment IIviRFSigGen drvr = (IIviRFSigGen)driver; drvr.DigitalModulation.Arb.TriggerSource = IviRFSigGenArbTriggerSourceEnum.IviRFSigGenArbTriggerSourceSoftware; drvr.DigitalModulation.Arb.SelectedWaveform = arbfile; drvr.RF.Frequency = xmtFrequency; // set frequency drvr.RF.Level = xmtPower; // set level (dBm) drvr.IQ.Source = IviRFSigGenIQSourceEnum.IviRFSigGenIQSourceArbGenerator; drvr.IQ.Enabled = true; drvr.RF.OutputEnabled = true; drvr.SendSoftwareTrigger(); Thread.Sleep(500); // wait for burst to transnmit driver.RF.OutputEnabled = false; |
|
相关推荐
10个回答
|
|
嗨Reese - 您是否尝试过使用Gated触发?
这将使波形等待第一个有效触发信号状态开始发送,然后响应外部施加的触发信号重复启动和停止。 在Arb格式中,波形在非活动状态期间播放,并在活动状态期间停止。 *使用门控触发模式时,将从触发源菜单中选择Ext Trigger *。 每次传输的长度取决于触发信号的占空比和门极性选择,该选择由Gate Active Low High软键设置。 极性选择还确定触发信号的哪个状态(负或正)导致调制信号的中断。 外部触发信号连接到PATTERN TRIG IN连接器或辅助I / O连接器(PATT TRIG IN 2针)。 要选择连接器,请使用* Ext * Source软键。 门控触发器SCPI:[:SOURce]:RADIO:ARB:TRIGger:TYPE:GATE:ACTive LOW | HIGH希望这有帮助 - 以上来自于谷歌翻译 以下为原文 Hi Reese - Have you tried using the Gated triggering? This will cause the waveform to wait for the first active trigger signal state to begin transmission, then repeatedly start and stop in response to an externally applied trigger signal. In the Arb format, the waveform plays during the inactive states, and stops during the active state. *Ext Trigger* from the Trigger Source menu will be selected when the gated trigger mode is used. The length of each transmission depends on the duty period of the trigger signal and the gate polarity selection, which is set with the Gate Active Low High softkey. The polarity selection also determines which state (negative or positive) of the trigger signal causes an interruption in the modulating signal. The external trigger signal connects to either the PATTERN TRIG IN connector or the Auxiliary I/O connector (PATT TRIG IN 2 pin). To select the connector, use the *Ext* Source softkey. Gated Trigger SCPI: [:SOURce]:RADio:ARB:TRIGger:TYPE:GATE:ACTive LOW|HIGH Hope this helps - |
|
|
|
醉狼工作室 发表于 2018-12-12 13:48 嗨Tabbott,非常感谢您的回复。 你认为我可以使用其中一个来触发它吗? http://sine.ni.com/nips/cds/print/p/lang/en/nid/201630谢谢里斯 以上来自于谷歌翻译 以下为原文 Hi Tabbott, Thank you very much for the reply. Do you think I might get away with using one of these for the trigger? http://sine.ni.com/nips/cds/print/p/lang/en/nid/201630 Thanks Reese |
|
|
|
60user156 发表于 2018-12-12 13:58 嗨Reese - 这是来自Pattern Trigger连接器的Ext Triggers的规范。 模式触发连接器可接受CMOS低至CMOS高电平或CMOS高至CMOS低电平边沿触发。 最小触发输入脉冲宽度(高或低)为100 ns。 损坏等级> +5.5伏特和+5.5。您需要查看NI USB-6501数据表,以确保可以使用它。 乍一看,似乎是这样。 问候 - 以上来自于谷歌翻译 以下为原文 Hi Reese - This is the specification for the Ext Triggers from the Pattern Trigger connectors. The Pattern Trigger Connector accepts either a CMOS low to CMOS high, or CMOS high to CMOS low edge trigger. The minimum trigger input pulse width, high or low, is 100 ns. The damage levels are > +5.5 volts and +5.5 and < −0.5 V. You will need to review the NI USB-6501 data sheet to be sure that this can be used. At first glance, it seems so. Regards - |
|
|
|
醉狼工作室 发表于 2018-12-12 14:12 我会尝试一下让你知道。 谢谢塔博特 以上来自于谷歌翻译 以下为原文 I'll try it out and let you know. Thank you Tabbott |
|
|
|
欢迎您随时光临。 嘿,......在看了一下NI USB-6501数据表之后,看起来应该可以通过对ES进行编程来为ES提供外部触发。 但是,如果您想发送S / W触发器而不是硬件触发器,也可以这样做。 您需要创建适当的标记,然后将其路由到Pulse / RF Blank电路。 如果标记极性设置为正,则仅在波形回放期间启用输出。 因此,如果触发器设置为单个,则一旦波形停止,RF将关闭。 直到下一次 - 以上来自于谷歌翻译 以下为原文 You are welcome Resse - any time. Hey, ...after looking at the NI USB-6501 data sheet a little more, looks like it should work to provide an external trigger to the ES by programming it to suit. But if you want to send a S/W trigger rather than a hardware trigger, this can also be done. You would need to create the appropriate marker then route this to the Pulse/RF Blank circuit. If the marker polarity is set to positive then the output would only be enable during the waveform playback. So if the trigger is set to single then RF be off once the waveform stops. Until next time - |
|
|
|
醉狼工作室 发表于 2018-12-12 14:41 嗨Tabbott,我已经考虑了这个,看起来像使用标记和软触发器是我想要做的。 但是,C#IVI驱动程序似乎没有实现标记功能。 我可以使用驱动程序发出scpi命令吗? 有一个界面可以做到这一点,但如果你能确认这会让我有些头痛。 以下是我认为可行的方法:driver.System.IO.WriteString(scpi_command_string); 命令序列可能是:: SOUR:RAD:ARB:MARK:POL:POS:SOUR:RAD:ARB:MARK:RFBL:ON:SOUR:RAD:ARB:TRIG:TYPE SING当我触发时,我仍然会 使用命令:drvr.SendSoftwareTrigger(); 谢谢,里斯 以上来自于谷歌翻译 以下为原文 Hi Tabbott, I've given this a bit more thought, and it looks like using a marker and soft trigger is what I want to do. The C# IVI driver doesn't seem to implement the marker feature, however. Can I use the driver to issue scpi commands though? There is an interface that may do it, but if you could confirm that would save me some headache. Here is what I think might work: driver.System.IO.WriteString( scpi_command_string); the sequence of commands then might be: :SOUR:RAD:ARB:MARK:POL:POS :SOUR:RAD:ARB:MARK:RFBL:ON :SOUR:RAD:ARB:TRIG:TYPE SING when I trigger, I would still use the command: drvr.SendSoftwareTrigger(); Thanks, Reese |
|
|
|
嗨Reese - 是的,命令似乎正确(这也取决于这里使用的驱动程序方法)。 但基本上你设置的是:SOUR:RAD:ARB:MARK:POL:POS Marker Polarity:SOUR:RAD:ARB:MARK:RFBL:ON Marker Routing:SOUR:RAD:ARB:TRIG:TYPE SING Trigger Type And 然后发送软件触发器。 不要忘记在信号的活动部分上创建标记。 问候 - 以上来自于谷歌翻译 以下为原文 Hi Reese - Yes, The commands seems right (which also depends on the driver methods used here). But basically you are setting up the: :SOUR:RAD:ARB:MARK:POL:POS Marker Polarity :SOUR:RAD:ARB:MARK:RFBL:ON Marker Routing :SOUR:RAD:ARB:TRIG:TYPE SING Trigger Type And then send the software trigger. Don’t forget to create the marker over the active part of the signal as well. Regards - |
|
|
|
醉狼工作室 发表于 2018-12-12 15:12 您好Tabbott,我还有两个问题可以解决这个问题:1。如何“在信号的活动部分创建标记”? 2.使用driver.system.io.writestring()函数正确地向4438发出scpi命令,还是需要打开一个单独的telnet会话来执行此操作? 非常感谢你,里斯 以上来自于谷歌翻译 以下为原文 Hi Tabbott, I have two more questions that will wrap this up for me: 1. How do I "create the marker over the active part of the signal as well"? 2. WIll the driver.system.io.writestring() function properly issue the scpi commands to the 4438, or do I need to open a separate telnet session to do so? thanks you very much, Reese |
|
|
|
60user156 发表于 2018-12-12 15:27 嗨Reese,托德将在接下来的几天出去。 这是对你的问题的回答: - 这是设置标记的命令: - [:SOURce]:RADio:ARB:MARKer:[SET]“”,,,,所以对于下面的例子(让我们调用波形“测试 “),如果我们想要在整个波形(100点)上定义标记,我们将使用:[:SOURce]:RAD:ARB:MARK:SET”Test“,1,1,100,0 File_name = Test marker = 1或 事件1 first_point = 1 Last_point = 100 Skip_count = 0 - 连续覆盖1到100有关更多SCPI编程问题,请参阅此SCPI命令参考:链接:[http://cp.literature.agilent.com/litweb/pdf /E4400-90622.pdf] 以上来自于谷歌翻译 以下为原文 Hi Reese, Todd will be out for next couple of days. Here's the response to your question:- Here is the command to set the marker:- [:SOURce]:RADio:ARB:MARKer:[SET] "",,,, So for the example below (let’s call the waveform “Test”), if we want to define the marker over the complete waveform (100 points) we would use: [ :SOURce]:RAD:ARB:MARK:SET "Test",1,1,100,0 File_name = Test marker = 1 or Event 1 first_point = 1 Last_point = 100 Skip_count = 0 – covers from 1 to 100 continuously For more SCPI programming questions, please refer to this SCPI command reference: Link: [http://cp.literature.agilent.com/litweb/pdf/E4400-90622.pdf] |
|
|
|
醉狼工作室 发表于 2018-12-12 14:12 您好Tabbott,我对您的评论很感兴趣:>>但是如果您想发送S / W触发器而不是硬件触发器,也可以这样做。 您需要创建适当的标记,然后将其路由到Pulse / RF Blank电路。 >>如果标记极性设置为正,则仅在波形回放期间启用输出。 因此,如果触发器设置为单个,则一旦波形停止,RF将关闭。 这应该是我想要做的。 你有任何示例.net代码可以帮助我尝试这个吗? 我认为我们正在寻求一个很好的解决方案。 谢谢,里斯 以上来自于谷歌翻译 以下为原文 Hi Tabbott, I am intrigued with your comment: >>But if you want to send a S/W trigger rather than a hardware trigger, this can also be done. You would need to create the appropriate marker then route this to the Pulse/RF Blank circuit. >>If the marker polarity is set to positive then the output would only be enable during the waveform playback. So if the trigger is set to single then RF be off once the waveform stops. That should like exactly what I would like to do. Would you have any example .net code that would help me try this? I think we are approaching a nice solution. Thank you, Reese |
|
|
|
只有小组成员才能发言,加入小组>>
1223 浏览 0 评论
2347 浏览 1 评论
2157 浏览 1 评论
2022 浏览 5 评论
2902 浏览 3 评论
964浏览 1评论
关于Keysight x1149 Boundary Scan Analyzer
700浏览 0评论
N5230C用“CALC:MARK:BWID?”获取Bwid,Cent,Q,Loss失败,请问大佬们怎么解决呀
801浏览 0评论
1223浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 01:54 , Processed in 1.603234 second(s), Total 93, Slave 77 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号