Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020 
<== Date ==> <== Thread ==>

Subject: genSub
From: "Szalata, Zenon M." <zms@slac.stanford.edu>
To: "EPICS tech-talk" <tech-talk@aps.anl.gov>
Date: Sun, 14 Oct 2007 15:31:01 -0700
I have successfully put together a soft IOC which consists of a number "Soft Channel" type of records.  These are mostly longin, one ot two bo and mbbo, and one genSub.  In the edm companion for this IOC, I have a number of text controls to put new values into all the records with the exception of the genSub record.  There is a Message Button in the edm program which is used to trigger processing of the genSub record,  When genSub is processed it takes the values from all the other records, performs some calculations, creates a string of numeric values and prints the results.  All works fine.
Next step in the evolution of this learning exercise is to output the calculated result to a GPIB CAMAC crate controller (in this case KS3988).  I do not know how to do that.
I am using asyn.
1. genSub is not part of EPICS nor asyn.  There is no DSET_xx type of definition
   for it that I can find. 
2. In my case I do not need a gpibCmd for it, but it seems to me that I need to
   have the device( genSub, GPIB_IO, devyyxxxx, "XXXXX") statement, so that I can
   specify that the output is GPIB_IO...
What do I need to do to accomplish that?
I have tried a few combinations and either the IOC generates a linking error or crashes with segmentation fault when the IOC is initialized.  I guess, I need an example showing how to do that.  I see in "myExample" (chapter 2 in EPICS IOC Application Developer's Guide) how to add a use defined "Soft Channel" type record.

Once I overcome the previous difficulty, I think I will have another problem to solve.  This is what I am worried about.
1. When I send a certain combination of numberic values to KS3988, it should be
   ready to return some data.  That is, sending it some sequence of numbers
   prepares the crate controller to return some numeric results.
2. I am thinking to have a forward link in the genSub record to a waveform record
   which would be setup to read from the GPIB controller.  Is it guaranteed that
   the waveform record is processed after the genSub record has sent the command
   bytes to the controller?  If not, what should I do to assure properly timed
   execution of the two records?
Many thanks in advance,
Zen


Replies:
Re: genSub Tim Mooney

Navigate by Date:
Prev: Re: fedora core 7 medm (was >> Re: MEDM compile - update :) Mauro Giacchini
Next: Re: genSub Tim Mooney
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020 
Navigate by Thread:
Prev: Re: fedora core 7 medm (was >> Re: MEDM compile - update :) Robert Soliday
Next: Re: genSub Tim Mooney
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020 
ANJ, 10 Nov 2011 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·