EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: GPIB - asyn - streamdevice
From: "Szalata, Zenon M." <[email protected]>
To: "EPICS Techtalk" <[email protected]>
Date: Fri, 31 Oct 2008 09:05:41 -0700
I have two GPIB instruments attached to ICS 8065 Ethernet - GPIB Controller (according to the manual this device is a replacement for the Agilent E2050 and E5810).  I have written two soft IOC's to control and monitor two instruments (one is Agilent 33220A Waveform Generator, the other is Boonton 4500B RF Peak Power Analyzer).  Both IOC programs use epics R3-14-9, asyn R4-9, and streamdevice R2-3.  The 33220A IOC has a records with SCAN="1 second", which reads the status byte.  The 4500B IOC has a waveform record with SCAN="5 second", which is used to read waveform data, a stream of ASCII coded floating point values.  The waveform consists of 500 data points.  This stream of data is converted to floating point data in a genSub record.

The 4500B IOC program performs flawlessly when it is the only one running.  When the 33220A IOC program is also running, the waveform data read by the 4500B IOC gets corrupted from time to time.  I interpret what is happening as follows: while the waveform data is being read, the other IOC program requests a status byte and somehow these two concurrent operations interfere with each other.  How can I solve this?  Is it possible to make reading the waveform an atomic operation (i.e. uninterruptable)?

I am using the following streamdevice protocol for reading the waveform:
rTDCh12{ InTerminator="";  out "TRAC:SOUR CH\$1;:TRAC\$1:INDEX 1;:TRAC\$1:AVER:DATA?"; in "%10000c";}

Any suggestions will be greatly appreciated.

Zen


Replies:
Re: GPIB - asyn - streamdevice Eric Norum
Re: GPIB - asyn - streamdevice Dirk Zimoch

Navigate by Date:
Prev: Re: Generating an IOC with SEQ logic in it. Andrew Johnson
Next: Re: GPIB - asyn - streamdevice Eric Norum
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Generating an IOC with SEQ logic in it. Andrew Johnson
Next: Re: GPIB - asyn - streamdevice Eric Norum
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·