From a35849914100e2141b77751f4aa07479fd2e0db6 Mon Sep 17 00:00:00 2001 From: Anders Sandstrom Date: Tue, 8 Feb 2022 14:39:40 +0100 Subject: [PATCH] WIP --- ecmc_plugin_grbl/ecmcGrbl.cpp | 34 +- iocsh/log.log | 1047 ++++++++++++++++----------------- 2 files changed, 541 insertions(+), 540 deletions(-) diff --git a/ecmc_plugin_grbl/ecmcGrbl.cpp b/ecmc_plugin_grbl/ecmcGrbl.cpp index e832e98..af24981 100644 --- a/ecmc_plugin_grbl/ecmcGrbl.cpp +++ b/ecmc_plugin_grbl/ecmcGrbl.cpp @@ -109,7 +109,7 @@ ecmcGrbl::ecmcGrbl(char* configStr, grblInitDone_ = 0; autoStartDone_ = 0; timeToNextExeMs_ = 0; - writerBusy_ = 0; + writerBusy_ = 1; spindleAcceleration_ = 0; unrecoverableError_ = 0; cfgAutoEnableTimeOutSecs_ = ECMC_PLUGIN_AUTO_ENABLE_TIME_OUT_SEC; @@ -117,7 +117,7 @@ ecmcGrbl::ecmcGrbl(char* configStr, grblCommandBuffer_.clear(); grblConfigBuffer_.clear(); memset(&ecmcData_,0,sizeof(ecmcStatusData)); - + if(!(grblConfigBufferMutex_ = epicsMutexCreate())) { throw std::runtime_error("GRBL: ERROR: Failed create mutex config buffer."); } @@ -275,29 +275,32 @@ void ecmcGrbl::doWriteWorker() { printf("GRBL: INFO: Configuration start\n"); } if(!applyConfigsSuccess()) { - return; // Something went wrong, kill thread + return; // Something went seriously wrong, kill thread } - - // Auto enable - if(cfgDbgMode_){ - printf("GRBL: INFO: Auto enable configured axes\n"); - } - - // All configs done above. + + // All configs done above + writerBusy_ = false; for(;;) { + + // wait for execute + if( !executeCmd_ || !grblInitDone_ || ecmcData_.error) { + delay_ms(2); + continue; + } + // Execute auto enable if(cfgDbgMode_){ printf("GRBL: INFO: auto enable\n"); } - + autoEnableAxesSuccess(); - // GRBL ready, now we can send g-code comamnds + // Write g-code commands if(cfgDbgMode_){ printf("GRBL: INFO: Start load g-code\n"); } if(!WriteGCodeSuccess()) { - return; // Something went wrong, kill thread + return; // Something went seriously wrong, kill thread } } } @@ -360,8 +363,8 @@ bool ecmcGrbl::autoEnableAxesSuccess() { bool ecmcGrbl::WriteGCodeSuccess() { for(;;) { - if( (grblCommandBuffer_.size() > grblCommandBufferIndex_) && - executeCmd_ && ecmcData_.allEnabled && grblInitDone_) { + if( (grblCommandBuffer_.size() > grblCommandBufferIndex_) + && executeCmd_ && ecmcData_.allEnabled) { epicsMutexLock(grblCommandBufferMutex_); std::string commandRaw = grblCommandBuffer_[grblCommandBufferIndex_]; epicsMutexUnlock(grblCommandBufferMutex_); @@ -393,6 +396,7 @@ bool ecmcGrbl::WriteGCodeSuccess() { if( (( grblCommandBufferIndex_ >= grblCommandBuffer_.size()) || !executeCmd_ ) && grblInitDone_) { writerBusy_ = 0; + return true; // code executed once } // Wait for right condition to start diff --git a/iocsh/log.log b/iocsh/log.log index 1c16411..68a380e 100644 --- a/iocsh/log.log +++ b/iocsh/log.log @@ -1,9 +1,9 @@ registerChannelProviderLocal firstTime true # -# Start at "2022-W06-Feb08-1233-26-CET" +# Start at "2022-W06-Feb08-1438-47-CET" # # Version information: -# European Spallation Source ERIC : iocsh.bash (3.4.0-PID-20961) +# European Spallation Source ERIC : iocsh.bash (3.4.0-PID-23428) # # --->--> snip -->--> # Please Use Version and other environment variables @@ -31,10 +31,10 @@ registerChannelProviderLocal firstTime true # --->--> snip -->--> # # Set REQUIRE_IOC for its internal PVs -epicsEnvSet REQUIRE_IOC "REQMOD:raspberrypi-20961" +epicsEnvSet REQUIRE_IOC "REQMOD:raspberrypi-23428" # # Enable an exit subroutine for sotfioc -dbLoadRecords "/home/pi/epics/base-7.0.5/db/softIocExit.db" "IOC=REQMOD:raspberrypi-20961" +dbLoadRecords "/home/pi/epics/base-7.0.5/db/softIocExit.db" "IOC=REQMOD:raspberrypi-23428" # # Set E3_IOCSH_TOP for the absolute path where iocsh.bash is executed. epicsEnvSet E3_IOCSH_TOP "/home/pi/sources/e3-ecmc_plugin_grbl/ecmc_plugin_grbl-dev/iocsh" @@ -262,17 +262,17 @@ epicsEnvUnset(ECMC_TRAJ_VELO_FILT_ENABLE) epicsEnvUnset(ECMC_TRAJ_SOURCE) epicsEnvSet("ECMC_EGU", "mm") epicsEnvSet("ECMC_PREC", 3) -epicsEnvSet("ECMC_AXISFIELDINIT", "") # Extra field ini2022/02/08 12:33:26.605 +epicsEnvSet("ECMC_AXISFIELDINIT", "") # Extra field ini2022/02/08 14:38:47.621 ECMC Initializes............. -2022/02/08 12:33:26.605 ESS Open Source EtherCAT Motion Control Epics Module2022/02/08 12:33:26.605 +2022/02/08 14:38:47.621 ESS Open Source EtherCAT Motion Control Epics Module2022/02/08 14:38:47.621 Mode: Configuration -2022/02/08 12:33:26.606 OK -2022/02/08 12:33:26.606 OK -2022/02/08 12:33:26.607 OK -2022/02/08 12:33:26.609 OK -2022/02/08 12:33:26.629 OK -2022/02/08 12:33:26.630 OK -2022/02/08 12:33:26.630 OK +2022/02/08 14:38:47.621 OK +2022/02/08 14:38:47.621 OK +2022/02/08 14:38:47.622 OK +2022/02/08 14:38:47.624 OK +2022/02/08 14:38:47.645 OK +2022/02/08 14:38:47.645 OK +2022/02/08 14:38:47.646 OK t to motor record epicsEnvSet("ECMC_AXISCONFIG", "") # Extra parameters to driver ############################################################ @@ -346,12 +346,12 @@ epicsEnvSet("HW_DESC", "EK1100") epicsEnvSet("P_SCRIPT", "mXsXXX") # add ${HW_DESC} to the bus at position ${SLAVE_ID} ecmcFileExist("/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcEK1100.cmd",1) -iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/site2022/02/08 12:33:26.633 OK -2022/02/08 12:33:26.634 OK -2022/02/08 12:33:26.642 OK -2022/02/08 12:33:26.643 OK -2022/02/08 12:33:26.643 OK -2022/02/08 12:33:26.644 OK +iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/site2022/02/08 14:38:47.647 OK +2022/02/08 14:38:47.648 OK +2022/02/08 14:38:47.655 OK +2022/02/08 14:38:47.657 OK +2022/02/08 14:38:47.657 OK +2022/02/08 14:38:47.657 OK Mods/ecmccfg/ruckig/ecmcEK1100.cmd" "NELM=1" epicsEnvSet("ECMC_EC_HWTYPE" "EK1100") epicsEnvSet("ECMC_EC_VENDOR_ID" "0x2") @@ -416,18 +416,18 @@ iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcEX ecmcConfigOrDie "Cfg.EcAddEntryDT(1,0x2,0x03fa3052,2,0,0x1a00,0x6000,0x1,B1,binaryInput01)" ecmcConfigOrDie "Cfg.EcAddEntryDT(1,0x2,0x03fa3052,2,0,0x1a01,0x6010,0x1,B1,binaryInput02)" ecmcConfigOrDie "Cfg.EcAddEntryDT(1,0x2,0x03fa3052,2,0,0x1a02,0x6020,0x1,B1,binaryInput03)" -ecmcConfigOrDie "Cfg.EcAddEntryDT(1,0x2,0x03fa3052,2,0,0x1a03,0x6030,0x1,B1,binaryIn2022/02/08 12:33:26.645 OK -2022/02/08 12:33:26.646 OK -2022/02/08 12:33:26.646 OK -2022/02/08 12:33:26.646 OK -2022/02/08 12:33:26.646 OK -2022/02/08 12:33:26.655 OK -2022/02/08 12:33:26.657 OK -2022/02/08 12:33:26.657 OK -2022/02/08 12:33:26.657 OK -2022/02/08 12:33:26.658 OK -2022/02/08 12:33:26.658 OK -2022/02/08 12:33:26.658 OK +ecmcConfigOrDie "Cfg.EcAddEntryDT(1,0x2,0x03fa3052,2,0,0x1a03,0x6030,0x1,B1,binaryIn2022/02/08 14:38:47.657 OK +2022/02/08 14:38:47.657 OK +2022/02/08 14:38:47.658 OK +2022/02/08 14:38:47.658 OK +2022/02/08 14:38:47.658 OK +2022/02/08 14:38:47.666 OK +2022/02/08 14:38:47.667 OK +2022/02/08 14:38:47.668 OK +2022/02/08 14:38:47.668 OK +2022/02/08 14:38:47.668 OK +2022/02/08 14:38:47.668 OK +2022/02/08 14:38:47.669 OK put04)" ecmcConfigOrDie "Cfg.EcAddEntryDT(1,0x2,0x03fa3052,2,0,0x1a04,0x6040,0x1,B1,binaryInput05)" ecmcConfigOrDie "Cfg.EcAddEntryDT(1,0x2,0x03fa3052,2,0,0x1a05,0x6050,0x1,B1,binaryInput06)" @@ -488,16 +488,16 @@ ecmcConfigOrDie "Cfg.EcAddEntryDT(2,0x2,0x0af83052,1,0,0x1602,0x7020,0x1,B1,bina ecmcConfigOrDie "Cfg.EcAddEntryDT(2,0x2,0x0af83052,1,0,0x1603,0x7030,0x1,B1,binaryOutput04)" ecmcConfigOrDie "Cfg.EcAddEntryDT(2,0x2,0x0af83052,1,0,0x1604,0x7040,0x1,B1,binaryOutput05)" ecmcConfigOrDie "Cfg.EcAddEntryDT(2,0x2,0x0af83052,1,0,0x1605,0x7050,0x1,B1,binaryOutput06)" -ecmcConfigOrDie "Cfg.EcAddEntryDT(2,0x2,0x0af830522022/02/08 12:33:26.660 OK -2022/02/08 12:33:26.660 OK -2022/02/08 12:33:26.671 OK -2022/02/08 12:33:26.749 OK -2022/02/08 12:33:26.829 14385 -2022/02/08 12:33:26.830 OK -2022/02/08 12:33:26.831 OK -2022/02/08 12:33:26.831 OK -2022/02/08 12:33:26.832 OK -2022/02/08 12:33:26.832 OK +ecmcConfigOrDie "Cfg.EcAddEntryDT(2,0x2,0x0af830522022/02/08 14:38:47.669 OK +2022/02/08 14:38:47.669 OK +2022/02/08 14:38:47.679 OK +2022/02/08 14:38:47.779 OK +2022/02/08 14:38:47.869 14385 +2022/02/08 14:38:47.870 OK +2022/02/08 14:38:47.870 OK +2022/02/08 14:38:47.870 OK +2022/02/08 14:38:47.870 OK +2022/02/08 14:38:47.870 OK ,1,0,0x1606,0x7060,0x1,B1,binaryOutput07)" ecmcConfigOrDie "Cfg.EcAddEntryDT(2,0x2,0x0af83052,1,0,0x1607,0x7070,0x1,B1,binaryOutput08)" # deduce what the prefix should be @@ -561,14 +561,14 @@ ecmcConfigOrDie "Cfg.EcAddEntryComplete(3,0x2,0x13ed3052,2,3,0x1a03,0x6010,0x00, ecmcConfigOrDie "Cfg.EcAddEntryComplete(3,0x2,0x13ed3052,2,3,0x1a03,0x6010,0x10,16,positionActual01)" ecmcConfigOrDie "Cfg.EcAddEntryComplete(3,0x2,0x13ed3052,2,3,0x1a03,0x6010,0x20,16,encoderLatchPostion01)" # deduce what the prefix should be -ecmcFil2022/02/08 12:33:26.846 OK -2022/02/08 12:33:26.919 OK -2022/02/08 12:33:26.999 14385 -2022/02/08 12:33:27.000 OK -2022/02/08 12:33:27.000 OK -2022/02/08 12:33:27.001 OK -2022/02/08 12:33:27.001 OK -2022/02/08 12:33:27.001 OK +ecmcFil2022/02/08 14:38:47.878 OK +2022/02/08 14:38:47.949 OK +2022/02/08 14:38:48.029 14385 +2022/02/08 14:38:48.030 OK +2022/02/08 14:38:48.030 OK +2022/02/08 14:38:48.030 OK +2022/02/08 14:38:48.030 OK +2022/02/08 14:38:48.031 OK eExist("/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcmXsXXX.cmd",1) iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcmXsXXX.cmd" "MASTER_ID=0,SLAVE_POS=3,HWTYPE=EL5101" #============================================================================== @@ -629,9 +629,9 @@ ecmcConfigOrDie "Cfg.EcAddEntryComplete(4,0x2,0x13ed3052,2,3,0x1a03,0x6010,0x20, # deduce what the prefix should be ecmcFileExist("/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcmXsXXX.cmd",1) iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcmXsXXX.cmd" "MASTER_ID=0,SLAVE_POS=4,HWTYPE=EL5101" -#===================================2022/02/08 12:33:27.009 OK -2022/02/08 12:33:27.010 OK -2022/02/08 12:33:27.010 OK +#===================================2022/02/08 14:38:48.038 OK +2022/02/08 14:38:48.039 OK +2022/02/08 14:38:48.039 OK =========================================== # ecmcmXsXXX.cmd ecmcEpicsEnvSetCalc("sid", "4","%03d") @@ -697,15 +697,15 @@ iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/apply ecmcFileExist(ecmcEL9505.substitutions,1,1) dbLoadTemplate(ecmcEL9505.substitutions,"ECMC_P=IOC_TEST:m0s005-,ECMC_G=IOC_TEST:m0s005,PORT=MC_CPU1,ADDR=0,TIMEOUT=1,MASTER_ID=0,SLAVE_POS=5,HWTYPE=EL9505,T_SMP_MS=10,TSE=-2,NELM=1") epicsEnvUnset(DEFAULT_SUBS) -ecmcEpicsEnvSetCalcTe2022/02/08 12:33:27.020 OK -2022/02/08 12:33:27.021 OK -2022/02/08 12:33:27.021 OK -2022/02/08 12:33:27.022 OK -2022/02/08 12:33:27.022 OK -2022/02/08 12:33:27.022 OK -2022/02/08 12:33:27.022 OK -2022/02/08 12:33:27.022 OK -2022/02/08 12:33:27.022 OK +ecmcEpicsEnvSetCalcTe2022/02/08 14:38:48.047 OK +2022/02/08 14:38:48.048 OK +2022/02/08 14:38:48.049 OK +2022/02/08 14:38:48.049 OK +2022/02/08 14:38:48.049 OK +2022/02/08 14:38:48.049 OK +2022/02/08 14:38:48.049 OK +2022/02/08 14:38:48.049 OK +2022/02/08 14:38:48.049 OK rnary(DEFAULT_SLAVE_PVS, "True", "","#- ") iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/applyTemplate.cmd" "TEMPLATE_FILE=ecmcEcSlave.template,ECMC_P=IOC_TEST:m0s005-,ECMC_G=IOC_TEST:m0s005" #============================================================================== @@ -764,21 +764,21 @@ ecmcFileExist(ecmcEL1252.substitutions,1,1) dbLoadTemplate(ecmcEL1252.substitutions,"ECMC_P=IOC_TEST:m0s006-,ECMC_G=IOC_TEST:m0s006,PORT=MC_CPU1,ADDR=0,TIMEOUT=1,MASTER_ID=0,SLAVE_POS=6,HWTYPE=EL1252,T_SMP_MS=10,TSE=-2,NELM=1") epicsEnvUnset(DEFAULT_SUBS) ecmcEpicsEnvSetCalcTernary(DEFAULT_SLAVE_PVS, "True", "","#- ") -iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/applyTemplate.cmd" "TEMPLATE_FILE=ecmcEcSlave.template,ECMC_P=IOC_TEST:m0s006-,ECMC_G=2022/02/08 12:33:27.034 OK -2022/02/08 12:33:27.139 OK -2022/02/08 12:33:27.219 12848 -2022/02/08 12:33:27.222 OK -2022/02/08 12:33:27.222 OK -2022/02/08 12:33:27.223 OK -2022/02/08 12:33:27.223 OK -2022/02/08 12:33:27.224 OK -2022/02/08 12:33:27.224 OK -2022/02/08 12:33:27.224 OK -2022/02/08 12:33:27.224 OK -2022/02/08 12:33:27.225 OK -2022/02/08 12:33:27.225 OK -2022/02/08 12:33:27.225 OK -2022/02/08 12:33:27.225 OK +iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/applyTemplate.cmd" "TEMPLATE_FILE=ecmcEcSlave.template,ECMC_P=IOC_TEST:m0s006-,ECMC_G=2022/02/08 14:38:48.059 OK +2022/02/08 14:38:48.169 OK +2022/02/08 14:38:48.249 12848 +2022/02/08 14:38:48.251 OK +2022/02/08 14:38:48.251 OK +2022/02/08 14:38:48.251 OK +2022/02/08 14:38:48.252 OK +2022/02/08 14:38:48.252 OK +2022/02/08 14:38:48.252 OK +2022/02/08 14:38:48.252 OK +2022/02/08 14:38:48.253 OK +2022/02/08 14:38:48.253 OK +2022/02/08 14:38:48.253 OK +2022/02/08 14:38:48.253 OK +2022/02/08 14:38:48.253 OK IOC_TEST:m0s006" #============================================================================== # applyTemplate.cmd @@ -842,12 +842,12 @@ iocshLoad "/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcm ecmcEpicsEnvSetCalc("sid", "8","%03d") ecmcEpicsEnvSetCalc("mid", "0","%01d") epicsEnvSet("ECMC_G", "IOC_TEST:m0s008") -epicsEnvSet("ECMC_P", 2022/02/08 12:33:27.247 OK -2022/02/08 12:33:27.247 OK -2022/02/08 12:33:27.247 OK -2022/02/08 12:33:27.248 OK -2022/02/08 12:33:27.248 OK -2022/02/08 12:33:27.248 OK +epicsEnvSet("ECMC_P", 2022/02/08 14:38:48.273 OK +2022/02/08 14:38:48.273 OK +2022/02/08 14:38:48.273 OK +2022/02/08 14:38:48.273 OK +2022/02/08 14:38:48.274 OK +2022/02/08 14:38:48.274 OK "IOC_TEST:m0s008-") epicsEnvUnset(sid) epicsEnvUnset(mid) @@ -910,21 +910,21 @@ epicsEnvSet("ECMC_EC_SLAVE_NUM", "9") epicsEnvSet("HW_DESC", "EL7037") ecmcFileExist("/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/addSlave.cmd",1) iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/addSlave.cmd "SLAVE_ID=9, HW_DESC=EL7037, NELM=1" -#==========================2022/02/08 12:33:27.253 OK -2022/02/08 12:33:27.379 OK -2022/02/08 12:33:27.459 12848 -2022/02/08 12:33:27.462 OK -2022/02/08 12:33:27.462 OK -2022/02/08 12:33:27.462 OK -2022/02/08 12:33:27.463 OK -2022/02/08 12:33:27.463 OK -2022/02/08 12:33:27.463 OK -2022/02/08 12:33:27.463 OK -2022/02/08 12:33:27.464 OK -2022/02/08 12:33:27.464 OK -2022/02/08 12:33:27.464 OK -2022/02/08 12:33:27.464 OK -2022/02/08 12:33:27.464 OK +#==========================2022/02/08 14:38:48.279 OK +2022/02/08 14:38:48.399 OK +2022/02/08 14:38:48.479 12848 +2022/02/08 14:38:48.482 OK +2022/02/08 14:38:48.482 OK +2022/02/08 14:38:48.482 OK +2022/02/08 14:38:48.482 OK +2022/02/08 14:38:48.483 OK +2022/02/08 14:38:48.483 OK +2022/02/08 14:38:48.483 OK +2022/02/08 14:38:48.484 OK +2022/02/08 14:38:48.484 OK +2022/02/08 14:38:48.484 OK +2022/02/08 14:38:48.484 OK +2022/02/08 14:38:48.484 OK ==================================================== # addSlave.cmd epicsEnvSet("ECMC_EC_SLAVE_NUM", "9") @@ -987,22 +987,22 @@ dbLoadRecords("ecmcEcSlave.template", "ECMC_P=IOC_TEST:m0s009-,ECMC_G=IOC_TEST:m epicsEnvUnset(DEFAULT_SLAVE_PVS) # increment SLAVE_ID ecmcEpicsEnvSetCalc("SLAVE_ID", "9+1","%d") -# app2022/02/08 12:33:27.486 OK -2022/02/08 12:33:27.486 OK -2022/02/08 12:33:27.486 OK -2022/02/08 12:33:27.486 OK -2022/02/08 12:33:27.487 OK -2022/02/08 12:33:27.487 OK -2022/02/08 12:33:27.487 OK -2022/02/08 12:33:27.491 OK -2022/02/08 12:33:27.679 OK -2022/02/08 12:33:27.759 14385 -2022/02/08 12:33:27.839 OK -2022/02/08 12:33:27.919 OK -2022/02/08 12:33:28.009 OK -2022/02/08 12:33:28.089 OK -2022/02/08 12:33:28.169 OK -2022/02/08 12:33:28.170 OK +# app2022/02/08 14:38:48.504 OK +2022/02/08 14:38:48.504 OK +2022/02/08 14:38:48.504 OK +2022/02/08 14:38:48.504 OK +2022/02/08 14:38:48.504 OK +2022/02/08 14:38:48.504 OK +2022/02/08 14:38:48.505 OK +2022/02/08 14:38:48.508 OK +2022/02/08 14:38:48.719 OK +2022/02/08 14:38:48.799 14385 +2022/02/08 14:38:48.879 OK +2022/02/08 14:38:48.959 OK +2022/02/08 14:38:49.039 OK +2022/02/08 14:38:49.119 OK +2022/02/08 14:38:49.199 OK +2022/02/08 14:38:49.200 OK ly config ${CONFIG} for ${HW_DESC} ecmcFileExist("/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcEL7037-Motor-Nanotec-ST4118L1804-B.cmd",1) iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcEL7037-Motor-Nanotec-ST4118L1804-B.cmd "" @@ -1072,15 +1072,15 @@ ecmcConfigOrDie "Cfg.EcWriteSdo(11,0x8010,0x14,50,4)" ecmcConfigOrDie "Cfg.EcWriteSdo(11,0x8010,0x15,50,4)" iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmcEX72XX_CSV.cmd ecmcConfigOrDie "Cfg.EcAddEntryDT(11,0x2,0x1c2b3052,1,2,0x1600,0x7010,0x01,U16,driveControl01)" -2022/02/08 12:33:28.170 OK -2022/02/08 12:33:28.170 OK -2022/02/08 12:33:28.171 OK -2022/02/08 12:33:28.171 OK -2022/02/08 12:33:28.173 OK -2022/02/08 12:33:28.173 OK -2022/02/08 12:33:28.175 OK -2022/02/08 12:33:28.175 OK -2022/02/08 12:33:28.175 OK +2022/02/08 14:38:49.201 OK +2022/02/08 14:38:49.201 OK +2022/02/08 14:38:49.202 OK +2022/02/08 14:38:49.202 OK +2022/02/08 14:38:49.204 OK +2022/02/08 14:38:49.205 OK +2022/02/08 14:38:49.207 OK +2022/02/08 14:38:49.207 OK +2022/02/08 14:38:49.207 OK ecmcConfigOrDie "Cfg.EcAddEntryDT(11,0x2,0x1c2b3052,1,2,0x1601,0x7010,0x06,S32,velocitySetpoint01)" ecmcConfigOrDie "Cfg.EcAddEntryDT(11,0x2,0x1c2b3052,2,3,0x1a00,0x6000,0x11,U32,positionActual01)" ecmcConfigOrDie "Cfg.EcAddEntryDT(11,0x2,0x1c2b3052,2,3,0x1a01,0x6010,0x01,U16,driveStatus01)" @@ -1136,29 +1136,29 @@ epicsEnvUnset(DEFAULT_SLAVE_PVS) ecmcEpicsEnvSetCalc("SLAVE_ID", "11+1","%d") # Apply local 24V config (local here) iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/applySlaveConfig.cmd, "LOCAL_CONFIG=./ecmcEL7211-0010-Motor-Beckhoff-AM8121-0F00-0000_24V.cmd" -#====================================================================2022/02/08 12:33:28.185 OK -2022/02/08 12:33:28.185 OK -2022/02/08 12:33:28.185 OK -2022/02/08 12:33:28.185 OK -2022/02/08 12:33:28.185 OK -2022/02/08 12:33:28.185 OK -2022/02/08 12:33:28.185 OK -2022/02/08 12:33:28.185 OK -2022/02/08 12:33:28.186 OK -2022/02/08 12:33:28.186 OK -2022/02/08 12:33:28.186 OK -2022/02/08 12:33:28.186 OK -2022/02/08 12:33:28.186 OK -2022/02/08 12:33:28.186 OK -2022/02/08 12:33:28.186 OK -2022/02/08 12:33:28.187 OK -2022/02/08 12:33:28.187 OK -2022/02/08 12:33:28.187 OK -2022/02/08 12:33:28.187 OK -2022/02/08 12:33:28.187 OK -2022/02/08 12:33:28.187 OK -2022/02/08 12:33:28.187 OK -2022/02/08 12:33:28.187 OK +#====================================================================2022/02/08 14:38:49.221 OK +2022/02/08 14:38:49.221 OK +2022/02/08 14:38:49.222 OK +2022/02/08 14:38:49.222 OK +2022/02/08 14:38:49.222 OK +2022/02/08 14:38:49.222 OK +2022/02/08 14:38:49.222 OK +2022/02/08 14:38:49.222 OK +2022/02/08 14:38:49.222 OK +2022/02/08 14:38:49.223 OK +2022/02/08 14:38:49.223 OK +2022/02/08 14:38:49.223 OK +2022/02/08 14:38:49.223 OK +2022/02/08 14:38:49.223 OK +2022/02/08 14:38:49.224 OK +2022/02/08 14:38:49.224 OK +2022/02/08 14:38:49.224 OK +2022/02/08 14:38:49.224 OK +2022/02/08 14:38:49.224 OK +2022/02/08 14:38:49.224 OK +2022/02/08 14:38:49.224 OK +2022/02/08 14:38:49.224 OK +2022/02/08 14:38:49.225 OK =========== # applySlaveConfig.cmd # Arguments: CONFIG _or_ LOCAL_CONFIG @@ -1342,47 +1342,47 @@ iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/verify ecmcEpicsEnvSetCalcTernary(ECMC_EXE_CMD,"abs(600.0)<>0","# ECMC_DRV_SCALE_NUM value OK == 600.0...", "ecmcExit Error: ECMC_DRV_SCALE_NUM == 0...") # ECMC_DRV_SCALE_NUM value OK == 600.0... epicsEnvUnset(ECMC_EXE_CMD) -iocsh2022/02/08 12:33:28.202 OK -2022/02/08 12:33:28.202 OK -2022/02/08 12:33:28.202 OK -2022/02/08 12:33:28.202 OK -2022/02/08 12:33:28.205 OK -2022/02/08 12:33:28.205 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.206 OK -2022/02/08 12:33:28.207 OK -2022/02/08 12:33:28.207 OK -2022/02/08 12:33:28.207 OK -2022/02/08 12:33:28.207 OK -2022/02/08 12:33:28.207 OK -2022/02/08 12:33:28.207 OK -2022/02/08 12:33:28.207 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.208 OK -2022/02/08 12:33:28.209 OK -2022/02/08 12:33:28.209 OK -2022/02/08 12:33:28.209 OK -2022/02/08 12:33:28.209 OK -2022/02/08 12:33:28.209 OK -2022/02/08 12:33:28.209 OK -2022/02/08 12:33:28.209 OK -2022/02/08 12:33:28.209 OK +iocsh2022/02/08 14:38:49.242 OK +2022/02/08 14:38:49.242 OK +2022/02/08 14:38:49.242 OK +2022/02/08 14:38:49.242 OK +2022/02/08 14:38:49.247 OK +2022/02/08 14:38:49.247 OK +2022/02/08 14:38:49.247 OK +2022/02/08 14:38:49.247 OK +2022/02/08 14:38:49.247 OK +2022/02/08 14:38:49.248 OK +2022/02/08 14:38:49.248 OK +2022/02/08 14:38:49.248 OK +2022/02/08 14:38:49.248 OK +2022/02/08 14:38:49.248 OK +2022/02/08 14:38:49.248 OK +2022/02/08 14:38:49.249 OK +2022/02/08 14:38:49.249 OK +2022/02/08 14:38:49.249 OK +2022/02/08 14:38:49.249 OK +2022/02/08 14:38:49.249 OK +2022/02/08 14:38:49.249 OK +2022/02/08 14:38:49.250 OK +2022/02/08 14:38:49.250 OK +2022/02/08 14:38:49.250 OK +2022/02/08 14:38:49.250 OK +2022/02/08 14:38:49.250 OK +2022/02/08 14:38:49.250 OK +2022/02/08 14:38:49.250 OK +2022/02/08 14:38:49.251 OK +2022/02/08 14:38:49.251 OK +2022/02/08 14:38:49.251 OK +2022/02/08 14:38:49.251 OK +2022/02/08 14:38:49.251 OK +2022/02/08 14:38:49.251 OK +2022/02/08 14:38:49.251 OK +2022/02/08 14:38:49.252 OK +2022/02/08 14:38:49.252 OK +2022/02/08 14:38:49.252 OK +2022/02/08 14:38:49.252 OK +2022/02/08 14:38:49.252 OK +2022/02/08 14:38:49.252 OK Load /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/verifyOrDie.cmd "EXPR_STR='abs(32768.0)<>0',SUCCESS_STR='ECMC_DRV_SCALE_DENOM value OK == 32768.0...',ERROR_STR='ECMC_DRV_SCALE_DENOM == 0...'" #============================================================================== # verifyOrDie.cmd @@ -1444,42 +1444,42 @@ ecmcConfigOrDie "Cfg.LinkEcEntryToObject(,"ax1.drv.brake")" ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec0.s8.driveControl01.2,"ax1.drv.reducetorque")" ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec0.s8.driveControl01.1,"ax1.drv.reset")" ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec0.s8.driveStatus01.3,"ax1.drv.alarm0")" -ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec2022/02/08 12:33:28.210 OK -2022/02/08 12:33:28.210 OK -2022/02/08 12:33:28.210 OK -2022/02/08 12:33:28.210 OK -2022/02/08 12:33:28.210 OK -2022/02/08 12:33:28.210 OK -2022/02/08 12:33:28.210 OK -2022/02/08 12:33:28.210 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.211 OK -2022/02/08 12:33:28.212 OK -2022/02/08 12:33:28.212 OK -2022/02/08 12:33:28.212 OK -2022/02/08 12:33:28.212 OK -2022/02/08 12:33:28.212 OK -2022/02/08 12:33:28.212 OK -2022/02/08 12:33:28.212 OK -2022/02/08 12:33:28.212 OK -2022/02/08 12:33:28.213 OK -2022/02/08 12:33:28.213 OK -2022/02/08 12:33:28.213 OK -2022/02/08 12:33:28.213 OK -2022/02/08 12:33:28.213 OK -2022/02/08 12:33:28.214 ecmcMotorRecord:: setIntegerParam(1 motorPowerAutoOnOff_)=2 -2022/02/08 12:33:28.214 ecmcMotorRecord:: setDoubleParam(1 motorPowerOnDelay_)=6 -2022/02/08 12:33:28.214 ecmcMotorRecord:: setDoubleParam(1 motorPowerOffDelay_=-1 -2022/02/08 12:33:28.214 ecmcMotorRecord:: udateMotorLimitsRO(1) enabledHighAndLow=1 valid=1 fValueHigh=130 fValueLow=-20 -2022/02/08 12:33:28.214 ecmcMotorRecord:: connected(1) -2022/02/08 12:33:28.214 ecmcMotorRecord:: initialPoll(1) status=0 +ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec2022/02/08 14:38:49.252 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.253 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.254 OK +2022/02/08 14:38:49.255 OK +2022/02/08 14:38:49.255 OK +2022/02/08 14:38:49.255 OK +2022/02/08 14:38:49.255 OK +2022/02/08 14:38:49.255 OK +2022/02/08 14:38:49.255 OK +2022/02/08 14:38:49.255 OK +2022/02/08 14:38:49.255 OK +2022/02/08 14:38:49.256 ecmcMotorRecord:: setIntegerParam(1 motorPowerAutoOnOff_)=2 +2022/02/08 14:38:49.256 ecmcMotorRecord:: setDoubleParam(1 motorPowerOnDelay_)=6 +2022/02/08 14:38:49.256 ecmcMotorRecord:: setDoubleParam(1 motorPowerOffDelay_=-1 +2022/02/08 14:38:49.256 ecmcMotorRecord:: udateMotorLimitsRO(1) enabledHighAndLow=1 valid=1 fValueHigh=130 fValueLow=-20 +2022/02/08 14:38:49.256 ecmcMotorRecord:: connected(1) +2022/02/08 14:38:49.256 ecmcMotorRecord:: initialPoll(1) status=0 0.s8.driveStatus01.7,"ax1.drv.alarm1")" ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec0.s8.driveStatus01.14,"ax1.drv.alarm2")" ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec0.s8.driveStatus01.2,"ax1.drv.warning")" @@ -1651,24 +1651,24 @@ epicsEnvSet("ECMC_AXIS_EXPR_LINE_7", "") epicsEnvSet("ECMC_AXIS_EXPR_LINE_8", "") epicsEnvSet("ECMC_AXIS_EXPR_LINE_9", "") epicsEnvSet("ECMC_AXIS_EXPR_LINE_10", "") -ecmcFil2022/02/08 12:33:28.231 OK -2022/02/08 12:33:28.231 OK -2022/02/08 12:33:28.231 OK -2022/02/08 12:33:28.232 OK -2022/02/08 12:33:28.232 OK -2022/02/08 12:33:28.232 OK -2022/02/08 12:33:28.232 OK -2022/02/08 12:33:28.232 OK -2022/02/08 12:33:28.232 OK -2022/02/08 12:33:28.232 OK -2022/02/08 12:33:28.232 OK -2022/02/08 12:33:28.233 OK -2022/02/08 12:33:28.233 OK -2022/02/08 12:33:28.233 OK -2022/02/08 12:33:28.233 OK -2022/02/08 12:33:28.233 OK -2022/02/08 12:33:28.233 OK -2022/02/08 12:33:28.234 OK +ecmcFil2022/02/08 14:38:49.267 OK +2022/02/08 14:38:49.267 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.268 OK +2022/02/08 14:38:49.269 OK +2022/02/08 14:38:49.269 OK +2022/02/08 14:38:49.269 OK +2022/02/08 14:38:49.269 OK eExist("/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmc_axis_sync.cmd",1) iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/ecmc_axis_sync.cmd #============================================================================== @@ -1847,57 +1847,57 @@ iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/verify ecmcEpicsEnvSetCalcTernary(ECMC_EXE_CMD,"abs(32768.0)<>0","# ECMC_DRV_SCALE_DENOM value OK == 32768.0...", "ecmcExit Error: ECMC_DRV_SCALE_DENOM == 0...") # ECMC_DRV_SCALE_DENOM value OK == 32768.0... epicsEnvUnset(ECMC_EXE_CMD) -ecmcFileExist("/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/issueWa2022/02/08 12:33:28.253 OK -2022/02/08 12:33:28.253 OK -2022/02/08 12:33:28.253 OK -2022/02/08 12:33:28.253 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.256 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.257 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.258 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.259 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK +ecmcFileExist("/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/issueWa2022/02/08 14:38:49.280 OK +2022/02/08 14:38:49.280 OK +2022/02/08 14:38:49.280 OK +2022/02/08 14:38:49.280 OK +2022/02/08 14:38:49.283 OK +2022/02/08 14:38:49.283 OK +2022/02/08 14:38:49.283 OK +2022/02/08 14:38:49.283 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.284 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.285 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.286 OK +2022/02/08 14:38:49.287 OK rning.cmd",1) iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/issueWarning.cmd "EXPR_STR='-1>0',WARNING_STR='WARNING: ECMC_MRES setting is deprecated and will not be used. (MRES will be calulated instead: ECMC_ENC_SCALE_NUM/ECMC_ENC_SCALE_DENOM).. '" #============================================================================== @@ -1963,32 +1963,32 @@ ecmcConfigOrDie "Cfg.SetAxisDrvBrakeCloseAheadTime(2,0)" ecmcConfigOrDie "Cfg.SetAxisSoftLimitPosBwd(2,-130)" ecmcConfigOrDie "Cfg.SetAxisEnableSoftLimitBwd(2,1)" ecmcConfigOrDie "Cfg.SetAxisSoftLimitPosFwd(2,20)" -ecmcConfigOrDie "Cfg.SetAxisEnableSoftLimitFwd(2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.260 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.261 OK -2022/02/08 12:33:28.262 OK -2022/02/08 12:33:28.262 OK -2022/02/08 12:33:28.262 ecmcMotorRecord:: setIntegerParam(2 motorPowerAutoOnOff_)=2 -2022/02/08 12:33:28.262 ecmcMotorRecord:: setDoubleParam(2 motorPowerOnDelay_)=6 -2022/02/08 12:33:28.262 ecmcMotorRecord:: setDoubleParam(2 motorPowerOffDelay_=-1 -2022/02/08 12:33:28.262 ecmcMotorRecord:: udateMotorLimitsRO(2) enabledHighAndLow=1 valid=1 fValueHigh=20 fValueLow=-130 -2022/02/08 12:33:28.263 ecmcMotorRecord:: connected(2) -2022/02/08 12:33:28.263 ecmcMotorRecord:: initialPoll(2) status=0 +ecmcConfigOrDie "Cfg.SetAxisEnableSoftLimitFwd(2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.287 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.288 OK +2022/02/08 14:38:49.289 ecmcMotorRecord:: setIntegerParam(2 motorPowerAutoOnOff_)=2 +2022/02/08 14:38:49.289 ecmcMotorRecord:: setDoubleParam(2 motorPowerOnDelay_)=6 +2022/02/08 14:38:49.289 ecmcMotorRecord:: setDoubleParam(2 motorPowerOffDelay_=-1 +2022/02/08 14:38:49.289 ecmcMotorRecord:: udateMotorLimitsRO(2) enabledHighAndLow=1 valid=1 fValueHigh=20 fValueLow=-130 +2022/02/08 14:38:49.289 ecmcMotorRecord:: connected(2) +2022/02/08 14:38:49.289 ecmcMotorRecord:: initialPoll(2) status=0 2,1)" ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec0.s1.binaryInput06.0,"ax2.mon.lowlim")" ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec0.s1.binaryInput05.0,"ax2.mon.highlim")" @@ -2071,13 +2071,13 @@ epicsEnvUnset(ECMC_EC_ENC_RESET) epicsEnvUnset(ECMC_EC_ENC_ALARM_0) epicsEnmacLib: macro ECMC_EXE_CMD is undefined (expanding string ecmcEpicsEnvSetCalcTernary(ECMC_EXE_CMD, "'${ECMC_MODE=FULL}'='DAQ'","ecmcExit Error: ECMC started in DAQ mode. Motion not supported..","#-")${ECMC_EXE_CMD}) macLib: macro ECMC_EXE_CMD is undefined (expanding string ${ECMC_EXE_CMD}) -2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.274 OK +2022/02/08 14:38:49.300 OK +2022/02/08 14:38:49.300 OK +2022/02/08 14:38:49.300 OK +2022/02/08 14:38:49.300 OK +2022/02/08 14:38:49.300 OK +2022/02/08 14:38:49.300 OK +2022/02/08 14:38:49.300 OK vUnset(ECMC_EC_ENC_ALARM_1) epicsEnvUnset(ECMC_EC_ENC_ALARM_2) epicsEnvUnset(ECMC_EC_ENC_WARNING) @@ -2168,17 +2168,17 @@ ecmcConfigOrDie "Cfg.AppendAxisPLCExpr(2)=" ecmcConfigOrDie "Cfg.AppendAxisPLCExpr(2)=" ecmcConfigOrDie "Cfg.AppendAxisPLCExpr(2)=" ecmcConfigOrDie "Cfg.AppendAxisPLCExpr(2)=" -ecmcConfigOrDi2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.274 OK -2022/02/08 12:33:28.275 OK -2022/02/08 12:33:28.275 OK -2022/02/08 12:33:28.275 OK -2022/02/08 12:33:28.275 OK -2022/02/08 12:33:28.275 OK -2022/02/08 12:33:28.275 OK -2022/02/08 12:33:28.275 OK -2022/02/08 12:33:28.275 OK +ecmcConfigOrDi2022/02/08 14:38:49.300 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK +2022/02/08 14:38:49.301 OK e "Cfg.AppendAxisPLCExpr(2)=" ecmcConfigOrDie "Cfg.AppendAxisPLCExpr(2)=" ecmcConfigOrDie "Cfg.AppendAxisPLCExpr(2)=" @@ -2345,56 +2345,56 @@ epicsEnvUnset(ECMC_EXE_CMD) iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/verifyOrDie.cmd "EXPR_STR='abs(2147483648)<>0',SUCCESS_STR='ECMC_DRV_SCALE_DENOM value OK == 2147483648...',ERROR_STR='ECMC_DRV_SCALE_DENOM == 0...'" #============================================================================== # verifyOrDie.cmd -ecmcEpicsEnvSetCalcTernary(ECMC_EXE_CMD,"abs(2147483648)<>0","# ECMC_DRV_SCALE_DENOM value OK == 2147483648...",2022/02/08 12:33:28.286 OK -2022/02/08 12:33:28.286 OK -2022/02/08 12:33:28.286 OK -2022/02/08 12:33:28.286 OK -2022/02/08 12:33:28.289 OK -2022/02/08 12:33:28.289 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.290 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.291 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.292 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK +ecmcEpicsEnvSetCalcTernary(ECMC_EXE_CMD,"abs(2147483648)<>0","# ECMC_DRV_SCALE_DENOM value OK == 2147483648...",2022/02/08 14:38:49.311 OK +2022/02/08 14:38:49.311 OK +2022/02/08 14:38:49.311 OK +2022/02/08 14:38:49.311 OK +2022/02/08 14:38:49.313 OK +2022/02/08 14:38:49.313 OK +2022/02/08 14:38:49.313 OK +2022/02/08 14:38:49.313 OK +2022/02/08 14:38:49.313 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.314 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.315 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK "ecmcExit Error: ECMC_DRV_SCALE_DENOM == 0...") # ECMC_DRV_SCALE_DENOM value OK == 2147483648... epicsEnvUnset(ECMC_EXE_CMD) @@ -2462,32 +2462,32 @@ ecmcConfigOrDie "Cfg.SetAxisDrvBrakeOpenDelayTime(3,0)" ecmcConfigOrDie "Cfg.SetAxisDrvBrakeCloseAheadTime(3,0)" ecmcConfigOrDie "Cfg.SetAxisSoftLimitPosBwd(3,0)" ecmcConfigOrDie "Cfg.SetAxisEnableSoftLimitBwd(3,0)" -ecmcConfi2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.293 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.294 OK -2022/02/08 12:33:28.295 ecmcMotorRecord:: setIntegerParam(3 motorPowerAutoOnOff_)=2 -2022/02/08 12:33:28.295 ecmcMotorRecord:: setDoubleParam(3 motorPowerOnDelay_)=6 -2022/02/08 12:33:28.295 ecmcMotorRecord:: setDoubleParam(3 motorPowerOffDelay_=-1 -2022/02/08 12:33:28.295 ecmcMotorRecord:: connected(3) -2022/02/08 12:33:28.295 ecmcMotorRecord:: initialPoll(3) status=0 +ecmcConfi2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.316 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.317 OK +2022/02/08 14:38:49.318 OK +2022/02/08 14:38:49.318 OK +2022/02/08 14:38:49.318 OK +2022/02/08 14:38:49.318 OK +2022/02/08 14:38:49.318 OK +2022/02/08 14:38:49.318 OK +2022/02/08 14:38:49.318 ecmcMotorRecord:: setIntegerParam(3 motorPowerAutoOnOff_)=2 +2022/02/08 14:38:49.318 ecmcMotorRecord:: setDoubleParam(3 motorPowerOnDelay_)=6 +2022/02/08 14:38:49.318 ecmcMotorRecord:: setDoubleParam(3 motorPowerOffDelay_=-1 +2022/02/08 14:38:49.319 ecmcMotorRecord:: connected(3) +2022/02/08 14:38:49.319 ecmcMotorRecord:: initialPoll(3) status=0 gOrDie "Cfg.SetAxisSoftLimitPosFwd(3,0)" ecmcConfigOrDie "Cfg.SetAxisEnableSoftLimitFwd(3,0)" ecmcConfigOrDie "Cfg.LinkEcEntryToObject(ec0.s11.ONE.0,"ax3.mon.lowlim")" @@ -2643,11 +2643,11 @@ iocshLoad /home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmccfg/ruckig/loadPl #============================================================================== # loadPlugin.cmd ecmcConfigOrDie "Cfg.LoadPlugin(0,/home/pi/epics/base-7.0.5/require/3.4.0/siteMods/ecmc_plugin_grbl/develop/lib/linux-arm/libecmc_plugin_grbl.so,DBG_PRINT=1;X_AXIS=1;Y_AXIS=2;SPINDLE_AXIS=3;AUTO_ENABLE=0;AUTO_START=0;)" -../ecmc_plugin_grbl/ecmcGrbl.cpp:doMainWorker:459 +../ecmc_plugin_grbl/ecmcGrbl.cpp:doMainWorker:465 ../grbl/grbl_serial.c:serial_init:108: -../grbl/grbl_eeprom.c:ecmc_init_file:53 -GRBL: INFO: Waiting for grbl init..../ecmc_plugin_grbl/ecmcGrbl.cpp:doWriteWorker:245 +../ecmc_plugin_grbl/ecmcGrbl.cpp:doWriteWorker:245 GRBL: INFO: Wait for startup +GRBL: INFO: Waiting for grbl init..../grbl/grbl_eeprom.c:ecmc_init_file:53 ../grbl/grbl_settings.c:settings_restore:132 settings_restore complete!!!.. ../grbl/grbl_eeprom.c:memcpy_from_eeprom_with_checksum:215 EEPROM simulated by file.. ../grbl/grbl_stepper.c:stepper_init:609: @@ -2693,68 +2693,68 @@ Plugin info: max plc funcs = 64 max plc func args = 10 max plc consts = 64 - Construct func = @0xb4f1ef40 - Enter realtime func = @0xb4f1ee38 - Exit realtime func = @0xb4f1ee04 - Realtime func = @0xb4f1ee34 - Destruct func = @0xb4f1ee0c - dlhandle = @0xc29e28 + Construct func = @0xb510ff68 + Enter realtime func = @0xb510fe60 + Exit realtime func = @0xb510fe2c + Realtime func = @0xb510fe5c + Destruct func = @0xb510fe34 + dlhandle = @0x650df8 Plc functions: funcs[00]: Name = "grbl_set_execute(arg0);" Desc = double grbl_set_execute() : Trigg execution of loaded g-code at positive edge of Arg count = 1 - func = @0xb4f1ee3c + func = @0xb510fe64 funcs[01]: Name = "grbl_mc_halt(arg0);" Desc = double grbl_mc_halt() : Halt grbl motion at positive edge of Arg count = 1 - func = @0xb4f1ee58 + func = @0xb510fe80 funcs[02]: Name = "grbl_mc_resume(arg0);" Desc = double grbl_mc_resume() : Resume halted grbl motion at positive edge of Arg count = 1 - func = @0xb4f1ee74 + func = @0xb510fe9c funcs[03]: Name = "grbl_mc_reset(arg0);" Desc = double grbl_mc_reset() : Reset grbl at positive edge of Arg count = 1 - func = @0xb4f1ee90 + func = @0xb510feb8 funcs[04]: Name = "grbl_get_busy();" Desc = double grbl_get_busy() : Get grbl system busy (still executing motion code) Arg count = 0 - func = @0xb4f1eeac + func = @0xb510fed4 funcs[05]: Name = "grbl_get_parser_busy();" Desc = double grbl_get_parser_busy() : Get g-code parser busy. Arg count = 0 - func = @0xb4f1eec0 + func = @0xb510fee8 funcs[06]: Name = "grbl_get_code_row_num();" Desc = double grbl_get_code_row_num() : Get g-code row number currently preparing for exe. Arg count = 0 - func = @0xb4f1eed4 + func = @0xb510fefc funcs[07]: Name = "grbl_get_error();" Desc = double grbl_get_error() : Get error code. Arg count = 0 - func = @0xb4f1eefc + func = @0xb510ff24 funcs[08]: Name = "grbl_reset_error();" Desc = double grbl_reset_error() : Reset error. Arg count = 0 - func = @0xb4f1eee8 + func = @0xb510ff10 funcs[09]: Name = "grbl_get_all_enabled();" Desc = double grbl_get_all_enabled() : Get all configured axes enabled. Arg count = 0 - func = @0xb4f1ef10 + func = @0xb510ff38 funcs[10]: Name = "grbl_set_all_enable(arg0);" Desc = double grbl_set_all_enable(enable) : Set enable on all configured axes. Arg count = 1 - func = @0xb4f1ef24 + func = @0xb510ff4c Plc constants: epicsEnvUnset(ECMC_PLUGIN_REPORT); @@ -2769,47 +2769,47 @@ epicsEnvUnset(ECMC_PLUGIN_CONFIG) # $110, $111 and $112 – [X,Y,Z] Max rate, mm/min\n # $120, $121, $122 – [X,Y,Z] Acceleration, mm/sec^2\n ecmcGrblLoadConfigFile("./cfg/grbl.cfg") -../ecmc_plugin_grbl/ecmcGrbl.cpp:loadConfigFile:991: file ./cfg/grbl.cfg, append 0 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # Configuration file for grbl -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # Supported variables: -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # $11 - Junction deviation, mm -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # $12 – Arc tolerance, mm -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # $30 - Max spindle speed, RPM -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # $31 - Min spindle speed, RPM -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # $100, $101 and $102 – [X,Y,Z] steps/mm -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # $110, $111 and $112 – [X,Y,Z] Max rate, mm/min -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # $120, $121, $122 – [X,Y,Z] Acceleration, mm/sec^2 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # Example: Set Max spindle speed to 1000rpm -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # $30=1000 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # More info can be found (only the above commands/variables are supported): -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # https://github.com/gnea/grbl/blob/master/doc/markdown/settings.md -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command # -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command $120=1234 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:984: GRBL: INFO: Buffer size 1 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command $121=1234 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:984: GRBL: INFO: Buffer size 2 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:957:command $122=1234 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:984: GRBL: INFO: Buffer size 3 +../ecmc_plugin_grbl/ecmcGrbl.cpp:loadConfigFile:997: file ./cfg/grbl.cfg, append 0 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # Configuration file for grbl +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # Supported variables: +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # $11 - Junction deviation, mm +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # $12 – Arc tolerance, mm +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # $30 - Max spindle speed, RPM +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # $31 - Min spindle speed, RPM +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # $100, $101 and $102 – [X,Y,Z] steps/mm +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # $110, $111 and $112 – [X,Y,Z] Max rate, mm/min +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # $120, $121, $122 – [X,Y,Z] Acceleration, mm/sec^2 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # Example: Set Max spindle speed to 1000rpm +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # $30=1000 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # More info can be found (only the above commands/variables are supported): +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # https://github.com/gnea/grbl/blob/master/doc/markdown/settings.md +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command # +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command $120=1234 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:990: GRBL: INFO: Buffer size 1 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command $121=1234 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:990: GRBL: INFO: Buffer size 2 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:963:command $122=1234 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addConfig:990: GRBL: INFO: Buffer size 3 #ecmcGrblAddConfig("$120=1234"); #ecmcGrblAddConfig("$121=1234"); #ecmcGrblAddConfig("$122=1234"); # Load g-code ecmcGrblLoadGCodeFile("./plc/gcode.nc",0) -../ecmc_plugin_grbl/ecmcGrbl.cpp:loadGCodeFile:922: file ./plc/gcode.nc, append 0 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G1X20Y20F360 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 1 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command S1000 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 2 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command M03 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 3 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G4P2 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 4 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G2X0Y0R20 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 5 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G4P2 +../ecmc_plugin_grbl/ecmcGrbl.cpp:loadGCodeFile:928: file ./plc/gcode.nc, append 0 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G1X20Y20F360 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 1 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command S1000 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 2 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command M03 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 3 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G4P2 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 4 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G2X0Y0R20 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 5 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G4P2 ../ecmc_plug# # Test of GRBL plugin for g-code parsing # @@ -2859,23 +2859,23 @@ if(static.state == 1) { # #grbl_set_execute(0); # #grbl_set_execute(1); #}; -in_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 6 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G0X10Y10 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 7 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G2X10Y-10R10 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 8 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command M05 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 9 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G4P2 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 10 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G1X0Y0 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 11 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G1X20Y20F360 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 12 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G4P2 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 13 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:909:command G2X0Y0R20 -../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:916: GRBL: INFO: Buffer size 14 +in_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 6 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G0X10Y10 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 7 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G2X10Y-10R10 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 8 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command M05 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 9 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G4P2 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 10 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G1X0Y0 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 11 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G1X20Y20F360 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 12 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G4P2 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 13 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:915:command G2X0Y0R20 +../ecmc_plugin_grbl/ecmcGrbl.cpp:addCommand:922: GRBL: INFO: Buffer size 14 #ecmcGrblAddCommand("G1X20Y20F360"); #ecmcGrblAddCommand("G4P2"); #ecmcGrblAddCommand("G2X0Y0R20"); @@ -2945,12 +2945,6 @@ Error : 0.00000 Row : 0.00000 Ecmc error : 0.00000 0.00000 0.00000 All Enabled : 0.00000 -GRBL busy : 1.00000 -Parser busy : 1.00000 -Error : 0.00000 -Row : 0.00000 -Ecmc error : 0.00000 0.00000 0.00000 -All Enabled : 0.00000 #asynSetTraceMask(MC_CPU1, -1, 0x41) # Note need to test 0x21 later.. #asynSetTraceMask(MC_CPU1, -1, 0x21) @@ -2964,35 +2958,35 @@ ECATtimestamp aSubRecord: IOC_TEST:m0s006-BI01-TimeRiseTS ECATtimestamp aSubRecord: IOC_TEST:m0s006-BI01-TimeFallTS ECATtimestamp aSubRecord: IOC_TEST:m0s006-BI02-TimeRiseTS ECATtimestamp aSubRecord: IOC_TEST:m0s006-BI02-TimeFallTS -2022/02/08 12:33:33.176 [devMotorAsyn.c:439 IOC_TEST:Axis1] init_record IOC_TEST:Axis1 position=-32.040000 encoderPos=-32.040000 velocity=0.000000 MSTAstatus=0x4d00 flagsValue=0x3f flagsWritten=0x3f pmr->mflg=0x0 -2022/02/08 12:33:33.176 [devMotorAsyn.c:185 IOC_TEST:Axis1] init_controller IOC_TEST:Axis1 set encoder ratio=1.000000 status=0 -2022/02/08 12:33:33.176 [devMotorAsyn.c:266 IOC_TEST:Axis1] update_soft_limits IOC_TEST:Axis1 RawHLM_RO=130.000000 RawLLM_RO=-20.000000 valid=1 DHLM_RO=130.000000 DLLM_RO=-20.000000 -2022/02/08 12:33:33.176 [motorDevSup.c:327 IOC_TEST:Axis1] PositionRestoreNeeded IOC_TEST:Axis1 rstm=2 dval=0.000000 drbv=-32.040000 pmr->rdbd=0.100000 rdbd=0.100000 pmr->mres=0.030000 pmr->mflg=0x3f dval_non_zero_pos_near_zero=0 ret=0 -2022/02/08 12:33:33.176 [motorRecord.cc:782 IOC_TEST:Axis1] init_re_init start neverPolled=0 stat=17 nsta=0 -2022/02/08 12:33:33.176 [motorRecord.cc:720 IOC_TEST:Axis1] enforceMinRetryDeadband spdb=0.100000 rdbd=0.100000 mres=0.030000 -2022/02/08 12:33:33.176 [motorRecord.cc:4484 IOC_TEST:Axis1] pmr->dhlm=130 softLimitRO=130 -2022/02/08 12:33:33.176 [motorRecord.cc:4545 IOC_TEST:Axis1] pmr->dllm=-20 softLimitRO=-20 -2022/02/08 12:33:33.176 [motorRecord.cc:833 IOC_TEST:Axis1] init_re_init end dval=-32.040000 drbv=-32.040000 rdbd=0.100000 spdb=0.100000 -2022/02/08 12:33:33.176 [motorRecord.cc:968 IOC_TEST:Axis1] init_record process_reason="callbackdata + soft limits" dval=-32.040000 drbv=-32.040000 rdbd=0.100000 spdb=0.100000 stat=0 msta=0x4d00 neverPolled=0 -2022/02/08 12:33:33.176 [devMotorAsyn.c:439 IOC_TEST:Axis2] init_record IOC_TEST:Axis2 position=0.000000 encoderPos=0.000000 velocity=0.000000 MSTAstatus=0x0f00 flagsValue=0x3f flagsWritten=0x3f pmr->mflg=0x0 -2022/02/08 12:33:33.176 [devMotorAsyn.c:185 IOC_TEST:Axis2] init_controller IOC_TEST:Axis2 set encoder ratio=1.000000 status=0 -2022/02/08 12:33:33.176 [devMotorAsyn.c:266 IOC_TEST:Axis2] update_soft_limits IOC_TEST:Axis2 RawHLM_RO=20.000000 RawLLM_RO=-130.000000 valid=1 DHLM_RO=20.000000 DLLM_RO=-130.000000 -2022/02/08 12:33:33.176 [motorDevSup.c:327 IOC_TEST:Axis2] PositionRestoreNeeded IOC_TEST:Axis2 rstm=2 dval=0.000000 drbv=0.000000 pmr->rdbd=0.100000 rdbd=0.100000 pmr->mres=0.030000 pmr->mflg=0x3f dval_non_zero_pos_near_zero=0 ret=0 -2022/02/08 12:33:33.176 [motorRecord.cc:782 IOC_TEST:Axis2] init_re_init start neverPolled=0 stat=17 nsta=0 -2022/02/08 12:33:33.176 [motorRecord.cc:720 IOC_TEST:Axis2] enforceMinRetryDeadband spdb=0.100000 rdbd=0.100000 mres=0.030000 -2022/02/08 12:33:33.176 [motorRecord.cc:4484 IOC_TEST:Axis2] pmr->dhlm=20 softLimitRO=20 -2022/02/08 12:33:33.176 [motorRecord.cc:4545 IOC_TEST:Axis2] pmr->dllm=-130 softLimitRO=-130 -2022/02/08 12:33:33.176 [motorRecord.cc:833 IOC_TEST:Axis2] init_re_init end dval=0.000000 drbv=0.000000 rdbd=0.100000 spdb=0.100000 -2022/02/08 12:33:33.176 [motorRecord.cc:968 IOC_TEST:Axis2] init_record process_reason="callbackdata + soft limits" dval=0.000000 drbv=0.000000 rdbd=0.100000 spdb=0.100000 stat=0 msta=0xf00 neverPolled=0 -2022/02/08 12:33:33.176 [devMotorAsyn.c:439 IOC_TEST:Axis3] init_record IOC_TEST:Axis3 position=359.997253 encoderPos=359.997253 velocity=0.000000 MSTAstatus=0x0b0a flagsValue=0x3f flagsWritten=0x3f pmr->mflg=0x0 -2022/02/08 12:33:33.177 [devMotorAsyn.c:185 IOC_TEST:Axis3] init_controller IOC_TEST:Axis3 set encoder ratio=1.000000 status=0 -2022/02/08 12:33:33.177 [devMotorAsyn.c:266 IOC_TEST:Axis3] update_soft_limits IOC_TEST:Axis3 RawHLM_RO=0.000000 RawLLM_RO=0.000000 valid=0 DHLM_RO=0.000000 DLLM_RO=0.000000 -2022/02/08 12:33:33.177 [motorDevSup.c:327 IOC_TEST:Axis3] PositionRestoreNeeded IOC_TEST:Axis3 rstm=2 dval=0.000000 drbv=359.997253 pmr->rdbd=0.300000 rdbd=0.300000 pmr->mres=0.000343 pmr->mflg=0x3f dval_non_zero_pos_near_zero=0 ret=0 -2022/02/08 12:33:33.177 [motorRecord.cc:782 IOC_TEST:Axis3] init_re_init start neverPolled=0 stat=17 nsta=0 -2022/02/08 12:33:33.177 [motorRecord.cc:720 IOC_TEST:Axis3] enforceMinRetryDeadband spdb=0.300000 rdbd=0.300000 mres=0.000343 -2022/02/08 12:33:33.177 [motorRecord.cc:833 IOC_TEST:Axis3] iniocRun: All initialization complete -it_re_init end dval=359.997253 drbv=359.997253 rdbd=0.300000 spdb=0.300000 -2022/02/08 12:33:33.177 [motorRecord.cc:968 IOC_TEST:Axis3] init_record process_reason="callbackdata + soft limits" dval=359.997253 drbv=359.997253 rdbd=0.300000 spdb=0.300000 stat=0 msta=0xb0a neverPolled=0 +2022/02/08 14:38:55.173 [devMotorAsyn.c:439 IOC_TEST:Axis1] init_record IOC_TEST:Axis1 position=14.340000 encoderPos=14.340000 velocity=0.000000 MSTAstatus=0x4d00 flagsValue=0x3f flagsWritten=0x3f pmr->mflg=0x0 +2022/02/08 14:38:55.173 [devMotorAsyn.c:185 IOC_TEST:Axis1] init_controller IOC_TEST:Axis1 set encoder ratio=1.000000 status=0 +2022/02/08 14:38:55.173 [devMotorAsyn.c:266 IOC_TEST:Axis1] update_soft_limits IOC_TEST:Axis1 RawHLM_RO=130.000000 RawLLM_RO=-20.000000 valid=1 DHLM_RO=130.000000 DLLM_RO=-20.000000 +2022/02/08 14:38:55.173 [motorDevSup.c:327 IOC_TEST:Axis1] PositionRestoreNeeded IOC_TEST:Axis1 rstm=2 dval=0.000000 drbv=14.340000 pmr->rdbd=0.100000 rdbd=0.100000 pmr->mres=0.030000 pmr->mflg=0x3f dval_non_zero_pos_near_zero=0 ret=0 +2022/02/08 14:38:55.173 [motorRecord.cc:782 IOC_TEST:Axis1] init_re_init start neverPolled=0 stat=17 nsta=0 +2022/02/08 14:38:55.173 [motorRecord.cc:720 IOC_TEST:Axis1] enforceMinRetryDeadband spdb=0.100000 rdbd=0.100000 mres=0.030000 +2022/02/08 14:38:55.173 [motorRecord.cc:4484 IOC_TEST:Axis1] pmr->dhlm=130 softLimitRO=130 +2022/02/08 14:38:55.174 [motorRecord.cc:4545 IOC_TEST:Axis1] pmr->dllm=-20 softLimitRO=-20 +2022/02/08 14:38:55.174 [motorRecord.cc:833 IOC_TEST:Axis1] init_re_init end dval=14.340000 drbv=14.340000 rdbd=0.100000 spdb=0.100000 +2022/02/08 14:38:55.174 [motorRecord.cc:968 IOC_TEST:Axis1] init_record process_reason="callbackdata + soft limits" dval=14.340000 drbv=14.340000 rdbd=0.100000 spdb=0.100000 stat=0 msta=0x4d00 neverPolled=0 +2022/02/08 14:38:55.174 [devMotorAsyn.c:439 IOC_TEST:Axis2] init_record IOC_TEST:Axis2 position=0.000000 encoderPos=0.000000 velocity=0.000000 MSTAstatus=0x0f00 flagsValue=0x3f flagsWritten=0x3f pmr->mflg=0x0 +2022/02/08 14:38:55.174 [devMotorAsyn.c:185 IOC_TEST:Axis2] init_controller IOC_TEST:Axis2 set encoder ratio=1.000000 status=0 +2022/02/08 14:38:55.174 [devMotorAsyn.c:266 IOC_TEST:Axis2] update_soft_limits IOC_TEST:Axis2 RawHLM_RO=20.000000 RawLLM_RO=-130.000000 valid=1 DHLM_RO=20.000000 DLLM_RO=-130.000000 +2022/02/08 14:38:55.174 [motorDevSup.c:327 IOC_TEST:Axis2] PositionRestoreNeeded IOC_TEST:Axis2 rstm=2 dval=0.000000 drbv=0.000000 pmr->rdbd=0.100000 rdbd=0.100000 pmr->mres=0.030000 pmr->mflg=0x3f dval_non_zero_pos_near_zero=0 ret=0 +2022/02/08 14:38:55.174 [motorRecord.cc:782 IOC_TEST:Axis2] init_re_init start neverPolled=0 stat=17 nsta=0 +2022/02/08 14:38:55.174 [motorRecord.cc:720 IOC_TEST:Axis2] enforceMinRetryDeadband spdb=0.100000 rdbd=0.100000 mres=0.030000 +2022/02/08 14:38:55.174 [motorRecord.cc:4484 IOC_TEST:Axis2] pmr->dhlm=20 softLimitRO=20 +2022/02/08 14:38:55.174 [motorRecord.cc:4545 IOC_TEST:Axis2] pmr->dllm=-130 softLimitRO=-130 +2022/02/08 14:38:55.174 [motorRecord.cc:833 IOC_TEST:Axis2] init_re_init end dval=0.000000 drbv=0.000000 rdbd=0.100000 spdb=0.100000 +2022/02/08 14:38:55.174 [motorRecord.cc:968 IOC_TEST:Axis2] init_record process_reason="callbackdata + soft limits" dval=0.000000 drbv=0.000000 rdbd=0.100000 spdb=0.100000 stat=0 msta=0xf00 neverPolled=0 +2022/02/08 14:38:55.174 [devMotorAsyn.c:439 IOC_TEST:Axis3] init_record IOC_TEST:Axis3 position=359.998627 encoderPos=359.998627 velocity=0.000000 MSTAstatus=0x0b0a flagsValue=0x3f flagsWritten=0x3f pmr->mflg=0x0 +2022/02/08 14:38:55.174 [devMotorAsyn.c:185 IOC_TEST:Axis3] init_controller IOC_TEST:Axis3 set encoder ratio=1.000000 status=0 +2022/02/08 14:38:55.174 [devMotorAsyn.c:266 IOC_TEST:Axis3] update_soft_limits IOC_TEST:Axis3 RawHLM_RO=0.000000 RawLLM_RO=0.000000 valid=0 DHLM_RO=0.000000 DLLM_RO=0.000000 +2022/02/08 14:38:55.174 [motorDevSup.c:327 IOC_TEST:Axis3] PositionRestoreNeeded IOC_TEST:Axis3 rstm=2 dval=0.000000 drbv=359.998627 pmr->rdbd=0.300000 rdbd=0.300000 pmr->mres=0.000343 pmr->mflg=0x3f dval_non_zero_pos_near_zero=0 ret=0 +2022/02/08 14:38:55.174 [motorRecord.cc:782 IOC_TEST:Axis3] init_re_init start neverPolled=0 stat=17 nsta=0 +2022/02/08 14:38:55.174 [motorRecord.cc:720 IOC_TEST:Axis3] enforceMinRetryDeadband spdb=0.300000 rdbd=0.300000 mres=0.000343 +2022/02/08 14:38:55.174 [motorRecord.cc:833 IOC_TEST:Axis3] init_re_init end dval=359.998627 drbv=359.998627 rdbd=0.300000 spdb=0.300000 +2022/02/08 14:38:55.175 [motorRecord.cc:968 IOC_TEST:Axis3] init_record process_reason="callbackdata + soft limits" dval=359.998627 drbv=359.998627 rdbd=0.300000 spdb=0.300000 stat=0 msta=0xb0a neverPolled=0 +iocRun: All initialization complete GRBL busy : 1.00000 Parser busy : 1.00000 Error : 0.00000 @@ -3004,7 +2998,7 @@ DBF_SHORT: 0 = 0x0 dbpf IOC_TEST:Axis2.SPAM 0 DBF_SHORT: 0 = 0x0 # Set the IOC Prompt String One -epicsEnvSet IOCSH_PS1 "raspberrypi-20961 > " +epicsEnvSet IOCSH_PS1 "raspberrypi-23428 > " # GRBL: INFO: Configuration start GRBL: INFO: Write command (command[0] = $120=1234) @@ -3034,9 +3028,7 @@ system_execute_line switch line[1]=1 2 parameter 122.000000 3 GRBL: INFO: Reply OK -GRBL: INFO: Auto enable configured axes -GRBL: INFO: auto enable -raspberrypi-20961 > GRBL busy : 0.00000 +raspberrypi-23428 > GRBL busy : 0.00000 Parser busy : 0.00000 Error : 0.00000 Row : 0.00000 @@ -3096,8 +3088,13 @@ Error : 0.00000 Row : 0.00000 Ecmc error : 0.00000 0.00000 0.00000 All Enabled : 0.00000 - -raspberrypi-20961 > GRBL busy : 0.00000 +GRBL busy : 0.00000 +Parser busy : 0.00000 +Error : 0.00000 +Row : 0.00000 +Ecmc error : 0.00000 0.00000 0.00000 +All Enabled : 0.00000 +GRBL busy : 0.00000 Parser busy : 0.00000 Error : 0.00000 Row : 0.00000