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  2008  2009  2010  2011  2012  <20132014  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  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Hardware simulator
From: "Steiner, Mathias" <[email protected]>
To: Pavel Maslov <[email protected]>, EPICS Tech Talk <[email protected]>
Date: Thu, 29 Aug 2013 12:40:43 +0000
Pavel,

This may be different than what you're looking for but..
I've found it helpful to have simulated power supplies with which to play before the real things are installed.

I've attached them below on the off-chance that they could be useful to someone.
Four records per PS provide "command set", "readback of set point", "readback of actual current", plus a helper calcout for ramping and noise.

Cheers -Mathias



# simulated power supply records for quadrupole magnets
record(ao, "$(sys)_$(sub):$(psnam)_$(inst):I_CSET")
{
  field(DESC, "magnet power supply")
  field(EGU,  "A")
  field(PREC, "1")
  field(VAL,  "0.0")
}
record(calc, "$(sys)_$(sub):$(psnam)_$(inst):I_RSET")
{
  field(DESC, "simulated p/s set pt")
  field(EGU,  "A")
  field(PREC, "1")
  field(INPA, "$(sys)_$(sub):$(psnam)_$(inst):I_CSET PP NMS")
  field(CALC,  "A")
}
record(ai, "$(sys)_$(sub):$(psnam)_$(inst):I_RD")
{
  field(DESC, "magnet power supply")
  field(EGU,  "A")
  field(PREC, "1")
  field(VAL,   "0.0")
}
record(calcout, "$(sys)_$(sub):$(psnam)_$(inst):I_LAG")
{
  field(DESC, "co mimics ramping ps")
  field(EGU,  "A")
  field(PREC, "4")
  field(INPA, "$(sys)_$(sub):$(psnam)_$(inst):I_CSET PP NMS")
  field(INPB, "$(sys)_$(sub):$(psnam)_$(inst):I_RD PP NMS")
  field(C,    "5") # this determines how fast the p/s ramps..
  field(CALC,  "ABS(A-B)>C?B+(A-B)/ABS(A-B)*C:A+RNDM-.5")
#               1234567890123456789B123456789C123456789D  beware the 40char(?) limit             
  field(DOPT, "Use CALC")
  field(OUT,   "$(sys)_$(sub):$(psnam)_$(inst):I_RD PP NMS")
  field(SCAN, "1 second")
  field(PINI, "1")
  field(FLNK, "$(sys)_$(sub):$(psnam)_$(inst):I_RSET.PROC")
}






Replies:
Re: Hardware simulator Pavel Maslov

Navigate by Date:
Prev: Hardware simulator Pavel Maslov
Next: Re: epicsThread Vikram Bhagat
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Hardware simulator austen.rose
Next: Re: Hardware simulator Pavel Maslov
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·