微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于ARM的车辆工况信息采集终端的设计

基于ARM的车辆工况信息采集终端的设计

时间:09-12 来源:互联网 点击:

直流电输出。其中+3.3 V直流电用于向S3C 44BOX主控芯片和CAN总线电路供电:+4.2 V直流电用于向GPS卫星数据获取电路和GPRS数据无线传输电路供电;液晶显示电路直接由+12 V电源供电。GPS卫星数据获取电路通过串口将获取的车辆位置信息传送给S3C44BOX,S3C44B0X通过串口与CAN总线电路进行数据交互以获取车辆工况信息。同时S3C44B0X通过串口驱动智能液晶显示电路显示相关界面辅助用户操作,最后S3C44B0X通过串口向GPRS数据无线传输电路发送AT指令进行数据的无线发送,并通过该电路转接收监控中心发来的指令。

d.jpg

3 硬件电路的设计

在车辆工况信息采集终端中,GPS卫星数据获取电路和GPRS数据无线传输电路的抗电磁干扰性能,直接决定车辆工况信息采集终端运行的稳定性和数据报文传输的准确率。

3.1 GPS卫星数据获取电路

如图4所示,为GPS卫星数据获取电路。集成模块MIC29302为电压转换模块,将来自车载电瓶的+12 V直流电转换为+4.2 V的直流电供GS89模块使用,模块的1引脚(EN,高电

平有效)为输出使能引脚,S3C44B0X通过控制该引脚上的高低电平控制MIC29302输出电压的有无。电容C562X、C564X以及电阻 R550X、R551X组成地分离电路,将GPS卫星数据获取电路的供电电源和参考地与终端中其它电路进行隔离,降低其它电路对GPS卫星数据获取电路造成的电磁干扰。GS89模块为GPS卫星数据获取电路的核心器件,该模块完成对卫星报文的接收、解频并计算出车辆当前的经度、纬度、高度等位置信息,之后按照NMEA0183协议将数据通过串口以4 800 bps的速率输出给S3C44B0X。电路中R502X、Q501X、R505X以及R507X组成了信号放大电路,通过该电路可对来自S3C44B0X 通用I/O口的高低电平进行放大,实现对GS89模块的有效复位。

e.jpg

3.2 GPRS数据无线传输电路

如图5所示,为GPRS数据无线传输电路。电路中C666X和C667X主要用于滤除VBAT上的纹波。GPRS数据无线传输电路的核心器件为SIM900,该模块通过其上的RXD和TXD引脚实现与S3C44B0X的数据交互:来自S3C44B0X的AT指令经由该模块的RXD引脚被接收和处理并进一步通过GPRS网络上传给监控中心;来自监控中心的指令经由该模块的天线被接收、解频和处理之后通过该模块的TXD引脚将数据发送给 S3C44B0X。并由于本设计所选用的GPRS天线的阻抗值为50 Ω,为防止GPRS信号在传输过程中因天线阻抗值与传输线的特性阻抗不匹配而造成信号反射,降低GPRS信号质量,在绘制PCB电路板时,必须确保用于连接GPRS天线与SIM900的RF_ANT引脚的电气线的特性阻抗值为50 Ω。电路中的NCWZ07为高速电平转换芯片,通过该芯片可将SIM900输出的4.2 V串行信号转换为S3C44B0X可接收的313 V串行信号,实现SIM900和S3C44B0X的无障碍通信;电路中的MOLEX-91228为SIM卡座,用于安装SIM卡为防止来自SIM900的特高频信号在传至SIM卡时形成信号反射,降低信号质量,这里选用22 Ω的电阻R614X和R613X对二者进行阻抗匹配。

f.jpg

4 系统软件设计

根据车辆工况信息采集终端硬件结构以及应用需求,车辆工况信息采集终端的应用软件主要由包括以下几个应用程序:通话程序、GPS卫星数据获取程序、车辆工况信息获取程序、GPRS数据上传程序、监控中心指令获取程序以及图形界面显示程序。如图6为系统软件的主流程图,系统上电后,首先对S3C44B0X芯片以及GPS、CPRS模块进行初始化操作,发出开机提示音,并驱动液晶屏进入定位信息界面,之后等待各应用程序对应的中断发生,一旦有中断产生,CPU 即会跳去执行相应的中断处理程序。为确保高实时性的应用程序能第一时间占用CPU资源,程序设计过程中,对不同应用程序对应的中断的优先级做了如下定义,如表1,优先级值越小对应的优先级越高。为车辆工况信息采集终端的功能预留升级空间,本设计中,各中断的优先级值并未连续占用。

j.jpg

程序中,S3C44B0X与SIM900模快的数据交互是通过AT指令完成的。在进行数据无线发送时,首先要发送如下AT指令,建立移动场景:

“AT+CSTT=CMNET,“”,“”设置GPRS网络接入点名称,用户名和密码。命令执行正确返回“OK”否则返回“ERROR”。

“AT+CIICR”激活移动场景,发起GPRS连接。命令执行正确返回“OK”否则返回“ERROR”。

“AT+CIFSR”获取本地IP,命令执行正确返回本地IP地址,否则返回“ERROR”。

“AT+CIPSTART=“UDP/TCP”,“××.×××.××.×××”,“80×&times

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top