一种电动汽车电池监控tbox的设计与实现论文_陈诚1,郭洲2

(1.南京因泰莱电器股份有限公司 江苏南京 211100;2.南京鼓楼医院行政处 江苏南京 210009)

摘要:为了实现对新能源电动汽车电池系统数据及其运行工况进行实时数据采集,准确掌握新能源汽车动力电池状态,该文设计了一款针对电动汽车电池监控的tbox系统,该系统通过CAN总线实时采集新能源汽车上电池的运行数据和状态,通过GPS校时和监视车辆运行轨迹,最后通过4G网络将数据传到服务器供运维人员查看监视车上电池状况,保证车辆运行安全。同时为车载电池研发提供数据支持,为其研发改进,质量提升提供参考。

关键字:tbox;CAN;GPS;4G;数据采集与监控

引言

随着化石能源的枯竭和燃烧化石能源造成的环境污染,全球一直在大力发展新能源。汽车是化石能源的消耗和大气污染的源头之一,世界各国都在大力发展系能源电动车。动力电池作为电动汽车的主要部件,它的运行状况决定着车辆的行驶里程,安全等。而TBOX 作为车辆与外媒沟通的桥梁[1],将汽车,移动通讯,互联网有机自然的融合在一起,实现在信息网络平台上对车辆所有的属性信息和静、动态信息进行提取和有效利用,并根据不同的功能需求对车辆所有的运行状态进行有效的监管和提供综合服务,根据需求设计一种电动汽车电池监控tbox就非常重要。

1 硬件设计

1.1核心板设计

该方案分核心板和扩展板,核心板运行系统和存储,扩展板提供与外部接口。基本原理图如图1所示:

图1 基本原理图

其中核心板CPU采用ARM Cortex-A8架构,工业级温宽单片机Ti am3352 处理器,主要参数如下:

ARM32 Cortex-A8架构CPU,主频600MHz;

内存256MB DDR3,工业级温宽:-40℃~+85℃;

256MB SLC NandFlash,工业级温宽:-40℃~+85℃。

1.2扩展板设计

该方案扩展板设计了丰富的接口,从而能够满足对外通讯的需要,又可以方便开发人员进行调试,同时为了能够实现批量化的生产,配备了可以实现进行插卡即可实现升级的TF接口。扩展板主要接口如下:

CAN接口,提供两路2路CAN,且均支持CAN2.0 Part A和2.0 Part B,最高传输速度可达1 Mbit/s;

4G/GPS模块, 使用带GPS功能的移远4G模块,能够实现4G通讯和GPS定位;

SIM卡接口,可以插入购买的MICRO-SIM流量卡,用以配合4G使用;

百兆以太网接口,1路10/100自适应网络接口,方便调试和程序下载;

DEBUG调试串口,RS232电平,方便查看打印信息和命令操作;

TF卡接口,支持大容量TF卡和MicroSD卡,设计了热插拔检测,支持SD Memory Card协议v2.0,通过TF卡可以简单快速批量下载程序;

RTC时钟,采用高精度RX8025时钟芯片,后备电池可以在断电时保证时间不丢失;

输入电压9-30V,适应车载常用的24V电压。

2 软件设计

2.1软件整体架构

软件系统分为操作系统和应用软件。本系统操作系统选用了先进的开放源代码的嵌入式LINUX实时操作系统,充分利用LINUX源代码的开放性以及强大的网络功能,有效避免病毒的攻击。它支持嵌入式网络设备中的SSH、Telnet、FTP、及整个TCP/IP体系结构。

LINUX系统强大的网络功能可以减少软件工作量,通过AT指令[2]控制4G模块后,对于应用层而言4G模块只是一个以太网口,这样所有关于4G通讯的软件都当做以太网通讯来处理即可。通过设置LINUX系统参数可以很容易实现软件的自启动控制。编写shell脚本实现守护进程,从而保证软件奔溃也能重新启动。守护进程sh脚本内容如下:

CheckProcess()

{

# 检查输入的参数是否有效

if [ "$1" = "" ];

then

return 1

fi

#$PROCESS_NUM获取指定进程名的数目,为1返回0,表示正常,不为1返回1,表示有错误,需要重新启动

PROCESS_NUM=`ps | grep "$1" | grep -v "grep" | wc -l`

if [ $PROCESS_NUM -gt 0 ];

then

return 0

else

return 1

fi

}

# 检查main实例是否已经存在

while [ 1 ] ; do

sleep 300

CheckProcess "main"

CheckQQ_RET=$?

if [ $CheckQQ_RET -eq 1 ];

then

# 杀死所有main进程

killall main

reboot

fi

done

2.2应用程序整体架构

应用程序采用分层结构设计,分为数据层、通讯层和应用层3部分,其程序架构如图2所示:

图2 应用程序整体架构

数据层分为3部分,包括内存库、配置文件和sqlite数据库。(1)内存库放于内存中,读写和响应速度快,用于存放TBOX获取的实时数据,是整个系统的数据核心。内存库以数据类型进行分类,主要分为模拟量、开关量、遥控量等。(2)配置文件主要存放应用软件的配置信息,针对不同的TBOX该部分内容可配置,以方便远方服务器进行区别,该内容掉电不丢失。(3) SQLite是一种嵌入式数据库,能够跨平台。由于SQLite本身是C写的,而且体积很小,所以经常被集成到各种应用程序中。SQlite在TBOX中用于存储历史数据。

通信层分为通讯端口和通讯协议两部分。两部分都采用动态库的形式。动态库文件与主程序独立,只要对外接口不变,更换动态库不会对主程序造成任何影响,因而极大地提高了可维护性和可扩展性,而且开发过程独立、耦合度小,便于不同开发者之间进行开发和测试,在嵌入式环境下还可以节省系统空间。通讯端口和通讯协议以一个端口挂载多个动态库的模式,通讯端口负责数据的收发,通讯协议负责报文内容的解析和与内存库交互。

(1)通讯端口部分主要用于进行端口交互,本TBOX主要对外通讯端口是4G和CAN口,4G对于应用层而言就是以太网口,采用TCP/IP协议。因为4G网络的IP地址是移动基站分配的,具有是内网地址和随机变化的特点,因此以太网端口必须做成客户端,主动去连接服务器。CAN端口采用本标准的设备应使用CAN扩展帧的29位标识符[3],通信速率采用250 kbit/s。

(2)通讯协议规定了TBOX对外通讯报文格式和内容,电池控制系统BMS主要采用CAN通讯,TBOX的CAN口与其通讯时可以根据用户需求进行定制,从而满足兼容不同BMS厂家的要求。GPS信号有多种类型,我们采用GPRMC 最小定位信息,其内容解释如下:

$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh

<1> UTC 时间,hhmmss(时分秒)格式

<2> 定位状态,A=有效定位,V=无效定位

<3>纬度ddmm.mmmm(度分)格式(前面的0也将被传输)

<4> 纬度半球N(北半球)或S(南半球)

<5>经度dddmm.mmmm(度分)格式(前面的0也将被传输)

<6> 经度半球E(东经)或W(西经)

<7>地面速率(000.0~999.9节,前面的0也将被传输)

<8>地面航向(000.0~359.9度,以真北为参考基准,前面的0也将被传输)

<9> UTC 日期,ddmmyy(日月年)格式

<10>磁偏角(000.0~180.0度,前面的0也将被传输)

<11> 磁偏角方向,E(东)或W(西)

<12>模式指示(仅NMEA01833.00版本输出,A=自主定位,D=差分,E=估算,N=数据无效)

程序获取了经纬度坐标上传服务器,获取时间信息对TBOX进行校时。4G通讯协议统一采用改进的IEC104协议。TBOX的IP地址是随机可变的,当前TBOX登入服务器时需要先向服务器发送登入指令,在服务器给予肯定应答后才能进行数据交互,交互流程如图3所示:

图3 远程终端登入流程示意图

因为标准IEC104协议数据长度只有1个字节,一帧数据的传输数量有限,当前电动汽车中电池组数量很大时数据量很多,为了快速传输到服务器,将数据长度修改为2字节,可变结构限定词修改为2字节,这样一帧报文字节数大大提高。数据包结构定义如表1所示:改进的IEC104协议采用总召唤上送和突变量上送两种模式,技能大量上送数据,又能对变化数据快速响应。

表1数据包结构和定义

应用层主要包括动态库管理、配置文件管理和数据接口管理3部分。动态库管理负责动态库的加载判断,创建内存库。配置文件管理负责配置文件的读取和修改。数据接口保证通讯层和数据层的数据交换。

3 结论

本套TBOX系统已经在实际电动汽车项目中成功运用。本TBOX稳定采集了电动汽电池的各项数据及其报警信息,成功的将电池的各项数据发送到运维端的服务器,为电动汽车的安全稳定运行提供保证,为动力电池的研发和质量提升提供数据支持。

参考文献:

[1]李志辉, 北汽新能源汽车 TBOX 软件设计与实现[D].大连:大连理工大学,2017

[2]高正东,汪炜.一种汽车远程故障诊断仪TBOX的设计和实现[J].今日电子,2013,(12):58~61

[3]赵广磊,基于嵌入式系统的CAN总线与以太网的网关设计[D]. 武汉:华中科技大学,2009

论文作者:陈诚1,郭洲2

论文发表刊物:《电力设备》2018年第19期

论文发表时间:2018/10/14

标签:;  ;  ;  ;  ;  ;  ;  ;  

一种电动汽车电池监控tbox的设计与实现论文_陈诚1,郭洲2
下载Doc文档

猜你喜欢