目前,车载信息系统逐渐成为融合先进的电子、计算机、通信技术的智能交通系统(ITS)中必不可少的部分。
车载信息系统在统一的硬件平台上集成了汽车仪表、防盗监控、自动导航、媒体播放、浏览网络等多种信息服务,与车内多个部件的单独开发集成相比,节省了材料成本及通信成本,有利于汽车信息的数字化,也有利于提高整车性价比。[1]
汽车监控系统,是车载信息系统的一个重要组成部分,为汽车的防盗提供重要的保障。目前,汽车监控器的原理主要分为如下三类:短程监控和无线远程监控和GPS定位监控。常用的近距离声音监控器一般通过振动传感器感知被保护物体(如汽车或保险箱)的异常振动,然后驱动大功率声音报警。该监控方式缺点是监控距离短、对环境产生噪音污染、误报率高、监控器易被拆卸或遭破坏。普通无线监控器则是利用专有的无线电频率进行信息的监控,具有传输距离短、易受障碍物干扰等缺点。GPS定位报警器[1]利用现代电子信息技术、航天技术和网络技术,实现汽车与车主的实时信息反馈,也具有存在“盲区”,费用较高等缺陷。
GSM是目前基于时分多址技术的移动通信体制中较为成熟、完善、应用广泛的一种系统。GSM系统集中了现代信源编码技术、信道编码、交织、均衡技术、数字调制技术、话音编码技术以及慢调频技术,同时在系统中引入了大量计算机控制和管理,因而保证了数据传输的正确性、安全性和可靠性。[2]
arm处理器是目前嵌入式系统中普遍采用的处理器,作为车载信息系统的硬件平台,具有体积小、成本低、性能高、内嵌资源丰富等特点。
为此,设计了一款基于ARM的GSM远程监控系统,它以GSM网络作为通信载体,以arm 处理器S3C2410作为基本硬件平台,实现汽车状态的自动监测与及时控制。
2 系统分析
基于ARM的GSM汽车监控系统是一种新型的汽车监控系统,内部嵌入了专用通信模块。该监控器的工作原理如图1所示:当传感器检测到车门开启或是发动机开启信号时,经过A/D转换模块将信号转换成数字信号并传送给ARM处理器,arm处理器分析并处理该信息,将处理的结果(报警信息)以AT命令的形式发送给无线通信模块,无线通信模块将报警信号以短信的方式发送到预定的车主手机中。车主根据收到的报警信息回复相应的短信,实现对汽车的控制如强迫关闭发动机或车门死锁等操作。利用GSM网络,可以将报警信息传送到移动通讯覆盖的任何地方,克服了现有技术报警信号传送距离有限和噪音污染的缺陷。
监控器还应具有修改系统密码、动态设置监控器的控制与解锁指令、设置车主手机号码等指令,在进行这些设置时需要用户在短信中提供密码以进行身份校验。
图1 远程监控器硬件结构示意图
3 硬件设计
基于arm的GSM远程监控系统主要包含S3C2410目标板、TC35i通信模块、SIM卡模块、光电耦合器、传感器、控制器、电源系统等部分组成,如图2所示。整个系统可分为三个部分:
1) 监测部分 车门开关传感器、发动机振动传感器通过光电耦合器与S3C2410目标板的GPIO端口相连,对连接传感器的端口将其配置为输入模式。可以将相应的GPIO端口与外部中断源进行绑定,当有相应信号产生时,触发中断,进行相应报警事件的处理。
2) 控制部分 控制器通过光电耦合器与目标板的GPIO端口连接,对连接控制器的端口配置为输出端口。目标板发出的控制信号经控制器放大后去控制锁定/开启车门,或者控制发动机的熄火与启动
3) 通信部分 目标板通过串口与GSM移动通信模块相连接,以进行报警信息的发送或接收车主发送过来的控制指令及系统配置指令。通信模块中有一张SIM卡,以实现对短信发送者或接收者身份的确定。
4) 电源部分 监控系统的电源部分包括目标板供电、控制器及传感器的供电,由于两者电压及电流的不同,这里用光电耦合器进行隔断,以避免控制器中较大的电流对目标板损坏。整个电源系统可来自于汽车蓄电池,这样汽车熄火后也可以正常监控。
监控程序存储在目标板存储器中,监控程序是利用计算机进行交叉开发,最后下载固化到目标板中。
图2 远程监控器硬件连接图
4 软件设计
远程监控系统在嵌入式Linux平台下,利用C语言进行开发。远程监控系统主要分为如下模块:
1)无线通信模块 主要负责通信短信的发送与接收。短信的收发是通过向串口发送AT指令集来实现的。AT指令集是GSM 模块与嵌入式计算机之间的通信协议。AT指令是以AT作首,字符结束的字符串。每个指令执行成功与否都有相应的返回。其他的一些非预期的信息(如有人拨号进来、线路无信号等),模块也将有对应的一些信息提示,接收端可做相应的处理。
所使用的短信息规范为GSM07.05,方式为PDU模式[4]。PDU串表面上是一串ASCII码,由’0’-’9’和’A’-’F’这些数字和字母组成,它们是8位字节的十六进制数。PDU串不仅包含可显示的消息本身,还包含很多其他的附加信息,并且发送和接收的PDU串的结构也不完全一样。发送短消息的PDU串的格式如表1所示,接受短消息格式与此略有不同,这里不再赘述。
表1发送短信息PDU串格式
分段 |
含义 |
说明 |
08 |
SMSC地址信息的长度 |
共8个八位字节(包括91) |
91 |
SMSC地址格式(TON/NPI) |
用国际格式号码(在前面加‘+’) |
68 31 08 20 08 05 F0 |
SMSC地址 |
8613800280500,补‘F’凑成偶数个 |
11 |
基本参数(TP-MTI/VFP) |
发送,TP-VP用相对格式 |
00 |
消息基准值(TP-MR) |
0 |
0D |
目标地址数字个数 |
共13个十进制数(不包括91和‘F’) |
91 |
目标地址格式(TON/NPI) |
用国际格式号码(在前面加‘+’) |
68 31 58 81 27 F8 |
目标地址(TP-DA) |
8613851872468,补‘F’凑成偶数个 |
00 |
协议标识(TP-PID) |
是普通GSM类型,点到点方式 |
00 |
用户信息编码方式(TP-DCS) |
7-bit编码 |
00 |
有效期(TP-VP) |
5分钟 |
06 |
用户信息长度(TP-UDL) |
实际长度6个字节 |
C8 32 9B FD 0E 01 |
用户信息(TP-UD) |
“Hello!” |
短信PDU编码的生成与解码都按照GSM07.05规范写成相应的函数以供监控模块和系统设置等模块调用。
2)监测与控制模块 监测模块主要完成对传感器信息的检测,在满足条件时产生中断,在中断服务程序中,生成报警短信并调用发送短信函数将报警信息发送给车主手机中。控制模块根据接收到的短信内容,发送相应的控件信号给控制器。
3)系统设置模块 主要完成对车主手机号码、短信中心号码、系统密码、报警信息内容、回复指令内容等内容的修改,以增加系统的安全性。设置短信内容格式如表2所示。
表2 远程监控系统应用层指令
指令 |
功能 |
SET CTR |
设置短信中心号码 |
SET USR |
设置车主手机号码 |
SET MSG |
设置报警短信的文本内容 |
SET LCK |
设置锁定控制指令的内容 |
SET ULK |
设置解锁控制指令的内容 |
有关系统设置的信息以数据文件的方式存放在系统存储器中。当修改设置时,就会修改该文件中的内容。
整个系统的程序流程如图3所示。整个监控系统一上电后就开始运行,只要有检测的中断事件发生,就处理中断。当有新短信到达时,也会向串口发送一指定信息,因此对串口数据的接受也应采用中断方式。这样系统的效率较高,避免程序的不断循环而浪费处理器资源。
图3 远程监控系统程序流程图
5 结束语
基于ARM的GSM远程监控器是目前较为先进的汽车监控系统,它具有如下特点:1)利用短信作为传输手段,可以实现汽车状态信息的“零时间报警”;2)借助于全球化的GSM网络,无论车主身在何处,都可以“长距离报警”;3)以arm为基础的汽车监控系统作为车载信息系统的一部分,在整体上具有“高性价比”;4)使用手机作为监控器的操作终端,手机短信作为控制指令载体,具有操作方便的特点。
基于arm的GSM远程监控系统不光是在汽车防盗系统中有着广泛应用,同时它也提供了一种现代远程监控系统的新模式,在铁路、交通、电力、工业、环保、水文等多种领域有着广泛的应用前景。