Files
motorBase/iocBoot/iocWithAsyn/st.cmd.Vx
T
2010-04-29 16:19:07 +00:00

347 lines
11 KiB
Plaintext

# The is the "ASYN" example for communication to either a Newport MM4000/5 or an
# IMS483 controller. The examples must be configured by including or omitting
# comment characters (i.e., #'s) from this file.
# "#!" marks lines that can be uncommented.
# The following must be added for many board support packages
#!cd "... IOC st.cmd complete directory path ... "
< cdCommands
#!< ../nfsCommands
cd topbin
# If the VxWorks kernel was built using the project facility, the following must
# be added before any C++ code is loaded (see SPR #28980).
sysCplusEnable=1
ld < WithAsynVx.munch
cd startup
dbLoadDatabase("$(TOP)/dbd/WithAsynVx.dbd")
WithAsynVx_registerRecordDeviceDriver(pdbbase)
dbLoadTemplate("motor.substitutions")
dbLoadRecords("$(MOTOR)/db/motorUtil.db", "P=IOC:")
# Configure the ASYN server code. This MUST be configured too!
< st_asynserver.cmd.Vx
# Newport MM3000 and MM4000/5/6 driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!MM3000Setup(1, 10)
#!MM4000Setup(1, 10)
# Newport MM3000 and MM4000/5/6 driver configuration parameters:
# (1) controller# being configured
# (2) ASYN port name
# (3) address (GPIB only)
#!MM3000Config(0, "a-Serial[0]")
#!drvMM3000debug=4
#!MM4000Config(0, "a-Serial[0]")
#!drvMM4000debug=4
# The MM4000 driver does not set end of string (EOS).
# for RS232 serial,
#!asynOctetSetInputEos( "a-Serial[0]",0,"\r")
#!asynOctetSetOutputEos("a-Serial[0]",0,"\r")
# for GPIB,
#!asynInterposeEosConfig("L0", 10, 1, 1)
#!asynOctetSetInputEos( "L0",10,"\r")
#!asynOctetSetOutputEos("L0",10,"\r")
# Newport PM500 driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!PM500Setup(1, 10)
# Newport PM500 configuration parameters:
# (1) controller# being configured
# (2) ASYN port name
# (3) address (GPIB only)
#!PM500Config(0, "a-Serial[0]")
#!drvPM500debug=4
# IMS IM483 driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
# SM - single mode PL - party mode
#!IM483SMSetup(1, 10)
#!IM483PLSetup(1, 10)
# IMS IM483 configuration parameters:
# (1) controller# (chain#) being configured,
# (2) ASYN port name
# SM - single mode PL - party mode
#!IM483SMConfig(0, "a-Serial[0]")
#!drvIM483SMdebug=4
#!IM483PLConfig(0, "a-Serial[0]")
#!drvIM483PLdebug=4
# MCB-4B driver setup parameters:
# (1) maximum # of controllers,
# (2) motor task polling rate (min=1Hz, max=60Hz)
#!MCB4BSetup(1, 10)
# MCB-4B driver configuration parameters:
# (1) controller
# (2) ASYN port name
#!MCB4BConfig(0, "a-Serial[0]")
#!asynOctetSetInputEos("a-Serial[0]",0,"\r")
#!asynOctetSetOutputEos("a-Serial[0]",0,"\r")
#!drvMCB4BDebug=4
# Newport ESP300 driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!ESP300Setup(1, 10)
# Newport ESP300 driver configuration parameters:
# (1) controller# being configured
# (2) ASYN port name
# (3) address (GPIB only)
#!ESP300Config(0, "a-Serial[0]")
#!drvESP300debug = 4
# MicroMo MVP2001 driver setup parameters:
#
# NOTE: The 1st controller on each chain should have it's address = 1.
# The rest of the controllers on a chain should follow sequentially.
#
#
# int MVP2001Setup(int num_cards, /* number of CHAINS of controllers */
# int scan_rate) /* polling rate (Min=1Hz, max=60Hz) */
#!MVP2001Setup(1, 10)
# int MVP2001Config(int card, /* CHAIN being configured */
# (2) ASYN port name
#!MVP2001Config(0, "a-Serial[0]")
#!drvMVP2001debug=4
# PI C-844 driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!PIC844Setup(1, 10)
# PI C-844 driver configuration parameters:
# (1) controller# being configured
# (2) ASYN port name
# (3) address (GPIB only)
#!PIC844Config(0, "a-Serial[0]")
#!drvPIC844debug = 4
# PI C-848 driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!PIC848Setup(1, 2)
# PI C-848 driver configuration parameters:
# (1) controller# being configured,
# (2) ASYN port name
#!PIC848Config(0, "a-Serial[0]")
#!drvPIC848debug = 4
# PI E-662 Piezo driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz, max=60Hz)
#!PIC662Setup(1, 60)
# PI E-662 Piezo driver configuration parameters:
# (1) controller being configured
# (2) asyn port name (string)
#!PIC662Config(0, "serial1")
#!drvPIC662debug = 4
# PI C-862 DC-motor driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz, max=60Hz)
#!PIC862Setup(1, 60)
# PI C-862 DC-motor driver configuration parameters:
# (1) controller being configured
# (2) asyn port name (string)
#!PIC862Config(0, "serial1")
#!drvPIC862debug = 4
# New Focus Picomotor Network Controller (model 8750/2) (setup parameters:
# (1) maximum number of controllers in system
# (2) maximum number of drivers per controller (1 - 3)
# (3) motor task polling rate (min=1Hz,max=60Hz)
#!PMNC87xxSetup(1, 2, 10)
# New Focuc Picomotor Network Controller (model 8750/2) configuration parameters:
# (1) controller# being configured,
# (2) asyn port name (string)
#!PMNC87xxConfig(0, "serial2")
#!drvPMNC87xxdebug=4
# Micos MoCo driver setup parameters:
# Load MicosSetup once.
# (1) max # of controller groups. Controller groups are per serial
# port.
# (2) max # axes per controller group. Maximum 16. (addr 0-15)
# (3) motor task polling rate (min=1Hz, max=60Hz, 10Hz works well)
# Example:
# MicosSetup(1, 2, 10) 1 group. 2 axes (controllers) in the group.
# 10Hz poll.
#!MicosSetup(1, 2, 10)
# Micos MoCo driver configuration parameters:
# Load one MicosConfig for each group of Micos drivers.
# (1) "Controller group" number
# (2) ASYN port name
#!MicosConfig(0, "a-Serial[0]")
#!drvMicosDebug = 4
# IMS MDrive driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!MDriveSetup(1, 10)
# IMS MDrive driver configuration parameters:
# (1) controller# being configured
#!MDriveConfig(0, "a-Serial[0]")
#!drvMDrivedebug = 4
# Newport XPS driver setup parameters:
# (1) maximum number of controllers in system
#!XPSSetup(2)
# Newport XPS driver configuration parameters:
# (1) Controller # being configured
# (2) IP address or IP name
# (3) IP port number that XPS is listening on
# (4) Number of axes this controller supports
# (5) Time to poll (msec) when an axis is in motion
# (6) Time to poll (msec) when an axis is idle. 0 for no polling
#!XPSConfig(0, "xxx.xx.xxx.1", 5001, 5, 100, 500)
#!XPSConfig(1, "xxx.xx.xxx.2", 5001, 4, 100, 500)
# Newport XPS group and positioner name configuration:
# (1) Controller # being configured
# (2) axis number 0-7
# (3) groupName.positionerName e.g. Diffractometer.Phi
# (4) steps per user unit
#!XPSConfigAxis(0, 0, "GROUP1.PHI", 10000)
#!XPSConfigAxis(0, 1, "GROUP1.KAPPA", 10000)
#!XPSConfigAxis(1, 0, "GROUP1.Y1_BASE", 1000)
#!XPSConfigAxis(1, 1, "GROUP2.Y2_BASE", 1000)
#!XPSConfigAxis(1, 2, "GROUP3.Y3_BASE", 1000)
# OMS PC68/78 stand-alone serial driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!OmsPC68Setup(1, 10)
# OMS PC68/78 stand-alone serial driver configuration parameters:
# (1) Card# being configured
# (2) asyn port name
#!OmsPC68Config(0, "L0")
#!drvOmsPC68debug=4
# Kohzu SC-800 motor controller setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!SC800Setup(1, 5)
# Kohzu SC-800 motor controller configuration parameters:
# (1) controller# being configured
# (2) ASYN port name
# (3) address (GPIB only)
#!SC800Config(0, "L0", 0)
#!drvSC800debug=4
# Faulhaber MCDC2805 driver setup parameters:
# (1)Max. controller count
# (2)Polling rate
#!MCDC2805Setup(1, 10)
# Faulhaber MCDC2805 driver configuration parameters:
# (1)Card being configured
# (2)# modules on this serial port
# (3)asyn port name
#!MCDC2805Config(0, 1, "L0")
#!drvMCDC2805debug=4
# The MCDC2805 driver does not set end of string (EOS).
#!asynOctetSetInputEos("L0",0,"\r")
#!asynOctetSetOutputEos("L0",0,"\r")
# attocube ANC 150 asyn motor driver setup parameter.
#!ANC150AsynSetup(1) /* number of ANC150 controllers in system. */
# attocube ANC 150 asyn motor driver configure parameters.
# (1) Controller number being configured
# (2) ASYN port name
# (3) Number of axes this controller supports
# (4) Time to poll (msec) when an axis is in motion
# (5) Time to poll (msec) when an axis is idle. 0 for no polling
#!ANC150AsynConfig(0, "a-Serial[1]", 3, 250, 2000)
# Aerotech Ensemble digital servo controller Setup
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz,max=60Hz)
#!EnsembleSetup(1, 10)
# Aerotech Ensemble digital servo controller Configure
# (1) controller# being configured,
# (2) asyn port name (string)
#!EnsembleConfig(0, "a-Serial[0]")
# Aerotech Ensemble digital servo controller asyn motor Setup
# (1) maximum number of controllers in system
#!EnsembleAsynSetup(1)
# The Ensemble driver does not set end of string (EOS).
#!asynOctetSetInputEos(EnsemblePort,0,"\n")
#!asynOctetSetOutputEos(EnsemblePort,0,"\n")
# Aerotech Ensemble digital servo controller asyn motor Config
# (1) Controller number being configured
# (2) ASYN port name
# (3) ASYN address (GPIB only)
# (4) Number of axes this controller supports
# (5) Time to poll (msec) when an axis is in motion
# (6) Time to poll (msec) when an axis is idle. 0 for no polling
#!EnsembleAsynConfig(0, EnsemblePort, 0, 1, 100, 1000)
# Newport MM4000/5/6 asyn motor driver setup parameter.
#!MM4000AsynSetup(1) /* number of MM4000 controllers in system. */
# Newport MM4000/5/6 asyn motor driver configure parameters.
# (1) Controller number being configured
# (2) ASYN port name
# (3) ASYN address (GPIB only)
# (4) Number of axes this controller supports
# (5) Time to poll (msec) when an axis is in motion
# (6) Time to poll (msec) when an axis is idle. 0 for no polling
#!MM4000AsynConfig(0, "a-Serial[1]", 0, 1, 100, 250)
# Asyn-based Motor Record support
# (1) Asyn port
# (2) Driver name
# (3) Controller index
# (4) Max. number of axes
#!drvAsynMotorConfigure("MM4", "motorMM4000", 0, 4)
#!drvAsynMotorConfigure("ANC150","motorANC150", 0, 2 )
#!drvAsynMotorConfigure("XPS1", "motorXPS", 0, 5)
#!drvAsynMotorConfigure("XPS2", "motorXPS", 1, 5)
#!drvAsynMotorConfigure("AeroE1","motorEnsemble", 0, 1)
#!drvAsynMotorConfigure("AeroE2","motorEnsemble", 1, 1)
iocInit
# motorUtil (allstop & alldone)
motorUtilInit("IOC:")