DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1400|回复: 0
打印 上一主题 下一主题

[待整理] 汽车行驶记录系统中AT89C51ED2的设计与实现

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-27 21:28:29 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
摘要:本文介绍了AT89C51ED2 在汽车行驶记录仪中的实现。该记录仪采用大容量闪速存储器FM1808 作为存储载体,利用定时器中断方式来实现秒间隔的数据采集与存储,利用串行口中断方式实现与微机的数据通信,通过USB HOST 和IC 卡实现对车辆记录数据的快速下载和出行任务的灵活设置。

关键词:汽车行驶记录仪;AT89C51ED2;闪速存储器


       随着社会的发展,汽车越来越普及,随着汽车拥有量的增加,发生交通事故的概率也随之增加,发生事故后用传统的方法进行分析、判断、维修有一定的困难。这样,就给人们提出了一个问题,怎样及时、准备地分析故障的存在,客观地分析事故的责任。汽车行驶记录仪作为一种降低交通事故的发生率,规范和保障驾驶人员的行为和权益,方便交通管理部门执法检查和事故责任认定,提高运营单位对司乘人员和车辆的监督管理的一种重要手段,越来越得到人们的关注和重视。设计一种能满足车辆管理,事故认定及疲劳驾驶提醒的车载仪器迫在眉睫。本文介绍一种价格低,功能较齐全且能扩展的采用AT89C51ED2 作为MCU 的汽车行驶记录系统设计与实现。
1 系统的硬件总体设计


        本记录仪采用Atmel 公司AT89C51ED2 单片机作为主控机,并行接口铁电存储器FM1808 作为大容量闪速存储器,选用DS12C887 时钟电路,利用高精度A/D 转换器采集汽车传感器转换的模拟量,并直接记录各种汽车信号的开关量。同时利用USB 口、IC 卡或串口实现与微机的数据通信,把汽车行驶记录数据信息存储到计算机上。汽车行驶记录仪工作时,由单片机通过前端接口电路拾取汽车行驶状态的各种信息,包括车速、发动机转速和车辆各种开关信号等。汽车行驶记录仪以实时时钟为基准,把车辆信息按类别分别存入FRAM 和FLASH。需要从汽车行驶记录仪中获取汽车记录状态信息时,用户插入优盘,单片机自动识别优盘并加载驱动程序,当完成设备枚举和Bulk_Only 传输协议后,单片机就可以把汽车行驶记录仪中记录的状态信息以文件的形式传输到优盘,也可以通过协议将信息以文件的形式传输到大容量的24C64 的IC 卡上。系统框架如图1 所示。AT89C51ED2 单片机是汽车行驶记录仪的核心,整个系统由数据采集模块、信息处理、存储模块、时钟模块、通信模块、显示模块和电源模块组成。考虑到汽车的复杂工况以及记录仪的性价比,单片机至少为工业级产品,AT89C51ED2 是美国ATMEL公司生产的低电压,高性能CMOS 8 位单片机,片内含4k byte 的可反复擦写的只读程序存储器(PEROM)和128 bytes 的随机存取数据存储器(RAM),器件采用ATMEL 公司的高密度、非易失性存储技术生产,兼容标准MCS-51 指令系统,片内置通用8 位中央处理器(CPU)和16KB 的Flash 存储单元,2KB 的EEPROM,3 个16 位定时器,有看门狗和ISP 功能,同时具有封装小、功耗低等优点,非常适合作为汽车行驶记录仪的主控MCU。
2 主控单元实现信息采集和数据处理设计
        汽车行驶记录仪要求实时记录车辆行驶的各种状态信息,MCU 主控单元把从外围设备传来的数据进行分析、处理并作出相应的指令。而其外围设备主要包括开关量数据采集模块、时钟数据采集模块、速度数据采集模块、信息处理及存储模块设计、模拟量数据采集模块。
2.1 开关量数据采集
        如图2 所示开关量数据采集示意图。汽车行驶记录仪要求实时记录车辆行驶的各种状态信息,如图所示各种车辆开关量数据状态信息,都必须经过光耦的隔离,并行输入74HC573 中,然后经过74HC573转换成CPU 能接收的“0”或“1”状态信号,再由AT89C51ED2 进行接收,按一定的时间间隔传送到存储器相应的地址位。


2.2 速度数据采集设计
        汽车速度的测量是通过计数速度传感器产生的脉冲信号,脉冲信号经过抗扰度大于50%施密特触发器电路CD40106 传送到AT89C51ED2 型单片机的P3.2 口,该单片机可设定一个守量器来计数速度脉冲信号,并将其转换成汽车的实际行程,同时根据行程和时间可计算汽车行驶的速度,按一定的时间间隔传送到存储器相应的地址位。速度计算运行部分程序如下






2.3 信息处理及存储设计
        由于要求系统具有实时时间、日期及驾驶时间的采集、记录、存储功能;车辆行驶速度的测量、记录、存储功能;车辆行驶里程的测量、记录、存储功能;记录仪应能以不大于0.2 s 的时间间隔,持续记录并存储停车前20 s 实时时间对应的车辆行驶速度值,及车辆制动状态信号,记录次数至少为10 次的功能。因此要有既满足了数据存储擦写次数的要求,也有存储量大和成本比较低的功能。RAMTRON 公司生产的并行接口高性能铁电存储器FM1808 是比较理想选择产品,FM1808 具有100 亿次的读写寿命,几乎可以像RAM 那样无限次写入;广泛应用于在系统掉电后需要可靠保存程序及数据的应用领域;数据存储模块 FM1808 的引脚如图3 所示,AT89C51ED2 通过AD0~AD7八位数据总线和FM1808 相连,AT89C51ED2 通过八位数据总线把记录下来的整度、汽车的实时行驶状态定时地传送到存储器的相应地址位置上(程序略)。
2.4 时钟数据采集
        本系统选用DS12887 时钟电路。DS12887 是跨越 2000 年的时钟电路,采用4 位数表示年度的日历系统。DS12887 能够自动存取并更新当前的时间,AT89C51ED2 通过读DS12887 的内部时标寄存器得到当前的时间和日
历,也可通过选择二进制码或BCD 码初始化电路的10 个时标寄存器。由于数据采集以固定的秒间隔来进行,因此,系统只是在刚开始运行时和每个扇区的起始位置采集并存储时钟信号作为时间标记,而后面数据的采集时间则以这些时间标记为参照。在本系统重新上电运行时,需要记录开始采集的时间信息。由于系统电源是由汽车电源提供的,所以开始采集的时间也就是汽车启动的时间,以此作为汽车开始行驶的时间标记。在程序运行中,由主程序设定一个汽车启动标志,在第一次写数据之前汽车启动标志有效,然后首先判断当前存储地址是否有某个扇区的首地址,如果是,则根据写扇区的要求在第七个字节开始处存储当前的时钟信号,否则,在当前存储地址处开始用10 个字节存储当前的时钟信号,记录汽车开始运行的起始时间,然后清除汽车启动标志。扇区开始地址处记录的时间信息是否是汽车开始运行的起始时间,可根据前一个扇区记录的时间信息进行判断。若前后两个扇区记录的数据是连续的,则后一个扇区头记录的时间信息不是表示汽车开始运行的起始时间,否则情况相反。
2.5 串口通信和USB 存储设计
        计算机可以通过串口读取行驶记录仪存储的数据。行驶记录仪与计算机之间的串口通信遵循RS232协议。串行通信时,CPU 依次将Flash 中存储的数据读出并经P3.0(OUT)串口发出,然后经过MAX232电平转换器送给计算机,再由计算机通过串口接收该数据。接收数据时, 计算机通过串口发送数据给MAX232 电平转换器, MCU 经P3.1(IN)串口接收。用 USB 进行数据的采集,目前市场上的USB 设备芯片比较多,而HOST 要少一些,选择USB HOST接口芯片主要考虑两点:一是在硬件上比较容易和51 单片机相连接,二是软件开发难度不太大,因此选择
SL811HST 比较合适。SL811HST 通过D0~D7 和AT89C51DE2 的P0.0~P0.7 来进行数据的交换。存储器上存储的数据也可以通过AT89C51DE2 的P3.4 和P3.5 口直接写到24C64 的IC 卡上。



3 管理软件的设计
        由于国家对行驶记录仪通信协议有具体的要求,因此行驶记录仪和管理软件的通信协议满足国家规定要求。它将从记录仪上传来的各种信息进行归类整理。利用Visual C++ 6.0 作为开发工具,编写微机数据分析处理程序,模拟显示汽车运行时的状态;利用图形显示各分量的波形,如前向灯开关情况、左右方向灯开关情况、开门信息、刹车信号、水温变化情况(范围为0℃~100℃)等,并能实现文档保存,也可以进行打印。
4 结束语
        本车辆充分发挥了AT89C51ED2 微控制器强大的功能、简化了外围电路设计,同时采用嵌入式USB数据管理机制加上通过串口或IC 卡接收汽车行驶的数据,并对数据进行分析处理;不仅解决了以往车辆行驶记录仪中数据难以管理的问题,而且大大降低了硬件成本。采用本设计的车辆行驶记录仪已应用到企事业单位的车辆管理中,实现了对车辆运营的透明化管理,节约了运营费用。
参考文献:
[1]Abraham I.Pressman.Switching Power Supply Design[M].Mc Graw-Hill.,1998,25:180.
[2]]靳达.单片机应用系统开发实例导航[M].北京:人民邮电出版社,2003.213-262.
[3]余永权.Flash 单片机原理及应用[M].北京:电子工业出版社,1997.183-221.
[4]郭兵.电子设计自动化(EDA)技术应用[M].北京:机械工业出版社,2004.52-159.
[5]黄书伟,卢申林,钱毓清.印刷电路板的可靠性[M].北京:国防工业出版社,2004.59-192.
[6]马忠梅.单片机的C 语言应用程序设计[M].北京:北京航空航天出版社,1999.123-211.
[7]蒋建军.GPS 车辆监控系统中串行总线接口设计与实现[J].微计算机信息,2006,4-1:262-264

作者简介:苏 磊(1969- ),男,江苏泰州人,工程师,主要研究方向控制应用技术、智能系统。单位:南京理工大学泰州科技学院
通迅地址:泰州市梅兰东路8 号 电工电子实验中心 邮编:225300
Email:leisu8888@163.com
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-26 01:23 , 耗时 3.085993 秒, 21 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

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