SLVSCP6H July   2014  – June  2020 DRV10983

PRODUCTION DATA.  

  1. Features
  2. Applications
  3. Description
    1.     Application Schematic
  4. Revision History
  5. Description (continued)
  6. Pin Configuration and Functions
    1.     Pin Functions
  7. Specifications
    1. 7.1 Absolute Maximum Ratings
    2. 7.2 ESD Ratings
    3. 7.3 Recommended Operating Conditions
    4. 7.4 Thermal Information
    5. 7.5 Electrical Characteristics
    6. 7.6 Typical Characteristics
  8. Detailed Description
    1. 8.1 Overview
    2. 8.2 Functional Block Diagram
    3. 8.3 Feature Description
      1. 8.3.1 Regulators
        1. 8.3.1.1 Step-Down Regulator
        2. 8.3.1.2 3.3-V and 1.8-V LDO
      2. 8.3.2 Protection Circuits
        1. 8.3.2.1 Thermal Shutdown
        2. 8.3.2.2 Undervoltage Lockout (UVLO)
        3. 8.3.2.3 Overcurrent Protection (OCP)
        4. 8.3.2.4 Lock
      3. 8.3.3 Motor Speed Control
      4. 8.3.4 Sleep or Standby Condition
      5. 8.3.5 Non-Volatile Memory
    4. 8.4 Device Functional Modes
      1. 8.4.1  Motor Parameters
        1. 8.4.1.1 Motor Phase Resistance
        2. 8.4.1.2 BEMF Constant
      2. 8.4.2  Starting the Motor Under Different Initial Conditions
        1. 8.4.2.1 Case 1 – Motor Is Stationary
        2. 8.4.2.2 Case 2 – Motor Is Spinning in the Forward Direction
        3. 8.4.2.3 Case 3 – Motor Is Spinning in the Reverse Direction
      3. 8.4.3  Motor Start Sequence
        1. 8.4.3.1 ISD
        2. 8.4.3.2 Motor Resynchronization
        3. 8.4.3.3 Reverse Drive
        4. 8.4.3.4 Motor Brake
        5. 8.4.3.5 Motor Initialization
          1. 8.4.3.5.1 Align
          2. 8.4.3.5.2 Initial Position Detect (IPD)
            1. 8.4.3.5.2.1 IPD Operation
            2. 8.4.3.5.2.2 IPD Release Mode
            3. 8.4.3.5.2.3 IPD Advance Angle
          3. 8.4.3.5.3 Motor Start
        6. 8.4.3.6 Start-Up Timing
      4. 8.4.4  Start-Up Current Setting
        1. 8.4.4.1 Start-Up Current Ramp-Up
      5. 8.4.5  Closed Loop
        1. 8.4.5.1 Half Cycle Control and Full Cycle Control
        2. 8.4.5.2 Analog Mode Speed Control
        3. 8.4.5.3 Digital PWM Input Mode Speed Control
        4. 8.4.5.4 I2C Mode Speed Control
        5. 8.4.5.5 Closed Loop Accelerate
        6. 8.4.5.6 Control Coefficient
        7. 8.4.5.7 Commutation Control Advance Angle
      6. 8.4.6  Current Limit
        1. 8.4.6.1 Acceleration Current Limit
      7. 8.4.7  Lock Detect and Fault Handling
        1. 8.4.7.1 Lock0: Lock Detection Current Limit Triggered
        2. 8.4.7.2 Lock1: Abnormal Speed
        3. 8.4.7.3 Lock2: Abnormal Kt
        4. 8.4.7.4 Lock3 (Fault3): No Motor Fault
        5. 8.4.7.5 Lock4: Open Loop Motor Stuck Lock
        6. 8.4.7.6 Lock5: Closed Loop Motor Stuck Lock
      8. 8.4.8  AVS Function
        1. 8.4.8.1 Mechanical AVS Function
      9. 8.4.9  PWM Output
      10. 8.4.10 FG Customized Configuration
        1. 8.4.10.1 FG Output Frequency
        2. 8.4.10.2 FG Open-Loop and Lock Behavior
      11. 8.4.11 Diagnostics and Visibility
        1. 8.4.11.1 Motor Status Readback
        2. 8.4.11.2 Motor Speed Readback
          1. 8.4.11.2.1 Two-Byte Register Readback
        3. 8.4.11.3 Motor Electrical Period Readback
        4. 8.4.11.4 BEMF Constant Readback
        5. 8.4.11.5 Motor Estimated Position by IPD
        6. 8.4.11.6 Supply Voltage Readback
        7. 8.4.11.7 Speed Command Readback
        8. 8.4.11.8 Speed Command Buffer Readback
        9. 8.4.11.9 Fault Diagnostics
    5. 8.5 Register Maps
      1. 8.5.1 I2C Serial Interface
      2. 8.5.2 Register Map
      3. 8.5.3 Register Definition
        1. Table 9. Register Description
  9. Application and Implementation
    1. 9.1 Application Information
    2. 9.2 Typical Application
      1. 9.2.1 Design Requirements
      2. 9.2.2 Detailed Design Procedure
      3. 9.2.3 Application Curves
  10. 10Power Supply Recommendations
  11. 11Layout
    1. 11.1 Layout Guidelines
    2. 11.2 Layout Example
  12. 12Device and Documentation Support
    1. 12.1 Device Support
      1. 12.1.1 Third-Party Products Disclaimer
    2. 12.2 Documentation Support
      1. 12.2.1 Related Documentation
    3. 12.3 Trademarks
    4. 12.4 Electrostatic Discharge Caution
    5. 12.5 Receiving Notification of Documentation Updates
    6. 12.6 Community Resources
    7. 12.7 Glossary
  13. 13Mechanical, Packaging, and Orderable Information

Package Options

Mechanical Data (Package|Pins)
Thermal pad, mechanical data (Package|Pins)
Orderable Information

Register Definition

Table 9. Register Description

Register Data Description
Name Address Bits
SpeedCtrl1(1) 0x00 7:0 SpdCtrl[7:0] 8 LSB of a 9-bit value used for the motor speed.
If OverRide = 1, the user can directly control the motor speed by writing to the register through I2C.
SpeedCtrl2(1) 0x01 7 OverRide Use to control the SpdCtrl [8:0] bits. If OverRide = 1, the user can write the speed command through I2C.
6:1 N/A N/A
0 SpdCtrl [8] MSB of a 9-bit value used for the motor speed.
If OverRide = 1, user can directly control the motor speed by writing to the register through I2C.
The MSB should be written first. Digital takes a snapshot of the MSB when LSB is written.
DevCtrl(1) 0x02 7:0 enProgKey[7:0] 8-bit byte use to enable programming in the EEPROM.
To program the EEPROM, enProgKey = 1011 0110 (0xB6), followed immediately by eeWrite = 1. Otherwise, enProgKey value is reset.
EECtrl(1) 0x03 7 sleepDis Set to 1 to disable entering into sleep or standby mode.
6 SIdata Set to 1 to enable the writing to the configuration registers.
5 eeRefresh Copy EEPROM data to register.
4 eeWrite Bit used to program (write) to the EEPROM.
3:0 N/A N/A
Status(2) 0x10 7 OverTemp Bit to indicate device temperature is over its limits.
6 Slp_Stdby Bit to indicate that device went into sleep or standby mode.
5 OverCurr Bit to indicate that a phase to phase overcurrent event happened. This is a sticky bit, once written, it stays high even if overcurrent signal goes low. This bit is cleared on Read.
4 MtrLck Bit to indicate that the motor is locked.
3 N/A N/A
2 N/A N/A
1 N/A N/A
0 N/A N/A
Motor Speed1(2) 0x11 7:0 MotorSpeed [15:8] 16-bit value indicating the motor speed. Always read the MotorSpeed1 first.
Velocity (Hz) = \{MotorSpeed1:MotorSpeed2\} / 10
For example: MotorSpeed1 = 0x01, MotorSpeed2 = 0xFF,
Motor Speed = 0x01FF (511) / 10 = 51 Hz
Motor Speed2(2) 0x12 7:0 MotorSpeed [7:0]
Motor Period1(2) 0x13 7:0 MotorPeriod [15:8] 16-bit value indicating the motor period. Always read the MotorPeriod1 first.
tELE_PERIOD (µs) = \{MotorPeriod1:MotorPeriod2\} × 10
For example: MotorPeriod1 = 0x01, MotorPeriod2 = 0xFF,
Motor Period = 0x01FF (511) × 10 = 5.1 ms
Motor Period2(2) 0x14 7:0 MotorPeriod [7:0]
MotorKt1(2) 0x15 7:0 MotorKt[15:8] 16-bit value indicating the motor measured velocity constant. Always read the MotorKt1 first.
Ktc (V/Hz)= \{MotorKt1:MotorKt2\} / 2 /1442
\{MotorKt1:MotorKt2\} corresponding to 2 × Ktph_dig
MotorKt2(2) 0x16 7:0 MotorKt[7:0]
Motor Current1(2) 0x17 7:3 N/A 11-bit value indicating the motor peak current. .
Always read the MotorCurrent1 first.
If (\{ MotorCurrent[10:0]\}) >=1023 Current (A) = 3 × (\{MotorCurrent[10:0]\}) - 1023) / 512
else
Current (A) = 3 × (\{MotorCurrent[10:0]\}) / 512
For example:
Motor Current1= 0x04;
Motor Current2= 0x3C;
Motor current (A) = 3A * (0x43C-0x3FF) / 512 = 0.357 A
2:0 MotorCurrent[10:8]
Motor Current2(2) 0x18 7:0 MotorCurrent[7:0]
IPDPosition(2) 0x19 7:0 IPDPosition [7:0] 8-bit value indicating the estimated motor position during IPD plus the IPD advance angle (see Table 7)
Supply Voltage(2) 0x1A 7:0 SupplyVoltage [7:0] 8-bit value indicating the supply voltage
VPOWERSUPPLY (V) = SupplyVoltage[7:0] × 30 V /256
For example, SupplyVoltage[7:0] = 0x67,
VPOWERSUPPLY (V) = 0x67 (102) × 30 / 256 = 12 V
SpeedCmd(2) 0x1B 7:0 SpeedCmd[7:0] 8-bit value indicating the speed command based on analog or PWMin or I2C.
FF indicates 100% speed command.
spdCmd Buffer(2) 0x1C 7:0 spdCmdBuffer [8:1] 8-bit value indicating the speed command after buffer output.
FF indicates 100% speed command.
FaultCode(2) 0x1E 7:6 N/A N/A
5 Lock5 Stuck in closed loop
4 Lock4 Stuck in open loop
3 Fault3 No motor
2 Lock2 Kt abnormal
1 Lock1 Speed abnormal
0 Lock0 Lock detection current limit
Motor Param1(3) 0x20 7 DoubleFreq 0 = Set driver output frequency to 25 kHz
1 = Set driver output frequency to 50 kHz
6:0 Rm[6:0] Rm[6:4] : Number of the Shift bits of the motor phase resistance
Rm[3:0] : Significant value of the motor phase resistance
Rmdig = R_(ph_ct) / 0.00967
Rmdig = Rm[3:0] ≪ Rm[6:4] SeeMotor Phase Resistance and Table 2
Motor Param2(3) 0x21 7 AdjMode Closed loop adjustment mode setting
0 = Full cycle adjustment
1 = Half cycle adjustment
6:0 Kt[6:0] Kt[6:4] = Number of the Shift bits of BEMF constant
Kt[3:0] = Significant value of the BEMF constant
〖Kt〗_(ph_dig) = 1090×〖Kt〗_ph
〖Kt〗_(ph_dig) = Kt[3:0] ≪ Kt[4:6]
See BEMF Constant and Table 3.
Motor Param3(3) 0x22 7 CtrlAdvMd Motor commutate control advance
0 = Fixed time
1 = Variable time relative to the motor speed and VCC
6:0 Tdelay[6:0] tdelay [6:4] = Number of the Shift bits of LRTIME
tdelay [3:0] = Significant value of LRTIME
tSETTING = 2.5 µs × \{TCtrlAdv[3:0] << TCtrlAdv[6:4]\}
SysOpt1(3) 0x23 7:6 ISDThr[1:0] ISD stationary judgment threshold
00 = 6 Hz (80 ms, no zero cross)
01 = 3 Hz (160 ms, no zero cross)
10 = 1.6 Hz (320 ms, no zero cross)
11 = 0.8 Hz (640 ms, no zero cross)
5:4 IPDAdvcAgl [1:0] Advancing angle after inductive sense
00 = 30°
01 = 60°
10 = 90°
11 = 120°
3 ISDen 0 = Initial speed detect (ISD) disable
1 = ISD enable
2 RvsDrEn 0 = Reverse drive disable
1 = Reverse drive enable
1:0 RvsDrThr[1:0] The threshold where device starts to process reverse drive (RvsDr) or brake.
00 = 6.3 Hz
01 = 13 Hz
10 = 26 Hz
11 = 51 Hz
SysOpt2(3) 0x24 7:6 OpenLCurr[1:0] Open loop current setting.
00 = 0.2 A
01 = 0.4 A
10 = 0.8 A
11 = 1.6 A
5:3 OpLCurrRt:[2:0] Open-loop current ramp-up rate setting
000 = 6 VCC/s
001 = 3 VCC/s
010 = 1.5 VCC/s
011 = 0.7 VCC/s
100 = 0.34 VCC/s
101 = 0.16 VCC/s
110 = 0.07 VCC/s
111 = 0.023 VCC/s
2:0 BrkDoneThr [2:0] Braking mode setting
000 = No brake (BrkEn = 0)
001 = 2.7 s
010 = 1.3 s
011 = 0.67 s
100 = 0.33 s
101 = 0.16 s
110 = 0.08 s
111 = 0.04 s
SysOpt3(3) 0x25 7:6 CtrlCoef[1:0] Control coefficient
00 = 0.25
01 = 0.5
10 = 0.75
11 = 1
5:3 StAccel2[2:0] Open loop start-up accelerate (second order)
000 = 57 Hz/s2
001 = 29 Hz/s2
010 = 14 Hz/s2
011 = 6.9 Hz/s2
100 = 3.3 Hz/s2
101 = 1.6 Hz/s2
110 = 0.66 Hz/s2
111 = 0.22 Hz/s2
2:0 StAccel[2:0] Open loop start-up accelerate (first order)
000 = 76 Hz/s
001 = 38 Hz/s
010 = 19 Hz/s
011 = 9.2 Hz/s
100 = 4.5 Hz/s
101 = 2.1 Hz/s
110 = 0.9 Hz/s
111 = 0.3 Hz/s
SysOpt4(3) 0x26 7:3 Op2ClsThr[4:0] Open to closed loop threshold
0xxxx = Range 0: n × 0.8 Hz
00000 = N/A
00001 = 0.8 Hz
00111 = 5.6 Hz
01111 = 12 Hz
1xxxx = Range 1: (n + 1) × 12.8 Hz
10000 = 12.8 Hz
10001 = 25.6 Hz
10111 = 192 Hz
11111 = 204.8 Hz
2:0 AlignTime[2:0] Align time.
000 = 5.3 s
001 = 2.7 s
010 = 1.3 s
011 = 0.67 s
100 = 0.33 s
101 = 0.16 s
110 = 0.08 s
111 = 0.04 s
SysOpt5(3) 0x27 7 FaultEn3 (LockEn[3]) No motor fault. Enabled when high
6 LockEn[2] Abnormal Kt. Enabled when high
5 LockEn[1] Abnormal speed. Enabled when high
4 LockEn[0] Lock detection current limit. Enabled when high
3 AVSIndEn Inductive AVS is not functional in DRV10983. It is recommended to set this bit to 0.
2 AVSMEn Mechanical AVS enable. Enabled when high
1 AVSMMd Mechanical AVS mode
0 = AVS to VCC
1 = AVS to 24 V
0 IPDRlsMd IPD release mode
0 = Brake when inductive release
1 = Hi-z when inductive release
SysOpt6(3) 0x28 7:4 SWiLimitThr [3:0] Acceleration current limit threshold
0000 = No acceleration current limit
0001 = 0.2-A current limit
xxxx = n × 0.2 A current limit
3:1 HWiLimitThr [2:0] Lock detection current limit threshold
(n + 1) × 0.4 A
0 N/A N/A
SysOpt7(3) 0x29 7 LockEn[5] Stuck in closed loop (no zero cross detected). Enabled when high
6:4 ClsLpAccel[2:0] Closed loop accelerate
000 = Inf fast
001 = 48 VCC/s
010 = 48 VCC/s
011 = 0.77 VCC/s
100 = 0.37 VCC/s
101 = 0.19 VCC/s
110 = 0.091 VCC/s
111 = 0.045 VCC/s
3:0 Deadtime[3:0] Dead time between HS and LS gate drive for motor phases
0000 = 40 ns
xxxx = (n + 1) × 40 ns. Recommended minimum dead time is 400 ns for 24-V VCC and 360 ns for 12-V VCC.
SysOpt8(3) 0x2A 7:4 IPDCurrThr[3:0] IPD (inductive sense) current threshold
0000 = No IPD function. Align and Go
0001 = 0.4-A current threshold.
xxxx = 0.2 A × (n + 1) current threshold.
3 LockEn[4] Open loop stuck (no zero cross detected). Enabled when high
2 VregSel Buck regulator voltage select
0: Vreg = 5 V
1: Vreg = 3.3 V
1:0 IPDClk[1:0] Inductive sense clock
00 = 12 Hz;
01 = 24 Hz;
10 = 47 Hz;
11 = 95 Hz
SysOpt9(3) 0x2B 7:6 FGOLsel[1:0] FG open loop output select
00 = FG outputs in both open loop and closed loop
01 = FG outputs only in closed loop
10 = FG outputs closed loop and the first open loop
11 = Reserved
5:4 FGcycle[1:0] FG cycle select
00 = 1 pulse output per electrical cycle
01 = 2 pulses output per 3 electrical cycles
10 = 1 pulse output per 2 electrical cycles
11 = 1 pulse output per 3 electrical cycles
3:2 KtLckThr[1:0] Abnormal Kt lock detect threshold
00 = Kt_high = 3/2Kt. Kt_low = 3/4Kt
01 = Kt_high = 2Kt. Kt_low = 3/4Kt
10 = Kt_high = 3/2Kt. Kt_low = 1/2Kt
11 = Kt_high = 2Kt. Kt_low = 1/2Kt
1 SpdCtrlMd Speed input mode
0 = Analog input expected at SPEED pin
1 = PWM input expected at SPEED pin
0 CLoopDis 0 = Transfer to closed loop at Op2ClsThr speed
1 = No transfer to closed loop. Keep in open loop