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: Re: A db question about aiExample
From: Ned Arnold <[email protected]>
To: marco_hair <[email protected]>
Cc: tech-talk <[email protected]>
Date: Thu, 20 Nov 2008 08:49:37 -0600
Geyang -

Changing the definition of the calc record to this (only the CALC and INPB field are different) will give you the desired result:

record(calc, "$(user):calcExample")
{
        field(DESC, "Counter")
        field(SCAN,"1 second")
        field(FLNK, "$(user):aiExample")
        field(CALC, "A-B>0?A=9?8:A+1:A=0?1:A-1")
        field(INPA, "$(user):calcExample.VAL  NPP NMS")
        field(INPB, "$(user):calcExample.LA NPP NMS")
        field(EGU, "Counts")
        field(HOPR, "10")
        field(HIHI, "8")
        field(HIGH, "6")
        field(LOW, "4")
        field(LOLO, "2")
        field(HHSV, "MAJOR")
        field(HSV, "MINOR")
        field(LSV, "MINOR")
        field(LLSV, "MAJOR")
}

   Ned



On Nov 20, 2008, at 4:57 AM, marco_hair wrote:

Dear all:

  in the aiExample.db coming with soft ioc template, 
record(ai, "$(user):aiExample")
{
field(DESC, "Analog input")
field(INP, "$(user):calcExample.VAL  NPP NMS")
field(EGUF, "10")
field(EGU, "Counts")
field(HOPR, "10")
field(LOPR, "0")
field(HIHI, "8")
field(HIGH, "6")
field(LOW, "4")
field(LOLO, "2")
field(HHSV, "MAJOR")
field(HSV, "MINOR")
field(LSV, "MINOR")
field(LLSV, "MAJOR")
}
record(calc, "$(user):calcExample")
{
field(DESC, "Counter")
field(SCAN,"1 second")
field(FLNK, "$(user):aiExample")
field(CALC, "(A<B)?(A+C):D")
field(INPA, "$(user):calcExample.VAL  NPP NMS")
field(INPB, "9")
field(INPC, "1")
field(INPD, "0")
field(EGU, "Counts")
field(HOPR, "10")
field(HIHI, "8")
field(HIGH, "6")
field(LOW, "4")
field(LOLO, "2")
field(HHSV, "MAJOR")
field(HSV, "MINOR")
field(LSV, "MINOR")
field(LLSV, "MAJOR")
}
the ai value will change from 0-9 and then loop from 0 again.
if I want to generate the value from 0-9, then decrease it, such as 9-0. That is, the value increase from 0-9, then decrease from 9-0 one by one, how can I written it?
Thanks a lot for your help.

Best wishes
Geyang 2008/11/20


[广告] 金秋最关注楼盘-房不胜房


Replies:
Re: Re: A db question about aiExample Silver
References:
A db question about aiExample marco_hair

Navigate by Date:
Prev: Re: A db question about aiExample Benjamin Franksen
Next: Re: USE of CA lib: problem using ca_array_put_callback with strings haquin
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: A db question about aiExample Benjamin Franksen
Next: Re: Re: A db question about aiExample Silver
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 ·