Figure 7-20 shows
the motor-start sequence implemented in the MCF8316A
device.
Power-On StateThis is the initial state of the Motor Start Sequence (MSS). The MSS starts in this state on
initial power-up or whenever the MCF8316A
device comes out of standby or sleep mode.
DIR Change && DIR_CHANGE_MODE = 0b
Judgement
In MCF8316A, if direction change command is detected and
DIR_CHANGE_MODE is set to 0b during any state (including closed loop), the device
re-starts the MSS.
ISD_EN Judgement
After power-on, the MCF8316A
MSS enters the ISD_EN judgement where it checks to see if the initial speed detect
(ISD) function is enabled (ISD_EN = 1b). If ISD is disabled, the MSS proceeds directly
to the BRAKE_EN judgement. If ISD is enabled, MSS advances to the ISD (Is Motor
Stationary) state.
ISD State
The MSS determines the initial condition (speed, direction of spin) of the motor (see
Initial Speed Detect (ISD)). If motor is deemed to be stationary (motor BEMF < STAT_DETECT_THR), the MSS
proceeds to BRAKE_EN judgement. If the motor is not stationary,
MSS proceeds to verify the direction of spin.
Direction of Spin Judgement
The MSS determines whether the motor is spinning in the forward or the reverse
direction. If the motor is spinning in the forward direction, the MCF8316A
proceeds to the RESYNC_EN judgement. If the motor is spinning in the reverse
direction, the MSS proceeds to the RVS_DR_EN judgement.
RESYNC_EN Judgement
If RESYNC_EN is set to 1b, MCF8316A
proceeds to Speed > Open to Closed Loop Handoff
(Resync) judgement. If RESYNC_EN is set to 0b, MSS proceeds to HIZ_EN
judgement.
Speed > Open to Closed Loop Handoff (Resync) Judgement
If motor speed > OPN_CL_HANDOFF_THR, MCF8316A uses the speed and position information
from the ISD state to transition to the closed loop state (see Motor Resynchronization ) directly. If motor speed < OPN_CL_HANDOFF_THR, MCF8316A transitions to open loop
state.
RVS_DR_EN Judgement
The MSS checks to see if the reverse drive function is enabled (RVS_DR_EN = 1). If it
is enabled, the MSS transitions to check speed of the motor in reverse direction. If
the reverse drive function is not enabled, the MSS advances to the HIZ_EN
judgement.
Speed > Open to Closed Loop Handoff (Reverse)
Judgement
The MSS checks to see if the reverse speed is high enough for MCF8316A
to decelerate in closed loop. Till the speed (in reverse direction) is high
enough, MSS stays in reverse closed loop deceleration. If speed is too low, then the
MSS transitions to reverse open loop deceleration.
Reverse Closed Loop, Open Loop Deceleration and Zero Speed Crossover
The MCF8316A
resynchronizes in the reverse direction, decelerates the motor in closed loop till
motor speed falls below the handoff threshold. (see Reverse Drive). When motor speed in reverse direction is too low, the MCF8316A
switches to open-loop, decelerates the motor in open-loop, crosses zero speed, and
accelerates in the forward direction in open-loop before entering closed loop operation
after motor speed is sufficiently high.
HIZ_EN Judgement
The MSS checks to determine whether the coast (Hi-Z) function is enabled (HIZ_EN =1).
If the coast function is enabled, the MSS advances to the coast routine. If the coast
function is disabled, the MSS advances to the BRAKE_EN judgement.
Coast (Hi-Z) Routine
The device coasts the motor by turning OFF all six MOSFETs for a certain time
configured by HIZ_TIME.
BRAKE_EN Judgement
The MSS checks to determine whether the brake function is enabled (BRAKE_EN =1). If
the brake function is enabled, the MSS advances to the brake routine. If the brake
function is disabled, the MSS advances to the motor start-up state (see Section 7.3.10.4).
Brake RoutineMCF8316A implements a brake by turning on all three (high-side
or low-side) MOSFETS for BRK_TIME.
Brake is applied either using
high-side or low-side MOSFETs based on BRK_MODE configuration.
Closed Loop StateIn this state, the MCF8316A
drives the motor with FOC.