iocBoot/iocIOCINFRA/st.cmd
author Heinz Junkes <junkes@fhi-berlin.mpg.de>
Wed, 15 Jul 2020 08:12:22 +0200
changeset 2 320de4b4c9ee
parent 1 f6e1a4c75073
permissions -rwxr-xr-x
Add 2nd moxa XGS600 and TPG256

#!../../bin/linux-x86_64/IOCINFRA

#- You may have to change IOCINFRA to something else
#- everywhere it appears in this file

epicsEnvSet("ARCH","linux-x86_64")
epicsEnvSet("IOC","IOCINFRA")
epicsEnvSet("PATH","/opt/epics/BASE/epics-base/bin/linux-x86_64/")
epicsEnvSet("TOP","/epics/iocs/sys/infra")

#iocStat stuff on softIOCs
epicsEnvSet("ENGINEER","Heinz")
epicsEnvSet("LOCATION","trARPES")
epicsEnvSet("STARTUP","${TOP}")
epicsEnvSet("ST_CMD","st.cmd")

#not fully understood :-(
epicsEnvSet ("EPICS_CAS_INTF_ADDR_LIST","172.24.192.27")

< envPaths
epicsEnvSet "STREAM_PROTOCOL_PATH" "$(TOP)/db"

#used by autosave
epicsEnvSet ("LOG_DIR", "/epics/iocs/log")

cd "${TOP}"
epicsEnvSet "XGS-600_1" "_trarpes_vac_xgs600_1"
epicsEnvSet "XGS-600_2" "_trarpes_vac_xgs600_2"

## Register all support components
dbLoadDatabase "dbd/IOCINFRA.dbd"
IOCINFRA_registerRecordDeviceDriver pdbbase

## Load record instances
#dbLoadRecords("db/xxx.db","user=epics")

# Configure asyn communication port, first
drvAsynIPPortConfigure(${XGS-600_1}, "172.24.192.29:4001", 0, 0, 0 )
dbLoadTemplate("db/XGS600_1.substitutions", "LINK=${XGS-600_1}")
drvAsynIPPortConfigure(${XGS-600_2}, "172.24.192.32:4001", 0, 0, 0 )
dbLoadTemplate("db/XGS600_2.substitutions", "LINK=${XGS-600_2}")

# von 4kstm
epicsEnvSet MAXI_INET 172.24.192.32:4002
epicsEnvSet MAXI_LINK MAXI_01
drvAsynIPPortConfigure(${MAXI_LINK}, ${MAXI_INET}, 0, 0, 0)
dbLoadTemplate("db/maxigauge.sub")

#drvAsynIPPortConfigure("MOXA_2_2", "172.24.192.32:4002", 0, 0, 0)
#dbLoadRecords("db/TPG26x.db", "P=staticARPES:TPG256:CH, IFPRESSUR1=, IFPRESSUR2=, PORT=MOXA_2_2")

drvAsynIPPortConfigure("MOXA_2", "172.24.192.29:4002", 0, 0, 0)
#asynSetTraceIOMask("MOXA_2", -1, 0x2)
#asynSetTraceMask("MOXA_2", -1, 0x9)
dbLoadTemplate("db/SATECO_lakeshore.substitution")

drvAsynIPPortConfigure("MOXA_3", "172.24.192.29:4003", 0, 0, 0)
#asynSetTraceIOMask("MOXA_3", 0, 0x5)
#asynSetTraceMask("MOXA_3", 0, 0xB)
dbLoadRecords("db/TPG26x.db", "P=trARPES:PIC_PRE:, IFPRESSUR1=, IFPRESSUR2=, PORT=MOXA_3")

drvAsynIPPortConfigure("MOXA_4", "172.24.192.29:4004", 0, 0, 0)
#asynSetTraceIOMask("MOXA_4", 0, 0x2)
#asynSetTraceMask("MOXA_4", 0, 0x9)
dbLoadRecords "db/devKeithley6487.db", "P=trARPES:, R=Sample:, PORT=MOXA_4, A=-1,NELM=1000")

#drvAsynIPPortConfigure("MOXA_4", "172.24.192.29:4004", 0, 0, 0)
#asynOctetSetInputEos("MOXA_4",0,"\n")
#asynOctetSetOutputEos("MOXA_4",0,"\n")
#drvAsynKeithley648x("6485", "Keithley6485", "MOXA_4",0)
#asynSetTraceIOMask("MOXA_4", 0, 0x2)
#asynSetTraceMask("MOXA_4", 0, 0x9)
#dbLoadRecords("db/Keithley6485.db", "P=trARPES:, CA=Sample:, PORT=Keithley6485")


drvAsynIPPortConfigure("MOXA_5", "172.24.192.29:4005", 0, 0, 0)
dbLoadRecords("db/TPG26x.db", "P=trARPES:LL:, IFPRESSUR1=, IFPRESSUR2=#, PORT=MOXA_5")

drvAsynIPPortConfigure("MOXA_9", "172.24.192.29:4009", 0, 0, 0)
dbLoadRecords("db/TPG26x.db", "P=trARPES:HHG:, IFPRESSUR1=, IFPRESSUR2=#, PORT=MOXA_9")

drvAsynIPPortConfigure("MOXA_10", "172.24.192.29:4010", 0, 0, 0)
#asynSetTraceIOMask("MOXA_10", 0, 0x2)
#asynSetTraceMask("MOXA_10", 0, 0x9)
dbLoadRecords "db/devKeithley6487.db", "P=trARPES:, R=HHG:Diode:, PORT=MOXA_10, A=-1,NELM=1000")

drvAsynIPPortConfigure("MOXA_11", "172.24.192.29:4011", 0, 0, 0)
#asynSetTraceIOMask("MOXA_11", -1, 0x2)
#asynSetTraceMask("MOXA_11", -1, 0x9)
dbLoadTemplate("db/Bronkhorst.substitution")

dbLoadRecords "db/asynRecord.db", "P=trARPES,R=asyn,PORT=MOXA_4,ADDR=-1,OMAX=0,IMAX=0")

cd "${TOP}/iocBoot/${IOC}"
iocInit

################################################# Create autosave monitor sets

create_monitor_set("${IOC}_0.req", 5, "P=${IOC}:")
create_monitor_set("${IOC}_1.req", 30, "P=${IOC}:")

## Report Installed and Configured I/O-Hardware Information
dbior 0 1 > ${LOG_DIR}/Database/${IOC}.dbior
dbhcr     > ${LOG_DIR}/Database/${IOC}.dbhcr
dbl       > ${LOG_DIR}/Database/${IOC}.dbl

## Start any sequence programs
#seq sncxxx,"user=epics"

# Armcount returns INF as float, but is longout ???
dbpf "trARPES:Sample:ArmCount" 5 
dbpf "trARPES:HHG:Diode:ArmCount" 5