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 | 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 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: 回覆: EPICS support for PI E-500 piezo controller |
From: | Torsten Bögershausen via Tech-talk <tech-talk at aps.anl.gov> |
To: | Chiang, Liang-Chih [江良志] <chiang.lc at nsrrc.org.tw>, "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Wed, 20 Sep 2023 15:17:12 +0000 |
I think that there are 2 possibilties here: a) Upgrade the asyn module
(not sure out of my head, when the number of parameters became obsolete, but the latest works) b) increase the number of parameters (the 10 from below) with 16, giving 26, if I count right. PIasynController::PIasynController(const char *portName, const char* asynPort, int numAxes, int priority, int stackSize, int movingPollPeriod, int idlePollPeriod) : asynMotorController(portName, numAxes,
10, From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of "Chiang, Liang-Chih [江良志]
via Tech-talk" <tech-talk at aps.anl.gov> Hello EPICS mates, I'm trying to control PI E-518 which is the communication interface module of the PI E-500 piezo controller system. EPICS base: 3.14.12.5 Motor module: 6-11 The folder PIGCS2Src in Motor module 6-11 seems not support E-518. So I updated the folder with the newest files from GitHub and passed the compiling. When creating motor record for E-518, it shows two kinds of error messages(excerpted): 2023/09/20 15:02:55.455 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_KP_A to list 0, too many parameters and 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 94 in list 0, bad index I don't know how to fix it. Would you provide some suggestions? The full error messages: # ============================================================================
# PI E-518 motor controller is connected via Ethernet, # at IP address 192.168.2.31, TCP port 50000 # ============================================================================ drvAsynIPPortConfigure("PIE518", "192.168.2.31:50000", 0, 0, 0) asynSetTraceMask(PIE518,-1,0x21) # 0x09, 0x03, 0x01 asynSetTraceIOMask(PIE518,-1,0x1) # 0x02, 0x01, 0x00 # PI E-518 uses GCS(General Command Set). PI_GCS2_CreateController parameters: # (1) portName # (2) asynPort # (3) numAxes # (4) priority # (5) stackSize # (6) movingPollingRate # (7) idlePollingRate # HFMAB angle PI_GCS2_CreateController("PIE518-1P", "PIE518", 1, 0, 0, 100, 1000) 2023/09/20 15:02:55.434 read from PIE518: (c) 2016 Physik Instrumente (PI) GmbH & Co. KG, E-518.I3, 119053229, 3.70 PIasynAxis::PIasynAxis() 0: A 2023/09/20 15:02:55.455 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_KP_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_KI_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_KFF_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_NTCHFR1_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_NTCHFR2_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_NTCHRJT1_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_NTCHRJT2_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_NTCHBDWDT1_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_NTCHBDWDT2_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBKP_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBKI_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBKFF_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBNTCHFR1_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBNTCHFR2_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBNTCHRJT1_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBNTCHRJT2_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBNTCHBDWDT1_A to list 0, too many parameters 2023/09/20 15:02:55.456 asynPortDriver:createParam: port=PIE518-1P error adding parameter PI_SUP_RBNTCHBDWDT2_A to list 0, too many parameters # optional PI_Support.db dbLoadRecords("/blsw/13a/software/epics/3.14.12.5/support/motor-R6-11/db/PI_Support.db","P=27a:,R=PIE518-1P:,PORT=PIE518-1P,ADDR=0,TIMEOUT=1") # asyn record dbLoadRecords("/blsw/13a/software/epics/3.14.12.5/support/asyn-4-26/db/asynRecord.db", "P=27a:,R=PIE518-1P:Asyn,PORT=PIE518,ADDR=0,OMAX=256,IMAX=256") ############################################################################### iocInit 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 94 in list 0, bad index 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 95 in list 0, bad index 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 96 in list 0, bad index 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 97 in list 0, bad index 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 98 in list 0, bad index 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 99 in list 0, bad index 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 100 in list 0, bad index 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 101 in list 0, bad index 2023/09/20 15:02:55.457 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 102 in list 0, bad index ############################################################################ Starting iocInit ## EPICS R3.14.12.5 $Date: Tue 2015-03-24 09:57:35 -0500$ ## EPICS Base built Nov 6 2017 ############################################################################ 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 94 in list 0, bad index 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 95 in list 0, bad index 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 96 in list 0, bad index 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 97 in list 0, bad index 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 98 in list 0, bad index 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 99 in list 0, bad index 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 100 in list 0, bad index 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 101 in list 0, bad index 2023/09/20 15:02:55.563 asynPortDriver:setDoubleParam: port=PIE518-1P error setting parameter 102 in list 0, bad index The .cmd file: #Load motor records
dbLoadTemplate("live/pie518_motors.substitutions") #Load pseudo motor records dbLoadTemplate("live/pie518_pseudoMotors.substitutions") < live/pie518.doAfterIocInit # ============================================================================ # PI E-518 motor controller is connected via Ethernet, # at IP address 192.168.2.31, TCP port 50000 # ============================================================================ drvAsynIPPortConfigure("PIE518", "192.168.2.31:50000", 0, 0, 0) asynSetTraceMask(PIE518,-1,0x21) # 0x09, 0x03, 0x01 asynSetTraceIOMask(PIE518,-1,0x1) # 0x02, 0x01, 0x00 # PI E-518 uses GCS(General Command Set). PI_GCS2_CreateController parameters: # (1) portName # (2) asynPort # (3) numAxes # (4) priority # (5) stackSize # (6) movingPollingRate # (7) idlePollingRate # HFMAB angle PI_GCS2_CreateController("PIE518-1P", "PIE518", 1, 0, 0, 100, 1000) # optional PI_Support.db dbLoadRecords("$(MOTOR)/db/PI_Support.db","P=27a:,R=PIE518-1P:,PORT=PIE518-1P,ADDR=0,TIMEOUT=1") # asyn record dbLoadRecords("$(ASYN)/db/asynRecord.db", "P=27a:,R=PIE518-1P:Asyn,PORT=PIE518,ADDR=0,OMAX=256,IMAX=256") Best regards. LiangChih Chiang NSRRC Beamline group email:chiang.lc at nsrrc.org.tw 寄件者: Chiang, Liang-Chih [江良志]
<chiang.lc at nsrrc.org.tw> Thanks Kevin. I later found out that E-500 is the name of the system. Its communication interface module is E-518 which is supported by motorPIGCS2 module. ps. The label "E-518" is not in an obvious place of the E-500 chassis. Best regards. LiangChih Chiang NSRRC Beamline group email:chiang.lc at nsrrc.org.tw 寄件者: Kevin Peterson <kmpeters at anl.gov> The E-500 isn't in the list of supported controllers, but it still may
|