基于短消息服务的时间差值测定方法

文档序号:7780815阅读:143来源:国知局
基于短消息服务的时间差值测定方法
【专利摘要】本发明公开了一种基于短消息服务的时间差值测定方法,在计算机上连接一个短信Modem,步骤包括:将本地第一次发送的短信称为校时短信,计算从本地发送校时短信到本地接收到校时短信的耗时;对短信服务中心转发校时短信到本地接收到校时短信所耗费的时间进行估算;同理,本地第二次发送校时短信到本地接收校时短信,经过两次校时短信的收发之后,对两次的估计时间取交集,将所得到区间的中间值估算为标准时间,以此类推,得到准确的标准时间。本发明的方法,使计算机在不接入互联网,不需要有线联通,不受地域限制的情况下,能够达到与标准时间的同步。
【专利说明】基于短消息服务的时间差值测定方法
【技术领域】
[0001]本发明属于计算机应用【技术领域】,涉及一种基于短消息服务的时间差值测定方法。
【背景技术】
[0002]随着生产和科学技术的发展,需要应用精确时间的领域越来越多,如宇宙飞行、卫星跟踪、地震/气象预报及大地测量、电波传播研究、仪器校准、通信等,都需要精确的时间。计算机在上述领域中应用非常广泛,由于计算机自带的时钟精度不高,如何为由计算机控制而且又需要精确时间的系统提供标准时间成为了必须克服的技术问题。
[0003]目前,最主要的方法是通过GPS来提供标准时间。GPS的每一颗卫星每秒都发送一次时间及其所处位置信息,一个GPS接收器能接收GPS卫星信号,输出与国际标准时(UTC)误差仅I μ s的脉冲信号,并串行输出标准时间、日期、方位等信息,可靠性很高。但是,通过GPS实现,一种是分散式的GPS方法,系统成本很高;一种是通过串行通信网络传送时间信息或者同步信号,成本虽低,但是信号会有较大的延时。
[0004]短消息服务(SMS)是全球公认的无线服务,它能够在移动用户及外部系统(比如电子邮件、页面调度以及声音邮件系统)之间传送包括文字与数字的短消息。无线短信服务,1991年出现在欧洲的无线领域。无线数字的欧洲标准即是现在的全球移动通信系统(GSM),一开始就包括了短消息服务。最近几年短消息服务发展更为迅猛,短消息业务以各种各样的方式渗入到公众的日常生活当中,使短消息成为人们进行有效信息沟通的一种重要手段。移动运营商目前正在不断地把增值服务和新的信息服务注入到短消息服务中,以提高短消息服务的价值,这必将是促进短消息服务应用的一个有利因素。
[0005]短消息业务是GSM系统提供给手机用户的除了通话服务外的另一种特殊而重要的服务,短消息也称作短信息或短信。其业务按其实现的方式分为点到点短消息业务和小区广播短消息业务(点到多点)。
[0006]点到点短消息业务是指将一条短消息从一个实体经SMSC (Short MessageService Center短消息服务中心)发送到指定目的地址的业务。被发送的信息经过编码后最大长度为140个字节(如果按ASC II字符7bit编码,一次最多发送160个英文字母,如果采用Unicode编码方式则一次最多发送70个中文汉字)。用户也可以通过人工台(如移动的1258)和自动台(如移动的1259)来完成短信息的发送。
[0007]小区广播短消息业务是指通过发送信息的基站向指定区域中所有短消息用户发送短消息业务。通常移动通讯公司会使用这种方式在一定的区域内向所有GSM用户循环发送一些具有通用性的信息,如交通信息、天气预报、新闻、广告等。

【发明内容】

[0008]本发明的目的是提供一种基于短消息服务的时间差值测定方法,解决了现有技术中存在的由于计算机自带的时钟精度不高,难以为由计算机控制而且又需要精确时间的系统提供标准时间的问题。
[0009]本发明所采用的技术方案是,一种基于短消息服务的时间差值测定方法,在计算机上连接一个短信Modem,按照以下步骤实施:
[0010]步骤1、定义
[0011]将本地第一次发送的短信称为校时短信,将其时刻记为,将短信服务中心收到该校时短信的时刻记为tsl,将本地收到校时短信的时刻记为tral,从本地发送校时短信到本地接收到校时短信的耗时记为Λ t1;
[0012]则有:ΛVtc^tcsl;
[0013]步骤2、对短信服务中心转发校时短信到本地接收到校时短信所耗费的时间进行估算
[0014]由于短信服务中心转发校时短信到本地收到校时短信,最快的情况下耗费时间为0,最慢的情况是校时短信发送时刻到校时短信接收时刻之差,即Λ ,所以,本地收到校时短信并从中提取出短信服务中心时间后,就能估算本机此时的标准时间应在区间[tsl, tsl+ Δ tj ,将该区间记为C1 ;
[0015]步骤3、同理,将本地第二次发送校时短信的时刻记为tes2,短信服务中心收到该短信的时刻记为ts2,本地收到校时短信的时刻记为tra2,从本地发送校时短信到本地接收校时短信的耗时记为At2,本地收到校时短信并从中提取出短信服务中心时间后,就能估算本机此时的标准时间应在区间[ts2,ts2+ Δ t2],将该区间记为C2 ;
[0016]步骤4、经过两次校时短信的收发之后,则获得如下信息:
[0017]从第一次收到校时短信时刻tral到第二次收到校时短信时刻tra2经过的时间为T,则有:T=tra2-tral,
[0018]由于第一发送校时短信后经过估算得到本地的标准时间在区间C1,经过T时间后第二次发送校时短信,此时可以用T来修正区间C1,即本地第二次收到校时短信时刻的标准时间应该在区间[tsl+T,tsl+ Δ ti+T],将这个区间记为Cl’,经过第一次发送和接收校时短信后获得了标准时刻所在的区间,假定此时的标准时刻为B1,则有B1 e C1 ;经过第二次发送和接收校时短信后也获得了标准时刻所在的区间,假定此时的标准时刻为B2,则有B2 e C2,也就是B2与B1的差应为T,
[0019]对Cl,和C2取交集,得到区间Bll即[α, β],其中的α取(tsl+T)与ts2两者之中的较大值,β取(tsl+Ati+T)与(ts2+At2)两者之中的较小值,将Bll的中间值估算为标准时间,根据区间的定义以及交集的定义,Bll的区间长度是趋向于减少的,得到准确的标准时间。
[0020]本发明的有益效果是,通过短消息服务的方式对计算机本地时间和短信中心时间进行时间差值测定,然后基于该时间差值以及短信服务中心时间获得标准时间,以使其他计算机达到时间上的同步。
[0021]本发明的优点在于:使得计算机与计算机之间在不接入互联网,不需要有线联通,不受地域限制的情况下,能够达到与标准时间的同步,确保了系统和应用程序的安全性与可靠性。同时该方法还为许多测试设备和通信系统统一时间基准提供了一种创新的校时保障方法。【专利附图】

【附图说明】
[0022]图1是本发明方法中的短信接收的流程示意图;
[0023]图2是本发明方法中的短信发送的流程示意图。
【具体实施方式】
[0024]下面结合附图和【具体实施方式】对本发明进行详细说明。
[0025]目前很多硬件与计算机的连接均采用串口通信技术,有关串口通信的应用程序开发比较普遍。当本地计算机无法连上Internet或者没有安装网络接口卡的时候就有必要采用串口通信技术实现将数据信息传送出去。进行串口通讯,首先需要设置通讯的波特率、端口号、数据位、停止位和校验位;其次要打开端口连接开始发送数据,接收数据;最后关闭端口连接。
[0026]本发明基于短消息服务的时间差值测定方法中,采用了以短信Modem为基础的通信技术,本发明方法的一个重要目标就是要利用短信获取短信服务中心时间。由于短信从发送者始发到短信服务中心,再经短信服务中心转发到本地是要耗费时间的,对这个耗费时间简称为转发耗时。在移动网络环境较差的情况下,转发耗时较长(最差情况下,转发耗时长达I天也是有可能的)。另外就是没有估算短信传输所耗费的时间。在网络环境较差的情况下,其时间差值误差比较大,不能准确计算出计算机之间的时间差值,达不到预期目标。
[0027]针对这个缺点,本发明提出了一种创新的时间差值计算方法,在计算机上连接一个短信Modem,利用一台计算机和一个短信Modem进行实施,实现自发自收短信的功能,对短信传输所耗费的时间进行科学地估算,并结合短信服务中心时间来准确计算时间差值。
[0028]本发明的基于短消息服务的时间差值测定方法,按照以下步骤实施:
[0029]步骤1、定义:将本地第一次发送的短信称为校时短信,将其时刻记为,将短信服务中心收到该校时短信的时刻记为tsl,将本地收到校时短信的时刻记为tral,将从本地发送校时短信到本地接收到校时短信的耗时记为Λ h,则有:Λ
[0030]步骤2、对短信服务中心转发校时短信到本地接收到校时短信所耗费的时间进行估算
[0031]由于短信服务中心转发校时短信到本地收到校时短信,最快的情况下耗费时间为0,最慢的情况是校时短信发送时刻到校时短信接收时刻之差,即Λ ,所以,本地收到校时短信并从中提取出短信服务中心时间后,就能估算本机此时的标准时间应在区间[tsl, tsl+ Δ tj,将该区间记为C1O
[0032]步骤3、同理,将本地第二次发送校时短信的时刻记为tes2,将短信服务中心收到该短信的时刻记为ts2,将本地收到校时短信的时刻记为tra2,将从本地发送校时短信到本地接收校时短信的耗时记为Λ t2,本地收到校时短信并从中提取出短信服务中心时间后,就能估算本机此时的标准时间应在区间[ts2,ts2+ Δ t2],将该区间记为C2。
[0033]步骤4、经过两次校时短信的收发之后,则获得如下信息:
[0034]从第一次收到校时短信时刻tral到第二次收到校时短信时刻tra2经过的时间为T,则有:T=tra2-tral,
[0035]虽然不能确切知道本地标准时刻,但是本地标准时刻是实际存在的,由于第一发送校时短信后经过估算得到本地的标准时间在区间C1,经过T时间后第二次发送校时短信,此时可以用T来修正区间C1,即本地第二次收到校时短信时刻的标准时间应该在区间[tsl+T, tsl+ Δ ti+T],将这个区间记为Cl’,经过第一次发送和接收校时短信后获得了标准时刻所在的区间,假定此时的标准时刻为B1,则有B1 e C1 ;经过第二次发送和接收校时短信后也获得了标准时刻所在的区间,假定此时的标准时刻为B2,则有B2 e C2,本地标准时间虽然未知,但是时间的差值是准确的,也就是B2与&的差应为T,
[0036]所以,第二次收到校时短信的标准时间应该在区间Cl’内,同时也在区间C2内,此时对Cl’和C2取交集,得到区间Bll即[α,β],其中的α取(tsl+T)与ts2两者之中的较大值,β取(tsl+Ati+T)与(ts2+At2)两者之中的较小值,经过这样的计算之后,本地标准时间所处的误差区间就减少了,将BI I的中间值估算为标准时间,根据区间的定义以及交集的定义,Bll的区间长度是趋向于减少的,这样时间差值的测定就越来越趋于准确,以此类推(进行第三次或更多次的校时短信收发),得到准确的标准时间。
[0037]实施例
[0038]1.短信Modem的初始化
[0039]1.1)使用超级终端(计算机系统中自带的软件)进行以下操作:
[0040]①用符合要求的数据线将计算机串口与短信Modem相连。
[0041]②进入Windows XP操作系统界面,在桌面的开始——程序——附件——通讯中打开超级终端。
[0042]③输入超级终端名称,然后点击“确定”。
[0043]④在“连接到”的对话框中选择计算机连接短信Modem的串口,该实施例中为COM3。
[0044]⑤根据短信Modem设备的实际属性,在属性对话框中选择适当每秒位数,数据位8,奇偶校验无,停止位I。点击确定进入会话框。请注意,输入正确的每秒位数值是很重要的,否则端口属性配置不正确将会导致短信Modem无法正常工作。另外,各个短信Modem的工作每秒位数可能不是相同的,这就要根据实际硬件设备的要求进行设置。
[0045]⑥在超级终端会话框中输入字符“AT”,然后回车。会话框中显示“0K”,短信Modem连接正常,显示“error”连接异常。
[0046]⑦在超级终端中可输入各种AT命令,控制手机或短信Modem。
[0047]例如,画面中的“at+cmgf=0”命令即是控制短信Modem的命令,表示设置短信为PDU格式。
[0048]⑧在串口程序执行时应将超级终端关闭。
[0049]1.2短信Modem的操控方法
[0050]短信Modem,是一种无线通信模块,插入移动通信服务商提供的SM卡后能够与移动通信服务商的短信服务中心建立无线通信连接,短信Modem通过串口 RS232、USB接口与计算机连接,通过AT指令控制进行短信的收发。
[0051]2.接收短信
[0052]短信接收的过程是:监控计算机串口是否有新短信数据到来:如果没有,就继续监控串口 ;如果有,就读取短信数据,然后对短信PDU数据进行解码,将生成的短信放入短信队列,短信接收的流程如图1所示;[0053]3.发送短信
[0054]短信发送的过程是:监控计算机串口是否空闲:如果串口繁忙,就继续监控串口 ;如果串口空闲,就编辑短信并进行编码,生成能够通过短信Modem发送的PDU数据,短信发送的流程如图2所示;
[0055]4.时间差值的测定
[0056]假设短信发送到短信服务中心与短信服务中心再转发回来的耗时相等,如果在实验中取该区间的中间值,采用短信服务中心时间再结合短信传输耗时进行校时,则存在第一次本地接收到校时短信时刻tral与实际存在的标准时刻B1之间的关系是:
【权利要求】
1.一种基于短消息服务的时间差值测定方法,其特点在于,在计算机上连接一个短信Modem,按照以下步骤实施: 步骤1、定义 将本地第一次发送的短信称为校时短信,将其时刻记为,将短信服务中心收到该校时短信的时刻记为tsl,将本地收到校时短信的时刻记为tral,从本地发送校时短信到本地接收到校时短信的耗时记为Λ h,则有:Λ; 步骤2、对短信服务中心转发校时短信到本地接收到校时短信所耗费的时间进行估算 由于短信服务中心转发校时短信到本地收到校时短信,最快的情况下耗费时间为。0,最慢的情况是校时短信发送时刻到校时短信接收时刻之差,即At1,所以,本地收到校时短信并从中提取出短信服务中心时间后,就能估算本机此时的标准时间应在区间[tsl, tsl+ Δ tj ,将该区间记为C1 ; 步骤3、同理,将本地第二次发送校时短信的时刻记为t。-,短信服务中心收到该短信的时刻记为ts2,本地收到校时短信的时刻记为tra2,从本地发送校时短信到本地接收校时短信的耗时记为At2,本地收到校时短信并从中提取出短信服务中心时间后,就能估算本机此时的标准时间应在区间[ts2,ts2+ Δ t2],将该区间记为C2 ; 步骤4、经过两次校时短信的收发之后,则获得如下信息: 从第一次收到校时短信时刻tral到第二次收到校时短信时刻tra2经过的时间为T,则有.T ^cr2 tcri, 由于第一发送校时短信后经过估算得到本地的标准时间在区间C1,经过T时间后第二次发送校时短信,此时可以用T来修正区间C1,即本地第二次收到校时短信时刻的标准时间应该在区间[tsl+T,tsl+ Δ ti+T],将这个区间记为Cl’,经过第一次发送和接收校时短信后获得了标准时刻所在的区间,假定此时的标准时刻为B1,则有B1 e C1 ;经过第二次发送和接收校时短信后也获得了标准时刻所在的区间,假定此时的标准时刻为B2,则有B2 e C2,也就是民与&的差应为T, 对Cl’和C2取交集,得到区间Bll即[α,β],其中的α取(tsl+T)与ts2两者之中的较大值,β取(tsl+Ati+T)与(ts2+At2)两者之中的较小值,将Bll的中间值估算为标准时间,根据区间的定义以及交集的定义,Bll的区间长度是趋向于减少的,得到准确的标准时间。
2.根据权利要求1所述的基于短消息服务的时间差值测定方法,其特点在于,所述的短信Modem的初始化过程是: 。 1.1)使用超级终端进行以下操作: ①用符合要求的数据线将计算机串口与短信Modem相连; ②进入WindowsXP操作系统界面,在桌面的开始一程序一附件一通讯中打开超级终端; ③输入超级终端名称, 然后点击“确定”; ④在“连接到”的对话框中选择计算机连接短信Modem的串口; ⑤根据短信Modem设备的实际属性,在属性对话框中选择适当每秒位数,数据位8,奇偶校验无,停止位I ;点击确定进入会话框; ⑥在超级终端会话框中输入字符“AT”,然后回车,会话框中显示“0K”,短信Modem连接正常,显示“error”连接异常; ⑦在超级终端中可输入各种AT命令,控制手机或短信Modem; ⑧在串口程序执行时应将超级终端关闭;. 1.2)短信Modem的操控方法 短信Modem通过串口 RS232、USB接口与计算机连接,通过AT指令控制进行短信的收发。
3.根据权利要求1所述的基于短消息服务的时间差值测定方法,其特点在于,所述的短信接收的过程是: 监控计算机串口是否有新短信数据到来:如果没有,就继续监控串口 ;如果有,就读取短信数据,然后对短信PDU数据进行解码,将生成的短信放入短信队列。
4.根据权利要求1所述的基于短消息服务的时间差值测定方法,其特点在于,所述的短信发送的过程是: 监控计算机串口是否空闲:如果串口繁忙,就继续监控串口 ;如果串口空闲,就编辑短信并进行编码,生成能够通过短信Modem发送的PDU数据。
【文档编号】H04W56/00GK103716759SQ201310693117
【公开日】2014年4月9日 申请日期:2013年12月16日 优先权日:2013年12月16日
【发明者】黑新宏, 张钧杰, 张毅坤, 赵旌, 王磊, 金海燕, 常青, 张硕, 王彬 申请人:西安理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1