forked from epics_driver_modules/motorBase
@@ -0,0 +1,25 @@
|
||||
# ### ACS_MCB4B.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- INSTANCE - Name of asyn port to create
|
||||
#-
|
||||
#- NUM_AXES - Optional: Number of axes to create for this controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MOVING_POLL - Optional: Moving poll rate (ms)
|
||||
#- Default: POLL_RATE
|
||||
#-
|
||||
#- IDLE_POLL - Optional: Idle poll rate (ms)
|
||||
#- Default: POLL_RATE
|
||||
#-
|
||||
#- POLL_RATE - Optional: Poll rate (ms)
|
||||
#- Default: 100
|
||||
#- ###################################################
|
||||
|
||||
# ACS MCB-4B serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=19200, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
MCB4BCreateController("$(INSTANCE)", "$(PORT)", $(NUM_AXES=1), $(MOVING_POLL=$(POLL_RATE=100)), $(IDLE_POLL=$(POLL_RATE=100)))
|
||||
@@ -0,0 +1,7 @@
|
||||
file "$(MOTOR)/db/asyn_motor.db"
|
||||
{
|
||||
pattern
|
||||
{N, M, ADDR, DESC, EGU, DIR, VELO, VBAS, ACCL, BDST, BVEL, BACC, MRES, PREC}
|
||||
{1, "m$(N)", 0, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 0.01, 5}
|
||||
#{2, "m$(N)", 1, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 0.01, 5}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
# ### McClennan_PM304.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- NUM_AXES - Optional: Number of axes on this controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- McClennan PM304 driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) motor task polling rate (min=1Hz, max=60Hz)
|
||||
$(PM304_INIT_COMPLETE="") PM304Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
#- Insert serial port configuration settings here
|
||||
|
||||
#- McClennan PM304 driver configuration parameters:
|
||||
#- (1) controller being configured
|
||||
#- (2) MPF serial server name (string)
|
||||
#- (3) Number of axes on this controller
|
||||
PM304Config($(CONTROLLER=0), "$(PORT)", $(NUM_AXES=1))
|
||||
|
||||
epicsEnvSet("PM304_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,37 @@
|
||||
# ### Newfocus_PMNC87xx.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- NUM_AXES - Optional: Number of axes on this controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MAX_DRIVES - Optional: Max number of drives per controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- NewFocus Picomotor driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) maximum drives per controller
|
||||
#- (3) motor task polling rate (min=1Hz, max=60Hz)
|
||||
$(PMNC87XX_INIT_COMPLETE="") PMNC87xxSetup($(MAX_CONTROLLERS=1), $(MAX_DRIVES=1), $(POLL_RATE=10))
|
||||
|
||||
#- Serial port configuration
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=19200, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
#- NewFocus Picomotor driver configuration parameters:
|
||||
#- (1) controller being configured
|
||||
#- (2) asyn port name (string)
|
||||
PMNC87xxConfig($(CONTROLLER=0), "$(PORT)")
|
||||
|
||||
epicsEnvSet("PMNC87XX_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,30 @@
|
||||
# ### Newport_ESP300.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Polling increment in 1/60 sec
|
||||
#- Default: 6
|
||||
#- ###################################################
|
||||
|
||||
#- Newport ESP300 driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) motor task polling rate (min=1Hz,max=60Hz)
|
||||
$(ESP300_INIT_COMPLETE="") ESP300Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
# Newport ESP300 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=9600, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "")
|
||||
|
||||
#- Newport ESP300 driver configuration parameters:
|
||||
#- (1) controller# being configured
|
||||
#- (2) ASYN port name
|
||||
ESP300Config($(CONTROLLER=0), "$(PORT)")
|
||||
|
||||
epicsEnvSet("ESP300_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,32 @@
|
||||
# ### Newport_NM4000.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
|
||||
#- Newport MM4000 driver setup parameters:
|
||||
#- (1) maximum # of controllers,
|
||||
#- (2) motor task polling rate (min=1Hz, max=60Hz)
|
||||
$(MM4000_INIT_COMPLETE="") MM4000Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
# Newport MM4000 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=38400, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
# Newport MM4000 driver configuration parameters:
|
||||
# (1) controller
|
||||
# (2) asyn port name (e.g. serial0 or gpib1)
|
||||
# (3) GPIB address (0 for serial)
|
||||
MM4000Config($(CONTROLLER=0), "$(PORT)", 0)
|
||||
|
||||
epicsEnvSet("MM4000_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,30 @@
|
||||
# ### Newport_PM500.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- Newport PM500 driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) motor task polling rate (min=1Hz,max=60Hz)
|
||||
$(PM500_INIT_COMPLETE="") PM500Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
#- Newport PM500 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=9600, BITS=7, STOP=2, PARITY=even, HANDSHAKE=hardware")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
#- Newport PM500 configuration parameters:
|
||||
#- (1) controller
|
||||
#- (2) asyn port name (e.g. serial0 or gpib1)
|
||||
PM500Config($(CONTROLLER=0), "$(PORT)")
|
||||
|
||||
epicsEnvSet("PM500_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,49 @@
|
||||
# ### PI_C630.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- NUM_AXES - Optional: Max number of axes per controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#-
|
||||
#- CURR[1-9] - Optional: Current settings for axes 1 through 9
|
||||
#- Current equals 100mA * setting, maximum 800mA.
|
||||
#- Default: 0 (off)
|
||||
#- ###################################################
|
||||
|
||||
|
||||
#-################################################
|
||||
#- PI C-630 driver setup parameters:
|
||||
#- Load PIC630Setup once.
|
||||
#- (1) max # of controller groups. Controller groups are per serial port.
|
||||
#- (2) max # axes per controller group. Maximum 9. (addr 1-9)
|
||||
#- (3) motor task polling rate (min=1Hz, max=60Hz, 10Hz works well)
|
||||
#- Example:
|
||||
#- PIC630Setup(1, 2, 10) 1 group. 2 axes (controllers) in the group. 10Hz poll.
|
||||
$(PI_C630_INIT_COMPLETE="") PIC630Setup($(MAX_CONTROLLERS=1), $(NUM_AXES=1), $(POLL_RATE=10))
|
||||
|
||||
# PI C630 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=19200, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
#- PIC630 driver configuration parameters:
|
||||
#- Load one PIC630Config for each group of PI C-630 drivers.
|
||||
#- (1) "Controller group" number
|
||||
#- (2) MPF card
|
||||
#- (3)-(11) Current setting per axis (1-9). Leave at 0 if unused.
|
||||
#- Choices: 0=OFF, 1=100mA, 2=200mA, ... 8=800mA.
|
||||
#- Example:
|
||||
#- PIC630Config(0, "serial1, 5, 3, 0, 0, 0, 0, 0, 0, 0")
|
||||
#- Group 0, asyn serial port 1, Axis1=.5A, Axis2=.3A, others OFF
|
||||
PIC630Config($(CONTROLLER=0), "$(PORT)", $(CURR1=0), $(CURR2=0), $(CURR3=0), $(CURR4=0), $(CURR5=0), $(CURR6=0), $(CURR7=0), $(CURR8=0), $(CURR9=0))
|
||||
|
||||
epicsEnvSet("PI_C630_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,28 @@
|
||||
# ### PI_C867.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Controller port name will be PIC867$(CONTROLLER)
|
||||
#- Default: 0
|
||||
#-
|
||||
#- NUM_AXES - Optional: Max number of axes per controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MOVING_POLL - Optional: Moving poll rate (in msec)
|
||||
#- Default: POLL_RATE
|
||||
#-
|
||||
#- IDLE_POLL - Optional: Idle poll rate (in msec)
|
||||
#- Default: POLL_RATE
|
||||
#-
|
||||
#- POLL_RATE - Optional: Poll rate in msec
|
||||
#- Default: 100
|
||||
#- ###################################################
|
||||
|
||||
|
||||
# PI C867 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=38400, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\n\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\n")
|
||||
|
||||
PI_GCS2_CreateController("PIC867$(CONTROLLER)", "$(PORT)", $(NUM_AXES=0), 0, 0, $(MOVING_POLL=$(POLL_RATE=100)), $(IDLE_POLL=$(POLL_RATE=100)))
|
||||
@@ -0,0 +1,31 @@
|
||||
# ### PI_E710.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- PI E-710 driver setup parameters:
|
||||
#- (1) maximum # of controllers,
|
||||
#- (2) motor task polling rate (min=1Hz, max=60Hz)
|
||||
$(E710_INIT_COMPLETE="") PIE710Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
# PI E710 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=9600, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\n")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\n")
|
||||
|
||||
#- PI E-710 driver configuration parameters:
|
||||
#- (1) controller
|
||||
#- (2) asyn port name (e.g. serial1 or gpib1)
|
||||
#- (3) GPIB address (0 for serial)
|
||||
PIE710Config($(CONTROLLER=0), "$(PORT)", 0)
|
||||
|
||||
epicsEnvSet("E710_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,30 @@
|
||||
# ### PI_E816.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- PI E-816 driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) motor task polling rate (min=1Hz,max=60Hz)
|
||||
$(E816_INIT_COMPLETE="") PIE816Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
# PI E816 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=38400, BITS=8, STOP=1, PARITY=none, HANDSHAKE=hardware")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\n")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\n")
|
||||
|
||||
# PI E-816 driver configuration parameters:
|
||||
# (1) controller# being configured,
|
||||
# (2) ASYN port name
|
||||
PIE816Config($(CONTROLLER=0), "$(PORT)")
|
||||
|
||||
epicsEnvSet("E816_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,10 @@
|
||||
# ### allstop.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PREFIX - IOC Prefix
|
||||
#- MOTOR - Location of motor module
|
||||
#- ###################################################
|
||||
|
||||
#- Allstop, alldone
|
||||
dbLoadRecords("$(MOTOR)/db/motorUtil.db", "P=$(PREFIX)")
|
||||
doAfterIocInit("motorUtilInit('$(PREFIX)')")
|
||||
@@ -0,0 +1,34 @@
|
||||
# ### motorSim.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PREFIX - IOC Prefix
|
||||
#- INSTANCE - Instance name, used to create the low-level driver drvet name
|
||||
#- Combined with the controller number to create the asyn port name
|
||||
#-
|
||||
#- SUB - Optional: Subsitutions file (asyn_motor.db), Macros P, DTYP, PORT,
|
||||
#- DHLM, DLLM, and INIT will be predefined.
|
||||
#- Default: $(MOTOR)/iocsh/EXAMPLE_motorSim.substitutions
|
||||
#-
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- NUM_AXES - Optional: Number of axes on this controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- LOW_LIM - Optional: Low Limit
|
||||
#- Default: -32000
|
||||
#-
|
||||
#- HIGH_LIM - Optional: High Limit
|
||||
#- Default: 32000
|
||||
#-
|
||||
#- HOME - Optional: Home position
|
||||
#- Default: 0
|
||||
#- ###################################################
|
||||
|
||||
# Create simulated motors: ( start card , start axis , low limit, high limit, home posn, # cards, # axes to setup)
|
||||
motorSimCreate($(CONTROLLER=0), 0, $(LOW_LIM=-32000), $(HIGH_LIM=32000), $(HOME=0), 1, $(NUM_AXES=1))
|
||||
|
||||
# Setup the Asyn layer (portname, low-level driver drvet name, card, number of axes on card)
|
||||
drvAsynMotorConfigure("$(INSTANCE)$(CONTROLLER=0)", "$(INSTANCE)", $(CONTROLLER=0), $(NUM_AXES=1))
|
||||
|
||||
dbLoadTemplate("$(SUB=$(MOTOR)/iocsh/EXAMPLE_motorSim.substitutions", "P=$(PREFIX), DTYP='asynMotor', PORT=$(INSTANCE)$(CONTROLLER=0), DHLM=$(HIGH_LIM=32000), DLLM$(LOW_LIM=32000), INIT=\"\"")
|
||||
Reference in New Issue
Block a user