基于物联网的核医学机房环境监测系统设计
引言随着医疗水平的快速发展,核医学设备已广泛应用于临床工作中。目前核医学仪器探测器的构成材料多为碘化钠晶体,其对温湿度的要求非常严格。长期处于潮湿环境易导致晶体吸湿潮解而失效,同时环境温度也需要保持恒定,以避免晶体因热胀冷缩而破裂变形[1]。因此,确保机房合适的环境温湿度对核医学设备的稳定运行具有重要意义。基于上述情况,我们利用物联网技术设计了专门用于核医学机房的环境监测系统,实现对核医学设备工作环境温湿度及电压的远程实时监控,可以及时帮助发现安全隐患,方便了日常巡检与设备维护保养。 1 硬件设计数据采集端主要由主控芯片、温湿度传感器、市电检测电路、显示模块、电源模块五部分组成。其硬件架构如图1所示。 图1 数据采集端硬件架构示意图 1.1 主控芯片ESP8266是国内某公司生产的低功耗Wi-Fi芯片,内置32位CPU,既可以作为无线模块进行数据传输,也可以作为设备处理器实现控制功能[2]。本系统采用集成了ESP8266的开源开发板NodeMCU作为主控模块,通过单总线协议与温湿度传感器进行通讯,获取温湿度数据,使用内置的10位模数转换器将市电检测电路采样的模拟电压转化为数字信号,并计算出市电电压的有效值。采集到的数据,一方面通过IIC总线传输到显示模块,另一方面通过ESP8266自带的Wi-Fi功能联网,无线传输至远程服务器。 1.2 温湿度传感器本系统采用数字式温湿度计DHT22作为温湿度传感器,内部采用NTC作为测温元件,采用电容式感湿元件进行湿度传感,通过单总线协议传输数据,功耗低、响应速度快、抗干扰能力强[3]。其湿度测量分辨率达0.1%RH,精度为±2%RH,温度测量分辨率达0.1℃,量程为-40℃~80℃,充分满足核医学机房的温湿度监测要求。 1.3 市电检测电路ESP8266内置模数转换器的电压检测范围为0~3.3 V,而我国市电电压标准为220 V、50 Hz交流电,远高于芯片的电压承受范围,无法直接进行测量,因此,需要设计采样电路,将交流高电压转换为便于芯片处理的直流低电压。 本系统使用2 mA/2 mA电流型电压互感器搭建市电检测电路。互感器的工作原理:当输入端输入电压时,先在被测电压后面串联一个限流电阻,将被测电压转换成小电流输入给互感器,然后互感器以1:1等比输出小电流,最后在互感器输出端并联电阻,将电流转化为电压,从而实现了从高电压到低电压的隔离与转换测量[4-5]。 完整的市电检测电路如图2所示,待测电压V1先经过电阻R1变为1.1 mA小电流,电阻R2、R3并联将1.1 mA电流转换为2.2 V电压。电路中电阻R3、R4,整流二极管D1、D2,精密运算放大器U1组成精密半波整流电路,可以使交流电压的负半周波形截止,使用精密整流可以避免常规二极管整流因存在导通压降而波形失真[6]。最后将直流电压输出至ESP8266模数转换器进行采样。 图2 市电检测电路图 2 软件设计本系统的软件设计主要包括数据采集端、云平台端、客户端三部分,整体架构如图3所示。数据采集端获取传感器数据后与云端服务器建立TCP/IP连接,连接建立后通过MQTT协议进行数据上传;云平台主要实现数据存储、查询与设备管理功能;客户端基于安卓系统,使用平台开放的API接口,通过HTTP协议进行通讯实现对存储在云端的数据进行查询操作。 2.1 数据采集端数据采集端程序流程图如图4所示。芯片运行后,首先完成各功能模块的初始化工作,然后通过Wi-Fi连接至网络,并与服务器建立通讯,随后开启定时器,每隔5 s执行一次定时器子程序。子程序首先采集各项数据并更新显示,每满3 min执行网络检测,如果连接正常则将这段时间内采集的各项数据求和取平均值,然后将数据上传至云端;如果连接失败则先与服务器建立连接,成功后再上传数据。 图3 软件设计架构图 图4 数据采集端程序流程图 注:a. 主流程;b. 定时器子程序流程。 电压采样方法采用真有效值法,具体为芯片模数转换器以4000 Hz频率对市电检测电路输出进行采样转换,共采样160个点即两个周期的半波整流数据,再根据均方根值(Root-Mean-Square,RMS)算法: 换算出电压有效值[7]。其中N为一个完整波形周期的采样点数,Xi为采样点的瞬时电压,Xrms为电压有效值。 2.2 OneNet云平台OneNet平台是中国移动推出的物联网开放平台,为物联网开发者提供云端服务,可以适配各种网络环境和协议类型,提供丰富的API接口和应用模板,支持各类传感器和终端设备快速接入网络,实现数据传输、数据存储、数据管理等业务[8]。本系统采用OneNet平台作为服务器端进行数据管理,具体流程介绍如下。 2.2.1 设备接入 OneNet设备接入流程依次为登陆注册,创建产品,创建设备,新增数据流,创建触发器,创建应用。其组织架构形式是,在每个账号下,终端上传的数据以产品的形式进行管理封装,每个用户可以创建多个产品,一个产品中可以创建多个设备、APIKey、应用、触发器,用户可以对这些资源进行增、删、改、查等操作,在单个设备下,用户可以创建多个数据流,终端的数据则上传至相应的数据流下[9]。 2.2.2 触发器设置 OneNet平台为提供用户提供了触发器功能,用于对设备的数据流进行监控,实现特定条件的事件告警,其工作方式是:平台根据事先设定好所要监控的数据流、事件触发条件、告警信息的接受方式,一旦监控的数据流数据满足设定的条件,触发器就可以以短信、邮件以及用户提供的URL地址的推送方式向用户发送告警信息[10]。 核医学设备对空气温湿度及电源电压有着严格的要求,日常使用中,设备机房温度通常要求保持在20℃~26℃,湿度要求为35%~70%,电源要求为220 V求为空气[11]。因此,结合本院日常维护巡检指标,本系统设定了六个触发器,分别为温度高于26℃或低于20℃时触发温度异常报警,湿度高于60%或低于45%时触发湿度异常报警及电压高于230 V或低于210 V时触发电压异常报警。当达到触发条件时,OneNet平台将自动发送报警提示信息到预设的电子邮箱中,实现预警功能。 2.2.3 传输协议 OneNet平台支持包括HTTP、EDP、MQTT等在内的多种标准网络协议,本系统采用MQTT作为数据传输协议。MQTT协议是一个面向物联网应用的轻量型即时通信协议,协议结构简单、开销小,可以有效降低网络流量。此外还支持平台端下发消息指令到终端设备,其特有的基于Topic的订阅、发布及消息推送机制,可以实现终端设备之间的消息单播及组播[12-13]。MQTT协议的接入分为平台域和设备域两部分,接入流程图如图5所示。首先按2.2.1节所述步骤在平台端创建接入协议为MQTT的产品,记录下平台分配的设备ID、产品ID与自定义的鉴权信息(即设备编号)。然后结合平台提供的协议手册,选择相应的运行环境将SDK移植至终端设备的单片机中,先与平台服务器建立TCP连接,再利用设备对应的登陆参数建立MQTT连接,连接成功建立后,即可通过创建、订阅、发布主题的方式实现数据上传、广播、命令下发等操作[14]。 图5 MQTT协议接入流程图 2.3 移动客户端本系统客户端软件基于Android 8.0系统,并向下兼容至Android 5.0,采用Android Studio环境开发。主要功能包括设备订阅,设备在线状态查询,实时数据查询,历史数据查询,温湿度、电压变化波形图等。 如图6所示,软件的用户界面主要包括三部分页面,其中图6a所示为用户登录界面,通过输入在平台端创建产品时生成的ApiKey,即可查询相应产品下的所有终端设备的状态、数据。 图6 主要用户界面 注:a. 登录界面;b. 概览界面;c. 详情界面。 图6b所示为设备状态、数据概览页面,可以一次性显示所有终端设备的连接状态、设备ID,最近一条更新的温湿度、电压数据,以及更新时间,并将这些信息合并到设备所属的小方块内。通过下拉操作可以实现页面刷新,与云端同步设备状态信息,通过搜索设备ID可以实现设备所在方块的定位。点击方块,页面底部将弹出与方块对应的设备最近100次上传数据的波形图,方便观察波形变化趋势。通过点击弹出的波形图,页面将跳转至详情界面,用于进一步查询设备信息。 如图6c所示,页面内显示设备ID、最新的温湿度、电压、终端设备无线信号强度及更新时间等信息,并提供最近100次上传数据的波形图。通过输入起始日期和结束日期,即可查询该时间段内上传的数据波形图。快捷按钮提供最近12、24、72 h的数据趋势查询,以及波形最大化、最小化缩放功能。波形图提供手势识别功能,用户可以对波形图进行缩放、滑动操作,点击数据波形即可显示点击处对应时间点的温湿度、电压数据。 安卓客户端与OneNet平台采用HTTP协议进行通讯,常用的HTTP请求方法包括POST、PUT、GET、DELETE,作用分别为新增资源信息、更新资源信息、查看资源信息、删除资源[15]。再结合平台开放的API接口,即可实现命令的下发、数据的读写以及相关业务的交互。具体的报文结构以数据流查询为例,如表1所示,当报文不携带URL参数时,平台将返回当前设备下所有数据流的最新数据;datastream_id参数用于指定查询的数据流,limit参数用于限制返回的数据点总数,sort参数用于将返回数据按上传时间的升序或降序排列;当查询某个时间范围内数据时,可以使用start和end参数,日期时间格式必须为表中格式,日期与时间之间用大写字母T分隔;当一次查询数据点超过最大限制6000条时,可以使用cursor参数将返回数据分为多条报文[16]。 表1 数据流查询报文结构 报文结构 参数内容HTTP方法 GET URL //api.heclouds.com/devices/device_id/datapoints HTTP头部 api-key: //设备的ApiKey URL参数 datastream_id=a,b,c //多个数据流之间用逗号分隔(可选)start=2018-01-01T08:00:00 //开始时间(可选)end=2018-01-01T08:05:00 //结束时间(可选)duration=3600 //查询时间区间(可选,单位为秒)start+duration://按时间顺序返回从start开始一段时间内的数据点end+duration://按时间倒序返回从end回溯一段时间内的数据点limit=100 //限定最多返回的数据点数(可选,默认1440,最大6000)cursor= //指定本次请求继续从cursor位置开始提取数据(可选)sort=DESC | ASC //时间排序方式,DESC:倒序,ASC升序 查询报文示例://api.heclouds.com/devices/564280/datapoints?datastream_id=temperature,humidity&start=2018-01-01T08:00:00&end=2018-01-01T08:03:30表示查询ID为564280的设备,名称为temperature、humidity的数据流在2018年1月1日8点整到8点03分30秒之间上传的数据点。 平台端收到请求报文后将响应数据以json格式字符串的形式返回发送方,返回报文示例: 其中“error”:0表示平台端成功解析请求报文,“count”:4表示返回数据点总数为4,具体的数据点将分别在对应的数据流下展示。客户端将收到的json字符串格式的响应报文解析后即可获取所需数据。 3 应用效果本系统目前已应用于我院SPECT机房,投入使用近7个月以来运行稳定,并多次对机房温度、湿度的异常情况实现预警。如图7a所示为我院SPECT机房某日环境监控趋势图,可以看出10点左右开始监测到机房湿度出现异常波动,其中10点48分机房湿度为39.6%,低于设定的湿度触发阈值。此时,系统触发报警功能,向工程师发送报警提示邮件,如图7b所示。收到报警邮件后,工程师及时到达现场进行检修,发现机房精密空调加湿功能异常,经维修后,环境湿度于下午2:30左右逐渐恢复正常。 图7 湿度异常案例 注:a. 环境趋势图;b. 报警邮件内容。 4 结语核医学设备由于探测器材料本身的特点,对环境温湿度要求十分严格,而作为精密医疗仪器,其对电网电压波动也十分敏感,为保证设备的安全性、稳定性,必须实现对其工作环境的精确控制。 本文设计的环境监测系统可以实现对核医学机房温湿度及电网电压的实时监控,用户通过手机客户端APP可以随时随地查看所有在用设备的实时数据,并且可以进一步查询历史数据及趋势图。通过分析温湿度及电压波动趋势,使用人员可以及时了解机房状态,减少设备故障率,缩短故障排查时间,并且方便工程师有针对性地进行预防性维护,提高了工作效率。因此,本系统具有较高的应用价值,适合于临床推广使用。 [1] 张峰,程木华,郑子梅,等.探讨符合线路SPECT/CT的日常质量控制与质量保证[J].分子诊断与治疗杂志,2007,(3):42-45. [2] 范兴隆.ESP8266在智能家居监控系统中的应用[J].单片机与嵌入式系统应用,2016,16(9):52-56. [3] 林珠妹.基于DHT22的数字式温湿度计的设计[J].佳木斯大学学报(自然科学版),2016,34(2):223-225. [4] 刘杨生.电能质量监测分析系统设计与实现[D].南京:南京信息工程大学,2017. [5] 公茂法,公鑫,张敏,等.基于OneNet平台的电力负荷监测系统的研究[J].电测与仪表,2017,54(15):65-68. [6] 朱文彬,王海燕.小信号精密整流电路设计[J].中小企业管理与科技(上旬刊),2016,(9):176-177. [7] 左金威,赵恒,陈重佑,等.基于半波真有效值的触/漏电故障电流检测[J].四川电力技术,2017,(3):66-72. [8] 陈宝远,褚庆文,孙忠祥,等.一种基于OneNet设备云的智能硬件组网方法[J].哈尔滨理工大学学报,2017,22(5):76-80. [9] 刘影,王宛,王智霖,等.基于云平台的智能医疗监护系统设计[J].物联网技术,2017,7(12). [10] 张萍.基于ESP8266和OneNET云平台的远程报警系统[J].单片机与嵌入式系统应用,2017,17(12):64-67. [11] 袁军,钟照林.PET设备对安装环境的设计要求[A].中华医学会医学工程学分会第二次医学影像设备应用技术研讨会[C].2001:83-84. [12] 姚丹,谢雪松,杨建军,等.基于MQTT协议的物联网通信系统的研究与实现[J].信息通信,2016,(3):33-35. [13] 龚永罡,付俊英,汪昕宇,等.MQTT协议在物联网中的应用研究[J].电脑与电信,2017,(11):89-91. [14] 中国移动通信集团.硬件接入—中国移动物联网开放平台[EB/OL].[2018-07-09].http://open.iot.10086.cn/doc/art459.html#107. [15] 刘晓剑.基于Onenet的物联网监控系统[D].郑州:郑州大学,2016. [16] 中国移动通信集团.应用开发—中国移动物联网开放平台[EB/OL].[2018-07-09].http://open.iot.10086.cn/doc/art518.html#108.
Design of Nuclear Medical Computer Room Environmental Monitoring System Based on Internet of Things |