一种采用CAN总线的车灯控制系统设计

分享到:
571
下一篇 >
引言

CAN(Controller Area Network) 是德国博世公司在20 世纪80 年代初为汽车业开发的一种车载专用串行数据通信总线, 满足SAE (Society of Automo bileEngineer) 对C 类高速车载网络(≤1Mb/ s) 的要求, 适合动力传动和底盘电子系统的信息传输与控制, 因此也适合一般车载电子系统的信息传输与控制。

与传统技术相比, CAN 总线有如下特点: ①采用非破坏性仲裁技术, 获得仲裁优先的节点将继续传输消息, 消息不会被另一个节点破坏或发生错误; ②CAN 总线采用短帧结构, 每一帧的有效数据为8 字节, 数据传输时间短, 受干扰的概率低, 重新发送的时间短;③ CAN 每帧数据采用CRC (CyclicRedundancy Check) 校验, 保证了数据传输的高可靠性, 适于在高干扰环境中使用;④CAN 采用平衡的差动信号传输数据, 通信速率为5kb/ s 时直接通信距离*远可达10km, 通信距离为40m 时通信速率*高可达1Mb/ s, 可形成场抵消效应; ⑤可以避免汽车线束的重复铺设, 有效减少了汽车上线束的数量, 提高了可靠性, 降低了成本。因此, 利用CAN 总线进行车灯系统设计, 可以提升汽车性能。

1 车灯功能及系统设计

图1 为车灯照明、信号系统, 由照明及信号灯组组成, 包括前大灯(远光灯、近光灯) 、转向灯、雾灯、制动灯、顶灯、位置灯、倒车灯和牌照灯等等, 不同种类车灯的功能不同, 安装位置也不尽相同。按车灯安放位置可以分成左前、左后、右前、右后4 组照明和信号灯组, 以及车内照明灯组, 故可以在CAN 通信网络中设置控制模块、左前模块、左后模块、右前模块、右后模块和车内照明模块, 共6 个节点, 其车灯系统结构图见图2.其中, 控制模块通过对开关状态变化的监测向其它5 个模块发送控制指令, 这5 个模块在接收到属于本模块的控制指令后, 分别控制对应位置的车灯动作。由于CAN 是基于优先级的事件触发协议, 根据行驶**级别的不同, 系统中各节点的优先级要依次设定。需要强调的是, 开关控制模块是系统控制指令发送模块, **性要求*高, 具有*高优先级, 左后和右后模块涉及制动等与行驶**相关的车灯, 其优先级仅次于开关控制模块。

图1 车灯照明、信号系统

图2 CAN 总线车灯系统结构

2 硬件设计

本设计以8051 单片机和Intel 82527 CAN 总线控制器为核心构成智能节点。其中, Intel 82527 CAN控制器支持CAN2. 0 标准, 包括标准的和扩展的数据和远程帧, 可程控全局屏蔽; 包括标准和扩展信息标识符, 具有15 个报文缓冲区, 每个数据长度为8 字节;14 个T X/ RX 缓冲区, 1 个带可程控屏蔽的RX 缓冲区; 可变CPU 接口, 具有多路8 位总线( Intel 或Motorola 方式) 、多路16 位总线、8 位非多路总线( 同步/ 异步) 以及串行接口; 位速率可程控, 并有可程控的时钟输出; 可变中断结构; 可对输出驱动器和输入比较器结构进行设置; 2 个8 位双向I/ O 口; 44 脚PLCC 封装。

本方案选用Philips 公司的PCA 82C250 为CAN总线收发器和物理层总线接口, 它可以提供对总线的差分发送和接收、高速斜率控制和待机3 种不同工作方式, 能够隔离瞬态干扰, 提高接收和发送能力。在硬件设计中, 82527 完成与CAN 总线的信息交换,8051 完成对车灯继电器的驱动; 旁路输入比较器, 与8051 的信息交换采用中断方式, 地址为7F00 ~7FFFH.系统硬件结构见图3.

图3 系统硬件结构图

3 软件设计

CAN2. 0B 协议只制定了CAN 物理层与数据链路层的协议, 在进行系统设计时, 必须根据用户的需要制定相应的CAN 应用层协议。根据总线系统各节点及其所要实现的功能, 确定相互间共享的数据, 然后了解各节点需接收和发送的信息, 统一制定CAN 网络中需传输的信息, *后给制定好的CAN 网络传输消息分配标识符。CA N 协议规定, 标识符ID 越小, 优先权越高,因此, 在确定ID 时, 先要分析该信息帧需求的紧急性。

你可能感兴趣: 嵌入式 图片 控制系统 CAN 控制器
无觅相关文章插件,快速提升流量