- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Freescale汽车运行参数存储和远程传输系统设计
基于Freescale汽车运行参数存储和远程传输系统设计
摘要:提出了一种基于Freescale单片机,应用GPRS和GPS混合通讯技术的汽车远程参数存储与远程传输系统网络架构,设计了ECU节点硬件,分别对CAN通信模块、GPRS通信模块、GPS通信模块等方面作了详细分析。设计了ECU节点软件,分析了CAN驱动层的实现方案。经测试,该系统功能完善,性能可靠,达到了远程数据采集与传输的要求。
关键词:Freescale,车辆远程数据采集,GPRS, GPS
中图分类号:U495 文献标志码:A 文章编号:1005-2550(2013)03-0054-04
在汽车研发过程中,需要对各个部件进行实时监测,即时记录运行数据,用于分析各部件的运行特性,为控制策略的不断改进提供依据。人工或有线方式进行数据采集的方法存在诸多不足,而利用GPRS无线网络进行数据传输是一种快捷、有效的解决方法。本文提出了一种基于Freescale单片机,应用GPRS和GPS混合通讯技术的远端数据自动采集及传输系统的解决方案。
1 节点硬件设计
系统以Freescale公司MC9S12DP256微处理器为核心构建节点硬件系统,设计汽车远程参数存储与远程传输系统通信网络。节点硬件模块包括:MCU模块、电源管理模块、CAN通信模块、GSM通信模块、GPRS通信模块、SCI通信模块、调试模块等。
1.1 MCU模块设计
MCU模块是整个控制系统核心。MCU选用Freescale公司MC9S12DP256微处理器,其内部集成MSCAN08结构的CAN总线控制器和SCI串行通讯端口。
1.2 CAN通信模块设计
2 节点软件设计
系统的主要功能就是对数据的采集处理分析、加密、封装并通过GPRS模块发送,采用了模块化设计。车上各采集模块实时将采集得到的数据经CAN总线传给MCU,同时GPS模块实时采集卫星给出的定位信息并送给中央处理器MCU;MCU解算出后按照一定的协议规则封装,再通过串口发至GPRS模块;GPRS模块内嵌的TCP/IP协议将MCU发来的数据封装成TCP/UDP数据包后加上IP报头和报尾封装成IP数据报,通过GPRS网络送达到相应的GGSN(Gateway GPRS Support Node,网关GPRS支持节点),GGSN对数据报文进行相应的协议转换和新的封装,并根据其IP地址选择路由并进行传送。
2.1 主程序设计
系统上电复位后完成初始化。然后根据GPRS模块的状态建立GPRS的连接。在GPRS连接期间,检测GPS定位是否成功,是否接收到CAN报文帧,是否收到系统设置请求,如果收到,则分别进入GPS数据处理模块、CAN数据处理模块、系统设置模块;如果GPRS连接成功,各个模块仍正常进行,并且将进行数据发送(见图5)。
2.2 GPS模块程序设计
一般情况下GPS数据采集的频率较低,采集周期较大,因而可以将其优先级设置的较低。GPS的数据接收是在中断中进行的,根据接收数据的前几位是否满足GPS数据类型(如$GPGGA)来判断数据是否为GPS卫星定位数据;如果满足则进入GPS数据处理模块。判断GPRS是否在线的原因是为了实现数据的调度发送。当GPRS在线,按时发送最新的采集数据。当GPRS不在线时,采集的数据无法发送出去,这时就需要缓存这些数据,在网络重新连接时将数据发送出去,以保证数据的完整、可靠。
2.3 GPRS模块程序设计
进行GPRS通信链路建立[14]的过程中,必须依据一定的步骤来建立连接。而每一步对应着GPRS模块的某个状态。这样在程序设计时,我们可以根据GPRS模块当前的状态来决定下一步的执行。由于每一步中命令存在发送需要一定的时间、响应返回有一定的延时、命令有可能发送失败等情况,我们必须设定一个空状态,来实现延时、超时、错误处理等。下面我们来设计状态机,由上述情况可知,系统存成两个状态:工作状态和空状态。将发送命令或发送数据的步骤视为工作状态,其他情况视为空状态。
2.4 数据发送调度模块程序设计
在实际运行中,常遇到GPRS网络掉线的情况,如车辆启动时,GPRS网络还来不及连接成功;当车辆进入GPRS信号弱或是没有的区域,GPRS网络也是不可用的,就需要将这些数据缓存。判断GPRS是否在线的原因是为了实现数据的调度发送。这样就有两种数据发送方案:一种是GPRS在线时,按时发送最新的采集数据;另一种是当GPRS不在线时,缓存数据,在网络重新连接时将数据发送出去,以保证数据的完整、可靠。数据调度就是为了实现这两种方案。数据调度包含两个部分:一个部分是在数据的接收存储过程中,可以参考GPS通信模块和CAN通信模块;另一个部分就是
原创力文档


文档评论(0)