AMT控制单元中CAN接口设计*
2010-08-08罗文俊孔慧芳
罗文俊,孔慧芳
(合肥工业大学 电气与自动化工程学院,安徽 合肥 230009)
TCU(Transmission Control Unit)作为电控机械式自动变速系统的控制单元,并不是简单地实现各种选挡、换挡以及离合器的分离与接合等功能。为了获得良好的控制效果,TCU必须与其他控制单元进行通信。
CAN总线以其强大的优势能够满足TCU的各种要求。在CAN总线通信的基础上,TCU与汽车中其他电子控制单元实现数据共享,如与发动机ECU进行通信时将换挡、起步过程中对发动机油门控制的要求通知发动机ECU,然后由发动机发出指令执行动作来调节发动机扭矩和转速,使之与离合器相互协调配合。这样不仅可以降低整个系统的成本,而且还可以获得良好的控制效果。
基于以上认识,本文设计了TCU中CAN总线通信模块的硬件和软件,并通过模拟TCU与发动机ECU之间的通信验证了设计的可行性。
1 TCU中CAN模块设计
1.1 TCU的基本结构
图1 TCU的基本结构
TCU主要由模拟量、开关量、频率量、选换挡驱动电路、离合器驱动电路以及CAN总线模块等部分组成,其结构如图1所示。作为电控机械式自动变速系统的控制单元,TCU并不是单独地实现各种功能,如最佳动力型换挡规律、最佳经济型换挡规律等一系列的换挡规律以及发动机恒转速控制等一系列离合器的控制规律,这并不是TCU能独立完成的。因此,TCU与其他控制单元之间的通信成为TCU最重要的组成部分之一。
CAN总线模块作为TCU与其他控制单元进行通信的主要方式,其重要性显得举足轻重。TCU的通信主要是与发动机ECU、显示仪表等单元进行信息共享。
1.2 TCU的通信
TCU与发动机ECU、显示仪表等单元之间进行数据通信的网络拓扑图如图2所示。信息的传输采用CAN通信协议版本2.0A/B,传输介质选用普通的双绞线。
图2 TCU通信结构框图
1.3 CAN接口电路设计
接口电路中,CAN驱动器选用的是英飞凌公司的TLE6250,此微控制器有 5 V和3.3 V 2种接线方式,其传输速率最高能达到1 Mb/s。TCU中CPU芯片采用的是飞思卡尔公司的MC9S12系列的一款芯片,该芯片内部有集成的CAN模块,数据传输速率最大可达到1 Mb/s,与TLE6250 CAN驱动器相匹配。该单片机还允许多个连接到CAN总线的节点之间相互通信。由此所设计的CAN接口电路原理图[1]如图3所示。
图3 CAN接口电路原理图
1.4 CAN模块的软件设计
CAN模块的软件部分主要包括:CAN模块的初始化、CAN模块信号的发送、CAN模块信号的接收,以及由信号发送或接收完成后产生的中断等部分。
(1)CAN模块的初始化模块主要是用于设置CAN模块接收时采用8位、16位还是32位过滤器以及设置CAN通信的波特率,接收信号时需要屏蔽的位和字节等,之后则需要等待与其他CAN节点时钟同步。其流程图如图4所示。
(2)CAN模块信号的接收部分主要是用来分辨数据的ID,区分信号帧是数据帧还是请求帧,如果是数据帧,则需要知道数据的长度;如果是请求帧,则程序需要跳到发送模块应答请求节点。其程序流程图如图5所示。
(3)CAN模块信号的发送部分主要是设置发送信息的ID号,采用什么方式发送以及区分数据帧与请求帧,如果是数据帧则需要设置发送数据的长度以及优先级。其程序流程如图6所示。
图4 CAN模块初始化流程图
图5 CAN模块接收数据流程图
(4)中断部分是由于CAN模块发送信号或接收信号完成后产生的中断。如果是发送完成产生的中断则表示可以发送新的数据;如果是接收完成产生的中断则表示可以同数据寄存器读取数据,用于分析数据。
图6 CAN模块发送数据流程图
2 测试
2.1 软硬件测试
测试步骤如下:
(1)在 MC9S12系 列单片机的CAN模块中存在自循环模式,可以通过设置CANCTL1_LOOPB=1进入循环。这可以用来测试CAN模块程序(包括发送程序,接收程序)的正确性。
(2)验证程序正确后,关闭循环模式。
(3)对TLE6250硬件电路进行测试。硬件电路测试主要有2种方式:一种是采用专门的CAN调试软件进行测试;另外一种是采用2个CAN模块,1个作为发送节点,另外1个作为接收节点,用示波器观察CAN_H、CAN_L之间的信号样式,并与已经调试成功的CAN通信信号样式进行对比,这样可以确定硬件电路正确与否,使信号能正常发送。然后,通过接收节点可接收到已知的信号并确定CAN模块能否正常接收。
本文采用第2种方式对CAN模块硬件进行测试。(4)反复验证CAN通信,确保信号接收和发送的准确无误。
以锯齿波形为例,通过CAN通信,得到的锯齿波如图7所示。
图7 通过CAN通信获得的锯齿波形
从测试结果可以看出,此设计方案能确保信号接收和发送的准确无误。
2.2 实车试验
本设计以国内某款车型作为试验平台,将文中验证过的CAN模块作为一个新节点接入到车辆的CAN网络中,并断开原有TCU的CAN模块。图8为通过新的CAN模块发送、显示仪表显示的挡位信号。
接通原汽车网络中TCU的CAN模块,并将TCU采集到的刹车信号通过CAN发送到新的节点。由此新节点获得的刹车信号如图9所示。
从以上的试验测得数据显示,本设计方案能满足TCU的各种通信要求。
本文以MC9S12系列单片机芯片和TLE6250为基础设计了CAN通信模块的硬件电路和软件,并通过测试,证明此方案能满足TCU的各种通信要求。
图8 挡位信号
图9 刹车信号
[1]Infineon.Infineon TLE 6250 CAN-transceive.data sheet version 3.4.2002.