郭凤仙, 沈丽云
上海电气集团股份有限公司 中央研究院 上海 200070
近年来,随着信息技术的不断发展,信息的交流逐渐增加。在康复医疗领域,对康复机器人设备进行数据分析,可以进一步指导患者的康复方案,为康复医师制订康复计划提供有力依据。
数据分析的前提是数据的可靠传输,现有的一些数据进行传输时,一般采用存储介质或电子邮件等方式[1]。存储介质需要专人去现场操作,导致人力资源浪费,同时不利于远距离传输。电子邮件固然能在一定程度上解决远距离传输问题,但操作烦琐,尤其不适用于多用户的操作[2-3]。
基于此,笔者提出了一种基于文件传输协议(FTP)的康复机器人数据共享系统,能够实现数据的可靠传输。
FTP是因特网上使用最广泛的一种针对传输文件的协议,是对传输控制协议/网际协议的应用,工作在开放式通信系统互联参考模型的第七层,以及传输控制协议模型的第四层[4-5]。FTP使用可靠的传输控制协议服务,能够提高数据的可靠性和共享性,消除不同操作系统之间的不兼容问题。
FTP模型如图1所示。当用户通过FTP 客户端向服务端发起一个会话时,客户端会通过三次握手,采用端口21与FTP服务端建立控制连接,这一连接用于传输客户端和服务端的请求与响应指令。对于大批量数据,可以通过数据传输模块再建立数据通道进行数据传输[6-7]。
图1 FTP模型
在建立数据连接时,为适应不同的网络环境,支持主动和被动两种连接模式。这两种连接模式主要针对数据连接,与控制连接无关[8-9]。
(1) 主动连接模式。在主动连接模式下,FTP客户端发送PORT命令至服务端,主动连接模式连接过程如图2所示。
图2 主动连接模式连接过程
(2) 被动连接模式。在被动连接模式下,FTP客户端发送PASV命令至服务端,被动连接模式连接过程如图3所示。
图3 被动连接模式连接过程
康复机器人在使用过程中会产生大量数据,这些数据一方面可用于本地实时显示,另一方面可用于后续科学分析。
为保证数据的可靠传输与康复机器人的有效运行,同时辅助康复医师制订最佳康复方案,笔者设计的康复机器人数据共享系统,其愿景如图4所示。
图4 系统愿景
康复医师为患者制订康复方案后,患者使用康复设备进行训练。训练过程中的数据一方面用于本地实时显示,另一方面上传至服务器,实现远程存储,方便患者远程查看。通过对数据进行分析,可以辅助康复医师进行康复治疗方案的优化。
康复机器人数据共享系统的实现采用Java语言[10],以下就客户端和服务端的实现流程进行介绍。
客户端的处理流程如图5所示,每触发一次,会进行如下操作。
(1) 进入数据库查询最后一次上传历史记录,如果没有记录,则直接上传前一日的数据。
(2) 如果找到最后上传的日期,那么独立打包上传从该日期开始一直到前一日为止每一天的数据。
(3) 针对上传记录中标记上传出错的记录,重新上传。
图5 客户端处理流程
服务端的处理流程如图6所示。系统每隔一定的时间会检测FTP上传目录中是否有新的文件,如果有则开始处理。处理过程如下。
(1) 对检测到的.zip文件进行MD5校验。
(2) 解压所有文件到工作目录。
(3) 对基础数据进行入库操作,每家医院对应不同的数据库,需要提前在主数据库相应表中进行配置。
(4) 删除工作目录中的.csv文件。
(5) 将.zip文件移动至备份目录。
(6) 更新主数据库中的状态表,成功则status赋值1,失败则status赋值0,同时message字段中有失败原因。
随着互联网技术的飞速发展,信息共享已经成为趋势,FTP在实现数据传输及信息共享方面有广泛应用。笔者介绍了一种基于FTP的康复机器人数据共享系统,这一系统能够实现数据的可靠传输及有效存储。
图6 服务端处理流程