基于GPS和GPRS的小型追踪器

发布者:chaochen最新更新时间:2007-12-24 来源: 现代电子技术关键字:射频  MCU  串口  信号 手机看文章 扫描二维码
随时随地手机看文章

1 引 言

随着GPRS无线通讯、Internet网络以及民用领域GPS的普遍应用,将三者合一使用已成为当今热门的研究领域。

GPRS(General Packed Radio Service,通用分组无线业务)采用TCP/IP协议,非常容易和现有的Internet技术及应用平台整合,即将各种IP技术和服务同移动通信技术相结合,为用户提供各种高速度、高质量的移动数据通信业务。GPRS的移动通信、价格低廉、快速登陆、永远在线、组网灵活、信道保障、小功率防雷击等特点使得GPRS已逐渐取代GSM网络。

GPS(Global Positioning System,全球定位系统)除了更多地应用于高精尖端测量、测绘及导航领域外,也更多地推动了其在低成本、低精度的民用小型GPS设备领域的发展和使用。GPS收发机的主要任务就是捕获一定高度截止角所选择的待测卫星的信号,同时对接收到的GPS信号进行变换放大和处理,解译出GPS卫星所发送的导航电文,最终实时计算出该观测站的三维位置、三维速度和时间。

整个系统方案如图1所示,带有两个串口的微控制器一方面获取来自GPS接收模块的导航数据,另一方面将这些数据经过适当处理后转换为GPRS可以传送的数据,并通过网络送入控制中心,当用户需要获得相应的追踪数据时,通过网络访问即可。

2 总体方案

基于微控制器的GPS+GPRS系统,主要由以下几个部分组成:微控制器模块、GPS+GPRS模块、键盘及LCD显示屏等附件。其基本原理框图如图2所示。

MCU通过两个串口接收和发送信号到GPS和GPRS模块,MCU通过串口0中断接收GPS发出的状态信息(包括三维位置、三维速度、时间、航向等)并保存,经软件打包后通过串口1发送到GPRS模块。GPRS模块受MCU控制将此信号转换为射频信号GPRS网络并连接Internet网络。Internet用户通过连接相关网站,或手机用户通过编写指定格式的短信,发送消息给GPRS模块,GPRS模块通过串口1将信号送入MCU,MCU发出接受信号铃声并根据约定协议自动显示相应信息,键盘操作简单,可以方便地切换显示信息。

3 硬件选型

该系统在选型时,在满足使用要求的基础上,主要的选择目标是体积重量小、能耗低的产品以满足室外使用和便于老人小孩携带的要求。

3.1 MCU

MCU选用超低功耗型MSP430系列16位单片机MSP430F149,片内有丰富的外设,可实现异步、同步及多址访问的串行通信接口(USART0~1)以及液晶显示驱动模块,最多可达6×8条I/O线,工作电压为1.8~3.6 V。5种低功耗模式的体系结构,使得该微控制器在便携式测量等应用场合非常理想地延长了电池的使用寿命,省电模式下中断唤醒只需6 μs。

3.2 XT55 GPS+GPRS模块

XT55是Siemens推出的第一款也是目前的惟一一款集合了三频GSM/GPRS和GPS接收器的模块。预先配置的功能和超级紧凑的尺寸(体积53×34×5.1 mm3重11 g)使其十分易于集成在新的小巧型的应用设备中,节省了大量的时间和费用来做额外的硬件集成。可用于传输短信、语音、传真,用于数据传输时最大理论传输速率可达85.6 kb/s,缺省值为14.kb/s,工作电压为3.3~4.8 V,XT55内置GPS接收器,能决定其当前的位置、速度、航向。这些数据可以由MCU保存,也可以直接发送到一个操作中心。

4 系统构成

4.1 硬件设计

硬件设计上主要是MCU与XT55所集成的两个模块之间的串口连接。其中GPRS模块与微控制器之间的通信协议是AT命令集,除处理串口发送、串口接收之外,微控制器与GPRS模块之间还有一些硬件握手信号。

硬件连接完成后,在进行GPRS上网操作之前,首先要对GPRS模块进行一定的设置,主要的设置工作有:设置通信波特率,一般设置为19 200 b/s,无奇偶位,一位停止位;设置接入网关,通过AT+CGD CONT=1,“IP”,“CMNET”命令设置GPRS接入网关为移动梦网;设置移动终端的类别;测试GPRS服务是否开通。

4.2 软件设计

程序中所有代码都是由C语言编写的,并采用分层结构,从底往上分别为串口驱动层,网络设备驱动层、PPP协议层、uIP协议层、应用层。上层函数的实现需要应用到底层函数,最终完成应用层任务,即传送数据。

PPP(Point-to-Point Protocol)是为在同等单元之间传输数据包这样的简单链路而设计的,这种链路提供全双工操作,并按照顺序传送数据包,为基于各种主机、网桥和路由器的简单连接提供一种共通的解决方案。

PPP数据帧格式如下:

标志Flag:表示一个帧的开始和结束;

地址Address:标准的广播地址;

控制Control:用户数据采用无序帧方式传输;

协议Protocol:标志封装在帧的数据域中的协议类型,通过确定帧序列的结尾,为FCS域留出两个字节,便可确定数据域的结尾:0xC023为网络认证数据报;0xC021为链路控制数据;0x8021为网络控制数据;

帧检测序列FCS:差错控制。

4.2.1 uIP的体系结构

瑞典计算机科学研究所Adam Dunkels开发的uIP0.9是一种TCP/IP协议栈,资源占用少是他的设计特点,尤其适用于8/16位单片机。他去掉了许多全功能协议栈中不常用的功能,而保留通讯所必须的协议机制,其设计重点放在IP,ICMP和TCP协议的实现上,将这3个模块合为一个整体,而将UDP和ARP协议实现作为可选模块。uIP的体系结构如图3所示。

uIP处于网络通讯的中间层,上层协议在这里被称为应用程序,而下层硬件或固件被称为网络设备驱动。显然,uIP并不仅仅是针对以太网设计的,他具有媒体无关性。

4.2.2 uIP的设备驱动程序接口

uIP内部有两个函数直接需要底层设备驱动程序的支持:

一个是uip_input()。当设备驱动程序从网络层收到一个数据包时,要调用这个函数,设备驱动程序必须事先将数据包存放到uip_buf[],包长放到uip_len,然后交由uip_input()处理。当函数返回时,如果uip_len不为0,则表示有带外数据(如SYN,ACK等)要发送。当需要ARP支持时,还需要考虑更新ARP表或发出ARP请求和回应。

另一个需要驱动程序支持的函数是uip_periodic(conn)。这个函数用于uIP内核对各连接的定时轮循,因此需要一个硬件支持的定时程序周期性地用他轮循各连接,一般用于检查主机是否有数据要发送,如有,则构造IP包。

4.2.3 uIP的应用程序接口

为了将用户的应用程序挂接到uIP中,必须将宏UIP APPCALL()定义成实际的应用程序函数名,这样每当某个uIP事件发生时,内核就会调用该应用程序进行处理。如果要加入应用程序状态的话,必须将宏UIP_APPSTATE_SIZE定义成应用程序状态结构体的长度。在应用程序函数中,依靠uIP事件检测函数来决定处理的方法,另外可以通过判断当前连接的端口号来区分处理不同的连接。

5 结语

整个模块拨号上网只需3~5 s,平均上网速度已经达到33~36 kb/s。数据上传速度可以达到每秒2~2.5 kB,最高峰值可以达到8 kB,完全可靠地实现了短消息服务和一些文本信息传递。移动目标GPS数据、指令及相关应用情况下的报警数据均可通过GPRS网络传送到监控中心。该系统的便携性和方便使用的优点,也可应用到需要对移动物体进行远程监控和调度的领域中。

关键字:射频  MCU  串口  信号 引用地址:基于GPS和GPRS的小型追踪器

上一篇:与GPRS模块串口连接的小区无线抄表系统
下一篇:基于RFID的酒类产品防伪架构设计与研究

推荐阅读最新更新时间:2024-05-13 21:01

改进高频信号传输中的SMT焊盘设计
在高频领域,信号或电磁波必须沿着具有均匀特征阻抗的传输路径传播。当遇到了阻抗失配或不连续现象时,一部分信号将被反射回发送端,剩余部分电磁波将继续传输到接收端。信号反射和衰减的程度取决于阻抗不连续的程度。当失配阻抗幅度增加时,更大部分的信号会被反射,接收端观察到的信号衰减或劣化也就更多。 阻抗失配现象在交流耦合(又称隔直)电容的SMT焊盘、板到板连接器以及电缆到板连接器(如SMA)处经常会遇到。 在如图1所示的交流耦合电容SMT焊盘的案例中,沿着具有100 差分阻抗和5mil铜箔宽度的PCB走线传播的信号,在到达具有更宽铜箔(如0603封装的30mil宽)的SMT焊盘时将遇到阻抗不连续性。这种现象可以用式(1)和式(2)解释。铜
[电源管理]
改进高频<font color='red'>信号</font>传输中的SMT焊盘设计
PIC8引脚带A/D的单片机的特点
  PIC 8引脚带A/D的单片机12C6和12CE6系列是Microchip公司生产的一类PIC 8位单片机,其产品型号是12C671/672和12CE673/674,它们是PIC单片机中级型产品之一,其引脚功能如附图所示。   该类产品是一种8引脚带4路8位A/D转换器的超小型产品,是目前性价比极高的8位OTP(一次编程不可擦除)单片机。由于它们体积小巧,所以可嵌入几乎任何一种电子产品中,特别是便携式电子产品,如IC卡、充电器、计时器、智能传感器和儿童玩具等等都已广泛地应用了。   PIC12C6和12CE6系列单片机之间的差别,仅后者产品内部硬件带有E2PROM的数据存储器(16×8),它们的其它性能几乎完全
[单片机]
PIC8引脚带A/D的<font color='red'>单片机</font>的特点
基于单片机的智能型客车超载监控系统设计
超载的车辆容易发生事故,而客车一旦发生事故,极易诱发群死群伤特大恶性事故。给国家、群众带来了重大的损失和伤害。目前,国家出台了一系列的政策法规来制止客车超载,各地政府也制定了相关的制度来对客车超载进行管理。虽然这在一定程度上减少了客车的超载现象,但在节假日和农忙等客流高峰期,超载现象还是屡禁不止。因此,在采取行政监督管理的同时,通过科学技术的手段来消除客车超载的现象也有着极其重要的意义和实用性。 本系统的主要目的是通过对上、下车人数的检测,来了解客车的载客人数。然后在单片机中判断客车是否超载,同时进行对客车的控制以及报警。 1 系统组成结构 本系统由前端的检测模块、单片机系统、控制模块等部分组成。系统设计框图如图1 所示。检
[单片机]
mega16单片机科学计算器程序源代码
支持最大八位的无符号长整型数值计算 #include《iom16v.h》 #include《macros.h》 //#include《stdio.h》 #define uchar unsigned char #define uint unsigned int #define ulong unsigned long #define EA SREG|=BIT(7) uchar te mp,old,key_turn,flag=0; ulong datA=0,datB=0; const uchar wela[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; const uchar tab[11
[单片机]
mega16<font color='red'>单片机</font>科学计算器程序源代码
射频前端成“战略高地” 华米OV打的什么“芯”算盘?
上周,国产PA龙头唯捷创芯“登陆”上交所科创板,成为首个“华米OV”国产手机天团股东加持的射频上市公司。 步入5G时代,射频前端不但价值量攀升,对于手机厂商的重要性也日益凸显。为了进一步保障供应链安全,手机厂商纷纷加大对射频前端领域的投资,射频前端成为手机厂商们竞相争夺的“战略高地”。 唯捷创芯部分融资信息 (来源 天眼查) 华米OV为何纷纷出手? 事实上,近两三年间,华米OV均在加大对射频前端领域的投资。这些投资既包括了主打滤波器、PA、射频开关、LNA等器件、模组厂商,也涵盖了部分下游的代工厂商。 图 华米OV射频前端投资表 (信息来源 天眼查) 针对这股投资“热潮”,开元通信技术(厦门)有限公司董事长贾斌认为,先前的
[手机便携]
<font color='red'>射频</font>前端成“战略高地” 华米OV打的什么“芯”算盘?
15课:单片机位操作指令
前面那些流水灯的例程,我们已经习惯了“位”一位就是一盏灯的亮和灭,而我们学的指令却全都是用“字节”来介绍的:字节的移动、加法、减法、逻辑运算、移位等等。用字节来处理一些数学问题,比如说:控制冰箱的温度、电视的音量等等很直观,能直接用数值来表在。可是如果用它来控制一些开关的打开和合上,灯的亮和灭,就有些不直接了,记得我们上次课上的流水灯的例程吗?我们知道送往P1口的数值后并不能马上知道哪个灯亮和来灭,而是要化成二进制才知道。工业中有很多场合需要处理这类开关输出,继电器吸合,用字节来处理就显示有些麻烦,所以在8031单片机中特意引入一个位处理机制。 位寻址区 在8031中,有一部份RAM和一部份SFR是具有位寻址功能的,也就是说这
[单片机]
基于PIC16F877A的方波信号发生器电路设计
在数字电路系统中,方波是经常使用的信号源,具有非常广泛的应用范围。在普通的电路设计中,经常利用555定时器构成多谐振荡器产生方波信号,虽然比较简单,但频率准确精度不高,若要产生不同频率的方波信号,更换电阻和电容又比较麻烦。基于这个出发点,本文采用单片机进行电路设计,利用软件编程控制代替硬件的更换,可灵活简单地产生不同频率的方波信号,而且电路更为简单、频率更准确、性能更稳定。 1 软件平台及芯片介绍 目前的单片机有很多种型号,有Intel公司的8051系列、Motorola公司的M68系列、ATMEL公司的AT系列、Microchip公司的PIC系列等等。本文主要介绍Microchip公司开发的基于MPLAB-IDE 6.
[单片机]
基于PIC16F877A的方波<font color='red'>信号</font>发生器电路设计
循环冗余校验码的单片机及CPLD实现
    摘要: 循环冗余码校验(CRC)是一种可靠性很高的串行数据校验方法。介质循环冗余码校验的基本原理,并分别用单片机和CPLD作了循环冗余码验的软件实现和硬件实现。包括汇编语言和VHDL语言源程序。     关键词: 差错校验 查表法 CPLD 1 基本原理 串行数据的差错检验是保证数据正确的必要手段,通常采用奇遇校验法和循环冗余校验法。这两种方法都是通过冗余数据来提供必要信息。奇偶校验法适用于以字节为单位数据传输。例如用偶校验传送1个ASCII字符时,要附加1个校验位,从而使全部9位中“1”的个数为偶数。奇偶校验简单易行,但当数据崩溃或出现多位错误时,往往不能检验出来,因而可靠性不高。 循环冗余码
[半导体设计/制造]
小广播
502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
随便看看
    502 Bad Gateway

    502 Bad Gateway


    openresty

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
502 Bad Gateway

502 Bad Gateway


openresty