APP下载

基于GPS的汽车防盗定位系统设计

2016-05-31刘香燕陈金鹰韩子康王飞严丹丹A

物联网技术 2016年5期
关键词:经纬度防盗控件

刘香燕 陈金鹰 韩子康 王飞 严丹丹A

摘 要:针对汽车安全问题提出了一种基于GPS、GIS以及GPRS的汽车远程定位防盗系统设计方案。该方案利用GPS信号接收模块定位得到汽车位置的原始数据,通过中央控制模块的处理获得具体的位置信息,最后由GPRS远程传输模块将数据传到远端的服务器端,服务器端使用VB进行开发,并利用MapX控件通过GIS软件MapInfo制作地图,将被监测汽车的位置等信息实时在PC机数据接收系统的数字地图上显示出来,通过地图每秒刷新一次的频率,配合其放大、缩小、平移等功能实现了对汽车直观、快捷、实时的远程跟踪监测。

关键词:北斗;定位;通用分组无线服务技术;显示;防盗;地理信息系统

中图分类号:U495 文献标识码:A 文章编号:2095-1302(2016)05-00-02

0 引 言

随着人们生活水平的日益提高,在汽车大量普及的同时,汽车的安全问题也得到了越来越广泛的关注。汽车防盗装置包括发动机防盗系统、安全锁、指纹识别以及人脸识别等,这些技术虽然先进但成本过高,普及难度大且无法实现实时了解汽车动态的功能。本文利用全球定位系统(Global Positioning System,GPS)作为汽车定位依据,其定位精度在几米之内[1]。通过通用分组无线服务技术(General Packet Radio Service,GPRS)将定位信息远程传输到车主的个人PC机,PC机上的地理信息系统(Geographic Information System,GIS)包括一个可视化的地图界面,其经纬度信息以定位点的形式显示在地图上,可供车主直观查看,从而通过车主对汽车的跟踪监测功能达到了防盗的目的[2,3]。

1 系统硬件设计

1.1 硬件电路

系统总体框图如图1所示,其中GPS定位系统、GPRS系统以及中央控制系统为硬件电路部分。TD3017A芯片(GPS)从外部提供的有源天线接收北斗卫星定位信号,信号经放大混频、滤波器处理之后由模拟数字转换成数字中频信号送给基带芯片。基带芯片接收到送来的数字信号后,经过一系列算法处理后由串口输出NMEA-0183格式的定位数据传输给单片机STC12C5A60S2。单片机对接收到的数据进行提取以及换算后将经纬度信息显示在LCD12864液晶显示屏上,同时将所提取的数据通过GPRS模块发送到电脑端的软件地图界面,显示经纬度的同时在地图上实时标识出所定的位置。

图1 系统总体框图

1.2 单片机程序设计

单片机控制的硬件系统实现流程如图2所示。STC12C5A60S2具有两个串口,利用其中一个串口实现定位数据接收,单片机从接收到的NMEA-0183数据格式的数据中提取经纬度数据并显示在LCD12864液晶显示屏上。另一个串口控制GPRS远程通信模块与PC机端的数据接收显示系统连接与通信,主要将控制AT指令以及经纬度信息通过网络传递到显示系统。单片机程序采用Keil μ Vision4利用C语言编程实现。其中经纬度信息根据NMEA-0183格式数据的规律性提取[4]。其核心代码如下:

GetData(str,,, 3, (char*)Latitude2);

//获取第3个","后的纬度方向字段

GetData(str,',', 4, (char*)direct2);

//获取第4个","后的纬度字段

GetData(str,,, 5, (char*)Latitude1);

//获取第5个","后的经度方向字段

GetData(str,',', 6, (char*)direct1);

//获取第6个","后的经度字段

单片机与GPRS模块连接的核心代码为:

SET_LOCAL_PORT[]=”AT+CLPORT=\”TCP\”,\”2022\”\r”;//设置本地端口(SET LOCAL PORT)

CONNECTION_IP[]=”AT+CIPSTART=\”TCP\”,\”117.139.245.35\”,\”8080\”\r”;

UART_Two_Printf(SET_LOCAL_PORT);

//发送设置端口信息

UART_Two_Printf(CONNECTION_IP);

//发送连接信息

图2 系统硬件实现流程图

2 系统软件设计

2.1 软件功能设计方案

在Visual Basic 6.0中制作好的GIS系统界面最终效果如图3所示。

GIS系统界面主要实现的功能包括以下6项:

(1)地图绘制功能:使用Map控件完成地图的绘制,Map控件是图3中标号3所示的地球状控件。

(2)地图查看功能:完成对地图放大、缩小、平移的功能。

(3)远程连接功能:通过Winsock控件实现GPRS模块与GIS系统的远程连接,Winsock控件是图3中标号2所示的电脑状控件。

(4)数据接收与提取功能:该功能完成对经纬度信息的接收以及提取功能。

(5)定位显示功能:将接收到的经纬度信息显示在相应文本框中,并通过Visual Basic 6.0软件实现位置的确定以及定点标注。

(6)定时刷新功能:此功能使地图以每秒一次的频率更新,由定时器控件Timer实现,Timer控件是图3中标号1所示的钟表状控件。

2.2 地图的制作与实现

由GIS地图制作软件MapInfo制作编辑好地图,将制作好的地图保存为.gst格式,此格式的地图可以通过具有很强的地图分析功能的Mapx控件打开,也可以通过GeoDict.DCT文件连接到Visual Basic 6.0的Map控件,通过Map控件就可以绘制出在MapInfo中制作好的地图[5-7]。其中,通过经纬度信息在地图图层中添加定位点的程序为:

Dim mobileobj As MapXLib.Feature //定义图元

Dim mobileftr As New MapXLib.Feature

Dim lyr As MapXLib.Layer//定义图层

mobileftr.Attach Map1//将图元依附在Map1上

mobileftr.Type = miFeatureTypeSymbol//定义点图元类型

mobileftr.Style = Map1.DefaultStyle//暂时定为为默认样式

For Each lyr In Map1.Layers

If lyr.Name = “BDLayer” Then

Map1.Layers.Remove lyr //删除原轨迹图层,如果有的话

Set lyr = Map1.Layers.CreateLayer(“BDLayer”)

//创建轨迹图层

Set Map1.Layers.AnimationLayer = lyr

//将轨迹图层设为动态图层(加快刷新速度)

mobileftr.Point.Set BDLon, BDLat

//将转换为度格式后北斗经纬度数据赋值给该点图元

Set mobileobj = Map1.Layers(“BDLayer”).AddFeature(mobileftr) //将点图元增加到动态图层,实时地显示汽车在地图中的位置

mobileftr.Point.Set BDLon, BDLat

//重新为北斗导航点赋值经纬度

Map1.Layers(“BDLayer”).Refresh

//刷新地图的动态图层

图3 GIS系统

3 系统测试

经过多次调试,系统能够正确接收到GPS定位模块传来的数据并通过中央控制模块正确处理之后显示在LCD12864液晶显示屏上,具体如图4所示。

图4 液晶显示结果

同时,在PC机数据接收显示系统中的GIS图中也可以看到经纬度的显示数据以及在地图上的具体位置,图5所示的信科院旁边的红色小点,即为定位地点。

图5 GIS系统显示结果

4 结 语

本文介绍了一种基于GPS的汽车防盗定位系统设计,系统以STC12C5A60S2为中央控制系统,利用其双串口功能实现接收数据的同时控制GPRS模块与远端的GIS系统相互通信,通过对汽车进行实时定位与显示,从而实现了防盗的功能。

参考文献

[1]李佳,刘巍巍.车辆GPS定位系统设计[J].黑龙江科技信息,2009(15):65.

[2]张伟芳,曾连荪,姚南.基于GPS_GPRS的车载监控终端系统[J].计算机辅助工程,2008(12):96-99.

[3]胡最,汤国安,闾国年.GIS作为新一代地理学语言的特征[J].地理学报,2012,67(7):867-877.

[4]丁若婷,孙越,汪毅雄,等.基于4G移动通信的实时车辆监控管理系统[J].信息通信技术,2015(5):27-32.

[5]吴海艳.浅谈如何应用MapInfo软件制作草场承包示意图[J].青海草业,2015,24(2):46-47.

[6]刘彬彬,安剑.Visual Basic从入门到精通(第2版)[M].北京:清华大学出版社,2010.

[7]李俊民,赵东.零基础学Visual Basic[M].北京:机械工业出版社,2010.

猜你喜欢

经纬度防盗控件
古代陵墓中的防盗机关
基于经纬度范围的多点任务打包算法
防火防盗报警器设计
2017年凯迪拉克XT5电路图
自制中学实验操作型经纬测量仪
澳洲位移大,需调经纬度
剩女笔记
ASP.NET服务器端验证控件的使用
Spreadsheet控件在Delphi数据库系统中的编程与应用