CN110149389B - 一种全息显示装置的数据传输控制方法及系统 - Google Patents
一种全息显示装置的数据传输控制方法及系统 Download PDFInfo
- Publication number
- CN110149389B CN110149389B CN201910411839.7A CN201910411839A CN110149389B CN 110149389 B CN110149389 B CN 110149389B CN 201910411839 A CN201910411839 A CN 201910411839A CN 110149389 B CN110149389 B CN 110149389B
- Authority
- CN
- China
- Prior art keywords
- holographic display
- file
- data
- display device
- channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种全息显示装置的数据传输控制方法及系统,本发明全息显示装置采用UDP广播设备信息的方式灵活快速的实现与控制终端的连接,采用TCP通讯方式和特定的通讯协议结构可保证传输过程中的数据完整性不丢失,数据存储到SD卡采用缓冲区一次进行大量存储,大大缩减了数据存储耗费的时间,使得文件发送可以更快速地完成。同时,将文件通道和命令通道分开,文件数据和命令数据可直接通过TCP Socket通道直接区分接收并进行处理,相对于单通道传输而言,在接收文件时可以省略数据复杂的校验和区分过程,提升了数据文件传输的速度,并且在文件传输过程中可同时进行控制命令处理,互不干扰。
Description
技术领域
本发明涉及计算机网络控制技术领域,更具体地,涉及一种全息显示装置的数据传输控制方法及系统。
背景技术
视觉暂留现象,即视觉暂停现象((Persistence of vision,POV)又称“余晖效应”,是人眼在观察景物时,光信号传入大脑神经,需经过一段短暂的时间,光的作用结束后,视觉形象并不立即消失,这种残留的视觉称“后像”,视觉的这一现象则被称为“视觉暂留”。
随着无线通信技术的发展与完善,各种各样的电子设备都开始采用无线通信方式来替代以前的有线通信方式,全息显示装置也不例外。无线通信使全息显示装置摆脱了通讯线的限制和拔插SD卡的烦恼,使其使用起来更加便捷。然而与此同时,相较与有线通信来说,目前的全息显示装置的无线通信也有着一些缺陷,比如发送数据不稳定,数据传输速度缓慢,从而导致通信过程繁琐且易出错,时间长。
随着物联网的兴起,越来越多的设备通过wifi接入网络,而如何快速有效的管理越来越多的设备成为难题。目前,wifi设备的管理方法大致有三:第一类,通过电脑或移动设备建立TCP连接,心跳包维持连接,这种方法的好处在于可以实时控制,但管理的设备数量有限,因为每建立一个设备的连接就要建立一条或多条线程来维持设备的心跳包和TCP端口的数据收发,对电脑或移动设备的CPU和运行内存消耗太大;第二类,通过服务器或服务器集群建立TCP连接,心跳包维持连接,这种方法在第一类的基础上解决了连接数量有限的问题,但大大增加了开发和运维成本;第三类,通过http建立短链接,由于只建立了短链接,所以CPU和运行内存消耗大大减少,但无法及时有效的控制和管理设备。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种全息显示装置的数据传输控制方法及系统。
本发明解决其技术问题所采用的技术方案是:根据本发明的第一方面,提供一种全息显示装置的数据传输控制方法,具体包括步骤:
S10、建立控制终端与至少一台全息显示装置的无线通信通道;无线通信通道包括广播通道、命令通道和文件通道;
S20、控制终端通过命令通道发送文件传输命令;
S30、全息显示装置判断是否能够接收数据文件;如是,则执行S40;如否,则全息显示装置通知控制终端无法接收数据文件,并上传错误标识;
S40、全息显示装置准备接收数据文件,并通知控制终端开始发送;
S50、全息显示装置接收到数据文件,判断是否超时;如否,则执行S60;如是,则全息显示装置通知控制终端发送超时,并删除已接收到的数据;
S60、判断数据文件来源是命令通道还是文件通道,如是命令通道,则执行S70;如是文件通道,则执行S80;
S70、处理数据文件中的控制命令,并向控制终端上传处理结果;
S80、全息显示装置接收数据文件;
S10、建立控制终端与至少一台全息显示装置的无线通信通道,全息显示装置的数量为一台,具体包括步骤:
S11、全息显示装置作为AP发射出wifi信号或者作为STA接入网络;
S12、全息显示装置建立UDP Socket和两个TCP Socket;UDP Socket为广播通道,两个TCP Socket为命令通道和文件通道;命令通道用于收发控制命令,控制命令采用心跳包的方式来实现,文件通道用于传输数据文件;
S13、全息显示装置通过UDP Socket发送UDP广播信息,并等待控制终端建立TCPSocket连接;
S14、控制终端接收到全息显示装置的UDP广播信息后建立广播通道和两个TCPSocket通道;
S10、建立控制终端与至少两台全息显示装置的无线通信通道,全息显示装置的数量至少2台以上,具体包括步骤:
S101、控制终端接入至少两台全息显示装置,建立UDP Socket和两个 TCPSocket;UDP Socket为广播通道,两个TCP Socket分别为命令通道和文件通道,命令通道用于收发控制命令,控制命令采用心跳包的方式来实现,文件通道用于传输数据文件;
S102、配置心跳包的验证间隔时间T和每条TCP线程管理的TCP连接的数量N;
S103、建立命令通道的心跳包的心跳包线程以及文件通道的至少一个 TCP线程组;
S104、判断每个TCP线程组的TCP连接数量是否达到上限阈值,如是,则执行S105,如否,则执行S106;
S105,新建TCP线程组,并将新加入的TCP连接加入新建的TCP线程组,并执行S107;
S106、将新加入的TCP连接加入到未满额的TCP线程组,并执行S107;
S107、对TCP连接的数据进行分包处理及监控;
S108、对心跳包进行验证,如验证通过,则执行S107,如验证不通过,则执行S109;
S109、关闭TCP连接,并对TCP线程组的TCP连接数量减一。
优选的,TCP线程管理的TCP连接的数量N的范围为30-70;心跳包的验证间隔时间T的范围为1-3秒。
优选的,心跳包包括全息显示装置的状态信息,使用不同的位来标识不同的错误,分别标识全息显示装置的RAM错误、SD卡错误和连接路由器失败。
优选的,控制命令包括设备开关、播放控制、参数读取与修改、WIFI模式切换、播放文件的传输与修改、播放列表的读取与修改以及固件升级命令。
优选的,S80、全息显示装置接收数据文件,具体包括步骤:
S81、将接收到的数据文件存入缓冲区,如缓冲区数据填满,则将缓冲区的数据文件写入SD卡并清空缓冲区;
S82、判断数据文件写入SD卡是否发生错误,如是,则通知控制终端SD 卡错误,并删除已经接收到的数据文件;如否,则执行S83;
S83、全息显示装置判断数据文件接收是否完成,如是,则执行S84;如否,则执行S50;
S84、将缓冲区的数据文件存入SD卡,并通知控制终端发送成功。
优选的,当全息显示装置的数据文件较多时,采用分包将完整的文件列表信息发送给控制终端;
根据文件个数计算出需要发送的次数,然后将文件信息进行分解,并且在每次发送时需要添加上本次发送为第几次和总发送次数,依次上传,这样控制终端就能成功的将完整的文件列表信息接收完全。
优选的,通讯协议结构包括:协议头、功能码、指令长度、指令码、CRC 校验,其中,指令码包括广播类、控制类、文件类、同步类、互联网类和调试类。
根据本发明的另一方面,还提供一种全息显示装置的数据传输控制系统,数据传输控制系统用于执行上述的数据传输控制方法;数据传输控制系统包括控制终端、以及与控制终端进行无线通信的至少一台全息显示装置;全息显示装置包括WIFI模块。
实施本发明全息显示装置的数据传输控制方法及系统的技术方案,具有如下优点或有益效果:本发明的全息显示装置采用UDP广播设备信息的方式可以很灵活快速的实现与控制终端的连接,采用TCP通讯方式和特定的通讯协议结构可以保证传输过程中的数据完整性不会丢数据,可以确保接收到的文件数据正确并且完整有效,数据存储到SD卡采用缓冲区一次进行大量存储,而不是接收一点就写入SD卡一点,这样大大缩减了数据存储耗费的时间,使得文件发送可以更快速地完成。由于将文件通道和命令通道分开,文件数据和命令数据可以直接通过TCP Socket通道直接区分接收处理,相对于单通道传输而言,在接收文件时可以省略数据复杂的校验和区分过程,提升了文件传输的速度,并且在文件传输过程中也可以同时进行控制命令处理,互不干扰。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,附图中:
图1是本发明全息显示装置的数据传输控制方法实施例的流程示意图;
图2是本发明全息显示装置的数据传输控制方法实施例的建立无线通信通道流程示意图;
图3是本发明全息显示装置的数据传输控制系统实施例的模块示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下文将要描述的各种示例性实施例将要参考相应的附图,这些附图构成了示例性实施例的一部分,其中描述了实现本发明可能采用的各种示例性实施例,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。应明白,它们仅是与如所附权利要求书中所详述的、本发明公开的一些方面相一致的装置和方法的例子,还可使用其他的实施例,或者对本文列举的实施例进行结构和功能上的修改,而不会脱离本发明的范围和实质。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明 的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
如图1-2示出了本发明全息显示装置的数据传输控制方法实 施例提供的示意图,为了便于说明,仅示出了与本发明实施例相关的部分。本发明全息显示装置的数据传输控制方法,具体包括步骤:
S10、建立控制终端与至少一台全息显示装置的无线通信通道;无线通信通道包括广播通道、命令通道和文件通道;
S20、控制终端通过命令通道发送文件传输命令;
S30、全息显示装置判断是否能够接收数据文件;如是,则执行S40;如否,则全息显示装置通知控制终端无法接收数据文件,并上传错误标识;
S40、全息显示装置准备接收数据文件,并通知控制终端开始发送;
S50、全息显示装置接收到数据文件,判断是否超时;如否,则执行S60;如是,则全息显示装置通知控制终端发送超时,并删除已接收到的数据文件;
S60、判断数据文件来源是命令通道还是文件通道,如是命令通道,则执行S70;如是文件通道,则执行S80;
S70、处理数据文件中的控制命令,并向控制终端上传处理结果;
S80、全息显示装置接收数据文件。
具体的,控制终端发送传输文件命令给全息显示装置,其中包含一些文件信息,包括文件名称、播放次数、帧时间、总帧数、文件唯一ID和文件类型。全息显示装置接收到文件传输命令后,先判断一下自身的当前状态是否能够接收数据文件,然后向控制终端返回判断结果;若可以接收,则创建文件并等待控制终端发送数据文件,接收到的数据文件先存入缓存中,每接收满数据(如30KB)才写入一次SD卡,并清空缓存。在接收数据文件的整个过程中,每次接收都要校验是否完成接收,若接收完成则主动给控制终端返回接收完成消息,并添加到播放列表中,生成新的播放列表文件,若未完成则继续等待数据,等待时间最长为5秒,若5秒内没有接收到任何数据文件则认为文件发送超时失败,并将结果通过命令通道反馈给控制终端。并且在每次将数据写入SD卡后都要校验是否写入成功,若失败则将本次接收到的数据文件删除,并立马反馈SD卡错误给控制终端,结束本次传输。每次结束接收数据文件后,全息显示装置需要向控制终端更新一下文件列表信息。
在本实施例中,当全息显示装置的数量为一台时(即为全息显示装置的通信过程),S10、建立控制终端与至少一台全息显示装置的无线通信通道,具体包括步骤:
S11、全息显示装置作为AP发射出wifi信号或者作为STA接入网络;具体的,本发明使用WiFi(WIrelessFIdelity)通信技术,UDP协议(User Datagram Protocol,用户数据报协议)和TCP协议(Transmission Control Protocol,传输控制协议)实现数据的无线传输通信。
S12、全息显示装置建立UDP Socket和两个TCP Socket;UDP Socket为广播通道,两个TCP Socket为命令通道和文件通道;命令通道用于收发控制命令,控制命令采用心跳包的方式来实现,文件通道用于传输数据文件。
S13、全息显示装置通过UDP Socket发送UDP广播信息,并等待控制终端建立TCPSocket连接。
S14、控制终端接收到全息显示装置的UDP广播信息后建立广播通道和两个TCPSocket通道。
全息显示装置作为AP(无线接入点)发出WiFi信号,或者是设备作为 STA(站点)通过WiFi接入网络,然后建立一个UDP Socket Client端口和两个TCP Socket Server端口。当无控制终端接入TCP Socket时,全息显示装置通过UDP端口一直广播其自身的装置信息,广播信息中包含装置的唯一MAC 地址(Media Access Control Address媒体访问控制地址),用作控制终端对装置进行区分识别。当控制终端接收到UDP广播时,根据UDP广播里的装置信息与装置的两个TCP Socket端口建立TCP Socket连接,装置停止发送UDP 广播。此时,全息显示装置即可与控制终端通过这两个TCP Socket通道进行无线通信。这两个TCPSocket通道向装置发送包含不同信息的连接命令来区分,一个用来进行控制命令的交互,一个用来文件数据的传输,使得控制命令与数据文件互不影响。相对于全部数据直接从单通道传输,设备端可以同时接收处理控制命令和文件数据,也可以通过数据来源的TCPSocket通道区分接收到的数据类型,处理数据更加简单方便,且出错概率大大降低。
在本实施例中,当全息显示装置的数量至少两台以上(尤其是上百台,甚至更多)时(即为控制终端的通信过程),S10、建立控制终端与至少两台全息显示装置的无线通信通道,具体包括步骤:
S101、控制终端接入至少两台全息显示装置,控制终端与每台全息显示装置建立一个UDP Socket和两个TCP Socket;UDP Socket为广播通道,两个 TCP Socket分别为命令通道和文件通道,命令通道用于收发控制命令,控制命令采用心跳包的方式来实现,文件通道用于传输数据文件;
控制终端通过UDP Socket发送UDP广播信息,并等待全息显示装置建立TCPSocket连接;全息显示装置接收到控制终端的UDP广播信息后建立广播通道和两个TCPSocket通道。
S102、配置心跳包的验证间隔时间T和每条TCP线程管理的TCP连接的数量N;具体的,TCP线程管理的TCP连接的数量N的范围为30-70,优先的,可以为50;心跳包的验证间隔时间T的范围为1-3秒,具体的,可以为2秒。
具体的,心跳包验证间隔时间T用于维持装置连接,如设置心跳包验证间隔时间为2秒,如果控制终端在2秒内没有收到装置发送过来的心跳包,则控制终端自动判断装置已经断开,同时会断开建立的TCP连接;每条线程管理的TCP连接数量用于一条线程可以监控多少TCP端口的数量上限,例如,将每条线程管理的TCP连接数量设为50等。
S103、建立命令通道的心跳包的心跳包线程以及文件通道的至少一个 TCP线程组;根据步骤S102配置的每条线程管理的TCP连接数量参数对TCP 连接分组,如配置每条线程管理的TCP连接数量为50,那么一条线程可以监控的TCP端口数量就是50,如果超过则增加TCP线程组。
S104、判断每个TCP线程组的TCP连接数量是否达到上限阈值,如是,则执行S105,如否,则执行S106;具体的,新的TCP连接优先会加入TCP 连接数不满N的TCP分组,避免造成TCP分组连接数不满的情况下,新开线程,浪费CPU和运行内存资源。
S105,新建TCP线程组,并将新加入的TCP连接加入新建的TCP线程组,并执行S107;
S106、将新加入的TCP连接加入到未满额的TCP线程组,并执行S107;
S107、对TCP连接的数据进行分包处理及监控;由于TCP连接传输数据是通过流的形式,所以由控制终端发送过来几段数据会合并成一段数据,这里我们会在此基础上做一层协议,用于区分控制终端发送过来的每一段数据。具体的,步骤S107将数据分好包后,就可以拿到数据包和心跳包,当拿到心跳包,将心跳包状态变为是。
S108、对心跳包进行验证,如验证通过,则执行S107,如验证不通过,则执行S109;具体的,根据步骤S107配置的心跳包验证间隔时间,注意所有全息显示装置的心跳包验证用一条线程即可,由于心跳包验证简单只用判断状态值是或否,是就通过验证,否则不通过,所以执行速度非常快,现阶段的计算机和移动设备完全能够处理。如果有上万级别的也可以对心跳包线程进行分组。验证完心跳包再将心跳包状态变为否。
S109、关闭TCP连接,并对TCP线程组的TCP连接数量减一。具体的,当心跳包验证不通过或TCP连接异常报错时,控制终端需要断开TCP连接,并将他从相应的TCP分组中剔除,相应的线程也不会再监听该TCP端口,并且相应的TCP线程组中TCP连接数减一。
具体的,心跳包包括全息显示装置的状态信息,使用不同的位来标识不同的错误,分别标识全息显示装置的RAM错误、SD卡错误和连接路由器失败。具体的,采用心跳包的方式来确认全息显示装置是否与控制终端断开,心跳包中包含全息显示装置的状态信息,其中使用不同的位来标志不同的错误,分别标识装置的RAM(Random Access Memory随机存取存储器)错误、 SD卡(Secure Digital Memory Card安全数码卡)错误和连接路由器失败等问题。每隔2秒,由控制终端通过命令通道发送心跳包至每个全息显示装置,全息显示装置接收到心跳包后立马将包含设备状态信息的心跳包返回给控制终端,控制终端可以将装置的状态信息显示出来,用户可以很方便的了解到全息显示装置的当前状态,若发生故障可以很快的定位到装置故障位置,使得全息显示装置的维护与维修十分方便。若控制终端发出心跳包命令之后10 秒钟一直没有接收到全息显示装置返回的心跳包,则认为通讯断开。连接断开后或者装置主动断开连接,控制终端将断开TCP连接,全息显示装置(或控制终端)也将重新通过UDP Socket通道发送广播信息,等待下一次控制终端(或全息显示装置)的连接。
在本实施例中,控制命令包括设备开关、播放控制、参数读取与修改、WIFI模式切换、播放文件的传输与修改、播放列表的读取与修改以及固件升级命令。具体的,可以通过无线终端来实现设备开关、播放控制、参数读取与修改、WIFI模式切换、播放文件的传输与修改、播放列表的读取与修改以及固件升级等功能。在全息显示装置的无线网络通信中,一些简单的小数据量的命令,如播放控制、开关机、修改一些简单的参数等,处理起来并不算复杂。然而大数据量的播放视频文件传输,则往往伴随着数据容易丢失、出错,以及数据传输缓慢等是一个难点问题。
在本实施例中,S80、全息显示装置接收数据文件,具体包括步骤:
S81、将接收到的数据文件存入缓冲区,如缓冲区数据填满,则将缓冲区的数据文件写入SD卡并清空缓冲区;
S82、判断数据文件写入SD卡是否发生错误,如是,则通知控制终端全息显示装置的SD卡错误,并删除已经接收到的数据文件;如否,则执行S83;
S83、全息显示装置判断数据文件接收是否完成,如是,则执行S84;如否,则执行S50;
S84、将缓冲区的数据文件存入SD卡,并通知控制终端发送成功。
当全息显示装置的数据文件较多时,采用分包将完整的文件列表信息发送给控制终端;其中,根据文件个数计算出需要发送的次数,然后将文件信息进行分解,并且在每次发送时需要添加上本次发送为第几次和总发送次数,依次上传,这样控制终端就能成功的将完整的文件列表信息接收完全。具体的,当全息显示装置中存储的文件较多时,文件列表信息对于全息显示装置的通讯来说,数据量较大,不能一次发送给控制终端,在本次发明中采用分包进行多次上传将完整的文件列表信息发送给控制终端。首先根据文件个数计算出需要发送的次数,然后将文件信息进行分解,并且在每次发送时需要添加上本次发送为第几次和总发送次数,依次上传,这样控制终端就能成功的将完整的文件列表信息接收完全。
本发明支持在线升级设备固件的功能,可以通过控制终端对全息显示装置现有的固件进行更新并升级。具体过程如下,首先由控制终端将需要更新的固件信息发送给全息显示装置,其中包换固件版本信息和固件大小(总字节数),其固件程序数据发送过程与播放文件数据的发送过程相同。接收完成后,全息显示装置复位重启,并将存到SD卡中的固件程序更新到设备中进行固件升级。升级完成后,将SD卡中的固件文件删除,并运行新的固件。
本发明还可以通过WIFI参数设置命令来切换全息显示装置的WIFI模式。当为AP模式时,全息显示装置与控制终端在这个局域网内进行单对单的通讯。若客户只需要单台播放时,使用非常方便,在任何地方只要有全息显示装置和控制终端都可以使用。当为STA模式时,则需要一个无线路由器来建立一个无线网络,全息显示装置和控制终端一起连入这个网络,则可以实现一台控制终端与多台全息显示装置通信的功能,从而控制多台全息显示装置。在客户需要多台全息显示装置组成大屏幕来进行多屏联动显示时,就可以采用这个模式来实现。
对于网络通信过程中可能出现的连包、丢包、数据出错等问题,本发明制定了特定的通讯协议结构来校验数据的正确性和完整性,从而处理这些问题。具体结构如下,协议头、功能码、指令长度、指令码、CRC校验,其中指令码分为六类,分别为广播类、控制类、文件类、同步类、互联网类和调试类。全息显示装置在接收到的数据处理过程中,首先找到协议头,然后判断功能码和指令长度来校验数据的完整性,再通过CRC校验对该条命令所有数据的正确性进行校验。若校验失败,则认为该条命令无效。
通讯协议结构包括:协议头、功能码、指令长度、指令码、CRC校验,其中,指令码分为广播类、控制类、文件类、同步类、互联网类和调试类。
本发明还提供一种全息显示装置的数据传输控制系统实施例,数据传输控制系统用于执行上文的数据传输控制方法;具体包括控制终端、以及与控制终端进行无线通信的至少一台全息显示装置。其中,全息显示装置包括 WIFI模块。
本发明的全息设备采用UDP广播设备信息的方式可以很灵活快速的实现与控制终端的连接,采用TCP通讯方式和特定的通讯协议结构可以保证传输过程中的数据完整性不会丢数据,可以确保接收到的文件数据正确并且完整有效,数据存储到SD卡采用缓冲区一次进行大量存储,而不是接收一点就写入SD卡一点,这样大大缩减了数据存储耗费的时间,使得文件发送可以更快速地完成。由于本方案将文件通道和命令通道分开了,文件数据和命令数据可以直接通过TCP Socket通道直接区分接收处理,相对于单通道传输而言,在接收文件时可以省略数据复杂的校验和区分过程,提升了文件传输的速度,并且在文件传输过程中也可以同时进行控制命令处理,互不干扰。同时若设备故障,有各种标志位上传到控制终端,使得装置的维护和管理更加简易方便。若全息显示装置需要进行软件升级,可以通过控制终端很便捷的进行升级,而不是像以前一样发回原厂进行拆机使用烧录器烧写,大大降低了维护升级的成本和难度。
本发明对TCP进行分组监控和管理,利用一条或几条线程来验证心跳包,成倍的减少了由线程带来的CPU和内存消耗;再者因为N个TCP连接共用一条线程,共用了缓存空间,再次减少了内存消耗。因为TCP连接是以数据流的形式传输,所以不会因为接收不及时造成数据包的丢失。由此,在同样配置的电脑和移动设备上该方法可以连接和管理更多的全息显示装置。
在阅读完下面将要描述的内容之后,本领域的技术人员应当明白,本文描述的各种特征可通过方法、数据处理系统或计算机程序产品来实现。因此,这些特征可不采用硬件的方式、全部采用软件的方式或者采用硬件和软件结合的方式来表现。此外,上述特征也可采用存储在一种或多种计算机可读存储介质上的计算机程序产品的形式来表现,该计算机可读存储介质中包含计算机可读程序代码段或者指令,其存储在存储介质中。可读存储介质被配置为存储各种类型的数据以支持在装置的操作。可读存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现。如静态硬盘、随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、光存储设备、磁存储设备、快闪存储器、磁盘或光盘和/或上述设备的组合。
以上仅为本发明的较佳实施例而已,本领域技术人员知悉,在不脱离本发明的精神和范围的情况下,可以对这些特征和实施例进行各种改变或等同替换。另外,在本发明的教导下,可以对这些特征和实施例进行修改以适应具体的情况及材料而不会脱离本发明的精神和范围。因此,本发明不受此处所公开的具体实施例的限制,所有落入本申请的权利要求范围内的实施例都属于本发明的保护范围。
Claims (8)
1.一种全息显示装置的数据传输控制方法,其特征在于,具体包括步骤:
S10、建立控制终端与至少一台全息显示装置的无线通信通道;所述无线通信通道包括广播通道、命令通道和文件通道;
S20、所述控制终端通过所述命令通道发送文件传输命令;
S30、所述全息显示装置判断是否能够接收数据文件;如是,则执行S40;如否,则所述全息显示装置通知所述控制终端无法接收所述数据文件,并上传错误标识;
S40、所述全息显示装置准备接收所述数据文件,并通知所述控制终端开始发送;
S50、所述全息显示装置接收到所述数据文件,判断是否超时;如否,则执行S60;如是,则所述全息显示装置通知所述控制终端发送超时,并删除已接收到的数据;
S60、判断所述数据文件来源是命令通道还是文件通道,如是命令通道,则执行S70;如是文件通道,则执行S80;
S70、处理所述数据文件中的控制命令,并向所述控制终端反馈处理结果;
S80、所述全息显示装置接收所述数据文件;
所述S10、建立所述控制终端与至少一台全息显示装置的无线通信通道,所述全息显示装置的数量为一台,具体包括步骤:
S11、所述全息显示装置作为AP发射出wifi信号或者作为STA接入网络;
S12、所述全息显示装置建立UDP Socket和两个TCP Socket;所述UDP Socket为所述广播通道,两个所述TCP Socket为所述命令通道和文件通道;所述命令通道用于收发所述控制命令,所述控制命令采用心跳包的方式来实现,所述文件通道用于传输所述数据文件;
S13、所述全息显示装置通过所述UDP Socket发送UDP广播信息,并等待所述控制终端建立所述TCP Socket连接;
S14、所述控制终端接收到所述全息显示装置的UDP广播信息后建立所述广播通道和两个TCP Socket通道;
所述S10、建立控制终端与至少两台全息显示装置的无线通信通道,所述全息显示装置的数量至少两台以上,具体包括步骤:
S101、所述控制终端接入至少两台所述全息显示装置,建立UDP Socket和两个TCPSocket;所述UDP Socket为所述广播通道,两个所述TCP Socket分别为所述命令通道和文件通道,所述命令通道用于收发所述控制命令,所述控制命令采用心跳包的方式来实现,所述文件通道用于传输数据文件;
S102、配置心跳包的验证间隔时间T和每条TCP线程管理的TCP连接的数量N;
S103、建立所述命令通道的所述心跳包的心跳包线程以及所述文件通道的至少一个TCP线程组;
S104、判断每个所述TCP线程组的TCP连接数量是否达到上限阈值,如是,则执行S105,如否,则执行S106;
S105,新建TCP线程组,并将新加入的所述TCP连接加入所述新建的TCP线程组,并执行S107;
S106、将新加入的所述TCP连接加入到未满额的所述TCP线程组,并执行S107;
S107、对所述TCP连接的数据进行分包处理及监控;
S108、对所述心跳包进行验证,如验证通过,则执行S107,如验证不通过,则执行S109;
S109、关闭所述TCP连接,并对所述TCP线程组的TCP连接数量减一。
2.根据权利要求1所述的全息显示装置的数据传输控制方法,其特征在于,所述TCP线程管理的TCP连接的数量N的范围为30-70;
所述心跳包的验证间隔时间T的范围为1-3秒。
3.根据权利要求1所述的全息显示装置的数据传输控制方法,其特征在于,所述心跳包包括所述全息显示装置的状态信息,使用不同的位来标识不同的错误,分别标识所述全息显示装置的RAM错误、SD卡错误和连接路由器失败。
4.根据权利要求1所述的全息显示装置的数据传输控制方法,其特征在于,所述控制命令包括设备开关、播放控制、参数读取与修改、WIFI模式切换、播放文件的传输与修改、播放列表的读取与修改以及固件升级命令。
5.根据权利要求1所述的全息显示装置的数据传输控制方法,其特征在于,所述S80、所述全息显示装置接收所述数据文件,具体包括步骤:
S81、将接收到的所述数据文件存入缓冲区,如所述缓冲区数据填满,则将所述缓冲区的数据文件写入SD卡并清空所述缓冲区;
S82、判断所述数据文件写入SD卡是否发生错误,如是,则通知所述控制终端所述全息显示装置的SD卡错误,并删除已经接收到的数据文件;如否,则执行S83;
S83、所述全息显示装置判断所述数据文件接收是否完成,如是,则执行S84;如否,则执行S50;
S84、将所述缓冲区的数据文件存入所述SD卡,并通知所述控制终端发送成功。
6.根据权利要求1所述的全息显示装置的数据传输控制方法,其特征在于,当所述全息显示装置的数据文件较多时,采用分包将完整的文件列表信息发送至所述控制终端;
根据文件个数计算出需要发送的次数,然后将文件信息进行分解,并且在每次发送时需要添加上本次发送为第几次和总发送次数,依次上传,所述控制终端就能成功的将完整的文件列表信息接收完全。
7.根据权利要求1所述的全息显示装置的数据传输控制方法,其特征在于,通讯协议结构包括:协议头、功能码、指令长度、指令码、CRC校验,其中,所述指令码包括广播类、控制类、文件类、同步类、互联网类和调试类。
8.一种全息显示装置的数据传输控制系统,其特征在于,所述数据传输控制系统用于执行权利要求1-7任一项所述的数据传输控制方法;
所述数据传输控制系统包括控制终端、以及与所述控制终端进行无线通信的至少一台全息显示装置;所述全息显示装置包括WIFI模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910411839.7A CN110149389B (zh) | 2019-05-16 | 2019-05-16 | 一种全息显示装置的数据传输控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910411839.7A CN110149389B (zh) | 2019-05-16 | 2019-05-16 | 一种全息显示装置的数据传输控制方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110149389A CN110149389A (zh) | 2019-08-20 |
CN110149389B true CN110149389B (zh) | 2022-02-01 |
Family
ID=67594334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910411839.7A Active CN110149389B (zh) | 2019-05-16 | 2019-05-16 | 一种全息显示装置的数据传输控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110149389B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116032991A (zh) * | 2022-12-27 | 2023-04-28 | 中国联合网络通信集团有限公司 | 设备控制方法、装置、服务器及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106254507A (zh) * | 2016-08-29 | 2016-12-21 | 苏州蓝海彤翔系统科技有限公司 | 文件传输控制方法和系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007081574A (ja) * | 2005-09-12 | 2007-03-29 | Ntt Docomo Inc | データ伝送システム、データ伝送方法、基地局及び移動端末 |
KR101609250B1 (ko) * | 2008-11-26 | 2016-04-06 | 삼성전자주식회사 | 데이터스트림을 이용한 송수신 시스템의 인터페이스 방법 |
CN101951410A (zh) * | 2010-10-13 | 2011-01-19 | 国电南瑞科技股份有限公司 | 一种嵌入式终端自动远程升级的实现方法 |
WO2013178274A1 (en) * | 2012-05-31 | 2013-12-05 | Phonak Ag | System and method for master-slave data transmission based on a flexible serial bus for use in hearing devices |
CN107092459A (zh) * | 2017-05-31 | 2017-08-25 | 西安诺瓦电子科技有限公司 | 交互方法和交互装置以及显示屏控制系统 |
CN107222845A (zh) * | 2017-05-31 | 2017-09-29 | 西安诺瓦电子科技有限公司 | 显示屏控制卡的播控方法及播控装置 |
-
2019
- 2019-05-16 CN CN201910411839.7A patent/CN110149389B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106254507A (zh) * | 2016-08-29 | 2016-12-21 | 苏州蓝海彤翔系统科技有限公司 | 文件传输控制方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110149389A (zh) | 2019-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107295080B (zh) | 应用于分布式服务器集群的数据存储方法和服务器 | |
WO2021083244A1 (zh) | 一种mesh网络设备的多设备批量固件升级的方法 | |
US10268471B2 (en) | Method for upgrading terminal system, terminal, and system | |
CN107579863A (zh) | 终端ota升级方法、装置及系统 | |
CN101958799B (zh) | 一种终端升级方法、装置和系统 | |
CN113721966B (zh) | 节点升级方法、装置、存储介质及电子装置 | |
CN103906087A (zh) | 升级接入点的方法、装置和系统 | |
US10797986B2 (en) | Link discovery method and apparatus | |
US10931529B2 (en) | Terminal device management method, server, and terminal device for managing terminal devices in local area network | |
CN111273924B (zh) | 软件更新方法及装置 | |
CN110149389B (zh) | 一种全息显示装置的数据传输控制方法及系统 | |
CN109189403B (zh) | 操作系统os批量安装方法、装置和网络设备 | |
KR20160090485A (ko) | 소프트웨어 정의 네트워크에서 분산 컨트롤러를 운용하는 방법 및 장치 | |
US9525594B2 (en) | Method for combined unicast/multicast software transmission | |
CN104714856A (zh) | 一种软件修复方法及终端设备 | |
CN111367740B (zh) | 一种bmc的调试系统、方法及计算机可读存储介质 | |
US10514850B2 (en) | Information processing system, server device, Information processing method, and computer program product | |
CN114827967A (zh) | 软件更新方法、蓝牙设备及存储介质 | |
JP5313286B2 (ja) | Catv伝送路機器のソフトウエア更新方法とそれに使用可能なcatv伝送路機器 | |
CN118245092B (zh) | 一种安全控制平台多模块在线升级的方法 | |
JP5989577B2 (ja) | バージョンアップシステム及びバージョンアップ方法 | |
CN103595629A (zh) | 一种irdp网络中主机网关快速切换的方法和装置 | |
KR101628219B1 (ko) | 소프트웨어 정의 네트워크에서 컨트롤러를 운용하는 방법 및 장치 | |
CN111868687A (zh) | 信息处理装置、方法及程序 | |
CN101895415A (zh) | 一种对不同类型设备的管理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |