张健玮
(东北师大附中,吉林长春130022)
车辆自动变速器电控单元的CAN接口设计
张健玮
(东北师大附中,吉林长春130022)
采用飞思卡尔公司的MC9S12DP256单片机内部集成的CAN(Controller Area Network)模块设计了车辆自动变速器电控单元的CAN通信系统,设计了相应的硬件接口电路和软件,实现了车辆自动变速器电控单元与电喷发动机和ABS电控单元之间的通信.
CAN接口;MC9S12DP256;自动变速器
车辆自动变速器的电控单元要实现各种选挡、换挡以及离合器的分离与接合等功能,而且为了获得良好的控制效果,车辆自动变速器还必须与其他控制单元进行通信.CAN总线以其强大的优势能够满足这种通信要求.在CAN总线通信的基础上,车辆自动变速器可与车辆中其他电子控制单元实现数据共享,如与发动ECU进行通信时将换挡、起步过程中对发动机油门控制的要求通知发动机ECU,然后由发动机发出指令执行动作来调节发动机扭矩和转速,使之与离合器相互协调配合.这样不仅可获得良好的控制效果,而且还可降低整个系统的成本.本文采用飞思卡尔公司的MC9S12DP256单片机内部集成的MSCAN模块设计了车辆自动变速器CAN通信系统的硬件接口电路和软件.
MSCAN模块是飞思卡尔公司为16位MCU(Micro controller unit)设计的通用CAN通信模块,MC9S12DP256内部的MSCAN模块主要由时钟单元、发送缓冲区、接收缓冲区、接收过滤控制组成,具有如下特性:1)模块化结构;2)实现了CAN2.0A/B协议,支持标准帧和扩展帧格式;3)支持远程请求帧;4)双缓冲接收存储方案;5)带有本地优先级排队机制的三缓冲区发送存储方案;6)可屏蔽、可重组标识符验收过滤器;7)内置低通滤波器的可编程唤醒功能;8)可编程环路检测模式支持模块自检;9)时钟源可程控选择CPU总线时钟或晶体振荡器时钟.
MC9S12DP256片内的CAN模块不包含连接到CAN总线上的物理层,物理层须从外部提供.模块的CAN控制器通过2个引脚CAN_TXD和CAN_RXD连接到物理层上,CAN_TXD用于向CAN总线的物理层发送数据,CAN_RXD用于从CAN总线的物理层接收数据.单片机与CAN总线的连接如图1所示.
图1 单片机与CAN总线的连接
通讯系统由自动变速器ECU、电喷发动机ECU、ABS的ECU以及CAN接口电路组成.网络拓扑结构采用总线式结构,这种结构虽然比环形拓扑结构信息吞吐率低,但结构简单,节省成本.系统中信息的传输采用CAN通信协议版本2.0/B,传输介质采用双绞线,系统CAN网络拓扑结构如图2所示.
图2 通信系统总体框图
由图2看出,负载连接在CAN-H和CAN-L之间,终端匹配电阻的值应该等于信号线的特性阻抗的值,约为120Ω.否则,电阻不匹配的情况下,有可能降低数据的有效传输率.
为了进一步提高系统的抗干扰能力,还采用在CAN控制器和传输介质之间加接光电隔离、电源采用DC-DC变换器等措施.
在实际调试过程中,本系统自行设计了用于模拟电喷发动机和ABS电控系统部分功能的电控单元,2个电控单元所用的单片机都采用MC9S12DP256,前者主要用于测量节气门位置和发动机转速、控制节气门开度和电喷发动机的点火提前脚,达到在换挡过程中调节发动机转速的目的.3个电控单元通过CAN总线连接.通讯系统的结构框图如图3所示.
图3 通讯系统结构框图
CAN接口电路(图4)主要包括CAN控制器与CAN总线驱动器之间以及CAN总线收发器与物理总线之间的接口电路.其中CAN总线驱动器是影响系统网络性能的关键因素之一,本系统中CAN驱动器选用PCA82C250,PCA82C250具有对总线的差动发送能力,同时对CAN控制器提供差动接收能力.
为了防止干扰,在CPU的CAN输出的2个引脚与CAN驱动器之间加接高速光电隔离器6N137.
通信系统的软件采用结构化程序设计方法,软件具有良好的模块性、可修改性及可移植性.采用C语言进行编程.以自动变速器节点为例,软件共分为3部分:通信系统初始化模块、发送数据模块、接收数据模块.
CAN总线的初始化,是CAN总线程序的基础,也是难点.初始化程序需要完成对各个寄存器的设置,具体包括初始化CAN模块,设定时钟分频寄存器、设置总线定时寄存器、设置通信速率为250kbps、设置CAN控制寄存器,将定义好的标识码存入信息报文的仲裁寄存器中、设置有效数据字节长度、使能CAN接收中断等.
自动变速器节点发送数据过程中首先判断是否与总线同步,若同步,再判断是否有空的发送缓冲区,若发送缓冲区全满,则等待,直到有空的发送缓冲区出现,再将待发送的数据帧(包括标识符、控制位和数据)全部放入指定的发送缓冲区,准备发送.发送成功后再存入新数据.程序框图如图5所示.
图5 自动变速器节点发送数据过程
节点接收数据过程中,规定每当成功地接收1个帧数据后,即触发1个中断,接收数据的处理在中断服务程序中完成.程序框图如图6所示.
图6 自动变速器节点接收数据过程
在电喷发动机、ABS和自动变速器电控系统电控单元的基础上,采用MC9S12DP256单片机内部集成的CAN模块设计了自动变速器的CAN通信系统,并设计了相关的硬件接口电路和软件,实现了车辆自动变速器电控单元与电喷发动机和ABS电控单元之间的通信.
[1] 张洪坤,李文军,秦贵和.CAN总线在电控机械式自动变速系统中的应用[J].计算机工程与应用,2003,31:208-210.
[2] 金辉,张洪坤,葛安林.CAN总线在汽车智能换档系统中的应用[J].公路交通科技,2004(3):114-116,136.
[3] 陆延丰,王海林,张春.亿恒C164CI16位单片机[M].北京:清华大学出版社,2002.
CAN interface design of electronic control unit on vehicle automatic transmission
ZHANG Jian-wei
(High School Attached to Northeast Normal University,Changchun 130022,China)
CAN communication system of the electronic control unit of vehicle automatic transmission was designed by using CAN(controller area network)module integrated in MC9S12DP256chip of Freescale company,and the corresponding hardware circuit and the software were designed.The communication between electronic control units of vehicle automatic transmission and EFI(electronic controlled fuel injection)engine and ABS electronic control units was achieved.
CAN interface;MC9S12DP256;automatic transmission
U463.212.33
A
1005-4642(2012)08-0041-03
[责任编辑:郭 伟]
2012-02-21;修改日期:2012-06-24
张健玮(1994-),男,吉林长春人,东北师大附中高三学生.