This commit is contained in:
2024-09-16 09:55:46 +02:00
parent 74b291a618
commit 73c5fd71b5
5 changed files with 24 additions and 33 deletions
@@ -2,17 +2,18 @@
axis:
id: 5
group: realAxes
mode: CSV
features:
allowSrcChangeWhenEnabled: true
epics:
name: TRYB
name: TR_LO
precision: 4
unit: mm
motorRecord:
enable: false
description: "Test Y Bottom"
description: "Low"
drive:
numerator: 10 # max velo in EGU/s
@@ -2,17 +2,18 @@
axis:
id: 6
group: realAxes
mode: CSV
features:
allowSrcChangeWhenEnabled: true
epics:
name: TRYT
name: TR_HI
precision: 4
unit: mm
motorRecord:
enable: false
description: "Test Y Top"
description: "Hi"
drive:
numerator: 10 # max velo in EGU/s
+2 -1
View File
@@ -1,5 +1,6 @@
axis:
id: ${AX_ID}
group: virtualAxes
type: end effector
epics:
@@ -8,7 +9,7 @@ epics:
unit: mm
motorRecord:
enable: false
description: "Center Y (Virtual)"
description: "Center (Virtual)"
encoder:
type: 1
+2 -1
View File
@@ -1,5 +1,6 @@
axis:
id: ${AX_ID}
group: virtualAxes
type: end effector
epics:
@@ -8,7 +9,7 @@ epics:
unit: mm
motorRecord:
enable: false
description: "Gap Y (Virtual)"
description: "Gap (Virtual)"
encoder:
type: 1
+14 -27
View File
@@ -1,5 +1,10 @@
require ecmccfg sandst_a,"ECMC_VER=sandst_a,MODE=NO_MR,ENG_MODE=1,EC_RATE=100"
#- Configuration scripts
require ecmccfg sandst_a,"ECMC_VER=sandst_a,ENG_MODE=1,EC_RATE=100"
#- Components
require ecmccomp
#- Syncronization
require ecmc_master_slave sandst_a
#- ############################################################################
@@ -42,13 +47,13 @@ ${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL1008"
# 0:7 - EL7041 1Ch Stepper
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL7041-0052"
${SCRIPTEXEC} ${ecmccomp_DIR}applyComponent.cmd "COMP=Motor-Generic-2Phase-Stepper,MACROS='I_MAX_MA=1000,I_STDBY_MA=500,U_NOM_MV=48000,R_COIL_MOHM=1230,STEPS=400'"
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlAxis.cmd, "FILE=cfg/axis_ax5_lower.yaml, DRV_SLAVE=${ECMC_EC_SLAVE_NUM}, ENC_SLAVE=${ECMC_EC_SLAVE_NUM}, ENC_CHANNEL=01"
${SCRIPTEXEC} ${ecmccomp_DIR}applyComponent.cmd "COMP=Motor-Generic-2Phase-Stepper,MACROS='I_MAX_MA=1000,I_STDBY_MA=500,U_NOM_MV=48000,R_COIL_MOHM=1230'"
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlAxis.cmd, "FILE=cfg/axis_ax5_LO.yaml, DRV_SLAVE=${ECMC_EC_SLAVE_NUM}, ENC_SLAVE=${ECMC_EC_SLAVE_NUM}, ENC_CHANNEL=01"
# 0:8 - EL7041 1Ch Stepper
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL7041-0052"
${SCRIPTEXEC} ${ecmccomp_DIR}applyComponent.cmd "COMP=Motor-Generic-2Phase-Stepper,MACROS='I_MAX_MA=1000,I_STDBY_MA=500,U_NOM_MV=48000,R_COIL_MOHM=1230,STEPS=400'"
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlAxis.cmd, "FILE=cfg/axis_ax6_upper.yaml, DRV_SLAVE=${ECMC_EC_SLAVE_NUM}, ENC_SLAVE=${ECMC_EC_SLAVE_NUM}, ENC_CHANNEL=01"
${SCRIPTEXEC} ${ecmccomp_DIR}applyComponent.cmd "COMP=Motor-Generic-2Phase-Stepper,MACROS='I_MAX_MA=1000,I_STDBY_MA=500,U_NOM_MV=48000,R_COIL_MOHM=1230'"
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlAxis.cmd, "FILE=cfg/axis_ax6_HI.yaml, DRV_SLAVE=${ECMC_EC_SLAVE_NUM}, ENC_SLAVE=${ECMC_EC_SLAVE_NUM}, ENC_CHANNEL=01"
# 0:9 - EL7041 1Ch Stepper
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL7041-0052"
@@ -56,39 +61,21 @@ ${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL7041-0052"
# 0:10 - EL7041 1Ch Stepper
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL7041-0052"
#- #################################################################
#- Virtual axes
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlAxis.cmd, "FILE=cfg/axis_vax5_YCEN.yaml, AX_ID=${AX_NUM=12}"
${SCRIPTEXEC} ${ecmccfg_DIR}loadYamlAxis.cmd, "FILE=cfg/axis_vax6_YGAP.yaml, AX_ID=${AX_NUM=13}"
#- #############################################################################
#- Y Direction -- Axis groupings in preparation for kinematics PLC
ecmcConfigOrDie "Cfg.AddAxisGroup(realAxesY)"
ecmcConfigOrDie "Cfg.AddAxisToGroupByName(5,realAxesY)"
ecmcConfigOrDie "Cfg.AddAxisToGroupByName(6,realAxesY)"
ecmcConfig "GetAxisGroupIndexByName(realAxesY)"
epicsEnvSet(GRP_ID_RAX,${ECMC_CONFIG_RETURN_VAL=0})
ecmcConfigOrDie "Cfg.AddAxisGroup(virtualAxesY)"
ecmcConfigOrDie "Cfg.AddAxisToGroupByName(12,virtualAxesY)"
ecmcConfigOrDie "Cfg.AddAxisToGroupByName(13,virtualAxesY)"
ecmcConfig "GetAxisGroupIndexByName(virtualAxesY)"
epicsEnvSet(GRP_ID_VAX,${ECMC_CONFIG_RETURN_VAL=0})
#- PLCs with inverse kinematics (note the INC var including dirs to search for include files)
${SCRIPTEXEC} ${ecmccfg_DIR}loadPLCFile.cmd, "FILE=./cfg/axis_main.plc, PLC_ID=1, INC=.:${ecmc_master_slave_DIR}, PLC_MACROS='PLC_ID=1, AX_CEN=12, AX_GAP=13, AX_LO=5, AX_HI=6, GRP_ID_RA=${GRP_ID_RAX}, GRP_ID_VA=${GRP_ID_VAX}'"
#- #################################################################
#- apply the configuration
${SCRIPTEXEC} ${ecmccfg_DIR}applyConfig.cmd
#- PLCs with inverse kinematics (note the INC var including dirs to search for include files)
#- The group ID:s configured in yaml are stored in GRP_<axis.group>_ID
${SCRIPTEXEC} ${ecmccfg_DIR}loadPLCFile.cmd, "FILE=./cfg/axis_main.plc, PLC_ID=1, INC=.:${ecmc_master_slave_DIR}, PLC_MACROS='PLC_ID=1, AX_CEN=12, AX_GAP=13, AX_LO=5, AX_HI=6, GRP_ID_RA=${GRP_realAxes_ID}, GRP_ID_VA=${GRP_virtualAxes_ID}'"
#- #################################################################
#- go active
${SCRIPTEXEC} ${ecmccfg_DIR}applyConfig.cmd
${SCRIPTEXEC} ${ecmccfg_DIR}setAppMode.cmd
#- #############################################################################
#- reset all errors
afterInit("ecmcConfigOrDie 'ControllerErrorReset()'")
ecmcConfigOrDie "Cfg.SetDiagAxisEnable(0)"