摘要: 现代电动车辆中电控技术应用广泛,各类设备运行参数共享成为整车系统的特点。(CAN)总线的数据交换速度高、抗噪性强,成为车辆内部通信网络的首选。介绍了集成CAN控制器的高性能微处理器P8xC592的功能和特点及其在电动车辅助三相逆变电源中的应用。
关键词:CAN总线 P8xC592微处理器 三相逆变电源
电动车由于储能设备容量有限,在运行过程中对电能流向管理十分严格。精确的电能管理可以延长车辆运行里程,减少电池充电频率,从而节约运行成本。车载能量管理系统需要随时监控电池电压、电机输出功率以及其它设备的用电情况。同时,电动车电子控制系统的动态信息必须具有实时性,各子系统需要将车辆的公共数据实时共享,如电机转速、车轮转换、油门踏板位置
等。但不同控制单元的控制周期不同,数据转换速度、
各控制命令优先级也不同,因此需要一种具有优先权竞争模式的数据交换网络,并且本身具有极高的通信速率。此外,作为一种载人交通工具,电动汽车必须具有极高的运行稳定性,整车通讯系统必须具有很强的容错能力和快速处理能力。
德国Bosch公司为了解决现代车辆中众多的控制和数据交换问题,开发出一种CAN(Controller Area Network)现场总线通讯结构,广泛应用在常规燃油汽车上,如BENZ、BMW、PORSCHE。同时,CAN总线也被认为是电动车最佳通讯结构,我国“863计划”关于电动汽车的说明中已经明确提出,新申报的电动车开发项目必须采用CAN总线通讯模式。
CAN总线结构是一种有效支持分布式控制或实时控制的串行通讯网络。图1为一个典型的电动汽车CAN总线结构示意图,包括整车动力部分的主电机控制器、电池组管理系统、人机界面显示系统等多个设备,这些子系统之间通过CAN进行数据通讯和命令传输。每个节点设备都能够在脱离CAN总线的情况下独立完成自身系统的运行,从而满足车辆运行安全性的需要。同时,CAN总线也不会因为某个设备的脱离而出现系统结构崩溃的现象。
本文介绍的电动车用三相逆变电源属于图1中的车载辅助逆变电源。称为“辅助电源”是因为它的负载为电动车上的一些辅助交流电机,
如汽车转向助力油泵、刹车气泵、冷却水循环中的水泵以及空调系统中的压缩机等。对该三相逆变电源的工作要求是:正常运行情况时独立维持辅助电机的稳定运行,能够根据上位机的指令适当调整工作状态;在负载发生故障(如电机短路)时迅速关系输出、安全关机,同时能够通过CAN总线向上位机和其它节点报告自身故障,引发车辆各系统的相关操作(例如:位于仪表台上的人机界面显示系统将立即显示警告信息,报告车辆故障部位,并提示驾驶员减速;而整车能量管理系统则发出命令关闭辅助逆变电源的输入,并将接收到的错误代码和当前运行参数进行保存,便于维修人员进行故障诊断)。
由此看出,虽然选择一个通用变频器进行改装可以实现车用三相逆变电源的基本功能,但是要做成支持CAN总线各种功能的智能化节点必须从底层进行开发,直接选择支持CAN总线接口的控制芯片,在控制程序中集成CAN通讯功能,适应整车通讯的要求。
1 P8xC592芯片介绍
在电动车用辅助逆变电源的设计中,控制电路不仅要支持CAN总线通讯,还要对负载电压、电流等模拟量进行检测,进行各种逻辑判断,并驱动其它芯片完成三相逆变功能。因此简单选择一个单独的CAN控制器是不够的,最方便的选择是使用带有在片CAN功能的控制器。
P8xC592是由PHILIPS公司开发生产的8位微处理器,主要包括:
·一个80C51中央处理单元(CPU)
·两个标准的16位定时/计数器
·包括四个捕获和三个比较寄存器的16位定时器/计数器
·具有8路模拟量输入的10位A/D变换器
·两路分辨率为8位的脉冲宽度调制输出
·具有两级优先权的15个中断源
·五组8位I/O端口和一组与A/D变换器模拟量输入共用的8位输入口
·与内部RAM进行DMA数据传送的CAN控制器
·具有总线故障管理功能的1Mbps CAN控制器
·与标准80C51兼容的全双工UART
P8xC592共有68个管脚,其中包括6个8位I/O口,P0~P3与80C51相同,但P1可以用作一些特殊功能,包括4个捕获输入端、外部计数器输入端、外部计数器复位输入端和CAN接口的CTX0和CTX1输出端。并行I/O口P4的功能与P1、P2和P3相同。P5口是不是有输出功能的并行输入口,主要用作A/D变换器的模拟量输入端。
P8xC592内含CAN控制器,
包括为实现高性能串行网络通信所必需的所有硬件,从而能够控制通信流顺利通过CAN协议的局域网。为了避免出现混乱,芯片中增加的CAN控制器对于CPU是作为能够双方独立工作的存储器映像外围设备出现的,即可以把P8xC592简单设想为两个独立工作器件的集成体。如果关闭CAN控制器部分的功能,该芯片可以仅作为带有模拟量A/D转换的普通8位单片机使用。
启用CAN控制器的功能,主要借助四个特殊功能寄存器(SPR)实现,CPU对CAN控制器的控制及其访问都通过它们完成,接口结构如图2所示。这四个特殊功能寄存器分别为:(1)地址寄存器(CANADR),CPU通过CANADR读/写CAN控制器的验收码寄存器;(2)数据寄存器(CANDAT),CANDAT对应由CANADR指向的CAN控制器内部寄存器;(3)控制寄存器(CANCON),它具有两个功能,读CANCON意味着访问CAN控制器的中断寄存器,写CANCON意味着访问命令寄存器;(4)状态寄存器(CANSTA),具有两个功能,读CANSTA是访问CAN控制器的状态寄存器,写CANSTA是为后续的DMA传输设备内部数据存储器RAM的地址。此外,DMA逻辑允许CAN控制器与CPU在片主RAM之间的高速数据交换。
在芯片初始化阶段,CPU通过向CANCON和CANSTA写入内容,完成CAN控制器的功能初始化。在实际通讯过程中,CPU则利用四个寄存器使CAN控制器接收和发送数据信息。
2 逆变电源系统硬件构成
电动车用辅助三相逆变电源从结构上可以分为三个部分:(1)DC/DC多路电源——自动适应直流输入端的大范围电压浮动,为系统的其它电路提供彼此隔离且电压稳定的低压电源;(2)主控制板——检测各路输出的电压、电流,根据运行情况智能调整逆变电路的输出,通过CAN总线参与整车数据通讯;(3)主功率逆变电路——由高度集成的三相逆变模块IPM组成,完成主电路的逆变功能。
系统基本结构图如图3所示,其中未标出给系统各器件供电的DC/DC多路电源。
DC/DC多路电源采用开关电源的标准设计,配合具有不同变的多抽头高频变压器,对外输出5V、12V、20V等多路隔离直流电。同时考虑到电动车电池组电压的波动范围相对较大(充满时为400V,使用过程中可能降低到280V),在设计中选择了适当的电路结构,取得较好的输入电压适应能力。
控制板是整个系统的核心,采用P8xC592单片机系统中无片内ROM的P80C592、脉宽调制专用芯片SA8282、CAN总线收发器82C250以及主电路电压、电流数据采集模块等。
控制板通过SA8282专用芯片向三相逆变模块IPM提供6路PWM信号。SA8282芯片由MITEL公司开发生产,其特点是控制简单、频率精度高、运行可靠性高,它支持标准8位MOTEL复用数据总线,可以方便地和单片机交换数据。单片机只需对芯片内部的5个数据寄存器赋值,就可以完成对PWM波形输出的初始化和实时控制。SA8282芯片为标准28脚双列直插式封装,管脚RPHT、RPHB、YPHT、YPHB、BPHT、BPHB输出三相可独立控制的TTL驱动信号,可对应驱动三相逆变桥上的六路IGBT。
将SA8282专用芯片与IPM连接后,P80C592只需要在启动时对其进行初始化,三相输出达到预定值后,SA8282即可以独立驱动IPM模块。只有在调整PWM输出时,P80C592才需要对SA8282进行控制。同时,SA8282芯片的SET TRIP管脚能够响应IPM发出的故障信号,迅速关断所有PWM波形输出,对逆变电路进行快速保护,并通过TRIP状态输出管理通知P80C592单片机,确保系统安全。
分布于主电路直流输入端和三相输出端的数据采集模块可对各路电压、电流进行采集,经P80C592进行A/D变换后保存到数据存储器中,便于CPU判断系统输入/输出是否正常,并进行相应操作。
CAN总线收发器82C250是CAN控制器和物理总线间的接口,最初为汽车高速通信设计,具许多针对车辆应用设计的结构。其特点包括:有效减小汽车环境瞬间干扰对信号的影响,具有保护总线能力;防护电池与地之间发生短路;支持低电流待机方式等,因此十分适合电动车辅助逆变电源的需要。将82C250与P80C592的CAN接口输入、输出端相连,便构成了辅助逆变电源对外通讯的接口,如图4所示。
3 逆变电源系统软件设计
辅助三相逆变电源的控制软件通过8051汇编语言编制,在完成其控制功能外,力求程序的合理与简化,以适应电动汽车对系统稳定性和可靠性的要求,控制流程如图5所示。
系统上电运行后,单片机P80C952首先对SA8282芯片初始化寄存器进行数据初始化,然后根据负载电机的特点执行软启动程序。当三相输出电压达到预定值时,三相逆变电源即进入稳定运行状态。此后控制程序将循环检测各线路的电压、电流情况,根据情况修改SA8282控制寄存器参数,调整PWM输出,从而改变三相输出。例如,电动车运行一段时间后,电池组电压下降,导致逆变电源的三相输出电压低于设定值,P80C592检测到该现象后,通过SA8282提高电压输出幅值,确保电源输出的稳定。
同时,控制程序还将定期检测数据存储器中的控制参数。若整车控制系统通过CAN通讯修改了逆变电源的运行参数,P80C592将根据新的运行参数调整输出。
控制程序中的三个中断程序分别为:数据采集程序、CAN总线通讯程序和故障处理程序。
数据采集程序通过芯片内部计数器定时触发,对逆变电源的输入、输出线路进行数据采集,经模/数转换后存入数据存储器,交给CPU进行运行状况判断。
CAN总线通讯程序包含若干子程序,其基本程序结构如图6所示。
当通讯程序触发后,P80C592的CAN控制器提据命令字执行相关任务。当上位机请求数据时,将逆变电源的各项运行参数传输给整车系统;当上位机查询节点状态时,将当前CAN节点状态等数据发磅出去;当上位机要求修改运行参数时,将接收的数据参数存入数据存储器。
故障处理程序具有最高的中断优先权,即将P80C592的外部中断0(INT0)管脚与SA8282芯片的TRIP管脚相连。当逆变电路发生故障时,IPM会发出故障信号给SA8282芯片,由后者在第一时间关断PWM输出,并向P80C592发出中断信号,触发故障处理程序。故障处理程序首先将SA8282关闭;然后通过CAN总线通知上位机有故障发生,并将故障代码和当前系统运行参数写入报文同时发送;最后控制单片机将整个系统关闭,实现安全关机。
CAN通信网络的引入为电动车的全局优化控制提供了条件,车辆的每个子系统都因此成为整车控制中的智能节点。采用集成CAN控制器的P8xC592单片机作为控制核心,结合SA8282专用PWM波形发生芯片设计出的电动车用辅助三相逆变电源,不仅安全稳定性高,还能够充分参与整车的数据交换和控制。对于采用不同CAN总线协议的电动车辆,只需适当修改控制程序中有关CAN通讯的部分程序段,就可以顺利接入整车系统,使该逆变电源具有更强的通用性。