APP下载

基于微信小程序的医用直线加速器机房环境监测系统设计

2024-05-16邸元帅罗吉高大地杨皓文复旦大学附属肿瘤医院放射治疗中心复旦大学上海医学院肿瘤学系上海200032

中国医疗器械信息 2024年7期
关键词:加速器机房服务器

邸元帅 罗吉 高大地 杨皓文 复旦大学附属肿瘤医院放射治疗中心,复旦大学上海医学院肿瘤学系 (上海 200032)

内容提要: 设计了一款基于微信小程序的医用直线加速器机房环境监测系统,该系统通过NodeMCU最小系统、温湿度传感器、气压传感器以及空气质量传感器等硬件终端获取环境参数,使用WiFi模块将数据上传至巴法云服务器,然后通过微信小程序查询需要监测的参数,从而实现远程数据的实时监测。通过测试,该系统能够通过硬件终端按照通讯协议实现与巴法云服务器和微信小程序的数据交互,实现医用直线加速器机房的环境监测。

近年来,恶性肿瘤作为一种常见病正在严重危害人类身体健康与生命安全[1]。据研究显示,放射治疗在癌症治疗领域占有很大的比重,近70%的肿瘤患者在各个时期都必须接受放射治疗[2,3]。目前,世界上实现放射治疗的重要手段是医用直线加速器,随着医疗水平的提升,直线加速器正逐渐在我国各大医院普及。作为一种结构精密、原理复杂的大型医疗设备,医用直线加速器中有很多高压、大功率电气元件,在日常工作中机房内过高的温度和湿度会使这些元器件出现老化、损伤,从而降低设备的使用寿命[4]。另外,机房内的空气质量也会影响加速器的使用,如果机房内的灰尘太多可能会导致电路板发热,持续一段时间会烧坏电路板,还可能会弄脏反光镜头,影响光学信号的传输,从而致使直线加速器出现各种故障,影响患者的治疗进程。同时,物理师在做机器质控时需要记录机房气压的变化,因此每个加速器机房都需要保证温度控制在18°C~25°C,湿度控制在40%~70%,并且空气质量较好[5-7]。基于上述情况,对加速器机房的环境监测就尤为重要,随着网络技术的发展和微信小程序的普遍使用,采用硬件终端监测环境参数,传感器采集数据,通过WiFi模块将数据传输到云服务器,最后使用微信小程序查询数据的监测方法逐渐成为一种趋势[8]。本设计采用NodeMCU主控芯片,通过WiFi模块传送数据到巴法云物联网平台,完成数据的采集、储存、上传和微信小程序实时查询数据等功能,实现直线加速器机房的环境监测。

1.系统总体方案设计

本系统使用传感器模块监测室内环境,将采集到的数据传输到NodeMCU主控芯片中进行处理后通过ESP8266WiFi模块上传到巴法云服务器再使用微信小程序查询各项数据,系统流程图见图1。本系统主要分为硬件部分设计和软件部分设计,硬件部分设计包括硬件终端与接口电路设计、传感器模块设计,软件部分设计包括上位机设计与下位机设计,以及硬件终端与云端的通讯。

图1.系统流程图

2.系统硬件设计

2.1 硬件终端与接口电路设计

硬件终端包括主控芯片NodeMCU。该芯片是基于ESP8266的开发芯片,配备了所需要的电路来供电,可以便捷地上传代码,轻松访问GPIO引脚以连接传感器和执行器,并且支持WiFi功能。ESP8266是一款超低功耗的UARTWIFI透传模块,用于网络连接和用户读取,可将用户的物理设备与无线网络连接,进行互联网或局域网通信,实现联网功能,其核心电路如图2所示[9]。ESP8266有板载PCB天线、IPEX接口和邮票孔接口三种封装方式,同时也支持STA/AP/STA+AP三种工作模式,本设计把ESP8266设置为STA模式,通过路由器连接网络[10]。

图2.ESP8266核心电路

本设计主控芯片正常工作需要3.3V的电压供电,而其他模块需要5V的电压供电,所以需要设计一个电源电路。采用输出电压为3.3V的NCP1117ST33T3G稳压芯片进行稳压,该芯片是一款低压差正压线性稳压器,最大的输入电压为20V,静态电流为10mA,正常工作温度范围在0°C~125°C,输出的精准度在±1%。

设计采用的主控芯片自带USB转串口模块,在使用时不再需要外接USB转TTL的转接器。采用CP2102芯片实现USB转串口的功能,其原理如图3所示,CP2102高度集成,包括有USB2.0全速功能控制器、USB收发器、振荡器、和带有全部的调制解调器控制信号的异步串行数据总线(UART),全部的功能集成在一个MIP-28封装的IC中。

图3.USB转串口电路

2.2 传感器模块设计

本设计监测机房环境的温湿度选用的传感器为DHT11数字温湿度传感器,该传感器是一款含有已校准数字信号输出的温湿度复合传感器,内部由一个8位的单片机控制一个电阻式感湿元件和一个NTC测温元件,因此DHT11既可以检测温度又可以检测湿度,其温度测量范围为0°C~50°C,误差在±2°C;湿度的测量范围在20%~90%RH,误差在±5%RH。

为了保证机房内的安全以及直线加速器的正常使用,本设计选用MQ-2空气质量传感器监测机房空气质量,该传感器属于二氧化锡半导体气敏材料,表面离子式N型半导体,其工作时的重复性较好,且初始工作时较为稳定,响应时间短,能够长时间工作,其检测的气体的范围是100~10000ppm,烟雾浓度越大,导电率越大,输出电阻越低,则输出的模拟信号越大,其电路原理如图4所示。

图4.MQ-2传感器原理图

本设计选用BMP180气压传感器,该传感器是新型数字气压传感器,具有非常高的性能,具有I2C总线接口,方便与单片机连接测得气压的数据。其工作电压为1.8~3.6V,内部包含电阻式压力传感器、AD转换器和控制单元,控制单元包括EEPROM和I2C接口,读取BMP180传感器数值时会直接传送没有经过补偿的气压值,而在EEPROM中则储存了176位单独的校准数据,这些数据将对读取的温度压力值进行补偿。

3.系统软件设计

3.1 下位机设计

本设计的下位机开发是基于ESP8266-NodeMCU通过Arduino IDE进行开发,编程语言为C/C++。本次下位机开发包括WiFi和服务器的初始化并连接开发板与云服务器、监测三种传感器的读数以及上传数据到云服务器。首先定义服务器地址与端口:

#define TCP_SERVER_ADDR "bemfa.com" //定义巴法云服务器地址

#define TCP_SERVER_PORT "8344" // TCP创客云服务器端口8344

然后需要在云服务器上创建一个用于接受数据的主题,初始化用于本次开发板连接的WiFi并检查WiFi与服务器是否连接成功,WiFi初始化成功后开始建立与服务器的连接,其核心代码如下:

建立连接后便可以发送数据到服务器,首先获取各个传感器的数值信息,采集到的数据用#包裹,以便上位机分割出数据,数据的标准格式为:&msg=#data1#data2# ,需要几个数据便添加几个data,上位机会根据#号分割字符串进行取值。上传数据的核心代码如下:

3.2 上位机设计

本设计的上位机开发是基于微信开发者工具进行的微信小程序开发,使用的主要开发语言是JavaScript。本次上位机的开发主要由视图层设计和逻辑层设计组成。其中视图层设计又分为全局视图设计和页面视图设计,全局视图设计由小程序根目录下的app.json文件进行配置,其中包括小程序页面的数量、页面文件的路径、窗口表现、设置网络超时时间、设置多tab等。本次设计需要监测不同加速器机房的环境,每个机房都需要一个小程序页面,因此全局视图的核心代码如下:

其中,page目录表示小程序的页面数量和路径,windows目录表示小程序的标题、字体和背景,tabBar目录表示小程序顶部或底部切换页面的tab栏的数量、标题及各个属性。页面视图设计是由小程序根目录下page文件中的.wxml文件和.wxss文件进行配置,其中.wxml文件负责描述页面内容以及变量的数据绑定,本次设计的页面内容包括:该页面标题、设备状态、数据上传时间、监测数据的标识及数值,.wxss文件负责描述页面内容的大小、位置等样式。

逻辑层设计由小程序根目录下page文件中的.js文件进行配置,该文件定义了Page对象,在该对象中分别定义了.wxml绑定的变量、onload()函数、getOnline()函数、getdht11()函数。本次设计绑定的变量有温度、湿度、液位状态和空气质量;getOnline()函数是请求设备状态的函数,用来检查设备是否在线,使用wx.request()函数请求接入云服务器API接口,接入成功设备状态显示“在线”,接入失败则设备状态显示“离线”;getdht11()函数是获取云服务器上储存的各传感器采集的数据,首先使用wx.request()函数接入云服务器,然后对用#包裹的数据进行字符串分割,将分割后的数据放在一组数组里,再赋值给各个变量,从而实现环境变量的监测。

4.系统测试

通过对硬件终端电路的调试、数据的采集与上传进行测试,可以在巴法云服务器端和微信小程序接收并显示数据。在调试过程中,首先将硬件电路各部件连接好,通电后将控制代码加载到硬件芯片中,然后进行网络配置,检测到WiFi正确连接后,便可以观察到巴法云物联网平台和微信小程序同步接收到硬件电路上各个传感器采集的数据。图5所示为微信小程序接收数据界面。

图5.微信小程序界面

5.小结

放疗直线加速器机房的环境因素对加速器的正常工作与物理师质控时测量的加速器参数都会产生一定影响,因此对加速器机房环境的监测就尤为重要,目前大部分医院都是使用温度计、湿度计以及气压计来监测加速器机房的环境,这种方式可以简单地实现监测环境的目的,但是无法及时获得信息。本研究设计了一款放疗直线加速器机房环境的监测系统,本系统基于ESP8266-NodeMCU主控芯片,使用传感器采集数据,通过ESP8266WiFi模块上传到巴法云服务器,最后使用微信小程序完成数据的查询与实时显示。本系统能够实现加速器机房内温度、湿度、气压与空气质量的实时监测,并通过微信小程序同步显示,使技术员或物理师能够及时了解机房内环境的变化,如果发生异常情况可以在第一时间采取措施,避免直线加速器的损坏,保证放疗患者的正常治疗。

猜你喜欢

加速器机房服务器
轮滑加速器
化学工业的“加速器”
全民小康路上的“加速器”
通信控制服务器(CCS)维护终端的设计与实现
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御
等待“加速器”
N通信公司机房节能技改实践
新型有线电视机房UPS系统的配置