AXIS Command
The AXIS command defines parameters related to the azimuth or elevation axes that are not related to the velocity or position servos.
You must complete the AXIS questions for both the azimuth (Axis AZ) and elevation (Axis EL).
| The set-up questions listed in your configuration vary depending upon your set-up and how your have responded to previous questions. |
Use internal antenna simulator: NO
This variable determines if the internal
antenna simulator is normally OFF or normally ON for this
axis. The simulator is controlled in this area, rather than from the host computer, to allow
identical host computer code to be used regardless if the simulator is operating or not.
| The simulator may be used independently on each axis. This is useful when testing only one of the real antenna axes. |
Angle input signal source: Parallel, Synchro, A/B/Index, Canbus, or Custom
There are several choices for how to read the angles into RCP8 (see below). You must set both axes to the same value.
Angle input signal source: Parallel
Angle input format is BCD: NO
Number of bits for angle input: 16
Maximum angle update period: 0.0 ms
The parallel antenna position inputs are TTL levels. The number of bits used to represent an angle vary from site to site, depending on the style of encoder and associated circuitry used by the antenna. RCP8 supports up to 16-bits of binary angle and 4-digit BCD angles. For the binary angles, if all 16 lines are not used, the signals should be applied starting from the most significant line. Unused lines are then masked internally, and external connections are not necessary. For the BCD angles, good to 1/10º, the lowest 14 bits are used.
The maximum period configuration is used to handle cases in which the parallel angles are updated at a slower rate than the 600 Hz RCP8 polling rate. If you have a fast source, then type in 0. If the angles change slower than this, RCP8 thinks that the antenna has stopped, then suddenly moved. In that case, type in the longest expected period between updates. RCP8 only inserts angles when they change, or after this period has elapsed.
Angle input signal source: Synchro
Synchro reference frequency: 60 Hz
Shutdown for invalid synchro voltages: YES
Calibration Gain #1: 1.00000
Calibration Gain #2: 1.00000
RCP8 implements 3-wire synchros as an optional method for measuring both position and velocity. The synchro voltages for both AZ and EL are applied to the 12-pin Molex connector on the IO62/CP back panel. This connector uses the same wiring that was used for the synchro inputs to the old RCP02; so, for upgrades, you can simply move your existing cable from one to the other.
The Synchro-to-Digital (S/D) conversion is implemented entirely in FPGA code on the I/O-62 card, and in software running in RCP8. No additional hardware is required to begin using synchro inputs on your system. New setup questions in the AXIS command might be set as follows:
The first 2 questions establish that a 60 Hz synchro is used for angle (position) input on this axis. The voltages on the 2 Ref and 3 S1/S2/S3 lines are checked for validity, and RCP8 shuts down if these voltages drop below 10 % or rise above 95 % of full-scale A/D values. Note that the present voltage levels can be checked in the help view menu. The angle offset from true orientation is set to 0 in this case, but you can use it to null out any fixed position error.
When synchros are used for position input you can still use tachometers for velocity input in the usual way. However, if tachometers are unavailable, an alternative is to use the velocities that are generated by the S/D conversion process itself. The S/D converter is implemented as a Type-II tracking servo that provides 0 position error at any velocity when the acceleration is 0. The internal velocity that is maintained during this process can be used by RCP8 in place of a physical tachometer. When doing this, choose the velocity that corresponds to 100 T-Units of virtual tachometer level. Choose an upper bound that is equal to the fastest spin rate you ever intend to use.
The following table lists the maximum RMS
voltage that can be applied to the back panels Molex SYNCHRO connector for each value of
plug-in SIP resistor. The AZ channel voltages are set by SIP S1 and
S2 sets the EL voltage levels. These resistors are socketed, and can be
changed by removing the back cover of the IO62-CP panel
S1 or S2
|
Max Ref(RMS)
|
Max S-S(RMS)
|
|---|---|---|
47K
|
56V
|
31V
|
68K
|
81V
|
45V
|
100K
|
118V
|
66V
|
150K
|
178V
|
99V
|
220K
|
261V
|
145V
|
Note that the Ref inputs
have somewhat lower gain than the 3 S inputs. This is because the precision
of the S/D angle conversion is affected primarily by the precision at which the 3
S voltages can be measured. The back panel biases the gains so that the
S voltages can be made as large as possible, that is, without the
Ref voltages first filling the A/D conversion range.
The appropriate resistor is the smallest
value such that the maximum S-to-S voltage of the synchro (which is angle
dependent) still fits within the table range. The reference voltage should then fit easily
into its corresponding maximum range, but do not worry if it does not fit, the important
thing is to match the S line voltages.
For example, a traditional 90 Vrms 1:1 synchro would best use the 150 K resistor, whereas a 105 Vrms unit would require the 220 K value. Note that you can check for proper A/D conversion levels of the synchro inputs using the help view menu.
Due to 1 % resistors being used in RCP8
Synchro inputs, it is possible to have small position errors, up to 1 % over a 120° span.
The synchro gain corrections handle this. Because of the redundancy in the 3-wire synchro
signals it is possible to examine a collection of (S12,S23,S31)
measurements and deduce whether gain errors exist among the 3 terms. The 2 setup questions
to set calibration gains for synchro inputs on RCP8. They default to 1.00000 (no
correction).
The monitor command contains an ALT display format in which synchro information is shown in detail for each axis that uses those inputs. The fields are:
SyMag?- Magnitude of the synchro input, 0 ... 1 range
SyUse?- Fraction of synchro usage history table in use, 0 ... 1 range
Gains- The 2 estimated (suggested) gain terms
RCP> mo
AZ-Pos SyMag SyUse Synchro Gains EL-Pos SyMag SyUse Synchro Gains Time
------ ----- ----- --------------- ------ ----- ----- --------------- ----
120.90 0.93 0.00 -------,------- 0.00 0.00 0.00 -------,------- 9.77 res
120.89 0.93 0.00 -------,------- 0.00 0.00 0.00 -------,------- 1.39
62.38 0.94 0.17 1.00194,1.00111 0.00 0.00 0.00 -------,------- 7.00
The idea is to estimate the gain terms from
synchro information that has been collected over the widest possible span of angles on each
axis. In the above example, the reset command is first used
to clear the history tables, then the antenna was moved slowly over a 60° interval. The
SyUse? of 17 % corresponds to the 60/360 span of collected samples. A
pair of gain terms are suggested when SyUse? exceeds 5 %. Take these gain
numbers, type them in calibration gain setups, and save.
Angle input signal source: A/B/Index
Number of A/B ticks per Index pulse: 2048
Number of Index pulses per revolution: 6
Proximity sensor approximate angle: 110.0 deg
Reverse direction of A/B quadrature lines: NO
Sample lines from secondary I/O-62: NO
RCP8 can accept angle input from A/B/Index (quadrature) shaft encoders using a variety of styles of gearing and indexing. The first 2 questions choose the number of quadrature transitions (ticks) per index pulse and the number of index pulses per revolution. In this example, the encoder unit produces 2048 ticks between each index pulse, and the gearing is such that the encoder spins around 6 times for each full revolution of the antenna. The index pulses reset the measured angle to 0, or to the closest multiple according to the gear ratio. If the index pulse(s) correspond to nonzero angle(s), then use the standard Angle offset from true orientation question to set the offset of the one closest to 0.
An auxiliary proximity sensor must be used to resolve the ambiguity of the index pulses when the number of index pulses per revolution is greater than one. The sensor can be positioned anywhere along the axis and we only need to know its approximate angle. In the above example with 60° sectors per index pulse, contacting the proximity sensor at 110° adds a multiple of 60° to the present angle such that the result lies between 80 ... 140°. To define your sensors, assign sProxSwAZ and/or sProxSwEL status inputs in softplane.conf.
The following table shows the fixed I/O-62 pin assignments for the angle encoder inputs.
Signal
|
I/O-62 Pin(s)
|
Back panel J3
|
|---|---|---|
EL Index
|
5,26
|
1,14
|
EL A
|
6,27
|
2,15
|
EL B
|
7,28
|
3,16
|
AZ Index
|
8,29
|
4,17
|
AZ A
|
9,30
|
5,18
|
AZ B
|
10,31
|
6,19
|
You can choose TTL or RS-422 electrical levels by assigning these pins as status inputs in softplane.conf. Assign them to some unused sAux[] lines. You can also monitor the inputs in logic equations for debugging.
Note that for test purposes, a simple pair of quadrature signals toggling at 2 Hz can be created using RCP8 itself:
EQ00: t1_single_1 = t0_clock_1 &
!t2_single_1
EQ01: t2_single_1 = (!t0_clock_1)
& t1_single_1
Angle input signal source: Canbus
RCP8 gets angles through the canbus.
Angle input signal source: Custom
RCP8 gets angles through one of the site custom interfaces. Many of these are serial in nature.
Multiplicative angle scale factor: 1.0000
Input angles are multiplied by this factor before being inserted into the system.
Input offset from true orientation: 0.00 deg
Use this offset value if the pedestal angle positions reported to RCP8 are biased. You may correct errors as large as ±180º.
| When synchro inputs are used, you may toggle the input offset and input sense to correct the errors in offset and direction of rotation that result if the synchro lines are accidentally swapped. |
Use tachometer voltage to estimate velocity:
Use tachometer voltage to estimate velocity: YES
Tachometer calibration - Level: 50.00 T-Units
Tachometer calibration - Speed: 12.00 deg/sec
Answering YES to the first question informs RCP8 that a real tachometer is available on this axis, and that its voltage should be used in all instances where velocity feedback is required.
RCP8s internal velocity representation is, in many cases, in terms of the A/D converter units from the antenna tachometers (T-units). These units are arbitrary and need not correspond to any particular absolute angular velocity. However, it is often necessary to convert the tachometer units into absolute units to verify that the tach and position information are mutually consistent. This conversion is necessary for moving platform stabilization with an INU and for the benefit of host computer communication.
You can use the local TTY angle monitor to calibrate absolute velocity. Use the alt subcommand to choose the alternate display that displays the tachometer calibration values. Start the antenna moving on one axis using a velocity servo or a simple motor drive. For accuracy, ensure that the tachometer level is at least 50-half of the A/D converter range filled. The displayed calibration ratio-with-saved should remain approximately constant and be very close to 1.000. Enter a new pair of calibration values if the ratio is not close to 1.000.
Use tachometer voltage to estimate velocity: NO
Answering NO to the Use tachometer voltage to estimate velocity: question informs RCP8 that a real tachometer is not available on this axis, and that a Virtual Tachometer (based on position inputs) should be implemented in its place.
The Virtual Tachometer runs every 10 ms and operates in 2 steps:
- A quadratic fit is computed for the most recent W seconds of position data (time window is adjustable up to 1.2 seconds). The result is a nice instantaneous velocity estimate that is W/2 seconds old (from the center of the window). The niceness comes from having a large number (100 W) of position points to work with, and from the insensitivity to acceleration afforded by the quadratic fit. However, the W/2 second delay makes this estimate not directly usable in feedback loops.
- The delayed tachometer estimate is extrapolated forward using the known history of drive voltages that have been sent to the motor during the past W/2 seconds. RCP8 uses a first order differential equation model to predict the behavior of each axis. (The same model that is used for background consistency checks). The equation with initial conditions is numerically integrated over the W/2 second interval to produce the tachometer estimate for the present moment.
Virtual Tach - Full scale speed: 24.00 deg/sec
Sets the actual velocity in degrees/second that 100 T-Units represent. Set this number set 20 % greater than the fastest anticipated rate of rotation. Do not make it unnecessarily large, as this introduces quantization errors in the Virtual Tach units.
Virtual Tach - Differentiation window: 0.50 sec
Defines the width of the position history window. The 0.5 second default is appropriate in almost all cases. Making it larger produces smoother drive voltages at low scan speeds, but at the expense of greater errors in extrapolating the phase delay.
Virtual Tach - Minimum travel: 0.05 deg/window
Allows you to minimize the effects of noise in the least significant bits of the antenna positions. This question sets a minimum travel that must be observed within the history window in order to produce a nonzero Virtual Tachometer estimate. The minimum travel is similar to a constraint on the standard deviation of the positions within the window. When quantization errors are dominant, the minimum travel should be set to approximately one half the weight of an LSB. The proper setting ensures that a tachometer value of 0 is produced when the antenna is genuinely at rest.
Virtual Tach - Use antenna model predictor: YES
Permits the extrapolation model to be switched OFF for testing purposes,
but it should always remain ON during normal operation.
Canbus Tach -- Full scale speed: 43.60 deg/sec
Note the following about the Virtual Tachometer setup questions.
Enforce soft limits of position travel: YES
Minimum soft limit of travel: -1.00 deg
Maximum soft limit of travel: 91.00 deg
Most weather radar antennas can operate over a limited range of elevation angles - typically from slightly below the horizon to slightly beyond the zenith. Since mechanical stops are encountered, it is important not to run the antenna to its limits at any appreciable speed. To enforce this, RCP8 can be programmed with 2 soft angle limits, beyond which the antenna should not travel. These internal bounds are typically set slightly short of the actual mechanical stops and of any limit switches that might be activated. Never contact the stops during normal operation. Enter the 2 limits (lower/upper) in degrees (º).
| The angle span defined by these limits may be any clockwise sector as large as 359º. |
Enforce shutdown limits of position travel: YES
Minimum shutdown limit of travel: -3.00 deg
Maximum shutdown limit of travel: 93.00 deg
The travel limits represent the hard bounds between where the antenna must lie. If the angle is observed to be outside of these limits, RCP8 shuts down immediately. The shutdown limits are intended to catch preposterous angles that might result from broken cables or faulty position encoders. The limits should be set to the furthest downward (lower) and upward (upper) positions that are realizable, preferably just before any limit switches are contacted.
| The angle span, defined by these limits, may be any clockwise sector as large as 359º. |
Force shutdown if tach/pos are inconsistent: YES
Permissible fixed error: 1.50 deg/sec
Permissible relative error: 10.00 %
RCP8 continually checks to ensure that the velocity measured by the antenna tachometers matches those obtained by differentiating the antenna position. If these quantities are dissimilar, then a failure may have occurred that could lead to the damage of the mechanical system. For example, if a velocity servo is running, and if the tachometer input signal were removed, then the processor would assume that the antenna was not up to speed and would continue to output a large drive. If the antenna were indeed spinning, this large drive could lead to difficulty.
Force shutdown for unresponsive antenna: YES
Permissible tach prediction error: 15.0 T-Units
Maximum duration of such error: 3.0 sec
One of the more damaging types of antenna failures can occur when the motor, the gearbox, or the antenna itself becomes jammed. In such cases, it is important that the servo system remove the motor drive immediately to minimize consequential damages. To accomplish this type of safety action, RCP8 makes a decision to shutdown based on a comparison of the actual antenna acceleration with the expected acceleration.
Moment of Inertia: 6.00 (D-Units / T-Units/sec)
This parameter defines the moment of inertia in a linear dynamic model of the antenna motion. The moment of inertia can only be measured when the antenna is accelerating. Representative values can be read from the Angle Monitors alt display while applying ad or ed commands. This parameter is used as part of the background calculation that checks for an unresponsive or jammed antenna.
| The motor sustaining drives and the nominal drive slopes must be properly set, before the moment of inertia, so each axis can be measured. |
| When virtual tachometers are in use, the associated antenna model predictor must be disabled while the moment of inertia is being measured on each axis. |
Enforce model-based acceleration limits: YES
Maximum acceleration: 6.0 deg/sec/sec
Extension of bound toward zero drive: 50%
RCP8 servos can operate under the constraint of bounding the maximum acceleration (on each axis) that the antenna experiences. This acceleration limiter is based on RCP8s existing first-order linear differential equation antenna model. When the limiter is enabled, output drive levels are clamped within the range of voltages that would keep the antenna acceleration within the configured bounds. This results in much gentler and smoother large-scale motion of the antenna, without compromising small-scale performance in any way.
| Since the acceleration limiter is based on RCP8s internal antenna model, all steps up to and including the proper measurement of the moment of inertia must be complete before enabling this feature. |
Acceleration limiting works by keeping the motor drive bounded within an interval that is centered on the voltage that would maintain the present velocity. If the simulated model of the antenna is tuned properly, this algorithm limits both the maximum acceleration (increasing drive) and maximum deceleration (decreasing drive) of the antenna.
The third question (Extension of bound...) gives finer control of the extent to which the model-based acceleration limiter is can extend the allowable drive interval down to include 0 V. To make sure that the antenna could always be stopped, even if the numerical model were badly mistuned, the original implementation of the acceleration limiter always extended the valid drive interval to include 0 V. This meant that 0 drive could always be applied to bring the antenna to a stop, but as a result, the maximum deceleration limit would sometimes be exceeded. In some cases this leads to gear strain as the antenna coasted to a stop from high speed under 0 drive.
The third question allows the deceleration region to be controlled. If the antenna can safely coast to a stop from any velocity, then the safest setting is the old default value of 100 %, that is, the allowable drive interval is extended all the way to 0. A value of 0 % enforces the deceleration limit just as strongly as the acceleration limit, but should only be used if the model is properly tuned and if the antenna could be strained by coasting to a stop. The default value of 50 % is usually a reasonable compromise.
Use drive compensation for unbalanced antenna: YES
Neutral droop position of antenna: 35.0 deg
Drive required 90-deg off neutral: 51.4 D-Units
RCP8 can apply drive compensation to an antenna that is not mechanically balanced. The result is that even a badly unbalanced axis can be properly stabilized without requiring any readjustment of the antenna counterweights. The new setup questions in the axis menu are:
The model used here is that the center of mass of the unbalanced antenna is offset some distance from the axis of rotation. Thus, when no other forces are applied, the antenna tends to droop to a neutral angle that puts that center of mass directly below that axis. In the previous example, the neutral droop angle is 35°, that is, no motor drive is required to hold the antenna at that position.
Once we know the neutral droop angle N, the drive that is required to compensate for the imbalance when positioned at some angle P is D sin(P-N), where D is the drive required to hold the axis 90° away from the neutral point. The second setup question asks for the value of D.
For example, if we have the unbalanced antenna mentioned above that returns to 35° when no drive is applied. We wish to compensate for this, and have manually determined that a drive level of -28 D-Units is required to hold the antenna down when it is positioned at 2°. The drive that would be required at 90° offset is therefore -28 / sin(2-35) = 51.4 D-Units, which we then enter into the second setup question.
Maximum output drive voltage: +/- 10.00 Volts
Drive voltage is positive for positive motion: NO
Drive voltage is positive for positive motion: YES
Set this Boolean variable to YES or NO if the numerically positive drive levels result in upward or downward velocities. To determine the correct setting, use the local TTY angle monitor to set up a small positive drive and note whether the positions increase or decrease with time.
Tach voltage is positive for positive motion: YES
Set the Boolean variable to YES or NO if the positive tachometer A/D values, while the antenna is moving and while using the local TTY angle monitor, correspond to upward (CW) or downward (CCW) velocities. The displayed tachometer values should be positive when the position increases with time. If the sign is incorrect, then toggle this variable.
Drive is normal(0), or always Neg(-1)/Pos(1): 0
Drive output offset: 0.00 D-Units
Use this offset value if the servo power amplifiers do not produce 0 drive when 0 V is applied. Do not use this value to compensate for asymmetric motor-drive requirements in the 2 directions. Instead, use the separate positive and negative sustaining motor drives and the separate nominal drive slopes.
Tachometer input offset: 0.00 T-Units
Use this value if there are DC offsets in the tachometer signals. RCP8 automatically DC-balances its differential tachometer inputs, so residual offsets may be the result of contact potentials in the wiring of the tachometer. If necessary, adjust this input offset so that a stationary axis produces a tachometer reading of 0.