Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 867c9f6a06 | |||
| e6d5589df7 | |||
| 3eccabce12 | |||
| ffc0add235 | |||
| 520521e07c | |||
| 1cd2c32b2d | |||
| 7963eccabf |
@@ -2,12 +2,12 @@
|
|||||||
record(waveform,"$(P)DAQ-${Name}-DataAct"){
|
record(waveform,"$(P)DAQ-${Name}-DataAct"){
|
||||||
info(asyn:FIFO, "1000")
|
info(asyn:FIFO, "1000")
|
||||||
field(DESC, "Data")
|
field(DESC, "Data")
|
||||||
field(PINI, "1")
|
|
||||||
field(DTYP, "asynFloat64ArrayIn")
|
field(DTYP, "asynFloat64ArrayIn")
|
||||||
field(INP, "@asyn(${PORT},$(ADDR=0),$(TIMEOUT=1000))plugin.daq.${Name}.data")
|
field(INP, "@asyn(${PORT},$(ADDR=0),$(TIMEOUT=1000))plugin.daq.${Name}.data")
|
||||||
field(FTVL, "DOUBLE")
|
field(FTVL, "DOUBLE")
|
||||||
field(NELM, "${NELM}")
|
field(NELM, "${NELM}")
|
||||||
field(SCAN, "I/O Intr")
|
field(SCAN, "I/O Intr")
|
||||||
|
field(FLNK, "${FLNK=''}")
|
||||||
field(TSE, "0")
|
field(TSE, "0")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
record(ai,"$(P)DAQ-${Name}-CH${CH}-Type") {
|
record(ai,"$(P)DAQ-${Name}-CH${CH}-Type") {
|
||||||
field(DESC, "Channel Type")
|
field(DESC, "${DESC=}")
|
||||||
field(VAL, "${TYPE=0}")
|
field(VAL, "${TYPE=0}")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ OPT_CXXFLAGS_YES = -O3
|
|||||||
|
|
||||||
# dependencies
|
# dependencies
|
||||||
ECmasterECMC_VERSION = v1.1.0
|
ECmasterECMC_VERSION = v1.1.0
|
||||||
ecmc_VERSION = 9.4.0
|
ecmc_VERSION = 9
|
||||||
|
|
||||||
BASE_DIR = .
|
BASE_DIR = .
|
||||||
SRC_DIR = $(BASE_DIR)/src
|
SRC_DIR = $(BASE_DIR)/src
|
||||||
|
|||||||
@@ -49,40 +49,40 @@ epicsEnvSet(NAME,ToEdwin) # PREFIX:DAQ-ToEdwin-DataAct
|
|||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddArray.cmd, "NAME=${NAME}"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddArray.cmd, "NAME=${NAME}"
|
||||||
|
|
||||||
#- EL5021: Incremental sin/cos 1vpp
|
#- EL5021: Incremental sin/cos 1vpp
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=10"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=10,DESC='Sin/Cos 1VPP'"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s1.positionActual01"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s1.positionActual01"
|
||||||
|
|
||||||
#- EL5112: Incremental (treat as array, but same timestamp twice, the second actualy not used)
|
#- EL5112: Incremental (treat as array, but same timestamp twice, the second actualy not used)
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1001"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1001,DESC='Incremental'"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.timestamp01, FORMAT=1"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.timestamp01, FORMAT=1"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.timestamp01, FORMAT=1, SEND_OLD=1"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.timestamp01, FORMAT=1, SEND_OLD=1"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.positionActual01"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.positionActual01"
|
||||||
|
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=11"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=11,DESC='Incremental'"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.positionActual01"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.positionActual01"
|
||||||
|
|
||||||
#- EL5042: BISS-C ch 01
|
#- EL5042: BISS-C ch 01
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=12"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=12,DESC='BISS-C'"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s3.positionActual01"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s3.positionActual01"
|
||||||
|
|
||||||
#- EL5101-0011: Incremental oversampling
|
#- EL5101-0011: Incremental oversampling
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1000"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1000,DESC='Incremental Oversampling'"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s4.nextSyncTime, FORMAT=2"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s4.nextSyncTime, FORMAT=2"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s4.nextSyncTime, FORMAT=1"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s4.nextSyncTime, FORMAT=1"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s4.mm.positionActualArray01"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s4.mm.positionActualArray01"
|
||||||
|
|
||||||
#- EL1252-0050: timestamped input ch 01
|
#- EL1252-0050: timestamped input ch 01
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1,DESC='Timestamped input 5V'"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s6.timestampLatchPositive01 ,FORMAT=1"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s6.timestampLatchPositive01 ,FORMAT=1"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s6.timestampLatchNegative01 ,FORMAT=1"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s6.timestampLatchNegative01 ,FORMAT=1"
|
||||||
|
|
||||||
#- ELM3602-0002: Analog input ch 01
|
#- ELM3602-0002: Analog input ch 01
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1000"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1000,DESC='Analog input +-10V'"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s7.timestamp01, FORMAT=2"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s7.timestamp01, FORMAT=2"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s7.timestamp01, FORMAT=1"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s7.timestamp01, FORMAT=1"
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s7.mm.analogInputArray01"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s7.mm.analogInputArray01"
|
||||||
|
|
||||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQFinalizeArray.cmd "NAME=${NAME}"
|
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQFinalizeArray.cmd "NAME=${NAME},DATA_FLNK=''"
|
||||||
|
|
||||||
#- To check result use camon -t c6025a:DAQ-ToEdwin-DataAct
|
#- To check result use camon -t c6025a:DAQ-ToEdwin-DataAct
|
||||||
|
|
||||||
|
|||||||
@@ -13,10 +13,11 @@
|
|||||||
#- Arguments
|
#- Arguments
|
||||||
#- TYPE : Type (number of data type)
|
#- TYPE : Type (number of data type)
|
||||||
#- NAME : Name of DAQ array object
|
#- NAME : Name of DAQ array object
|
||||||
|
#- DESC : Optional description of channel
|
||||||
#-
|
#-
|
||||||
#-################################################################################
|
#-################################################################################
|
||||||
|
|
||||||
ecmcDAQAddChannel(${TYPE})
|
ecmcDAQAddChannel(${TYPE})
|
||||||
epicsEnvSet(ECMC_DAQ_CURR_ITM,-1)
|
epicsEnvSet(ECMC_DAQ_CURR_ITM,-1)
|
||||||
ecmcEpicsEnvSetCalc("ECMC_DAQ_CURR_CH" ,${ECMC_DAQ_CURR_CH=-1}+1,"%02d")
|
ecmcEpicsEnvSetCalc("ECMC_DAQ_CURR_CH" ,${ECMC_DAQ_CURR_CH=-1}+1,"%02d")
|
||||||
dbLoadRecords(ecmcPluginDAQ_chX.template,"P=${ECMC_PREFIX},Name=${NAME},PORT=ECMC.PLUGIN.DAQ.${NAME},CH=${ECMC_DAQ_CURR_CH=00},TYPE=${TYPE=0}")
|
dbLoadRecords(ecmcPluginDAQ_chX.template,"P=${ECMC_PREFIX},Name=${NAME},PORT=ECMC.PLUGIN.DAQ.${NAME},CH=${ECMC_DAQ_CURR_CH=00},TYPE=${TYPE=0},DESC=${DESC=}")
|
||||||
|
|||||||
@@ -11,7 +11,8 @@
|
|||||||
#-###############################################################################
|
#-###############################################################################
|
||||||
#-
|
#-
|
||||||
#- Arguments
|
#- Arguments
|
||||||
#- NAME : Name of DAQ array
|
#- NAME : Name of DAQ array
|
||||||
|
#- DATA_FLNK : Forward link from data array (optional, default to '')
|
||||||
#-
|
#-
|
||||||
#-################################################################################
|
#-################################################################################
|
||||||
|
|
||||||
@@ -24,7 +25,7 @@ ecmcIf("${DAQ_NELM=-1}<0")
|
|||||||
${IF_TRUE}ecmcExit : Failed read DAQ array NELM
|
${IF_TRUE}ecmcExit : Failed read DAQ array NELM
|
||||||
ecmcEndIf()
|
ecmcEndIf()
|
||||||
|
|
||||||
dbLoadRecords(ecmcPluginDAQ.template,"P=${ECMC_PREFIX},Name=${NAME},NELM=${DAQ_NELM},PORT=ECMC.PLUGIN.DAQ.${NAME}")
|
dbLoadRecords(ecmcPluginDAQ.template,"P=${ECMC_PREFIX},Name=${NAME},NELM=${DAQ_NELM},PORT=ECMC.PLUGIN.DAQ.${NAME},FLNK=${DATA_FLNK=''}")
|
||||||
epicsEnvUnset(DAQ_NELM)
|
epicsEnvUnset(DAQ_NELM)
|
||||||
epicsEnvUnset(ECMC_DAQ_CURR_CH)
|
epicsEnvUnset(ECMC_DAQ_CURR_CH)
|
||||||
epicsEnvUnset(ECMC_DAQ_CURR_ITM)
|
epicsEnvUnset(ECMC_DAQ_CURR_ITM)
|
||||||
|
|||||||
@@ -53,10 +53,11 @@ int daqConstruct(char *configStr)
|
|||||||
**/
|
**/
|
||||||
void daqDestruct(void)
|
void daqDestruct(void)
|
||||||
{
|
{
|
||||||
deleteAllDAQs();
|
// Segfaults here during destruction?! need to check..
|
||||||
if(lastConfStr){
|
//deleteAllDAQs();
|
||||||
free(lastConfStr);
|
//if(lastConfStr){
|
||||||
}
|
// free(lastConfStr);
|
||||||
|
//}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Optional function.
|
/** Optional function.
|
||||||
|
|||||||
Reference in New Issue
Block a user