This commit is contained in:
2026-08-27 14:00:58 +02:00
parent 707c9eb96c
commit 80a39f283b
+17 -5
View File
@@ -1,5 +1,5 @@
# Script used to control the FAT stage in closed-loop configuration with EL7062
require ecmccfg 11.0.8 "ENG_MODE=1, EC_RATE=500"
require ecmccfg 11.0.2 "ENG_MODE=1, ECMC_VER=v11.0.3_RC5, EC_RATE=500"
# MASTER_ID=0
require ecmccomp
@@ -15,8 +15,17 @@ ${SCRIPTEXEC} ${ecmccfg_DIR}applyComponent.cmd "COMP=Motor-Generic-2Phase-Stepp
${SCRIPTEXEC} ${ecmccfg_DIR}applyComponent.cmd "COMP=Drive-Generic-Ctrl-Params,CH_ID=1,MACROS='L_COIL_UH=3080,R_COIL_MOHM=2471,I_TI=12,I_KP=58,V_TI=150,V_KP=176,P_KP=10'"
epicsEnvSet(DRV_SID,${ECMC_EC_SLAVE_NUM})
# EL5042 channel 1, TR-Electronic LT140-S: SSI, 24-bit binary, 1 MHz, 9 V
epicsEnvSet(ECMC_SLAVE_RESET,false) # Override reset of EL5042
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "SLAVE_ID=2,HW_DESC=EL5042"
#- Shift away the 2 status bits (ST_BITS=26, OFF_BITS=2, total 28bits)
#${SCRIPTEXEC} ${ecmccfg_DIR}applyComponent.cmd "COMP=Encoder-Generic-SSI,CH_ID=1,MACROS=MT_BITS=0,ST_BITS=24,CLK_FRQ_KHZ=1000,CODING=0,OFF_BITS=0"
epicsEnvSet(ENC_SID,${ECMC_EC_SLAVE_NUM})
# -------------------------------------------------------------------------------------
# EL5042 Channel 1
# TR-Electronic LT140-S
# SSI / 24 bit / Binary / 1 MHz / 9 V
# -------------------------------------------------------------------------------------
# Disable status bits = TRUE
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x02,1,1)"
# CRC invert = TRUE
@@ -27,16 +36,19 @@ ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x11,0,4)"
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x12,90,1)"
# Clock frequency = 1 MHz
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x13,9,1)"
# Binary coding, 0 multiturn bits, 24 position bits, 0 offset bits, SSI mode
# Coding = Binary / Dual code
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x14,0,1)"
# Multiturn bits = 0
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x15,0,1)"
# Singleturn / position bits = 24
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x16,24,1)"
# Offset LSB bits = 0
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x17,0,1)"
#Mode = SSI
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8008,0x18,1,1)"
epicsEnvSet(ENC_SID,${ECMC_EC_SLAVE_NUM})
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlAxis.cmd, "FILE=./cfg/axis.yaml,DEV=${IOC},AX_NAME=M1,AXIS_ID=1,DRV_SID=${DRV_SID},ENC_SID=${ENC_SID},ENC_CH=01,BO_SID=${BO_SID}"
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlEnc.cmd, "FILE=./cfg/enc_open_loop.yaml,DEV=${IOC},DRV_SID=${DRV_SID}"
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlEnc.cmd, "FILE=./cfg/enc_open_loop.yaml,DEV=${IOC},ENC_SID=${DRV_SID}"
# PLC configuration
${SCRIPTEXEC} ${ecmccfg_DIR}loadPLCFile.cmd "FILE=./cfg/code.plc,SAMPLE_RATE_MS=500,PLC_MACROS='AX_ID=1'"