关键字:TMS320F28x系列MCU的TPIC7312的汽车马达控制
tms320f28系列MCU用于电机驱动控制

来源:21IC.cn

作者:TMS320F28x系列MCU的TPIC7312的汽车马达控制

时间:2011-09-20

点击:

 Application Report 
Lit. Number – June 2011
TMS320F280x MCU 的的的 TPIC7312 的汽车的的的
Yanming Luo C2000/MCU
TMS320F28x 系列 MCU 被广泛用于电机驱动控制,也同样被用于汽车的各种电机驱动控制。
TPIC7312 内部具有 3 相 N-MOSFET 桥的驱动,并内部集成了用于电流检测的运算放大器,过
流、过压、欠压、短路等保护功能,另外内部集成了升压电路。微处理器可通过 SPI 接口实现对
TPIC7312 的配置和控制。本应用报告针对如何用 TMS320F28x 和 TPIC7312 的来驱动外部的
MOSFET 桥实现三相电机的驱动控制。相应的代码包括 TMS320F28x 对 TPIC7312 的控制和一
个三相交流电机的开环控制。可以直接从下面的链接下载。
1 ..............................................................1
2 TPIC7312 与与与 TMS320F28x 的硬件的的的 .................... 2
2.1 TPIC7312 与 TMS320F28x 的接口电路设计 ..................... 2
2.2 TPIC7312 外围电路设计 .......................................3
3 TMS320F28x TPIC7312 .......................................... 4
3.1 TPIC7312 的配置............................................. 4
3.2 TMS320F28x 与 TPIC7312 的 SPI 通讯.......................... 5
4 ............................................................. 8
................................................................ 9
图图图 1. TPIC7312 与与与 TMS320F28x 的连接示意图 的的的 .........3
图图图 2. TPIC7312 .............................................. 6
图图图 3. TPIC7312 .............................................. 7
图图图 4. F28x MCU TPIC7312 图图图.................................8
表表表 1. TPIC7312 ................................................ 5
表表表 2. F28x MCU 的的的 SPI ..................................... 5
TPIC7312 是专为三相低压直流无刷或永磁同步电机设计的驱动控制器,具有三相 N-MOSFET 的预驱
动电路,内部集成增强的故障诊断功能,如短路、过压、欠压、过流、过温等保护功能,当类似保护
出现时,可产生相应的标志通过 SPI 接口提供给控制微处理器,同时可按照设定关断 PWM 的输出驱
动来保护 MOSFET,详细技术规格描述如下:Overwrite this text with the Lit. Number 
2 基于 TMS320F280x 系列 MCU 的 TPIC7312 的汽车马达控制
 3 相桥式驱动器
 6 个独立可编程电流源的 N-MOSFET 驱动,便于输出斜率调整
 每个 MOSFET 驱动有独立的输入
 控制器工作电压范围从 4.75 到 35V
 集成升压转换器输出正确的电压保证驱动器在低电源电压下正常工作
 逻辑接口单元支持最低电压到 3V。
 PWM 频率可达 30KHz
 VDS 短路保护
 两个集成的低负载电流、高精度的电流检测放大器,并支持二级放大,第一级通过外部电阻设
置放大增益倍数,第二级可通过内部寄存器设置增益倍数。
 过压、欠压关断保护
 可编程死区时间保护
 三相实时端电压比较器
 过温报警、关断保护
 先进的故障检测和处理
 睡眠模式功能
 复位和使能功能
TMS320F28x 系列 32 位 MCU 可提供业界最高性能的控制解决方案,支持浮点与定运算,具有混合
的 16 位及 32 位指令集,具有同类微处理器最高的 C 编译器效率,支持单周期 32×32 位的乘法操
作,处理能力从 60MIPS 到 300 MIPS,所有 TMS320F28x 的 MCU 系列均实现软件代码兼容。F28x
微控制器通过提供实现高级控制技术(如三相电机的无传感器矢量控制)所需的集成度与性能,可显
著降低电机控制系统的总体成本。例如,通过采用对处理器性能要求更高的矢量控制技术,可大幅减
少电机与功率器件的尺寸与成本。C2000 可提供多种数字电机控制技术,如:
 变速控制,更高效率的电机
 磁场定向控制,更高效控制
 空间矢量 PWM,更高效率的功率驱动
 各种电机的无传感器控制,更低成本
 多轴控制,每个控制器可控制更多电机
 集成数字 PFC 与电机驱动在同一微处理器上,更丰富的系统功能
利用 TMS320F28x 的运算处理能力和 TPIC7312 的功率驱动功能可以方便地实现 BLDC、PMSM 等
低压电机的驱动控制,可广泛应用于汽车 EPS 等对安全要求高的应用场合,对电机驱动实现先进的控
制技术和提高多级保护机制。
2 TPIC7312 与与与 TMS320F28x 的硬件的的的
2.1 TPIC7312 与与与 TMS320F28x
TPIC7312 的所有逻辑数字口可以支持 3.3V 的输入、输出,因此 TPIC7312 与 F28x MCU 之间的连接
不需要任何逻辑电平转换器件。TPIC7312 与 TMS320F28x 的数字连接如下图 1 所示,安全模式配置
管脚(CSM)、驱动器使能脚(EN)、驱动器复位脚(RSTN)、升压功能使能脚(BEN)、驱动输
出控制脚(DRVOFF)都是输入管脚,直接有 TMS320F28x 的通用 GPIO 来控制,并将 GPIO 配置为
输出。Overwrite this text with the Lit. Number  
基于 TMS320F280x 系列 MCU 的 TPIC7312 的汽车马达控制 3 
错误输出脚(ERR)指示 TPIC7312 驱动器出错或保护被触发,并输出低电平,可以与 F28x 的 Trip 
Zone 的相应管脚(TZ1、TZ2 或 TZ3)相连接,用于 F28x 快速获知 TPIC7312 保护并及时关断 F28x 的
PWM 输出。
相比较器输出(PHxC)主要用于电机无传感器换向控制或诊断是否缺相用,可以作为上拉电阻到
3.3V 作为输出与 F28x 的 GPIO 直接连接,F28x 的 GPIO 配置为输入管脚或外部中断(XINT)管脚
来检测 PHxC 的状态,如果不需要这三个管脚可以将其用一个上拉电路直接上拉 3.3V。
模拟量输出脚(O1、O2、O3、O4)直接与 F28x 的 ADC 输入管脚相连来检测电机相电流。建议 O1 和
O2 分别接入对应 ADCINAn 和 ADCINBn,O3 和 O4 分别接入对应 ADCINAn 和 ADCINBn,从而实
现两相电流的同时采样,提高电机控制性能。
TPIC7312 通过 SPI 与 MCU 进行通讯,由 MCU 对 TPIC7312 的片上寄存器进行读写实现保护使能、
驱动电流、死区等配置。TPIC7312 作为 SPI 的从器件,F28x MCU 作为 SPI 的主器件,TPIC7312
的波特率最高支持到 4MBPS,可根据需要设置相应的波特率。
图图图 1.   TPIC7312 与与与 TMS320F28x
2.2 TPIC7312
TPIC7312 的外围电路设计如图 2 和图 3 所示,GHS1/GLS1、GHS2/GLS2、GHS3/GLS3 作为驱
动输出通过一个阻值比较小的电阻与三相桥的上/下端 MOSFET 的 G 极相连,而 SHS1/SLS1、
SHS2/SLS2、SHS3/SLS3 与上/下端 MOSFET 的 S 极相连用于提供驱动电压。VSH 与总线电压
的正极相连用于三相桥总线电压检测和保护。Overwrite this text with the Lit. Number 
4 基于 TMS320F280x 系列 MCU 的 TPIC7312 的汽车马达控制
总线(VS 和 VSH)电压范围应控制在 4.75V~35V 范围内,当总线电压超过 14V 最好不要使能内
部升压转换器。VDD_IO 管脚的电压应与 MCU 的 IO 电压相同,为 3.3V。
三相桥的每对桥建议在其附近放置一个电解电容和一个高频去耦电容,电解电容的容值决定于电
机电流,总线电压的波动。系统通过分流采样电阻和 TPIC7312 的内部运放来实现电机相电流的
采样,分流采样电阻的大小和功率有电机电流决定。
内部集成的第一级运算放大器需要通过外部电阻来设置放大增益倍数,具体连接方式如图 2 所
示,RI 管脚的输入作为运算放大器的偏置电压,由于 F28x MCU 的 ADC 支持 0~3.3V 的输入,因
此 RI 设置为 1.65V 的输入。为了提高电流检测精度,建议 RI 的 1.65 输入通过一个电压基准作为
输出,并要求基准输出部分、运算放大器的增益设置电阻的精度至少为 1%。本实例采用
TLV431B 作为基准输出,精度可以达到 0.5%。
TPIC7312 内部集成的升压(Boost)转化器需要通过外部接一个高频电感和续流的肖特基二极管
来实现升压允许驱动器可以工作在电压条件下。升压转换器的开关频率为 2.5MHz,通常推荐电感
值为 120uH,电感线圈饱和电流大于 500mA,输出滤波平滑电容值为 2.2uF。如果总线电压超过
MOSFET 驱动所需的电压(通常需大于 12V),可以通过 BEN 管脚来关断升压转换功能,从而
降低升压转换器的开关噪音对电流采样的影响。
在 TPIC7312 的 PCB 板设计中需要将电感、续流二极管、滤波平滑电容放置在离 TPIC7312 尽量
近的位置。GHSx/GLSx 和 SHSx/SLSx 的走线长度尽量相等,电流检测信号处理的运放为差分输
入,两个输入信号线需并行走线。需在 VCC3 和 VCC5 管脚附近各放置 4.7nF 的低 ESR 的电容
给内部电压调节器,电压调节器工作正常时,VCC3 和 VCC5 上输出电压为 3.0V 和 5.0V,仅提
供给驱动器内部使用,不可用于其它外部负载。
更多设计注意事项请参考 TPIC7312 的数据手册。
3 TMS320F28x TPIC7312
F28x MCU 通过 SPI 通讯来读写 TPIC7312 片上寄存器实现驱动器的配置和状态读入、通过
GPIO 来使能驱动器、升压转换器等,并通过 MCU 的 ADC 和 TPIC7312 的片上放大处理电路来
检测电机相电流。
3.1 TPIC7312
TPIC7312 片上寄存器实现对驱动器的模式、总线监控电压、死区、保护功能、电流放大器增益等
配置,具体寄存器的设置如下表 1 所示,其中配置寄存器中的相应设置可根据实际系统的需要更
改设置。另外通过读取相关状态寄存器中的内容来获取 TPIC7312 的运行状态,是否工作正常,
触发的保护类型。其中配置寄存器可读写,可在配置完成后读出其中内容来校验配置是否正确,
状态寄存器为只读。当出现配置寄存器 CFG1 中允许的保护时,ERR 管脚会出现相应的低电平信
号,F28x MCU 的 TZ 管脚可及时检测到低电平输入信号来根据设置关断 PWM 的输出。
由于 F28x MCU 支持 6 路互补式 PWM 输出,因此可设置 TPIC7312 为 6 路 PWM 模式,3 相桥
的每一个 MOSFET 由 1 路 PWM 驱动。如果所有 MCU 不支持互补的 PWM 输出,可采用 3 路
PWM 分别驱动 3 相桥的上端 MOSFET 的驱动,将 TPIC7312 的 PWM 模式设置为 3 路 PWM 模
式。Overwrite this text with the Lit. Number  
基于 TMS320F280x 系列 MCU 的 TPIC7312 的汽车马达控制 5 
驱动输出电流的上升、下降斜率可根据 MOSFET 的参数来确定。
表表表 1. 常用   TPIC7312
地址 寄存器 设置值 说明
0x01 配置寄存器 0(CFG0)  0x38  VDS 监控系数为 1(111),死区为 200-
300ns(000) 
0x02 配置寄存器 1(CFG1)  0x25  6 路 PWM 模式、ERR 和允许保护设置
0x03 配置寄存器 2(CFG2)  0x0F  G=8,第二级放大器增益为 8 
0x04 驱动电流斜率寄存器 0(CURR0)  0x24  HS0/1 的驱动电流上升、下降斜率为 570mA
0x05 驱动电流斜率寄存器 1(CURR1)  0x24  LS0/1 的驱动电流上升、下降斜率为 570mA 
0x06 驱动电流斜率寄存器 2(CURR2)  0x24  HS2 的驱动电流上升、下降斜率为 570mA 
0x07 驱动电流斜率寄存器 3(CURR3)  0x24  LS2 的驱动电流上升、下降斜率为 570mA 
3.2 TMS320F28x 与与与 TPIC7312 的的的 SPI
根据 TPIC7312 的 SPI 通讯协议,其作为从器件在上升沿接收数据,在下降沿发送数据,因此 F28x 
MCU 的 SPI 需配置为在上升沿发送数据,在下降沿接收数据。为了提高通讯的可靠性,可以设置 F28x
为半个时钟延时,设置 SPI 的字长为 16 位,波特率为 2Mbps。具体 F28x 的寄存器配置如下表 2 所示。
表表表 2.   F28x MCU 的的的 SPI
寄存器 设置值 说明
配置控制寄存器(SPICCR)  0x8F  上升沿输出,下降沿接收,字长 16 位
运行控制寄存器(SPICTL)  0x0E  主器件模式,运行时钟相移,不使能中断,允许
SPISTEA
发送 FIFO 控制寄存器(SPIFFTX)  0xE080 允许发送 FIFO,深度为 1,不,使能 FIFO 中断
接收 FIFO 控制寄存器(SPIFFRX)  0x200F 不使能 FIFO 中断
FIFO 控制寄存器(SPIFFCT)  0x003C 间隔时间设置
波特率寄存器(SPIBRR)  0x0013  80MHz 的 CPU,2Mbps,Application Report 
Lit. Number – June 2011
图图图 2.   TPIC7312Overwrite this text with the Lit. Number  
基于 TMS320F280x 系列 MCU 的 TPIC7312 的汽车马达控制 7 
图图图 3.   TPIC7312Application Report 
Lit. Number – June 2011
main()
DeviceInit()
F28x外设初始化(PLL, GPIO, 
Clock..)
ACMPWM_INIT_FUNC()
ADC_INIT_FUNC()
电机控制PWM、ADC初始化
TPIC7312_Spi_Init()
TPIC7312_INIT_FUNC()
F28x SPI设置,TPIC7312控制
脚设置和寄存器配置
中断配置和使能
主循环状态查询
10ms时基到?
主循环任务1处理 主循环任务2处理
结束
TPIC7312_Read()
读出TPIC7312配置和状态寄存
器值
设置值=读出值?
Yes
No
   
开始
控制管脚设置
EN=0, CSM=0, BEN=0, NCS=0
DRVOFF=0 
允许TPIC7312, EN=1
复位TPIC7312, RSTN=0
延时100us退出TPIC7312复位
RSTN=1
配置CFG0,CFG1,CFG2,
CURR0,CURR1,CURR2,CURR3
寄存器
结束
允许升压转换器和驱动输出
BEN=1, DRVOFF-0
图图图 4.   F28x MCU TPIC7312 图图图Overwrite this text with the Lit. Number  
基于 TMS320F280x 系列 MCU 的 TPIC7312 的汽车马达控制 9 
控制代码例程请到对应的链接下载,为 CCSV4 的项目工程,可支持 TMS320F2803x 和
TMS320F2806x 系列 MCU。并提供一个简单的三相交流电机的开环控制例程。
1. TMS320F2803x Piccolo Microcontrollers Datasheet ( SPRS584E ) 
2. TMS320F2803x Piccolo Serial Peripheral Interface (SPI) Reference Guide ( SPRUG71A ) 
3. TMS320F2806x Piccolo Microcontrollers Datasheet ( SPRS698A ) 
4. TMS320F2803x Piccolo Technical Reference Guide ( SPRUH18B ) 
5. 3 Phase Bridge Driver IC TPIC7312 Product Preview 
 
联系QQ: 724950058   506619111   1459212889
网站地图  |  法律声明  |  常见问题  |  联系我们
版权所有:杭州领卓科技有限公司 | 地址:浙江省杭州市拱墅区美都广场C座1616
全国业务受理热线:0571---81021290 粤ICP备09197923号