基于双指令模式的北斗通信卫星控制上位机研究
王思琦 傅苏 陈兆倩
摘 要 提出一款新型的北斗上位机开发思路,其能兼容目前北斗通信系统的集中数据收发系统,采用一对多的服务端对终端的组织形式。可以接收多个终端设备的信息,并能根据终端设备的不同进行数据的分类存储。同时,支持系统根据接收的终端信息,进行实时响应的区分终端设备的北斗信息发送功能,并对其可实现性以及应用性进行了分析。
关键词 北斗通信 上位机 卫星通信
0引言
北斗卫星通信作为一种能在广袤地区使用的卫星通信方式,虽然在通信速率和能力上无法和移动通信网络比较,但是在移动网无法覆盖的人迹罕至地区却需求强烈,包括无人机勘探结果回传、野外作业以及采矿工业开发等情况下,在很多场景下都没有移动网的完全覆盖,这时就需要卫星通信作为有效补充手段。而现有的上位机的功能有部分局限性,与卫星通信模块的连接多少有些漏洞,本篇文章尝试讨论了新型的能应用更广的上位机的开发思路,新型的上位机应该能开发配合野外数据回传的服务北斗接收系统,可以和布置在外的北斗终端系统进行通信,满足一对多的服务方式,形成集中通信管理系统等等。本文的结构如下:第2节,描述了具体的方案;第3节,分析了之前的北斗通信上位机并与本文提出的上位机制作思路进行对照以及新上位机的完成验证标准,可行性分析以及可融合性分析;第4节,结论。
1基于双指令模式的上位机的实现方案
1.1背景
因为移动网覆盖范围的局限性,在野外相当多的场合并不可靠,但是人类的活动范围越来越大,会去远离移动网基站的地方活动,所以与这部分人(或者代替人的智能机器设备)保持联系的需求也在增加。简言之就是使用卫星通信的需求在增加。而如果想要使用北斗代替无线网进行通讯,就必须弥补移动网不可靠的缺点,换言之,只有与北斗的通讯必须可靠流畅可控制性高才可以去替代。所以能够配合野外数据回传的北斗通信系统上位机的需求也随之增加,并且使用北斗通信的非专业人员也越来越多,对上位机的可靠性以及可操作性要求也在变高。
1.2设计构想思路
确定开发环境vs与开发语言c++与开发模式MFC之后,应该搭建起来大体框架并确定根据功能逻辑交互关系。其交互界面大致如图1(由qt简易编写用于说明用)所示,其主界面应该包括串口配置信息部分包括端口号,波特率,校验方式,数据长度,停止位长度、2.1指令模式与4.0指令模式开关根据选择的指令模式,在发送指令时,同样的指令功能会根据不同的指令模式,选择具体的字符指令形式或者是16进制ASCII码指令形式进行指令发送。北斗指令部分包括信号强度测试,定位申请,通信模式选择,卡号缺人等等一系列指令,所有的指令均采用这种封装的形式进行,使操作性变的简单,根据两套北斗协议的内容,写出两套指令并进行封装。数据收发控制窗口,以及调试窗口,在调试完成之后可用作显示数据的窗口而另一个接收数据的窗口可用来显示卫星的反馈指令信息这样看起来会更加清晰美观,为了增加其应用范围,使其能够以实现一上位机对多个终端收发指令,可以将几个上位机界面集成到一个上位机之中并通过代码逻辑区分,分别控制不同的终端需要注意的虽然使用同一个上位机但是是控制不同的端口的北斗模块发送给不同的终端,同一个北斗模块同一时间只能发送给一个终端。省去以前常出现星座图因为对于普通用户来说看星座的分布没有太大的意义,进行简化。其内部具体的代码实现过程可参照vc++构建串口上位机的过程,在vs环境中使用c++编写与在vc++环境下编写的方式相差不多,利用其中的api接口加上对北斗两种协议的解读可以实现上述所有逻辑功能。
其使用的步骤应该按照通过标准的北斗指令方式来进行,基本需要按照如下的步骤形式来形成北斗通信过程:
(1)读卡,获取北斗模块的信息,包括卡号、序列号、等级等信息。
(2)功率检测,检测当前的北斗信号强度,在信号强度允许的情况下进行通信。
(3)进行通信对象的选择以及选择通信所用的指令模式。
(4)进行通信的模式选择,分三种:一是,单纯字符;二是,单纯汉字;三是,字符汉字混发。
(5)与通信终端进行对话,收发指令数据。
(6)解读上面每一步返回的信息情况。
(7)实时进行通信监控并返回错误信息。
(8)发现错误信息进入到应急程序,解决错误后恢复为通信状态。
在北斗通信的整个过程中,实际上不但是单纯的简单指令发送,而且每条发送的指令,都会对应反馈的发送指令信息。对每种功能发送的指令,都会对应反馈相关北斗模块反馈的信息情况。
通过对指令反馈信息的收取,可以了解指令执行的情况。比如,读卡失败,那么可以再次发送读卡指令,如果一直读卡失败,可以更换指令模式或是可能北斗模块自身问题导致,从而可以实时监控整个通信的过程。
2新上位机需要验证的功能以其可融合性分析
2.1可融合性分析
上位机并不是单独存在的个体,需要与其他部分如北斗信號收发机,一个或者多个移动的附带北斗模块的终端,所以该上位机的使用范围是值得讨论的以及如何与其他项目融合也值得分析。
正如前面提到无线移动网的局限性,虽然在通常情况下其拥有速度快,稳定,覆盖率高等优点在大多数情况下可以满足通信要求,所以利用北斗卫星进行通讯的使用范围是一些特殊情况(因为利用北斗卫星通信的成本较高,如果在通常情况下使用会增加额外成本)而在远离城市的野外,如海上,山区,森林等地,移动网的信号覆盖很弱,而需要通信的客户往往是处于移动状态,只能使用无线通信,而不依赖基站,信号覆盖面最广的卫星通讯就显得更加实用,而北斗卫星通信系统相比于其他常用的卫星通信系统如gps,铱星,glonass等等更有利于本国的科研人员进行开发。北斗卫星通信的需求范围就是北斗上位机的需求范围,比如户外探险人员,应急救援人员,矿物勘测人员,以及一些智能设备如探测用无人机,在海上使用的水下机器人,矿物勘测机器人等等,在应急救援领域,矿物开采领域,船只导航,无人设备导航等部分领域均有应用。
从另外一种角度来看,其并非只能融合到同一类设备中,由于该类上位机具有一对多的能力,那么即使北斗模块的终端是完全不同的设备也能够同时操控。举个野外应急救援指挥系统的例子,如果野外有人失联,通常来说会派遣搜救队去寻找,通常失联的地方移动网信号都不好,要不然手机信号还好的情况下也不会失联,而此时派遣出去的搜查人员需要携带卫星通信终端设备防止进一步出现人员失联的情况,那么一个很简单的逻辑关系便产生,派遣多名人员携带多个终端,最大范围进行搜寻,加快搜寻效率很符合,而此时的上位机如果按照以前的思路,每次只能与一名搜救人员通信,显然此时与其他搜救人员的通信会有延迟,如果搜寻人员够多,那么很可能这些搜救人员内部的沟通就成问题,这里的解决方案可以是通过将上位机进一步开发使其能够同时一对很多的进行北斗卫星通信,同时与所有搜救人员进行通讯,毫无疑问,会极大的增加搜救效率,不仅如此,如果搜寻范围过大通过人力算时间内无法完成,采取人工搜索与机器搜索同时进行的方式,那么使用这种能同时与多个机器与人员公共进行通信的上位机系统就能够提高搜索效率,并且通过上位机系统统一进行指示,能够保持各个终端持有者的同时性。进一步发展下去,当搜救人员每个人都配上这种上位机系统,那么理论上就会形成一个能够互相交流搜救网络,可能该领域会有进一步的发展。
3结论
本文提出了一种研发北斗上位机的新思路并解释了其研发价值,新思路的上位机即指搭建出一款具有兼容两种北斗指令,可以实时支持多个串口并发数据发送,并可以缓存多个来源的北斗回传数据,并具备自组织发送数据格式的能力,满足适应北斗SBD通信的短报文发送要求的上位机。
其可以通过对实际北斗设备运行的检测,实时监控北斗传输数据情况及工作模式,在北斗短报文的通信的间隔,主动调整北斗模块工作模式以便节省能源,保证在不传输数据时,使北斗模块主动进入休眠状态。支持多种节能状态模式转换的能力,方便本系统即便是在电池供电的情况下,也能长时间高效运行,能开发配合野外数据回传的服务北斗接收系统,可以和布置在外的北斗终端系统进行通信,满足一对多的服务方式,形成集中通信管理系统等等。
除此之外,该上位机在接入网络后(比较常用的有GPRS、无线WIFI、以太网口,GPRS方式需要GPRS模块和SIM卡的支持,无线WIFI模块需要WIFI模块支持),可以通过网络和云端服务器建立TCP连接,将收到的北斗短报文数据按照一定的协议打包上传至云端服务器后,用户可以通过网络实现对北斗数据包的在线管理,并对数据创建相关应用,对接收数据进行直观展示,并且可以通过网络通信实现对北斗终端设备的远程遥控。
依据这些特性可以较为和谐的融入其他项目并具有一定的优越性,并提升整体的效率,可交互性,可靠性等等,可见其具有一定的研发价值。但是依照本思路设计出来的上位机并不是完美的,由于收到诸多条件的制约如硬件数量,传输速率,通信带宽有限,可移植性差等等,一对多的服务方式也会变得有限。
参考文献
[1] Andreas,S&A.Neubauer&H.Ehm&R.Weigel&N.Lemke&G.Heinrichs,&J.Winkel&J.A.醰ila-Rodr韌uez&R.Kaniuth&T.Pany&B.Eissfeller&G. Rohmer&M.Overbeck.Combined Galileo/GPS architecture for enhanced sensitivity reception[J].AEUE-International Journal of Electronics and Communications,2005(05).
[2] Thomas,H&T.Gotoh&J.Amagai&Y.Koyama&T.Kondo.A GPU based real-time GPS software receiver[J].GPS Solutions,2010(02).
[3] Jiangping,D.&R.Chen&J. Wang.An enhanced bit-wise parallel algorithm for real-time GPS software receiver[J].GPS Solutions,2010 (02).
[4] G.W. Hein,T. Pany,S. Wallner, et.Platforms for a Future GNSS Receiver: A Discussion of ASIC, FPGA, and DSP Technologies[J]. InsideGNSS ,2006.
[5] 魯郁,GPS全球定位接收机[M].电子工业出版社,2009.
[6] 王鹃,仇跃华.导航接收机上位机软件的设计与开发[J].微计算机信息,2008(01).
[7] 郑少仁等. Ad hoc网络技术[M].北京:人民邮电出版社, 2005.
[8] 史伟艳.北斗_GPS_GLONASS组和导航接收机上位机软件的设计和开发[J].信息与电脑(理论版),2011(10).
[9] GPS、GLONASS、北斗、Galileo:四大卫星导航系统“竞风流”[J].军民两用技术与产品,2012(05).
[10] 祖秉法.“北斗二号”民用软件接收机关键技术研究[D].哈尔滨:哈尔滨工程大学,2010.
[11] 李长林,高洁,Visual C++串口通信技术与典型实例[M].北京:清华大学出版社,2006.
[12] 侯艳,vs2005中串口通信的实现[J].信息技术,2009(04).
[13] 骆拓,龚寄.基于VC++和Windows API的串口通信程序设计[J].电脑编程技巧与维护,2014(18).
[14] 鲍然.北斗卫星导航系统与全球定位系统的性能比较[J].信息通信,2013(07).
[15] 刘海涛.高灵敏度GPS/Galileo双模导航接收机的研究与开发[D].长沙:国防科学技术大学,2006.
[16] 李现勇.Visual C++串口通信技术与工程实践[M].人民邮电出版社, 2002.
[17] 蔡雨楠,李洋,权立,黄夏.多模无线通信技术在应急指挥系统中的应用[J].电力系统通信,2011(11).
[18] 蔡勇,陈一民,陈养彬,高飞.移动多媒体应急指挥系统的设计与实现[J].计算机应用,2005(S1).
[19] 李博.无线通讯在应急方面的应用[J].电子技术与软件工程,2018(08).
[20] 谷丰.无线多模通信终端关键技术的设计与实现[D].北京:北京邮电大学,2015.
[21] 阚能琪.VC++串口通信中多线程技术的应用研究[J].西华大学学报(自然科学版),2005(04).
[22] 杨军,曹冲.我国北斗卫星导航系统应用需求及效益分析[J].武汉大学学报(信息科学版),2004(09).
[23] 屈武江.串口数据采集系统在VS2008中的设计与实现[J].师范大学学报(自然科学版),2013(03).
[24] 郭宝录,李朝荣,乐洪宇.国外无人机技术的发展动向与分析[J].舰船电子工程,2008(09).
[25] 林兴铭.基于嵌入式平台的微型无人机地面控制系统设计[D].福州:福州大学,2014.