APP下载

基于EFM32和GSM的智能药盒监测系统设计*

2017-08-08李志强高继森田浩杉胡亚琦

传感器与微系统 2017年8期
关键词:药盒服药服务器

李志强, 高继森, 田浩杉, 胡亚琦

(兰州交通大学 电子与信息工程学院,甘肃 兰州 730070)



基于EFM32和GSM的智能药盒监测系统设计*

李志强, 高继森, 田浩杉, 胡亚琦

(兰州交通大学 电子与信息工程学院,甘肃 兰州 730070)

针对越来越多长期服药的老年慢性病患者因误服药而发生危险后果的情况,提出了一种基于EFM32和GSM的智能药盒系统的方案。高精度称重传感器输出的信号通过CS1242模块转换后,主控制器EFM32通过UART读取测量值,并通过软件上的算法修正,排除噪声干扰的影响后,将采集的数据通过GSM上传到服务器并获取操作指令,完成与PC端管理平台或移动端的实时互相通信。系统能够有效提醒患者准时服药,且能够监测药品重量变化实现对患者服药的历史统计,在评估患者服药依从性方面有重要意义。

压力传感器; EFM32; 全球移动通信系统; 智能药盒

0 引 言

针对常见慢性病[1]的治疗和管理,其基础在于对患者的日常行为及其疾病状况数据的采集,根据数据结果分析和应用等方面做出对患者针对性的管理方案。未来的慢病管理将会步入互联网时代,通过智能化的软硬件结合,提升数据的可视化辅助分析,同时线上、线下落实服务,最终实现对智能化硬件采集的数据完成更合理的利用[2]。

为了准确收集到患者的日常服药数据供医生分析,提出了基于EFM32和GSM的智能药盒系统采集数据,采用基于应变测量原理的压力传感器[3],监测系统具有精度高、测量寿命长、结构简单、技术成熟、成本低廉、频响特性好,能在恶劣条件下工作,同时也非常容易实现小型化。监测系统满足实际应用中对患者微小药品的重量变化的精度要求,有助于提高医生等慢病管理者对患者的服药依从性[4]进行准确分析以及智能化的管理水平。

1 系统总体设计

系统总体硬件电路设计框图如图1所示,压力传感器输出的模拟差分信号输入至可编程模/数转换(ADC)CS1242[5]的信号输入引脚,CS1242可以选择将信号输入通道模拟缓冲器(Buffer)或者直接将信号输入模/数转换器,通过UART串行接口与主控制器连接。系统工作时,EFM32按照串口通信协议命令CS1242采集信号,读取采集结果并进行软件算法修正后,排除干扰得到测量值,将结果采用Protobuf[6]协议的方式通过GSM无线发送至服务器记录,管理平台或APP端实时显示服务器记录结果并提供准确的数据化分析,同时也将操作指令即服药数据以及系统配置信息命令等交给服务器,并采用Protobuf协议发送给控制器,供EFM32执行智能化服药提醒功能。为了保证系统的稳定性,系统扩展外部FLASH存储模块用于存储应服药品的数据、智能硬件异常记录以及系统配置等信息。

图1 系统硬件框图

2 系统硬件设计

2.1 AD采集模块

CS1242是高精度、低功耗Σ—Δ模/数转换芯片,有效分辨率达22位。CS1242输出通道,可以选择输入通道模拟缓冲器或者直接将信号输入模/数转换器(ADC),模拟缓冲器可以有效提高芯片的输入阻抗。CS1242提供的1~128倍可编程增益放大器,在128倍时,CS1242有效分辨率可达18 bit。调制器是一个二阶Σ—Δ调制器,芯片的FIR滤波器提供50 Hz和60 Hz陷滤波,有效提高芯片的抗干扰性能。并且CS1242为双通道可编程ADC,可以采集两路传感器数据,满足系统多样化测重需求。处理器通过UART与CS1242通信,其通信协议如表1。

表1 处理器与CS1242通信协议

2.2 处理器模块

MCU是整个系统的核心,为了将采集到的各个传感器的数据实时、有效地记录并处理,系统选用Energy Micro公司推出的EFM32型微处理器作为主控制模块,该处理器基于32位ARM Cortex-M3平台,适合各种电池供电应用,在保持高性能的同时功耗较低,特有的LETIMER低功耗定时器可以在大部分器件关闭的情况下、或者系统保持很低功耗情况下仍然计时和产生输出。其丰富的引脚及外设资源容易满足系统的开发与扩展。

2.3 GSM模块

GSM模块也是系统关键的部件之一,系统采用了SIMCom公司的SIM800C模块,该模块功耗低,在最小功能模式下的功耗为0.6 mA,工作电压范围为3.4~4.4 V,可支持4频GSM/GPRS,在自动波特率模式下可以自动检测适应主机的波特率,模块还可以提供GSM语音。

为了提高系统的可靠性,主控制器每隔50 min需要通过SIM800C与服务器通信一次,以保证控制器时钟与服务器时钟同步,记录的重量变化时间点准确,才能保证服药记录的数据是有意义的。

出现网络异常时,数据无法上传服务器,则将所有异常情况下的数据存储在FLASH模块中,等待主控制器重新发送AT指令初始化SIM800C模块,首先SIM800C模块引脚Powerkey拉低1 s重启开机,其次控制系统中所使用的初始化AT命令,过程如下:开机之后循环发送AT,每500 ms发一次,接收到OK时,表示串口通;收到正确应答后,发“AT+CPIN?”,如果未收到正确应答,以每500 ms为间隔循环发送,最多发20次;当收到正确应答后(CPIN READY是正确应答)。发“AT+CSQ”,如果未收到正确应答,以每500 ms为间隔循环发送,最多发100次;当收到正确应答后(CSQ≠0正确应答)。发“AT+CGATT?”,如果未收到正确应答,以每500 ms为间隔循环发送,最多发100次;当收到正确应答后(+CGATT: 1,该值必须为1),表示模块初始化及注册网络已成功,然后进行数据发送。如图2为GSM模块电路。

图2 GSM模块电路

3 系统软件设计

3.1 主程序设计

系统软件使用EFM32开发的集成开发环境IAR,采用C语言编写,分立模块设计,主要流程包括:系统和外设初始化、功能模块初始化、秤校准流程、GSM流程、磁控检测流程、智能药盒逻辑流程、LED(背景及时段显示灯)流程、AD数据采集流程、数据处理与保存流程。

图3 主程序流程

3.2 数据采集流程

系统进入AD采集流程后,EFM32首先初始化端口并清除传感器计数标志位。然后参照通信协议发送命令给CS1242,执行相应的步骤。命令简介如下:获取重量{0xCA,0x06,0x01,0x04,0x00,0x00,0x00,0x00,0x03};对传感器执行零点标定{0xCA,0x06,0x01,0x03,0x00,0x00,0x00,0x00,0x04};以及唤醒CS1242{0xCA,0x06,0x01,0x06,0x00,0x00,0x00,0x00,0x01}等。通过发送对应命令完成CS1242自校正以纠正温漂和误差。如图4所示为AD采集流程。

图4 AD采集流程

3.3 数据处理

为了确保测量结果的可靠性,除了在传感器安装结构上采取减震抗干扰措施以外,EFM32硬件上对实时采集到的数据进行软件修正。由于采集的重量为离散数据,而系统所用CS1242采集数据后的最小检测重量为25 mg,为了对系统稳定性进行分析,选择50 mg作为临界变化跳跃值。每次采集均循环记录一组20个值,记录在x[n]中,首先,去除最大值 max{x[n]}和最小值min{x[n]},然后将剩余数值取加权均值作为参考值,其中越早采集的数据权重越低,然后排除掉所有与参考值之差大于临界变化的记录值,其过程可表示为

(1)

(2)

式中y[n]即为软件过滤后的采样值。计算出均值,作为本次采集到的最终结果。

3.4 数据发送

系统采用GPRS数据流量的方式完成处理器与服务器的交互,在GSM模块初始化及注册网络已成功的条件下,处理器通过串口给GSM模块发送命令的方式完成检测当前网络状态、查询信号强度、激活网络、设置参数、发送数据等。如图5为数据发送流程。

图5 数据发送流程

4 系统测试结果

完成测试药品信息的配置,对一种测试药品实施连续多个时段的服药过程实验,监测整个服药历史进行分析和处理。测试药品单元的重量规格为120 mg,系统监测中定义重量最少减少80 mg则判断药品单元被取走即已服药。依据表2中数据可以看出,采集到的数据最大误差为45 mg,在系统设计参数50 mg以内。由于传感器在结构安装上会造成一定的物理影响,通过软件上的过滤处理,服药正确判断率达94 %,表明系统完全满足重量为80 mg药品单位以上的监测设计要求。

表2 称重测试结果

5 结束语

系统采用EFM32处理器,利用传感器技术以及GSM通信技术实现了远程监测服药功能的智能药盒,系统在应用过程中,如出现漏服药或者未按时服药等异常情况时可及时声光报警,并将相应的记录信息显示在PC或者APP端[8]。实际测试证明:统计信息可以给医生或者药师直观的评判标准,采集数据与实际服药数据基本保持一致,同时系统功耗低,运行稳定,实时性良好,在满足老年慢性病患者服药智能化提醒的同时,能够准确及时地记录下服药历史,有助于管理者通过数据及时做出相应的管理方案。

[1] 许婷媛,彭华生,徐贤华,等.对糖尿病合并多种慢性疾病老年患者的综合评估调查[J].西南国防医药,2012,55(7):809-811.

[2] 胡安妮,许懋琦.从数据角度看慢病管理App[J].中国数字医学,2016,11(6):37-40.

[3] Arshad A,Tasnim R.An inductive transducer based pressure sensor for biomedical applications[C]∥International Conference on Informatics,Electronics & Vision,IEEE,2015:1-5.

[4] 陈燕情,黎仙群,苏敬军,等.糖尿病患者的服药依从性及其影响因素分析[J].中国医药指南,2012,10(16):48-49.

[5] 郑文广,尚贤平.CS1242型模数转换器在称重仪表中的应用[J].衡器,2009,38(6):15-17.

[6] 聂晓旭,于凤芹,钦道理.基于Protobuf的数据传输协议[J].计算机系统应用,2015,24(8):112-116.

[7] 王金全,王小鹏,于挥.基于STM32的高精度扭矩测量系统设计[J].传感器与微系统,2015,34(4):99-101.

[8] Ramachandran A,Pai V V S.Patient-centered mobile apps for chronic disease management[C]∥International Conference on Computing for Sustainable Global Development,2014:948-952.

Design of smart pill box monitoring system based on EFM32 and GSM*

LI Zhi-qiang, GAO Ji-sen, TIAN Hao-shan,HU Ya-qi

(School of Electronic and Information Engineering,Lanzhou Jiaotong University,Lanzhou 730070,China)

Aiming at situation that more and more aging people who have chronic diseases taking medicine for a long time once take by mistake will cause serious problems,put forward a scheme for smart pill box case system which based on EFM32 and GSM.After the signal which high precision sensor output transformed by CS1242 module,the main controller EFM32 read value through UART,and modify the algorithm,exclude the by impact of the noise.And then upload the obtained value by GSM,at the same time,get command,finish real-time communication with PC manage platform or mobile terminal.This system can effectively remind patients to take medicine timely and it can statistic the history of patients taken medicine by monitoring medicine weight,change which takes important significance in evaluating the dependency of patients on medicine.

pressure sensor; EFM32; global system for mobile communication(GSM); smart pill box

10.13873/J.1000—9787(2017)08—0089—03

2016—09—20

甘肃省自然科学基金资助项目(145RJZA034)

TP 277

A

1000—9787(2017)08—0089—03

李志强(1989-),男,硕士研究生,主要研究方向为图像处理。

猜你喜欢

药盒服药服务器
中老年人服药切记4不要
服药禁忌
警惕服药期间的饮食禁忌
通信控制服务器(CCS)维护终端的设计与实现
一种免排序方便避光药盒的设计与应用
服药先分阴阳
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御
红外光谱法鉴别维药盒果藤根药材模型研究