EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

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

Subject: Re: Analogue output simulation link SIOL
From: [email protected] (Nick Rees)
To: [email protected]
Date: Wed, 27 Sep 95 14:30:12 HST
A little while ago Rozelle suggested:

> There are other problems with the Capfast symbols which could be fixed if
> someone wanted to take on the job of doing so.
> It might be useful to open up a discussion of what fixes are actually needed.

...

> Problems I have seen with the most commonly used symbols are:
> 1.  OUT and INP fields are defined as typ VAL.  This generates an error from
> e2sr which clutters up the output so that real errors can be missed.
> This was done because the default value for the OUT or INP field is a hardware address.
> However, if you set the typ to PATH, it doesn't complain and you can tell when
> you get a real error.
> 
> 2.  Problems with SIOL as mentioned above.
> 
> 3.  The VAL port for a PID record should be an input port rather than an output port.
> (Actually the VAL port for the Ao and Bo record is most logically an input port)
> 
> A work around for all of these problems is to make changes in the instances of the
> symbols used for your particular schematic.  Even the last one.  Capfast seems
> to see no problem in having a user defined input port called VAL as well as an output
> port with that name.

I have been doing my first real work with Capfast (the new Motif
version), and what I have done is:

1. Developed a new set of Motif style menus for Capfast. The basis for
   this was the menus delivered with the Microsoft Windows version of
   Capfast (which Phase 3 gave me on demo once). We have been using these,
   plus the Beta release of the native Solaris version of Capfast 
   for some time now with much success.

2. Developed a basic property rules file for Epics.

3. Replaced the dfan symbol that is delivered with a new one. The one
   that is delivered bears little resemblance to the one in the
   distribution - presumably it is a historical artefact.

4. Made SIOL an output link on the relevant records.

5. Developed a shell script which goes through a list of *.sym files and
   used it on my epics symbols. It does the following:

   a. Made NPP/PP and NMS/MS visible in a small font adjacent to all ports
      that are links (i.e. have pproc() and palrm() properties). I find
      this valuable since it tells me which ports are links and also helps
      decode the database logic.

   b. Made all typ() properties except those in hwinput and hwoutput
      symbols default to path, rather than val. I have not found a use for
      val except for the hardware I/O symbols.

   c. Removed all typ(U?) properties. In my experience most links are
      already on the symbols and so user defined ports tend to be record
      fields. The presence of these typ(U?) properties (but no ppalrm and
      pproc properties) caused a number of warnings and resulted in me 
      posting a question to the exploder a little while back.

   d. Arranged all the port names in a uniform way (centred on the port
      leads, and just above them)


I think this deals with all of Rozelle's points except for I/O problems
on the VAL field. In fact, all ports which are field references should
be defined to be bi-directional ports, not input or output, since only
links have a direction associated with them. I don't mind having the
VAL field on the RHS of the symbol - even now if you connect a OUTLINK
to it it will push data into it (despite it being a Capfast output
port). With my new symbols I just tell people that if there isn't NPP/NMS
next to the port then it is a field reference and so is bi-directional.

Comments, suggestions anyone?

Nick Rees

Joint Astronomy Centre                    Ph:       +1 (808) 961-3756
660 N. Aohoku Place                       Fax:      +1 (808) 961-6516
Hilo, HI.  96720                          Internet: [email protected]


Navigate by Date:
Prev: Epics Release R3.12.2 Marty Kraimer
Next: Re: Q: NI-1014 GPIB board with Force CPU40. Noboru Yamamoto
Index: 1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Analogue output simulation link SIOL Nick Rees
Next: dbGet() problem and exception vector table question William Lupton
Index: 1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·