微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 基于GPS的车辆导航及GPRS网络监控

基于GPS的车辆导航及GPRS网络监控

时间:10-02 来源:电子设计应用 点击:

作者:蔡仲伦 艾长胜 孙选 张辉

摘 要:本文介绍了一种基于GPS和GPRS结合的电子导航和远程监控系统。GPS模块输出的位置信息数据通过RS-232串行接口发送到微型工控机,工控机上运行的GIS显示出车辆的当前位置,实现自主导航,同时,利用GPRS无线通信模块将车载终端GPS模块的信息通过无线网络发送到远程数据服务中心,实现了远程的实时监控和调度。

关键词:GPS;GPRS;定位导航;远程监控

引言

近年来,对机动性强、数量众多的移动目标进行有效监控、紧急救援和提供各种信息服务的需求,在客运、公安、银行、物流等行业表现得尤为突出。通用分组无线业务(GPRS)的出现,使得人们能够对移动目标进行全国范围、实时、全天候的监控调度。将GPS定位技术和GPRS相结合,具有广泛的应用前景。

系统结构

整个定位导航监控系统主要由车载终端(包括微型工控机、触摸屏、GPS接收模块、GPRS通信模块和电源等)和监控数据中心DSC(TCP/IP的网络服务器)两部分组成。

车载终端的GPS模块实时接收全球定位卫星的位置、时间等数据,一方面发送给车内的微型单板计算机,得到车辆的当前位置并且在电子地图上显示;另一方面,数据将通过GPRS终端模块发送到远程监控中心服务器,使得监控中心能实时得到所有车辆的位置信息,给车辆的安全监控以及远程调度提供了基础。

车载终端

车载终端硬件组成如图1所示。

图1 车载终端硬件组成原理图

GPS接收模块

GPS由三部分组成,空间星座部分、地面监控部分和用户接收机部分。空间星座部分由24颗导航卫星构成,相当于提供了24个已知空间点。地面监控部分是用来监测卫星的状态,对卫星轨道信息进行修正。用户接收机用来接收卫星信号并完成信号的分析与计算,以获得必要的导航和定位信息。

本文选用了天宝(Trimble)公司的Lassen SQ/IQ系列GPS接收模块。该模块支持的数据格式有TSIP和NEMA0183,在目前的软件系统中,通常使用NEMA0183格式的数据。NEMA 0183协议允许信号源通过一根双绞线将数据以串行通信方式发送到一个或者多个接收端。

微型工控机

GPS模块的数据通过RS-232串口直接发送到微型工控机,通过工控机上运行的电子地图软件,能够显示出车辆当前的位置和各个主要地理位置。微型工控机不但具有普通计算机所有的功能,并且具有很高的集成度,体积小、重量轻、方便安装。

GPRS通信模块

车载终端嵌入了GPRS通信模块,它将GPS接收模块的位置信息实时发送到远程数据库监控中心,实现了所有车辆的监控和调度。

作为监控调度系统,首先要考虑监控覆盖范围、实时性、调度业务、车辆容量、刷新速率等要求,选择合适的无线数据链路和电子地图,并开发相应的业务软件。GPRS/IP/TCP/UDP协议栈可以实现数据的实时交换,而且在现有的公用无线通信系统中拥有最大的带宽,与目前流行的短消息传输方式相比,在相同数据长度、相同时间间隔下,其通信费用是短消息方式的1/6,甚至更少。本文使用深圳宏电公司的GPRS DTU H7000系列无线通信模块实现GPRS的网络连接和数据传输。当无线通信模块登陆到GPRS网络时,将实时地把GPS接收模块的位置信息发送到远程监控中心,以供监控和调度使用。

监控中心软件设计

监控中心就是一台具有公网IP地址的网络服务器,通过编写数据中心的监控系统软件(主要由通信模块、电子地图数据库、车辆信息数据库等组成),监控中心将实时接收车载终端通过无线通信模块发送来的数据,并进行解析和存储,将所有车辆的位置和运动状态都显示在电子地图上。并针对不同的情况进行提示和报警。

监控中心也可以采用WebGIS技术,使用C/S或者B/S构架,监控中心和数据服务器可以处于不同的物理位置。由于数据服务器对设备的可靠性和相应的运营、维护要求较高,所以从经济效益上来看,自建一个数据服务器对硬件和软件的要求都很高。可以利用当前.NET技术的网络服务,通过本地的监控中心访问数据服务器,以获取数据信息、发送命令等。

本文采用了Microsoft Visual C#.NET作为开发平台,使用了深圳宏电GPRS模块的动态开发库,动态开发库提供了GPRS无线通信过程中用到的一些操作函数。开发包中的重要结构如下:

1.终端模块注册信息接口结构
typedef struct GPRS_USER_INFO
{
char m_userid[12]; //终端模块号码
uint32 m_sin_addr; //终端模块进入Internet的代理主机IP地址
uint16 m_sin_port; //终端模块进入Internet的代理主机IP端口
uint32 m_local_addr;//终端模块在移动网内IP地址
uint16 m_local_port;//终端模块在移动网内IP端口
char m_logon_date[20]; //终端模块登录时间
char m_update_date[20]; //终端模块更新时间
uint8 m_status; //终端模块状态
}user_info;

2.数据包接口结构
typedef struct GPRS_DATA_ RECORD
{
char m_userid[12]; //终端模块号码
char m_recv_date[20]; //接收到数据包的时间
char m_data_buf[1024]; //存储接收到的数据
uint16 m_data_len; //接收到的数据包长度
uint8 m_data_type; //接收到的数据包类型
}data_record;

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

网站地图

Top