0 引言
1 CAN总线的简介
1)结构简单,只有两根线与外部相连,且内部含有错误探测和管理模块。
3)可以点对点、点对多点及全局广播方式发送和接受数据。
6)采用非破坏性总线仲裁技术。当两个节点同时向总线上发送数据时,优先级低的节点主动停止数据发送,而优先级高的节点可以不受影响继续传输数据,这大大地节省了总线仲裁冲突时间,在网络负载很重的情况下也不会出现网络瘫痪。
7)直接通讯距离最大可达1k0m(速率在5kb/S以下),最高通讯速率可达1Mb/s(此时距离最长为40m)。节点数可达110个,通信介质可以是双绞线、同轴电缆或光导纤维。
8)CAN总线通讯接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。
9)CAN总线采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。
2 系统设计
电动汽车数字控制系统主要由电机驱动控制系统,电池管理系统,动力装置的冷却系统,汽车电器、仪表显示、供电系统,信息通信系统等组成。电动汽车采用双CAN总线结构,电机驱动控制系统、电池管理系统和信息通信系统均采用高速CAN总线通信;动力装置的冷却系统,汽车电器、仪表显示、供电系统采用低速CAN总线系统;高、低速CAN总线系统之间采用网关进行交换,如图1所示,CAN总线符合CAN.20B标准和15011898国际标准。通信介质采用普通屏蔽双绞线。
选择合适的MCU是CAN总线数字仪表控制系统设计成功的关键。它必须能适应各类复杂监控系统的要求,如实时性、低功耗、快速数据处理、集成数模外设功能、集成CAN总线接口,还应该集成充足的Flash或RAM供程序、数据存储,以简化电路,提高系统的可靠性。此外,它还要具有低成本和恶劣环境下的适应性。在综合比较了当前业界流行的几款MCU,如DSP2000系列、ATM89系列和C8051F系列之后,最终选择了Cygnal的C805lF这一系列高性能8位单片机。
C8051F系列单片机是完全集成的混合信号系统级芯片SOC具有与MCS51完全兼容的指令内核。由于采用了流水线处理技术,不再区分时钟周期和机器周期,大大提高了指令执行效率,使其处理速度不逊于许多16位单片机。在低功耗的同时它还拥有着控制系统所需的丰富模拟、数字外设,大量的外设功能接口,通过交叉开关表分配到64个I/O引脚,这一独创性设计使得芯片集成度大大增高。此外,C805lF还采用了Flash ROM技术,集成了JTAG,实现了真正的在线编程和片上调试。
3 接口电路设计
系统中选用Phliips公司的CAN总线收发器PCA82C250,PCA82C250是CAN控制器和物理层总线之间的接口,符合CAN国际标准15011898,它可以提供总线的差动发送能力和接收能力。用PCA82C250的目的是为了增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰,实现热防护等。PCA82C250允许的最高通信速度可达lMbps,最多节点数可达110个节点。它可以使系统具有较好的开放性和灵活性,即使该CAN总线在不要求所有节点及其应用层改变任何软件和硬件的情况下,可自由地增加或减少控制器节点。
C805lF040内集成了完全支持CAN2.0A和CAN2.0B的CAN控制器,独立的消息RAM可以处理32条消息对象,每个消息对象都可以进行发送和接收滤波,最高工作速率达到1Mb/s,能够完成CAN总线协议数据链路层和应用层的所有功能;其中CAN总线的竞争处理、CPU接口、同步、数据的一贯性以及连续性保证,都是由硬件来解决,CPU因此得以腾出大量的精力来处理其他的用户功能。以上这些特性,使得C805lF040成为CAN总线节点微控制器的良好选择。因而系统不需要专门的CAN控制器。通讯接口电路设计如图2所示,82C250是CAN控制器和物理总线间的接口,它是专用的CAN驱动芯片,提供对总线的差动发送和接收功能。为了增强CAN通信的抗干扰能力,在缓冲器和CAN驱动之间设计了光电隔离电路。采用的是高速光电隔离芯片6N137,输入与输出的供电电压也都采用5V。同时为了避免电源引起的干扰,CAN通信部分采用单独的DC—DC电源模块供电。
4 软件设计
系统软件模块包括:控制策略模块、系统参数配置模块、运行监控及故障指示模块、CAN通信总线模块、数据采集模块、配置数据交换模块、报表打印模块、与其他软件的接口模块等。其中控制策略模块和CAN总线通信模块是主要的功能模块。
由于控制器是多变量输入,为了适应控制对象结构和参数变化范围大、对象数学模型难于建立的特点,控制策略模块采用了模糊控制方法。模糊控制的基础是知识库,当各个节点的信息通过CAN总线输入到控制器后,经过模糊推理和模糊决策获得输出量,可使整车获得最佳运行状态,实现电动汽车仪表显示及优化控制。CAN总线通信软件主要包括节点初始化程序、报文发送程序、报文接收程序以及CAN总线出错处理程序等。在初始化C8051F040内部寄存器时注意使得各节点的速率必须一致,而且收、发双方必须同步。报文的接收主要有中断和查询两种接收方式,为提高通信的实时性,保证接收缓存器不会出现数据溢出现象,本文设计的系统采用中断接收方式实现CAN的通信过程。中断服务程序流程图如图3所示。
数据采集系统通过传感器、信号调理电路和采集卡,将表征电动汽车运行状况的物理量转化为数字量采集至各个CAN节点,在对数据位值转换、软件滤波和必要运算后,通过CAN总线将信息送往多能源控制器。CAN节点控制模
块需要采集的主要信号有:
1)动力装置的冷却系统:检测水温、油温、油压力、启动故障、水温过高/低等;
2)电机驱动控制系统:检测电压、电流扭矩、功率、转速、电机状态、车速、电机故障、加速踏板位置、制动踏板位置、离合器状态、钥匙信号、档位等;
3)电池管理系统:检测SOC、电池电压、电池电流、电池温度、电池充/放电、电池故障等。
现场总线控制系统以其高性能、高可靠性和高性价比,被越来越多地应用于车用电控单元和仪表系统之中。在电动汽车控制系统中采用CAN总线技术,不仅组网自由,扩展性强,实时性好,可靠性高,而且具有自诊断和监控能力,它是一种十分有效的通信方式。
5 结论
本文介绍了基于单片机C8051F040的CAN电动汽车数字控制系统设计过程,给出了硬件系统结构图和软件设计思路,经过实验证明,CAN电动汽车数字控制系统工作稳定、可靠,具有良好的应用前景。
上一篇:LonWorks技术在测长室温度控制中的应用
下一篇:TI首款隔离式CAN收发器背后的秘密
推荐阅读最新更新时间:2024-03-30 21:28