############################################################################## ## Example: Configuraftion for running ecmc motion plugin ############################################################################## ## Initiation: epicsEnvSet("IOC" ,"$(IOC="IOC_TEST")") epicsEnvSet("SCRIPTEXEC" ,"$(SCRIPTEXEC="iocshLoad")") require ecmccfg "9.0.1_RC1" # run module startup.cmd (only needed at ESS PSI auto call at require) $(ECMCCFG_INIT="")$(SCRIPTEXEC) ${ecmccfg_DIR}startup.cmd, "IOC=$(IOC),ECMC_VER=v9.0.1_RC1, EC_RATE=500" ############################################################################## ## Configure hardware epicsEnvSet("ECMC_EC_SLAVE_NUM", "1") ${SCRIPTEXEC} ${ecmccfg_DIR}configureSlave.cmd, "SLAVE_ID=$(ECMC_EC_SLAVE_NUM), HW_DESC=EL7031, CONFIG=-Motor-Trinamic-QMot-QSH4218-41-10-035" epicsEnvSet("DRV_ID", "${ECMC_EC_SLAVE_NUM}") ${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL2819" epicsEnvSet("DO_ID", "${ECMC_EC_SLAVE_NUM}") # Configure drv input 1 as drv enable ecmcConfigOrDie "Cfg.EcAddSdo(${DRV_ID},0x8012,0x32,1,1)" OK # Control external drv enable ecmcConfigOrDie "Cfg.WriteEcEntryIDString(${DO_ID},binaryOutput02,1)" #Apply hardware configuration ecmcConfigOrDie "Cfg.EcApplyConfig(1)" ############################################################################## ## AXIS 1 # epicsEnvSet("DEV", "$(IOC)") $(SCRIPTEXEC) ($(ecmccfg_DIR)configureAxis.cmd, CONFIG=./cfg/el7031.ax) ############################################################################## ## Load plugin: MOTION # epicsEnvSet(ECMC_PLUGIN_CONFIG,"PLUGIN_ID=1,AX=1,BUFF_SIZE=200,DBG=0,ENA=1") require ecmc_plugin_motion master ${ECMC_PLUGIN_CONFIG} # below needed at ESS but not PSI: ${SCRIPTEXEC} ${ecmc_plugin_motion_DIR}startup.cmd "${ECMC_PLUGIN_CONFIG}" ############################################################################## ############# Configure diagnostics: ecmcConfigOrDie "Cfg.EcSetDiagnostics(1)" ecmcConfigOrDie "Cfg.EcEnablePrintouts(0)" ecmcConfigOrDie "Cfg.EcSetDomainFailedCyclesLimit(100)" ecmcConfigOrDie "Cfg.SetDiagAxisIndex(1)" ecmcConfigOrDie "Cfg.SetDiagAxisFreq(2)" ecmcConfigOrDie "Cfg.SetDiagAxisEnable(0)" ############################################################################## ############# go active: $(SCRIPTEXEC) ($(ecmccfg_DIR)setAppMode.cmd) iocInit dbl > pvs.log