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: | AW: AW: Correct Settings for PIE816 Controller |
From: | "Sintschuk, Michael via Tech-talk" <[email protected]> |
To: | "Peterson, Kevin M." <[email protected]>, Torsten Bögershausen <[email protected]>, "[email protected]" <[email protected]> |
Date: | Thu, 19 Sep 2019 09:33:11 +0000 |
Ok, thanks for the explanations! Another question: i found the PIGCS2Src in the folder motorApp. As i understand it's the GCS-Support driver for PI Controllers. I'm using the E-665.SR Piezo-Controller which in turn has the E-816 computer interface submodule installed. According the the E-816 manual (https://wiki.bnl.gov/nsls2controls/images/0/0b/E-816_User_PZ116E130.pdf) it also supports GCS Commands. It looks like a more consistent way to communicate with Hardware from PI.
So i build another IOC with PIGCS2-Support, my substitution-file:
file "$(MOTOR)/motorApp/Db/asyn_motor.db"
{ pattern {P, M, DTYP, PORT, ADDR, DESC, EGU, DIR, VELO, VBAS, ACCL, BDST, BVEL, BACC, MRES, PREC, DHLM, DLLM, INIT} {PIE665:, "Piezo1", "asynMotor", "PIE816", 0, "Motor 1", deg, Pos, 2., 0.1, .2, 0, 0.1, .2, 1e-6, 5, 1000.0, 0.0, ""} }
and the "st.cmd" file:
#!../../bin/linux-x86_64/iocPIGCS
## You may have to change iocPIGCS to something else ## everywhere it appears in this file < envPaths cd "${TOP}" ## Register all support components dbLoadDatabase "dbd/iocPIGCS.dbd" iocPIGCS_registerRecordDeviceDriver pdbbase # serial communication drvAsynSerialPortConfigure("PIE816_SERIAL","/dev/ttyS0",0,0,0) asynSetOption("PIE816_SERIAL",-1,"baud","115200") asynSetOption("PIE816_SERIAL",-1,"bits","8") asynSetOption("PIE816_SERIAL",-1,"parity","none") asynSetOption("PIE816_SERIAL",-1,"stop","1") asynSetOption("PIE816_SERIAL",-1,"clocal","Y") asynSetOption("PIE816_SERIAL",-1,"crtscts","Y") # PI_GCS2_CreateController(portName, asynPort, numAxes, priority, stackSize, movingPollingRate, idlePollingRate) PI_GCS2_CreateController("PIE816", "PIE816_SERIAL",1, 0,0, 100, 1000) ## Load record instances #dbLoadRecords("db/xxx.db","user=ptb") cd "${TOP}/iocBoot/${IOC}" iocInit ## Start any sequence programs this is what i get when i run the IOC:
~/iocPIGCS/iocBoot/iocPIGCS> ./st.cmd
#!../../bin/linux-x86_64/iocPIGCS ## You may have to change iocPIGCS to something else ## everywhere it appears in this file < envPaths epicsEnvSet("IOC","iocPIGCS") epicsEnvSet("TOP","/home/ptb/iocPIGCS") epicsEnvSet("MODULES","/soft/epics/modules/") epicsEnvSet("ASYN","/soft/epics/modules//asyn") epicsEnvSet("MOTOR","/soft/epics/modules//motor-R6-10-1") epicsEnvSet("EPICS_BASE","/usr/local/epics/base") cd "/home/ptb/iocPIGCS" ## Register all support components dbLoadDatabase "dbd/iocPIGCS.dbd" iocPIGCS_registerRecordDeviceDriver pdbbase # serial communication drvAsynSerialPortConfigure("PIE816_SERIAL","/dev/ttyS0",0,0,0) asynSetOption("PIE816_SERIAL",-1,"baud","115200") asynSetOption("PIE816_SERIAL",-1,"bits","8") asynSetOption("PIE816_SERIAL",-1,"parity","none") asynSetOption("PIE816_SERIAL",-1,"stop","1") asynSetOption("PIE816_SERIAL",-1,"clocal","Y") asynSetOption("PIE816_SERIAL",-1,"crtscts","Y") # PI_GCS2_CreateController(portName, asynPort, numAxes, priority, stackSize, movingPollingRate, idlePollingRate) PI_GCS2_CreateController("PIE816", "PIE816_SERIAL",1, 0,0, 100, 1000) 2019/09/19 11:18:12.592 read from PIE816_SERIAL: PI-E816 V3.25 2019/09/19 11:18:12.592 PIasynController: unknown controller type PIE816_SERIAL: PI-E816 V3.25 ## Load record instances #dbLoadRecords("db/xxx.db","user=ptb") cd "/home/ptb/iocPIGCS/iocBoot/iocPIGCS" iocInit Starting iocInit ############################################################################ ## EPICS R3.15.5 ## EPICS Base built Jul 2 2019 ############################################################################ iocRun: All initialization complete ## Start any sequence programs epics> It says it's an unknown controller type. In the file "PIGCSController.cpp" the E816 is not listed, is that the reason for the message?
According to the manual the E-816 has GCS-Support but still the EPICS
PIGCS2Src drivers are not supporting it?
Michael
Von: Peterson, Kevin M. <[email protected]>
Gesendet: Mittwoch, 18. September 2019 18:38:30 An: Torsten Bögershausen; Sintschuk, Michael; [email protected] Betreff: Re: AW: Correct Settings for PIE816 Controller I will make time to manually apply those changes to the many driver
repos I created, since I failed to merge the pull request before the motor repo split. Kevin On 9/18/19 11:19 AM, Torsten Bögershausen via Tech-talk wrote: > Hej all, > > The warning(s) are actually fixed here: > > <https://github.com/epics-modules/motor/pull/128/commits/13a8649abbb80c884d55169aa99647c76bb4b04d> > > > So I hope that someone finds time to merge/apply > those fixes into the code base. |