diff --git a/iocBoot/iocsinqEPICS/envPaths b/iocBoot/iocsinqEPICS/envPaths index fb699a5..73243fb 100644 --- a/iocBoot/iocsinqEPICS/envPaths +++ b/iocBoot/iocsinqEPICS/envPaths @@ -5,3 +5,4 @@ epicsEnvSet("EPICS_BASE","/usr/local/epics") epicsEnvSet("ASYN","/usr/local/epics/support/asyn-4-18") epicsEnvSet("MOTOR","/usr/local/epics/support/motor-6-7") epicsEnvSet("LAKESHORE336","/usr/local/epics/support/lakeshore336") +epicsEnvSet("OXINSTCRYOJET","/usr/local/epics/support/OxInstCryojet-2-18-3") diff --git a/iocBoot/iocsinqEPICS/motor.substitutions.nanoboa b/iocBoot/iocsinqEPICS/motor.substitutions.nanoboa new file mode 100644 index 0000000..895f512 --- /dev/null +++ b/iocBoot/iocsinqEPICS/motor.substitutions.nanoboa @@ -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"} +} diff --git a/iocBoot/iocsinqEPICS/nanotest.cmd b/iocBoot/iocsinqEPICS/nanotest.cmd index 08b0c07..948010d 100755 --- a/iocBoot/iocsinqEPICS/nanotest.cmd +++ b/iocBoot/iocsinqEPICS/nanotest.cmd @@ -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") +#------------------------------------------------------------------------------ +# 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.nanotec" diff --git a/iocBoot/iocsinqEPICS/nanotestboa.cmd b/iocBoot/iocsinqEPICS/nanotestboa.cmd new file mode 100755 index 0000000..7543380 --- /dev/null +++ b/iocBoot/iocsinqEPICS/nanotestboa.cmd @@ -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" diff --git a/iocBoot/iocsinqEPICS/oxford.cmd b/iocBoot/iocsinqEPICS/oxford.cmd new file mode 100755 index 0000000..8c3c9e1 --- /dev/null +++ b/iocBoot/iocsinqEPICS/oxford.cmd @@ -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"