Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a462e343e7 | |||
| 6bff05682f | |||
| 51a9651e9f | |||
| 4cdee34ceb | |||
| 84b7e52409 | |||
| 2f7d80f680 | |||
| 85e55105f7 |
@@ -16,7 +16,7 @@ OPT_CXXFLAGS_YES = -O3
|
||||
|
||||
# dependencies
|
||||
ECmasterECMC_VERSION = v1.1.0
|
||||
ecmc_VERSION = 9.1.0
|
||||
ecmc_VERSION = 9.4.0
|
||||
|
||||
BASE_DIR = .
|
||||
SRC_DIR = $(BASE_DIR)/src
|
||||
|
||||
13
README.md
13
README.md
@@ -168,4 +168,15 @@ Array data "Testing2":
|
||||
```
|
||||
caget -t c6025a:DAQ-Testing2-DataAct
|
||||
14:21:22.652988 c6025a:DAQ-Testing2-Data-Act 2 2092191543 1234 10 6 -1 4321 16 5 -1 4293967 0 0 0 0 0 4293967 0 0 0 0
|
||||
```
|
||||
```
|
||||
|
||||
# Some data
|
||||
```
|
||||
camon -t c6025a:DAQ-ToEdwin-DataAct
|
||||
|
||||
16:54:32.812939 c6025a:DAQ-ToEdwin-DataAct 6 4194379137 1 26 1 -1 2 27 1 -1 3 28 1 -1 1100 29 102 -1 4 131 2 -1 1050 133 52 -1 0 0 0 4194377117 4194378117 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4194376067 4194377067 -316 -285 -499 -578 -400 -414 -313 -390 -365 -408 -545 -448 -188 -482 -445 -364 -398 -261 -310 -450 -229 -227 -563 -319 -335 -326 -490 -240 -307 -513 -448 -435 -582 -394 -298 -242 -539 -449 -492 -443 -377 -143 -299 -484 -515 -370 -422 -636 -547 -288
|
||||
16:54:32.813945 c6025a:DAQ-ToEdwin-DataAct 6 4194380144 1 26 1 -1 2 27 1 -1 3 28 1 -1 1100 29 102 -1 4 131 2 -1 1050 133 52 -1 0 0 0 4194378117 4194379117 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4194377067 4194378067 -344 -364 -685 -532 -328 -527 -483 -386 -346 -528 -340 -437 -323 -453 -382 -525 -629 -475 -466 -577 -516 -550 -451 -326 -273 -308 -535 -269 -413 -465 -297 -340 -480 -443 -280 -469 -523 -555 -630 -412 -350 -411 -591 -548 -580 -466 -238 -265 -321 -394
|
||||
16:54:32.814938 c6025a:DAQ-ToEdwin-DataAct 6 4194381137 1 26 1 -1 2 27 1 -1 3 28 1 -1 1100 29 102 -1 4 131 2 -1 1050 133 52 -1 0 0 0 4194379117 4194380117 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4194378067 4194379067 -417 -219 -286 -338 -338 -270 -214 -409 -481 -423 -488 -565 -359 -544 -423 -190 -236 -487 -633 -488 -468 -336 -556 -505 -232 -257 -463 -464 -382 -480 -215 -420 -548 -467 -335 -330 -406 -337 -278 -361 -511 -509 -588 -376 -315 -399 -448 -512 -602 -778
|
||||
16:54:32.815937 c6025a:DAQ-ToEdwin-DataAct 6 4194382136 1 26 1 -1 2 27 1 -1 3 28 1 -1 1100 29 102 -1 4 131 2 -1 1050 133 52 -1 0 0 0 4194380117 4194381117 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4194379067 4194380067 -586 -383 -404 -641 -533 -296 -208 -416 -525 -314 -379 -362 -468 -491 -483 -503 -471 -513 -462 -482 -690 -483 -368 -294 -400 -452 -452 -456 -246 -371 -353 -395 -330 -554 -317 -204 -375 -361 -545 -580 -396 -493 -415 -349 -484 -252 -311 -573 -432 -289
|
||||
16:54:32.816939 c6025a:DAQ-ToEdwin-DataAct 6 4194383137 1 26 1 -1 2 27 1 -1 3 28 1 -1 1100 29 102 -1 4 131 2 -1 1050 133 52 -1 0 0 0 4194381117 4194382117 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4194380067 4194381067 -358 -237 -197 -450 -430 -279 -448 -518 -490 -213 -202 -248 -300 -418 -344 -595 -658 -525 -302 -262 -353 -328 -401 -360 -478 -460 -364 -549 -522 -342 -410 -472 -444 -459 -338 -321 -344 -313 -423 -445 -427 -560 -470 -298 -341 -190 -339 -374 -536 -494
|
||||
```
|
||||
|
||||
99
iocsh/edwin_test.script
Normal file
99
iocsh/edwin_test.script
Normal file
@@ -0,0 +1,99 @@
|
||||
##############################################################################
|
||||
## test config for ecmc_plugin_daq
|
||||
##
|
||||
|
||||
epicsEnvSet(IOC,c6025a)
|
||||
require ecmccfg "ENG_MODE=1"
|
||||
|
||||
##############################################################################
|
||||
## Configure hardware
|
||||
#- 0 0:0 PREOP + EK1100 EtherCAT-Koppler (2A E-Bus)
|
||||
#- 1 0:1 PREOP + EL5021 1Ch. Sin/Cos Encoder
|
||||
#- 2 0:2 PREOP + EL5112 2Ch. Inc. Encoder 5V (2xAB or 1xABC RS422,TTL)
|
||||
#- 3 0:3 PREOP + EL5042 2Ch. BiSS-C Encoder
|
||||
#- 4 0:4 PREOP + EL5101-0011 1K. Inc. Encoder 5V (20 Mio. Inkremente/s, oversamp
|
||||
#- 5 0:5 PREOP + EL9505 Netzteilklemme 5V
|
||||
#- 6 0:6 PREOP + EL1252-0050 2K. Fast Dig. Eingang 5V, 1<>s, DC Latch
|
||||
#- 7 0:7 PREOP + ELM3602-0002 2Ch. IEPE Sensor, 24 bit, high precision
|
||||
|
||||
require ecmccomp
|
||||
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EK1100"
|
||||
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL5021"
|
||||
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL5112_ABC_DC64"
|
||||
|
||||
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL5042"
|
||||
${SCRIPTEXEC} ${ecmccomp_DIR}applyComponent.cmd "COMP=Encoder-RLS-LA11-26bit-BISS-C,CH_ID=1"
|
||||
${SCRIPTEXEC} ${ecmccomp_DIR}applyComponent.cmd "COMP=Encoder-RLS-LA11-26bit-SSI,CH_ID=2"
|
||||
|
||||
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL5101-0011,NELM=100"
|
||||
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL9505"
|
||||
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=EL1252"
|
||||
${SCRIPTEXEC} ${ecmccfg_DIR}addSlave.cmd, "HW_DESC=ELM3602-0002,NELM=50"
|
||||
|
||||
#- Ch1 +-10v
|
||||
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8000,0x1,97,2)"
|
||||
|
||||
#- Ch2 +-10v
|
||||
ecmcConfigOrDie "Cfg.EcAddSdo(${ECMC_EC_SLAVE_NUM},0x8010,0x1,97,2)"
|
||||
|
||||
#Apply hardware configuration
|
||||
ecmcConfigOrDie "Cfg.EcApplyConfig(1)"
|
||||
|
||||
##############################################################################
|
||||
## Load and configure daq plugin
|
||||
|
||||
require ecmc_plugin_daq "PLUGIN_ID=0"
|
||||
|
||||
epicsEnvSet(NAME,ToEdwin) # PREFIX:DAQ-ToEdwin-DataAct
|
||||
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddArray.cmd, "NAME=${NAME}"
|
||||
|
||||
#- EL5021: Incremental sin/cos 1vpp
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=10"
|
||||
${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)
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1001"
|
||||
${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.positionActual01"
|
||||
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=11"
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s2.positionActual01"
|
||||
|
||||
#- EL5042: BISS-C ch 01
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=12"
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddDataItem.cmd, "PARAM=ec0.s3.positionActual01"
|
||||
|
||||
#- EL5101-0011: Incremental oversampling
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1000"
|
||||
${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.mm.positionActualArray01"
|
||||
|
||||
#- EL1252-0050: timestamped input ch 01
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=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"
|
||||
|
||||
#- ELM3602-0002: Analog input ch 01
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQAddChannel.cmd, "TYPE=1000"
|
||||
${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.mm.analogInputArray01"
|
||||
|
||||
${SCRIPTEXEC} ${ecmc_plugin_daq_DIR}ecmcDAQFinalizeArray.cmd "NAME=${NAME}"
|
||||
|
||||
#- To check result use camon -t c6025a:DAQ-ToEdwin-DataAct
|
||||
|
||||
##############################################################################
|
||||
## Configure diagnostics:
|
||||
#
|
||||
ecmcConfigOrDie "Cfg.EcSetDiagnostics(1)"
|
||||
ecmcConfigOrDie "Cfg.EcEnablePrintouts(0)"
|
||||
ecmcConfigOrDie "Cfg.EcSetDomainFailedCyclesLimit(100)"
|
||||
|
||||
##############################################################################
|
||||
## go active
|
||||
#
|
||||
$(SCRIPTEXEC) ($(ecmccfg_DIR)setAppMode.cmd)
|
||||
@@ -104,6 +104,9 @@ int createDAQItem(const char* name, int type) {
|
||||
}
|
||||
|
||||
void deleteAllDAQs() {
|
||||
|
||||
return; // The delete process results in seg fault.. need to investigate..
|
||||
|
||||
for(std::vector<ecmcDAQDataArray*>::iterator pDAQArray = arrays.begin(); pDAQArray != arrays.end(); ++pDAQArray) {
|
||||
if(*pDAQArray) {
|
||||
delete (*pDAQArray);
|
||||
|
||||
Reference in New Issue
Block a user