基于物联网技术的远程血糖监测系统应用研究
2017-08-07王巍
王 巍
(平顶山学院,平顶山467000)
基于物联网技术的远程血糖监测系统应用研究
王 巍
(平顶山学院,平顶山467000)
远程血糖监测系统主要利用传感器、Zigbee等物联网技术实现,该系统使用无创式血糖值传感器采集血糖数据,通过CC2430完成数模转换,通过Zigbee技术完成无线数据的传输,最终将数据显示在智能终端,并通过互联网技术将数据传输到医院或亲属的智能终端设备上,完成对病人或亲属血糖的远程监护功能。该系统能够实现对患者实时、远程、互联的信息化管理,让医院、患者、家属在院内院外全天候无缝对接。
物联网技术;远程监测;血糖监测;传感器;Zigbee技术;互联网技术
1 引言
糖尿病是人们熟悉的慢性病之一,根据“IDF全球糖尿病概览”,至2035年糖尿病患者的数量将达到1.43亿。随着糖尿病发病率的逐年增加,有效控制糖尿病已引起广泛重视,糖尿病的病情监测是糖尿病防治的一个非常重要环节[1]。如果患者都在医院进行检测,这将会给资源紧张的医院带来沉重压力,这就促使了远程血糖检测系统的进一步发展。
物联网技术在工业控制领域的广泛应用,为医疗器械智能化提供了新的解决方案。论文设计的远程智能血糖监控系统采用LPC2220作为主控制器,外部配备有液晶显示器,简单易用的键盘输入模块,可调的实时时钟模块,语音提示模块为患者和血糖仪之间搭建了友好桥梁;而Zigbee无线传输模块可将存储在FLASH里的血糖数据定期上传到PC机或手机端上,为进一步分析做准备。同时,本系统将专家系统和知识库系统固化在系统中,用户可以根据测出的血糖值所处的范围,得到专家系统的健康提示。
2 血糖检测系统硬件主要功能模块设计
血糖检测系统是以电生物化学原理(施加一定电压于经酶反应后的血液产生的电流会随血液中血糖浓度的增加而增加)为依据,用处理器对采集到的数据进行分析、处理,用Flash对数据进行存储,用电子液晶显示屏显示数据的一种仪器设备。该系统的硬件功能模块包括LPC2220、时钟模块、调试模块、液晶显示器、输入输出模块、传感器模块、Zigbee无线数据传输等[2]。该血糖监测系统硬件实现的原理图如图1所示。
血糖监测系统的核心器控制件采用NXP公司的LPC2220作为主控制器,它是基于一个支持实时仿真和嵌入跟踪的32/16位ARM7TDMI-S内核的微处理器,相比其他以单片机为核心的血糖监测仪具有功耗低、扩展性良好和处理冗余的优势。LPC2220资源非常丰富:64KB片内静态RAM、2个可编程SPI接口、2个32位可编程定时器、8路10位AD转换器、PWM模块、空闲和掉电两个低功耗模式以及多达9个外部中断管脚、多达76个通用I/O口等,可实现最大75MHz的CPU操作频率等。LPC2220支持双电源操作,CPU操作电压范围:1.65-1.95V,I/O操作电压范围:3.0-3.6V,工作电流在1.8V/+25℃时50mA左右,当处于掉电模式,1.8V/+25℃时,工作电流为 10uA[3]。
图1 硬件实现原理图
2.1 处理器模块
主控制器LPC2220具备外部存储器接口,该系统将外部存储器控制(EMC)扩展为4个memory bank的存储器组(Bank0~Bank3),每个存储器组的存储空间大小为16M字节,总线宽度采用16位设置,因为使用16位总线宽度的存储器具有较高的性价比[4]。
由于LPC2220芯片内部不含FLASH,所以系统将外部存储器接口扩展一片1M×16bit FLASH用来存储程序代码和字库,扩展4M×16bit SRAM用做数据存储器,以上构成处理器模块的存储器系统。
在血糖监测系统中,将存储器组配置成16位总线宽度,因此不需要使用地址线A0,如图2所示。其中,“a_b”表示地址总线的最高位地址线,“a_m”表示存储器芯片的最高位地址线[5]。倘若存储器组配置成32位宽度,则地址线A0和A1无用;若配置成8位宽度,则需要使用最低位地址线A0。
图2 存储器组设计图
由于应用程序代码需要固化在FLASH中,而LPC2220的引导存储体是由CS0片选信号决定的。所以,在血糖仪中,LPC2220的CS0与CS1通过一个跳线器可以分别和FLASH或SRAM相连接。调试时,通常将CS0与SRAM的片选引脚相连,应用程序代码下载到SRAM中运行调试,但掉电即失。调试成功后,需要将CS0切换到与FLASH的片选引脚相连,这样固化在FLASH中的应用程序就可以正常启动。
2.2 输出显示设备
本系统的输出显示设备采用以ST7529为控制器的32级灰度点阵STN型液晶显示器,如图3所示。它的最大分辨率为255×160点阵,每一个点阵占用5bit数据。将微处理器LPC2220与STN7529连接,A1是数据/指令选择信号,CS3是片选信号,所以命令操作地址为0x83000000,数据操作地址为0x83000002[6]。由于微处理器LPC2220芯片与STN-7529的管脚电平相兼容,供电电平都是3.3V,所以,两者相连接时无需电平转换芯片即可保证数据的可靠传输,采用16位总线方式。
由于在液晶内部,存在电压转换电路、电压调整电路和电压跟随电路,所以需要将外部的供电电压3.3V作为基准电压,采用5倍压的方式提供给液晶内部的这三种电路。
图3 输出设备原理图
2.3 按键输入设备
考虑到操作血糖监测系统的易操作性,键盘输入电路只有5个按键,分别定义为“上”、“下”、“左”、“右”和“确定/返回”五项功能。为了节约LPC2220外部中断管脚,系统使用5个按键和1个与门芯片,实现Y=A&B&C&D&E逻辑,只要输出口Y连接在LPC2220外部中断接口上,其他5个按键只需要一般的I/O口即可。系统运行中只要有任何一个按键按下就可以向CPU发送中断信号,中断服务程序只需判断是哪一个按键按下即可。系统设置中断为边沿触发方式。系统中,键盘中断入口为LPC2220的EINT3。
2.4 Zigbee无线通信模块
Zigbee模块的主要功能是将存储在FLASH中监测到的数据通过无线信号传输到应用终端软件中。Zigbee模块选用CC2530F256作为控制器,用户可通过串口指令软件修改,2405MHz~2480MHz,步进5M,共16个信道,占用LPC2220外部存储模组的Bank2,其数据地址为0x82000000,命令地址为0x82000001。
3 硬件功耗设计
因血糖监测需要随时随地进行,在设计该系统时如果能降低硬件功耗,将会大大提升血糖监测的使用效率。硬件设计降低功耗主要在以下几个方面进行,选择合适的集成电路器件,设计合理的电源管理方案和集成电路板。
3.1 集成电路器件选择
由于器件功率与工作电压的平方成正比,所以降低功耗最直接的方法就是降低芯片的工作电压。CMOS电路具有功耗低、抗干扰能力强、驱动能力大的优点,所以该系统在设计时尽可能选择低电压、低功耗的CMOS器件[7]。
在系统运行过程中,CPU频繁操作的就是存储器、液晶显示器两大部件,因此选择合适的存储器芯片和液晶驱动芯片也是降低功耗的主要途径之一。LPC2220的供电电压是3.3V,而系统运行时的内核供电只需1.8V即可。SST39VF1601本身就是一个CMOS多功能FLASH器件,而且工作电压范围为2.7~3.6V,IS61LV25616AL也是一个高速同步CMOS静态RAM器件,工作电压为3.3V。
液晶显示器内部需要倍压供给不同的模块,但是也是3.3V的供电电压,升压模块在液晶驱动电路内部实现,这样也能在一定程度上减少系统元器件的数量,降低功耗。
3.2 电源管理的设计
LPC2220微控制器需要使用两组电源,I/O供电电源为3.3V,内核及片内外设供电电源均为1.8V,系统其他外围设备的芯片从节约功耗的角度考虑都选用了3.3V供电芯片,所以系统设计为3.3V应用系统[8]。系统脱机运行时,通常采用电池供电。从工作电压范围、电流消耗、重量及尺寸等方面考虑,系统选择锂金属电池供电。
系统调试时,通过特制转接头,可接5V开关电源,系统通过两个LDO芯片(SPX1117-1.8和SPX1117-3.3)将 5V电压转换成 3.3V和 1.8V。SPX1117系列的LDO芯片输出电流可达800mA,输出电压的精度在1%以内,还具有电流限制和热保护功能。与软件相结合,采用动态供电的方式也是降低功耗的有效途径。对于不是一直处于工作状态的功能模块,只要根据其工作时段提供工作电压就可以节省功耗。同时,对于可编程器件,可由软件操作控制器件进入空闲或掉电等低功耗模式来降低系统功耗。
4 系统控制程序设计
系统上电后,首先启动代码将根据目标板上外部存储模块的配置情况,初始化外部总线控制器,这部分任务主要由Startup.S中的ResetInit代码段完成。由于系统主要使用C语言进行开发和移植,因此,在使用C代码之前,必须分配堆栈。然后,系统初始化存储器重映射方式,初始化系统的PLL时钟寄存器,使能中断向量控制器(VIC),初始化所有的中断为IRQ类型。最后,系统进入main函数,即血糖仪主应用程序。
当血糖仪加电后,进入主界面,用户可以通过键盘自由选择测量血糖的模式。如果在设定时间内没有用户输入,那么系统将进入掉电模式以节省功耗,系统主程序运行流程图如图4所示。
5 系统测试
系统软硬件设计完成后,需要对系统的功能和性能进行测试。在ADS中对应用程序进行编译,编译成功后生成二进制文件,然后将该文件烧入到系统NOR FLASH中,启动系统,系统启动后,出现运行速度过缓的问题。经查找原因,发现是地址重映射寄存器 MEMMAP被设置为 0x3,PC指针从0x00000000中取数就等于从0x80000000中取数,而NOR FLASH的读写速度本身就很慢,所以造成 了系统运行缓慢。
图4 程序运行流程图
经过改进,将NOR FLASH中的程序代码搬移到系统的外部SRAM中运行,这样就大大提高了系统运行速度。首先编写系统启动代码bootloader,并将bootloader烧写到NOR FLASH的起始位置;然后保持系统的应用程序代码存储在NOR FLASH中,bootloader之后;bootloader的任务就是拷贝应用程序代码至SRAM中,然后PC指针跳转到SRAM中应用程序代码的起始位置开始执行。这样就避免了应用程序在NOR FLASH中运行带来的速度过缓问题。
6 结束语
论文主要介绍远程血糖监控系统在软硬件设计时的若干关键技术。首先介绍了该系统在硬件设计时处理器、输出显示设备、输入显示设备、Zigbee无线通信模块的设计方式和功耗控制。然后分析系统的软件开发流程,给出软件降低系统功耗的方法。通过测试,找到了系统运行速度较慢的原因,通过调整软件代码的位置提高了系统运行速率。该方案嵌入了专家系统,能够为患者提供友好的,人性化的诊断服务,操作简便,功耗低,可移植性好,满足了远程监控需求。
[1] 闫慧文.无线便携式血糖仪的研制[D].沈阳:中国科学院研究生院,2014.Yan Huiwen,Research on Wireless Portable Blood Glucose Meter[D].Shenyang University of Chinese Academy of Sciences 2014.
[2] 刘琦.排爆机器人无线数据通信与监控平台的研究[D].上海:上海交通大学,2008.LiuQi,Study on the wireless communication and monitor platform of the explosive or dnance disposal robot[D].Shanghai Shanghai Jiao Tong University 2008.
[3] 冯利军.基于ARM和C8051F206的PPLN电光滤波器控制系统[D].天津:天津大学,2007.Feng Lijun.The PPLN Photovoltaic Filter Control System Based on ARM and C8051F206[D].Tianjin:Tianjin University,2007.
[4] 罗三强,郁建平.基于ARM7TDMI-S的交流电动机远程控制系统设计[J].机械制造与自动化,2005(2):81-84.LUO san-qiang,YU jian-ping.Design of AC Motor Remote Control System Base on ARM7TDMI-S[J],Jiangsu Machine Building&Automation,2005(2):81-84.
[5] 温昕煜.基于EM200的无线数据传输系统设计[D].西安:西安电子科技大学,2010.WEN Xi-yu,Design of the Wireless Data Transmission System Based on EM200[D].XiAn:Xidian University,2010.
[6] 张爱雪,顾惠芬,方勇.基于ARM7嵌入式系统中GUI的设计研究[J].仪表技术,2006(2):7-9.ZHANG A i-xue,GU H ui-fen,FANG Yong.Design and Research of the Embedded GUI Based on ARM 7[J].Instrumentation Technology,2006(2):7-9.
[7] 邱宪波,袁景淇,唐日泉.智能仪器低功耗设计在便携式血糖仪中的应用[J].中国医疗器械杂志,2004(3):176-179.QIU Xian-bo;YUAN Jing-qi.APPlieations of Intelligent Instruments with Low Power-ConsumPtion Techniques in Portable Blood Glucose Meters[J].Chinese Journal of Medical Instrumentation,2004(3):176-179.
[8] 丁磊.基于ARM的嵌入式人体健康监测系统的研究[D].兰州:兰州理工大学,2006.Dinglei.The Design of the embedded system based on arm for monitoring humn healh [D].Lanzhou:Lanzhou University,2006.
Application Research of Remote Blood Glucose Monitoring System Based on Internet of Things
Wang Wei
(Pingdingshan University,Pingdingshan 467000,China)
The remote blood glucose monitoring system uses Internet of things technology such as sensor and Zigbee implements,and uses noninvasive blood glucose values sensor for glucose data,the CC2430 for Digital-to-Analogue Conversion and the Zigbee technology for wireless data transmission,finally displays the data in the intelligent terminal.Then the data are transmitted by Internet to the intelligent terminal equipment of the hospital or relatives to complete function of blood glucose remote monitoring for the patients or the relatives.The system will implement remote management in realtime,remote and interconnection for patients and achieve all-weather seamless connecting between the hospital,the patients and the families.
Internet Technology;Remote monitoring;Blood glucose monitoring;Sensor;Zigbee technology;Internet technology
10.3969/j.issn.1002-2279.2017.03.015
TP368
A
1002-2279-(2017)03-0071-04
王巍(1965-),男,河南省南阳市人,教授,硕士研究生,主研方向:信息处理。
2016-10-14