Figure 6-18 shows
the motor-start sequence implemented in the MCT8316A-Q1 device.
Power-On State
This is the initial state of the Motor Start Sequence (MSS) when MCT8316A-Q1 is powered on.
In this state, MCT8316A-Q1 configures the peripherals, initializes the algorithm parameters
from EEPROM and prepares for driving the motor.
Sleep/Standby
In this state, SPEED_REF/POWER_REF/TARGET_DUTY
is set to zero and MCT8316A-Q1 is either in sleep or standby mode depending on DEV_MODE and
SPEED/WAKE pin voltage.
SPEED_REF/POWER_REF/TARGET_DUTY > 0
Judgement
When SPEED_REF/POWER_REF/TARGET_DUTY is set to
greater than zero, MCT8316A-Q1 exits the sleep/standby state and proceeds to ISD_EN judgement.
As long as SPEED_REF is set to zero, MCT8316A-Q1 stays in sleep/standby state.
ISD_EN Judgement
MCT8316A-Q1 checks to see if the initial speed detect (ISD) function is enabled (ISD_EN = 1b).
If ISD is enabled, MSS proceeds to the BEMF < STAT_DETECT_THR judgement. Instead, if
ISD is disabled, the MSS proceeds directly to the BRAKE_EN judgement.
BEMF < STAT_DETECT_THR or BEMF < FG_BEMF_THR Judgement
ISD determines the initial condition (speed, angle, direction of spin) of the motor
(see Section 6.3.10.1). If motor
is deemed to be stationary (BEMF < STAT_DETECT_THR or BEMF < FG_BEMF_THR), the MSS
proceeds to second BEMF < STAT_DETECT_THR
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 MCT8316A-Q1 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, MCT8316A-Q1 proceeds
to BEMF > RESYNC_MIN_THRESHOLD judgement. If RESYNC_EN is set to 0b, MSS
proceeds to HIZ_EN judgement.
BEMF > RESYNC_MIN_THRESHOLD Judgement
If motor speed is such that BEMF > RESYNC_MIN_THRESHOLD, MCT8316A-Q1 uses the speed and position information from ISD to transition to the
closed loop state (see Section 6.3.10.2) directly. If BEMF < RESYNC_MIN_THRESHOLD, MCT8316A-Q1 proceeds to BEMF < STAT_DETECT_THR judgement.
BEMF < STAT_DETECT_THR Judgement
If motor speed is such that BEMF > STAT_DETECT_THR, MCT8316A-Q1 proceeds to motor coast timeout. If BEMF < STAT_DETECT_THR, MCT8316A-Q1 proceeds to STAT_BRK_EN judgement.
Motor Coast Timeout
MCT8316A-Q1 waits for 200000 PWM cycles for the motor to
coast down to a speed where BEMF < STAT_DETECT_THR; after 200000 PWM cycles lapse in
the motor coast state, MCT8316A-Q1 proceeds to STAT_BRK_EN
judgement irrespective of BEMF. If BEMF < STAT_DETECT_THR during motor coast before
the 200000 cycle timeout, MCT8316A-Q1 proceeds to STAT_BRK_EN
judgement immediately.
STAT_BRK_EN Judgement
The MSS checks if the stationary brake function is enabled (STAT_BRK_EN =1b). If the
stationary brake function is enabled, the MSS advances to the stationary brake routine.
If the stationary brake function is disabled, the MSS advances to motor start-up state
(see Section 6.3.10.4).
Stationary Brake Routine
The stationary brake routine can be used to ensure the motor is completely stationary
before attempting to start the motor. The stationary brake is applied by turning on all
three low-side driver MOSFETs for a time configured by STARTUP_BRK_TIME.
RVS_DR_EN Judgement
The MSS checks to see if the reverse drive function is enabled (RVS_DR_EN = 1b). If it
is enabled, the MSS transitions to check speed of the motor in reverse direction. If the
reverse drive function is not enabled (RVS_DR_EN = 0b), the MSS advances to the HIZ_EN
judgement.
Speed > MIN_DUTY Judgement
The MSS checks if the speed (in reverse direction) is higher than the speed at
MIN_DUTY - till the speed (in reverse direction) is higher than the speed at MIN_DUTY,
MSS stays in reverse closed loop deceleration. When speed (in reverse direction) drops
below the speed at MIN_DUTY, the MSS transitions to reverse open loop deceleration.
Reverse Open Loop Deceleration and Zero Speed Crossover
In reverse open loop deceleration, the MCT8316A-Q1
decelerates the motor in open-loop till speed reaches zero. At zero speed, direction
changes and MCT8316A-Q1 begins open loop acceleration.
HIZ_EN Judgement
The MSS checks to determine whether the coast (Hi-Z) function is enabled (HIZ_EN =
1b). If the coast function is enabled (HIZ_EN = 1b), the MSS advances to the coast
routine. If the coast function is disabled (HIZ_EN = 0b), 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 = 1b). If
the brake function is enabled (BRAKE_EN = 1b), the MSS advances to the brake routine. If
the brake function is disabled (BRAKE_EN = 0b), the MSS advances to the motor start-up
state (see Section 6.3.10.4).
Brake Routine
MCT8316A-Q1 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
In this state, the MCT8316A-Q1 drives the motor with sensorless trapezoidal commutation based
on either zero cross detection or BEMF integration.