AnsweredAssumed Answered

vrf E8361A - Wait until Avg is complete

Question asked by WDrago on Jul 28, 2004
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"><TITLE>E8361A - Wait until Avg is complete</TITLE><META content="MSHTML 6.00.2800.1400" name=GENERATOR></HEAD><BODY><DIV><SPAN class=662245014-29072004><FONT face=Verdana color=#000080>Thanks to all who have responded to this. My problems are solved!</FONT></SPAN></DIV><BLOCKQUOTE>  <DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma   size=2>-----Original Message-----<BR><B>From:</B> DUNSMORE,JOEL (A-Sonoma,ex1)   []<BR><B>Sent:</B> Wednesday, July 28, 2004   7:38 PM<BR><B>To:</B> VRF<BR><B>Subject:</B> [vrf] RE: E8361A - Wait until Avg   is complete<BR><BR></FONT></DIV>  <DIV><SPAN class=884093523-28072004><FONT face=Arial color=#0000ff   size=2>Hello Jay,</FONT></SPAN></DIV>  <DIV><SPAN class=884093523-28072004>    <FONT face=Arial   color=#0000ff size=2>You will notice in the opc polling routine, there is a   maximum wait time and a minimum polling interval.  The interval is what   determines how often the polling occurs, so as to not continually call the   instruments interupt routine.  The problem with OPC? is the for network   analyzers, the sweep times can very enormously, from a few millisecs to many   tens of seconds (in the new PNA you can have 32 channels of 2 port   calibrations with 16001 (yup 16 thousand) data points) so the sweep times can   be very long.  Using the polling eliminates needing to fool around with   the direct I/O timeouts.</FONT></SPAN></DIV>  <DIV><SPAN class=884093523-28072004><FONT face=Arial color=#0000ff   size=2></FONT></SPAN> </DIV>  <DIV><SPAN class=884093523-28072004><FONT face=Arial color=#0000ff   size=2>Joel</FONT></SPAN></DIV>  <BLOCKQUOTE>    <DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma     size=2>-----Original Message-----<BR><B>From:</B> Jay Nemeth-Johannes     []<BR><B>Sent:</B> Wednesday, July 28,     2004 4:12 PM<BR><B>To:</B> VRF<BR><B>Subject:</B> [vrf] RE: E8361A - Wait     until Avg is complete<BR><BR></FONT></DIV>    <DIV dir=ltr align=left><FONT face=Arial><FONT color=#0000ff><FONT     size=2><SPAN class=352040523-28072004>"</SPAN>you will see me using "*STB?"     to get the status byte.  I do this so that I don't have to set a     timeout on the<SPAN class=352040523-28072004> </SPAN>I/O.  If you are     trying to get data really fast (less than 100msec between sweeps) it is     better to use *OPC? and read back right away.<SPAN     class=352040523-28072004>"</SPAN></FONT></FONT></FONT></DIV>    <DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>    <DIV><SPAN class=352040523-28072004><FONT face=Arial color=#0000ff     size=2>You need to be careful about polling the status byte, especially on     GPIB.  If you poll continuously, using spoll, you will cause the     instrument to thrash in the Interupt service routine and actually can     significantly slow the operation.  The only downside of the *OPC? is     that it ties up the bus so other traffic cannot overlap.</FONT></SPAN></DIV>    <DIV><SPAN class=352040523-28072004><FONT face=Arial color=#0000ff     size=2></FONT></SPAN> </DIV>    <DIV><SPAN class=352040523-28072004><FONT face=Arial color=#0000ff     size=2>None of this applies to LAN, and you can overlap to your hearts     content.  I'd say *OPC? was the clear winner for lan or     lan-gpib.</FONT></SPAN></DIV><!-- Converted from text/rtf format -->    <P><SPAN lang=en-us><FONT face=Arial size=2>Jay     Nemeth-Johannes</FONT></SPAN> <BR><SPAN lang=en-us><FONT face=Arial     size=2>Complete Test</FONT></SPAN> <BR><SPAN lang=en-us><FONT face=Arial     size=2>720 SW 14th Street</FONT></SPAN> <BR><SPAN lang=en-us><FONT     face=Arial size=2>Loveland, Colorado 80537</FONT></SPAN> <BR><SPAN     lang=en-us><FONT face=Arial>(970) 663-0006 </FONT></SPAN> <BR><SPAN     lang=en-us><FONT face=Arial size=2></FONT></SPAN> </P>    <DIV> </DIV><BR>    <BLOCKQUOTE dir=ltr     style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">      <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>      <HR tabIndex=-1>      <FONT face=Tahoma size=2><B>From:</B> DUNSMORE,JOEL (A-Sonoma,ex1)       [] <BR><B>Sent:</B> Wednesday, July 28,       2004 4:41 PM<BR><B>To:</B> VRF<BR><B>Subject:</B> [vrf] RE: E8361A - Wait       until Avg is complete<BR></FONT><BR></DIV>      <DIV></DIV>      <DIV><SPAN class=785323422-28072004><FONT face=Arial color=#0000ff       size=2>Hello Bill,</FONT></SPAN></DIV>      <DIV><SPAN class=785323422-28072004>    <FONT face=Arial       color=#0000ff size=2>Attached is a small program that I used with my       PNA.   It works fine, but the only problem I ran into is I can't       do SPOLL of the *OPC when using SCPI over lan, so when you look inside the       "wait_for_OPC" command, you will see me using "*STB?" to get the status       byte.  I do this so that I don't have to set a timeout on the       I/O.  If you are trying to get data really fast (less than 100msec       between sweeps) it is better to use *OPC? and read back right away.        I've done that as well it it seems to work fine too.  This is from a       preset NA, so the triggering is set to internal, continous before this       runs (hold is fine too, just don't have it in manual triggering).        I've also read the data back, using text format.</FONT></SPAN></DIV>      <DIV><SPAN class=785323422-28072004><FONT face=Arial color=#0000ff       size=2></FONT></SPAN> </DIV>      <DIV><SPAN class=785323422-28072004><FONT face=Arial color=#0000ff       size=2>Joel</DIV>      <DIV><BR></DIV></FONT></SPAN>      <BLOCKQUOTE>        <DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma         size=2>-----Original Message-----<BR><B>From:</B> Drago, William         @NARDAEAST []<BR><B>Sent:</B> Saturday,         July 24, 2004 12:11 PM<BR><B>To:</B> VRF<BR><B>Subject:</B> [vrf] E8361A         - Wait until Avg is complete<BR><BR></FONT></DIV>        <P><FONT size=2>All,</FONT> </P>        <P><FONT size=2>I am working with an Agilent E8361A PNA.</FONT> </P>        <P><FONT size=2>I would like the PNA to not give me any data until all         the averaging has finished.</FONT> </P>        <P><FONT size=2>I'd be grateful if someone could fill in the blanks as I         am almost dead from working on this:</FONT> </P>        <P><FONT size=2>WRITE TEXT "SENSe1:AVERage:COUNt 8"</FONT> <BR><FONT         size=2>WRITE TEXT "sense1:average:state on"</FONT> <BR><FONT         size=2>WRITE TEXT "SENSe1:AVERage:CLEar"</FONT> </P>        <P><FONT size=2> What goes here?</FONT> </P>        <P><FONT size=2>WRITE TEXT "CALCulate1:DATA? FDATA"</FONT> <BR><FONT         size=2>READ TEXT x REAL64 ARRAY:1601</FONT> </P><BR>        <P><FONT size=2>I've tried every combination of *OPC?, *WAI, INIT:IMMED,         SWEEP:GROUPS, etc... with no success.</FONT> <BR><FONT size=2>The PNA         either returns data before averaging is finished, or does 1 sweep and         then stops.</FONT> </P>        <P><FONT size=2>Thanks in advance,</FONT> <BR><FONT size=2>Bill         Drago</FONT> </P><BR>---<BR>You are currently subscribed to vrf as:<BR>To subscribe send a blank email to         "".<BR>To unsubscribe send a blank email         to "".<BR>To send messages to this         mailing list, email "". <BR>If you need help with the         mailing list send a message to "".       </BLOCKQUOTE></BLOCKQUOTE>---<BR>You are currently subscribed to vrf as:<BR>To subscribe send a blank email to     "".<BR>To unsubscribe send a blank email to     "".<BR>To send messages to this mailing     list, email "". <BR>If you need help with the mailing list     send a message to "". </BLOCKQUOTE>---<BR>You   are currently subscribed to vrf as:<BR>To subscribe   send a blank email to "".<BR>To unsubscribe   send a blank email to "".<BR>To send messages   to this mailing list, email "". <BR>If you need help with the   mailing list send a message to "". </BLOCKQUOTE>---<BR>You are currently subscribed to vrf as:<BR>To subscribe send a blank email to "".<BR>To unsubscribe send a blank email to "".<BR>To send messages to this mailing list,  email "".  <BR>If you need help with the mailing list send a message to "".</BODY></HTML>