基于C#社区智能医疗监护软件的设计与实现
2016-12-05张圣鹏
武 一,丁 涵,张圣鹏
(河北工业大学 天津300401)
基于C#社区智能医疗监护软件的设计与实现
武 一,丁 涵,张圣鹏
(河北工业大学 天津300401)
基于物联网的迅速发展和独居老人的增多的情况,本文开发了一款基于社区智能医疗服务的监护软件。本系统采用C#和SQL Server 2008数据库技术完成软件部分的编程,实现对信息的显示、管理与查看。系统中还增加了视频会诊功能,采用OMCS网络多媒体框架实现视频语音功能。软件测试结果表明,系统可以实现健康参数的实时显示,能够实现视频和历史数据查询的功能,完成信息的管理与查看。系统极大的方便了对老人健康情况的监护,居家老人可以足不出户与社区医院的医护人员进行视频会诊,并且社区医院可以随时查看老人健康信息,关注老人健康。
智能医疗;C#;数据库;SQL Server 2008;OMCS
“互联网+”行动计划的推出,推动了社会生活的各方面与互联网应用结合起来,实现社会生活的更加信息化,更加智能化。“智慧城市”的提出加快了物联网的发展速度,作为城市的重要组成部分——社区实现“智慧”,是实现“智慧城市”的基础。“智慧社区”充分利用新一代的信息技术,如物联网,互联网等实现社区的智能管理和智能服务,为社区居民提供信息化服务,方便社区人民生活。
近几年,随着人们健康意识和生活时评的提高和人口老龄化的加速,医疗需求持续上升,导致社会的医疗资源严重紧缺,医护人员数量严重不足。在有限的医疗资源的基础上,如何优化医疗资源配置,提升医疗资源的利用率,成为亟待解决的问题。再加上慢性病患者和独居老人数量的增加,对这些人的监护也成为必须面对的问题。开发一套设计合理,技术先进,经济,实用,方便,可靠,价格低廉的智能医疗系统成为解决这些问题的最佳方案。文中所设计的监护软件是智能医疗系统的一部分,用于对采集数据的显示,记录与查询,信息的查询与管理,视频会诊。
1 系统构成
本系统主要由3部分构成:参数采集模块、无线传输模块和本上位机软件系统模块。参数采集模块通过传感器对被监护者的健康参数,如脉搏、血压、体温等数据进行采集,各采集节点将采集到的数据通过无线网络传送到协调器,协调器对数据进行处理,通过RS232发送给上位机串口。上位机软件系统将串口接收的数据进行显示和存储。同时,上位机软件系统还具有健康参数历史数据查询,信息的查询与管理,视频会诊等功能。系统整体框架图如图1所示。
2 软件功能设计
软件采用C#语言编写,在Microsoft Visual Studio 2010环境下开发的。软件部分属于上位机,主要负责与下位机进行通信,实现数据的接收;数据的实时显示;存储数据,实现验证用户登录信息和历史数据及异常数据的查询;视频会诊功能。上位机软件主要包括:串口模块、登录模块、数据实时显示模块、信息查询与管理模块和视频会诊模块。
图1 系统整体框架图
软件设计的关键在串口接收数据的实现,远程数据库的连接以及将OMCS架构嵌入到软件系统中。
2.1串口模块
串口模块主要是负责串口参数的配置,串口的初始化,打开串口,关闭串口。
本系统采用Microsoft Visual Studio 2010自带的串口通信控件SerialPort控件,此控件提供的功能可以满足本系统的要求。对SerialPort类里的属性进行设置即对串口参数的设置。
通信参数设置的部分程序:
2.2软件登录模块
该模块主要负责验证登录用户的用户名和密码是否正确,若是已经注册过的用户并且密码正确,即可登录系统,若未注册或者密码错误,则不能登录系统。同时有新用户注册功能,当有新注册的用户时,将把注册名和密码存入数据库中。当用户登录系统时,上位机远程访问数据库,查询数据库里存储的用户信息进行验证。设定一个变量来标定用户信息,如若用户名存在于数据库且输入信息正确,变量为true,则允许用户登录系统;若用户不存在或者用户信息不正确,变量为false,则拒绝用户登录系统。用户登录流程如图2所示。
图2 系统登录流程图
2.3数据实时显示模块
数据显示模块负责将实时采集的参数数据显示到上位机界面上。上位机接收到数据后,根据系统设置中设置的上下限数值对数据进行判断,如若超出上下限,则会标红显示,异常数据存储到远程数据库上。
2.4信息查询与管理模块
2.4.1历史数据查询
用户分为医护人员和被监护人员,医护人员登录系统后,可以查询所有被监护人员的健康档案;被监护人员登录系统后,只可以查询自身的健康档案。进入健康参数查询界面后,连接远程数据库,用SQL语言查询相应数据库表,从数据库读取用户信息,将参数数据和异常数据绑定到Listview上,进行显示。
2.4.2信息查询与管理
当被监护人员登录系统后,可以查询社区医院医生信息,例如医生联系方式,所在科室,主治疾病等,也可更新或者修改自己的个人资料,还可在健康知识模块查看基本的医学常识和医药知识。医护人员登录系统后,可以查询自己主治病人的个人资料和健康记录,也可更新或者修改自己的个人资料。
2.5视频会诊模块
上位机视频模块采用的是OMCS网络语音视框架,框架为程序的二次开发提供了简单而强大的接口,集成语音、视频等多媒体于一体,将底层、复杂的程序的编写封装在了内部。采用OMCS框架可以快速地开发基于网络多媒体的应用系统,如:视频聊天系统,视频监控系统,远程医疗系统等。
一个OMCS的Client有Owner和Guest两种身份。当一个Client连接到OMCS服务器后,可以作为Guest随时访问任何一个在线用户的摄像头、话筒多媒体设备。一个Client作为Owner时,当其他的Client访问时,为其提供本地的摄像头、话筒等多媒体设备。
2.5.1多媒体服务器
OMCS多媒体服务器主要负责管理在线的OMCS客户端,在客户端之间创建P2P通道。当OMCS与应用集成时,OMCS服务器是独立的,单独运行,只需将OMCS的客户端dll嵌入到应用中即可。
OMCS服务端开发的关键就是实现IMultimediaServer接口,实际上主要是实现用户验证这个接口。通过IMultimediaServer接口,可以获取当前服务器所监听的端口,当前在线用户数量,在线用户等信息。
port参数用于指定当前OMCS服务器通过哪个端口提供服务(使用TCP协议)。
userVerifier用于验证登录OMCS服务器的用户的帐号和密码。如果帐户密码不正确或者不存在,客户端多媒体设备管理器在进行初始化时将抛出错误提示。
2.5.2多媒体连接器
多媒体连接器主要负责连接到目标OMCS客户端的多媒体设备,身份相当于一个Client的Guest。
当连接器想要与目标用户的多媒体设备进行连接时,调用BeginConnect方法,然后根据该方法中的ConnectEnded事件返回的结果ConnectResult来判断连接结果。ConnectResult返回结果包括Succeed与目标用户连接成功,Timeout等待回复超时,TargetUserOffline目标用户不在线,Denied目标用户拒绝连接请求,DeviceInvalid请求连接设备不存在,MultimediaManagerNotInitialized目标用户的设备管理器还未完成初始化,ExceptionOccured出现异常。
当连接器想要断开与目标用户多媒体设备的连接时,调用Disconnect方法。
This.camera1.Disconnect();//断开摄像头的连接
2.5.3多媒体设备管理器
多媒体设备管理器主要负责管理本地所有的多媒体设备,身份相当于一个Client的Owner;负责与OMCS服务器进行通信,管理与服务器的连接情况;创建Guest到目标Owner的双向P2P通道;根据Guest发送的访问请求连接或断开所管理的目标多媒体设备。
在使用多媒体管理器之前要先对其进行初始化,初始化需完成以下几个任务:
1)连接到目标服务器。
2)使用参数传入的帐号密码登录目标服务器。
3)登录成功后,对多媒体设备进行初始化。
multimediaManager.Initialize(loadname.user,"",Configuration Manager.AppSettings["ServerIP"],int.Parse(Configuration Manager.AppSettings["ServerPort"]));
初始化成功后,Initialize方法成功返回,表示成功登录。当多媒体管理器初始化后,与OMCS服务器成功建立长连接。当客户端断开与OMCS服务器的连接时,触发ConnectionInterrupted事件,多媒体设备都停止工作。
IMultimidiaGateway接口用来控制Guest对多媒体设备的访问。当有Guest请求连接目标客户端的多媒体设备时,根据IMultimidiaGateway接口的AllowConnect方法返回的结果来控制连接结果。如果允许连接则返回true;若拒绝连接,则返回false,对方将会提示连接失败。
2.6数据库的设计
数据库采用的是Microsoft SQL Server 2008,数据库管理系统主要是负责对数据进行存储和处理。用户的添加和删除,健康参数的存储和查询,病人资料的添加和修改等。
采用SqlConnection来连接数据库,成功连接数据库后可以通过应用程序访问数据库中所存储的数据。
SqlConnectioncon1=newSqlConnection("server= 192.168.7.11,1433;Initial Catalog=智能医疗;User ID=sa;Password=”******”);//连接数据库
采用SqlCommand创建命令,在SqlConnection连接好数据库后,对数据进行添加,删除,查找等命令。
SqlCommand cmd1=new SqlCommand("select username,password from信息登录表,con);//创建命令,利用SQL语言处理数据
3 测试结果及分析
系统采用C/S架构,将数据库和多媒体服务器布置在另一台PC机上,作为社区服务器。软件测试结果如图3,图4,图5所示,软件可以实现用户的登录,信息的查看与管理,健康参数的实时显示与历史数据的查看,异常数据的记录与查看,能够与医生进行视频会诊。
图3 健康参数实时显示界面
图4 用户资料查询界面
图5 视频会诊界面
4 结束语
通过对本系统的测试可以得知,本系统可以方便快捷的监护老年人,慢性病患者的身体健康,为社区医护人员节省了大量的时间和资源,通过本系统医护人员可以随时查询被监护人的健康参数,通过分析这些参数可以给出合适的医疗意见或者采取相应的行动,而不需要再定时定点的去住户家进行基本参数的采取和检查。本系统也为就医提供了极大的方便,被监护人可以在家实现视频会诊,与医生随时进行视频沟通,向医生询问各种情况,不需要再因为一些小病或者身体不便专门去医院就诊,在一定程度上解决了医疗资源紧张不足和监护的问题。
[1]徐璇,姜明新,黄静,等.基于MFC的工程软件界面设计[J].电子设计工程,2011(21):11-13.
[2]缪鹏程,孙凤飞.无线远程医疗监护系统的设计[J].电子设计工程,2013(6):27-30.
[3]张冬冬,李宏元.医疗设备计算机管理系统的设计与应用[J].电子设计工程,2015(19):104-107.
[4]徐玉炎,明轩,张瑞,等.基于WSN的医疗监护系统的设计[J].电子设计工程,2015(2):1-5.
[5]杨瑞,基于.NET技术的图书管理系统研究与设计[J].电子设计工程,2015(17):66-68.
[6]张式富,姜涛,吴效明.基于B/S的智慧社区健康监护管理系统软件的设计与实现[J].计算机应用与软件,2014(3):4-6.
[7]余佳佳.基于ZigBee技术的医疗监护系统的软件设计与实现[D].成都:电子科技大学,2013.
[8]李俊斌,胡永忠.基于CC2530的ZigBee通信网络的应用设计[J].电子设计工程,2011(16):108-112.
[9]董大鹏,唐晓英,刘伟峰.无线传感器网络技术在医疗监护中的应用[J]电子技术应用,2008(10):29-32.
[10]李江全,邓红涛,刘巧,等.Visual C#.NET串口通信及测控应用典型实例[M].北京:电子工业出版社,2012:52-70.
[11]曾长军.SQL Server数据库原理及应用[M].北京:人民邮电出版社,2005.
[12]张军.智能温度传感器DS18B20及其应用[J].仪表技术,2010(4):68-71.
[13]Sowjanya Arekapudi.An advanced wireless sensor networks for continuous health monitoring[D].San Antonio:The University ofTexas,2008.
[14]Kahraman,Bilgen.Wireless application protocol transport layer performance[J].Computers and Communication,2007,1(1):1141-1146.
[15]李玲俐.智能保健监测系统中音频信号的分类算法研究[J].重庆师范大学学报:自然科学版,2012(4):73-76.
[16]孟亚伟,杨志春.一类具有时滞和领导者的二阶多智能体系统的一致性 [J].重庆师范大学学报:自然科学版,2013 (5):66-70.
[17]梁茜,张轩,陈德超,等.配电自动化实用化运行指标智能监测系统的设计与应用[J].陕西电力,2014(11):77-81.
Design and implementation of intelligent health care sofeware in community based on C#
WU Yi,DING Han,ZHANG Sheng-peng
(Hebei University of Technology,Tianjin 300401,China)
Based on the rapid development of IOT and the increasing of the old people who live alone,this paper developed a health care software based on intelligent community health service.This system uses C#and SQL Server 2008 database technology to complete the software part programming,implementation of information display,management and check.The system also includes the function of video consultation adopting the OMCS network multimedia framework for video voice function.The results show that in software testing the system can realize real-time display of health parameters,realize the video function and demand the historical data and accomplish the management and the query of information.This system make the guardianship of the old man's health convenient.Let the old man that occupy the home can never leave home and community hospital medical staff consultation for video and Community hospital can see the old man's health information at any time and pay attention to the old man's health.
smart medical;C#;database;SQL Server 2008;OMCS
SerialPort中的Data事件负责接收数据,当有数据传送到串口时,触发 Data
事件接收数据。Data
事件是在辅线程上被引发的而不是主线程上,所以需要将处理数据的方法封装在委托(delegate)对象内,通过Invoke方法执行委托。主线程上负责数据的显示,辅线程上负责数据的接收和处理。
TN99
A
1674-6236(2016)22-0083-04
2015-12-01稿件编号:201512005
武 一(1964—),女,天津人 ,博士,教授 。研究方向:电路与系统,电气工程,微电子学与固体电子学。