基于虚拟仪器的车载CAN总线监控系统开发
时间:10-04
来源:作者:金振华 卢青春 魏红军 阎东林
点击:
由于能源与污染的问题,电动汽车正成为汽车技术研究和开发的热点。电动汽车分为纯电动汽车、混合动力汽车和燃料电池汽车等,是一种环境友好的先进交通工具[1~2]。目前电动汽车一般都采用基于CAN(Control Area Network)总线的整车通讯控制系统。CAN总线是一种有效支持分布式控制或实时控制的串行通信网络,具有实时性强、传输距离远、抗干扰能力强、成本低的特点,在汽车通讯网络中得到了广泛的应用[3]。
汽车在开发过程中需要对整车运行参数进行采集和监控,以便分析各部件的运行状况,优化和改进整车控制策略。在整车耐久性考核中也需要全程采集和记录运行数据,以便对整车及部件性能变化进行分析。因此车载CAN总线监控系统是电动汽车研究和开发的重要工具,本文重点论述车载CAN总线监控系统的开发以及在燃料电池汽车道路考核试验中的应用。
1 汽车CAN网络结构及通讯协议
在电动汽车中,整车控制器通过CAN总线与电机、蓄电池等部件通讯,读取各部件的状态信息并向部件发送控制信息。图1为一种燃料电池汽车的CAN网络结构,整车控制器通过CAN网络采集燃料电池、DC/DC转换器、蓄电池和电机等部件状态参数,根据一定的控制策略向DC/DC转换器和电机发送控制命令,使动力系统各部件协调工作,实现整车的动力性和经济性指标。监控系统连接到CAN总线上,读取总线的数据帧,实现数据的采集和存储。
在CAN网络中数据以报文为单位进行传输,节点对总线的访问采取位仲裁方式。报文起始部分为标识符,在CAN2.0B中标识符采用29位格式,如图2所示。其中,优先级为3位,共8个优先级;8位PS为发送此报文的源地址,8位SA为目标地址,8位PF为报文代码。
监控系统与整车CAN网络连接,可接收总线上的全部数据帧。一个CAN数据帧包括标识符和8字节数据。根据标识符可判断出该数据帧是哪个部件发送的,再根据部件的通讯协议对8个字节数据进行解析可得到实际的参数值。
图3为燃料电池汽车中燃料电池控制器向整车控制器发送的一个数据帧的格式。标识符ID为29位数据,根据标识符格式定义可以得出燃料电池地址为11,整车控制器地址为10,数据帧优先级为3。数据部分包含燃料电池输出电压、燃料电池输出电流、电堆温度、故障码、状态位和控制器LIFE信号等信息。
2 监控系统硬件设计
车载CAN总线监控系统硬件结构如图4所示,采用基于PC总线工业控制计算机(IPC)的硬件设计。便携式工控机Apollo150具有抗干扰和减震设计,适合于车载使用;具有一体化的液晶显示屏和键盘鼠标设计,便于人机界面设计;通过USB2.0接口连接U盘进行存储,保证车载环境下大量数据的可靠存储;可以通过PCI和ISA扩展槽扩展数据采集和通讯接口;燃料电池汽车提供24V直流电源,经逆变电源转换成220V交流电,经UPS给工控机供电。基于IPC的硬件结构具有可靠性好、便于扩展的特点 ,同时可以利用PC机强大的软硬件资源,提高开发效率。
CAN通讯接口卡选用PCI7841双口隔离型CAN接口卡,该接口卡插在Apollo150的PCI扩展槽上,采用SJA1000 CAN控制器以及82C250 CAN接收器芯片,提供总线仲裁和错误检测功能,以确保数据通讯的可靠性。PCI7841具有两个独立的CAN接口,最高通讯速率为1Mbps。
3 监控系统软件设计
3.1软件功能需求分析
CAN总线监控系统软件功能主要包括数据采集、故障诊断、界面显示和数据存储。数据采集功能对整车CAN网络上的数据帧进行采集,根据通讯协议对数据进行解析,提取相应的数据;故障诊断功能对部件发送数据帧中的故障码进行分析,判断当前系统存在的故障信息;界面显示功能对采集的数据以各种形式显示在液晶屏上;数据存储功能将采集数据以文件形式连续存储在U盘上。
3.2 基于虚拟仪器的软件设计
虚拟仪器技术目前已成为测试领域的主流技术,一个虚拟仪器系统主要由仪器硬件、计算机硬件和应用软件组成,应用软件又包括开发环境、应用程序和仪器驱动程序三部分[4]。LabVIEW是NI公司推出的虚拟仪器开发平台,采用图形化的编程语言,具有强大的人机界面设计和数据分析处理功能,提供了丰富的仪器驱动程序,便于快速创建灵活可靠的应用系统。基于LabVIEW环境的虚拟仪器体系结构如图5所示。
CAN总线监控系统软件采用虚拟仪器开发平台LabVIEW开发,仪器硬件部分包括便携式工控机和PCI总线CAN通讯接口卡。PCI-7841 CAN接口卡提供了动态链接库(DLL)形式的Windows2000/XP驱动程序,在LabVIEW中通过DLL调用实现第三方硬件的仪器驱动。 PCI-7841提供的主要驱动程序功能如表1所示。
车载CAN总线监控系统采用了PC架构和高性能数据通讯接口卡,利用虚拟仪器软件开发平台的仪器驱动、界面控件以及应用程序开发调试环境,提高了系统的可靠性和开发效率。
汽车在开发过程中需要对整车运行参数进行采集和监控,以便分析各部件的运行状况,优化和改进整车控制策略。在整车耐久性考核中也需要全程采集和记录运行数据,以便对整车及部件性能变化进行分析。因此车载CAN总线监控系统是电动汽车研究和开发的重要工具,本文重点论述车载CAN总线监控系统的开发以及在燃料电池汽车道路考核试验中的应用。
1 汽车CAN网络结构及通讯协议
在电动汽车中,整车控制器通过CAN总线与电机、蓄电池等部件通讯,读取各部件的状态信息并向部件发送控制信息。图1为一种燃料电池汽车的CAN网络结构,整车控制器通过CAN网络采集燃料电池、DC/DC转换器、蓄电池和电机等部件状态参数,根据一定的控制策略向DC/DC转换器和电机发送控制命令,使动力系统各部件协调工作,实现整车的动力性和经济性指标。监控系统连接到CAN总线上,读取总线的数据帧,实现数据的采集和存储。
在CAN网络中数据以报文为单位进行传输,节点对总线的访问采取位仲裁方式。报文起始部分为标识符,在CAN2.0B中标识符采用29位格式,如图2所示。其中,优先级为3位,共8个优先级;8位PS为发送此报文的源地址,8位SA为目标地址,8位PF为报文代码。
监控系统与整车CAN网络连接,可接收总线上的全部数据帧。一个CAN数据帧包括标识符和8字节数据。根据标识符可判断出该数据帧是哪个部件发送的,再根据部件的通讯协议对8个字节数据进行解析可得到实际的参数值。
图3为燃料电池汽车中燃料电池控制器向整车控制器发送的一个数据帧的格式。标识符ID为29位数据,根据标识符格式定义可以得出燃料电池地址为11,整车控制器地址为10,数据帧优先级为3。数据部分包含燃料电池输出电压、燃料电池输出电流、电堆温度、故障码、状态位和控制器LIFE信号等信息。
2 监控系统硬件设计
车载CAN总线监控系统硬件结构如图4所示,采用基于PC总线工业控制计算机(IPC)的硬件设计。便携式工控机Apollo150具有抗干扰和减震设计,适合于车载使用;具有一体化的液晶显示屏和键盘鼠标设计,便于人机界面设计;通过USB2.0接口连接U盘进行存储,保证车载环境下大量数据的可靠存储;可以通过PCI和ISA扩展槽扩展数据采集和通讯接口;燃料电池汽车提供24V直流电源,经逆变电源转换成220V交流电,经UPS给工控机供电。基于IPC的硬件结构具有可靠性好、便于扩展的特点 ,同时可以利用PC机强大的软硬件资源,提高开发效率。
CAN通讯接口卡选用PCI7841双口隔离型CAN接口卡,该接口卡插在Apollo150的PCI扩展槽上,采用SJA1000 CAN控制器以及82C250 CAN接收器芯片,提供总线仲裁和错误检测功能,以确保数据通讯的可靠性。PCI7841具有两个独立的CAN接口,最高通讯速率为1Mbps。
3 监控系统软件设计
3.1软件功能需求分析
CAN总线监控系统软件功能主要包括数据采集、故障诊断、界面显示和数据存储。数据采集功能对整车CAN网络上的数据帧进行采集,根据通讯协议对数据进行解析,提取相应的数据;故障诊断功能对部件发送数据帧中的故障码进行分析,判断当前系统存在的故障信息;界面显示功能对采集的数据以各种形式显示在液晶屏上;数据存储功能将采集数据以文件形式连续存储在U盘上。
3.2 基于虚拟仪器的软件设计
虚拟仪器技术目前已成为测试领域的主流技术,一个虚拟仪器系统主要由仪器硬件、计算机硬件和应用软件组成,应用软件又包括开发环境、应用程序和仪器驱动程序三部分[4]。LabVIEW是NI公司推出的虚拟仪器开发平台,采用图形化的编程语言,具有强大的人机界面设计和数据分析处理功能,提供了丰富的仪器驱动程序,便于快速创建灵活可靠的应用系统。基于LabVIEW环境的虚拟仪器体系结构如图5所示。
CAN总线监控系统软件采用虚拟仪器开发平台LabVIEW开发,仪器硬件部分包括便携式工控机和PCI总线CAN通讯接口卡。PCI-7841 CAN接口卡提供了动态链接库(DLL)形式的Windows2000/XP驱动程序,在LabVIEW中通过DLL调用实现第三方硬件的仪器驱动。 PCI-7841提供的主要驱动程序功能如表1所示。
车载CAN总线监控系统采用了PC架构和高性能数据通讯接口卡,利用虚拟仪器软件开发平台的仪器驱动、界面控件以及应用程序开发调试环境,提高了系统的可靠性和开发效率。
- 基于虚拟仪器的新型汽车电子测试平台(03-01)
- 基于uClinux嵌入式系统的汽车黑匣子的设计与开发(03-21)
- 五大步骤教你实现FlexRay网络拓朴(04-16)
- x86架构丰富联网汽车中的交互体验(07-06)
- 车载无线通信技术推动ITS发展(08-03)
- 车载信息终端及关键器件的现状与展望(08-09)