1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 <2022> 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 <2022> 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | RE: Attocube AMC100 |
From: | "Ivashkevych, Oksana via Tech-talk" <tech-talk at aps.anl.gov> |
To: | "Lang, Keenan C." <klang at anl.gov>, Tech-talk <tech-talk at aps.anl.gov> |
Date: | Mon, 17 Oct 2022 19:31:48 +0000 |
Hi Keenan at al, It looks like I can not move the motors from the EPICS interface. The commanded position changes, but the readback does not. No errors in the epics shell.
It seems the driver tries to moves it judging by Mtr.MOVN changing value, but the motor does not move.
If I exit the epics while motor is commanded to move and still makes attempts, I see these errors: 2022/10/17 15:29:07.609 asynMotorController:writeFloat64 error, status=3 axis=0, function=1, value=1468813.000000 2022/10/17 15:29:07.609 devMotorAsyn::asynCallback: XF:18IDB-ES{Comp-m1}Mtr pasyn{Float64,Int32}->write returned I have motors with sensors, I can move them from the vendor application. Left only single motor configured for now. Any ideas what could be wrong, or how I can troubleshoot it?
Thank you iocScriptMotor]$ more motor.substitutions.Attocube_AMC file "$(MOTOR)/db/asyn_motor.db" { pattern {P, M, DTYP, PORT, ADDR, DESC, EGU, DIR, VMAX, VELO, VBAS, ACCL, BDST, BVEL, BACC, MRES, PREC, DHLM, DLLM, INIT} {XF:18IDB-ES, "{Comp-m1}Mtr", "asynMotor", AMC-1, 0, "CLp Motor1", mm, Pos, 15., 3., .05, .5, 0, 1.0, 2, .025, 5, 0, 0, ""} ## {XF:18IDB-ES, "{Comp-m2}Mtr", "asynMotor", AMC-1, 1, "CLp Motor2", mm, Pos, 15., 3., .05, .5, 0, 1.0, 2, .025, 5, 0, 0, ""} ## {XF:18IDB-ES, "{Comp-m3}Mtr", "asynMotor", AMC-1, 2, "CLp Motor3", mm, Pos, 15., 3., .05, .5, 0, 1.0, 2, .025, 5, 0, 0, ""} } file "$(TOP)/db/ScriptMotorReload.db" { pattern {P, PORT} {XF:18IDB-ES:, AMC-1} } (base) [oksana@xf18idb-ioc1 iocScriptMotor]$ ./st.cmd.Attocube_AMC
#!../../bin/linux-x86_64/scriptMotor < envPaths epicsEnvSet("IOC","iocScriptMotor") epicsEnvSet("TOP","/epics/devel/support/motor/modules/motorScriptMotor/iocs/scriptMotorIOC") epicsEnvSet("MOTOR","/epics/devel/support/motor") epicsEnvSet("ASYN","/epics/devel/support/asyn") epicsEnvSet("SNCSEQ","/epics/devel/support/seq") epicsEnvSet("BUSY","/epics/devel/support/busy") epicsEnvSet("IPAC","/epics/devel/support/ipac") epicsEnvSet("EPICS_BASE","/epics/devel/epics-base") epicsEnvSet("SUPPORT","/epics/devel/support") epicsEnvSet("LUA","/epics/devel/support/lua") < /epics/common/xf18idb-ioc1-netsetup.cmd # BEGIN ANSIBLE MANAGED BLOCK epicsEnvSet("EPICS_CA_AUTO_ADDR_LIST", "NO") epicsEnvSet("EPICS_CA_ADDR_LIST", "10.66.139.255") epicsEnvSet("EPICS_CAS_AUTO_BEACON_ADDR_LIST", "NO") epicsEnvSet("EPICS_CAS_BEACON_ADDR_LIST", "10.66.139.255") epicsEnvSet("EPICS_CAS_INTF_ADDR_LIST", "10.66.139.26") # END ANSIBLE MANAGED BLOCK dbLoadDatabase("/epics/devel/support/motor/modules/motorScriptMotor/iocs/scriptMotorIOC/dbd/scriptMotor.dbd") scriptMotor_registerRecordDeviceDriver(pdbbase) epicsEnvSet("LUA_SCRIPT_PATH", "./scripts") #epicsEnvSet("IP_ADDRESS", "123.456.789.000") epicsEnvSet("IP_ADDRESS", "10.66.138.124") # Connect to virtual motor controller server drvAsynIPPortConfigure("AMC","10.66.138.124:9090", 0, 0, 0) #ScriptControllerConfig( "PORT_NAME", num_axes, "lua_script", "PARAMS=") ##ScriptControllerConfig("AMC-1", 3, "Attocube_AMC.lua", "PORT=AMC") ScriptControllerConfig("AMC-1", 1, "AMC100.lua", "PORT=AMC") ScriptAxisConfig("AMC-1", 0, "OPEN_LOOP='NO'") ##ScriptAxisConfig("AMC-1", 1, "OPEN_LOOP='NO'") ##ScriptAxisConfig("AMC-1", 2, "OPEN_LOOP='NO'") #ScriptAxisConfig("AMC-1", 0, "OPEN_LOOP='YES'") dbLoadTemplate("motor.substitutions.Attocube_AMC") dbLoadRecords("/epics/devel/support/asyn/db/asynRecord.db", "P=XF:18IDB-ES{MCS:14}, R=Asyn, PORT=AMC, ADDR=0, OMAX=256, IMAX=256") #asynSetTraceMask("MCS2", 0, 255) asynSetTraceIOMask("MCS2", -1, 0x8) asynManager:connectDevice port MCS2 not found iocInit Starting iocInit ############################################################################ ## EPICS R7.0.5 ## Rev. R7.0.5 ############################################################################ cas warning: Configured TCP port was unavailable. cas warning: Using dynamically assigned TCP port 40293, cas warning: but now two or more servers share the same UDP port. cas warning: Depending on your IP kernel this server may not be cas warning: reachable with UDP unicast (a host's IP in EPICS_CA_ADDR_LIST) iocRun: All initialization complete epics> From: Lang, Keenan C. <klang at anl.gov> This is a known issue with the current master branch of lua You can either use the latest tagged version instead, or define CXX11_SUPPORT=NO in CONFIG_SITE.local.Linux From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Ivashkevych, Oksana via Tech-talk <tech-talk at aps.anl.gov> Hello, We have a new Attocube AMC 100 unit. I found the following communication about support of the new AMC controllers https://epics.anl.gov/tech-talk/2021/msg01321.php I built lua, motorScriptMotor within motor, and found st.cmd.Attocube_AMC startup script. I am getting nullptr error and the core dump. I have tried using AMC100.lua script (as was suggested in the link above) instead of Attocube_AMC.lua; renamed the port, thinking that some characters could be the culprit, yet I have same error and the core dump. When I use vmc.lua I do not have the core dump. Just errors.
Thanks iocScriptMotor]$ ../../bin/linux-x86_64/scriptMotor st.cmd.Attocube_AMC
< envPaths epicsEnvSet("IOC","iocScriptMotor") epicsEnvSet("TOP","/epics/devel/support/motor/modules/motorScriptMotor/iocs/scriptMotorIOC") epicsEnvSet("MOTOR","/epics/devel/support/motor") epicsEnvSet("ASYN","/epics/devel/support/asyn") epicsEnvSet("SNCSEQ","/epics/devel/support/seq") epicsEnvSet("BUSY","/epics/devel/support/busy") epicsEnvSet("IPAC","/epics/devel/support/ipac") epicsEnvSet("EPICS_BASE","/epics/devel/epics-base") epicsEnvSet("SUPPORT","/epics/devel/support") epicsEnvSet("LUA","/epics/devel/support/lua") < /epics/common/xf18idb-ioc1-netsetup.cmd # BEGIN ANSIBLE MANAGED BLOCK epicsEnvSet("EPICS_CA_AUTO_ADDR_LIST", "NO") epicsEnvSet("EPICS_CA_ADDR_LIST", "10.66.139.255") epicsEnvSet("EPICS_CAS_AUTO_BEACON_ADDR_LIST", "NO") epicsEnvSet("EPICS_CAS_BEACON_ADDR_LIST", "10.66.139.255") epicsEnvSet("EPICS_CAS_INTF_ADDR_LIST", "10.66.139.26") # END ANSIBLE MANAGED BLOCK dbLoadDatabase("/epics/devel/support/motor/modules/motorScriptMotor/iocs/scriptMotorIOC/dbd/scriptMotor.dbd") scriptMotor_registerRecordDeviceDriver(pdbbase) epicsEnvSet("LUA_SCRIPT_PATH", "./scripts") #epicsEnvSet("IP_ADDRESS", "123.456.789.000") epicsEnvSet("IP_ADDRESS", "10.66.138.144") # Connect to virtual motor controller server drvAsynIPPortConfigure("AMC","10.66.138.144:9090", 0, 0, 0) #ScriptControllerConfig( "PORT_NAME", num_axes, "lua_script", "PARAMS=") ScriptControllerConfig("AMC-1", 2, "Attocube_AMC.lua", "PORT=AMC") scriptMotor: ../../../luaApp/src/luaaa/luaaa.hpp:979: luaaa::LuaClass< <template-parameter-1-1> >::LuaClass(lua_State*, const char*, const luaL_Reg*) [with TCLASS = _apdWrapper; lua_State = lua_State; luaL_Reg = luaL_Reg]: Assertion `klassName
== nullptr' failed. Aborted (core dumped) |