车门控制模块的整体设计
图1是门控模块的原理框图,其中微控制器XC164CS用于控制所有功率器件的开关动作,同时对系统状态进行定时监控,接收合适的故障反馈信号,并通过车载网络(如CAN总线)实现与中央车身控制器及其他车门控制器的故障信息和按键控制信息的交换,从而及时在用户界面上显示故障内容并对车门进行实时控制,确保了行车安全。
图1 门控模块整体原理框图
16位微控制器XC164CS基于增强 C166S V2结构,结合了RISC和CISC处理器的优点,并且通过MAC单元的DSP功能实现了强大的计算和控制能力。XC164CS把功能强劲的CPU内核和一整套强大的外设单元集成于一块芯片上,使得连接变得非常有效和方便。
电动车窗采用两个半桥智能功率驱动芯片BTS7960B组合成一个H桥驱动,中央门锁、后视镜和加热器的驱动芯片分别采用TLE6208-3G、 BTS7741G和BSP752R,车灯的驱动芯片采用BTS724。这些器件已提供了完善的故障检测及保护功能,因而避免了采用过多的分立元件,大大减小了模块体积,并提高了模块的EMC(电磁兼容)特性。
车门控制模块的电路主要由以下几部分组成:电源电路、电动车窗驱动电路、后视镜驱动电路、加热器驱动电路、中央门锁驱动电路、车灯驱动电路、CAN总线接口电路及按键接口电路等。
电动车窗的硬件设计
1 电动车窗驱动电路及启动特性
本车窗控制系统通过智能功率芯片BTS7960驱动直流电机转动,BTS7960的接口电路如图2所示。图中的引脚7960INH1、 7960IN1、7960IS1、7960INH2、7960IN2和7960IS2分别连接到XC164CS的I/0口P9.4、P1L.4、 P5.6、P9.5、P1L.5和P5.7。
图2 BTS7960接口连线图
BTS7960是应用于电机驱动的大电流半桥高集成芯片,它带有一个P沟道的高边MOSFET、一个N沟道的低边MOSFET和一个驱动IC。P沟道高边开关省去了电荷泵的需求, 因而减小了EMI。集成的驱动IC具有逻辑电平输入、电流诊断、斜率调节、死区时间产生和过温、过压、欠压、过流及短路保护的功能。BTS7960通态电阻典型值为16mΩ,驱动电流可达43A。因此即使在北方寒冷的冬天,仍能保证车窗的安全启动。
如图3所示,两片BTS7960构成全桥驱动车窗上升或下降。T1和T4导通时,车窗上升;T2和T3导通时,车窗下降。系统没有主动制动过程,车窗移好之后,上管触发信号停,通过该桥臂下管反并联二极管续流,直到电流为0A。续流过程持续250ms,足以满足车窗电机大功率的需求。为了避免车窗电机启动瞬间出现电流尖峰,通过对下桥臂开关管进行频率为20kHz的PWM信号控制,实现软启动功能。
2 BTS7960故障检测特性
如图3所示,BTS7960的芯片内部为一个半桥。INH引脚为高电平,使能BTS7960。IN引脚用于确定哪个MOSFET导通。IN=1且 INH=1时,高边MOSFET导通,OUT引脚输出高电平;IN=0且INH=1时,低边MOSFET导通,OUT引脚输出低电平。SR引脚外接电阻的大小,可以调节MOS管导通和关断的时间,具有防电磁干扰的功能。IS引脚是电流检测输出引脚。
图3 全桥驱动电路示意图
BTS7960的引脚IS具有电流检测功能。正常模式下,从IS引脚流出的电流与流经高边MOS管的电流成正比,若RIS=1kΩ,则V IS=I load/8.5;在故障条件下,从IS引脚流出的电流等于I IS(lim) (约4.5mA),最后的效果是IS为高电平。如图4所示,图(a)为正常模式下IS引脚电流输出,图(b)为故障条件下IS引脚上的电流输出。
BTS7960短路故障实验的实验条件如下:+12.45V电池电压,+5V电源供电,2.0m短路导线(R=0.2Ω),横截面积为0.75 mm,连接1kΩ电阻和一个发光二极管。V S与电池正极间导线长1.5m(R=0.15Ω)。如图5所示,其中V IS是IS引脚对地的电压、V L是OUT引脚对地电压,I L为发生对地短路故障时,流过BTS7960的短路电流。
(a) (b)
图4 BTS7960电流检测引脚IS的工作原理图
无论是先上电后短路还是先短路后上电,BTS7960都呈现出相同的保护特性,所以下文将只就其一进行讲述。
图5 BTS7960的对地短路实验电路图
图6和图7分别为BTS7960先短路后上电短路实验波形图的前半部分和后半部分。短路瞬间输出端电流迅速上升,在80μs的时间内,电流上升到峰值,可达62A左右。此时,BTS7960检测出短路故障,关断MOS管,输出电流下降直至0A, 紫色箭头所指部分有明显的关断,图中虚线所夹部分为MOS管的关断及维持关断的过程,整个过程持续时间约为80μs。短路导通瞬间,OUT引脚输出电压为 5V左右,这是短路导线与电池和地之间的总电阻的分压值;MOS管关断期间,OUT引脚输出电压为0V。在电流急剧下降的瞬间,短路导线上感应出微弱的反向电动势,所以OUT引脚输出电压会呈现出短时间负电压。状态检测引脚IS在5V左右上下波动,其具有随短路电流上下波动的特点。整个短路过程中, BTS7960周期性的关断MOS管,防止短路电流使芯片持续升温,导致芯片过热烧毁,从而有效地保护了芯片。最后,BTS7960完全关断MOS管,短路电流缓降为0A,IS管脚在MOS管完全关断后约500μs由自身的冷却恢复至正常电平。
图6 BTS7960短路实验波形图前半部分
图7 BTS7960短路实验波形后半部分
电动车窗的软件设计
1 驱动芯片BTS7960的软件设计
电动车窗部分,在硬件上通过BTS7960驱动直流电机转动,使窗上升或下降。采用两片BTS7960B构成全桥工作。
BTS7960与微控制器的接口信号包括IN1、IN2、INH1和INH2;IS1和IS2是电流检测信号。
车窗上升:IN1=1,IN2=0,INH1/2=1;车窗下降:IN1=0,IN2=1,INH1/2=1。
整个驱动过程可分为软启动、满PWM输出、续流和停止四个阶段。车窗升降过程通过对下桥臂开关管进行PWM控制实现软启动功能,PWM频率为20kHz,软启动持续200ms,在这一过程中,占空比逐渐增大,从0%增加到100%,分成10段,每段持续时间为20ms。PWM信号是施加在下管所在桥臂的 INH引脚上,该桥臂关断(INH=0)时电流通过上管的反并二极管续流。经PWM信号实现软启动后,电动车窗启动时的电流波形如图8所示。从图中可以看出,电流尖峰被有效抑制。
本系统没有主动制动过程,车窗移好之后,开关管还会工作大约250ms,这是续流过程,这期间,上管触发信号停,通过该桥臂下管反并联二极管续流(这时需继续给原来另一桥臂的下管触发信号,如正续流时:IN1=1,INH1=0,IN2=0,INH2=1),直到电流为0。但是如果出现过热,这种续流过程就不需要了。
电机堵转是不允许的,因为这样会出现过流。BTS7960自身可以检测开关管的电流,通过2.2kΩ的采样电阻电流进行电流 /电压转换,采样电压经过简单的RC滤波网络,经过一个保护电阻(未加入)送到AN0/AN1进行模数转换。当检测到电流大于15A时,就可以判断出电机正处于堵转状态,此时微控制器停止触发电机(仍需续流),用户可以重新启动车窗。
车窗部分要检测的故障有上桥臂的两个开关管过热和负载开路。检测方法一是通过BTS7960内置的温度检测功能来检测上管的过热,发生过热时器件自动关断所有输出电路,且IS引脚输出电平为高;二是需要辅助晶体管检测开路,通过检测IS引脚电流值可以实现,需要微控制器提供CTRLWIN信号。
图8 电动车窗软启动电流波形
2 电动车窗主程序的软件设计
本电动车窗控制系统的软件控制是基于状态的转换。通过比较系统状态与控制命令做出判断,确定出目前系统应该执行的动作。程序中将电动车窗的运行状态做了如下划分:WINDOW_OFF、WINDOW_UP_PWM、WINDOW_UP、WINDOW_UP_FREE、WINDOW_UP_STOP、 WINDOW_DOWN_PWM、WINDOW_DOWN、WINDOW_DOWN_FREE和WINDOW_DOWN_STOP。当电动车窗处于OFF 状态,接收到上升或下降的命令,程序会使车窗先进入PWM渐增的状态,实现软启动。当达到PWM满占空比时,车窗才转入UP或DOWN的状态。若在PWM 渐增状态或PWM满占空比运行时接收到要让电动车窗停下或要反方向转的命令,程序会让车窗进入续流状态。续流完成,车窗进入STOP状态。在任何状态下如果检测到开路或过压等故障,车窗会进入OFF状态。