一种北斗长报文发送设备及方法与流程

文档序号:16688494发布日期:2019-01-22 18:34阅读:388来源:国知局
一种北斗长报文发送设备及方法与流程

本发明涉及北斗二号通信领域,尤其涉及北斗长报文发送设备及方法。



背景技术:

北斗二号卫星导航系统(bd2、beidou-2)是中国独立开发的全球卫星导航系统。截止2012年底目前已有14颗卫星服务于亚太地区,包括5颗geo卫星、5颗igso卫星和4颗meo卫星。其中北斗二号5颗geo卫星提供短报文通信功能,其他卫星提供导航定位功能。5颗geo卫星,其中每颗卫星包含2个独立波束信号,即共10个独立波束信号提供短报文通信服务。

北斗用户机受当时系统设计限制,每个用户机安装1张北斗用户ic卡,且北斗用户机根据北斗用户ic卡发送报文的频率限制,60秒才能发送一次。如果要发送一条长报文,需要将该长报文拆分成多个短报文,则需要多次发送,而发送一条报文信息后需要等待60秒后才能发送下一条,因此完成一次长报文的发送,时间从几分钟到几十分钟不等,发送等待时间较长,用户体验感差。

因此,本发明提供一种北斗长报文的发送设备及方法,旨在解决北斗较长报文快速发送的问题。



技术实现要素:

本发明的目的是提供一种北斗长报文发送的设备及其方法,实现一台北斗用户机能够快速发送一条北斗长报文,同时对方接收机也能在秒级时间内收到此报文。

为达到上述目的,本发明的第一方面提供了一种北斗长报文发送设备,包括:多张北斗虚拟智能卡、单片机、基带处理单元、上下变频电路、低噪声放大器、功率放大电路和北斗发射天线;

所述多张北斗虚拟智能卡预先设置于所述发送设备中,具有一一对应的发射认证码,并将所述发射认证码提供给所述单片机;

所述单片机根据拆包组包协议将待发送的长报文拆分成多个短报文并打包后将其传输至基带处理单元;

所述基带处理单元、上下变频电路、低噪声放大器、功率放大电路和北斗发射天线依次连接,用于将所述多个短报文发送至北斗卫星。

进一步的,预先设置所述多张北斗虚拟智能卡包括:预先将物理的北斗用户ic卡放置到所述发送设备中,提取每张所述北斗用户ic卡对应的发射认证码,并将其存储到所述发送设备的存储器中。

进一步的,根据所述拆包组包协议,被拆分成的每个短报文包括:包头、包尾、包参数和包内容,所述包头、包尾和包参数各占用1个字节;所述包头和包尾分别设置为常量,包参数的头2位表示首包、中间包或尾包,后6位表示当前包号,取值范围为0~63,包内容为短报文的内容。

进一步的,所述包参数占用2个字节来表示,包参数的头2位表示首包、中间包或尾包,后14位表示当前包号,取值范围为0~16383。

进一步的,设所述长报文的长度为a字节,拆分的短报文的长度为b字节,令a除以b的商为d,余数为c;在所述发送设备中预设一张北斗用户ic卡,若c不为零,则将剩余c长度的电文打包发送出去,发射认证码采用所述北斗用户ic卡反馈的发射认证码。

本发明第二方面提供了一种北斗短报文发送方法,采用前述任一项技术方案所述的北斗长报文发送设备发送拆分后的短报文至北斗卫星,包括如下步骤:

预先设置多张虚拟北斗用户ic卡于所述发送设备中;所述每张虚拟北斗用户ic卡具有对应的发射认证码,将所述发射认证码提供给所述单片机;

所述单片机根据拆包组包协议将待发送的长报文拆分成多个短报文并打包后将其传输至基带处理单元;

所述基带处理单元将所述单片机发送的短报文进行扩频后传输至上下变频电路;

所述上下变频电路将接收到的扩频短报文的频率升高或降低后传输至低噪声放大器和功率放大器;

所述低噪声放大器和功率放大电路将变频后的短报文进行功率放大并传输至北斗发射天线;

所述北斗发射天线将功率放大后的短报文发送给北斗卫星。

进一步的,预先设置所述多张北斗虚拟智能卡包括:预先将物理的北斗用户ic卡放置到所述发送设备中,提取每张所述北斗用户ic卡对应的发射认证码,并将其存储到所述发送设备的存储器中。

进一步的,根据所述拆包组包协议,被拆分成的每个短报文包括:包头、包尾、包参数和包内容,所述包头、包尾和包参数各占用1个字节;所述包头和包尾分别设置为常量,包参数的头2位表示首包、中间包或尾包,后6位表示当前包号,取值范围为0~63,包内容为短报文的内容。

进一步的,所述包参数占用2个字节来表示,包参数的头2位表示首包、中间包或尾包,后14位表示当前包号,取值范围为0~16383。

进一步的,设所述长报文的长度为a字节,拆分的短报文的长度为b字节,令a除以b的商为d,余数为c;预设一张北斗用户ic卡,若c不为零,则将剩余c长度的电文打包发送出去,发射认证码采用所述北斗用户ic卡反馈的发射认证码。

综上所述,本发明提供了一种北斗长报文发送设备及其方法,该发送设备包括多张北斗虚拟智能卡、单片机、基带处理单元、上下变频电路、低噪声放大器、功率放大电路和北斗发射天线;所述多张北斗虚拟智能卡具有一一对应的发射认证码,所述发送设备将待发送的长报文拆分成多个短报文,每个短报文匹配一个发射认证码并打包后被传输至北斗卫星。

本发明的上述技术方案具有如下有益的技术效果:

本发明采用预先设置多张北斗虚拟智能卡,使得长报文拆分成短报文后,每个短报文匹配一个发射认证码进行顺序发送,解决现有北斗发送设备每预定时间内(按照现有的发射频率为60秒/次)只能发送一条短报文的局限,再辅助以专用的组包协议,实现了北斗快速长报文的发送方式,极大改善了用户体验,扩宽了使用场景。

附图说明

图1是本发明的北斗长报文发送设备的系统框图;

图2是现有技术的发送设备中发射认证码获取的流程示意图;

图3是本发明获取北斗用户ic卡的发射认证码的方法流程示意图;

图4是本发明的拆包组包协议示意图;

图5是本发明的北斗长报文发送方法的流程示意图;

图6是本发明的北斗长报文发送的一个具体实施例的流程示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。

如图1所示,本发明的第一方面提供了一种北斗长报文发送设备,包括:多张北斗虚拟智能卡1-n(n为自然数)、单片机、基带处理单元、上下变频电路、低噪声放大器、功率放大电路和北斗发射天线;多张北斗虚拟智能卡预先设置于该发送设备中,每张北斗虚拟智能卡具有对应的发射认证码,并将该发射认证码提供给单片机;单片机根据拆包组包协议将待发送的长报文拆分成多个短报文,每个短报文携带一个发射认证码并打包后被传输至基带处理单元;基带处理单元、上下变频电路、低噪声放大器、功率放大电路和北斗发射天线依次连接,用于将多个短报文按顺序发送至北斗卫星。

北斗虚拟智能卡是本发明的关键点,北斗短报文通信卫星在短报文卫星入站时,要求提供一个认证码,认证码有效,发送设备发送的北斗短报文才会被卫星接收并转给对方北斗用户机(接收设备)。

正常情况下,发射认证码的获取如图2所示。单片机在每次发送短报文之前,通过北斗用户ic卡专有协议向北斗用户ic卡传输用户id、待发送的电文长度和分帧号等参数,然后北斗用户ic卡会返回一个发射认证码字段信息,此时单片机将发射认证码字段信息和短报文打包到入站协议包中,发送给北斗卫星。

在现有的北斗报文发送设备中,由于一般只设置有一张北斗用户ic卡,该北斗用户ic卡具有对应的一个发射认证码。因此,当长报文被拆分为多个短报文进行发送时,每个短报文发送时需要与该北斗用户ic卡反馈的发射认证码打包后再进行发送,而北斗报文发送设备根据北斗用户ic卡发送报文的频率限制,每预定时间内只能发送一条报文信息(现有发送频率为60秒/次),如果长报文的电文长度较大,被拆分的短报文个数较多,则发送一条长报文需要等待较长时间。为提高发送速度,可以选择增加北斗用户ic卡的数量。但考虑到实际应用中,如在发送设备中放置太多物理北斗用户ic卡,将导致设备体积变大、设计复杂、可靠性低。本发明采用虚拟北斗智能卡的方式来降低硬件设计复杂度,提升产品可靠性,以及减低产品成本。

多张北斗虚拟智能卡预先设置于该发送设备中,每张北斗虚拟智能卡具有对应的发射认证码,并将该发射认证码提供给单片机。

具体的,获取发射认证码的流程如图3所示,包括如下步骤:

步骤310,预先将物理的北斗用户ic卡放置到该发送设备中。根据发送长报文长度的需要,计算所需北斗用户ic卡的数量n,将该数量的物理的北斗ic卡依次放置到发送设备中。例如预定发送长报文的长度不超过6592字节,则预置6592/103=64张物理的北斗用户ic卡至发送设备中。

步骤320,根据北斗ic卡协议中的规定,获取认证码协议。认证码协议包括:

1)数据长度:占用16bit,即2个字节,用来表示本缓冲区的长度,本缓冲区一共为2+1+3+2+2+1=11字节;

2)指令类别:占用8bit,即1个字节,根据协议约定,可固定设置为0x02;

3)本机用户id:占用24bit,即3个字节,指北斗用户ic卡的id号,填写放置的物理的北斗用户ic卡的id号即可。该id号存储在ic卡中,可以通过自检信息读出;

4)响应分帧号:占用16bit,即2个字节,按照北斗出站协议规定,1分帧占用31.25ms,一个超帧共1920帧,占用时间60秒;分帧号取值范围为0~1919,如此循环。通信功能对分帧号的响应无要求,因此这里可以填写固定值,填0即可;

5)信息长度:占用16bit,即2个字节,这里填写协议中规定的最大长度848bit;

6)crc校验:占用1个字节,crc校验为从数据长度位开始,到信息长度位的异或结果。

步骤330,将认证码协议的如上信息1-6组成11个字节的缓冲区buffer,通过北斗用户ic卡串口接口,发送给该ic卡。

步骤340,该ic卡收到此协议数据后,通过北斗用户ic卡串口接口,将“认证码”字段信息反馈输出给发送设备。

步骤350,判断当前第i张物理的北斗用户ic卡是否是最后一张,是则提取认证码结束,否则返回步骤310。

通过上述步骤310-350,得到每一张北斗用户ic卡对应的发射认证码。将这些发射认证码预先存入到设备的flash中。每次设备开机时,将存储在flash中的系列认证码读出到发送设备的内存中,以便发送过程中随时调用发射认证码。

进一步的,北斗长报文发送时还须将长报文拆分成多个独立短报文进行发送。拆包组包协议如图4所示。被拆分成的每个短报文包括:包头、包尾、包参数和包内容,所述包头、包尾和包参数各占用1个字节;所述包头和包尾分别设置为常量,包参数的头2位表示首包、中间包或尾包,后6位表示当前包号,取值范围为0~63,包内容为短报文的内容。具体的,首先设置一个包头,占用1个字节,该包头可以设置为常量“oxad”;设置一个包尾,占用1个字节,可以设置为常量“0xda”。包参数也可占用一个字节,包参数的头2位标识是首包、中间包还是最后一包,如图3所示,00表示为头包、01表示为尾包、10表示为中间包、11表示为非法值;后续6位表示当前包号,取值范围0~63。其他字节为包内容,用于承载短报文的信息。这里共占用了3个字节来进行组包和拆包使用。

上述设置的包头常量0xad和包尾常量0xda,用户也可以自己根据实际需要进行指定。包号取值范围0~63不够使用的话,也可以再增加1个字节,这样取值范围就会扩大到0~16383,一共16384个包,也即电文长度可达(848-32)*16384=13369344bit=1671168字节。

进一步的,设所述长报文的长度为a字节,拆分的短报文的长度为b字节,令a除以b的商为d,余数为c;在所述发送设备中预设一张北斗用户ic卡,此北斗用户ic卡为物理的ic卡,默认为发送剩余c字节的电文。即若c不为零,则将剩余c长度的电文打包发送出去,发射认证码采用该北斗用户ic卡反馈的发射认证码。

本发明的北斗长报文发送设备采用预先增加北斗虚拟智能卡,解决了发送设备在预定发送频率的周期时间内(例如每60秒)只能发送一条短报文的局限,根据包号顺序循环发送被拆分的短报文,每条短报文发送后无需再等待预定频率周期时间,而是打包下一个发射认证码以发送下一条短报文,这样只需等待发送设备自身处理数据的时间,在毫秒级时间范围内。再辅助以专用的拆包组包协议,实现了北斗快速长报文的发送方式,极大改善了用户体验,扩宽了使用场景。

本发明第二方面提供了一种北斗短报文发送方法500,如图5所示,采用本发明的北斗长报文发送设备发送拆分后的短报文至北斗卫星,包括如下步骤:

步骤510,预先设置多张虚拟北斗用户ic卡于所发送设备中;每张虚拟北斗用户ic卡具有对应的发射认证码,将该发射认证码提供给发送设备中的单片机。具体的,预先将物理的北斗用户ic卡放置到该发送设备中,提前设计一个提取“发射认证码”的程序,得到每一张北斗用户ic卡对应的发射认证码。将这些发射认证码预先存入到发送设备的flash中。每次设备开机时,将存储在flash中的系列认证码读出到发送设备的内存中,以便发送过程中随时调用发射认证码。

步骤520,单片机根据拆包组包协议将待发送的长报文拆分成多个短报文并打包后将其传输至基带处理单元。被拆分成的每个短报文包括:包头、包尾、包参数和包内容,然后与分配的发射认证码一起打包进行传输。

步骤530,基带处理单元将所述单片机发送的短报文进行扩频后传输至上下变频电路。

步骤540,所述上下变频电路将接收到的扩频短报文的频率升高或降低后传输至低噪声放大器和功率放大器。

步骤550,所述低噪声放大器和功率放大电路将变频后的短报文进行功率放大并传输至北斗发射天线。

步骤560,所述北斗发射天线将功率放大后的短报文发送给北斗卫星。

进一步的,根据所述拆包组包协议,被拆分成的每个短报文包括:包头、包尾、包参数和包内容,所述包头、包尾和包参数各占用1个字节;所述包头和包尾分别设置为常量,包参数的头2位表示首包、中间包或尾包,后6位表示当前包号,取值范围为0~63,包内容为短报文的内容。

进一步的,所述包参数占用2个字节来表示,包参数的头2位表示首包、中间包或尾包,后14位表示当前包号,取值范围为0~16383。

进一步的,设所述长报文的长度为a字节,拆分的短报文的长度为b字节,令a除以b的商为d,余数为c;预设一张北斗用户ic卡,若c不为零,则将剩余c长度的电文打包发送出去,发射认证码采用所述北斗用户ic卡反馈的发射认证码。

下面以一个具体的快速发送北斗长报文的实施例对本发明进行进一步的说明,如图6所示。

首先将64张北斗用户ic卡,依次放入到发送设备中,得到每一张对应的卫星入站认证码,并将此认证码储存到发送设备的flash中。开机后,将其更新到内存中。

判断北斗长报文长度是否大于6592字节,如果大于6592字节,则提示电文超长,先发送头部的6592字节,发送后,等待下一次发送频度到后(一般北斗发射频度为60秒),再循环发送剩余长度的电文。

然后,根据待发送的北斗长报文电文长度,计算拆分的短报文数量。每次发送短报文的预定最大电文长度为106字节,减去包头、包尾和包参数占用的固定3个字节,即短报文单次发送最大电文长度为103个字节,则64个虚拟认证码循环一次发送的最大电文长度为:6592字节(64×103=6592)。

定义待发送的北斗长报文长度为a,a除以103得到的商定义为d,余数为c。根据协议进行打包,顺序循环发送总数为d个的短报文,根据发送的顺序,填写对应的包参数(是否是首包、尾包、还是中间包,以及当前的包序号),并填写对应的虚拟认证码,然后打包发送出去。这里一定要填写对应的虚拟认证码,否则会出现发射超频的故障,从而导致电文发送不成功。

如果余数不为0,利用本机默认的一张北斗用户ic卡,将剩余c长度的电文打包发送出去,发射认证码可用该北斗用户ic卡自身反馈的认证码。

判断该长报文是否发生完毕,即当长报文的整个长度大于6592字节时,当次取值头部的6592字节发送完毕后,还需进一步循环发送剩余的长报文字节。如果发送完毕,则发送过程结束,否则返回“判断北斗长报文长度是否大于6592字节”的步骤,继续对剩余的长报文进行发送。

每次短报文的发送时间在毫秒级,按顺序依次发送该长度不超过6592字节的长报文仅需秒级时间就可完成,因此,北斗长报文的快速发送就实现了。

对方接收端根据指定的拆包组包协议,将收到的该系列北斗短报文进行组包,然后通过串口输出给用户,从而接收了一条完整的北斗长报文。

综上所述,本发明提供了一种北斗长报文发送设备及其方法,该发送设备包括多张北斗虚拟智能卡、单片机、基带处理单元、上下变频电路、低噪声放大器、功率放大电路和北斗发射天线;所述多张北斗虚拟智能卡具有一一对应的发射认证码,所述发送设备将待发送的长报文拆分成多个短报文,每个短报文匹配一个发射认证码并打包后被传输至北斗卫星。本发明通过提前预制的多张北斗用户的卫星入站的发射认证码,以及专用的打包协议,实现了快速发送北斗长报文的功能,而且发送设备硬件设计简单、制造成本低廉,极大改善了用户体验,扩宽了使用场景。

应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1