Specifications

·
.
,
·
J
D
·
..
J
·
-
j
·
·
...
-
-
,
I
·
..
-
-
I
I
-
..
·
C
-
-
·
I
-
&.
-
·
(
r
-
I
...
c:
-
~
Col
)
..
~
-
[.
-
-
I
·
t I
·
It
·
U
·
, U
·
, .
·
\ U
·
·
U
·
, .
·.U
·
.
' U
·
-
.
',~
"
~,
·
',1:-
·
..
~
·
·
..
This
is
accomplished
by
allowing the beginning of background loop execution
t~
proceed only on every
fifth
foreground interrupt. Therefore, background loop execution
time
is 450
p.SeC
(5
x
90
I£Sec).
The only exception
to
this
Is
that the spindle motor background control routines
ar.
exempted from
this
"gating" process In order to
minimize
control system phase error.
The
less
time atticaJ tasks consist of the
foUowing:
a. Calculating
the
duty
cycle
of the spindle motor power
waveform·,
based upon the measured
revolu-
tion time.
b.
Monitoring the
disk
revolution
time
to generate the
Drive
Ready signal to the interface, and
to
deter-
mine
if spindle motor fauks have occurred.
c. Determining the necessary
ramp-up
and ramp-down parameters to perform a seek,
given
the step
pulse count as received
from
the interface.
d. Performing the automatic actuator reset to cylinder 0
dUring
the drive power-up.
e.
Moving
the actuator a
fun
stroke
in
and out
twice
In
order to distribute the actuator bearing
lubricant
dUring
drive
power-up.
f.
Self-exercising the actuator
with
continuous random seeks and checking for seek errors when the
drive exercise
jumper has been Installed.
The
following
subparagraphs detail the actual background routines. See figure 8-3.
8.3.1
Sy.tem
Startup
Code
This code
initializes
the stack pointer and binary arithmetic mode with the
foUowing
results (see table 8·1):
Cl.
On
Port A the
READY
and
FAULT
flags
are set to false. and the
FAULT
CLEAR
line
is momentarily
pulsed true.
b.
On Port B the stepper
coil
bits
are put Into Phase A and the Stepper Enable is made· false.
c. On Port C, Reduce
Write
Current and Brake
Pick
are
tru~;
Run Spindle and
LED
are false.
d. On Port 0
the Aduator Slew
is
false.
On
aU
four ports,
all
bits not assigned as outputs are coofigured as Inputs.
The routine then jumps
to
Spindle
Motor
InltlallzaUon
.
8.3.2
Splndl~
Motor Initialization
This routine
initializes
the spindle motor control conltAnts and variables. The spindle brake is held at high current
for
about one second. Brake power is then reduced and the .pindle motor is ramped up to 100 percent
for
about 8
seconds, using pulse
width
modulation.
FuU
spindle power is held for an additional X seconds
while
the spindle index Is counted.
If
X or more Index pulses
have occurred, then control goes to Seek Function Initialization. otherwise there is a spindle failure and control
goes
to
the Miaoprocessor Control Fauh Indicator function.
8·5