Some nanotec testing at BOA and Oxford temperature controllers
I tested the nanotec a little at BOA. Not finished yet, especially the homing bit. I also added support for an Oxfolrd Mercury temperature controller. But this is not working because my simulation for the Mercury is a different version then the one the EPICS driver is for.
This commit is contained in:
@ -5,3 +5,4 @@ epicsEnvSet("EPICS_BASE","/usr/local/epics")
|
|||||||
epicsEnvSet("ASYN","/usr/local/epics/support/asyn-4-18")
|
epicsEnvSet("ASYN","/usr/local/epics/support/asyn-4-18")
|
||||||
epicsEnvSet("MOTOR","/usr/local/epics/support/motor-6-7")
|
epicsEnvSet("MOTOR","/usr/local/epics/support/motor-6-7")
|
||||||
epicsEnvSet("LAKESHORE336","/usr/local/epics/support/lakeshore336")
|
epicsEnvSet("LAKESHORE336","/usr/local/epics/support/lakeshore336")
|
||||||
|
epicsEnvSet("OXINSTCRYOJET","/usr/local/epics/support/OxInstCryojet-2-18-3")
|
||||||
|
6
iocBoot/iocsinqEPICS/motor.substitutions.nanoboa
Normal file
6
iocBoot/iocsinqEPICS/motor.substitutions.nanoboa
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
file "$(MOTOR)/db/basic_asyn_motor.db"
|
||||||
|
{
|
||||||
|
pattern
|
||||||
|
{P, N, M, DTYP, PORT, ADDR, DESC, EGU, DIR, VELO, VBAS, ACCL, BDST, BVEL, BACC, MRES, PREC, DHLM, DLLM, INIT}
|
||||||
|
{KM36:nano:, 1, "m$(N)", "asynMotor", nano, 1, "m1", mm, Pos, 2.0, 0.1, .2, 0, 1, .2, .001, 3, 180, -180, "1"}
|
||||||
|
}
|
@ -27,6 +27,16 @@ NanotecCreateController("nano","serial1",3,"1,10,9");
|
|||||||
dbLoadRecords("$(ASYN)/db/asynRecord.db","P=KM36:,R=serial1,PORT=serial1,ADDR=0,OMAX=80,IMAX=80")
|
dbLoadRecords("$(ASYN)/db/asynRecord.db","P=KM36:,R=serial1,PORT=serial1,ADDR=0,OMAX=80,IMAX=80")
|
||||||
|
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# DANGER DANGER DANGER
|
||||||
|
#
|
||||||
|
#If the gearing factor in the substitutions file is wrong, then the nanotec
|
||||||
|
# drives badly. Not really a surprise. Thus the following procedure is required:
|
||||||
|
#
|
||||||
|
# - After editing the gearing ratios in the substitutions file, drive each motor
|
||||||
|
# carefully for a small amount and check if it is driving the correct amount by
|
||||||
|
# eye.
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
cd ${TOP}/iocBoot/${IOC}
|
cd ${TOP}/iocBoot/${IOC}
|
||||||
dbLoadTemplate "motor.substitutions.nanotec"
|
dbLoadTemplate "motor.substitutions.nanotec"
|
||||||
|
|
||||||
|
46
iocBoot/iocsinqEPICS/nanotestboa.cmd
Executable file
46
iocBoot/iocsinqEPICS/nanotestboa.cmd
Executable file
@ -0,0 +1,46 @@
|
|||||||
|
#!../../bin/linux-x86-debug/sinqEPICS
|
||||||
|
|
||||||
|
|
||||||
|
## You may have to change sinqEPICS to something else
|
||||||
|
## everywhere it appears in this file
|
||||||
|
|
||||||
|
< envPaths
|
||||||
|
|
||||||
|
cd ${TOP}
|
||||||
|
|
||||||
|
## Register all support components
|
||||||
|
dbLoadDatabase "dbd/sinqEPICS.dbd"
|
||||||
|
#dbLoadDatabase "dbd/sinq.dbd"
|
||||||
|
sinqEPICS_registerRecordDeviceDriver pdbbase
|
||||||
|
|
||||||
|
## Load record instances
|
||||||
|
#dbLoadRecords("db/xxx.db","user=koenneckeHost")
|
||||||
|
|
||||||
|
|
||||||
|
#---------- load Nanotec motor controller
|
||||||
|
#drvAsynIPPortConfigure("serial1", "narziss-ts:3002",0,0,0)
|
||||||
|
drvAsynIPPortConfigure("serial1", "boa-ts:3013",0,0,0)
|
||||||
|
NanotecCreateController("nano","serial1","1","4");
|
||||||
|
|
||||||
|
### Motors
|
||||||
|
|
||||||
|
dbLoadRecords("$(ASYN)/db/asynRecord.db","P=KM36:,R=serial1,PORT=serial1,ADDR=0,OMAX=80,IMAX=80")
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# DANGER DANGER DANGER
|
||||||
|
#
|
||||||
|
#If the gearing factor in the substitutions file is wrong, then the nanotec
|
||||||
|
# drives badly. Not really a surprise. Thus the following procedure is required:
|
||||||
|
#
|
||||||
|
# - After editing the gearing ratios in the substitutions file, drive each motor
|
||||||
|
# carefully for a small amount and check if it is driving the correct amount by
|
||||||
|
# eye.
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
cd ${TOP}/iocBoot/${IOC}
|
||||||
|
dbLoadTemplate "motor.substitutions.nanoboa"
|
||||||
|
|
||||||
|
|
||||||
|
iocInit
|
||||||
|
|
||||||
|
## Start any sequence programs
|
||||||
|
#seq sncxxx,"user=koenneckeHost"
|
37
iocBoot/iocsinqEPICS/oxford.cmd
Executable file
37
iocBoot/iocsinqEPICS/oxford.cmd
Executable file
@ -0,0 +1,37 @@
|
|||||||
|
#!../../bin/linux-x86-debug/sinqEPICS
|
||||||
|
|
||||||
|
|
||||||
|
## You may have to change sinqEPICS to something else
|
||||||
|
## everywhere it appears in this file
|
||||||
|
|
||||||
|
< envPaths
|
||||||
|
|
||||||
|
cd ${TOP}
|
||||||
|
|
||||||
|
|
||||||
|
epicsEnvSet("STREAM_PROTOCOL_PATH", "$(OXINSTCRYOJET)/protocol/")
|
||||||
|
|
||||||
|
## Register all support components
|
||||||
|
dbLoadDatabase "dbd/sinqEPICS.dbd"
|
||||||
|
#dbLoadDatabase "dbd/sinq.dbd"
|
||||||
|
sinqEPICS_registerRecordDeviceDriver pdbbase
|
||||||
|
|
||||||
|
|
||||||
|
#----------
|
||||||
|
drvAsynIPPortConfigure("serial1", "localhost:7020",0,0,0)
|
||||||
|
|
||||||
|
dbLoadRecords("$(ASYN)/db/asynRecord.db","P=KM36:,R=serial1,PORT=serial1,ADDR=0,OMAX=80,IMAX=80")
|
||||||
|
|
||||||
|
cd ${TOP}/iocBoot/${IOC}
|
||||||
|
|
||||||
|
dbLoadRecords("$(OXINSTCRYOJET)/db/MercuryiTC-SCPI.template","P=KM36:,Q=HG,PORT=serial1")
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------------
|
||||||
|
# This might have worked but our Mercury Simulation simulates something different
|
||||||
|
# then this is for.
|
||||||
|
#------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
iocInit
|
||||||
|
|
||||||
|
## Start any sequence programs
|
||||||
|
#seq sncxxx,"user=koenneckeHost"
|
Reference in New Issue
Block a user