0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于DTGS-800和MSP430单片机实现个人定位终端的设计

电子设计 来源:电子设计工程 作者:张鹍,赵成林,董 2021-06-26 11:18 次阅读

作者:张鹍,赵成林,董晓舟

目前集定位、监控、报警功能于一体的个人定位系统多采用基于GPS/GSM(GPRS)技术。虽然全球定位系统GPS(Global PosiTIoning Sys-tem)可以提供高精度、覆盖全球的定位,但必须保证GPS接收机和卫星之间有直射路径,这就使得GPS定位系统在建筑物密集的城区和建筑物内部存在盲区。

GPSOne综合了GPS、CDMAlX(码分多址分组数据交换网络)、GIS(地理信息系统)和互联网技术,是美国高通公司为基于位置业务而开发的定位技术,采用Client/Server方式。它将无线辅助A-GPS和高级前向链路AFLT三角定位技术有机结合,实现高精度、高可用性和较高速度的定位。在A-GPS定位技术无法使用的环境中,会自动切换到AFLT三角定位技术,确保定位的成功率和精确度。这里基于GPSOne模块DTGS-800和低功耗单片机MSP430设计并实现了具有定位、监控和报警功能的个人定位终端。

1 系统硬件设计

个人定位终端的硬件组成如图1所示。为了解决GPS在室内和高层建筑密集区难以定位的问题,选用AnyData公司的DTGS-800 GPSOne模块;为了缩小体积、降低功耗和成本,主控单元MCU选用超低功耗的16位单片机MSP430F147,显示器选用LED。单片机负责控制 GPSOne模块发起定位请求,接收并解析CDMA网络控制中心发送的信息,获取当前的经、纬度及其他信息,并以短信的方式送至控制中心或操作者的手机。主控单元MCU如图2所示。它包括MSP430F147,外接高速晶振和低速晶振,在不需要高速处理时,可将高速晶振关闭,只使用低速晶振,以降低功耗;MSP430F147有2个串行异步通信接口(USART),其中一个(DCD、CTS、DTR、RI、RFR/RTS、TXD、RXD引脚)接口连接DTGS-800的UAR-T1,另一个(URXD0、UTXDO)接口与PC机的串口相连,供系统调试使用。nRst、MS、TCK、TDI、TD0 引脚连接JTAG插座,用于程序下载和在线调试;keyl和key2引脚分别接“Help”和预留按键。外接的LED DS3和LED DS4分别用指示电池电量不足和DTGS-800与MSP430之间的通信;BatTest用于检测电池电量。

DTGS-800模块是定位终端的主体,其内部集成有GPSOne器件,采用GPSOne解决方案定位;支持机卡分离RUIM,提供标准RS-232数据接口和标准的AT命令接口,为数据、语音、短消息和传真提供快速、可靠、安全的传输。该模块可采用外接电源或电池供电,电池供电电压为+4.0 V±10%,外接电源供电电压+4.5 V±10%,外接电源还能通过模块内部的电源管理器件为电池充电。

DTGS-800模块的电路如图3所示。其中DCD、CTS、DTR、RI、RFR/RTS、TXD、RXD引脚连接MSP430F147的UART1,是DTGS-800与MSP430F147的通信通道;UIM_DATA、UIM_CLK、UIM_PWR_EN、UIM_RESET接UIM卡(图 4);Sgl_SMS、Sgl_IDEL、Sgl_GPS、Sgl_busy、Sgl_Power、Sgl_ch-arge是系统状态指示信号,分别连接 6个LED,用于指示新短信信号、CDMA网络信号、GPS信号、CDMA网络忙、系统上电和电池充电等状态;BatGauge接电池测试端,用于检测电池温度(图5)。

UIM卡是CDMA手机的一种智能卡,其功能类似于GSM手机中的SIM卡。它支持专用的鉴权加密算法和0TA技术(0ver The Air),可以通过无线空中接口方式对卡上的数据进行更新和管理。UIM卡固定在卡座上,通过卡座的6个引脚与外部连接,如图4所示,其中 UIM_RESET和UIM_CLK需通过100 kΩ电阻下拉,UIM_DATA需通过10 kΩ电阻上拉。

电源Battery和Charger模块如图5所示。DTGS-800模块的第88、90引脚是专用于电池供电的电源输入引脚。若需模块既可用外接电源又可用电池供电,可将外接电源接到第87和89引脚,电池接到第88、90引脚。此时,外接电源还能通过模块内部电源管理器件为电池充电。在模块只采用电池供电的情况下,需要给该模块一个power on信号;对该引脚进行第2次触发时,模块power off。

2 系统软件设计

该终端的软件设计有主程序、按键检测、电池检测、存储和串口通信5个模块。图6为主程序流程。

主程序模块负责其他4个模块的初始化和数据处理与存储。该模块判断接收数据的正确性,从中提取位置和其他有用信息,实现数据的分离和有效数据在片上RAM 的临时存储,并将有用信息通过串口发送给DTGS8-800,DTGS-800再以短信的形式传给第三方。系统启动时,首先进行初始化,包括看门狗定时器、电压检测模块(含MD转换器)、UART、按键检测模块和DTGS-800的初始化;系统初始化完成后,如果没有中断请求则进入低功耗模式,以节约电量。

按键检测模块和电池检测模块都是以中断方式执行的。当有按键按下时,就会产生中断,通知控制器进行扫描,判断是哪个键按下,然后进行相应的处理;电池检测模块以一定时间间隔检测电池电量,如果电池电量不足则通知控制器开始计数,如果连续检测到电压过低状态超过一定次数后,则使相应的LED闪烁,提醒用户充电。

如果用户发送报警信息,即按下Help键,则产生中断请求,执行中断服务子程序,系统退出低功耗模式,进入“HELP”状态,发起定位请求,接收并解析定位信息,将有用信息和报警信息打包后,以短信的形式发送给HelpNum指定的服务器,发送成功后,系统进入低功耗模式。

如果是第三方发起定位请求,系统则退出低功耗模式,进入“MPC定位”状态,发起定位请求,接收并解析定位信息,将有用信息以短信的形式发送给指定手机或服务器,成功后系统返回低功耗模式。服务密码及MPC的地址可通过短信以特定的格式远程设置。

3 系统测试

通过在不同环境下的综合测试,结果表明:该系统具有以下功能:1)进行MPC第三方定位(即网络侧发起定位);2)直接控制终端进行主动定位(即终端侧发起定位);3)支持单次定位和连续定位;4)支持MS-Based和MS-Assist定位模式;5)能远程设置各种参数;6)具有紧急报警、越区报警和超速报警等功能。

系统初始定位时间在20 S内,室内定位误差在500 m内,室外定位误差在20 m内;报警信息能在1 s内传到控制中心,出界、超速、电池电量过低等报警灵敏度高,系统可连续工作24 h,待机72 h,运行稳定可靠,可以满足个人定位系统基本的功能需求。

4 结束语

本文基于GPSOne模块DTGS-800和低功耗单片机MSP430F147,设计并实现了一个集个人定位、监控和报警于一体的个人定位终端,解决了在室内、隧道等场合GPS无法定位的问题。由于采用低功耗处理器,使整个系统功耗降到最低。能够长期待机工作,为用户带来了极大方便,具有较高的实用价值。但由于系统使用CDMA网络的短消息信道传输信息,实时性还不够理想。为了提高系统的实时性,可考虑改用GPSOne模块内置的TCP/IP协议来进行信息传输。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6032

    文章

    44513

    浏览量

    632693
  • gps
    gps
    +关注

    关注

    22

    文章

    2882

    浏览量

    166018
  • 互联网
    +关注

    关注

    54

    文章

    11092

    浏览量

    102887
收藏 人收藏

    评论

    相关推荐

    DTGS-800

    各位大侠有没有DTGS-800的使用手册或者资料
    发表于 08-21 18:51

    DTGS-800

    各位大侠有没有DTGS-800的使用手册或者资料
    发表于 08-21 18:55

    基于DTGS-800定位

    各位同学求DTGS-800资料
    发表于 08-21 19:32

    关于DTGS-800模块

    各位大神,我想问问DTGS-800模块具体是如何连接用的?我是用来做GPSone定位跟踪的,与单片机一起用的。谢谢!
    发表于 09-10 21:51

    MSP430单片机实现远程升级

    MSP430单片机实现远程升级的办法,可以参考附件的PDF。 前言 有什么方法对MSP430 flash存储器更新而不用 JTAG和BSL 现在这个问题已经得到解决:一段检测监控
    发表于 07-03 04:13

    MSP430单片机实现远程升级

    MSP430单片机实现远程升级的办法,可以参考附件的PDF。 前言 有什么方法对MSP430 flash存储器更新而不用 JTAG和BSL 现在这个问题已经得到解决:一段检测监控
    发表于 07-09 08:23

    如何采用GPSOne技术设计个人定位终端

    本文基于GPSOne模块DTGS-800和低功耗单片机MSP430F147,设计并实现了一个集个人定位、监控和报警于一体的
    发表于 05-27 06:32

    基于单片机MSP430的智能监控终端的研究

    基于单片机MSP430的智能监控终端的研究
    发表于 02-17 10:32 9次下载

    MSP430单片机概述

    本章首先介绍MSP430单片机的发展历史及应用,然后叙述MSP430单片机具有的特点及优势,最后简要介绍MSP430
    发表于 07-15 15:27 0次下载

    MSP430单片机软件工程开发基础

    本章介绍MSP430单片机软件工程的开发基础,主要讲解MSP430单片机C语言编程基础、MSP430单片
    发表于 07-15 15:27 0次下载

    MSP430单片机

    MSP430单片机
    发表于 12-17 17:01 0次下载

    MSP430教程14:MSP430单片机ADC12模块

    MSP430教程14:MSP430单片机ADC12模块
    发表于 10-12 09:03 55次下载
    <b class='flag-5'>MSP430</b>教程14:<b class='flag-5'>MSP430</b><b class='flag-5'>单片机</b>ADC12模块

    基于MSP430单片机的GPS定位系统设计

    基于MSP430单片机的GPS定位系统设计
    发表于 10-13 08:43 22次下载

    MSP430单片机实践篇之MSP430单片机ADC模数转换操作

    MSP430单片机中断编程;ADC(模数转换)的实现MSP430单片机低功耗控制(休眠)。
    发表于 04-28 10:46 43次下载
    <b class='flag-5'>MSP430</b><b class='flag-5'>单片机</b>实践篇之<b class='flag-5'>MSP430</b><b class='flag-5'>单片机</b>ADC模数转换操作

    MSP430单片机ADC模数转换操作

    学习要点:MSP430单片机中断编程;ADC(模数转换)的实现MSP430单片机低功耗控制(休眠)。
    发表于 05-08 08:43 45次下载
    <b class='flag-5'>MSP430</b><b class='flag-5'>单片机</b>ADC模数转换操作