找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[嵌入式/ARM] 基于CAN总线的多功能汽车行驶记录仪设计

[复制链接]
admin 发表于 2013-3-26 21:37:10 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
   1.  概述
          汽车行驶记录仪,又称“汽车黑匣子”,是对车辆行驶速度、时间、里程以及有关车辆行驶的其他状态信息进行记录、存储并可通过接口实现数据输出的数字式电子记录装置[1]。多功能汽车行驶记录仪可详细记录车辆每次的起动时间、行驶里程、行驶时间、最高车速以及每次最高车速的持续时间,在汽车驾驶员超速行驶时发出超速报警声,储存停车前20秒的车辆信息,并且可以使用USB移动磁盘采集数据,具有GSM/GPRS远程数据传输、GPS定位等功能。同时可以建立监控中心,管理多个终端,方便交通管理部门根据所记录的有关数据对车辆进行有效的管理,大大地提高了驾驶员的安全责任心,从而可大幅度地降低事故的发生。
          为了使车辆的排放、舒适性、稳定性、动力性和制动性等技术性指标达到一定的要求,CAN总线已发展成为汽车电子系统的主流总线。目前,我国的轿车已具有一定的电子控制和网络功能。2006年,北京地区大客车的排放也要满足欧Ⅲ标准,并且已制定了基于CAN总线通信协议的SAE J1939作为载货车和大客车的通讯标准[2]。基于CAN总线的多功能汽车行驶记录仪,就是根据这种发展趋势,为有CAN总线的汽车而开发的,预留出CAN节点的接口,使其可以通过CAN总线采集数据,增强了多功能汽车行驶记录仪的扩展性。一旦出现故障,可以尽快的检测出问题,便于检修。
          2.  CAN总线技术
          CAN-bus(Controller Area Network)即控制器局域网,是德国BOSCH公司在80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信总线,是国际上应用最广泛的现场总线之一。它可靠性高、性能价格比高、适应性好。国外众多的汽车,如奔驰、宝马、大众、沃尔沃、雷诺及帕里奥汽车都采用了CAN总线技术[3]。CAN通信协议主要描述了设备之间的信息传递方式。通信接口集成了CAN协议物理层和数据链路层功能,可对通信数据进行帧处理。为在汽车这一特殊环境中的应用,提供了保证[3,4]:
          (1) 数据通信的可靠性  CAN总线每帧信息都有CRC校验及其他检错措施,具有极好的检错效果,并且CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响。
          (2) 数据通信的实时性  CAN总线的通信速率可达1Mbps,在报文标识符上,CAN上的节点分成不同的优先级,优先级高的数据享有占用总线的优先权,优先权高的数据最多可在134ms内得到传输。
          (3) 数据通信的灵活性  CAN总线是一种多主总线结构,各个节点之间相互独立,总线上任何一个节点均可在任意时刻主动地向网络上其它节点发送信息。面向数据块的通信方式,每帧数据量为8字节,通信介质为双绞线、同轴电缆或者光纤。由于CAN通信协议仅包括物理层和数据链路层说明,并未对应用层的功能和实现进行定义,因此,用户既可以采用国际CAN总线用户及制造商协会或其他一些组织制定的开放式高层协议,也可以在工程种灵活的实现自己的应用层。
          载货车和大客车的通讯标准SAE J1939则将汽车应用层进行具体实施,统一定义了整套的地址编码系统,这样不同厂家的控制器(ECU)可以接入同一网络系统,实现数据共享,从而减少了电子系统的线束,减少了冗余的传感器,降低了造价,提高了系统的通用性和可靠性,同时改善了系统的灵活性[5]。
          3.  系统总体结构设计
          多功能汽车行驶记录仪主要由CPU、数据存储器、CAN控制器/收发器、电源转换模块、GPS模块、GSM/GPRS模块、IC卡接口、开关量输入、USB接口及光电隔离电路等组成。系统总体结构图见图1:各部分采集数据后,通过CAN总线与记录仪通信,最终由记录仪完成数据的存储。由于采用了现场总线方式,实际布线非常简洁,只需要一条双芯电缆即可,扩展非常方便。多功能汽车行驶记录仪通过USB接口可以完成数据的导出,由管理分析软件完成数据的分析显示。
          3.1  CAN接口设计
          CAN接口模块,主要用于记录仪与总线间的数据采集。总线上的CAN节点模块采集各种数据,传输到总线上,记录仪通过其内部的CAN接口模块,获得各种模拟量信号及脉冲频率信号。CAN总线传输数据结构图见图2。这种采集数据的方式,具有很好的扩展性和可移植性。对于一些相对固定且常用的参数,如:车速,发动机转速,传感器模拟量输入等,可以直接设计成一个CAN节点模块,挂在总线上,适用于各种车型;对于其他不常用参数,可以根据需要进行扩展,做成活动的CAN节点,如:温度传感器,可以增设到CAN节点模块中,测出车内各座位的温度场分布。同时对于活动CAN节点,也可以设计成通用的模块,根据不同的车型和需要,改变CPU中的软件部分,即可得到想要的各种数据。
   
   
   
   
   
   
   
   
   
   
   
   图1 系统总体结构图
    20121107045154621613645.jpg
   
   
   
   
   
   图2  CAN总线传输数据结构图
          记录仪内部的CAN接口模块由看门狗、CAN控制器、CAN收发器、RS232、开关信号输入等部分组成。CAN接口模块图见图3。     
          (1)CAN控制器    选用Philips的SJA1000,它是一种独立控制器,用于移动目标和一般工业环境中的区域网络控制CAN。其中SJA1000的PeliCAN这种工作模式支持具有很多新特性的CAN2.0B协议。
          (2)CAN 驱动器    选用PCA82C250,也即CAN 协议控制器和物理总线的接口。此器件对总线提供差动发送能力,对CAN 控制器提供差动接收能力,它主要是为汽车中高速通讯(高达1Mbps)应用而设计,完全符合“ISO11898”标准,具有限流电路和热保护功能。CANH、CANL 两条线可防止在汽车环境下可能发生的电气瞬变现象。
    20121107045154730983646.jpg
   图3  CAN接口模块图
          3.2  CPU与存储器
          记录仪接收总线上的数据,汇总后进行数据的存储,并可根据事先确定的警戒值进行语音报警提示。核心是数据的准确可靠存储。
          这里CPU选择台湾华邦公司生产的8位单片机W77E58,与MCS51系列单片机具有相同内核,功能更加强大,可多次编程,在相同主频下,速度是89S52的3-4倍。它内部集成了32KB的可重复编程的Flash ROM、256字节的片内存储器、1KB用于MOVX指令访问的SRAM、可编程看门狗定时器、三个16位定时器、二个增强型的全双工串行口、片内RC震荡器、双16位数据指针等诸多功能。
          多功能汽车行驶记录仪对存储器的要求很高,要对大量的数据进行存储,需要外扩数据存储器。它所记录的数据包括两部分:一为停车前的疑点数据,存放停车前20秒的数据,用于分析事故发生的原因和事故的责任;二为历史记录,存放汽车整个行驶过程中的数据,用于考核驾驶员和汽车的运行状况。
          在存储模块中,采用了铁电存储器(FRAM)与DATA FLASH并用的方式。FRAM是美国Ramtron公司的核心技术,具有随机存取记忆体(RAM)和非易失性存储的特性,掉电后数据能保存10 年。它可擦写次数多,5V供电的FRAM 的擦写次数为100亿次,低电压的FRAM 的擦写次数为1亿亿次。速度快,功耗低,可以用于停车前20秒的数据存储。DATA FLASH选用Atmel公司生产的AT45DB041,它具有4Mbit的Flash的存储单元,可以存储26000条记录,由于采用SPI串行模式进行操作,可以很方便的与CPU进行通讯。在存储模块中,它用来存储历史数据。不同的芯片,增加的主存储器的容量不同,如AT45D081、AT45D161、AT45D321的容量分别为8M、16M、32Mbits。
          3.4  通信接口
          根据GB/T 19056-2003的国家标准,标准型记录仪应至少配置两种标准接口:(1)USB(通用串行总线)标准接口;(2)标准RS232D型9针接口。
          通过RS232串行口直接进行数据传输比较容易实现、普及广泛、可靠性高。芯片选用MAX232,它是一种双组驱动器/接收器,片内含有一个电容性电压发生器,可以在单5V供电时提供EIA/TIA-232-E电平。
          用USB标准接口传输数据,U盘体积小,容量大,便于携带,读取数据方便。采用CYPRESS公司生产的USB-HOST接口芯片SL811作为USB接口芯片。该芯片支持USB1.1协议,价格低,性能突出,可靠性高,可以理想地用于多种外设。它内部有256字节的RAM数据缓冲器,可以用来控制寄存器和数据缓存器。高速模式下支持12Mbps,低速模式下支持1.5Mbps。对于大多数厂家生产的USB移动磁盘(如朗科优盘、爱国者优盘等)都可以成功存取。
   
          4.  软件设计
          多功能汽车行驶记录仪的软件设计分为系统软件和管理软件两部分。
          系统软件的主要功能是对记录仪各个模块以及特殊寄存器进行初始化,巡回检测各个开关状态量和模拟量[6]。如记录仪设置模块初始化,包括记录间隔、报警速度阈值、车牌照等等,存储器初始化,GPS/GSM模块初始化等。它主要通过Keil C对单片机编程,实现上述功能。
          管理软件是多功能汽车行驶记录仪配套的管理软件,通过全球卫星定位系统(GPS)和地理信息系统(GIS)实现对车辆的全程跟踪,将车辆的各种违章事件都直观的反映出来,便于处理。它是建立在Microsoft Windows的基础上,以Mapinfo公司的地图二次开发控件MAPX为GIS软件开发平台,可以使用VB,VC等多种语言,进行开发[7]。
          管理软件具有数据智能分析功能。对记录仪记下的大量数据进行筛选、初步评价,给出智能报告。该数据分析功能可以分析以下数据:1、疑点数据;2、车辆行驶速度及里程数据(日期,时间,速度,里程);3、连续驾驶时间数据(起始日期,起始时刻,结束日期,结束时刻,驾驶证号码);4、车辆识别代号、车辆特征系数、车牌号码、车牌分类;5、驾驶员代码、驾驶证证号。为了提高分析数据的效率,可以分三类分析:1、超速(起始日期,起始时间,结束日期,结束时间);2、里程(起始日期,起始时间,结束日期,结束时间,行驶里程);3、疲劳驾驶(起始日期,起始时间,结束日期,结束时间)。超速是根据数据库内有记录的相应路段所对应的超速值来查询内存中1 h 内的超速数据;里程能提供30 d 内的任意时段的行驶里程;疲劳驾驶则是表示两个日历天内的疲劳驾驶数据。
          5.  结论
          本文详细介绍了一种基于CAN总线的多功能汽车行驶记录仪,对CPU的选择、CAN接口模块、存储器、通信模块、内部软件以及管理中心的建设做了深入的分析和说明。在标准汽车行驶记录仪的基础上,增加了USB移动磁盘采集数据,GSM/GPRS远程数据传输等功能,并与CAN总线技术相结合,增强了可扩展性。本多功能汽车行驶记录仪,已经开发成功,并且做了相应的实验,工作稳定性好、具有抗干扰的性能,使用效果良好。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-30 04:19 , Processed in 0.057670 second(s), 9 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表