R6-7 update.

This commit is contained in:
Ron Sluiter
2011-12-01 20:29:32 +00:00
parent fbd552c62b
commit d71dfcdee8
4 changed files with 109 additions and 25 deletions
+22 -7
View File
@@ -1,8 +1,8 @@
Motor Record R6-6 Release Notice
Motor Record R6-7 Release Notice
===============================================================================
The motor record software in this release is compatible with EPICS base
R3-14-11. See the <motor>/configure/RELEASE file for support module version
R3-14-12-1. See the <motor>/configure/RELEASE file for support module version
dependencies.
@@ -107,15 +107,17 @@ Known Problems
reverse encoder wires when the motor and encoder direction are
reversed.
There is a peculiarity with the OMS controller boards when they are
configured with MRES and ERES of opposite polarity. Since both the
commanded and feedback positions are set with the same command (LP),
the user must enter the opposite polarity when setting the OMS motor
controllers position.
There is a peculiarity with the OMS (sans MAXv) controller boards when
they are configured with MRES and ERES of opposite polarity. Since
both the commanded and feedback positions are set with the same command
(LP), the user must enter the opposite polarity when setting the OMS
motor controllers position.
For example, if MRES is positive and ERES is negative and the user
wants to set the current position to 10.00 inches, then -10.00 must be
entered in the VAL or DVAL field.
This limitation does not apply to the MAXv model after release R6-7.
5) There are several known problems with the status update field (STUP);
- the motor record gets stuck in the moving state (i.e., DMOV=0) if
@@ -161,6 +163,19 @@ Modification Log for R6-7
File modified: motorApp/OmsSrc/drvOms58.cc
3) Added OMS MAXv device drive support for MRES and ERES having different
polarities. See "Known Problems" item #4).
Files modified: motorApp/OmsSrc/devOmsCom.cc
motorApp/OmsSrc/drvMAXv.cc
4) With this release, the Aerotech Ensemble driver only supports 4.01.00
version firmware and above.
In order to support SCURVE trajectories, the move commands have been changed
from MOVE[ABS/INC] to LINEAR. Currently, the SCURVE command can only
be set from an asyn record (e.g., SCURVE 75).
Modification Log from R6-5 to R6-6
==================================
+10 -11
View File
@@ -9,22 +9,21 @@
#
# Add your declarations here
#!GATEWAY=
SUPPORT=/corvette/home/epics/devel
SUPPORT=
-include $(TOP)/../configure/SUPPORT.$(EPICS_HOST_ARCH)
# If any motor controller communication mechanism besides the VME backplane is
# required, then ASYN must be defined.
# Recommended ASYN release: R4-17
ASYN=$(SUPPORT)/asyn-4-17
# Recommended ASYN release: R4-18
ASYN=$(SUPPORT)/asyn/R4-18
# Need the sequencer and the bust record for the MM4005 and XPS trajectory scanning
# Recommended SNCSEQ release: R2-0-12
SNCSEQ=$(SUPPORT)/seq-2-0-12
BUSY=$(SUPPORT)/busy-1-3
# Recommended SNCSEQ release: R2-1-13
SNCSEQ=$(SUPPORT)/seq/2-1-3
BUSY=$(SUPPORT)/busy/R1-4
# Recommended EPICS release: R3.14.11
EPICS_BASE=/corvette/usr/local/epics/base-3.14.12.1
# Recommended EPICS release: R3.14.12.1
EPICS_BASE=
-include $(TOP)/../configure/EPICS_BASE.$(EPICS_HOST_ARCH)
# The following must be defined for the MXmotor device driver.
@@ -34,8 +33,8 @@ EPICS_BASE=/corvette/usr/local/epics/base-3.14.12.1
# <motor>/motorExApp. To build examples, the top Makefile,
# <motor>/Makefile must also be edited.
# Recommended IPAC release: R2-10
IPAC=$(SUPPORT)/ipac-2-11
# Recommended IPAC release: R2-11
IPAC=$(SUPPORT)/ipac/R2-11
# The following is only needed for the motor examples in iocBoot.
#!MOTOR=$(TOP)
+3 -3
View File
@@ -37,9 +37,9 @@
</ul>
<a name="Overview"></a>
<h2>Overview</h2> This documentation describes version R6-6 of the EPICS motor
<h2>Overview</h2> This documentation describes version R6-7 of the EPICS motor
record, and related EPICS software required to build and use it.&nbsp; Version
R6-6 of the motor record is compatible with EPICS base R3.14.11 and above.
R6-7 of the motor record is compatible with EPICS base R3.14.12.1 and above.
<p>
The motor record is intended to support motors of all kinds, but currently
supports only the following variety of motor controllers (in addition to Soft
@@ -54,7 +54,7 @@ Channel support):
Newport models MM3000, MM4000/5/6, PM500, ESP300/301/100 and XPSC8.
</li>
<li>
Intelligent Motion Systems, Inc. (IMS) models IM483 and MDrive.
Schneider Electric (formally IMS) models IM483, MDrive and MForce.
</li>
<li>
Advanced Control Systems, Corp. model MCB-4B.
+74 -4
View File
@@ -5,7 +5,7 @@
<meta content="Ronald L. Sluiter" name="Author" />
<meta content="Synopsis of modifications, fixes and new features for each motor record release."
name="Description" />
<title>EPICS Motor Record Release R6-6 Notice</title>
<title>EPICS Motor Record Release R6-7 Notice</title>
<meta content="Ronald L. Sluiter" name="author" />
<meta content="Notification of bug fixes, functional changes and new features." name="description" />
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
@@ -15,7 +15,7 @@
<div style="text-align: center">
<h1>
<b>Motor Record Version 6-6 Release Notice</b></h1>
<b>Motor Record Version 6-6 and 6-7 Release Notice</b></h1>
</div>
<div style="text-align: center">
<h4>
@@ -23,11 +23,81 @@
</div>
<div style="text-align: left">
<p>
<b>Aerotech Ensemble Home Search</b>
<b>Aerotech Ensemble</b>
</p>
<p>
The Home Search ability will be restored in a future bug fix release.
<ul>
<li>
Since the Ensemble network connection requires period communication from the
host to prevent the Ensemble from closing the network socket, the Ensemble
support based on the old device driver architecture (phase 1) was removed with
this release. The asyn motor architecture supports continuous, periodic updates;
the old architecture does not.
</li>
<li>
With this release, the Aerotech Ensemble driver only supports 4.01.00 Ensemble
version firmware and above.
</li>
<li>
In order to support SCURVE trajectories, the move commands have been changed
from MOVE[ABS/INC] to LINEAR. Currently, the SCURVE command can only be set
from an asyn record (e.g., SCURVE 75).
</li>
<li>
There is a problem with initiating a home search with the Aerotech Ensemble
motor controller with EPICS. The problem is that the EPICS Ensemble driver uses
Aerotech's ASCII communication protocol and that protocol blocks all
communication on ASCII communication ports during a home search. Consequently,
once a home search is started from EPICS, it is unable to stop it. With release
R6-6, the home search function was commented out of the Ensemble driver. Users
that need to perform a home search should do it from Aerotech's IDE software,
which can abort a home search. The Home Search ability will be restored in a
future release.
</li>
</ul>
<p>
<b>OMS</b>
</p>
<ul>
<li>
<p>
Watchdog and reboot error checks have been added to both the VME58 and MAXv (with
firmware ver:1.33 and above) device drivers. The EPICS drivers check for a
reboot error or Watchdog timeout (MAXv) with every motor status update.
</p>
<p>
If an error occurs, an error message is sent to both the errlog task and the
console. Since a reboot or watchdog timer trip indicates that the controller
has rebooted and no longer has valid motor positions, the controller is disabled
and is no longer available to EPICS until after the VME crate has been rebooted.
Other OMS boards in the system are unaffected by this scenario.
</p>
<p>
To better communicate this problem to the user, several medm displays have been
changed. Small displays (motorx_tiny.adl, motorx.adl) will show a yellow border
around their position readback values. Larger displays (motorx_more.adl,
motorx_all.adl) will display the message "Controller Error" in yellow. The
following error message at the console and/or in the IOC errlog is definitive;
</p>
<div style="text-align: center">
<p>
"***MAXv card #<card>Disabled*** Watchdog Timeout CTR =<ctr>"
</p>
<p>
"***VME58 card #<card>Disabled*** Reboot Detected."
</p>
</li>
<li>
A third argument was added to the MAXvConfig() call; the SSI based absolute
encoder bit flag.
<p>
MAXvConfig(0, config0, 0x00)
</p>
Bit #0 for Axis X, bit #1 for Axis Y, etc.. Set a bit flag to '1' for absolute
encoder values; '0' for the standard incremental encoder values.
</li>
</ul>
</div>
</div>
<div style="text-align: center">
<h4>