来源:中国一卡通网 作者: 发布时间:2012-05-11 09:56:39 字体:[大 中 小]
摘 要:目前大多GPS 设备只能接收GPS 信息,不能实现GPS 信息转发。而本文介绍了一种基于GSM 短信模块的定位跟踪系统设计方案,实现了通过GSM 网络传输GPS 信息功能。该系统主要由Atmega16 单片机、GPS 接收机GR-87、以及GSM 短信模块TC35i组成。系统能够及时准确地将GPS 获得的信息传送给GPS 设备,在紧急情况下能够实现短信报警。
GPS 作为成熟实用的全球精密测时、测距、导航、定位系统在诸多领域均有广泛的应用。目前市面多数GPS 设备只有单向通信能力,只能接收GPS信息,而不能将GPS 信息转发。一旦持有GPS 设备的人员发生意外,他人不能及时了解当事人状况。而本文设计实现的系统不仅能够定时接收全球卫星定位信号,并且能通过GSM网络向未持有GPS设备的用户按需发送信息;同时在意外发生时能够及时将包含地理信息的报警短信发送到特定手机号码进行报警操作。
1 硬件系统设计
基于GSM 短信模块的定位跟踪系统硬件系统主要有GPS 信息接收机、单片机控制控制模块(主机、从机)、信息发送模块、手机接收测试部分及其他外围电路组成(见图1)。GPS 信息接收机接收到的GPS 信息经过串口发送到单片机控制模块中的主机部分;主机将选择出来的信息通过同步串行接口(SPI 接口)传送给MCU 控制模块的从机部分;从机对信息进行编码;编码后的消息经过短信发送模块发送到指定的手机。
图1 系统硬件逻辑框图
1.1 定位跟踪模块
GPS 全球定位系统包括GPS 网络和专业的地面接收设备。接收设备可以显示出当前地理信息、时间信息等;如果将当前的信息发送给信息管理中心,便可以接受管理中心的统一调度。基于GSM短信模块的定位追踪系统便是基于后一种理论进行设计实现的。GPS 模块接收来自GPS 卫星系统的C/A 码,单片机控制模块根据信息码计算得到当前的地理信息位置和时间信息等。GPS 接收模块的硬件主要包含接收天线、接收机、电平转换电路以及进行GPS 信息数据处理的单片机控制模块中的主机部分(见图2)。
图2 GPS 接收模块原理框图
GPS 接收模块是系统的信息源。硬件实现过程中采用了型号为GR-87 的GPS 接收模块。该GPS接收端的主要参数为:默认的发送地理信息的频率是1HZ,其时间误差为±0.1s,距离误差为10 米之内。该型号GPS 接收端的信号输出电平为TTL 电平,需要外加电平转换电路。最后使用MAX232芯片及其相关电路来辅助完成串口通信。
1.2 单片机控制模块
单片机控制模块采用Atmega16L 芯片作为处理器,对GPS 信息数据进行存储和处理。本芯片是8 位的AVR 单片机,具有16KB系统内可编程Flash,具有高可靠性、高速度、高性能、低功耗等特点,同时该芯片拥有丰富的外围引脚以及接口电路,方便系统的设计开发。
该系统用到两个单片机控制模块,分别作为系统的主机和从机。单片机控制模块中的主机部分用于接收GPS 模块接收到的GPS 信息并对信息进行简单的处理,筛选出用户需要的信息,将信息以串行通信方式传送给从机模块(见图3);从机部分对数据进行编码,将编码后信息传送给GSM 模块,根据需要GSM 将信息发送到指定号码。
图3 SPI 同步串行通信模块
1.3 GSM 接口
TC35i 模块是西门子公司推出的一种无线通信模块,它是集射频电路、基带于一体,向用户提供标准的AT 命令接口,为数据、语音、短信息和传真提供快速、可靠、安全的传输,方便用户的开发设计及应用。在该系统中TC35i 直接受从机控制,在收到控制信号后,将从机传送来的信息内容发送给特定的手机号码。
图4 GSM 短信息模块框图
2 软件系统设计
软件设计采用了模块化的设计方式,系统软件由一个主程序和若干个子程序构成。主程序负责完成对各个功能模块(子程序)的调用。系统软件的其他部分还涉及到单片机与GSM 模块之间的串行通信、单片机控制模块中主机和从机间的SPI 模式通信、单片机对GPS 信息的解码、对GSM-At 指令的编码等。
主程序功能是:系统开机后对GPS 模块、GSM模块初始化,控制主机部分接收来自GPS 接收模块的GPS 信息,筛选出其中的特定部分存储,将数据以SPI 通信方式传给从机;控制从机部分对信息进行编码并传送给GSM 模块。主程序功能框图如图5所示。
图5 软件系统的流程框图。
2.1 系统初始化子程序
系统初始化子程序完成设置系统串口波特率、启动串口、初始化数据存储单元任务,实现单片机控制模块、外围器件以及GSM 模块的初始化工作。
单片机控制模块从机部分和GSM 短信模块进行异步串行通信,需对串口进行设置:
(1)工作方式。
GSM 通信模块的数据接口配置为8 位数据位、1 位停止位、无校验位,因此设置单片机的串行口工作方式为异步通信模式。
(2)波特率设定。
Atmega16L 单片机控制系统的晶振为3.6864M,波特率需为9600b/s,所以根据记数初值的计算公式:X=256-fose × (1/384) × 波特率,UBRRL=0x16 (USART 通信)。
推荐文章
USB转换器
工业级转换器
485转换器
RS-232/485/422
usb-RS232
485信号中继器
232-485接口转换器
ZIGBEE开发例程 ZIGBEE培训套件
智能型232-422/485双向转换器
论坛热帖