Digital Instrumentation for Rotating Machines

Digital Instrumentation for Rotating Machines
?J:JC---~
DIGITAL INSTRUMENTATION FOR ROTATING MACHINES DIGITAL INSTRUMENTATION
FOR
ROTATING MACHINES
by MICHAEL A. HOCKINGS, B.Eng. A THESIS SUBMITTED TO THE FACULTY OF GRADUATE STUDIES IN PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE MASTER OF ENGINEERING McMASTER UNIVERSITY JUNE 1982 MASTER OF ENGINEERING (1982)
(Electrical Engineering)
McMASTER UNIVERSITY
Hamilton, Ontario.
TITLE:
Digital Instrumentation for Rotating Machines
AUTHOR:
Michael Albert Hackings, B.Eng.
SUPERVISORS:
Professor R.T.H. Alden
Professor R. Kitai
NUMBER OF PAGES:
ix' 106
SCOPE AND CONTENTS
The thesis
is concerned with
the design and construction of an
instrumentation system for a machine set in a power laboratory. As the
system was designed primarily to replace conventional analog metering
its operation is very easy to master given minimal instruction. The
system is capable of measuring rotor speed, rotor angle and reactive
torque. From these values mechanical power and slip are calculated.
While
acting
as
a
measuring
instrument
the
system
can
also
simultaneously provide speed setting of a de machine by means of a
controlled· rectifier.
As
this
system
is
constructed
around
a
microcomputer it is possible to expand some of the functions as well as
interconnect to other digital devices for enhanced performance.
ii
ACKNOWLEDGEMENTS ) wish to thank Professors R.T.H.
Alden and R.
Kitai
for their
assistance during the course of this work.
I also thank Professor B. Szabados for his many helpful comments.
And last, but certainly not least, I would like to thank Bonnie Jean
without whose moral support, as well as typing and editing assistance,
this thesis would not have been completed.
ii;
TABLE OF CONTENTS Page CHAPTER 1:
INTRODUCTION
1
1.1
Machine Set Instrumentation
1
1.2
The Instrumentation System
2
REVIEW OF MACHINE QUANTITIES
9
2.1
Speed
9
2.1.1 Speed Measurement
9
2.1.2
Digital Speed Measurement Using Speed Signal
Frequency
9
Digital Speed Measurement Using Speed Signal Period
11 2.2
Torque
12 2.2.1
Mechanical Versus Air Gap Torque
13 2.2.2
Torque Measurement
13 2.2.3
Steady State Torque
14 2.3
Rotor Angle
16 IMPLEMENTATION
17 3.1.1
Speed
17 3.1. 2 Speed Adjustment
22 3.1.3
The Contro 11 ed Rectifier
25 3.2
Torque
27 3.2.1
The Force Transducer
27 3.2.2
Pre-amplification and A/D Conversion
27 CHAPTER 2:
2.1. 3 CHAPTER 3:
iv 3.3
Rotor Angle
29 3.3.1
Signals Used to Determine the Rotor Angle
29 3.3.2
Hardware and Software Required for Rotor Angle Determination
32 3.4
Mechanical Power and Slip
32 3.5
The Total System
32 3.5.1
Hardware Integration
33 3.5.2
System Software
38 3.6
System Expansion Capabilities
39 SUMMARY
42 4.1
Error Sources
42 4.1.1
Common Error Sources
42 4.1.1.l
Interrupt Response Time
42 4.1.1.2
Timer Size and Clock Rate
43 4.1.1.3
Integer Calculations
4.1.1.4
Crystal Frequency
43 4.1.1.5
AC Line Waveshape/Frequency
44 4.1.2
Specific Error Sources
44 4.1.2.l
Speed Measurement Error
44 4.1.2.2
Rotor Angle Measurement Error
44 4.1.2.3
Torque Measurement Error
44 4.1.2.4
Mechanical Power Error
45 4.1.2.5
Slip Error
45 4.2
System Performance Confirmation
45 4.3
Calibration
47 CHAPTER 4:
v
, 43 4.3.1
Torque Interface Calibration
47
4.3.2
Rotor Angle Interface Calibration
48
4.4
Conclusions
50
4.5
Further Developments
53
APPENDIX
A
USER'S MANUAL
APPENDIX
B
SOFTWARE
BIBLOGRAPHY
vi
LIST OF ILLUSTRATIONS
FIGURE NUMBER
TITLE
PAGE 1.1
The Complete System
3
1.2
Display Format and Descriptors
5
1.3
Measuring Instrument Keyboard Functions
6
1.4
Speed Setting Keyboard Functions
8
2.2.1
Use of a Load Cell to Measure Reactive Torque
15 2.3.1
Phaser Diagram for a Synchronous Generator
15 3.1.1
Optical Sensor Physical Orientation
18 3.1.2
Speed Pulse Interface Block Diagram
18 3.1.3
Speed Pulse Timing Diagram
19 3.1.4
Interrupt Request Flip-Flop Configuration
19 3.1.2.1
Conventional Ward-Leonard system
22 3.1.2.2
Solid State Armature Voltage Control with Speed Feedback
22 3.1.2.3
Block Diagram of the Closed Loop System
24 3.1.3.1
The Controllable Rectifier
26 3.2.1
Force Transducer Mounting
28 3.2.2
Torque Signal Pre-Processing Circuit Block Diagram
28 3.3.1
Signals for the Determination of the Rotor Angle
31 3.3.2
Rotor Angle Determination Circuitry
31 3.5.1
Total System Hardware Configuration
34 3.5.2
The System Controller
35 vii
3.6.1 Instrumentation System Port Expansion
40 3.6.2 Program Memory Expansion with Intel Devices
40 3.6.3 Program Memory Expansion with Standard Devices
41 3.6.4 Data Memory Expansion
41 4.3.2.1 Machine Configuration for Rotor Angle Calibration
49 viii
LIST OF SYMBOLS
N
number of speed signal pulses per rotor revolution
t
sampling interval for rotor speed measurements
C,Cl,C2
number of speed signal pulses per sampling interval
It
rotating machine terminal current (amperes)
Vt
rotating machine terminal voltage (volts)
T
reactive torque (newton-meters)
w
rotor speed (radians per second)
n
rotor speed (revolutions per minute)
ns
synchronous rotor speed (revolutions per minute)
K
unit correction constant
Aa
angular acceleration (radians per second 2 )
Va
angular velocity (revolutions per second)
d
synchronous machine rotor angle (radians)
Xs
synchronous reactance (ohms)
E
generated voltage (volts)
S
rotor slip f clk
fixed clock frequency (hertz) 0
ix
CHAPTER 1 INTRODUCTION 1.1
Machine Set Instrumentation
In the past, mechanical and electrical measurements in the
undergraduate 'machines' laboratories have been made primarily using
analog instruments.
Speed was measured using a tachogenerator with an
analog meter display, (reaction) torque was measured using a spring
balance, torque arm, and preload weight, and the rotor angle of a
synchronous machine was measured with a stroboscope.
Also, in many
cases, the armature current for de machines came from a large fixed
voltage de supply and was controlled by a simple resistor starter.
The topic of this thesis is a digital instrumentation system
which has been developed to replace the analog machine set instrumenta­
tion previously mentioned.
In addition to measuring rotor speed, rotor
angle, and reactive torque, the digital instrumentation system also
calculates rotor slip and mechanical power from these values. Output of
the displayed values to the instrumentation system user is made via an
easily readable numeric display.
In
addition
to
the
instrumentation
rectifier has also been developed.
system a controllable
The primary use of this controllable
1
2
rectifier is to supply de machine armature current in place of a large
fixed de supply and resistor starter.
This rectifier draws power from
the three phase line and is capable of supplying de power under either
local (manual) or remote (automatic) control.
A closed loop system employing armature voltage control of the
de machine was implemented using the controllable rectifier and the
instrumentation system.
This was performed in order to determine the
acceptability of the controllable rectifier for a speed control system.
The final implementation produced a system which provides the _instrumen­
tation capabilities along with a speed setting feature which provides
the functions of an electronic motor starter.
After an overview of the instrumentation system, the following
chapters contain a discussion of the machine quantities of interest, and
an explanation of the implementation of the system functions. In the
last chapter, sources of error are considered, the instrumentation
system performance evaluated, and final conclusions and recommendations
indicated.
1.2 The Instrumentation System
A block diagram of the instrumentation system is shown in figure
1.1. As can be seen from the diagram, there are two signal connections
to the machine which are made via a remote sensor interface. From these
connections most of the machine measurements may be made. The remote
3
i....f----
120V, 60hz Power
8 -8883
8 -8888
SYSTEM CONTROLLER·
Data
Low V.
Power
a
b
c
n
10
3
Controllable
Comunications
Rectifier
3~,60hz
120/208V
Power
Input
Sensor
Interface
D. C.
Power
Output
\._ Torque Transducer
INDUCTION
MACHINE
D. C.
MACHINE
~--1
SYNCHRONOUS
MACHINE
Position/Direction/Speed Transducer Assembly
Figure 1.1:
The Complete System
~
4
sensor interface is located near the force transducer on the machine set
while the system controller is located on the machine set's instrumenta­
tion bench. They are connected via a cord set terminated with common
DB-25 connectors. The display on the system controller consists of 12,
seven segment light emitting diode (LED) displays, arranged in two rows
of six displays. The format of these displays is shown in figure 1.2.
The first digit in each row is the display descriptor indicating the
quantity being represented by that display. The display descriptors are
listed in figure 1.2.
digit magnitude.
Next, after a space, is the sign, and a four
A decimal point may appear in the magnitude as re­
quired by the quantity being displayed.
The red LED situated to the
right, above the upper display, indicates that +5V power is available to
the controller board electronics within the system controller.
Selection of which quantity is to be displayed is made via the
combination, control/data entry, keyboard.
directly below the display.
This keyboard is located
Figure 1.3 shows the display select keys
which are used when the device is operated solely as a measuring instru­
ment.
As this instrument has been designed for use primarily as a
teaching device, its operation has been made very simple and logical. In
addition, incorrect keystrokes are ignored or modified and no action is
taken until
a'' va 1id
key sequence is fo 11 owed.
5
+SV Power
Indicator~
•
[EJ IBIB.IB.\B.IB.I
[EJ \B\8.\8.\B.\B.I
-f~si!n~
(_Display Descriptor
Magnitude
II
- Speed
1:::
- Torque
{=/
- Rotor
Angle (electrical degrees) 5
- Slip
(unitless) (RPM) (nt-m) - Set Speed Display (RPM)
•
~
Figure 1.2:
- Set Speed Entry
(RPM)
- Firing Angle Count
Display Format and Descriptors
6
~DOD
DODD DODD DODD [)n
-
display Speed (RPM)
[)t
-
display Torque (nt-m)
[)P -
display Mechanical Power (watts)
[);'.\
display Rotor Angle
-
[) S Figure 1.3:
(electrical degrees)
display Slip (no uT'.its)
Measuring Instrument Keyboard Functions
7
All of the features of the measuring instrument still apply when
the system is being used to set the de motor speed. As a speed setting
device the remaining previously undefined keys on the keyboard now have
specific functions as shown in figure 1.4.
Again, as with the display
function of the instrumentation system, the set speed functions are
operated with a very simple sequence of keystrokes.
The instrumentation
system employs an algorithm which provides a speed setting capability
for set speeds between 600 and 2999 RPM.
8
DIT100D ~00[~]0
0000
[] ~ 0 D
Sn
-
Set Speecl (RPM)
•
-
Execute
C
-
Cancel
Dsn F'"~
Qj Figure 1.4:
-
9 -
display Set Speed
display Firing Angle Count
Numeric Data Entry Keys Speed Setting Keyboard Functions CHAPTER 2 MACHINE QUANTITIES 2.1
Speed
In the following text 'speed' will refer to the rotational
velocity of a machine set shaft.
2.1.1
Speed Measurement
Speed proportional signals may be generated in either of two
basic formats, analog or digital [l,2,3,4,5,6].
As speed measurements
performed by the instrumentation system are of a a digital nature the
discussion of speed measurement will concentrate on digital methods.
Digital speed proportional signals [1,2,3,5] can be created by
generating one or more pulses per revolution of the machine shaft. From
this signal the speed can be determined from either of two characte­
ristics or this signal,
2.1.2
(a)
the frequency of the pulse train, or
(b)
the period between pulses.
Digital Speed Measurement Using Speed Signal Frequency
The transducer
~s~d
to generate a speed proportional frequency
signal produces a pulse rate which is directly proportional to the
10
angular velocity of the rotating machine shaft. This method has been
used in a variety of ways for speed control of machines as well as speed
measurement [ 1,5,7].
Determination of the speed from this frequency
signal is then clearly a matter of counting the pulses over a known
fixed period as the number of pulses per revolution (N) is known.
Using this method and counting over two successive time in­
tervals both angular velocity Va and angular acceleration Aa, may be
determined.
The values of Va and Aa at the halfway point (between the
measurements may be determined as follows;
Va = Cl+C2
2Nt
rev/sec
(2.1.2.1)
Aa = C2-Cl
Nt 2
rev/sec 2
(2.1.2.2)
and
This
provides
reasonable accuracy particularly when a low
sampling rate is acceptable.
A low sampling rate corresponds to large
pulse counts acquired over a longer time interval.
A system has been constructed using this method [l], employing
an angular transducer of moderate resolution (N=360).
It is capable of
measuring angular velocities up to 10,000 RPM with a resolution of 1
11
RPM.
The sampling rate of this system is 6 measurements per second,
however, this can be greatly increased by use of an angular transducer
of higher resolution.
Alternatively, a much simpler system may be constructed should
only the angular velocity be required.
In that case the speed is simply
defined by;
Va
=
C rev/sec
(2.1.2.3)
Nt
With a transducer which provides a decimal number of pulses per
revolution (ie: 1, 10, 100, 1000 ... ), the speed may be directly measured
to reasonable accuracy with a standard frequency counter.
2.1.3
Digital Speed Measurement Using Speed Signal Period
Determination of the angular velocity from the period of a
digital speed transducer signal [3,8] is not as straight forward as when
the frequency characteristic is employed.
One reason for this is that
the time required to determine the speed is not constant and varies in
inverse proportion to the speed.
If, using a transducer which produces
N pulses per revolution, a total of C clock pulses are counted between
two transducer pulses, then, from the count thus derived, the angular
velocity may be determined by;
12
V
Nf
a =
elk
rev/sec
(2.1.3.1)
c
For the case of N = l, any error due to unequal spacing on the
transducer rotor is eliminated as the pulses will then always be 360
degrees of rotor revolution apart.
This would then simplify the ex­
pression for Va to;
Va
=~
(2.1.3.2)
rev/sec
c
The speed reading can then be updated once every revolution of
the machine shaft.
With both frequency and period measurement methods it is not
possible to measure zero (or very low) speed where the pulse repetition
rate from the transducer is effectively zero.
This problem can be
circumvented by adding a constant bi as speed to the transducer.
This
would then produce a pulse repetition rate which is non-zero for zero
speed thus making low and zero speed measurements possible.
Further
discussion on this topic can be found in [9] and [10].
2.2
Torque
The following section is concerned with the aspects of torque
and torque measurement that directly affect the instrumentation system.
13
2.2.1
Mechanical Versus Air Gap Torque
The mechanical
torque
is
the measurable
present at the shaft of the motor (or generator).
physical
quantity
The air gap torque is
the torque generated within the machine between the rotor and stator.
Under steady state conditions the difference between the air gap torque
and the mechanical torque is due to rotational losses within the ma­
chine.
In the following discussion only mechanical
torque will
be
considered, hence the word torque will indicate mechanical torque.
2.2.2
Torque Measurement
There are two practi ca 1 methods of measuring the output (or
input) torque of a machine;
(a)
measurement of shaft torque
(b)
measurement of reaction torque
Measurement of shaft torque requires expensive and/or complicat­
ed arrangements of rotating transducers, thus making it generally less
suitable for use in undergraduate machines laboratories where there are
several duplicate machine sets.
Reaction torque is measured between a
suspended machine stator and the machine set bed. The measurement of
reactive torque is simple by comparison and is frequently used in
dynamometer testing of motors and generators [10]. For most applications
in a teaching laboratory, reaction torque measurement is less expensive
and easier to implement and was therefore the method used.
14
To measure the reaction torque exerted on (or by) a machine, one
needs only to measure the force at a fixed distance from the axis of the
shaft. The torque is then the force times this fixed distance. This may
be accomplished by using a force transducer as shown in figure 2.2.1.
The output of the force transducer is then proportional to the reactive
torque exerted on (or by) the machine. If the distance from the center
line of the machine shaft to the center line of the force transducer is
known, (moment arm) then the magnitude of the reaction torque may be
determined.
2.2.3
Steady State Torque
Measurement of the real 'instantaneous' torque of a machine is
very difficult, if not impossible. To understand this, it must be
considered that the torque output of a motor is not constant and is
composed of low frequency and high frequency components. The low fre­
quency components arise from such things as variation in the terminal or
field voltages and loading, whereas the high frequency components are
caused by the discrete nature of the poles and windings. For a machine
of moderate or large size, these high frequency components are hard to
measure as the inertia of the machine will damp them out to an immeasur­
ably small level.
For this reason, torque measurements are invariably
of the 'steady-state' variety, .concerned with only the 'slower' tran­
sients due to changes in load, as well as field and armature voltages.
15
FORCE
TRANSDUCER
______________
.....
\
Figure 2.2.1:
Use of a Load Cell to Measure Reactive Torque
Figure 2.3.1:
Phasor Diagram for a Synchronous Generator
16
2.3
Rotor Angle
The real and reactive electrical power output from a synchronous
generator can be defined by a function of the rotor angle (d), synchro­
nous reactance (Xs)' voltage behind synchronous reactance (E 0 ), and the
terminal voltage (Vt). This is also true for the real and reactive
electrical power drawn by a synchronous motor. A phasor diagram depict­
ing these relationships for a cylindrical rotor synchronous generator is
shown in figure 2.3.1. As can be seen in the phasor diagram, the rotor
angle is the angle (in electrical degrees) between E0 and Vt [18].
Determining the rotor angle means measuring the relative angle
between E0 and Vt rather than computing the difference between two
absolute angles. This difference may be determined by measuring the
angular displacement between the fixed field on the rotor and the
rotating field on the stator. One method of accomplishing this is to
take a 'snapshot' of the rotor position at a known time in the ac cycle.
If the point of zero displacement is known for this position in the
cycle, then the angular distance between the zero position and the
snapshot position can be used to determine the sign and magnitude of the
rotor angle.
CHAPTER 3
IMPLEMENTATION
This chapter is concerned with the hardware and software imple­
mentation of instrumentation and speed setting functions of the system.
3.1.1
Speed
The rotor speed of the machine set is determined by the in­
strumentati on system by measuring the period of one revolution of the
machine shaft. The hardware to sense shaft rotation consists of a
slotted disc mounted on the machine shaft, optical sensors mounted on
the synchronous machine housing, and associated interface electronics
mounted on the machine bed. For simplicity, the slotted disc has only
one slot cut into it, this slot however, is just wide enough to allow
the use of two optical sensors mounted side by side (figure 3.1.1). The
use of two optical sensors in this manner makes it possible to determine
the direction of the shaft rotation as well as the period (and hence the
speed).
Referring to the speed pulse interface block diagram (figure
3.1.2), and the speed pulse timing diagram (figure 3.1.3), the gener­
ation of the speed and direction signals are as follows. With the disc
rotating in the direction shown, sensor Sl is uncovered first, causing
17 18
#optioo.I sensors ~
Lrnl_(~-----.
rotating disc
front view
Figure 3 .1.1:
side view
Optical Sensor Physical Orientation
S1
I
one­
shot
S2 I
~
---i__r­
_ _ _ _....__ _ _ SPEED I
Q1------------- DIR
Figure 3.1.2:
Speed Pulse Interface Block Diagram
19
- - - - ­ ·-- - - -- ­ -
---~
REV.
FOR.
51
--­ ------- --·- ------.
S2
u------------­
u
----'-/__________ :~~~----~~~---_..._J
SPEED/
_o_rR
Speed Pulse Timing Diagram
Figure 3.1.3:
HI
I
.____ _.... D
Q i - - - - - - - - - INT
f
SPEE0/·----~--1
R
INTACK/ PB?
Figure 3.1.4:
Interrupt Request Flip-Flop Configuration
20
its output to change state. As the second sensor, S2, is uncovered the
logical AND of the two sensor outputs becomes TRUE. As the disc contin­
ues to rotate sensor Sl is blocked off thus causing the AND of the two
sensor outputs to become FALSE again. This TRUE to FALSE transition of
the AND gate output is used to trigger a one-shot that produces a short
pulse, which in turn latches the state of S2 at that instant. In the
reverse direction (counter clockwise rotation), the sequence of Sl and
S2 is reversed, with the net effect that the direction signal is in the
complement state. The output to the one-shot is also used as the SPEED/
signal for determination of the rotor period.
The SPEED/ si gna 1 is connected to the INT (interrupt request)
pin of the processor through an interrupt request flip-flop (figure
3.1.4). The direction signal is tied to the test input Tl. To acknowl­
edge the interrupts, port 1i ne P2 7 , is used to reset the interrupt
request flip-flop.
The interrupt routine initiated by the speed pulse interrupt
request alternately starts and ·stops a hardware counter. This counter
simply counts the number of ALE (address latch enable) pulses between
two speed pulse interrupts. As the frequency of the ALE pulses is
constant, and speed pulse interrupts occur at precisely once. per shaft
revolution, the count of ALE pulses (C) between any two speed pulses can
be interpreted as a measure of the period of the shaft revolution.
Knowing the precise frequency (fclk=400kHz) of the ALE pulses the speed
21
can then be calculated. The speed in RPM (n) may then be determined
using the formula;
n = 60 f clk RPM
(3.1)
c
The ALE pulses are counted by means of a 16 Bit counter; this
makes it possible to determine speeds as low as 367 RPM (maximum count)
or as high as 24xl0 6 RPM (single count). However, the actual range used
is limited at both ends.
At the low end of the speed range the period
of a single revolution of the machine is not sufficiently constant to
provide a stable measure of the speed. The lowest speed that is measured
is then slightly greater than 500 RPM. The upper bound of the speeds to
be measured is set by the physical limitation of the motor. An upper
limit of 3000 RPM has been chosen, which corresponds to about 170% of
the normal operating speed of the machine (1800 RPM).
3.1.2
Speed Adjustment
An attempt was made to implement speed control of the de machine
using an armature terminal voltage control system. The conventional
Ward-Leonard scheme, shown in figure 3.1.2.1, requires an individual mo­
tor-generator set to supply power to the de motor whose speed is to be
controlled by varying the armature voltage.
The motor generator set of
the Ward-Leonard system was replaced with a solid state controllable
re.ctifier which converts the ac power directly to de (figure 3.1.2.2).
In addition to the basic Ward-Leonard system, speed feedback was added
22
,----------
-
-,
1
I
l
de generator 1
ac motor
I
I
I
L ____________
_JI
+
field supply
Figure 3.1.2.1:
r
Conventional Ward-Leonard system
- - - - -
-
controllable
- - - - -
..,
I
+
I
.rectiti er
L
-
- -
I
- -
speed-
J
instrumentation
system
+
field supply
Figure 3.1.2.2: Solid State Armature Voltage Control with Speed Feedback
23
using the system controller and speed sensors.
A block diagram of this
closed loop system is shown in figure 3.1.2.3.
The speed control
unacceptable,
provided by this system was found to be
primarily due to
the
inability of the controllable
rectifier to provide electrical braking for the de machine.
The func­
tion that is presently implemented may be considered as an electronic
replacement for the fixed de supply and resistor starter used to supply
armature current to the de machine.
The electronic speed setting is accomplished by adjusting the
firing angle of the thyristors according to the following calculations;
Direction
=
sign (set speed - speed)
(3.1.2.1)
Magnitude
=
f n (set speed - speed)
(3.1.2.2)
The direction of the change is determined by the sign of the
difference between the set speed and the actual speed. The magnitude of
the change is a step function of the magnitude of the same difference.
Once the magnitude and direction has been determined by the speed
setting algorithm, they are communicated to another section of the
routine which adjusts the firing angle of the thyristors accordingly.
It should be noted that if the set speed function is not select­
ed, the firing angle of the thyristors is set so that there is zero
voltage output, and the set speed algorithm is not executed.
24
J,0 AC
Supply Input
LSYNC/
Controlled
Rectifier
OSYNC/
Control
Unit
speed
signal
DC Machine
Figure 3.1.2.3:
Block Diagram of the Closed Loop System
25
3.1.3 The Controlled Rectifier
A block diagram of the controlled rectifier is shown in figure
3.1.3.1. This controlled rectifier was specifically designed to be used
as a de machine armature supply. As shown in figure 3.1.3.1, the con­
trolled rectifier draws power from the three phase 120/208 vac, 60hz
supply. From this supply it produces the de output with a half con­
trolled or 'industrial' bridge rectifier circuit using three SCR's and
three diodes. The firing angle control circuit for the SCR's was de­
signed to provide a simple control interface for manual (local), or
automatic (remote) control. In addition the control circuit employs a
phase-locked-loop (PLL) and a shift register in an unusual configuration
to provide equidistant firing of the SCR's for reduction of harmonics in
the ac supply current. Although intended primarily as a de machine
armature supply, the output of the controlled rectifier is sufficiently
smooth to supply a de, or synchronous machine, field current.
This controllable rectifier has two levels of current sensing
for overcurrent protection. The first level is internal to the rectifier
unit and disables the SCR's if an overcurrent condition is sensed. To
re-enab 1e the controlled rectifier following an overcurrent shut-down
the manual reset button on the rectifier must be depressed. For safety
purposes a power-on sequence simulates an over-current condition so that
there is no power output when the ac power is initially applied to the
controllable rectifier. The second level of current sensing that is
available is not used by the controlled rectifier's internal electronics
26
oc input
12rD/2Ql8 3<1>
c
de output
~-255
..
-
-
b
~""
n
bridge rectifier
~
current
sense
-..t
, lr
,, .,
current
level
deteder
SCR
gate
isolation
line
reference
I~
--­-
three phose, half.control led,.
-
a
voe
~~
.
phase-locked-loop
control circuit
delay
I-­
~~
,mc:_nual
3
•auto
LS YNC/,r
aDSYNC/
signals for external control
Figure 3.1.3.1:
J
CS1 I
CS2/
~~
manual
reset
t
manual
control
!
nCS2/
The Controllable Rectifier
27
but is made available to an external controller with the LSYNC/ and
DSYNC/ signals. This signal can then be used by and external (contro­
lling) device to determine when a preset current limit has been ex­
ceeded. This current limit may be set between 5 and 20 amperes de. The
sense level controls for both first and second levels of current sensing
are located inside the case of the controllable rectifier in order to
prevent misuse.
3.2
Torque
3.2.1
The Force Transducer
A bidirectional
force transducer is used to determine the
reaction torque of the de machine. This transducer is rigidly mounted
between the machine set bed and the de machine as shown in figure 3.2.1.
For the test setup the distance between the center line of the motor and
the center line of the force transducer is 0.243 meters (9-9/16 11 ) . This
distance needs to be known in order to calibrate the electronics to give
an absolute measure of the torque.
3.2.2
Preamplification and A/D Conversion
The force transducer is a passive load cell which requires
external excitation in order to produce a load proportional signal. The
output of the force transducer is an ana 1og voltage with a full range
output swing of only a few millivolts. It therefore requires amplifica­
tion as well as analog to digital conversion in order to make it compat­
ible with the digital processing system with the measuring instrument.
28
/DC machine
torque
arm~
0
force
Figure 3.2.1:
Force Transducer Mounting
Al 0 conversion
but fer
amplifier
+---l
transducer
8 bits
output
gain adj.
offset ?dj.
Figure 3.2.2:
Torque Signal Pre-Processing Circuit Block Diagram
29
A simplified block diagram of the signal pre-processing circuit
is shown in figure 3.2.2. The output of the force transducer is connect­
ed to an amplifier of high input impedance in order to limit loading of
the transducer. Gain and offset adjustments make it possible to adjust
the output to obtain zero indication at no load as well as a calibrated
indication for a specific load. After amplification, the signal is
passed through a low pass filter to remove
frequency components above
30Hz. Analog to digital conversion is accomplished using SSI and MSI
devices in conjunction with a low cost 8 bit D/A converter.
The result of the A/D conversion is offset bi nary. The va 1ues
FFH and OOH, (H indicating Hexidecimal) are the most negative, and most
positive values respectively, with 80H being taken as the zero point.
The most significant bit of the byte is used as the sign indicator bit,
leaving a seven bit magnitude. The transducer amplifier is calibrated to
provide a digital output from the A/D of 80H with no load and FFH to OlH
of a swing of -12.7 to +12.7 N.m. Each count in the magnitude then
corresponds to approximately 0.1 N.m of torque.
3.3
Rotor Angle
3.3.1
Signals used to determine the Rotor Angle
The rotor angle is the angle of the stationary magnetic field on
the rotor with respect to _the rotating magnetic field on the stator of a
synchronous machine. In order to measure this angle, two signals are
required, one to represent the position of the machine rotor and one to
30
serve as a reference to the terminal voltage of the machine. Signals
that can serve these purposes are already available to the instrument. A
line sync pulse, with respect to the
1
a 1 phase of the supply (LSYNC/),
is available from the controllable de power rectifier. The SPEED/ signal
can be used to indicate the machine rotor position as it always occurs
at the same point in the rotor's revolution.
3.3.2
Hardware and Software Required for Rotor Angle Determination
Refering to figure 3.3.1, the relationship between the speed
pu 1se s i gna 1 (SPEED/) , and the 1 i ne sync s i gna 1 ( LSYNC/) can be ob­
served. When the synchronous machine is synchronized to the line there
will be precisely two line sync signals for every speed pulse signal.
The phase difference between the LSYNC/ and SPEED/ signals is equivalent
to the rotor angle of the synchronous machine plus an offset.
A binary
count equivalent to this phase difference is determined by the circuitry
of figure 3.3.2. Adding a constant to compensate for the offset gener­
ates a two's complement number from which a sign and magnitude represen­
tative of the rotor angle may be extracted.
Dividing this result by the
number of timer counts per electrical degree produces a final result
which is equal to the magnitude of the rotor angle measured in elec­
trical degrees.
31
l
I
SPEED/
I
~
u
LSYNC/
Figure 3.3.1:
u
r-
= rotor angle + otfset
u
I
~
u
Signals for the Determination of the Rotor Angle
INTACK/~~~~~~~~~~~~~~~
ALE~~~~~~~~
HI
TIMER 2
sys tern
CLK
rese
D
{; i8253)
GATE
OUT
Q
N/C
LSYNC/
Figure 3.3.2:
Rotor- Angle Determination Circuitry
32
3.4
Mechanical Power and Slip
Both mechanical power and slip are calculated from other known
quantities. The equations to calculate thes values are as follows;
Power
P
=T
w
x
=T x
n x K (watts)
(3.4.1)
Slip
S
= n s
(3.4.2)
- n
where the unit correction constant (K) is;
K= 2 'fl
60
rad/ sec RPM The correction constant is required in the calculation of
mechanical power as the value of speed is in revolutions per minute
(RPM). To obtain power in watts this needs to be converted to radians
per second, K takes care of the conversion. This constant is not re­
quired for the calculation of slip as the result is unitless.
3.5
The Total System
This section will show how each of the individual functions of
the device are amalgamated to produce the complete device.
33
3.5.1 Hardware Integration
The device consists of four major component blocks.
(1) system controller
(2) remote sensor interface
(3) machine sensors
(4) controllable rectifier
The configuration of these components is shown in figure 3.5.1.
The machine sensors and the remote sensor interface are mounted directly
on the machine set bed where as the system controller and the controlla­
ble rectifier are located on the connection bench.
Turning first to the system controller, it can be seen from
figure 3.5.2 that it alone is composed of three major sections.
(1) Keyboard and Display Interface
(2) Machine/Controllable Rectifier Interface
(3) Microcomputer and Support Logic
The keyboard and display is a moderately simple arrangement
consisting of a small 20 key keyboard, 12 seven segment LED displays and
an Intel 8279 keyboard-display controller, with appropriate drivers and
decoders. As this type of interface is very simple and commonly used
with small microcomputer systems a detailed explanation of its operation
will not be given.
34
System
Controller
--
Control led
...
Rectifier
+
DC Output
-
i...-m--------i
Force sensor
Sensor
1nterface
...­.~------1-Speed
.
sensors
Fi g ure 3 . 5 . 1:
Total System Hardware Configuration
35
,,.....__ _--l
Keyboard
8279
re set
Displays
8748
system bus
~----LSYNC/
1 - - - - - - 1...
8253
TRQ0-7
SPEED/
DIR
sensor
interface
signals
Figure 3.5.2:
The System Controller
DSYNC/
~--CS2/
controllable
rectifier
control
signals
36
The heart of the machine set/power rectifier interface is an
Intel 8253 programmable timer IC. This device consists of three indepen­
dent software programmable countdown timers that may be configured in a
variety of modes. In this system, timer 0 is programmed to act as a
hardware triggered one-shot. Using the (pre-processed) LSYNC/ signal as
an input, the de 1ayed sync or DSYNC/ s i gna1 is produced. The output
pulse from the timer is of very short duration and is widened with a
hardware
one-shot
to
provide
stable
control
of
the
controllable
rectifier. As the delay value in timer 0 may be changed under program
control this allows the output of the power rectifier to be modified
automatically. Timer 1 is used to measure the period of rotation of the
machine shaft.
It is run completely under software control of the
interrupt routine and thus requires no hardware signals other than the
clock (ALE) input. Timer 2 is used to measure the phase difference
between the SPEED/ signal and the LSYNC/ signal. In this case, timer 2
is started under program (interrupt) control at the same time as timer
1. It is, however, stopped under hardware control by the LSYNC/ signal.
The flip-flop used to stop .the counter is reset at the end of the
interrupt routine at the same time as the interrupt request flip-flop.
Of the remaining hardware, lines CS2/ and DIR are directly connected to
the test inputs TO and Tl on the microcomputer where they are used to
modify program flow. The last 8 data 1ines TRQ 0_7 carry the digitized
torque signal from the interface board to port 1 of the microcomputer.
37
The remaining section of the system controller contains
the
microcomputer and its support logic. This section is composed of three
Intel devices; an 8748 microcomputer, a 8282 address latch and a 82­
05/74138 address decoder. The 8748 contains all the system 1 s RAM and ROM
of which there are 64 bytes of RAM and lK bytes of ROM. The operating
system program fills almost all of the ROM, provision has been made to
keep the top 16 bytes of ROM unused so that the system program can be
run from a PROMPT-48 for program development.
The next major component block is the remote sensor interface.
This is the signal pre-processing interface between the system control­
ler and the torque and speed transducers.
The signal
pre-processing
electronics consists of the excitation source, amplifier and A/D con­
verter for the torque transducer, and the SPEED/ pulse and DIR signal
generation logic for the optical sensors. As stated previously, con­
nection to the system controller is made via a DB-25 connection. Con­
nections to the sensors are directly soldered to the sensor interface
board edge connector.
The third component block,
the machine sensors,
are mounted
directly on the machine set. The torque transducer is mounted on the de
machine as shown in figure 3.2.1. This means that any de machine re­
action torque will be detected by the instrumentation system. The speed
sensor assembly (sensors and disc) is mounted on the free end of the
synchronous machine. This position was chosen for two reasons, first,
38
the free end of the machine is partially protected and provides a
suitable shaft for mounting the disc. Secondly, a rigid (non-coupled)
connection to the synchronous machine is required for accurate and
stable measurements of the synchronous machine rotor angle.
The controllable de power rectifier is a stand alone solid state
(thyristor) device which, when used with the other component blocks,
provides a speed setting capability for the de machine. This device can
also be used alone, under manual rather than computer control. Further
information about this controllable rectifier can be found in [17].
3.5.2
System Software
The system software consists of a main routine, an interrupt
routine, and several subroutines. All of these routines are contained
within the 8748 1 s EPROM space, thus requiring no external memory. In
addition the routines are packed in such a fashion that the program may
be run using a PROMPT-48 development system.
The interrupt routine is used to synchronize the processor to
the machine. It is split into two parts, an
1
odd 1 routine which performs
keyboard servicing, and an 'even' routine which calculates and displays
the machine quantities, as well as providing a speed setting capability.
Once the machine set speed has exceeded a preset limit, the update rate
for the display and speed setting routines is reduced to once in every
four samples. This tends to improve the speed setting operation as well
39
as reduce flicker in the display. For a detailed understanding of the
software the reader is directed to appendix B.
3.6
System Expansion Capabilities
An attempt has been made to provide a reasonable amount of
expansion capabiltiy with the use of a minimal number of components.
Communications with external I/0 devices on the bus are mapped in the
external data memory space. At present there are 8 of 256 possible I/0
device select lines decoded, of which only two are used. Therefore, six
more I/0 devices may be added with ease. Of the 18 remaining parallel
I/0 lines on the microprocessor chip there are 3 presently unused.
Should additional lines of
1
non-bus 1 I/0 be required they can be easily
obtained by use of port expanders on port 2 of the microprocessor
(figure 3.6.1).
In addition to I/0, the system's program and data memory space
can also be easily expanded. The eight lower address bits are latched
for any expansion requiring a static (non-multiplexed) address. Program
memory expansion can be accomplished using bus compatible devices such
as the 8755 EPROM which als~ adds more lines of parallel I/0 (figure
3.6.2) or standard devices using the available latched address (figure
3.6.3). Data memory may be similarly expanded using standard devices or
the bus compatable 8155 RAM, which would also add more parallel I/0 and
a timer (figure 3.6.4).
40
P5o-3
i8243
i8748
I/O
EXPANDER
P6o-3
P7o-3
PROG CS Figure 3.6.1:
Instrumentation System Port Expansion
P2o 2 1------------0/
DBo 7
i8748
i8755
RD/r----------~
WR/1-------------.i
PSEN/1-~~~~~~~~~
ALE1~----------1~
CE
Hii----___,
Figure 3.6.2:
Program Memory Expansion with Intel Devices
41
8
DBo-7
i8748
i8282
8
DI
DO
Do-7
ROM or
EPROM
Ao-7
STB
PSEN
Figure 3.6.3:
P2 03 r--~~~~~4~.--~-­
ALE
Program Memory Expansion with Standard Devices
DBo-7
8
ADo-7
i8748
RD/ Figure 3.6.4:
RD/
WR/ i8155
WR/ (RAM&IO)
ALE ALE
P24 10/M
CE/
Data Memory Expansion
CHAPTER 4 SUMMARY 4.1
Error Sources
This section is devoted to the major sources of error that
affect the accuracy of the displayed quantities.
4.1.1
Common Error Sources
Error sources that affect the accuracy of two or more of the
measured or calculated machine quantities are as follows.
4.1.1.1 Interrupt Response Time
The two period timers used in this system are started and
stopped by an interrupt routine. The response time to service the
interrupt may vary dependent upon what point of the instruction cycle
the processor is in when the interrupt request occurs. For the processor
and timer clock used in this system the delay between the interrupt
request line becoming active and the start of the jump to the interrupt
routine may vary between zero and two timer clock periods. Timing error
due to software handling of the interrupts is compensated for in the
appropriate calculations.
42 43
4.1.1.2 Timer Size and Clock Rate
The two binary timers (counters) are of a fixed size (16 bits)
and are clocked at a fixed rate (4000KHz). As the timers are serving to
digitize analog quantities there is a digitization error of ±0.5 timer
count. If measurements are required at low speeds (less than 370 RPM)
the timer used to determine the rotor revolution period will overflow,
this will introduce a non-recoverable error. Such an error condition
is
avoided by generating a software interrupt before an overflow occurs,
then setting the speed value displayed to zero.
4.1.1.3 Integer Calculations
All calculations performed by this system are integer. These
calculations are ordered in such a manner that register overflows and
underflows do not occur with valid data. There still remains some error
introduced due to truncation of the fractional part of the calculations.
This error is also apparent where constants have been approximated for
scale conversion factors.
4.1.1.4 Crystal Frequency
A crysta 1 clock is used as the time base from which a11 time
related measurements are made. The accuracy of this clock therefore
directly affects the accuracy of the measurements. For practi ca 1 pur­
poses the error introduced by crystal frequency error is very sma 11
compared to the other errors and may be considered zero.
44
4.1.1.5 AC Line Waveshape/Frequency
For measurement purposes the assumption has been made that the
ac line frequency is constant at 60Hz and that the waveshape is always
perfect. As this is not at all true in the real world it is also a
source of error. The typical frequency error of the ac line is ±0.0lHz.
A maximum error of ±0.02Hz may be observed in extreme instances.
4.1.2
Specific Error Sources
Errors that are specific· to a particular measured quantity will
now be discussed.
4.1.2.1 Speed Measurement Error
The speed measurement error is a combination of the errors
described in sections 4.1.1.1 through 4.1.1.4 inclusive. There are no
other major sources of error for speed measurement.
4.1.2.2 Rotor Angle Measurement Error
The rotor angle measurement exhibits errors from the sources
described in sections 4.1.1.1 through 4.1.1.5 inclusive.
4.1.2.3 Torque Measurement Error
The torque measurement will suffer errors due to digitization
step size, analog circuit drift, electrical noise, (particularly motor
generated noise) and transducer errors. The resolution required by the
force transducer interface is equivalent to 1% of the transducer's full
45
scale capability. The transducer specifications indicate that it exhib­
its maximum errors in the region of 0.03% of full
scale. As the
transducer errors are much less that the resolution required by the
force transducer interface they will
be neglected.
For the torque
calculations it is assumed that the torque arm applies force at 90
degrees to the force transducer axis. Due to the deflection of the force
transducer, the loading, and the length of the torque arm used, a
maximum deviation of less than 0.006 degrees from a perfect right angle
may be observed. This will not introduce any noticeable error into the
torque value displayed.
4.1.2.4 Mechanical Power Error
As the mechanical power is derived from calculations involving
speed and torque, it exhibits errors from these sources, as we11 as
additional error due to further integer calculations (section 4.1.1.3).
4.1.2.5 Slip Error
The slip is a result of calculation involving speed and a
constant. The slip error is therefore a combination of the errors
associated with these quantities.
4.2
System Performance Confirmation
The performance of the instrumentation system was evaluated and
the following observation were made:
46
Speed Measurement
The speed measurements obtained from the instrumentation system
were compared to measurements made stroboscopically, and no significant
differences were noted. Additionally, with the (four pole) synchronous
machine synchronized to the line, the speed measured by the instrumenta­
tion system was a stable 1800 RPM.
Torque Measurement
The torque measurement was confirmed by driving the de machine
as a generator and loading it electrically. As the power dissipated in
the load and the rotational speed of the de machine were known, the
reactive torque could be predicted. The predicted and measured torque
values were found to compare with each other within 5% of full scale.
See section 4.3.1 for torque interface calibration procedures.
Rotor Angle Measurement
With the synchronous machine synchronized to the ac line the de
machine was driven, and loaded, in steps to full load. This caused the
rotor angle of the synchronous machine to be varied between 15 degrees
leading and 15 degrees lagging. Measurements taken with the instrumenta­
tion system were compared with those obtained stroboscopically and were
found to compare within the accuracy of the stroboscopic measurements
(±2°
electrical).
See
calibration procedures.
section
4.3.2
for
rotor
angle
interface
47
Mechanical Power and Rotor Slip Calculations
The correct calculation of mechanical power and rotor slip have
been verified based on the measured values of speed and torque.
Speed Setting
The operation of the speed setting function was confirmed and
found to bring the speed within 1 RPM of the set speed. The speed
setting capability is limited by a problem that prohibits a speed
control function from being implemented with this equipment. The problem
is that the controlled rectifier is incapable of providing dynamic
braking with the control circuitry that is presently used. Dynamic
braking is a requirement for the implementation of a speed control
system.
4.3
Calibration
This system has been so designed that there is a minimal number
of adjustments required to ca 1ibrate the instrumentation sensors. The
sensor interfaces for torque and rotor angle are the only items that
require calibration.
4.3.1
Torque Interface Calibration
Calibration of the torque
transducer interface involves adjust­
ment of the gain and offset of the analog amplifier and requires an
known weight (1-10 pounds). The calibration procedure is as follows:
48
1
Turn on the system controller, and depress the reset toggle.
2
Select the torque display.
3
Adjust the offset control to give an indication of zero on the
display with the machine set stationary and no external weights
applied.
4
Gently set the known weight on the top force transducer mounting
bolt.
5
Adjust the gain control to give and indication of 1.1 times the
weight (in pounds) of the known weight.
6
Repeat steps 3 to 6 until satisfactory calibration is obtained.
4.3.2 Rotor Angle Calibration
The only calibration required for the rotor angle interface is
adjustment of the zero rotor angle offset. The calibration procedure is
as follows:
1
Configure the test setup as shown in figure 4.3.2.1 along with
the measurement system.
49. 30 AC
Line
Synchronizing
._Switch
,,
0
00 p
,,
manual ...
control ....
CONTROLLED
RECTIFIER
Real and
Reactive
Power Met er s
Q
stator
SY NC.HRONOUS
MACHINE
rotor
~·
armature
,,
DC
MACHINE
field
+
DC
SUPPLY
no
Figure 4.3.2.1:
Machine Configuration for Rotor Angle Calibration
50
2
Using the de machine, run the machine set up to speed and
synchronize the synchronous machine to the ac supply.
3
Adjust the synchronous machine power input (de machine drive)
and excitation (synchronous machine field current) to obtain
zero (minimum) current as well as zero (minimum) real
and
reactive power from the synchronous machine.
4
Turn on the instrumentation system and depress the reset toggle.
5
Select the rotor angle to be displayed.
6
Adjust the rotor angle zero adjustment potentiometer (on the
system controller board) to obtain a zero indication on the
rotor angle display.
7
Recheck the current and power meters for zero indication. Adjust
the synchronous machine inputs and loop to step 6 as required
until satisfactory calibration is obtained.
4.4 Conclusions
The previously described instrumentation system has been built,
and is in use in the Power Control Laboratory at McMaster University. It
has a1so been shown that the system provides measurements at least as
accurately and with greater precision than the measurements obtained
51
from the analog measuring instruments used in the laboratory. This
instrumentation system is one step in the improvement of instrumentation
technology in the power laboratory. It has already provided the stimulus
for a number of other projects at both the undergraduate and graduate
level.
The major advantages of this system over older analog machine
instrumentation are:
(i) Ease of operation.
This system has been designed so that a user with little experi­
ence on machines and minima1 instruction about this system's
operation can use it to perform basic machine system measure­
ments simply and easily.
(ii) Simplicity of display.
The seven segment display used in this system is simple to read
as there is no interpretation required. This can be contrasted
to interpreting the analog speed and torque scales previously
used,
of
the
difficulty
in
measuring
the
rotor
angle
stroboscopically. This allows an untrained user to make more
precise measurements than would be possible with analog equip­
ment.
{iii) Availability of data to external (digital) data processors.
52
As this is a programmable digital device it poses little diffi­
culty to make the internally contained digital
information
available to another digital device. One possible application is
the use of a central data aquisition system that gathers data
from one or more instrumentation systems.
The performance of this system could be improved by employing:
(i) Improved analog circuitry.
The analog circuitry in this system has been designed using
inexpensive and readily available MSI and analog components in
order to keep cost to a minimum. The drift, response time, and
power consumption could then be improved by replacing the
present
analog
circuitry with
an
integrated
A/0
convert­
er/amplifier sub-system. DC excitation of the torque transducer
is presently employed. Reduced signal drift could be realized by
the use of ac excitation and preamplification.
(ii) Expanded program memory.
At present, the basic instrumentation program effectively fills
the program memory in the system. With additional program memory
it would be possible to add features that would increase the
useability of the system. An example of such a feature would be
53
the display of the measurement quantities in alternate units
(ie. display rotor speed in radians/second as well as RPM).
(iii) A four quadrant controllable, controlled rectifier.
The controlled rectifier presently used with this system for
speed setting of the de machine is capable only of driving the
machine. The only braking forces present are the machine's
mechanical losses and the load (when present). This means that
speed changes must be slow in order to reduce overshoot of the
set speed. A controllable rectifier that can provide dynamic
braking for the de machine could greatly reduce the settling
time required for speed changes and load transients.
4.5
Further Developments
Further developments and enhancements could be made in many
areas of this system. A few posibilities follow:
1
Addition of a GPIB interface. This would allow communications
with another computer thus bringing in far greater computation
and control power for analysis and manipulation of the data
obtained by the instrumentation system.
2
Replacement of the vendor made force transducer could take the
form of one of two transducers that could be made at McMaster.
(a) An inline (shaft) digital force transducer, or,
54
(b) A fabricated SAW (surface accoustic wave) device transducer.
3
Replacement of the high intensity yellow displays with the
equivalent red displays. The yellow colour of the displays
becomes 'washed out' under the floresent lighting in the labo­
ratory.
4
Addition of an externally mounted socket and an INT/EXT memory
selector switch for EPROM based program development. This would
allow the future user to develop programs for the system with
less chance of causing damage to the other system components.
5
Improvements to the analog amplifiers and analog-to-digital
converter (A/D) could be made. The op-amp buffers and amplifier
could be replaced with an integrated instrumentation amplifier.
Similarly the A/D converter could be replaced with a modular,
microprocessor compatable, A/D sub-system. These changes would
result with a more temperature stable and accurate transducer
interface with the added benefit of reduced cost.
6
The
system
aquisition
could
be
converted
into
a simple
system by eliminating the
slave
keyboard and
data
display
interface and replacing it with a computer interface. The more
involved
calculations,
as
well
as
display
and
set
speed
functions could then be implemented on a more powerful machine.
55
This would lead to improved system performance in terms of data
aquisition, processing and display.
APPENDIX A INSTRUMENTATION SYSTEM USER'S MANUAL USER'S MANUAL Introduction
This instrumentation system is capable of measuring the speed,
torque, and rotor angle for a synchronous machine set.
From these input
variables it can calculate slip and mechanical power. Any two of these
five quantities may be displayed on the system displays by simple
keystroke commands.
An additional feature of this instrument is the
capability to provide simple speed setting of a de machine using a
controlled rectifier.
With the addition of this feature comes two more
displayable quantities, the set speed and the firing angle count. Table
A.l shows all the displayable quantities, their display descriptors and
the units in which they are displayed.
Physical Description
The instrumentation system is composed of three components; the
contra 1 unit, remote sensor interface, and the machine sensors.
The
only component that is seen and operated by the user is the control unit
which houses the displays and control keyboard. Three surfaces of the
control unit have user accessible controls or connections; they are the
front, top, and rear surfaces.
Al
A2
On the front panel are two switches; a yellow POWER on/off switch,
and a red paddle type RESET switch. The POWER switch is internally
illuminated to indicate when the system is powered on. The RESET switch
is non-illuminated and is simply depressed momentairly to reset the
system. Under normal operation this should not be required as the system
is automatically reset at inital power on.
On the top panel
there a re the two rows of seven segment LED
displays used for output to the user, there is also a 20 key keyboard
through which the user controls the system. Detailed operation of the
system using this keyboard will follow.
On the rear panel are a number of items accessable to the user,
they are as follows. There is a three pin ac cord connector for con­
nection of the system to the 120 vac, 60Hz line via a three conductor
cable. In conjunction with this conection are two fuses; one for the 120
vac, and a second one for +5 vdc. Beside each of these fuses is a red
LED. This LED will illuminate if its respective fuse has opened. Should
a fuse require replacement it must be replaced with one of the same
rating for continued protection of the system. Also on the rear panel
are two connections to outside signal sources. There is a DB-255 connec­
tor that is used (with the appropriate cable) to connect the control
unit to the remote interface. The second signal connector is a round
five pin connector that is used to connect the control unit to the
controllable rectifier. Beside both of these connectors is a red LED.
A3
This LED, when illuminated, indicates that its appropriate connector is
in place and power at the remote connection is on. For correct operation
of the system these cables must be in place.
Operation
After power-on or reset operation (see power-on sequencing), the
system is in the display quantity mode displaying actual speed (n) in
the upper display, and set speed (-) in the lower display. Any of the
display quantities may be moved into the display by pressing the appro­
priate display key. The display keys are denoted by a
1
D1 prefix on the
key legend (Figure Al).
The system can be put in the speed control mode by pressing the set
speed
(Sn)
key.
Irrespective of what was
previously displayed,
the
displays will now show actual speed (n) and set speed in input mode
(-.). The desired set speed may now be entered from the keyboard. The
entered value must be between 513 to 2999 RPM or else it will not be
accepted. If the entered speed is 512 RPM or less it will be taken as
zero. Similarly if the first digit of the set speed is 3 or greater that
digit is set to zero (ie. entry of 3861 would resul.t in 0861 RPM). The
set speed feature is enabled by pressing the execute (.) key after entry
of the desired speed.
If after pressing the set speed (Sn) key, and
before pressing the execute(.) key, the user decides that it is not
desired, pressing the cancel key (C) will exit the set speed mode. Once
the execute key (.) has been pressed the set speed display leaves the
A4
entry mode (-.) and returns to the display mode (-). If the set speed
feature had been previously enabled, re-entry of the set speed mode does
not change the previous set speed value until the execute key is
pressed. Once either the cancel (C), of execute (.), key has been
depressed, the system reverts back to its normal display mode.
Power-on Sequencing
For correct and save operation of this system the following pow­
er-on sequence should be followed.
1
Turn on ac and de bench supplies as required.
2
Adjust any inital voltages/currents as required.
3
Turn on and reset the instrumentation system.
4
Reset the controlled rectifier.
NOTE:
Step 4 must NOT be executed before step 3 if the rectifier is to be
operated in automatic mode. Should the experiment specify that the
supply be operated in manual mode step 4 may be executed before step 3,
but as a good safety habit the outlined sequence is recomended.
A5 Table A. 1:
Display Quantities and Descriptors
Display Description
Quantity
Rotor Speed
Reactive Torque
Rotor Angle
Slip
Mechanical Power
Set Speed
Firing Angle Delay Count
Figure A.1:
n
t
A
s
p
0
Units
RPM
newton-meters
electrical degrees
unitless
watts
RPM
counts
System Control Keyboard Layout
APPENDIX B SOFTWARE 81
SOFTWARE
The software used in this system consists of a main routine, an
interrupt routine, and seven subroutines.
There are three entry points
into the software, they are as follows:
ENTRY A
initalization (hardware reset)
ENTRY B
wait (wait for interupts)
ENTRY C
interrupt routine
A short explanation of each of the
routines
follows.
For
a
detailed understanding of the software the reader is directed to study
the program listing which follows this discussion.
THE MAIN ROUTINE
The main routine consists only of system initalization code, and a
wait loop.
The ini talization code performs all required system
initalizations
including,
resetting
the
8279,
clearing
storage
registers and flags, and enabling the external interrupt.
The wait loop is entered after ini talization is complete and/ or
after an interrupt has been serviced.
The wait loop is intended to
B2
cause
the
processor to wait
until
an
interrupt
occurs.
Should
an
interrupt not occur within a specified period of time, an interrupt is
initiated under software control.
This is to keep the keyboard and
display even when the machine is not turning. It is intended that in an
expanded system the main routine would also contain some communications
code.
This
code
would
instrumentation system
enable
and
data
another
communications
device
when
the
between
the
instrumentation
system's processor was not busy.
THE INTERRUPT ROUTINE
The interrupt routine is divided into two distinct paths which have
been designated as an even path and an odd path. Which path is taken is
determined by the status of the processor flag F1. The even path is
taken
if F1
is
one
and the odd path if F1
is zero.
Flag F1
is
initialized to zero in the initialization code of the main routine. The
F 1 flag
is complemented at the end of the interrupt routine,
thus
causing the odd and even interrupt routines to be executed alternately.
Odd Interrupt Path
The odd interrupt path starts the speed and rotor angle timers,
services the keyboard then branches to the end of the interrupt routine.
At the end of the interrupt routine F1 is complemented, the interrupt is
re-enabled and control is then transferred to the wait loop in the main
routine.
83
Even Interrupt Path
The even routine path stops the speed and rotor angle timers and
calculates speed, rotor angle, torque, mechanical power and slip. The
closed loop speed control and display routines are also executed, when
enabled. The interrupt counter subroutine !CTR is also executed. At the
end of the routine F1 is complemented, the interrupt is re-enabled and
control is transferred to the wait loop in the main routine.
THE SUBROUTINES
DIS PLY
The DISPLY subroutine displays the data from any two of sixteen
possible display locations on the LED displays. These display locations
are consecutative three
byte
fields
starting
at
register 20H.
The
relative address of the display locations to be used are held in the
variable DISPTR; one address assigned to each nibble. The format of the
encoded display data is shown on the following page:
84
byte 1
byte 2
byte 3
I x x x xjxjx x x I x x x x x x x x I x x x x x x x x I
Displa~
Descriptor
Code
Sign - - - - - - - - '
Decimal Place PositionMagnitude~----------------~
The
display descriptor code
contains . the
BCD code
of
the
appropriate display descriptor. The display descriptor codes are OAH to
OFH. The sign bit, when set, indicated that a negative sign be placed in
front of the magnitude when it is displayed. The decimal place position
contains the number of digit positions from the left that the decimal
point should be placed. The remaining two bytes contain the magnitude of
the quantity to be displayed. This magnitude is assumed to be in binary
as a binary to bed conversion is performed on it prior to the value
being displayed.
The DISPLY routine writes the decoded display data into the first
twelve (0-11) locations of the 8279 display RAM. The seven segment LED
displays used to display this data, are physically positioned to show
two distinct line of information. A diagram showing the correspondence
B5
between the physical positions of the seven segment display and the 8279
display RAM locations, in addition to the display word bit allocation,
follows this discussion.
SUBTR
The
SUBTR
routine
register pair <R4,R5>
is
a binary subtract
routine
has register pair <R6,R7>
in
which
the
subtracted from it,
leaving the result in <R4,R5>. If the carry is set as a result of the
subtract this indicates a negative result.
In the case of a negative
result the value returned in registers <R4,R5> is the complement of the
correct result.
DIVIDE
The DIVIDE routine is a binary divide routine in which registers
<R 1 ,R2,R3,R4> are divided by registers <R5,R6>. The result is found in
registers <R3,R4>. If a zero divisor is detected the result is set to
zero and the routine returns control to the calling routine directly.
MULT
The MULT routine is a binary multiply routine which multiplies
registers <R2,R3>
by register <RO>
leaving the result in registers
<R4,R5,R6>. No checking is made for overflow conditions.
BINBCD The BINBCD routine converts the binary nwnber in registers <R2,R3> B6
to a BCD number in registers <R4,R5>. It is not checked, only assumed,
that the binary number is within the range of 0 to 9999.
BCDBIN
The BCDBIN routine converts the BCD number in registers <R4,R5> to
a binary number in registers <R2,R3>. It is not checked, but assume-d
that the BCD number in registers <R4,R5> is a valid BCD value.
!CTR
This routine slows down the display and speed control update rates
to once every eight revolutions of the machine set shaft. An update rate
of once every eight revolutions was chosen in order to provide updates
every 250 milliseconds when the machine is running near synchronous
speed.
This
routine
only
inhibits
the
display and
speed
control
routines when the rotor speed
exceedes 500 RPM. The speed control and
display routine execution
controlled
is
by
setting
or clearing
an
inhibit bit in the software flag word !FLAG. The display and speed
control
routines both
interrogate
this
flag
before
execution.
routines are inhibited from execution if the flag is reset.
The
MAIN ROUTINE
MAIN ENTRY A, LOC=O ,,
INITIALIZATION
,, DE LAY
•
DISABLE
INTERUPTS
,,
CALL SERVICE ROUTINE ENT RY B
B7
BS
INTERRUPT SERVICE ROUTINE
INTERRUPT
ENTRY C, LOC:7
ODD OR
EVEN?
odd
START PERIOD
ROTOR
ANGLE TIMERS .
1--~~~~~~~~:-.iAND
even
,,
,,
STOP
TIMERS
SERVICE KEYBOARD CALCULATE DISPLAY VALUES J_
SET
SPEED
ENABLED?
no
tyes
PERFORM SPEED SETTING _i:­
UPDATE DISPLAYS RESET STACK
AND ENABLE
INTERRUPTS
'------'11:...•GO TO ENTRY B 89
PROGRAM STATUS FLAG (IFLAG) BIT ALLOCATIONS 7
1
6
5
4
3
2
1
0
= software
1
interupt
1
= execute
_ ___.
ICTR inhibit flag
1 = run
0
= speed
feedback
enabled
set speed key pressed
at least one number
key pressed
= inhibit
RAM REGISTER ALLOCATIONS
(not including RBO, RBI, or Stack space)
HEX LOC
20-22
23-25
26-28
29-2B
2C-2E
2F-31
32
33,34
35-37
38,39
3C
30
3E,3F
ALLOCATION
set speed (working)
speed
torque
mechanical power
rotor angle
set speed (intermediate)
interupt count
firing angle count
slip
period count
program status flag
display pointer
set speed (BCD)
BlO
DISPLAY FORMAT
The relationship between the physical
display locations and the 8279 display
RAM addresses is shown below.
0
1
2
3
4
5
6
7
8
9
10
11 DISPLAY WORD BIT ALLOCATIONS
MSB
LSB
a
I b I c I d I e I f I g I dpl
one 11 in a particular bit position
indicates that the corre~ponding segment
is on.
==> A
11
a
f
I
I
I
I
e I
I
I b
I
g
I
d
I
I ·c
I • dp
<== Segment definition used for display word.
Bll
ASM48 LAST
ISIS-II MCS-48/UPI-41 MACRO ASSEMBLER.
LDC
0001
006E
0036
0000
0001
0013
0010
0011
0012
0030
ooz:j
0031
0022
0 o::lF
003C
0020
0002
OOC9
0009
0037
0039
0032
0028
OOZE
00213
0034
·o 0 OD
OOC7
OOOD
OOC7
0001
OOCD
0020
0 0 0'.5
001)3
OO~H
E'l'IO
00'10
OOE'I
EA60
0060
OOEA
OE:J
v1.o
LINE
SOURCE STATEMENT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
PAGEWIDTH<SO> XF\EF
DIVl
El1U
DIVZ
ECW
DIV3
El1U
DIV4
EQU
CMD79
EQU
CMD53
ECHJ
CTF\O
EC:llJ
crn1
EQU
CTF\2'
El1U
DISPTR EQU
EQU
SPD
ISTSPD EQU
STSPD
EQU
E:STSPD EQU
I FLAGS EQU
f\EGOFF EQU
EQU
SIGN
DISTAB EQU
f(EYTAB EQU
EQU
SLIP
CNNT
EllU
IH~CNT
EQU
EQU
TOfW
EQU
DELTA
Pl~R
EQU
EQU
FACNT
HFACNT EQU
LFACNT EQU
EQU
HFAHI
l..FAHI
ECll.J
HF ALO
ECllJ
LFALO
Em.J
MXfffEP EQU
SPDOFF EQU
EQl.J
ADESC
SLPDES ElllJ
EQU
AZ
SZCDRL EllU
SZCOf(l·l EllU
EQU
CUH~
Cl..O!--lL
EC-ll.J
CLOl~H
EllU
•J;EcJECT
22
23
2't
25
26
27
28
29
30
31
32
:33
3'1
35
36
37
3B
39
'!()
'11
"t2
43
44
PAGE
1
~HTY
0 11-1
l>El-I
361-1
OOH
;DI\,,'ISOR FOR SPD CALC
OHi
i8279 CMD REG ADDR
; 8~~53 CMD li:EG ADDR
13H
;9253 CTRO ADDR
lOH
;sz53 CTRl ADDR
11H
121-1
i8253 CTR2 ADDR
61
iDISPLAY PTF\
37
iSPEED
49
iINT SET SPEED
iSET SPEED
34
63
iBCD SET SPEED
l> 0
iPROGRAM STATUS
32
iWORl<N F\EG OFFSET
iDISPL CODE FDR -(-)­
OZH
DTABLE-3001-1
iDISPL CODE TBL
f{TABLE-·30 OH
; f(EY CODE TAE:LE
iROTOR SLIP
55
57
; INTF~ CNT
50
iREACTIVE TOF\QUE
40
46
iROTOli: ANGLE
43
iMECH POl>IER
52
iSCR F.A. COUNT ADDR
OODH
tINITAL FIRING ANGLE CN"
OC7H
OODH
iUPPER F.A. COUNT E:OUND
OC71-1
iLOWEF\ F.A. COUNT E:OUND
0011-1
OCDH
020H
iMAX STEP SIZE
iCOUNT FIX FOH SFTWRE
5
OIBH
iSLIP DESCfUPTOR
051H
iOFFSET FDF\ R.A. COUNT
OE'l40H
<AZ> ANO OOFFH
<AZ> /2~56
OEA60H ;JU SPD PER LIMIT
CUH,I ;:'.\ND OOFFH
CLDtU0100H
812
ISIS-II MCS·-"113/LJF'I·-41 MACRO ASSEME:l..ERr V4.0
LDC
0000
0000
0001
0003
0005
0007
0009
OOOE:
OOOD
OOOF
0011
0012
0014
0015
0017
0018
001A
OOlC
0010
001E
0020
0022
0024
0025
0026
0027
0029
002A
OOZE:
0020
OOZF
0031
0033
0 03'1
0035
OB,J
15
0405
2407
E:83C
8010
f:lAFF
9A:l.F
8801
2324
90
2340
90
23C1
90
8913
233A
91
A5
E:810
E:934
23C7
90
Al
C9
2300
90
Al
B8ZF
E:OF'I
8820
BOE'!
27
18
AO
0036 :LB
0037 t~O
0038 E:827
0 O:JA AO
0 () 3[:
E:B~JD
oo:3D r::oo1
0 0:3F 8ABF
LINE
45 ClF~G
46 STAF\Tl
47
43
49 S'TAR!
50
51
SOUf~CE
OOOOH
DIS
JMP
.JMP
PAGE
ST1nEMENT
I
STAR
SF'EED
85
MDV
MDV
DRL
ANL
MDV
MDV
MOVX
MDV
MOVX
MDV
MOVX
MDV
MDV
MOVX
CLR
MDV
MDI..'
MDV
MOVX
MDV
DEC
MDV
MDVX
MDV
MUV
MDV
MDI..'
MOV
CLR
INC
MOV
INC
MDV
MDV
MDV
MOV
MOV
!!!HO, IFO:lH
B6
OHL.
p;~,
..,,_
C"'">
53
54
C"t:."
..J..J
56
57
58
59
60 r.::ENTR!
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
8'1
87 'f>EJECT
2
; DISAE:LE INTERUF'TS
;.JUMP QtJER INT STAF<T
iJMP TO SERVICE ROUTINE
R0. 0 HFLAG~3
@RO dO:l.OH
;RESET FLAGS
F'2, 'it. OFFH; liESET 8279
P2ri01FH;EN1!,BLE 8279, liESET INTRll FF
R0 d°CMD79; 8279 CMD REGISTER
Ar$24H iOIV CU( BY 4
@Fm, A
Ad40H iliEAD FIFO
(H\OrA
AroDoOClH ; CL.EAi'~ ALL
@r.::o, A
R1d°Cr!D53;8253 CMD REG
Arl3AH ;crno = MODE5 (BIN)
@FU rfi
iCLR FLAG 1
Fl
R 0 d°CTFrn; SET UP INITAL FIRING ANGLE
R1rtF1~CNT
iIN 8253
ArlLF1;CNT
iAND MEMORY
@ROrA
@Rl
rt~
Rl
Arll-IFACNT
@ROrA
era, t·i
F\ 0 • lISTSF'D-2
@F\O,ofioOF4H
RO• lSTSPD·-2
rrno, ,~OE'+H
A
RO
@r.::o,A
f(O
timO,f'.\
F\O, ~0 TOFW·-1
iGENEf"(rYfE PFWMPT FDR
; INTEF\Nt'.\L SET SF'EED
jGENH:r'.\TE PROMPT FOR
iSET SPEED
; INIT1~LIZE SET SPD=O
IU~O, t~
iCLEAr\ TOl~Cl MSDYTE
; INIT;~LIZE 0 :rs p L. i'.\Y F'TR
1:( 0, 11°DTSPTF\
t OE:FH; ENM::LE INrnn FF
813
ISIS-II MCS-48/LJPI-41 MACRO ASSEMBLER, U4.0
LOC
0041
0 O'f2
0043
0044
0 o-15
0047
0048
OO'IA
004C
OO'IE
OO'IF
0051
OBJ
35
or:.J
27
62
E:F05
1:.- C'
;J.J
164C
0 'l'IB
EF48
:L5
B93C
Fl
0052 4380
0054 Al
0055 1403
LINE
3
SOURCE STATEMENT
88
89
90
91
92
93 TMF\O !
94
95
96
97
98
99
PAGE
TMF~l:
100
101 TMR2!
102
103
104
105
106
107
108 ~t>EJECT
iTOP OF MAIN ROUTINE
iTHIS ROUTINE WILL CAUSE INTERUPTS
iIF THE MOTOR IS NOT TURNING
iIN ORDER TO KEEP THE DISPLAY UPDATED
DIS
EN
CLR
MOU
MOU
STRT
JTF
JMP
DJNZ
DIS
MOU
MDV
ORL
MOV
CALL
TCNTI
iDISABLE TIMER INTERUPTS
I
A
T "~
iA = OOH
iCLEAR TIMER CNT.
Fi?"'' 05H iPF\ESET R7
T
iSTMa TIMER
TMF\2
iINC R7 IF TERMINAL CNT.
iTERMINAL CNT?
TMFU
R7,TMR1 iWAIT FOR <R7> TERMINAL COUNTS
I
Rl ,oJHFLAGS
A•@Rl
iGET FLAG WORD
A,~,BOH
iSET MSB
@Rl•A
iREPLACE FLAGS
003H
iCALL INTERUPT ROUTINE
814
ISIS-II MCS-'18/LJF'I ·-41 MACRO ASSEME:LER, V4.0
LINE
LDC
OE:J
0057
0059
005A
005C
005E
0060
0061
0062
0063
0065
0066
0068
0069
006A
006C
0060
006F
0071
0073
0074
0075
0076
0078
0079
007E:
007C
007D
007F
0080
OOBl
0082
0083
0084
0085
008b
0087
0088
0089
B801
80
5307
9660
4'180
oom:
PAGE
SOURCE ST;HEMENT
1 ~:il>
iTOP OF l<EYE:OARD SEF<VICE ROUTINE
RO, 'i1'CMD79
MDV
MDVX
A.cmo
iGET 8279 STATUS
ANL
1; drn7H
r(EYS
JN:Z
ENDSF'O
iNO
cl MP
;YES-CHG TO D1HA MODE
RO
DEC
iGET l<EY
MfA'X
A.C~F<O
MOV
R2•A
Ad,03H
ANL
XCH
A•R2
1;,,D,3BH
ANL
Rr~
A
Of~L
A.ra
(1DD
A'41°f(EYT1;E:
iADD f(EY TABLE OFFSET
A.C??1;
MOVF'3
iDECODE IT
CMDf(
JE:?
iCOMMAND f(EY
DISPf(
dE:6
iDISF'LAY f(EY
MDV
iOTHER~HSE A NUME:ER
RO •'HFLAGS
MO\..'
il-IDLD f(EY
RZ•A
A,1mo
iGET FL.1;GS
MDV
CPL
A
;ss FLAG SET?
TDPLP
JE:2
;RESTOl:::E ,;cc
CPL
A
iYES-SET FLAG BIT 1
DF<L
A•i02H
@RO.A
MOV
iTHEN SHIFT IN NUMBER
MDV
A•R2
;E:CD
ISTSF'D
R1, ~'1::STSPD
MOV
XCHD
A•@Rl
S~!AP
A
XCl-ID
A•@Rl
MDV
R5•A
XCH
A•@Rl
DEC
Rl
[email protected]\1
XCHD
Sl·UW
A
@Rl,A
MDV
MDV
F«l • r,
;CHf( TH1H SPEED IS LESS
ANL
A•lOFOH
iTl-IAN 3000 RPM
t-1DD
A,lODFH
01<1<
..INC
A, F('t
;ELSE SET MSD TO 0
MDV
ANL.
A,1JoOFH
MfJtJ
l~'f, r'.\
MO!,'
@fU,1'.\
; CONVERT TO CDMf(Y
E:Cl)[:IN
CALL
; r'.\ND Mm.1E INTO IST'.:lf'D
MDV
l~l • IUSTSPD
Fl?.
1::;7
MfJtJ
At
1:58
1.59
MDV
l~FU ri'l
DEC:
f\l
l.60
161
lb2
163
MDV
MDV
A .r~2
@rn, 1'.\
TDF'LF'
A,lOFH
cs
80
,;A
109
110 TOPLP!
111
112
113
11 '1 RETRO:
115 f(EYS !
116
117
~;::103
118
ZA
119
120
121
5338
77
4A
0309
E3
F2E:1
D29F
E:83C
AA
FO
37
5257
::11
4302
AO
FA
E:93F
31
47
31
,:-10
21
C9
31
·17
f.il.
AC
~i~ff
0
0080
008F
00'/0
0092
0 () '13
00?'1
00'76
03DF
E69'1
FC
530F
1'.\C
Al
7'17E
E:93:l
OO?B
00?9
OO?A
00'/B
OO?C
OO?D
OO?F
C'/
FA
Al
0'1:'';7
530F
122
123
12'!
125
126
127
128
125>
130
131
13:,
133
13'!
135
136
137
138
139
140
141
142
1 'l:C1
1 ·l 't
1·15
l'lb
1 '17
1'18
1 '19
l :50
151
1 •="'?'
CJ~
153
1 ~)'!
11::-c.­
,J ..J
OJ<~{:
0
,JMF"
DISF'~(
!
ANL
,; , R'.3
; 'NOTHER l(E'f?
; F<EMDtJ[ INDIC1HOF\ E:IT
815
ISIS-II MCS-48/UPI-41 MACRO ASSEMBLER, U4.0
LDC
OBJ
OOAl
OOA3
OOA4
OOA6
OOA7
OOA9
OOAA
OOAC
OOAD
OOAE
OOAF
0081
0083
0085
0086
0088
008A
0088
OOBD
008E
OOCO
OOC2
OOC3
OOC5
OOC7
OOC9
OOC8
OOCC
OOCD
OOCE
OOCF
ODDO
8930
AA
883C
FO
5257
Fl
530F
47
4A
Al
0457
883C
8930
67
E68A
04FF
67
F6C2
67
E6AF
04DF
FO
5302
C6AF
8822
8931
Fl
AO
C9
CB
Fl
AO
53FE
9607
0418
883C
8930
FO
4301
AO
FO
53F9
AO
8101
8822
FO
AE
C8
FD
AD
8901
8A6E
8836
BCOO
740A
0001
0003
0005
0007
0009
0008
OODC
OODE
OODF
OOEO
OOE2
OOE3
OOE5
OOE7
OOE8
OOE9
ODEA
OOEB
OOEC
OOEE
OOFO
OOF2
OOF4
LINE
164
165
166
167
168
169
170
171
172
173
174 RETRl!
175 CMDK!
176
177
178
179
180 SSNEX!
181
182
183
184
185 SSEXC!
186
187
188
189
190
191
192
193
194
195
196
197
198
199 OKEXC!
200
201
PAGE
5
SOURCE STATEMENT
MDV
MOU
MOU
MDV
JBZ
MDV
ANL
SWAP
ORL
MOU
JMP
MDV
MDV
RRC
JNC
JMP
RRC
JC
RRC
JNC
JMP
MDV
ANL
JZ
MDV
MDV
MOU
MOU
DEC
DEC
MDV
MDV
ANL
JNZ
JMP
MDV
MDV
MDV
202
ORL
203
MDV
204 CANCEL! MDV
205
ANL
206
MDV
207 CANCE!
HOV
208
MDV
209
MDV
210
MOV
211
DEC
212
MOV
213
MOV
214
MOU
215
MDV
216
MDV
217
MOU
218
CALL
Rl•tDISPTR
R2,A RO••IFLAGS A,@RO TOP LP A,@Rl A•IOFH ;HOLD NEW VALUE ;CHK NOT IN ST SPD MODE ;GET DISPLAY PTR, ;MASK OFF OLDEST VALUE A
A.Rz @Rl•A TOPLP RO••IFLAGS Rl••DISPTR ;MOVE IN NEW VALUE ;UPDATE DISPLAY PTR. ;LOOK FOR MORE KEYS ;SET UP POINTERS A
;FIX SPEED? SSNEX SS FIX A
;EXECUTE? SSEXC A
;CANCEL? RETR1 CANCEL A,@RO ;GET FLAGS ;CHECK THAT I KEY PRESE[ A••02H RETR1 ;NO-INVALID <IGNORE> RO,ISTSPD iMOV ISTSPD TO STSPD PO~ Rl•IISTSPD A,@R1 @RO,A R1 RO A,@Rl @RO,A A,tOFEH ;CHECK FOR SET SPD > 500 RPM
OKEXC
REN TR
RQ,tIFLAGS
Rl•IDISPTR
A,@RO
A,IOlH
;ENABLE SPD CONTROL BIT
@RO,A
A,@RO
;GET FLAGS
A,IOF9H
;SET BITS 1 & 2 TO ZERO
@RO,A
;REPLACE FLAGS
@Rl,i01H
;urDATE DISPLAY PTR
R01~STSPD
A,@RO R6•A RO R5•A R1110IU1 R2•1DIV2 RJ,IDIV3 R4,IOIU4 DIVIDE ;CALCULATE SET PT
816
ISIS-- II MCS-48/UF'I-41 MACRO i!iSSEME:LER, V4.0
LOC
OE:J
OOF6
OOF8
OOF9
OOFA
OOFE:
OOFC
OOFD
OOFF
0101
01.03
010'!
0105
E:81F
FC
AO
cs
FE:
t:io
O't57
E:l51
2304
'10
AO
0457
LINE
219
220
221
222
223
zz.tt
..,..,cA• .C..~
226 SSFIX:
227
228
229
230
231 232 $EJECT PAGE
6
SOUF<CE SH\TEMENT
MOV
MOV
MOV
DEC
MDV
MOV
JMF'
MOV
MOV
ORL
MOV
JMP
RO .~0 01FH
A,R4 @RO,A RO A,r;:3 @RO,,:,,
TOF'LF'
@R1,¥5:LH
AdF04H
[email protected]
@RO •fi
TOF'LP
;DISPLAY ISTSF'D AND SPD
;sET E:IT 2 OF FLAG WORD
;RESTORE FLAGS
Bl7
ISIS-II MCS-48/UPI-41 MACRO ASSEMBLER, V4.0
LOC
OBJ
0107 9A7F
0109 8813
0108 761E
OlOD
010F
0110
0112
0113
Ol.:L'l
0116
0117
0118
011A
0118
011C
01.lE
0120
0121
0122
0123
0125
0126
0128
012A
Ol.2C
012E
0130
0131
0132
013'l
0135
0136
0137
2370
90
2380
90
27
8811
90
90
8!:11;~
90
90
0457
23·10
90
E7
90
E:83C
FO
s::no
962C
441~C
BB11
c::c,139
00
37
0305
AE
Al
BO
37
LINE
PAGE
7
SOURCE STATEMENT
233 SPEED:
23'!
;INTERUPT ROUTINE THAT DOES ALMOST EVERYTHING
235
ANL
MOV
JFl
236
237
P2•*7FH ;DISABLE INT REQ FF
RO' il'CMD53
SETT
238
239 ;ooo INTERUPT ROUTINE!
210
STARTS COUNTERS AND SERVICES KEYBOARD
241
z.. tz
MDV
A•*070H ;CTR1 MODE 0
MOVX
24:3
@RO,A
iSTART SPEED CTR
MDV
2'M
A•IOBOH ;CTR2 MODE 0
2.lf~:j
MOVX
;START PA CTR
@RO,A
246
CLR
A
247
MO\.!
MDVX
2.ttB
@r~o "~
MO\.!X
2'Fi
@f(O •A
250
MDV
RO, 'it-CTF(2
251
MOVX
@R 0 "~
@RO.A
MOVX
252
,JMP
TOPLP
253
25"t
256 iEVEN INTERUPT ROUTINE!
257
DOES CALCULATIONS.SPEED FEEDBACK.AND DISPLAY
258
259 SETT:
MDV
Ad40H
~!60
MCJVX
@RO,A
ILATCH CTR1
261
RL
A
Zl,z
MO'JX
@RO.A
iLATCH CTR2
f(O, jf'IFL1~GS
MDV
263
A,@RO
26'!
MDV
Ad,OlOH
1~NL
2b!".:i
,JNZ
~!b6
l"RODLM
,JMP
267
ENDSPD
26B PFWE::LM ! MOU
F: 0, ~'CTf\ 1
269
MDV
R1•1i'CNNT
[email protected]
270
MOVX
; REr-~D SPD COUNT
271
CPL
A
(1[)[)
Z72
A.ISPDOFF;snFT TIME CORRECTION
!'(/,,A
27:l
MDV
G?H-1, A
274
MDV
275
(\vGrno
MOVX
276
CPL
A
0 1::JB AD
277
MDV
I:'\~)''~
0139
01 :JC
013D
Ol.3F
01'!0
0142
01'!3
01'1'1
0145
t1NL
dNZ
A1IOF8H ;CHECK FOR VERY LOW CNT
963F
27B
279
CNTCH:
IOI(
'f't[:()
~?.BO
JMP
ENDSPO
FD
1300
C9
AD
'.W1 CNHlK!
MOV
'~ ,f(~.i
;BAD-IGNORE
; CUUUT ()1(--F\ESTOl(E
202
ADDC
fi •
28::!
DEC
rn
2!H
l~l
;:n5
;>.86
MDV
MOU
MO\.!
MO\.!
~;::ini
B901
OJ.'l7 E:MiE
;>.o?
·~
F\~.'.i,
0 OH
A
cm1 ni
R 1, 'itDl'.J 1
f(;~,
1rn1v;·:
,;cc
Bl8
ISIS-II MCS-48/LJPI-41 MACRO ASSEMBLER. v1.o
LOC
OBJ
0119
01-lE:
011D
01'1F
0151
E:E:36
DCOO
7'10A
E:93C
Fl
F7
E662
97
67
Al
0152
0153
0155
01'.)6
0157
0158
0159
015A
015E:
015D
015F
0160
0162
0161
0165
0166
0167
0168
0169
016A
016E:
016C
016E
0170
0172
0173
0 l.7 'I
0175
0177
OJ.79
0 l 7E:
017C
Ol7D
017E
01:30
27
AE:
AC
E:S39
B060
cs
OJ.:M
288
289
290
291
292
293
291
295
296
297
298
299
300
301
302
303
30'1
BOEA
8825
FC
AO
AF
CB
FE:
AO
AE
CB
23t-1'i
'1672
'1308
AO
09
Ar;
537F
0301
306
307
30B
309
310
311
312
313 CHfWI<:
31'1
315
316
~l17 SEJIGN!
31B
31 '}
B92B
322
IH
FA
F7
F6B'I
FA
01B1 D37F
01.B3 Al
018'1 Z3E::l
E681~
SOI<:
r~NL
321
ADD
MDV
MDV
MDV
F\LC
clC
MDV
:323
32,'I
3r>r.:­
L • ..J
326
:n1
:l28
XF\L
329
MO!J
MDV
cl NC
330 TSGN:
::Bl
OlBB ·7::) ()8
0 UM E:B26
3:32
3::J3 TSIGN:
0 lfJC tiO
OJ.8D t::B29
OtOF E:923
:.1:3'1
01?1 Dl
01 '12 D:JD3
01 ?'I ,;o
01'75 E:80A
01.'ll r,:92::;
0 1 ?9 Fl
MDV
MDV
CALL
MDV
MDV
RLC
JNC
CLR
F\RC
MDV
CLF\
MDV
MOU
MOU
MDV
DEC
MOU
MDV
MOU
MDV
MOV
DEC
MDV
MDV
MOV
DEC
MOV
clNT1
OF\L
MOV
IN
MOU
~l20
3:]~)
3:l6
::i::i7
:nn
~J:]9
3'10
:l'l 1
~MZ
8
SOLJF(CE STrYfEMENT
LINE
30~5
PAGE
Of([_
MDV
MCJ!J
MOV
MO'J
xm_
XHL
1'10V
MO!J
MOV
MOV
R3 dWIV::l
R'I • ll'DIV'I
DIVIDE iSPEED=<HDIVrLDIV>/COUNT
;soFT INTEFWF'T?
Rl r'HFLAGS
[email protected]
1'.\
SOI·(
c
A
; F\EMEME:ER SOFT INT
@Rl•A
A
iSET MEtiSUF:ED SPD=O
F\3, A
R'l1fi
;SET PERIOD CNT TO
RO, tC~-INT
@f(O,tCUH~L ;INDICATE A SLm~
RO
iSPEED
@l'.(O dCLmlH­
RO, ~'SF'D ;srWE SPEED VALUE
ArR'I
ir~ND MOVE IT INTO
i<F\6 ,R7>
@RO• r~
R71A
rm
A1F\3
@RO 11'\
R6rA
RO
Ar'lfOrHH ;SPEED DESCFGPTOR
;-VE SPEED?
SSIGN
A, ,iorn-1
@i:rn, '~
A, F' 1
iREr~D Fl)f(CE TRt1NSDUCER
RZ, r-'\
A, 'if7FH HF SIGN +VE COMPLEMENT
Ar,8'011-1 ; ,;ND INCF\EMENT
R1, 'ii'ffJF\Cl; ~itWE TOFW TO E::E DISF'UiYED
@FU .ti
A1Fa
A
TSGN
AvR:·?.
{\, l:?FH
;-VE TORQUE?
iCPL Mt-1GN, IF
~lIGN
+VE
~m1 ,,~
A.lOE:3H ; TOfWUE DESCf(IPTCm
T::>J:Gi'l
; --tJE TOfWLJE?
r!i, UODH
RO,
lTDrW--~:
@F\O ''~
RO ,.IJl"Wl'<-··2
F\1 dSF'D-·2
A.i;rn1
A, ,1, oo:n1
;c,;u:
F'Ol~EF\
!>ICU
; DETEW1INC HIEN CEN[f(;HE
;r:·o 1 ~r::F:: ~>I Crl ?. DESCl<IF'TOf.;: RESF',
C~Frn vr)
ROd<lO
r;:l, 11,SF'D
;i 0
DLCIMf'1L
A ,c;)f<l
iMOVE SF'D MAGNITUDE INTO <RZ, F.:3>
B19
ISIS-II MCS-'t8/LJPI-'11 M1;CRD 1;ssEMBLEf(, V'I, 0
LDC
DE:J
019A
019E:
019C
019D
019E
011;0
01A1
01A2
01A'I
01A6
011;1
011;8
011;A
011;E:
A8
C9
F1
AA
7 'I'! l
FD
AA
FE
AE:
E:928
F1
fi8
7·1'11
FC
AA
o 1,;c
FD
011;0
OlAE
OlAF
OlE:O
AB
FE
AC
OlE:Z
01E:4
01B6
01[:8
OlE:A
01 E:E:
01BC
01E:D
01E:E
E:D03
E:EE:E:
7'10A
E:92E:
FC
Al
C9
FB
Al
011~3
27
0181 A9
LINE
343
3'1'1
34S
346
347
3'18
349
350
351
3"""
-'~
3S3
35·1
3~5!'..:i
356
357
358
359
360
361
362
3b3
36'1
365
366
367
368
369
370
371
37'?
,
373
374 $EJECT
~
PAGE
9
SOURCE STATEMENT
MOV
DEC
MDV
MOV
C1;LL
MO'J
MDV
MDV
MOV
MDV
MOV
MOV
CALL
MDV
MDV
MDV
HOV
MDV
MDV
CLR
MOV
MOV
MDV
Ct1LL
MDV
MDV
MDV
DEC
HOV
MDV
R3•A
R1
A,@Rl
RZ,A
MLJLT
tMULT SF'EED:.:10
A ,F:S
RZ,A
A,R6
R3•A
Rl,t-HmQ
[email protected]
RO.A
MLJLT
tMULT ~>F'EED:.:1 O~TOFW
A,R4
Rz,A
A.RS
R3•A
A,R6
R'!,A
A
Rl,A
RS, 'i1'03H
R6, ii' 0E:E:H
DIVIDE iDIVIDE RESULT E:Y 60/(Z)f(f'i)
Rl ,t-Pl·m iGET Pl·m LOCATION
A,R't
@Rl•A
Rl
A,R3
@Rld1
;STOf(E BIN Pm~ER 1.IAlLJE
820
ISIS-II MCS-'!8/LJF'I-'11 MACFW
LDC
0 H:F
OlCl
01C2
01C3
01C5
01C6
01C7
01C8
OlCA
OlCE:
01CC
OlCE
01CF
0100
0102
0103
0104
01.D5
0107
0108
OBJ
E:912
81
37
0340
AE:
81
37
l.3E4
AA
27
FC.DA
FE:
37
0301
AE:
FA
37
1300
AA
2308
0101~ "13D3
01DC E:92C
01DE Al
01 DF B86'l
01E1 71'!1
01E3 FC
OlE'I AA
01E5 FD
01E6 AB
01E7 FE
OlEB AC
Ol.E9 27
OlEA A9
OlEE: i;[)
OlEC (:[[:?
OlEE 7'101~
01FO E:??.E
01F:Z FC
O1F:J Al
0 lF't FE:
01F5 C?
Ol.F6 Al
1~SSEME:LER,
"-"!. 0
PAGE
10
SOLJf<CE STfHEMENT
LINE
375 CANGLE! ;THIS SECTION OF THE EVEN INT ERUPT ROUTINE
; CALCUL1HES THE f<OTOR ANGLE f<ELATIVE TO THE
:l76
; • r:'i • PH1~SE OF THE M1UNS SUPPLY.
377
;THE f(ESLJL T IS ONLY Vt1LID HHEN THE MOT Of<
378
379
>IS LDCf(ED IN SYNCHRONJ:SM ~UTH THE SUPPLY
380
381
382
MOV
rn • ~'CTF<Z
MOVX
[email protected]
383
;coMPL LSB'S 8. 1~DD OFFSET
A
CPL
38'!
385
f.1DD
Ar *SZCOf<L
F<3, A
386
MDV
A,(ml
387
MDVX
;CPL MSD'S 8. t;DD OFFSET w CARRY
A
3B8
CF'L
,;ooc
A, ~'S:ZCOf(H
38'1
;GET SIGN 8. CLEAR MSE:
3'10
MDV
R2n~
A
391
CLR
;POSITil,,'E SIGN
ASIGN
392
.JC
A,1:;;3
iCF'L f1ND INC <1~2,1={3>
393 1~SIG:
MDV
A
CPL
39'!
(;DD
ArlOl.H
395
R3,A
396
~!OV
ArR2
397
MDV
A
398
CPL
Ar<fOOl-l
3'7'7
ADDC
R2,A
400
MDV
;SET UP -VE SIGN
·101
MOV
A•'~08H
ArifADESC iAND OF~ INTO DESCF\IF'TOF\
'102 ASIGN: l1F<L
MDlJ
Rl, ~'DELT1~-:z
'!03
@Rl,A
'!0'1
MD'J
RO,lf,100
'I 0 ~-)
MDV
MULT
;MULTIPLY E:Y 100
'106
CALL
'107
MO'J
A•f<'!
'108
MD'J
R2•A
A, R~i
MDV
'l 0 '7
f\::1, A
MOV
'110
A,l'.;;6
MDV
'111
R·1 n1
MOV
'112
cu::
'113
A
MDV
'11 'I
FU •A
MOV
'!:1.5
R5 ";
MOlJ
f.:6 d lf:l~.'i
'I .t.">
DIVIDE ;DIVIDE E:Y l.B~i
CALL
'!17
FU , n-DEL. T1~
MO'J
'IHl
MDV
A•fM
'11 'ii
~H(l, (i
MDV
'!2 [J
MDV
A .r~::i
'!21
1
Rt
f22
DEC
~ff\1 ,,;
·JZ:3
MOV
'l2 1 t EMDAGL !
'l2~j
1
t26
'~E.JECT
821
ISIS-II MCS-'18/UPI-41 MACRO ASSEMBLER, V4,0
LDC
OBJ
LINE
'130
'131
'132
'133
85
E:83C
FO
12FF
020~;
AC
·134
'f::l5
436
437
·138
'I :3<;>
iTHIS SECTION OF THE ROUTINE PROVIDES
iTHE CLOSED LOOP SPEED CONTROL, SPEED
iCONTROL IS PROVIDED USING THE SPEED
iMAGNITUDE ONLY, NOT DIRECTION, DIR­
IECTION IS ASSUMED TO E:E CORRECT AND
iIS DEPENDENT UPON THE ELECTRICAL CONECTION
iOF THE SUPPLIES TO THE MOTOR. THE
iDIRECTION IS MONITORED AS USUAL.
CLR
HOV
FO
MOU
JE::O
A ,@Fm
447~;
·HO COMPFff: ,JMP
E:B1F
'Ml COMPF\! FO
4'12
'1'13
44'1
4'15
AD
0203 cs
0204 FO
MDV
MOV
MDV
DEC
MDV
1HFLAGS
f~O,
COMPR
iFEED-BACK ENABLED
ECDMPR
RO••OlFH ;GET STSPDIPERIODl
A.c!rno
R5•A
RO
A,emo
MOU
0206 8839
0208 FO
't46
'I 't 7
'MB
MDV
MDV
R4•A
RO••CNNT ;GET SPDIPER>
A,cmo
0209 AF
020A CS
'!'!<;>
MOU
R7•A
'150
DEC
MDV
MDV
CALL
JNC
CPL.
o;?.OE:
020C
o;?.OD
020F
o;>.11
FO
'151
AE
'f52
5'1FF
'!~:;:~
E618
4!":-i'I
95
45~:".i
021.2 FD
0213 37
'f!:SI.>
'l'.)7
021'1 AD
0215 FC
'158
45?
'160
·161
462 ovra:
46'.:l
'16'1
0216 37
0217 AC
0218 95
0219 FC
021A 'IC
021B C62~~
0210 5:HF
o;>.1F A?
0220 'l'l;:i:::
OZ22 E:?O:L
022'1 FD
MOU
Lf6~)
'166
467
'!Ml
'16'?
'170
'171
'f72
CSTEP:
CPL.
MDV
MDV
CPL.
MDV
CF'L
MDV
DRL.
JZ
ANL
MDV
JMP
MOU
477
'170
47S'
MDI.'
ANL
JNZ
MDV
MDV
MDV
MDI.'
DEC
MOI.'
MDV
0232 E:b'l:J
'!fl 0
,JFO
023'1 31.,7::;
·181. DECFrn:
JTO
0225 5JFC
0227 ?62B
022? [:900
022E: E:H3·l
0;~2D FO
o;?.2E t1E:
022F CB
0230 FO
o;>.:31
AA
11
SOURCE STATEMENT
'127 CLOOP:
'128
'129
01F7
01F8
01FA
01FE:
01FD
01FF
0201
0202
PAGE
'17'.'l
47'1 CLPP!
'17~.'j
'176
RO
A.r,mo
R61A
SUE:TR
OVRT
FO
A, f\:';
A
R5d'I
iSPDIPER> -STSPDCPERl
;INDICATE -VE RESULT
iAND COMPL. THE MAGNITUDE
A•R4
A
R'I • •~
FO
AvR'I
iDETERMINE IF LARGE STEP
A,R4
CSTEP
iSMAL.L. STEP
A,eotFH ;LARGE STEP
R1 .r'.\
CLF'F'
Rl•IOlH iCALC STEP SIZE
Ad 0FCH
CLPP
0
f\ l
'olJo()
RO, llFt1CNT ; GET TllE FTIUNC; 1'.\NCLE
r~, frlf(()
; COUNT INTO ·::F<3 ,f(2>
f\:h A
f\O
Avl·~HO
r.;:2 'P•
IN Cf(
ECOMPR
iOVERCURRENT DO NOT DECREASE FA
822
ISIS-II MCS-·18/UF'I-41 Mr.icrw r:\SSEME:LER' V'l.O
LOC
OBJ
0236
0237
0238
0239
95
FE:
37
69
37
0231~
023E:
023C
023D
023E
0240
02·11
0243
,;E:
FA
37
1300
37
444A
95
0214 FB
Q'i'.llr.::'
~ '.., 69
0246 AB
02'17 Fr~
02'18 1300
02'1A AA
02'1B AE
OZ'IC FB·
OZ'!D ,;F
OZ·!E E:C01
0250 E:DCD
0 '7C'"7 5'1FF
0254 E65E
0256 E:COD
OZ58 BDC7
025A 5'!FF
025C E66A
025E E:666
~..,~
'182 DECf(:
CPL
'183
MDV
'f8'1
CPL
'f85
ADD
'f86
CPL
'f87
MDV
'f88
MDV
'189
CF'L
490
ADDC
'f91
CPL
JMP
492
'f93 INCR!
CPL
'194
MDV
'195
fiDD
496
MDV
MDV
497
'f98
ADDC
'f99 COMPf<O ! MDV
500
MDV
MO\l
501
502
MCJV
503
MDV
50'f
MDV
505
CALL
506
JNC
507
MDV
MDV
508
CfiLL
509
cl NC
510
511 !:>ETEFm! ,JFO
~i12
0260 E:AOD
513
51'1
026'1 '1'16A
0266 [:AO :L
02(,B E:E:CD
02Mi E:83'1
026C [:91 0
515
0~'.6E
FB
AO
91
FA
91
027:1 C8
027'1 AO
026F
0270
0271
0272
~516
12
SOUF\CE STATEMENT
LINE
0262 BBC7
PAGE
~lETHI:
~>ETLD!
517
518 O•{:
519
520
~)21
!::'.'?#">
~J ,(_4~
c:"~·:J
..,~~
MDV
MDV
cl MF'
MDV
MOV
MDV
MDV
MO'J
MDV
MOVX
MOV
~:;2.q
MlNX
525
DEC
MDV
526
527 FCDMPR!
~.)28
52? HccJECT
FO
A,R3
A
A,Rl
A
R3•A
A,Rz
A
A,to
A
COMP RO
FO
A,F\3
A• FO.
f<3ni
A.ra
A,$0
R2•A
;DECREASE FA <SPEED LO)
;rNcm::,;sE Ffi <SPEED HI>
iMAl<E SlmE Ffi NOT TO LO
f(6, '""'
A,R3
R7•fi
R'l•'~HFALD
R5,,llt.F(.;LO
SUB TR
SETEl~f\
R'!, ,11,HFfiHI
R5•1i'LFAHI
SUE:TR
iMr:'.\f\E SURE FA NOT TO HI
Of(
HF BEYOND LIMITS SET TO LIMIT
iIN DIRECTION OF Lr~ST MOVE
iSET HI Fr:\
f<:'.,ll-IFMU
R3•ll'LFAl-U
SET LO
Of(
'"
R2' '~HF1:'.\LD
R3, ,D,LF r'.l!LD
r;:o 'JFfiCNT
Rl, lCTFrn
A, f<::i
(!if((},,;
EHU,(\
Avra
@F\1, r~
RO
@R 0 • t~
iSET LO FA
;SET COUNT
823
ISIS-II MCS-·'lB/UPI--"11 MACF\O ASSEMBLEF\, V"!.O
LDC
OBJ
LINE
F'AGE
13
SOUF\CE STATEMENT
530 ;SLIP!
531
532
THIS ROUTINE CALCULATES SLIP
THE ASSUMPTION THAT THE
iSYNCHRONOUS SPEED IS 1800 RPM
;~HTH
533
5~1'1
535
536
537
SLIP
SYN. SPD, - MTR. SF'D.
----------------------­
SYN. SPD.
530
0275 E:825
0277
0279
027A
027[:
027C
027E
027F
0280
0281
0282
028'1
0286
0288
0289
23F7
60
37
539
5'10
5"11
MO'J
MOV
c~DD
5 1tz
0 Z'J5 1-iD
~)63
CPL
MO\.!
MD\)
DEC
~'ID DC
CPL
MDV
MDV
JNC
MOi..1
MDV
CPL
MDV
MDV
CPL
MDV
MOV
CAl...L
MDV
MOV
MDV
MOi..1
0296
0297
029B
0299
029A
029E:
o;:'JC
029E
02AO
FE
56'1
MO'J
(-,C
~=.i65
MDV
27
566
cu~
t19
f.iA
AO
E:E12
7'10A
[:9'.35
5b7
568
569
2:351
'1!3
tit
19
!':i73
57'1
MOV
MOV
MOi..1
MDV
Ct1LL
MDV
MIW
0281~
0288
02BC
OZBD
028E
0290
0292
0293
029'!
021~2
02A'!
O~?.f.15
0?1~6
i~E:
5't3
23F8
!':i'l'I
5 1f5
546
cs
70
37
Ac~
E:FO 0
E68E
E:FOS
FA
37
AA
FB
37
AE:
E:BOA
7"l't:I.
FC
AA
FD
o;:fv FB
Al
OZ(\8
021~9
021)1~
1 'l
FC
O?ciE: Al·
547
5"18
5·19
550
551
C°r.:"'I?
.J.J~
~153
55·1
555
5~56
557
558
~>LIPO:
~j5<"/
~5b0
561
51.>2
570
'.':i71
~572
(]J([_
RO,'il'SF'D
A,fOF7H ;os;
A,@F\O
A
R3•A
Ad 0F8H ; 07/
0
A,@RO
A
R2•A
R7 di' 0
SLIPO
R7d 08
A,Rz
A
RZ,A
A•R3
A
R3•A
F\O dH 0
MULT
0
1~.R·1
(~f;:
b
INC
MO\.'
MDV
INC
FU
~57/
~)BO
MOI)
~;01
5fl2
5DJ 't•EJECT
MDV
iMULT DIFF E:Y 10
tIN DfWER TO INCR
iTHE ACCURACY OF THE
i DISPLAYED RESULT
0
MO'J
57B
::-;7<;
i-VE SLIP SGN
iCF'L
MAGNITUDE
RZ•A
A,R5
F:3,A
A,R6
R"l•A
A
R11A
R21A
R5•A
R6d 18 ;1soo.1100
DIVIDE i DI'JIDE E:Y lB TO GET
Rl, ~0 '.3LIP-2 ;3 DF' OF i"1ccur;;.;cy
t1, -8°~:>!.F'DES iHIEN ~\Cl'.-'E INTO
i DI!3F'Li'1Y ~>PACE FOr: SLIP
A .r~n
57~)
~'j7
070BH=1800.
Fm
1 ,,;
f'I ,r;:3
@Rl,A
Rl­
A, f\'I
@Rl
,ti
iEMD
OF SLIP
l\OUTI~lE
824
ISIS-II MCS-48/UPI-41 MACRO ASSEMBLER, V4.0
LDC
OBJ
LINE
PAGE
14
SOURCE STATEMENT
584
585
586
587
588
589
590
591
592
02AC
02AE
0280
0281
0283
5488
74AC
85
SABO
5487
0285 0441
0287 93
593
594 ENDSPDI CALL
595
CALL
596 ENDSPO! CPL
597
ORL
CALL
598
599
JMP
600 ENDSPS! RETR
601
602 SEJECT
DISPLY
ICTR
;oISP THE VAL IND BY DISPTR
;COUNT THE NUM OF INT PAIRS
;POINT TO OPOSITE INT ROUTINE
Fl
pz,•80H ;ENABLE INTR FF
ENDSPS ;PREFORM RETR TO ENI
;JMP TO MAIN ROUTINE
TMRO
IRESTORE RBO AND EI
825
ISIS-II MCS-'18/LJPI-'11
LDC
OE:J
MA~RO
ASSEMBLER, V4.0
;THIS ROUTINE DISPLAYS TWO FIELDS
;oF PACKED INFORMATION ON THE CONTROLLER
bO.~
b07
60B
609
MDV
610
MDV
611
MOVX
612
DEC
613
MDV
61·1
MOV
615
CALL
616
MDV
617
MOV
618
SWAP
619 DISF'OO! P1NL
620
MDV
621
ADO
622
ADD
623
ADD
624
MOV
625
MDV
b2C>
MDV
6;~7
SW\F'
l>28
CALL
629
INC
630
MDV
631
CL.R
63Z
.JE:3
63::1
CPL.
63'! DISP'I:
ANI...
b35
MDV
cu:<
631.1
637
.JC
MO\}
6'.3B
l.i39 DISP5 ! MO\.!X
6·10
INC:
641
MOV
6.:+~~
MO\..'
b'l:J
INC:
MDV
b'l-1
6'!~)
MDV
b4b
CALL.
6·17
MDl.'
6·1B OI">F'O: CM.L
649
MDV
b'.5 0 DISP 1: MflV
SIU\P
b53
6~:.J.(f
i>~.)~5
656
c,::;7
15
SOURCE STATEMENT
LINE
603 DISPLY:
b04
b05
0288 8801
02E:1~ 2390
02BC 90
02E:D CS
02DE E:93D
OZCO Fl
OZCl 5'lC7
02C3 E:93D
02C5 Fl
02C6 47
02C7 530F
02C9 A<?
02CA 69
02CD 69
02CC 0320
02CE A9
02CF Fl
02DO AF
o;:rJ.t 47
OZDZ 54F't
02D4 1F
02D5 FF
021)6 97
02D7 72DA
02D9 A7
02DA 5307
02DC AF
02DD 27
OZDE F6E2
OZEO 2:302
OZEZ 90
OZE3 19
02E4 Fl
02E5 AA
02E6 1'7
02E7 Fl
02E8 AE:
02E9 7'1bB
o:zcr:: Fe
0 2EC ~)'IEF
o;:EE FD
OZEF tiA
OZFO ·17
OZFl 5'1F'I
02F3 Ff;
02F·1 530F
o;:Fb 03C9
OZFB E3
02F9 EFFD
F'AGE
DISP2:
;SEVEN SEGMENT DISPLAYS INCLUDING
;DESCRIPTOR, SIGN, DECIMAL F'LACE, AND
; Mr!\GNITUDE.
RO,ICMD79
;9279 CMD F'TR A•l90H ;AUTO INC FROM 0 ~n'<O, A RO Rl ,,U,DISF'TR r!i [email protected] DISF'OO
;DISPLAY FIRST VALUE f\1 dHH S PT R A, @F\1 A
A••OFH ;DISPLAY SECOND VALUE
Rl,A A,Rl A,F,1 A,,rnEGOFF ;R1 POINTS TO DISPLAY VALUE Rl•A
A .C!!F\1 R7,A A
DISPZ
R7 A,R7 ; GET DESCRIF'TOF' ;OUTPUT DESCRIPTOR c
DISP4
;TEST FOR SIGN A,I07H
R7,A ;KEEF' ONLY DF' COUNT c
A
DISF''.5 A,,H>IGN ~?f< 0 , ,;
F\1
A•!!)l'U R~~,
;OUTPUT SIGN ;GET MAGNITUDE INTO <R2rR3> A
Rl Arfr1 1"1 [~3'
f'.) 8INE:CD
lCONVERT MACN INTO E:CD '! DI~;p 1
1'.'i '1:\ ~.) ; DISf'.'
1:) , f~
MS
[:YTE CM.L
RZrA
"~
DISPZ
MDV
A,f;:z
t1NI...
A,·~ 0FH
; TllFN LS E:CD DI CIT
,:), UDI~>rnB ;.-wo DISr'ltlY Tti[:L[ OFFSET
AreA
;GET [ORRESPONOING DISPLAY CODE
ra, DI~;p3 ; DP HERE')
ADO
MDVf'.'3
Del NZ
;THEN LS E:YTE
;OUTPUT MS 8CD DIGIT
B26
ISIS-II MCS-48/UPI-41 MACRO ASSEMBLER, U4.0
LDC
OBJ
02FB 4301 02FD 90 OZFE 83 LINE
658 659 DISP3:
660 661 662 663 664 665 666 667 668 669 670 671 PAGE
16 SOURCE STATEMENT
ORL
MOUX
RET
A••D1H
@RO,A
OR IN DECIMAL POINT OUTPUT DISPLAY CODE TO 8279 END OF DISPLAY ROUTINE 672 02FF FD 0300 37 0301 6F 0302 37 0303 AD 0304 FC 0305 37 0306 7E 0307 37 0308 AC 0309 83 673 674 675 676 677 678 679 680 681 682 SLJBTR!
683 684 685 686 687 688 689 690 691 692 693 694 695 696 $EJECT
;THIS SUBROUTINE SUBTRACTS <R61R7> FROM
;(R4,RS> ANO PUTS THE RESULT IN <R4,RS>
;THE OPERATION IS IN BINARY
MOU
A•R5
;SUBTRACT LS.BYTES
CPL
A
ADD
A,R7
CPL
A
MOU
RS•A
MOU
A,R4
;THEN MS BYTES CW BORROW>
CPL
A
ADDC
A,R6
CPL
A
MOU
R41A
RET ;IF NEG - CARRY=SET1MAGNITUDE~COMPLEMENTEO
B27
ISIS-II MCS-48/UPI-41 MACRO ASSEMBLER, V4,0
LOC
OBJ
LINE
PAGE
17
SOURCE STATEMENT
697 DIVIDE: ;THIS ROUTINE DIVIDES REGISTERS <R1R2R3R4>
iBY REGISTERS <R51R6>.
THE RESULT IS FOUND
698
699
;IN REGISTERS <R3.R4> AND THE REMANIDER CAN
7 00
; E:E f<ECREf'HED FROM f(EGISTEF:S <R 1, 1'(2>. REGISTER
701
;<RO> IS NOT USED
702
030A
0308
030C
030E
0310
0311
0312
0313
0314
0316
0317
0318
0319
031A
031E:
031C
0310
031[
031F
0320
0322
0323
OJ24
0325
0326
0327
0328
0329
o32,;
032B
032C
0320
03;:1?.
o:lZF
0330
0331
FD
4E
C610
6414
27
AB
AC
83
BF11
Ff~
37
6E
37
AA
F9
37
7D
37
,;9
E628
FA
6E
AA
F9
7D
1'i'l
FC
F7
,~c
FB
F7
AB
FA
F7
Ar'i
F9
o:n2 F7
O:J:n t•9
0334 EF:JB
(] 33b 6·1:3,~l
03:Jn 6'1:1.b
033,; FC
o3:m 37
033C f~C
03'.30 FE:
O:lJE 37
0 3 :3F ,;[:
03·10 B3
70'.:l
704
705
70i>
707
708
709
710
711.
712
713
714
715
716
717
718
719
7;:0
721
722
723
724
725
TOOPP:
MDV
A, f(5
or.;:L
A •Rt>
JZ
JMP
CLR
TOO PP
TOOP
MOU
MDV
A
R3,A
R4n'
;CHECK FOR ZERO DIVISOR
;SET RESULT TO ZERO IF
;THE DIVISOR IS ZERO
1:::ET
TOOF':
DLF':
MDV
MDV
CPL.
A
f°iDD
ArR6
CPL.
A
MDV
R2•A
ArFd
MDV
ADDC
CPL
A
A, f\5
A
MDV
Rl,A
JNC
ADD
DSF
ArR2
ArR6
MDV
RZ•A
CPL.
DSFF:
726
727
72!:l
729 DSF:
730
731
732
rn
R7d,17
A•RZ
MDV
MOIJ
A .rn
A ,R~)
MDV
MDV
RlrA
ArR'I
f(LC
A
MDV
MDV
ArR::l
,;ooc
F\4 "~
!'(LC
A
73'1
735
MDV
MDV
R3 ";
736
F;:u;
737
73B
MDV
A
f\Z,A
,; , r.;: 1
A
MCPJ
7:J9
RLC
7'10
MOIJ
7'11.
Del NZ
cl MP
7 11;·~
7·13 DLPP:
7'1'1 DPP:
7'1:";
Arra
rn
"'
FU' DLF'F'
DPP
,JMP
DLP
MO'J
1~,rM
CPL
ti
MDV
7"'tb
7·17
MOIJ
f\4-v I~
A, 1~'.:1
7·1B
7·1'?
CPL
A
MOV
f~3
750
75.l 1;EJECT
m:T
";
iR7
LOOP COUNTER
B28
ISIS-II MCS-48/UPI-11 MACRO ASSEMBLER. v1.o
LDC
OBJ
LINE
PAGE
18
SOURCE STATEMENT
752
753
754
755
0311
0313
0311
0315
0316
0317
0318
0319
031A
0318
0340
031F
0350
0351
0352
0353
0351
0355
0356
0358
0359
0358
035C
035D
03SE
035F
0360
0361
0362
0363
0361
0365
0366
8908
27
AC
AD
AE
97
FB
F7
AB
F61F
6159
FB
6E
AE
FA
70
AD
FC
1300
AC
E95C
83
97
FE
F7
AE
FD
F7
AD
FC
F7
AC
6117
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
77S
776
777
778
779
780
781
782
783
781
785
786
787
788
789
790
791
792
793
791
795
796
797
MULT!
MLP:
SHFTT!
SHFT!
SHFTO:
tEJECT
;THIS ROUTINE MULTIPLIES THE VALUE
;IN REGISTERS <RZ,R3> BY THE VALUE IN
;REGISTER <RO>. THE RESULT IS FOUND IN
iREGISTERS <R1vRS,R6>. THE OPERATION
;rs PREFORMED IN BINARY.
MOV
CLR
MOU
MOU
MOU
CLR
MDV
RLC
MOU
JC
JMP
HOV
ADD
MOV
MDV
ADOC
MOV
MOV
ADDC
HOV
ojNz
RET
CLR
MOU
RLC
MOV
MOV
RLC
MOU
MOV
RLC
MOV
JMP
Rl·•08
A
;coUNTER
;CLEAR RESULT
R1,A
R5•A
R6•A
c
A.RO
A
;SHIFT MULTIPLIER
RO•A
SHFTT
SHFT
iADD MULTIPLIER TO RESULT
A•R3
A•R6
R6,A
AvRZ
A.RS
RS,A
A,R1
A,to
R1,A
Rl.SHFTO
C
A,R6
;SHIFT RESULT
A
R6,A
A.Rs
A
R5,A
A,R1
A
R11A
MLP
;END OF MULTIPLY ROUTINE
829
ISIS-II MCS-18/UPI-11 MACRO ASSEM9LER.
LDC
0368
0369
036A
0368
0360
036E
036F
0370
0371
0372
0373
0374
0375
0376
0377
0378
0379
037A
0378
037[)
OE:J
27
AC
AD
BE10
FE:
F7
r~B
FA
F7
AA
FD
7[)
57
r~D
FC
7C
57
AC
EE6D
83
LINE
u1.o
PAGE
19
SOURCE STATEMENT
798
799
800
801
802
803 BINE:CD! STHIS ROUTINE CONUERTES THE BINARY NUMBER
i!N REGS. <R2,R3> TO A BCD NUMBER IN REGS,
804
i<R1·R5>, <R6> IS USED AS A COUNTER,
805
806
CLR
;CLEAR THE RESULT 807
A
MOtJ
808
R·1•A 809
MC'J
R5•A R6d,16
810
MOU
iLOOP COUNTEf( 811 E:E:LP 0 :
MOV
ArR3 812
RLC
A
MO')
R3n'~
813
811
MOV
A,Rz 815
RLC
A
816
MOV
RZrA MOV
ArR5 817
818
ADDC
ArR5 819
DA
A
820
R5rA MOU
M0\.1
8~~1
A11'M 822
A, R'f ADDC
823
D..i
A
82-'t
MOU
R'l•A 825
DJNZ
R6•BE:LPO 826
RET 827 $EJECT
830
ISIS-II MCS-'IB/UPI-41 MACF\O ASSEMBLER, V4.0
LOC
037E
037F
0380
0381
0383
0384
03B5
0386
0387
03B8
0389
03BA
0381::
03!30
038E
038F
0390
0391
0392
0393
03'J4
03'?'.:i
OBJ
27
AA
AB
E:EO 1
FE
67
FA
67
,;A
FE:
67
AE:
E68E
83
FC
67
11C
FD
AE
67
AD
E:805
03'!7 7'19E
03'J'J CB
03?A
03?C
03<JE
03?F
03Al
03A:~
74?E
6'183
FO
5388
77
77
03A:3 t~F
03A'I 77
03A5 bF
031;6 20
03,;7 37
03A8
03rW
03r;A
03,;13
60
37
,;o
B3
LINE
PAGE
20
SOUF\CE STATEMENT
828
829
830 E:CDE:IN: ;THIS FWLJTINE CONVERTES THE BCD Vr~LUE IN
;REGISTERS <R41R5> TO BINARY VALUE IN
831
; FffCISTEF:S <R2 ,F\3>, REGISTER <Rl> IS NOT USED
832
El33
CLR
834
A
MDV
835
R2•A
MOV
;CLEAR F:ESLJL T
836
R3•.A
MDV
837
R6•*01H ;SET FIRST U1RRY
A,.Rt'>
;GET F\El1i~INDER
838 MOREO! MOV
;AND SHIFT INTO ci;RRY
rrnc
839
A
A,r.;:2
MDV
840
rrnc
;SHIFT INTO RESULT
A
8'11
MDV
8't2
F\2 •A
,~,R3
MDV
843
F:RC
8"1'1
A
845
MDV
R3•A
;FINISHED IF FIRST CARRY
cl NC
MOF~El
846
;SHIFTS THROUGH
847
RET
A,R4
;rnv:IDE E:CD VALUE E: y 2
8'18 MORE1! MOV
RF\C
8"1'il
A
MDV
850
R4•A
A,R5
MOV
851
MDV
R6d1
tLSE: OF ,; IS REMAINDER
852
f\F\C
85~l
A
MDV
R'.5•A
85'!
F<O, il,05H ; =O 1DH FOF< F\E:l
MDV
855
;Do E:CD t~DJLJST FOR /2
CALL
FIX
85<'>
DEC
F\O
857
CALL
FIX
B58
JMP
MOF\E 0
859
A,!!mO
MDV
;GET VALUE TO E:E r;DJUSTED
860 FIX:
r.,~JL
A, 'MJf:lH i> cm -· 8?
861
r<H
862
A
F(R
863
A
Fa,,~
MOlJ
86'!
Fm
A
865
A,1;:7
ADD
B66
A,!!/RO
XCH
867
CPL
BMJ
A
A,rmo
ADD
86'J
CPL
870
A
fr!f\0, A
MDV
071
97;·~
;nm OF E:COE::rn
m~T
B73 ~;E.JECT
B31 ISIS-II MCS-•!8/LJF'I-'11 MfiCRO ASSEME:LER, V4.0
LOC
OE:J
0004
03AC E:82't
03r~E E:93C
03BO FO
03E:1 E:832
03E:3 53FE
03[:5 C6E:D
03[:7 FO
03E:8 03FF
03BA AO
03E:E: 96C4
03[:0 E:OO'l
03DF Fl
03CO 4310
03C2 A1
03C3 83
03C'! Fl
03C5 53EF
03C7 Al
03C8 83
LINE
87'!
875 rem:
876
877
878
879
880
881
882
883
88'!
885
886
887
8B8
BBS'
890
891. rcrno:
892
89::!
89'!
895
896 ICTR1:
897
89B
899
900 $EJECT
SOLJF~CE
PAGE
21
STfHEMENT
;nns FWUTINE SLOWS DOl·!N THE DISPLAY
;ANO ~>PEED CONTROL UPDATING RATE TO
;ONE UPOrHE EVERY 2:t<ICNT r.::EVOLUTIONS
; FDF< SPEEDS >500 F<F'M.
ICNT
MDV
MDV
MDV
MOlJ
ANL
JZ
MOV
EQU
04H R0, "1,SF'D-1 R1, 'il'IFLAGS A•fr1RO RO, 11,ITF,CNT A,11'0FEH ICTF(() r~DD
A, ,U,OFFH MOV
@RO,r~ ,JNZ
ICTR1 @F~O, tICNT A,@f\ 1 Ad,10H @FU, fi MDV
MOV
ORL
MOV
RET MOV
ANl..
MOV
F<ET A•l~RO A,C?.F<1 A.41'0EFH @Rl •fi B32
ISIS·- II MCS-·18/LJPI-•11
LDC
03C9
03CA
03CE:
03CC
03CD
03CE
03CF
03DO
0301
031)2
031)3
03D'I
OE:.J
FC
60
E:6
F2
6A
DA
DE
70
FE
FA
·'t6
8E
o::m5 3E
03[)6 7E
0307 0 .2
03D8 03
Mr~CRO
ASSEME:l..ER, V'I. 0 22
SOURCE STATEMENT
LINE
901
902
903
90'!
905
90<'>
907
90B
909
910
911
912
PAGE
)l(JICIOKJK
iORG
PAGE THr(EE LOOJ(LJP
03DCH T1~E:LES
)l(:K:K:«)I( ; DISPLAY CODE
Tf~E:LE <,>1:~
91'!
915
916
917
918
919
920
921
DTABL.E! ZERO:
ONE:
nm:
THREE!
FOLJf"(:
FI\.1E:
E>IX:
E)ElJEN:
EIGHT!
NINE:
AA:
E:E::
cc:
DD!
EE!
922 FF:
923
924
DB
OFCH 060H OE:6H OF2H 06AH ODP1H
ODEH 0701-1 OFEH OFAl-I 0"16H
OSEI-I
03EH
07EH
DE:
DB
DE:
DE:
DE:
DE:
DE:
DE:
DB
DE:
DE:
DB
DE:
DE:
DE:
;s
<SLIF' > tn
CSF'EED) <TORQU:O:) (POWER> ( ,;NGLE) <SET SF'Dl <IST SF'D> iT
;p
ooa-1
iA
i-
003H
;-.
OE:
41.H
DB
DE:
DE:
42H
431-1
'MH
;sPD
iTRQ
<;:31
DB
0'.3H
;3 932
933
93'1
DE:
DB
DE:
0<'>1-1
091-1
8"11-1
;6 DB
DB
DB
DB
OZH
O!:iH
081-1
OOH
f(EYE:OAl:;;D
Tr~E:LE
925
03D9
03DA
03DE:
03DC
926
'11
42
927
43
92B
'14
9~~9
f'.TAE:LE!
iF'WR
iAGL"
<SF'EED l
<TORQUE>
<POWER)
<ROTOR ANGLE>
930
03DD
03DE
03DF
0:01EO
03
06
09
8'!
<;35
03E1
OclEZ
O:JE3
OclE'I
02 9:_~\~)
05 9'.37
9::rn
939
9'10 9·11
9'12
9'13
9'!'1
08
00
03E5 01
0'.3E6 O"I
03E7 07
03E8 82
;9 ;c
.,,
cc,;NCEL) ·~
• L"
• .J
;s ;0
;1
DE:
OlH
[)[:
il-'IH
DE:
DE':
07H
;7 f:lZH
;
946
9'17
9'1B
DC
'17H
;SLF'
OE:
L}()fl
; ~:>SD
DB
tFi~C
9'!9
DE:
'l<'>H
f:l 11-1
SLIP
SET s D C;:c>F'L '(
,:;r: :.L. E C!l
FIF:IN
;ssP
SET
;"'• .
<EXECLCTE) 9'1~i
03E9 '17
0'.3Er~
'I 0
0:lEl3
03EC 81
"'' 950
951 $EJECT
_,
('
r::ED
I~/-''.)
B33
ISIS··-II MCS-48/UPI-41 MACRO ASSEME:LER, V4.0
LDC
OE:d
LINE
952
USER SYMBOLS
Ar!\
0303
E:E:
0304
CANCE OOE3
CLOOP 01F7
CMD:53 0013
COM PR 01FF
CTR1
0011
DELTA 0 o;·~E
DISF'3 OZFD
DISF'TR 003[)
DitJ'l
0 0 0 ()
DSF
032f:l
EIGHT 0301
FACNT 0 03·1
HFACNT 0000
ICTRO 03BD
ITRCNT 0 03;,
LFAHI OOC7
MULT
03'!1
0~(1-(
0 O'i>'l
RECOFF 0020
SETHI 0260
SHFTO 035C
SLIF'O 028E
SPEED 0107
STAR
0005
SZCOF:L 0 040
TOOP
031'!
TSICN 018A
A~lSEME:t_
ADESC 0003
E:E:LF' 0 0360
CANCEL OODF
CLOl~
EA60
CMD79 OOOl
COMPRO 024A
001;::
CTFa
DISPO
OZEC
DISP·1 OZDA
DISTAE: OOC9
DIVIDE 030A
0322
DSFF
ENDl)CL 01F7
03()8
FF
HFAHI 0000
03C4
IC.TfU
f(EY!3
0060
LFALD OOCD
MXSTEF' 0020
ONE
03CA
RENTR OOlS
SETL.O 02.'>6
SHFTT 034F
SLF'DES 0 O~.H
SSEXC OOC2
STAF\T 0 0 () ()
Tl-ll'.;:EE
03CC
TDDF'P o:HO
nm
03CE:
Y COMPLETE,
NO Ef.:F:OF\S
PAGE
23
SOUF<CE STATEMENT
END
ASIG
E:CDE:IN
CANGLE
CLO\.lH
CMDf(
COMPRT
DD
DISF'OO
DISF'5
DIVl
OLP
DTr'.iE:LE
ENDSF'O
FIVE
HF ALO
IFLACS
f(EYTAB
MLF'
NINE
OVRT
RETFrn
SETT
SIGN
SOI<
SSFIX
SH>PO
TMF:O
TClf'LF'
ZH\O
tEOF
OlCE
037E
01E:F
OOEA
0 OE:1
01FD
03Db
02C7
02E2
0001
0316
03C9
02F.:O
03CE
0001
003C
0009
0347
0302
0218
005E
011E
0002
0162
OOFF
0022
0041
0057
03C9
ASIGN 0101!\
E:INE:CD ()368
cc
03D5
ctm~L
OObO
CNNT
0039
CSTEF' 0 ,.,,.,.,.,
OECR
0236
OISF'l
OZEF
OISF'f( 009F
DIVZ
OObE
DLF'F'
0338
ECOMF'R 0275
ENDSPO OZAC
039E
FIX
000'!
ICNT
IN Cf\
02'!:3
KTAE:LE 0:309
MDF<E 0 03S3
Of(
026A
PF\OBLM 012C
RETR1
OOAF
SE\.!EN 0300
SIX
03CF
SF'O
0025
SSICN 0172
SUE:H: 02FF
TMF<1.
0 0'!8
TOF\Cl
o o:~s
..C~4
....
AZ
E:STSPD
CHf(Of(
CLF'P .
CNTOf(
CTRO
DECRO
DISPZ
DISF'LY
DIV3
DF'F'
EE
ENDSF'S
FOUR
ICTR
ISTSPD
LFACNT
MOR El
Of(EXC
PWR
SETERR
SHFT
SLIP
SPDOFF
SSNEX
SZCORH
TMR2
TSGN
E4'!0
003F
016E:
022B
013F
0010
0234
OZF'l
OZE:s
003.'>
033A
03[)7
02E:7
03CO
03AC
0031
OOC7
03SE
0007
OOZE:
025E
0359
0037
0005
OOE:A
OOE4
oo·1c
0184
B34
ISIS--I I ASSEMBLER SYME:OL Cf\OSS REFEf::ENCE,
AA
ADESC
AS:IG
ASIGN
AZ
E:E:
E:E:LP 0
E:CDE::rN
E:INE:CD
E:STSPD
Ct;NCE
UiNCEL
CANGLE
cc
CIH~m:
CLOOP
CLOW
CLmlH
CLOWL
CL.PP
CMD53
CMD79
CMO}(
CNNT
CNTOI<
COMPIO::
COMPF\ 0
COMPIH
CSTEP
CTF\O
CTF\1
CTF:2
DD
DE Cf~
DEcrrn
DELTA
DI~3PO
DI!JPOO
OI~>P1
D:rnP2
DI!JF'3
OISP'I
DI~3P5
DISPI(
DI~3PL Y
DD:>F'TR
DIST AB
()J'Jl
DIVZ
DIV:l
DIV'!
DIVIDE
Dl..P
Dl.PP
9170:
36'"'
39:H
392
388'
918'"'
811'11'
155
6"16
15,g,
207t
18'1
375i
919t
31:3'"'
'127t.
'I 1'11,
'13,8'
"12,lt­
'168
7t
6i
125
22=1J:
279
'139
'192
'1'101t­
"165
·9,IJ:
9t
1 O,lt.
920f.
'182,lt'181'"'
25:0:
6'18,IJ:
615
6'18
628
657
632
1>:37
126
59'1
lU
19,lt.
'1021t­
39
830,lt
803"'
136
20'1,lt-
"12
::i
o"
302
'172
60
53
17:':it
269
28U
"l"l Ui'
'199'D'
"169,11'
6"1
2'17
609
301
"l't7
'11. 8
619'"'
1>:::;011'
l.>52
6'.YJ'H'
63'1'1"
6:3'7'8:
65'H
16::l,lt60:31~
8'1
16'1
176
200
613
'117
:'i71
t_,r;7"'
{,5~;
:?16
217
218
290
71;~11'
7 '1:3
7't:H
7'1'1 g,
72?11:
~~
110
'103
,,,~
723,"'
'17'U
236
250
21~5
D~>FF
'13
519
268
3B2
;~1 1 1
DSF
'I 0
825
211'
7'11
742
7'?')
[)f'p
PAGE
'to2
3,"'
5:ft:
v2.1
201.,
;·!87
;~m1
2B9
3.:'Jb
l.>ll>
1
835
ISIS-II ASSEMBLER SYME:OL CROSS REFERENCE,
DTABLE
ECOMPR
EE
EIGHT
ENDAGL
ENDSPO
ENDSPD
ENDS PS
FACNT
FF
Fil.'E
FIX
FOUF\
HFACNT
HF~ol-l:I
HF1~L.O
ICNT
ICTR
ICTRO
ICH\1
IFU1GS
INCR
ISTSF'D
ITRCNT
ITYS
KEYT AB
l(T1~E:LE
19
440
921*
9151t
't2'!t
1H
267
598
27i
912'°'
856
911*
28t
30t
32t
880,t
595
8.86
890
16,~
882
'180
13,lt.
231f
113
20if
20
31t
33il'
768,IF
838·11<
MDl~E1
El46
MULT
Of(!-(
347
34'8o
916t
510
197
150
ONE
. 908ff:
NINE
Of(
Df'.EXC
own
F'F:OE:LM
f'\.m
F:ECUFF
f\ENTR
F:E rn 0
F:ETF;:1
sEn:rrn
SETllI
SETLD
SETT
SEl.'EN
SHFT
SHFTO
SHFTT
SIGN
280
59'!t
600,lt.
65
PAGE
.1
2
527:9:
596$
'17'!
5l8
922:1:
LFACNT
LFMH
LFALO
MLP
MCll~E 0
MXBTl~P
9061t
'181
v~~
29,~
858
860t
70
507
503
891
875t
513
516
891,~
896,~
'19
493,g,
73
88'!
115,lf
123
103
127
156
189
926~F
66
508
504
795
859
848t
51'!
517
355
'106
51.5
5 :l81f
199,fl:
l.55=U:
'l~:i'I
'162*
266
26,lf
17t
601f
26B*
335
623
198
367
11 '!IF
17'H
506
183
51H
~)13·t:
511
237
91 'l't
773
733
772
181F
166
~516-t
259:8;
7831F
785t
77H
638
1B7
~i59
75n
175
199
263
291
'137
B36
ISIS-II ASSEMBLER SYME:OL crrnss F\l"':FERENCE• v2.1
SIX
SLIF'
SLIPO
SLF'DES
SDI<
SPD
SPDOFF
SPEED
SSEXC
SSFIX
SSIGN
SSNEX
STAR
START
STSPD
SUCTR
SZCORH
SZCORL
nm EE
TMRO
TMR1
TM Fa
TOOF'
TO OPP
TOP LP
TORQ
TSGN
TSIGN
TWO
ZH:O
913,lt2a
550
37t
29'1
12l
35,1~
48
181
179
315
178
47
46'°'
1'1l
453
'tOit
39if
910,8'
93,~
99,IJo
99
706
705
110 ii'
2't1'
326
3:31
909t
907$
PAGE
5-,,
/,_
558$
573
305$
305
336
3'11
188
509
208
t>82,lt-
539
881
174
.., ....
225
272
2331~
1851"
226-0=
3171i'
180'"
'191~
75
505
389
385
599
100
10U
7111'
707il'
131
82
330il'
3331"
101
162
322
CROSS REFEf\ENCE COMPLETE
1b8
333
3~-,,
230
253
3
B37
ASM48 lF1!TEST1.SC
ISIS-II MCS-48/LJPI-41 MACRO ASSEMBLER• V4.0
LDC
OBJ
PAGE
1
SOURCE STATEMENT
LINE
1 STTY PAGEWIDTHCBO>
2
3
4
TEST 1:
5
obtained for the rotor Period and rotor
6
ar1Gle measurements.
are
8
9
16) notation an the seven seGment
12
13
14
15
ooor::
CMD79
CMD53
cnrn
18
CTF\1
CTF\2
19
20
21 or.:c
22
0'12[)
2'1
ST~1RT
2~j
'7A1F
[:801
2:321
S'O
23C1
90
2390
90
26
27
ST t1H:
30
31
32
MDV
33
MDVX
MO\.!
MDV
MCJVX
MO\)
MOVX
Cl..r(
MCJ\J
CL/(
MDV
MDV
INC
28
OOH: ?1
30
001C
001\)
001F
0 020
0 !l:?2
0023
0 02'1
0 02<>
002B
0029
002[:
1~5
3';>
[:920
'.?7
40
CAlF
1
r~l
'l:J f<EF'T !
19
'I'!
'l'.:i
'16
0 ~)
() ·1::'7
0·1:·:7
OF\L
ANL
MOV
MDV
MO\.!X
MDV
MOVX
29
E1:122
DIS
,JMP
JMP
0000
OOOE
0010
0011
0 0 13
0 0 1 'I [:91~1
0016 2370
0018 91
0019 23E:O
SM::F
<HEX' or Base
dii;Pla~s.
EQLJ
EQU
EQU
EQU
EQLJ
01H
131-1
;9279 CMD REC ADDR
101-1
;CTRO
1
11H
12H
t8253
..
2
OOOOH
!
23
8M'F
The values obtained
in hexidecirnal
;PROGRAM CONSTANTS
16
17
15
() 'l 0 ~,,
disPla~ed
Zero represents the shortest Period and
; OFFFFH represents the lonGest; the count
freauencw beinG 400 kHz.
10
0000
0000
0001
0003
0005
0007
0009
disPlass the counts
7
11
0001
0013
0010
0011
0012
simPl~
This routir1e
3'1 f(D/Tr\ !
35
31.>
37
41.
1:·:
47
'1B Mt'1IN !
'I'?
50 '.f>E.JECT [)LJNZ
()Id_
EN
,JMP
,.JMP
I
iDISABLE INTERUPTS
STAR
;JUMP OVER INT START
SPEED
;JMP TO SERVICE ROUTINE
PZ,•OFFHiRESET 8279
pz,•OtFHiENABLE 8279,RESET INTRQ FF
RO,ICMD79i8279 CMO REGISTER
A.12'11-1 ;orv Cl..K BY 'I
@l'i:O, A
A••OC1H iCLEAR ALL
!!,'RO ,A
A,190H iALJTO INC FROM 0
&mo .A
R1•*CMD53i8253 CMO REG
A1170H
iCTRl
MODEO CBINl
~lf(l
',;
A•·ltOE:OH ;cTR2
!~'r(l,
MOOED <E:IN>
A
Fl
R11•32
iCLF: FLAG 1
;CLEAR STORAGE RAM
A
f(2'
.~Jl ~?f-<1
,. r)
f(l f(2, F!EF'T PZ,IOBFH ENABLE INTRO FF I
EN~BLE INTERUPTS MAIN
WAIT FOR INTERUPTS Mi'.\TN B38
ISIS-- II MCS-·18/UPI--'11 MACF<O t1SSEME:LER, V'I, 0
LOC
OE:J
0020
002F
00:31
0033
0035
0036
0038
0039
003A
003C
003D
003E
0 0 'I()
00-'H
00'12
0 04'1
0 0'16
0 0'17
0048
0 0 '19
OO'IB
0 O'!C
0 O'ID
OO'IE
00·1F
0050
0051
0053
9rVF
E:813
76't'l
2370
90
2380
90
0055
0057
0058
0059
0 051)
005[:
005C
0050
005F
0061
006Z
0064
27
E:811
90
90
8812
90
90
0'161
23'10
'ii()
E7
90
E:Bll
80
37
AE
80
37
f~D
BCDA
1 '16~)
l?.912
81
37
AE
81
37
r~D
E:C7E
1'16A
B5
BA80
9~~
SPEED!
.J.:_
"""'
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67 SETT!
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
8'1
9~:5
8b
87
SB
89
90
END~>PD:
iINTERUPT ROUTINE
ANL
F'2r1Jo7FH ?DISABLE INTFW FF
RO, 0~CMD53
MDV
JF1
SETT
A,8'070H ;CTR1 MODE 0
MDV
!i?F\0 ,A
;sTAIH SPEED CTR
MOVX
Ad,OE:OH ;cTR2 MODE ()
MOV
@RO.A
;START PA CTR
MOVX
A
CLF<
MfJV
RO dCTR1
@RO,A
MOVX
MDVX
@ROrA
RO, ~~CTR2
MDV
@RO.A
MDVX
@RO,,:;
MDVX
JMP
ENDSF'D
A, U,'IOH
MDV
@RO,r~
MOVX
tLfHCH cnu
RL
A
@f\OvA
MCWX
;LATCH CTR2
MDV
RO, 'il'CTRl
A,@RO
MOVX
;READ SPD COUNT
CPL
A
MDV
R6rA
A,c;mo
MOVX
A
CPL
R5,A
MDV
R'ld,ODAH
tSPD CNT DESC
MDV
;ouTPUT SPD CNT
OUTHX1
CALL
R1, .J1'CTR2
MDV
[email protected]\l
MOVX
; REr)D ANGLE COUNT
CPL
A
MO\.I
f<6' A
[email protected]
MOVX
CPL
A
R5,A
MDV
R4, ,U,07EH
;t1NGLE DESC
MOV
Cf"1LL
OUTHX;: ;ouTF'UT ANGLE COUNT
CPI...
Fl
DF<L
F'2, 'H10H
0
1:([Tf(
<)>1
92
2
smmcE SH1TEMENT
LINE
51
PAGE
~J;EcJECT
839
ISIS-II MCS-48/UPI-41 MACRO ASSEMBLER, V4.0
LDC
OE:J
0065 8801
0067 2390
006'7
006A
006C
006D
006F
0070
0072
0073
0075
0076
0077
0078
007A
0078
0070
007E
007F
90
8800
FC
147E
27
147E
FD
1'176
FE
c'.\A
47
1478
FA
530F
E3
90
83
LINE
SOURCE STATEMENT
93
94
95
96
97
98
99
100 OUTHX1:
this is the disPlaY routine• it outputs the
binary contents of <R5vR6> ~o the seven
seGment displays in Mex for~at.
The con­
tents of <R4> is assumed tc be a disPlaY
code formatted descriptor f~r the GuantitY
to be disPlawed.
MDV
MDV
MOVX
103 OUTHX2: MO\.!
1 0 •l
MDV
105
CALL
CLR
106
107
CALL
108
MDV
109
CALL
110
MDV
111 OUTBYT! MDV
112
SWAP
113
CALL
1 l't
MDV
115 OUTNUM! ANL
116
MOVP3
117 OUTPT!
MOVX
118
RET
101
102
119
3
RO,oifCMD79
A•oif90H
@RO,A
RO,tCMD79-1
ArR"t
OUTF'T
IOUTPUT
DE~:RIPTOR
A
OUTPT
A,
; BLANf( SIGN
F~5
OU TE: YT
A•R6
; OUTPUT MS ;:;YTE
R2rA
; OUTPUT LS E:YTE
A
OUTNUM
A,R2
Ar'l,OFH
A•@A
@ROrA
; GET NIE:BLE
;THEN CORRESP. DISP CODE
;ouTPUT TO 5279
i***~~~**~~~~*~*~~~~~~~~~~~~~~*~~~~x~~~~*~~**~**
120 ; HEX TO !:>EVEN SEGMENT DISPLAY CODE TABLE
121
0300
0300
0301
030'.Z
0303
0304
0305
0306
122 ORG
0300H
123 OTAE:LE:
;PAGE THREE
DB
DB
FC
12.tt ZEf\O !
60
125 ONE:
86
12C>
F2
6A
DA
l.27 Hif::EE!
128 FOLJF\!
DE
129 FIVE!
130 SIX!
1:n SEl.'EN:
13;>. EIGHT!
DB
DE:
DE:
OFCH
060H
OE:6H
OF2H
06AH
ODAH
ODEH
070H
OFEH
1~D
DB
OFAH
13'1 AA!
135 f::E::
DE:
DE:
1~J6
0[::
07EH
OCEH
09CH
OE6H
nm:
0307 70
0308 FE
0309 FA
030A 7E
0308 CE
030C 9C
0300 E6
137
030E 9E
030F lE
1:J8 EE:
t:JCJ FF!
140
NINE:
cc:
oo:
·~EdECT
DE:
DE:
DE:
OE:
DC:
DC:
DE:
0'1EH
01EH
; 0
;1
;2
;3
;1
·~
t.J
t6
;7
;s
;9
i;'\
; E:
;c
;o
;E
iF
B40
ISIS-II MCS-18/UPI-'11 MACRO ASSEMBLER, V4.0
LDC
141
142
113
SYMBOLS
030A
0010
030E
FOUF~
0304
OUTHX1 0065
f~EPT
0 022
STAR
0005
END
USEF~
AA
CTRO
EE
BE:
CTR1
EIGHT
MAIN
OUTHX2
SETT
START
ASSEMBLY COMPLETE,
030B
0011
0308
0 0;~9
0 06r~
0 0 'l'I
0000
NO
4
SOURCE STATEMENT
LINE
08.J
PAGE
EF\F\OF~S
;EDF
cc
0~30C
CTR2
ENOSPD
NINE
OUHH.JM
SEVEN
THHEE
0012
0061
0309
007E:
0307
0303
CMD53
DD
FF
ONE
OUTPT
SIX
TWb
0013
030[)
030F
0301
007E
0306
0302
CMD79
0001
0300
FH!E
0305
OUTBYT 0076
RENTR 0 0 1 'I
SPEED 0020
0300
ZERO
DTr~BLE
B41 ASM48 :Ft:TEST2.SRC
ISIS-II MCS-18/UPI-11 MACRO ASSEMBLER, v1.o
LDC
OBJ
LINE
PAGE
1
SOURCE STATEMENT
1 STTY PAGEWIDTHCBO>
2
3
TEST
4
This test routine tests the keyboard and
z:
5
disPlaY on the instrumentation
6
7
After reset all of the disPlaY seGments
are illuminated includinG the decimal Points.
When a kew is pressed the row and column
coordinates of that keY is disPlaYed on the
UPPer disPlay line and the remaininG display
diGits are blanked.
8
9
10
11
s~stenr.
12
13
14
0001
0013
0010
0011
0012
0000
0000
0001
0003
0005
0007
0009
0008
0000
OOOE
15
16
17
15
0105
0100
BAFF
9A1F
8801
2321
90
2310
90
23C1
90
2390
90
BEOO
EE19
23FF
8800
BEOC
1168
EE21
8801
2390
90
80
5307
C62A
C8
80
A9
27
0010
0011
0013
0011
0016
0017
0019
0018
0010
001F
0021
0023
0025
0027
0029
002A
0028
0020
002F
0030
0031
0032
0033 1168
0035 F9
0036 5307
18
19
20 ORG
21 START:
22
23
21 STAR:
25
26
27
28
29
30
31
32
33
31
35
36
37
38
39
10
11
12
43
11
15
16
17
18
49
50
51
52
53
54
CMD79
CMD53
CTRO
CTR1
CTR2
OOOOH
DIS
JMP
JMP
ORL
ANL
MOU
MDV
MOVX
MOU
MOVX
MOV
MOVX
MOU
MOVX
HOV
I
SDISABLE INTERUPTS
STAR
SJUMP OVER INT START
START
SJMP TO SERVICE ROUTINE
P2,•0FFH;RESET 8279
pz,•01FH;ENABLE 8279,RESET INTRQ FF
RO,ICMD79;8279 CHO REGISTER
A.t24H ;DIV CLK BY 4
@RO.A
A•l40H
;READ FIFO
@RO,A
A••DClH ;CLEAR ALL
@RO,A
A•l90H
SAUTO INC FROM O
@RO,A
R6,IO
R6,HOLD ;WAIT FOR 8279 TO CLEAR
A•IOFFH
RO,•CMD79-1
R6vl12
OUTPT
;LIGHT UP ALL DISPLAYS
R6,0TST
RO,ICMD79
A•l90H
@RO,A
[email protected]
A.t07H
INN
RO
A•@RO
R1,A
CLR
CALL
MOU
ANL
OUT PT
A,R1
A.I07H
MOVX
HOLD!
MOV
DJNZ
MDV
MDV
MOV
OTST:
CALL
DJNZ
CIN:
MDV
MDV
INN:
;PROGRAM CONSTANTS
EQU
01H
EQU
13H
EQU
10H
EQU
11H
EQU
12H
MOVX
MOVX
ANL
JZ
DEC
A
842
ISIS-II MCS-48/UPI-41 MACRO ASSEMBLER, V4.0 LOC
OBJ
OO'!F
0051
0053
0054
0056
OO!:i7
0059
005A
005C
005D
005F
0060
0 061
0062
0 06'1
0065
0067
0068
0069
E:801
23'70
90
BB 0 0
LINE
3
SOLJF\CE STATEMENT
71 OUTHX1: MDV
ROr1tCMD79 MDV
Ar'1i'90H 73
@RO,A MDVX
74 OUTHX2! MOV
RO, 1FCMD79-1 75
CLR
A
76
CALL
OUT PT 77
CLF{
A
78
CALL
OUT PT 79
MOV
ArR5 80
CALL
OUTE:YT 81
A,R6 MDV
82 OUTE:YT: MO'J
R2•A 83
S\~AP
A
84
CALL
OUTNUM 85
MOV
ArR2 86 OUTNUM! t=lNL
A•'it.OFH MOtJP3
87
[email protected] 88 OUTPT! MOVX
@ROrA 89
RET 90
91
;PAGE THREE TABLE
; llOK llOl()I( llOK )1()1( ){( llOIOl()K ){(
92 DRG
0300H
93 DH'iE:LE! 94 ZEF:O!
DB
OFCH 95 ONE!
DB
0601-1 96 TWO!
DB
OE:6H 97 THREE!
DB
OF2H 98 FOUF::
DB
06r"IH 99 Fit.1E:
DB
ODAH 100 SIX!
DE:
ODEH 101 SEVEN:
DE:
070H 102 EIGHT!
DB
OFEH 103 NINE:
DB
OFr:\H 10'1 AA!
DB
07EH 1 O!::I E:e:
DB
OCEH 106 cc:
DB
09CH 107 DD!
DB
OE6H [)[:
1on EE!
09EH 109 FF!
DE:
01EH 110 111
;EOF END
72
27
1468
27
1468
FD
1460
FE
r~A
47
1465
Ft~
530F
E3
90
83
0300 o
FC
60
B6
F2
6fi
DA
DE
70
FE
FA
7E
CE
o~~oc 9C
0300 E6
030E 9E
030F 1E
o:~o
PAGE
0301
0302
030:3
0304
0305
0::106
0::101
0308
0309
030A
030[:
ll!:lER SYMBOLS
AA
CMD53
DD
FIVE
ONE
OUTNUM
STr~l'(T
030,;
0 0 l.3
0300
OJOc.)
0 3 () 1
0 () 6'..'i
0 0 0 ()
BE:
CMD79
DTt1CLE
FOtm
OT'.:>T
OUT PT
THl(EE
ti'.:i'.3EME:L Y COMPLETE,
0308
0001
0300
030·1
0021
0068
0303
ND
ERF:OS:~;
cc
cnrn
030C
0u1 ()
EE
o:rnE
HOLD
0 O:l <;>
OLJT[:YT 0060
SEVEN 0307
nm
Ocl02
cm
cnu
0 0:::5
DOU
EIGHT o:rnn
oo:·:A
INN
01.lTllXl 0 O'IF
SIX
030.'>
ZEf::O
0300
cunT
0 {J't9
CTf(2
001.2
FF
Ocl!lF
030(;.>
NINE
OLJTllX2 () 0:'5·1
STr~li:
0005
843
ISIS·- II MCS-'18/UF'I-·'l 1 MACHO
f~SSEME:LER,
LINE
SOlJf(CE STATEMENT
LDC
OBJ
0038
003A
003C
003E
003F
00'10
0 0·11
00'12
1'165
c-~-
Cl\ LL
2302
56
57
58
59
60
61
62
63
6'1
65
66 CLF\IT:
67
6ll
69
70 ~!>EJECT
MDV
CALL
MDV
1'168
F9
67
67
67
5307
OO·H 1465
00'16 E:90A
00'18 27
00'19 1-'l 8
0 0 ·'IE: E9
0 O·'!D O·'l 5
~.,
..J..J
V'I. 0
rmc
rmc
RF\C
r:\NL
CALL
MDV
CLR
CALL
DJNZ
JMP
OUTNUM
A•'i'02H
OUTPT
A•Rl
A
A
A
A•ot07H
OUTNUM
R1,t10
A
OUT PT
R1,CLFUT
CIN
PAGE
2
Rl
REFERENCES
1. A. Dunworth, "Digital Instrumentation for Angular Velocity and
Acceleration",
IEEE Transactions on
Instrumentation and
Mearurement, Vol IM-18, No. 2, June 1969.
2. P.W. Hammone, "A Zero-Speed Pulse Tachometer", Reliance Electric
Company, Cleveland Ohio.
3. D.W. Huber, O.P. Malik, G.S. Hope, 11 A Digital Device to Measure
Angular Speed and Torque Angle", IEEE Transactions on Industrial
Electronics and Control Instrumentation, Vol. IECI-22, No. 2,
May 1975.
4. F.J. Evans, "Some Electronic Techniques for Speed and Slip
Measurement in Power Laboratories", IEEE Transactions on
Education, July 1979.
5. M.A. Jani, W. Ahmed, 11 A Digital Technique for the Measurement of
Angular Speed", Ieee Transactions on Industrial Electronics and
Control Instrumentation, Februrary 1976.
6. -----------, "DC Motors, Speed Controls, Servo Systems",
Electro-Craft Corporation USA, Pergamon of Canada Ltd., Toronto,
1979.
7. C.G. Streatfield, "A Digital Tachometer using a Commercial
International Journal of Electrical Engineering
Counter 11 ,
Education, Vol. 9, pp. 217-220, 1971.
8. G.K. Tucker, D.M. Wills, 11 A Simplified Technique of Control
System Engineering", Minneapolis-Honeywell Regulator Company,
Pennsylvania, 1958.
9. B. Szabados, N.K. Sinha, DiCenzo, 11 High-Resolution Precision
Digital Tachometer", IEEE Transactions on Instrumentation and
Measurement, Vol. IM-21, No. 2, May 1972.
10. G.C. Balalock, "Direct Current Machinery 11 ,
Company Inc., New York, 1947.
11. H.W. Moore, 11 Phase-Locked-Loops for Motor Speed Control 11 , IEEE
Spectrum, April 1973.
12. D.H. Smithgall, 11 A Phase-Locked-Loop Motor Control System 11 , IEEE
Transactions
on
Industrial
Electronics
and
Control
Instrumentation, Vol. IECI-22, No. 4, November 1975.
McGraw-Hill
Book
R2 13. B.K. Bose, K.J. Jentzen, "Digital Speed Control of a DC Motor
with Phase-Locked-Loop Regulation",
IEEE Transactions on
Industrial
Electronics and Control
Instrumentation, Vol,
IECI-25, No. 1, February 1978.
14. T.J. Maloney, F.L. Avarado, 11 A Digital Method for DC Motor
Control, IEEE Transactions on Industrial Electronics and Control
Instrumentation, Vol. IECI-23, No. 1, February 1976.
15. J.B. Plant, S.J. Jorna, Y.T. Chan, "Microprocessor Control of
Position or Speed of a SCR DC Motor Drive", IEEE Transactions on
Industrial
Electronics and Control
Instrumentation, Vol.
IECI-27, No. 3, August 1980.
16. B. Szabados, M.E. Shadeed, "Microprocessor Armature Controlled
DC Motor", Presented at the Canadian Power and Communi ca ti ans
Conference, Toronto, 1981.
17. R.T.H. Alden, M.A. Hackings, R. Kitai, "Thyristor DC Motor Drive
with Simple
Phase-Locked Equidistant Pulse Generation",
Presented at the Canadian Power and Communi ca ti ans Conference,
Montreal PQ, 1980.
18. L.W. Matsch, "Electromagnetic and Electromechanical Machines",
2nd edition, Fitzhenery and Whiteside Ltd., Toronto, 1977.
19. J. V. Huddleston, 11 Introduction to Engineering Mechanics",
Addison-Weasley Publishing Company Inc., Reading Mass., 1961.
20. M. Merriman, Mechanics of Materials", 11th edition, John Wiley
and Sons, New York, 1973.
21. H.N. Norton, "Handbook of Transducers for Electronic Measuring
System", Prentice-Hal 1 Inc., N.J., 1960.
22. G.J. Thaler, R.G. Brown, "Analysis and Design
Control Systems", Prentice-Hal 1 Inc., N.J., 1969.
23. A. Kusko, "Solid State Motor Drives'', MIT Press,
Mass., 1969.
24. G.R. Selmon, 11 Magnetoelectric Devices", John Wiley and Sons
Inc., New York,1966.
25. S.C. Nijhawan, V.K. Sharma, R.S. Kandpur, 11 A Beat-to-Beat Heart
Rate Meter", IEEE Transactions on Biomedical Engineering, Vol.
BME-28, No. 1, Janurary 1981.
of
Feedback
Cambridge
R3 Users 11 ,
26. J.D. Lenk, "Manual for Integrated Circuit
Publishing Company, Reston Virginia, 1973.
Reston
27. R. Resinck, D. Halliday, "Physics: Part I 11 , John Wiley and Sons
Inc., New York, 1966.
28. C.L. Dawes, 11 A Course in Electrical Engineering, Volume 1,
Direct Currents", McGraw-Hill Book Company Inc., Toronto, 1952.
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement