Experimental Physics and Industrial Control System
Dear Han,
I does not know our correct model type but Genesys series using SCPI commands
via Ethernet/IP.
In st.cmd it looks like
——— schnipp schnapp ———
epicsEnvSet LAMBDA01_INET 10.0.0.71:8003
epicsEnvSet LAMBDA01_LINK L01
drvAsynIPPortConfigure ${LAMBDA01_LINK} ${LAMBDA01_INET} 0 0 0
dbLoadRecords db/LambdaPS.db
——— schnipp schnapp ———
The db - file (from Ralph ;-) :
#
# Database and stream protocol file for TDK-Lambda Genesys
#
# P = record name prefix PS1
# PORT = stream device port L0
# DESC = description Focusing Quad
# MAX_U = maximum voltage 1
# MAX_I = maximum current 1
# MAX_P = maximum power 200
# MAX_R = maximum resistance 5
# PREC_U = precision for voltage 3
# PREC_I = precision for current 3
# OROC = oroc (100ms) for current 0.25
# ASTAG = name of as info structure autosaveFields
record(waveform, "DC01CP:M_Idn")
{
field(DESC, "Get id string")
field(DTYP, "stream")
field(INP, "@Lambda.proto getStr(*IDN,99) L01")
field(PINI, "YES")
field(FTVL, "CHAR")
field(NELM, "100")
}
record(stringin, "DC01CP:C_Desc")
{
field(VAL, "Chicane Dipole DC01C")
}
record(bo, "DC01CP:S_Reset")
{
field(DESC, "Device Reset")
field(DTYP, "stream")
field(OUT, "@Lambda.proto cmd(*RST) L01")
}
record(bo, "DC01CP:S_ClrStat")
{
field(DESC, "Clear status")
field(DTYP, "stream")
field(OUT, "@Lambda.proto cmd(*CLS) L01")
}
record(bo, "DC01CP:S_SaveSett")
{
field(DESC, "Save settings")
field(DTYP, "stream")
field(OUT, "@Lambda.proto cmd(*SAV\_0) L01")
}
record(bo, "DC01CP:R_RclSett")
{
field(DESC, "Recall settings")
field(DTYP, "stream")
field(OUT, "@Lambda.proto cmd(*RCL\_0) L01")
}
record(ao, "DC01CP:S_VoltMax")
{
field(DESC, "Set maximum voltage")
field(DTYP, "stream")
field(DRVH, "30")
field(HOPR, "30")
field(PREC, "3")
field(EGU, "V")
field(OUT, "@Lambda.proto setF(SOUR:VOLT:PROT:LEV) L01")
field(FLNK, "DC01CP:R_VoltMax")
field(DOL, "30")
info(autosaveFields_pass0,"VAL")
}
record(ai, "DC01CP:R_VoltMax")
{
field(DESC, "Rdbk maximum voltage")
field(DTYP, "stream")
field(HOPR, "30")
field(PREC, "3")
field(EGU, "V")
field(INP, "@Lambda.proto getF(SOUR:VOLT:PROT:LEV) L01")
}
record(ao, "DC01CP:S_Volt")
{
field(DESC, "Set voltage")
field(DTYP, "stream")
field(DRVH, "30")
field(HOPR, "30")
field(PREC, "3")
field(EGU, "V")
field(OUT, "@Lambda.proto setF(SOUR:VOLT) L01")
field(FLNK, "DC01CP:R_Volt")
info(autosaveFields_pass0,"VAL")
}
record(ai, "DC01CP:R_Volt")
{
field(DESC, "Rdbk voltage")
field(DTYP, "stream")
field(HOPR, "30")
field(PREC, "3")
field(EGU, "V")
field(INP, "@Lambda.proto getF(SOUR:VOLT) L01")
}
record(ai, "DC01CP:M_Volt")
{
field(DESC, "Measured voltage")
field(DTYP, "stream")
field(HOPR, "30")
field(PREC, "3")
field(EGU, "V")
field(INP, "@Lambda.proto getF(MEAS:VOLT) L01")
field(SCAN, ".2 second")
}
record(ao, "DC01CP:S_Curr")
{
field(DESC, "Set current")
field(DTYP, "stream")
field(DRVH, "30")
field(HOPR, "30")
field(PREC, "3")
field(OROC, "0.6")
field(EGU, "A")
field(OUT, "@Lambda.proto setF(SOUR:CURR) L01")
field(FLNK, "DC01CP:R_Curr")
info(autosaveFields_pass0,"VAL OROC")
}
record(calcout, "DC01CP:C_CurrRamp") {
field(DESC, "Current ROC ramp")
field(INPA, "DC01CP:S_Curr.VAL CP")
field(INPB, "DC01CP:S_Curr.OVAL CP")
field(CALC, "A=B?0:9")
field(OOPT, "On Change")
field(OUT, "DC01CP:S_Curr.SCAN")
}
record(ai, "DC01CP:R_Curr")
{
field(DESC, "Rdbk current")
field(DTYP, "stream")
field(HOPR, "30")
field(PREC, "3")
field(EGU, "A")
field(INP, "@Lambda.proto getF(SOUR:CURR) L01")
}
record(ai, "DC01CP:M_Curr")
{
field(DESC, "Measured current")
field(DTYP, "stream")
field(HOPR, "30")
field(PREC, "3")
field(EGU, "A")
field(INP, "@Lambda.proto getF(MEAS:CURR) L01")
field(SCAN, ".2 second")
}
record(bo, "DC01CP:S_OutputSw")
{
field(DESC, "Set output switch")
field(DTYP, "stream")
field(OUT, "@Lambda.proto setOffOn(OUTP:STAT) L01")
field(ZNAM, "off")
field(ONAM, "on")
field(FLNK, "DC01CP:R_OutputSw")
info(autosaveFields_pass0,"VAL")
}
record(calc, "DC01CP:M_Power")
{
field(DESC, "Measured power")
field(INPA, "DC01CP:M_Curr CP MS")
field(INPB, "DC01CP:M_Volt CP MS")
field(CALC, "A*B")
field(HOPR, "900")
field(EGU, "W")
field(PREC, "2")
field(FLNK, "DC01CP:M_Resistance")
}
record(calc, "DC01CP:M_Resistance")
{
field(DESC, "Measured resistance")
field(INPA, "DC01CP:M_Curr NPP MS")
field(INPB, "DC01CP:M_Volt NPP MS")
field(CALC, "A>0.01?B/A:NaN")
field(HOPR, "5")
field(PREC, "3")
field(EGU, "Ω")
}
record(bi, "DC01CP:R_OutputSw")
{
field(DESC, "Get output switch")
field(DTYP, "stream")
field(INP, "@Lambda.proto getOffOn(OUTP:STAT) L01")
field(ZNAM, "off")
field(ZSV, "MAJOR")
field(ONAM, "on")
field(PINI, "YES")
}
record(mbbiDirect, "DC01CP:M_Status")
{
field(DESC, "Get status byte")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(*STB) L01")
field(SCAN, ".2 second")
}
record(mbbi, "DC01CP:M_Mode")
{
field(DESC, "Get mode")
field(DTYP, "stream")
field(INP, "@Lambda.proto getMod L01")
field(SCAN, ".2 second")
field(ZRST, "off")
field(ONST, "on (CV)")
field(TWST, "on (CC)")
}
record(calc, "DC01CP:C_SumPower")
{
field(DESC, "Power stat from mode")
field(INPA, "DC01CP:M_Mode CP MS")
field(CALC, "A!=0?1:0")
field(TSEL, "DC01CP:M_Mode.TIME CA")
field(FLNK, "DC01CP:M_SumPower")
}
record(bi, "DC01CP:M_SumPower")
{
field(DESC, "Power status")
field(ZNAM, "off")
field(ZSV, "MAJOR")
field(ONAM, "on")
field(INP, "DC01CP:C_SumPower NPP MS")
}
record(bi, "DC01CP:Stat:M_ErrEvQue")
{
field(DESC, "Error event queue")
field(ZNAM, "empty")
field(ONAM, "messages")
field(OSV, "MINOR")
field(INP, "DC01CP:M_Status.B2 CPP MS")
field(TSEL, "DC01CP:M_Status.TIME CP")
}
record(bi, "DC01CP:Stat:M_QuesSumm")
{
field(DESC, "Questionable summary")
field(ZNAM, "ok")
field(ONAM, "error")
field(OSV, "MAJOR")
field(INP, "DC01CP:M_Status.B3 CPP MS")
field(TSEL, "DC01CP:M_Status.TIME CP")
}
record(bi, "DC01CP:Stat:M_EventSumm")
{
field(DESC, "Event summary")
field(ZNAM, "ok")
field(ONAM, "error")
field(OSV, "MAJOR")
field(INP, "DC01CP:M_Status.B5 CPP MS")
field(TSEL, "DC01CP:M_Status.TIME CP")
}
record(bi, "DC01CP:Stat:M_OperSumm")
{
field(DESC, "Operation summary")
field(ZNAM, "ok")
field(ONAM, "error")
field(OSV, "MAJOR")
field(INP, "DC01CP:M_Status.B7 CPP MS")
field(TSEL, "DC01CP:M_Status.TIME CP")
}
record(calc, "DC01CP:C_SumError")
{
field(DESC, "Check for sum error")
field(INPA, "DC01CP:Stat:Ques:M_Cond CP MS")
field(CALC, "A>0?1:0")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
field(FLNK, "DC01CP:M_SumError")
}
record(bi, "DC01CP:M_SumError")
{
field(DESC, "Summary error")
field(INP, "DC01CP:C_SumError NPP MS")
field(ZNAM, "ok")
field(ONAM, "error")
field(OSV, "MAJOR")
}
record(mbbiDirect, "DC01CP:M_EvntStat")
{
field(DESC, "Get event status")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(*ESR) L01")
}
record(longout, "DC01CP:S_EvntStatEna")
{
field(DESC, "Set event status enable")
field(DTYP, "stream")
field(OUT, "@Lambda.proto setD(*ESE) L01")
field(FLNK, "DC01CP:R_EvntStatEna")
field(DOL, "65535")
}
record(longin, "DC01CP:R_EvntStatEna")
{
field(DESC, "Get event status enable")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(*ESE) L01")
}
#
# Store/Recall for one signal (set point)
#
# P = record name prefix PS1
# SNAME = signal name S_Volt
# PREC = precision db field 2
# EGU = engineering units field V
# ASTAG = name of as info structure autosaveFields
record(ai,"DC01CP:S_Volt:store") {
field(DESC,"Store S_Volt")
field(INP,"DC01CP:S_Volt NPP NMS")
field(PREC,"3")
field(EGU,"V")
info(autosaveFields_pass0,"VAL")
}
record(ao,"DC01CP:S_Volt:recall") {
field(DESC,"Recall S_Volt")
field(OUT,"DC01CP:S_Volt PP NMS")
field(DOL,"DC01CP:S_Volt:store NPP NMS")
field(OMSL,"closed_loop")
field(PREC,"3")
field(EGU,"V")
}
#
# Store/Recall for one signal (set point)
#
# P = record name prefix PS1
# SNAME = signal name S_Volt
# PREC = precision db field 2
# EGU = engineering units field V
# ASTAG = name of as info structure autosaveFields
record(ai,"DC01CP:S_Curr:store") {
field(DESC,"Store S_Curr")
field(INP,"DC01CP:S_Curr NPP NMS")
field(PREC,"3")
field(EGU,"A")
info(autosaveFields_pass0,"VAL")
}
record(ao,"DC01CP:S_Curr:recall") {
field(DESC,"Recall S_Curr")
field(OUT,"DC01CP:S_Curr PP NMS")
field(DOL,"DC01CP:S_Curr:store NPP NMS")
field(OMSL,"closed_loop")
field(PREC,"3")
field(EGU,"A")
}
# LambdaStatusRegisterSet.template
#
# One status register set for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# CHAN = PS channel 1
# TAG = short text for DESC Oper:Shut
# CMD = SCPI command prefix (w/o STAT:) OPER:SHUT
# PORT = stream device port L0
# MASK = bitmask (used bits) 65535
record(mbbiDirect, "DC01CP:Stat:Oper:M_Cond")
{
field(DESC, "Get Oper COND")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(STAT:OPER:COND) L01")
field(SCAN, ".2 second")
}
record(longin, "DC01CP:Stat:Oper:M_Event")
{
field(DESC, "Get Oper EVENT")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(STAT:OPER:EVEN) L01")
}
record(longin, "DC01CP:Stat:Oper:R_Enable")
{
field(DESC, "Get Oper ENABLE")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(STAT:OPER:ENAB) L01")
}
record(longout, "DC01CP:Stat:Oper:S_Enable")
{
field(DESC, "Set Oper ENABLE")
field(DTYP, "stream")
field(OUT, "@Lambda.proto setD(STAT:OPER:ENAB) L01")
field(FLNK, "DC01CP:Stat:Oper:R_Enable")
field(DOL, "65535")
}
record(fanout, "DC01CP:Stat:Oper:S_ReInit")
{
field(DESC, "Re-init Oper register set")
field(LNK1, "DC01CP:Stat:Oper:S_Enable")
field(LNK2, "DC01CP:Stat:Oper:M_Cond")
field(LNK3, "DC01CP:Stat:Oper:M_Event")
}
# LambdaStatusRegisterSet.template
#
# One status register set for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# CHAN = PS channel 1
# TAG = short text for DESC Oper:Shut
# CMD = SCPI command prefix (w/o STAT:) OPER:SHUT
# PORT = stream device port L0
# MASK = bitmask (used bits) 65535
record(mbbiDirect, "DC01CP:Stat:Ques:M_Cond")
{
field(DESC, "Get Ques COND")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(STAT:QUES:COND) L01")
field(SCAN, ".2 second")
}
record(longin, "DC01CP:Stat:Ques:M_Event")
{
field(DESC, "Get Ques EVENT")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(STAT:QUES:EVEN) L01")
}
record(longin, "DC01CP:Stat:Ques:R_Enable")
{
field(DESC, "Get Ques ENABLE")
field(DTYP, "stream")
field(INP, "@Lambda.proto getD(STAT:QUES:ENAB) L01")
}
record(longout, "DC01CP:Stat:Ques:S_Enable")
{
field(DESC, "Set Ques ENABLE")
field(DTYP, "stream")
field(OUT, "@Lambda.proto setD(STAT:QUES:ENAB) L01")
field(FLNK, "DC01CP:Stat:Ques:R_Enable")
field(DOL, "65535")
}
record(fanout, "DC01CP:Stat:Ques:S_ReInit")
{
field(DESC, "Re-init Ques register set")
field(LNK1, "DC01CP:Stat:Ques:S_Enable")
field(LNK2, "DC01CP:Stat:Ques:M_Cond")
field(LNK3, "DC01CP:Stat:Ques:M_Event")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Oper:M_CVMode")
{
field(DESC, "CV mode")
field(ZNAM, "off")
field(ONAM, "active")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Oper:M_Cond.B0 CP MS")
field(TSEL, "DC01CP:Stat:Oper:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Oper:M_CCMode")
{
field(DESC, "CC mode")
field(ZNAM, "off")
field(ONAM, "active")
field(ZSV, "MAJOR")
field(OSV, "NO_ALARM")
field(INP, "DC01CP:Stat:Oper:M_Cond.B1 CP MS")
field(TSEL, "DC01CP:Stat:Oper:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Oper:M_Fault")
{
field(DESC, "Fault")
field(ZNAM, "no fault")
field(ONAM, "fault")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Oper:M_Cond.B2 CP MS")
field(TSEL, "DC01CP:Stat:Oper:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Oper:M_ASMode")
{
field(DESC, "Auto start mode")
field(ZNAM, "inactive")
field(ONAM, "enabled")
field(ZSV, "NO_ALARM")
field(OSV, "NO_ALARM")
field(INP, "DC01CP:Stat:Oper:M_Cond.B4 CP MS")
field(TSEL, "DC01CP:Stat:Oper:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Oper:M_FBMode")
{
field(DESC, "Fold back mode")
field(ZNAM, "inactive")
field(ONAM, "enabled")
field(ZSV, "NO_ALARM")
field(OSV, "MINOR")
field(INP, "DC01CP:Stat:Oper:M_Cond.B5 CP MS")
field(TSEL, "DC01CP:Stat:Oper:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Oper:M_Access")
{
field(DESC, "Access mode")
field(ZNAM, "remote")
field(ONAM, "local")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Oper:M_Cond.B7 CP MS")
field(TSEL, "DC01CP:Stat:Oper:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_ACFail")
{
field(DESC, "AC power fail")
field(ZNAM, "ok")
field(ONAM, "tripped")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.B1 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_OverTemp")
{
field(DESC, "Overtemp")
field(ZNAM, "ok")
field(ONAM, "tripped")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.B2 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_FoldBack")
{
field(DESC, "FB protection")
field(ZNAM, "ok")
field(ONAM, "tripped")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.B3 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_OverVolt")
{
field(DESC, "OV protection")
field(ZNAM, "ok")
field(ONAM, "tripped")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.B4 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_ShutOff")
{
field(DESC, "Shut off")
field(ZNAM, "ok")
field(ONAM, "off")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.B5 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_OutpOff")
{
field(DESC, "Output off")
field(ZNAM, "ok")
field(ONAM, "off")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.B6 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_OutpEna")
{
field(DESC, "Output enable")
field(ZNAM, "ok")
field(ONAM, "tripped")
field(ZSV, "NO_ALARM")
field(OSV, "NO_ALARM")
field(INP, "DC01CP:Stat:Ques:M_Cond.B7 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_IntInpOvf")
{
field(DESC, "Int input overflow")
field(ZNAM, "ok")
field(ONAM, "tripped")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.B8 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_IntOvf")
{
field(DESC, "Internal overflow")
field(ZNAM, "ok")
field(ONAM, "tripped")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.B9 CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_IntTimeout")
{
field(DESC, "Int timeout")
field(ZNAM, "ok")
field(ONAM, "tripped")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.BA CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusBit.template
#
# One status bit for TDK-Lambda / SCPI
#
# PRE = register set name prefix PS1:Stat:OperShut
# SIG = signal name M_Output
# DESC = description Output
# ZNAM = string for 0 On
# ZSV = severity for 0 NO_ALARM
# ONAM = string for 1 Off
# OSV = severity for 1 MAJOR
# BIT = input bit field B3
record(bi, "DC01CP:Stat:Ques:M_IntCommErr")
{
field(DESC, "Int comm")
field(ZNAM, "ok")
field(ONAM, "error")
field(ZSV, "NO_ALARM")
field(OSV, "MAJOR")
field(INP, "DC01CP:Stat:Ques:M_Cond.BB CP MS")
field(TSEL, "DC01CP:Stat:Ques:M_Cond.TIME CA")
}
# LambdaStatusHierarchy.template
#
# One status hierarchy connection for TDK-Lambda / SCPI
#
# PRE = register set name prefix (upper) FRAME1:Stat:OperShut
# SIG = upper level signal M_Cond
# BIT = summary bit in the upper register B0
# TAG = unique tag (wrt upper) Prot
# P = register set name prefix (lower) PS1
# SET = register set name (lower) Stat:OperShutProt
record(calcout, "DC01CP:C_HierQues")
{
field(DESC, "Ques Hierarchy")
field(INPA, "DC01CP:M_Status.B3 CPP NMS")
field(CALC, "A")
field(OOPT, "Transition To Non-zero")
field(OUT, "DC01CP:C_FanQues.PROC")
}
record(fanout, "DC01CP:C_FanQues")
{
field(DESC, "Ques re-read")
field(LNK1, "DC01CP:Stat:Ques:M_Cond")
field(LNK2, "DC01CP:Stat:Ques:M_Event")
}
# LambdaStatusHierarchy.template
#
# One status hierarchy connection for TDK-Lambda / SCPI
#
# PRE = register set name prefix (upper) FRAME1:Stat:OperShut
# SIG = upper level signal M_Cond
# BIT = summary bit in the upper register B0
# TAG = unique tag (wrt upper) Prot
# P = register set name prefix (lower) PS1
# SET = register set name (lower) Stat:OperShutProt
record(calcout, "DC01CP:C_HierOper")
{
field(DESC, "Oper Hierarchy")
field(INPA, "DC01CP:M_Status.B7 CPP NMS")
field(CALC, "A")
field(OOPT, "Transition To Non-zero")
field(OUT, "DC01CP:C_FanOper.PROC")
}
record(fanout, "DC01CP:C_FanOper")
{
field(DESC, "Oper re-read")
field(LNK1, "DC01CP:Stat:Oper:M_Cond")
field(LNK2, "DC01CP:Stat:Oper:M_Event")
}
HTH,
Heinz
------------------------------------------------------------------------------
Fritz-Haber-Institut | Phone: (+49 30) 8413-4270
Heinz Junkes | Fax (G3+G4): (+49 30) 8413-5900
Faradayweg 4-6 |
D - 14195 Berlin | E-Mail: [email protected]
------------------------------------------------------------------------------
> On 5. Feb 2018, at 16:21, Jeong Han Lee <[email protected]> wrote:
>
> Hi
>
> Does anyone has the epics IOC for TDK Lamda Genesys GEN 5kW SERIES POWER SUPPLIES?
>
> I still doesn't know the exact model of the power supplies, which stakeholder would like to use. However, it could be similar with other models in the production category.
>
>
> Best,
> Han
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
- Replies:
- Re: TDK Lamda Genesys EPICS IOC Jeong Han Lee
- References:
- TDK Lamda Genesys EPICS IOC Jeong Han Lee
- Navigate by Date:
- Prev:
RE: AreaDetector repository inconsistent Mark Rivers
- Next:
Re: AreaDetector repository inconsistent J. Lewis Muir
- Index:
1994
1995
1996
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: TDK Lamda Genesys EPICS IOC Jeong Han Lee
- Next:
Re: TDK Lamda Genesys EPICS IOC Jeong Han Lee
- Index:
1994
1995
1996
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