基于铱星的数据传输系统研究
2019-04-04马凤强鲁晶孙久武
马凤强 鲁晶 孙久武
摘 要:近年来,偏远地区数据传输技术不断发展,但仍然存在诸多缺点,如数据传输距离受限,通信费用较高,移动基站架设困难等等。本文设计了基于铱星的数据传输系统,对目前偏远地区数据传输存在的一些问题提出了更加可靠的建议。
论文详细介绍了基于铱星通信数据传输系统的软硬件设计,设计过程中注重降低系统功耗,保证系统的可靠性。系统由两个部分组成,包括铱星通信以及数据接收系统。铱星通信子系统接收数据,然后将数据传输至铱星基站。数据接收子系统是自主设计的上位机软件,可以以"Direct IP"的方式接收来自铱星基站的数据,并对数据进行解析和存储。
关键词:铱星通信;数据传输;Direct IP
1.介绍
卫星通信是目前唯一能全球覆盖的通信方式,虽然在通信质量上还无法和移动网络相比,但是好处在于可以在移动网络无法覆盖的区域进行通信。尤其是可以进行数据传输,方便用户在没有移动网络的情况下进行各种形式的数据回传操作,极大的扩大了物联网的服务区域和形式,可以作为物联网“触角”延伸的有效方式来提高物联网的使用范围。本项目计划开发基于铱星卫星通信方式的双模式数据操作方式,实现在铱星通信链路建立情况下的数据传输工作。
卫星通信与其他通信方式相比有很多优势,但也存在一些突出的问题。一方面是卫星数据传输的资费以数据量计算,通信费用高。为了降低通信费用,需要最大限度地减少通信数据量,采用数据压缩技术对数据进行压缩是有效的解决办法。另一方面是数据的安全性问题[1]。我国自主产权的北斗卫星通信系统虽然能够保证通信的安全性和保密性,但由于其覆盖范围有限,所以很多情况下需要选择国外的卫星通信系统,如 Argos和铱星系统等。但这些卫星通信系统的数据传输均要先通过国外的数据处理中心,经处理之后再分发给国内用户,数据的安全性从根本上得不到保证。所以为了保证数据安全,需要采用数据加密技术对数据进行加密。
2.系统整体设计
基于铱星的通信系统设计主要分为硬件设计和软件设计两个部分。硬件部分主要由三个部分组成,分别是电压转换与控制模块,串口通信模块,CPU核心控制模块。软件部分主要是铱星数据接收终端上位机的设计,采用点对服务器的数据接收方式实现。
2.1 硬件設计部分
本文设计硬件电路系统的供电是包括12V和5V的直流电,在电压选择方面,12V电压经过一个电压控制芯片给铱星模块供电,可以控制是否给铱星模块供电来降低系统功耗,5V电压经过一个电压控制芯片给铱星模块供电,同时经过电压转换芯片转换成3.3V给主控单片机进行供电。
5V电压输入之后,通过软件控制单片机的PA6引脚的电平高低来控制5V电压是否输出,主控芯片是IRFHM9331TRPBF,如上框图所示,作为控制开关。除此之外,通过线性稳压器AMS1117,实现5V电压到3.3V电压的电平转换,
本设计所采用的核心控制芯片是STM32F429VGT6,STM32F4系列单片机兼容于STM32F2系列产品,便于ST的用户扩展或升级产品,而保持硬件的兼容能力。集成了新的DSP和FPU指令,168MHz的高速性能使得数字信号控制器应用和快速的产品开发达到了新的水平。提升控制算法的执行速度和代码效率。并且采用先进技术和工艺,采用多重AHB总线矩阵和多通道DMA,支持程序执行和数据传输并行处理,数据传输速率非常快。
本设计采用的通信方式为串口通信,串口和铱星模块通信的电平为RS232电平标准,单片机和外围串口的通信电平标准为TTL电平标准,因此需要将TTL电平转换为RS232标准,电平转换的核心控制芯片为MAX3232,max3232采用专有低压差发送器输出级,利用双电荷泵在3.0V至5.5V电源供电时能够实现真正的RS-232性能,器件仅需四个0.1uF的外部小尺寸电荷泵电容。max3232确保在120kbps数据速率,同时保持RS-232输出电平[2]。
2.2 软件设计部分
考虑无人区环境观测数据传输系统长期运行、数据量大、对数据可靠性和数据实时性要求较高等特点,本文数据接收系统采用“点对服务器”的数据接收方式。铱星提供直接将服务器中的数据通过网关与客户端应用程序进行传输的服务,铱星提供的服务器数据传输方式是基于 Socket 的 Direct Internet Protocol(Direct IP)方式。Direct IP 传输是指海洋数据通过铱星网络上传至铱星基站,基站处理(加 4 个字节,作为牵手协议)后,通过国际网关,直接给绑定的服务器发送数据,SBD 格式传输的官方时间在 8 秒内[4]。同时,通过服务器也可以反向对观测终端发送指令。服务器没有收发字节长度的限制,数据传输的长度取决于铱星模收发的最大长度。Direct IP 收发方式需编写上位机,直接处理自建服务器上捕捉到的数据,不需要进行下载操作。
Direct IP 是一种基于 Socket 的传输机制,含义是针对数据发送和接收,直接连接至一个具体的 IP 地址进行通信。Direct IP 为铱星网关和用户应用之间提供高效的数据传输,这种传输方式比 email 方式具有更低的传输延迟。
根据数据的传输方向,Direct IP 可分为 MO(Mobile Originated)和 MT(Mobile Terminated)两部分。MO Direct IP 部分中 Iridium GSS(铱星 SBD 数据子系统)作为客户端,用户应用端作为服务器端,数据由 Iridium GSS 传向用户应用端。MT Direct IP部分中 Iridium GSS 作为服务器端,用户应用端作为客户端,数据由用户应用端传向Iridium GSS。
海洋环境观测数据传输系统主要实现将海洋数据传回研究人员手中,本文设计服务器时只实现了 MO Direct IP 的传输过程,即 Iridium GSS(铱星 SBD 数据子系统)作为客户端,用户应用端作为服务器端,数据由 Iridium GSS 传向用户应用端。MO 传输模式使用双向的 TCP/IP socket 连接,Iridium GSS 推送数据时无需获取用户应用端的确认信号,即确认连接后铱星服务器就将数据推送完毕。MO Direct IP 服务器端和客户端具体的连接要求如下:
(1)MO GSS 客户端连接要求
A.客户端根据由 IMEI 号绑定的 IP 地址和端口号向服务器端寻求建立 TCP/IP 连接。
B.一旦连接完成,客户端会传输 MO 载荷数据并关闭 socket 连接。
C.如果没有建立连接,客户端会进行重连尝试。
D.如果信息传输完毕,客户端会关闭 socket 连接,无需服务器端回馈确认信号。
(2)MO用户服务器端连接要求
A.服务器端会监听特定端口号上的 TCP/IP socket 连接,端口号在绑定期间指定。
B.连接成功后,服务器端在解析数据之前会接收全部的 MO 信息。
C.服务器端允许 GSS 客户端关闭 socket 连接。
D.如果信息传输完毕,客户端会关闭 socket 连接,无需服务器端回馈确认信号。
3.实验和验证
本文采用 Lab VIEW 进行上位机设计,设计的服务器软件运行于应用计算机或服务器上,通过以太网与铱星网关通信,接受来自铱星信标的数据,并对铱星数据进行解析和存储。系统服务器软件与铱星网关使用 TCP 通信协议进行通信,在 Lab VIEW 中基于 TCP的网络通信通过 TCP 节点来实现,TCP 节点位于函数选板的“数据通信→协议→TCP”。
系统服务器软件为 TCP 通信的服务器端,铱星网关为 TCP 通信的客户端。服务器软件监听固定端口,当铱星网关需求发送数据,会向服务器软件发起连接,服务器软件接收来自铱星网关的连接请求,建立连接[5]。服务器软件接收铱星网关发送的数据,对数据进行解码,并将解码后的数据进行存储。数据接收完毕后,服务器软件关闭连接,继续监听端口,等待下一次数据传输。
服务器软件中,“信息接收窗口”实时显示接收的数据,数据有十六进制和ASCII码两种显示格式可选。“连接状态”窗口可显示TCP实时连接状态,当服务器正在监听固定端口但客户端还未发送连接请求时显示“等待客户端连接……”,当连接建立后显示“连接成功!”,当数据传输完毕,连接关闭后显示“客户端断开了连接……”。另外服务器软件还可统计接收数据字节及次数。
经过设计如上的数据传输系统成功的实现将数据从一体机经过卫星传到上位机,可以应用在海洋数据观测方面或者荒漠的无人区等等,实现数据的实时传输,下面为在海洋数据采集传输方面的应用,采集到的海洋温度、盐度和深度经过卫星通信传到上位机。数据格式为盐度/温度/深度/时间。
0.000130_24.402000_0.000000_1884 0.000150_24.364000_0.000000_1917 0.000290_24.274000_0.000000_1949 0.000450_24.566000_0.000000_1982 0.000100_24.478001_0.000000_2014 0.000160_24.365999_0.000000_2047 0.000270_24.309999_0.000000_2080
下面的數据为设备的POT传感器的数据,以供上位机判断数据终端设备的状况 :
702_999_446_1143 707_999_446_1166 713_999_446_1188 719_999_446_1211 726_999_446_1234 730_999_446_1256 737_999_446_1279 742_999_446_1302
下面数据为设备的SAF传感器数据,采集到的数据,可以实时观察设备自身的电压电流情况:
1023_64_14.030000_0.350000_300_461 1023_64_14.130000_0.250000_300_507 1023_64_14.140000_0.250000_300_552 1023_64_14.140000_0.250000_300_597 1023_64_14.140000_0.240000_300_643
4.总结与展望
本文对基于铱星的数据传输系统进行了整体设计,详细介绍了数据传输的软硬件设计,以及数据接收上位机的整体设计思路。
首先对铱星通信系统的软硬件设计。硬件电路设计部分充分考虑各个部分的数据传输要求,对接收主控板数据并存储,最终通过铱星网络进行数据发送。设计过程中在满足功能和功耗要求的情况下,尽可能的简化软件流程,提高软件可靠性。
数据接收系统采用点对服务器的数据接收方式实现,论文在 Lab VIEW 平台上设计了服务器软件,实现了接收来自铱星网关的数据,并对铱星数据进行解析和处理,完成数据存储等功能。论文介绍了各功能实现的详细流程。
参考文献:
[1]张颖,王化民. 基于 GSM的铱星通信系统 [J]. 航海技术, 2013(03): 35-37.
[2]孔佑迪, 门雅彬, 齐占辉. 基于铱星通信的海洋环境在线监测系统 [J]. 电子技术应用, 2015, 41(08): 27-29+33.
[3]Iridium 9602 SBD Transceiver Developers Guide.
[4]刘培军, 张秉豪.铱星 SBD数传电台在特殊区域的应用 [J]. 全球定位系统, 2009, 34(02): 36-40.
[5]钟健瑜. 基于铱星数据通信的海洋数据采集与实时传输通用平台的研究 [D]. 南昌大学, 2008.
[6]刘敬彪,翁杰,于海滨,等.浮标电子与通信系统研制[J].电子器件,2010,33(1):49-52.
[7]明鹏,徐 皓.应用单片机实现点对点数据通信[J].舰船电子工程,2008,28(3) :154-156.
[8]黄瑞.铱星通信在水污染实时监测中的应用[J].现代电子技术2011,34(7) :52-54.
[9]张飞,张侃健,魏海坤,等.基于铱星 OpenPort 的南极科考支撑平台通信系统设计[J].计算机测量与控制,2014,04(22):1267-1269
[10] Iridunm Satellite LLC.Iridium satellite data services white paper[R] . USA: Iridium,2003.
[11] Iridumm Satellite LLC.Iridium short burst data service developers guide, Release 2. 0[R].USA: Iridium,2007.
[12]黎明, 时海勇. 基于北斗卫星的大型海洋浮标通信机制研究 [J]. 海洋技术, 2012, 31(1): 1-5.
[13]岂兴明, 周建兴,矫津毅, 等. Labview8.2中文版入门与典型实例 [M]. 北京:人民邮电出版社, 2010: 287-290
[14]曲乐成, 李欣, 孙法江.基于无线网络的海洋传感数据实时传输系统设计 [J]. 信息网络安全, 2015(02): 40-45.
[15]王宗,刘敬彪,蔡文郁.基于STM32的海洋浮标无线通信网络设计[J].电子技 术应用,2011,37(7) :42-44.