Hi Joe,
I have a PiezoSystemJena d-Drive, their latest product, and was hoping to use the existing driver written for EDS by you and recently updated (judging by time stamps in
the source files), because it says in the manual that d-Drive is using EDS2 interface.
I was wondering if you/or someone else could comment on errors and if I can use this driver. It’s emphasized in many places that the driver communicates via GPIB.
My configuration: IOC is running on linux box, connected via Ethernet to NPort5450 MOXA switch and then to d-Drive via RS232.
st.cmd
"#!../../bin/linux-x86/PiezoSysJenaIoc
## You may have to change PiezoSysJenaIoc to something else ## everywhere it appears in this file
< envPaths
## Register all support components
dbLoadDatabase("../../dbd/PiezoSysJenaIoc.dbd",0,0)
PiezoSysJenaIoc_registerRecordDeviceDriver(pdbbase)
drvAsynIPPortConfigure("JenaSerial","10.0.10.5:4001")
# Piezosystem Jena EDS motor controller/driver setup parameters:
# (1) maximum number of controllers in system
# (2) maximum drives per controller
# (3) motor task polling rate (min=1Hz, max=60Hz)
#drvPIJEDSdebug=1
#PIJEDSSetup(1, 2, 60)
PIJEDSSetup(1, 2, 10)
# Piezosystem Jena EDS controller/driver configuration parameters:
# (1) controller being configured
# (2) asyn port name (string)
# (3) asyn address (GPIB)
PIJEDSConfig(0, "JenaSerial", 0)
## Load record instances
dbLoadTemplate("../../db/motor.substitutions","user=oksana")
iocInit()
## Start any sequence programs
#seq sncPiezoSysJenaIoc,"user=oksana"
"
motor.substitution
"file "../../db/motor.db"
{
pattern
{P, N, M, DTYP, C, S, DESC, EGU, DIR, VELO,VBAS, ACCL, BDST, BVEL, BACC, MRES, PREC, DHLM, DLLM, INIT}
{jena:, 1, "m$(N)", "PIJEDS", 0, 0, "motor $(N)", um, Pos, 2., 0, .2, 0, 0, .2, .001, 5, 100, 0, ""}
{jena:, 2, "m$(N)", "PIJEDS", 0, 1, "motor $(N)", um, Pos, 2., 0, .2, 0, 0, .2, .001, 5, 100, 0, ""}
}
"
The output I have:
#!../../bin/linux-x86/PiezoSysJenaIoc
## You may have to change PiezoSysJenaIoc to something else ## everywhere it appears in this file < envPaths
epicsEnvSet("ARCH","linux-x86")
epicsEnvSet("IOC","iocPiezoSysJenaIoc")
epicsEnvSet("TOP","/epics/iocs/PiezoSysJena")
epicsEnvSet("EPICS_BASE","/usr/lib/epics")
## Register all support components
dbLoadDatabase("../../dbd/PiezoSysJenaIoc.dbd",0,0)
PiezoSysJenaIoc_registerRecordDeviceDriver(pdbbase)
drvAsynIPPortConfigure("JenaSerial","10.0.10.5:4001")
# Piezosystem Jena EDS motor controller/driver setup parameters:
# (1) maximum number of controllers in system
# (2) maximum drives per controller
# (3) motor task polling rate (min=1Hz, max=60Hz)
#drvPIJEDSdebug=1
#PIJEDSSetup(1, 2, 60)
PIJEDSSetup(1, 2, 10)
# Piezosystem Jena EDS controller/driver configuration parameters:
# (1) controller being configured
# (2) asyn port name (string)
# (3) asyn address (GPIB)
PIJEDSConfig(0, "JenaSerial", 0)
## Load record instances
dbLoadTemplate("../../db/motor.substitutions","user=oksana")
#dbLoadRecords("../../db/PiezoSysJenaIoc.db","user=oksana")
#dbLoadRecords("../../db/motor.db","user=oksana")
iocInit()
Starting iocInit
############################################################################
## EPICS R3.14.11-15 $R3-14-11$ $2009/08/28 18:47:36$ ## EPICS Base built Jan 8 2013 ############################################################################
drvStreamInit: Warning! STREAM_PROTOCOL_PATH not set. Defaults to "."
Illegal field value PV: jena:m1 motor_init_record_com(): card does not exist!
Illegal field value PV: jena:m2 motor_init_record_com(): card does not exist!
iocRun: All initialization complete
## Start any sequence programs
#seq sncPiezoSysJenaIoc,"user=oksana"
epics>
It seems to me that the error “Illegal field value PV: jena:m1 motor_init_record_com(): card does not exist!” may relate to PIJEDSConfig(0, "JenaSerial", 0), where asyn address
is not correct. I also started to question whether I can use this driver…
Thanks for help,
Oksana