EPICS: Software IOC for CAEN HV: Difference between revisions

From CLONWiki
Jump to navigation Jump to search
Boiarino (talk | contribs)
Boiarino (talk | contribs)
Line 5: Line 5:
Old CAEN SY527 HV system is used in Drift Chamber (3 mainframes, IOC in ''dccntrl'' VME crate) and in Large Angle Calorimater (4 mainframes, IOC in ''camac2'' VME crate). IOC source code is located in ''$BASEB/src/iocsy527App/'', boot scripts in ''$IOC/dccntrl'' and ''$IOC/camac2''.
Old CAEN SY527 HV system is used in Drift Chamber (3 mainframes, IOC in ''dccntrl'' VME crate) and in Large Angle Calorimater (4 mainframes, IOC in ''camac2'' VME crate). IOC source code is located in ''$BASEB/src/iocsy527App/'', boot scripts in ''$IOC/dccntrl'' and ''$IOC/camac2''.


Drift Chamber HV system originally was not under EPICS, it was controlled by ''dchv'' software (UNIX and VXWORKS componants) written by Vardan Gurjyan. New system deployed in January 2009 includes both original ''dchv'' and new EPICS functionality. ''Dchv'' UNIX components are located in ''$CLON/src/dchv/''. ''Dchv'' VxWorks components were moved to ''$BASEB/src/iocsy527App/src'', modified and placed into two files: v288.c contains low level hardware-controlling  functions and SY1527-like wrapper calls, while ''dchv.c'' contains support for ''dchv'' UNIX components.
Drift Chamber HV system originally was not under EPICS, it was controlled by ''dchv'' software (UNIX and VxWorks components) written by Vardan Gurjyan. New system deployed in January 2009 includes both original ''dchv'' and new EPICS functionality. ''Dchv'' UNIX components are located in ''$CLON/src/dchv/''. ''Dchv'' VxWorks components were moved to ''$BASEB/src/iocsy527App/src'', modified and placed into two files: v288.c contains low level hardware-controlling  functions and SY1527-like wrapper calls, while ''dchv.c'' contains support for ''dchv'' UNIX components.


== SY1527 ==
== SY1527 ==

Revision as of 21:55, 24 January 2009

Term software IOC is used to distinguish UNIX-based IOC from VXWORKS-based one. In case of CAEN HV that classification is not quite accurate. Originally EPICS support in CLAS was provided for new CAEN SY1527 mainframes, it was UNIX-based IOC talking to mainframes over TCP connection. Later that software was ported to VxWorks and adopted to control old CAEN SY527 mainframes over VME V288 CAENET controller.

SY527

Old CAEN SY527 HV system is used in Drift Chamber (3 mainframes, IOC in dccntrl VME crate) and in Large Angle Calorimater (4 mainframes, IOC in camac2 VME crate). IOC source code is located in $BASEB/src/iocsy527App/, boot scripts in $IOC/dccntrl and $IOC/camac2.

Drift Chamber HV system originally was not under EPICS, it was controlled by dchv software (UNIX and VxWorks components) written by Vardan Gurjyan. New system deployed in January 2009 includes both original dchv and new EPICS functionality. Dchv UNIX components are located in $CLON/src/dchv/. Dchv VxWorks components were moved to $BASEB/src/iocsy527App/src, modified and placed into two files: v288.c contains low level hardware-controlling functions and SY1527-like wrapper calls, while dchv.c contains support for dchv UNIX components.

SY1527

To start IOC:

 cd $BASEB/src/CAEN_HV/IocShell/
 ./startup.all

Contents of 'startup.all' for references:

 #!/usr/local/clas/devel/R3.14.8.2/EPICS/baseB/bin/linux-x86/ioccaen
 #
 #  startup.all test for linux ioc
 #
 < envPaths
 #
 cd ${TOP}
 #
 dbLoadDatabase("src/CAEN_HV/IocShell/O.Common/ioccaen.dbd",0,0)
 ioccaen_registerRecordDeviceDriver(pdbbase)
 Init_CAEN()
 Start_CAEN(1,"129.57.69.101")
 #
 dbLoadRecords("src/CAEN_HV/IocShell/caen_01.db")
 #
 iocInit()
 #
 # end of linux ioc startup script

Contents of 'envPaths' (for references):

 epicsEnvSet(ARCH,"linux-x86")
 epicsEnvSet(IOC,"CAEN_HV")
 epicsEnvSet(TOP,"/usr/local/clas/devel/R3.14.8.2/EPICS/baseB")