From 2c99286eaf7c8a954ece4ae66906da5b70279206 Mon Sep 17 00:00:00 2001 From: Ron Sluiter Date: Tue, 10 May 2005 18:31:43 +0000 Subject: [PATCH] SSCAN timing data. --- motorApp/ImsSrc/README | 42 ++++++++ motorApp/OmsSrc/README | 215 ++++++++++++++++++++++++++++------------- 2 files changed, 191 insertions(+), 66 deletions(-) diff --git a/motorApp/ImsSrc/README b/motorApp/ImsSrc/README index eb72bc68..423df582 100644 --- a/motorApp/ImsSrc/README +++ b/motorApp/ImsSrc/README @@ -98,3 +98,45 @@ control c (^c). Repeat steps 4 through 7 while incrementing the axis name chassis, configure all of the IM483's for Party Mode by setting J4 to (2-3). Connect the RS-232 port to the Master IM483 and set all the remaining IM483's to Slave mode by setting J7 to (2-3). + + +SSCAN THROUGH-PUT NOTES +----------------------- + +The following results where done using the following; + +- SSCAN support module R2.5.1, with scan.db configured as follows; + - Read(R1PV) set to "time". + - Drive(P1PV) set to motor record VAL field. + - #PTS(NPTS) set to 1000. + - Step Size(P1SI) set to MRES of the motor record. +- Motor record R5.7; configured as follows; + - Set slew velocity (VELO) 5.0 = (500 * MRES). + - Set base velocity (VBAS) 4.9 = (499 * MRES). + - Acceleration time (ACCL) does not matter. +- EPICS base R3.14.7 +- WRS Tornado 2.2.1 +- MVME5100 +- IM483SM with firmware version; 1342 4038 AMS, INC MAX-2000 v1.15i + + +Controller | sysClkRate | polling rate | ms/scan pt. +-----------|------------|--------------|------------ +IMS483SM | 60 | 1HZ | 121.0 +-----------|------------|--------------|------------ +IMS483SM | 60 | 1HZ | 834.2 with VBAS/VELO removed +-----------|------------|--------------|------------ +IMS483SM | 60 | 10HZ | 121.0 +-----------|------------|--------------|------------ +IMS483SM | 60 | 10HZ | 154.4 with VBAS/VELO removed +-----------|------------|--------------|------------ +IMS483SM | 60 | 60HZ | 121.0 +-----------|------------|--------------|------------ +IMS483SM | 60 | 60HZ | 102.9 with VBAS/VELO removed +-----------|------------|--------------|------------ +IMS483SM | 100 | 1HZ | 121.0 +-----------|------------|--------------|------------ +IMS483SM | 1000 | 1000HZ | 121.0 +-----------|------------|--------------|------------ +IMS483SM | 1000 | 1000HZ | 96.0 with VBAS/VELO removed + diff --git a/motorApp/OmsSrc/README b/motorApp/OmsSrc/README index 7f7d0caf..fef99802 100644 --- a/motorApp/OmsSrc/README +++ b/motorApp/OmsSrc/README @@ -2,16 +2,6 @@ MAXv ============================================================================== -Synopsis --------- - -Since the motor record device driver for the MAXv queries the MAXv for it's -configuration before there is a connection between the record and the device, -IOC's that use MAXv's must be initially booted in order for the MAXv to be -configured, and then rebooted before the motor record can read the correct -configuration. - - For all MAXv motors. -------------------- @@ -23,64 +13,82 @@ limit switch input: LL - low (default). LH - high. -In addition, the one of the following MAXv controller commands must appear in -the 2nd argument of MAXvConfig() to configure the type of axis: +In addition, one of the following MAXv controller commands must appear in the +initialization string to configure the type of axis: PSO - open loop stepper axis. PSE - stepper axis with encoder. PSM - servo axis Note: Separate multiple commands in the initialization string with ";". +Example +------- +config0="AX LH PSM; AY LL PSO; AZ LL PSO; AT LL PSO; AU LH PSO; AV LH PSO; AR LH PSO; AS LH PSO;" +MAXvConfig(0, config0) Configuring the MAXv for an open loop stepper motor (default). -------------------------------------------------------------- -Set J8 for stepper and add the command "PS0;" to the INIT field. - +Set J8 for stepper and add the command "PS0;" to the MAXvConfig() +initialization string. Configuring the MAXv for a stepper motor with encoder. ------------------------------------------------------ -Set J8 for stepper and add the command "PSE;" to the INIT field. - +Set J8 for stepper and add the command "PSE;" to the MAXvConfig() +initialization string. Configuring the MAXv for a servo motor. --------------------------------------- -Set J8 for servo and add the command "PSM;" to the INIT field. +Set J8 for servo and add the command "PSM;" to MAXvConfig() initialization +string. +MAXv array base address +----------------------- +- defined the by 3rd argument to the MAXvSetup() call. -!!WARNING!! READ ALL OF THE FOLLOWING PARAGRAPH! - -After all the MAXv controller commands have been configured for all the axes -in one individual MAXv, add the "APP" command to the end of the last axes -INIT field. The "APP" command instructs the MAXv controller to store a set of -the current parameters as the power-up default values in FLASH memory. Repeat -the above for all the MAXv controllers and corresponding records. Boot the -IOC. The limit switch sense and motor type are now stored in the MAXv's flash -memory. REMOVE the "APP" commands from ALL the MAXv motor record INIT fields. -Reboot the IOC. The motor record should now have the correct configuration. - -VMEbus addressing ------------------ - -MAXv array base address - defined the by 3rd argument to the MAXvSetup() call. -MAXv incremental address - increment each additional MAXv's VMEbus address by - 0x1000 from the array base address. +MAXv incremental address +------------------------ +- increment each additional MAXv's VMEbus address by 0x1000 from the array's + base address. +NOTES: +- Unlike the other OMS models, the MAXv VME Address Modifiers (AM) do not + respond to both supervisory and non-privileged access. Hence, the MAXv's + AM's must match the CPU board's AM's exactly. VME8, VME44, VS4, VX2 ============================================================================== -OMS array base address - defined the by 3rd argument to the omsSetup() call. - - the VMEbus address of the 1st board in the array of - OMS boards. -OMS incremental address - increment each additional board's VMEbus address by - 0x10 from the array base address. +OMS array base address +-------------------------- +- defined by the 3rd argument to the omsSetup() call. +- the VMEbus address of the 1st board in the array of OMS VME8, VME44, VS4 and + VX2 boards. + +OMS incremental address +--------------------------- +- increment each additional OMS board's VMEbus address by 0x10 from the array's + base address. -IMPORTANT NOTES ---------------- + +VME58 +============================================================================== + +VME58 array base address +------------------------ +- defined the by 2nd argument to the oms58Setup() call. +- the VMEbus address of the 1st board in the array of OMS VME58 boards. + +VME58 incremental address +------------------------- +- increment each additional board's VMEbus address by 0x1000 from the array's + base address. + +NOTE +---- 1. The EPICS motor record does NOT support the encoder mode. The encoder mode - is enabled with the ER#,# and results in all distance, velocity and - acceleration parameters being input in encoder counts. + is enabled with the ER#,# and results in all distance, velocity and + acceleration parameters being input in encoder counts. SSCAN THROUGH-PUT NOTES @@ -93,33 +101,108 @@ The following results where done using the following; - Drive(P1PV) set to motor record VAL field. - #PTS(NPTS) set to 1000. - Step Size(P1SI) set to MRES of the motor record. - -- Motor record R5.7 +- Motor record R5.7; configured as follows; + - Set slew velocity (VELO) = (500,000 * MRES). + - Set base velocity (VBAS) = (499,999 * MRES). + - Acceleration time (ACCL) does not matter. - EPICS base R3.14.7 - WRS Tornado 2.2.1 - MVME5100 - -OMS VME44 with firmware version 2.35-4E: ---------------------------------------- -- Set slew velocity (VELO) = (500,000 * MRES). -- Set base velocity (VBAS) = (499,999 * MRES). -- Acceleration time (ACCL) does not matter. - -- 970.0ms/scan pt.; sysClkRateSet(60), interrupts disabled and 60HZ polling rate. -- 22.2ms/scan pt.; sysClkRateSet(4000), interrupts disabled and 60HZ polling rate. - -- 18.4ms/scan pt.; sysClkRateSet(60), interrupts enabled and 1HZ polling rate. -- 18.4ms/scan pt.; sysClkRateSet(4000), interrupts enabled and 1HZ polling rate. -- 18.4ms/scan pt.; sysClkRateSet(4000), interrupts enabled and 60HZ polling rate. +- VME8 with firmware version 1.97-8 +- VME44 with firmware version 2.35-4E: +- VME58 with firmware version 2.16-8 +- MAXv with firmware version 1.25 -OMS MAXv-8000 ver:1.25 ----------------------- -- Set slew velocity (VELO) = (500,000 * MRES). -- Set base velocity (VBAS) = (499,999 * MRES). -- Acceleration time (ACCL) does not matter. -- 51.6ms/scan pt.; sysClkRateSet(60), interrupts enabled and 1HZ polling rate. -- 11.7ms/scan pt.; sysClkRateSet(4000), interrupts enabled and 1HZ polling rate. -- 11.9ms/scan pt.; sysClkRateSet(4000), interrupts enabled and 60HZ polling rate. +Controller | sysClkRate | interrupts | polling rate | ms/scan pt. +-----------|------------|------------|--------------|------------ +VME8 | 60 | disabled | 1HZ | 1076.0 +-----------|------------|------------|--------------|------------ +VME44 | 60 | disabled | 1HZ | 1267.0 +-----------|------------|------------|--------------|------------ +VME58 | 60 | disabled | 1HZ | 808.5 +-----------|------------|------------|--------------|------------ +MAXv | 60 | disabled | 1HZ | 808.5 +===========|============|============|==============|============ +VME8 | 60 | disabled | 60HZ | 801.8 +-----------|------------|------------|--------------|------------ +VME44 | 60 | disabled | 60HZ | 990.6 +-----------|------------|------------|--------------|------------ +VME58 | 60 | disabled | 60HZ | 77.3 +-----------|------------|------------|--------------|------------ +MAXv | 60 | disabled | 60HZ | 77.4 +===========|============|============|==============|============ +VME8 | 4000 | disabled | 1HZ | 776.0 +-----------|------------|------------|--------------|------------ +VME44 | 4000 | disabled | 1HZ | 779.9 +-----------|------------|------------|--------------|------------ +VME58 | 4000 | disabled | 1HZ | 772.3 +-----------|------------|------------|--------------|------------ +MAXv | 4000 | disabled | 1HZ | 772.5 +===========|============|============|==============|============ +VME8 | 4000 | disabled | 60HZ | 18.8 +-----------|------------|------------|--------------|------------ +VME44 | 4000 | disabled | 60HZ | 22.1 +-----------|------------|------------|--------------|------------ +VME58 | 4000 | disabled | 60HZ | 14.9 +-----------|------------|------------|--------------|------------ +MAXv | 4000 | disabled | 60HZ | 15.2 +===========|============|============|==============|============ +VME8 | 60 | enabled | 1HZ | 38.8 +-----------|------------|------------|--------------|------------ +VME44 | 60 | enabled | 1HZ | 38.8 +-----------|------------|------------|--------------|------------ +VME58 | 60 | enabled | 1HZ | 77.5 +-----------|------------|------------|--------------|------------ +MAXv | 60 | enabled | 1HZ | 77.5 +===========|============|============|==============|============ +VME8 | 60 | enabled | 1HZ | 75.4 with VBAS/VELO removed +-----------|------------|------------|--------------|------------ +VME44 | 60 | enabled | 1HZ | 80.1 with VBAS/VELO removed +-----------|------------|------------|--------------|------------ +VME58 | 60 | enabled | 1HZ | 97.9 with VBAS/VELO removed +-----------|------------|------------|--------------|------------ +MAXv | 60 | enabled | 1HZ | 84.9 with VBAS/VELO removed +===========|============|============|==============|============ +VME8 | 60 | enabled | 60HZ | 38.7 +-----------|------------|------------|--------------|------------ +VME44 | 60 | enabled | 60HZ | 38.7 +-----------|------------|------------|--------------|------------ +VME58 | 60 | enabled | 60HZ | 77.5 +-----------|------------|------------|--------------|------------ +MAXv | 60 | enabled | 60HZ | 77.4 +===========|============|============|==============|============ +VME8 | 100 | enabled | 1HZ | 15.5 +-----------|------------|------------|--------------|------------ +VME44 | 100 | enabled | 1HZ | 23.2 +-----------|------------|------------|--------------|------------ +VME58 | 100 | enabled | 1HZ | 38.7 +-----------|------------|------------|--------------|------------ +MAXv | 100 | enabled | 1HZ | 38.7 +===========|============|============|==============|============ +VME8 | 4000 | enabled | 1HZ | 14.4 +-----------|------------|------------|--------------|------------ +VME44 | 4000 | enabled | 1HZ | 18.2 +-----------|------------|------------|--------------|------------ +VME58 | 4000 | enabled | 1HZ | 10.4 +-----------|------------|------------|--------------|------------ +MAXv | 4000 | enabled | 1HZ | 11.6 +===========|============|============|==============|============ +VME8 | 4000 | enabled | 60HZ | 14.4 +-----------|------------|------------|--------------|------------ +VME44 | 4000 | enabled | 60HZ | 18.2 +-----------|------------|------------|--------------|------------ +VME58 | 4000 | enabled | 60HZ | 10.4 +-----------|------------|------------|--------------|------------ +MAXv | 4000 | enabled | 60HZ | 11.6 +===========|============|============|==============|============ +VME8 | 4000 | enabled | 60HZ | 12.7 with VBAS/VELO removed +-----------|------------|------------|--------------|------------ +VME44 | 4000 | enabled | 60HZ | 15.6 with VBAS/VELO removed +-----------|------------|------------|--------------|------------ +VME58 | 4000 | enabled | 60HZ | 9.8 with VBAS/VELO removed +-----------|------------|------------|--------------|------------ +MAXv | 4000 | enabled | 60HZ | 9.8 with VBAS/VELO removed +-----------|------------|------------|--------------|------------