首页 > 范文大全 > 正文

一种汽车远程故障诊断仪TBOX的设计和实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇一种汽车远程故障诊断仪TBOX的设计和实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

结合国家相关规定,该文提出了一款针对新能源电动汽车远程诊断系统,该系统能够实时监控整车及其关键零部件运行数据,并通过无线、互联网络等远程查询整车的运行状态,远程对车辆的故障进行诊断,同时能够将采集的数据上传服务器,为新能源汽车研发提供车辆运行数据,为其研发改进、质量提升提供必要的技术支撑手段。

故障诊断仪的应用环境示意图如图1所示。

故障诊断设备功能要求如下。

通信功能类:

配置CAN总线接口,支持标准KWP/UDS协议;

含GPS模块,支持GPS定位导航等拓展功能;

配置无线数据通信模块,具备远程数据查询、故障诊断功能;

支持实时数据流上传功能,支持历史故障信息上传;

数据自动上传功能,上传周期可配置功能。

存储功能类:

配置NVM(SD卡)存储器,具有本地存储功能;

具有重要数据SD卡和服务器双重备份功能。

ARM的CORTEX-M3处理器是新一代的嵌入式处理器,它为实现MCU的需要提供了低成本的平台、缩减的管脚数目、降低的系统功耗,同时提供卓越的计算性能和先进的中断系统响应。STM32F105RCT6拥有内置的ARM核心,它与所有的ARM工具和软件兼容。

2通信模块

通信模块目前采用华为GPRS模块MG323,同时预留3G通信模块接口,3G模块预计采用SIMCOM公司SIM5832,该模块为车载级产品,在此不作详细介绍。

华为公司MG323模块单元支持四频GSM850/900/1800/1900。最大发射功率为EGSM850Class4(2W),EGSM900Class4(2W),SM1800Class1(1W),GSM1900Class1(1W)。接收灵敏度

正常上电后,GSM模块基本在30秒连上GSM网络,50秒连上服务器,基本在1分钟内就能建立与服务器的正常数据链路。

模块接口方式简单,仅需电源和1个RS232串口,使用方便。单片机串口与模块串口连接,即可通过发送AT指令控制GSM模块,实现GPRS网络的数据发送、GSM的语音通话和EMS短信功能。

3GPS模块

目前GPS模块几大主要厂商都推出了面向车载和个人通信领域的集成化模块。根据我们的小型化GPS终端设计需求,在进行了性能对比测试后,选用日本JRC的G595模块,该模块在市场上已经得到大规模成功应用。

若休眠时不要求GPRS工作,可关闭GPRS电源,节省5mA静态电流,整机静态电流约为2mA左右。

终端唤醒方式:终端处于停机状态时,可通过两种方式唤醒终端单片机进入正常工作模式。一是通过CAN接口唤醒,停机状态下CAN收发器通过I/O控制进入低功耗的standby模式,此时CAN发送器被禁止,接收器处于监听状态。一旦CAN总线有数据过来就CAN收发器就恢复到高速传输模式,然后CAN接口的数据变化再把单片机从低功耗等待模式(LPWFI)唤醒。这种唤醒方式主要用于发动机启动后ECU通过CAN总线发命令唤醒。二是通过ON信号唤醒,当车钥匙转动到ON挡时,系统也会唤醒,开始工作。

6电源处理电路

终端是应用于12V新能源电动汽车,汽车电磁环境比较恶劣,进入系统的电源必须经过严格处理,才能保证系统的稳定工作。电源处理电路包括防反接保护、浪涌保护、EMI静噪滤波器、π型滤波和DC-DC处理5个部分,处理框图如图6所示。各部分说明如下:防反接保护使用一个普通二极管就可以实现。浪涌保护包括一个TVS管,可以有效抑制类似于脉冲5的干扰。EMI静噪滤波器是一款小尺寸、引线型结构,实现了良好的高频性能。π型滤波电路进一步滤除噪声,净化进入后端电路的电源。DC-DC处理根据实际应用完成各种类电源转换。

7存储器

本设备的存储器分为单片机内部Flash和外接存储单元两部分。STM32F105RCT6内置了256KBFlash,主要用于存放程序代码。外接存储单元为串行Flash存储器和miniSD卡。外部Flash存储器用于存储系统的配置参数数据,本设计采用ATMEL公司的串行FlashAT25DF161-SH-T,接口形式采用SPI方式,容量为2MB。由于STM32F105RCT6没有SDIO并行接口,因此采用SPI方式驱动miniSD卡。SD卡支持两种总线方式:SD方式与SPI方式。SD方式时的数据传输速度比SPI方式要快,但采用单片机对SD卡进行读写时一般都采用SPI模式。采用不同的初始化方式可以使SD卡工作于SD方式或SPI方式。

SD卡的SPI通信接口使其可以通过SPI通道进行数据读写。从应用的角度来看,采用SPI接口的好处在于,很多单片机内部自带SPI控制器,不仅给开发上带来方便,同时也降低了开发成本。

软件设计

在组成上有两大部分软件构成,一个是引导程序;一个是主程序,如图7所示。引导程序在程序上电时立即启动,首先检测升级标志,若标志存在则从片外Flash加载升级程序到片内Flash,并跳转到新程序运行;否则仍跳转至原程序运行。

系统软件架构为典型的前后台式架构,基本流程如图8所示,整体采用模块化的软件设计方法,将系统功能分解为多个子模块,每个模块对应一个状态机,系统在初始化完成之后,即进入主循环,各状态机依据在程序中的前后位置依次获得CPU时间循环运行。

在主程序被引导后,第一步执行软硬件初始化任务。包括申请必要的软件资源,配置硬件参数,如时钟、定时器、IO口、串口、AD采样等,并使能相关外设。

初始化完成后,进入主循环。包括电源管理、网络通信处理、CAN数据采集及故障诊断、定位及违章报警处理、发送任务管理等子模块。

网络及通信模块:为上层应用提供稳定的通信链路层。包括设备初始化、登录、网络自动恢复、短信处理、数据发送处理等。通信方式为串口。

CAN数据采集及故障诊断:实时采集CAN数据,检测故障标志位,如置位则发起诊断协议读取故障码并上报到服务器;同时设备接收其他总线节点发起的自诊断请求。诊断协议要求支持KWP2000onCAN和UDS故障诊断标准,支持ISO15765-2传输层协议。

发送任务管理模块:将网络和短信发送任务的发送过程进行统一管理,发送任务管理,负责任务的提交、调度、发送、超时控制和重发、发送状态的异步反馈。主要作用是:将应用层与通信层分离,使得应用层只需专注于协议本身的逻辑处理,而屏蔽了网络数据传输的细节。

总结

本文实现了一种支持通用诊断协议标准的,应用于纯电动汽车开发的远程故障诊断tbox设备,该设备能够实时监控整车及其关键零部件运行数据,并通过无线、互联网络等网络基础设施,远程查询整车的运行状态,对车辆进行远程故障诊断,并及时获取故障及状态数据,为新能源汽车关键设备的运行状态管理提供有力的技术手段。