基于CAN总线的车灯控制系统研究

2012-11-20 03:45张春来
长江大学学报(自科版) 2012年31期
关键词:车灯端口总线

张春来

(安徽水利水电职业技术学院机电系,安徽 合肥 230601)

基于CAN总线的车灯控制系统研究

张春来

(安徽水利水电职业技术学院机电系,安徽 合肥 230601)

基于CAN总线设计了车灯控制系统,具体阐述了系统总体和主模块的设计内容。研究表明,该系统结构简单、性能可靠,具有较好的工程应用前景。

CAN总线;单片机;车灯;控制

汽车内部有很多复杂的节点,包括车灯控制节点、车门控制、雨刮控制和报警系统。大量数据信息可在不同电子单元中共享,汽车综合控制系统中大量的控制信号也需要实时交换,为此在汽车车灯控制系统中引入微控制器和总线技术,这将极大地提高系统的可靠性。下面,笔者对基于CAN总线的车灯控制系统进行研究。

1 总体硬件设计

车灯控制系统是保证汽车安全行驶的重要子系统,该系统采用51系列增强型单片机作为微控制器、CAN总线作为车灯各个模块之间的通信线路连接方式,能实现汽车车灯控制系统的升级。控制器具有各灯光负载的直接驱动能力,同时具有短路、开路、过载和过热等故障诊断和故障信息的总线发送功能。

图1 基于CAN总线的车灯控制系统

汽车内部包括车身系统、地盘系统、信息系统、安全系统,CAN总线设计用于内部各模块的通信。通过CAN模块连接的系统控制结构如图1所示。各模块需要具备CAN控制器和CAN收发器才能连接到CAN总线上,包括右前车灯、左前车灯、右后车灯、左后车灯以及测试接点模块等。该系统需要达到钥匙、开关和按钮等输入量控制汽车车灯、车门和雨刮等模块的模拟实现,如当司机触动某个按钮时汽车前大灯亮,当要转向时前后及中间指示灯闪烁,如果发生故障则报警等。

该系统实现模拟车灯控制,分为主模块和从模块,主模块负责人机交换,并且控制汽车前部车灯以及其他控制;从模块主要负责接收主模块的控制命令,控制汽车后部车灯及相关模块。主模块有40个输入开关,16路灯和控制输出;从模块无开关输入,有48路输出。主模块控制整个车灯系统,并负责人机接口,将开关状态变化等控制信号转化为灯控制命令,此外,更新自身的灯状态并将控制逻辑通过CAN总线发送到从模块。

1.1输出

表1 开关与灯控制

灯及开关输出如表1所示。在软件实现控制时,用一比特位来表示灯控制逻辑,1表示灯亮或开关打开,0表示灯灭或开关不打开。主模块上有16路输出,定义为A1~A16,从模块上有48路输出定义为B1~B48,其位关系如表2所示(BIT0~BIT7分别为字节的0~7位)。

1.2输入输出的对应关系

由开关输入控制输出不是一对一的关系,即按下一个开关可能要点亮几个灯,这几个灯可能有的在主模块上,有的在从模块上,逻辑关系比较复杂。故在检测开关输入开关后,通过一个函数将开关控制逻辑对应的灯控制关系转换为灯输出逻辑,在需要点亮的灯的对应比特位将其置位,然后将灯控制逻辑(8B)通过CAN总线发送给从模块。主模块40路输入位如表3所示。

表2 控制逻辑位定义

表3 主模块40路输入位

2 主模块设计

2.1单片机最小系统

该系统采用C8051F040单片机,该单片机集成了CAN2.0模块、I2C模块和A/D模块。首先需要设计单片机正常工作的最小系统,包括电源、晶振和复位电路等,在最小系统的基础上,设计中主要用到CAN、SMBus等模块。最小系统原理图如图2所示。系统还包括开关量输入模块、LCD输出模块、灯输出、I2C和CAN模块等。C8051F040单片机采用3.3V电压供电。

2.2开关量输入

由于有40路开关量输入,单片机通用输入输出接口没有相应引脚来实现,因而在系统中采用并行输入/串行输出移位芯片74HC165来实现,其连接如图3所示。40路开关输入需使用5片74HC165移位芯片,每片连接方式类似,只是串行输入的端口不同。用单片机输出端口控制PL、CLK即可实现开关量的串行移位输入。

2.3系统输出

主模块的16路输出采用端口直接控制,使用简单的发光二极管串电阻方式。当端口引脚输出1时控制LED点亮,端口引脚输出0时控制LED熄灭。

图2 单片机最小系统原理图

图3 74HC165连接如图

2.4CAN通信模块

C8051F040单片机内实现了CAN物理层,需要在外部配置CAN收发器实现总线连接,采用PHILIPS公司的TJA1050收发芯片。CAN-TX和CAN-RX连接到单片机CAN引脚,CANH和CANL用于连接CAN总线,在稳定性要求更高的场合中还需要使用光耦隔离。CAN收发芯片如图4所示。

2.5系统流程图

整个系统软件流程如图5所示。系统定时通过在定时器中断服务程序中计数并置位相应的标志位实现,主程序中有一个for循环,在该循环中检测所有标志位,当检测到某个标志位被置位时作相应处理。在有操作系统支持的软件中只需要在某个中断服务程序中置标志位或给某个进程发送消息。

3 结 语

图4 CAN收发芯片

基于CAN总线设计了车灯控制系统,采用C8051F040单片机作为微控制器,将CAN总线作为车灯各模块之间的通信线路连接方式。该系统分为主模块和从模块,主模块负责人机交换,并且控制汽车前部车灯以及其他控制;从模块主要负责接收主模块的控制命令,控制汽车后部车灯及相关模块。实际应用表明,该系统结构简单且性能可靠,因而具有较好的应用前景。

图5 系统流程图

[1]徐春艳.基于CAN总线的车灯控制系统实验研究[J].吉林大学学报,2005(7):16-17.

[2]胡博,王旭东,王力,等.基于CAN/LIN总线的车灯控制器设计与实现[J].黑龙江工程学院学报,2007,21(4):46-49.

[3]王箴.车身系统的CAN总线控制[J].汽车电器,2003(5):11-14.

[4]李昶.基于CAN总线的汽车网络控制系统研究[D].石家庄:石家庄铁道学院,2006.

[5]刘永木,刘望生,李洪泽.SAE J1939标准下的汽车CAN通讯报文/帧格式[J].长春工业大学学报,2003,24(1):53-55.

[6]龚进峰,曹健.基于CAN/LIN总线的智能车身网络研发[J].汽车电器,2006(5):4-7,11.

[7]郭志军,周三国,赵国鹏.基于CAN总线的车灯控制网络设计[J].汽车电器,2007(4):10-12.

[编辑] 李启栋

10.3969/j.issn.1673-1409(N).2012.11.045

TP273;U463 65

A

16731409(2012)11N13904

猜你喜欢
车灯端口总线
一种端口故障的解决方案
南非的车灯会说话
基于PCI Express总线的xHC与FPGA的直接通信
机载飞控1553B总线转以太网总线设计
端口阻塞与优先级
车灯
STP与无线调车灯显设备结合技术探讨
CAN总线并发通信时下位机应用软件设计
8端口IO-Link参考设计套件加快开发速度
多通道ARINC429总线检查仪