基于STM32的个人健康和环境数据采集器设计与实现
2015-03-16周嘉坤陈波李晨
周嘉坤 陈波 李晨
摘要:面对老年人健康保健的实际需求,提出了基于移动物联网的老年人健康服务信息推荐系统。重点介绍以开发板STM32F103VET6为核心,个人健康和环境数据采集器的软硬件设计及实现方法,实现了多传感器的接口搭建和传感器数据采集的灵活控制,能够很好地满足数据采集器对于多事务的控制和管理、个人健康和环境数据灵活监测的要求,且具有高性能、低成本、低功耗等特点。
关键词:数据采集;环境监测;健康监测;STM32;传感器
中图分类号:TP368.1 文献标识码:A 文章编号:1009-3044(2015)04-0196-08
Abstract: This paper proposes an information recommendation system for elderly health care. The system is designed based on mobile Internet of things to meet the increasing needs of the elderly for health. The paper focuses on the introduction of STM32F103VET6 and the methods about the design and implementation of data collector for personal health and environment. The system implements flexibly control interface to build multiple sensors and sensor data acquisition, which enables the data collector to manage multiple transaction and monitor personal health data and environmental data. The system has the characteristics of high performance, low cost and power consumption and so on.
Key words: Data acquisition; Environment Monitoring; Health Monitoring; STM32; Sensor
1 背景
数据采集系统目前在安全生产[1]、智能交通[2]、环境监控[3]等领域有着广泛应用。数据采集系统整合了信号、传感器、激励器、信号调理、数据采集设备和应用软件,能够有目的地测量电压、电流、温度、压力或声音等物理现象[4]。
在老年人健康保健领域,数据采集也有着重要作用。美国佐治亚理工学院针对孤寡老人家庭开展了“AwareHome”项目,亲人家属或者监护人可以通过互联网实时了解老人的活动状态[5];国内也有相应的健康监护系统的设计与实现[6][7]。但是这些项目往往只考虑了监控老年人生理上的健康数据,忽略了对老年人居住环境信息的监测。该文认为,居住环境也是影响老年人健康的重要因素。
笔者设计与实现的基于移动物联网的老年人健康服务信息推荐系统,根据采集到的老年人个人健康参数与居住环境参数,通过数据相关性和智能算法的挖掘来评判老年人的健康水平,实现满足个性化需求的多模态推送健康信息服务,如按设定提醒老年人日常保健,包括用药的时间和剂量等,以及为老年人提供相关的保健建议等。该文实现的数据采集器采集的个人健康参数包括心率、血压,居住环境参数包括温度、湿度、光照和噪声。
对于本数据采集器的开发,核心板需要搭建众多的传感器,进行多事务的处理,所以选用的核心板必须能够很好地控制和管理多事务。目前数据采集系统的开发,通常使用的是以ARM、DSP或FPGA为核心的处理器。DSP是以数字信号来处理大量信息的器件,主要进行数据的加密解密和调制解调等[8]。FPGA能够进行编程、除错、再编程和重复操作,可以充分进行设计开发和验证[8]。ARM具有比较强的事务管理功能,可以用来运行界面以及应用程序等,其优势主要体现在控制方面[9]。通过对ARM、DSP和FPGA的比较,DSP与FPGA对于单一事务的处理比较胜任,而ARM具有更强的事务处理能力。意法半导体集团推出了支持嵌入式设备的数据采集系统开发平台—STM32,笔者采用的是STM32F103VET6系列,它基于超低功耗的ARM Cortex-M3处理器内核,提供更高的代码执行效率;内置多达512KB的嵌入式Flash,可用于存储程序和数据,多达64KB的嵌入式SRAM可以以CPU的时钟速度进行读写;具有较强的控制和管理事务的功能;优异的兼容性为开发人员带来最大的设计灵活性。该开发平台已经在环境数据采集[10]和语音识别[11]等领域有了应用。
接下来,该文首先介绍基于移动物联网的老年人健康服务信息推荐系统的总体设计框架,着重介绍应用STM32开发平台实现个人健康和环境数据的数据采集器的技术细节。
2 系统框架
作者完成的基于移动物联网的老年人健康服务信息推荐系统总体框架如图1所示,该系统由数据采集、信息管理、定位跟踪、服务推荐这四部分组成。
数据采集是采集老年人的环境检测信息以及身体体检信息,这些信息反映了老年人平时的健康状况和环境状况,各项数据及老年人的位置信息全部储存到感知和数据处理数据库中。用户及其子女可以实时查询被监护老年人的信息,系统也会实时调取数据库中的这些信息运用对应的推荐算法分析整合。
信息管理是对调查问卷信息的结构化保存,这些信息构成每个个体的静态信息,它反映了老年人的兴趣爱好、呵护需求、健康状况以及老年人监护需求等。这些信息按照结构化要求存储到服务器的用户数据库中,为本系统提供各种决策分析的依据。
定位跟踪的实现依靠老年人随身携带的移动终端,它可以记录老年人的全球定位位置、在室内的活动空间位置以及老年人的运动状况等。提供全方位对老年人行为和位置的定位,能实现老年人在身体不适或走失情况下的跟踪。
服务推荐分为需求推荐和个性化推荐,需求推荐是根据老年人填写的调差问卷中的身体状况、生活环境和生活习惯等信息,实时地分类推送文字、语言、视频以及教学运动视频,在老年人手持终端的网页上给出适合老年人医疗、健康护理等领域的建议。个性化推荐是根据数据采集器采集的个人健康和环境数据,推送运动量、体检风险评估以及环境配置等个性化参数。
数据采集在整个系统中具有至关重要的作用,它是服务推荐的基础和保证。
3 数据采集器设计
数据采集器主要完成环境信息监测和健康信息监测,环境监测信息包括温度、湿度、光照和噪声信息;健康监测信息包括血压和心率。
3.1 硬件设计
数据采集器利用STM32系列开发平台中的STM32F103VET6核心模块。该STM32开发板采用内部带有12位高精度模数转换器的ARM芯片,方便在数据采集器开发中进行模数转换;带有3xSPI、5xUSART、2xI2C、1xFSMC、1xLCD、1xSDIO、1xUSB、1xCAN众多接口,方便外接众多的传感器;存储资源为512K Flash和64K RAM,符合数据采集器存储数据量大的要求;支持JTAG/SWD接口的调试下载,方便软件的开发测试。该核心板完全符合本系统在性能、成本、功耗上要求比较高的条件。
1) 温度传感器
本系统采用的温度传感器是DS18B20,它是一种广泛应用于各种环境的测温元器件,测量的精度高,稳定性更好,抗干扰性更强的特性优于一般的温度传感器。该传感器能够将温度量转换成电信号,该传感器在使用中,全部传感元件及转换电路集成在三极管内,符合本系统小巧便捷的特点;测温范围为-55℃-+125℃,具有较高的精度,保证了数据采集器的精确性。
2) 湿度传感器
本系统选用的数字湿度传感器芯片是SHT-10,该芯片广泛应用于室内监测等领域。该传感器具有微小的体积、极低的功耗,符合本系统小巧便捷功耗低的特点;测量精度高,自带12位的模数转换器,保证了本系统数据的准确性和传输的便捷性。
由于该功能模块采用二线数字串行接口SCK和DATA输出,需要使用处理器的两个I/O口,其接口电路也比较简单,与STM32F103VET6的两个I/O口PB8和PB9相连即可,一根数据线和一根时钟线就能实现串口传输。
3) 光照传感器
光照传感器即光敏电阻,本设计采用将光照传感器搭建在核心板的SPI接口上来实现对环境光度数据的采集,主要是把测得的电压值与光度值对应起来,并存入到微处理器的RAM中,再根据电路中测出的AD转换值与对应的计算光照的公式得出实际光照值。
4) 噪声传感器
本系统采用的是TZ-2KA噪声传感器,噪声传感器是一款宽声频范围、高声强动态范围、操作简便的声音传感器。该传感器体积小、重量轻,符合本系统小巧便捷功耗低的特点;数据精度高,保证了数据采集器中数据的准确性。
本设计采用将噪声传感器搭建在核心板的SPI接口上来实现对环境声音数据的采集,主要是把测得的电压值与声音值对应起来,得到AD转换值并存入到微处理器的RAM中,再根据电路中测出的AD转换值计算实际的声音分贝值。
5) 血压计
腕式血压心率传感器是全自动腕式电子血压计,它是一种现代便捷的血压心率测量器。测量结果与专业医生测量的几乎无差异,手腕测量,快捷精确;加压、测量、放气全自动操控;小巧轻便,可随身携带;60组数据记忆,功能强大。
本设计采用将全自动腕式电子血压计搭建在核心板的USART1接口上来实现对老人血压心率测量数据的采集,主要是把测得的血压、心率值存入到微处理器的RAM中。
6) 数据通信电路
PL2303是一种高度集成的RS232-USB接口转换器,可提供一个RS232全双工异步串行通信装置与USB功能接口便利连接的解决方案。PL2303可实现USB信号与RS232信号的转换,能够方便嵌入到各种设备;该器件作为USB/RS232双向转换器,一方面从主机接收USB数据并将其转换为RS232信息流格式发送给外设;另一方面从RS232外设接收数据转换为USB数据格式传送回主机。这些工作全部由器件自动完成,开发者不需考虑固件设计,方便了本系统的开发测试。在工作模式和休眠模式时都具有功耗低,更符合本系统的节能要求。支持完整的RS232接口,可编程设置的波特率,并为外部串行接口提供电源;512字节可调的双向数据缓存,方便采集数据的存储。
本系统数据通信时提供一路RS232接口,RS232接口芯片为PL2303,接口一端连接到STM32F103VET6核心板上的USART2管脚上,接口另一端USB连接PC机。启动数据采集器运行程序,就可以通过PC端的串口助手查看到传感器所采集并经过调整后传输的数据。
3.2.2 数据采集器应用程序实现
基于嵌入式的数据采集器,利用传感器实现了对环境及体检信息的采集,并传送到核心板进行编码,将编码的数据传输给服务器端的数据库。数据采集器应用程序实现工作主要包括传感器正常采集数据的设计、按照既定协议对采集数据进行编码、实现与CC2530无线传输模块的通信。
各传感器通过对应接口与核心板进行连接,腕式血压计主要通过USART接口与核心板进行连接,湿度传感器通过I2C接口与核心板进行连接,光照传感器和噪声传感器通过SPI接口与核心板进行连接,温度传感器通过ONEWIRE接口与核心板进行连接。
数据采集器软件主要由温度采集处理、湿度采集处理、光照采集处理、噪声采集处理、血压心率采集处理和通信程序等构成。数据采集器根据笔者设计的数据协议格式进行相应的传感器控制和数据采集。由于例子ADC+DMA工程中已经实现了光照和噪声的采集处理,所以本文不再对光照和噪声采集处理程序作介绍。下面重点介绍温度、湿度、血压和心率采集处理的实现。
1) 温度、湿度采集处理
数据采集器所选用的温度传感器DS18B20是搭建在核心板的ONEWIRE总线上来实现对环境温度数据的采集,该传感器提供了USART数字输出,所以驱动起来比较简单,只需用STM32F103VET6的USART2串口接受传感器模块传来的数据。选用的数字湿度传感器芯片SHT-10提供二线数字串行接口SCK和DATA,接口比较简单,只需将检测的数值通过I2C总线传给STM32F103VET6。依据文献[12]即可实现温度、湿度传感器在系统中的功能。
环境监测数据采集主程序流程如图5所示,进行环境监测数据采集时,先启动数据采集器,所有终端初始化,然后根据用户界面发送的控制信息协议设定网关控制命令,判断有无改变控制模式,如果没有改变控制模式就继续按照原来的控制模式采集数据,如果改变了控制模式则修改控制模式,按照新修改的控制模式采集数据。每次用户界面发送的控制信息协议,都经过上述的过程传递到老年人终端,继而根据用户的控制命令来操作传感器采集数据。
2) 血压心率采集处理
腕式血压计只需将其输出数据的引脚与地线引脚焊接上针脚,与核心板STM32F103VET6的USART接口上的RX与GND管脚相连,这样传感器传输的数据就可以直接存储到核心板上,数据也不需要任何处理,核心板只需要接收就可以得到准确的被监护老年人血压和心率信息。
血压心率采集程序实现了对老年人体检信息的采集,数据采集程序是采用C语言编写,通过ARM中自带的USART接口就可以直接得到血压心率传感器测出的体检信息。本系统在数据采集过程中充分利用了ARM7的Cortex-M3内核的中断控制器NVIC功能,减轻了CPU的负担,达到了数据的实时采集、存储、发送要求。软件设计主要包括中断控制程序和数据采集程序。
(1)中断控制程序
本系统采用ARM自带的中断控制器NVIC功能,并结合USART接口的传输功能实现对血压、心率信息的采集,被监护老年人主动使用血压心率传感器体检自己的健康信息,传感器的数据采集完,就会触发核心板上的中断,相应的程序就会被执行,完成对应的数据处理操作。
5 结束语
本文介绍了基于STM32的个人健康和环境数据采集器的设计与实现。它能采集老年人的个人健康和环境数据,以便能够及时地感知了解老年人目前的身体状况和生活环境的适宜度,实现满足个性化需求的多模态健康信息推送服务。数据采集器采用目前比较流行的STM32系列核心板开发,拥有了较强的控制和管理事务的功能,实现了传感器数据采集的灵活控制;核心板上搭载了众多灵敏的传感器,能够保证数据采样的精度;具有高性能、低成本、低功耗等特点。
可以预见,随着嵌入式系统和现代传感器的飞速发展,将为基于移动物联网的老年人健康服务推荐系统的开发提供更大便利。我们今后还将不断丰富系统功能来满足老年人不断增长的生活、健康和娱乐需求,不断契合老年人的生理健康和精神慰藉。
参考文献:
[1] 张晓莉,刘磊.煤矿井下TD无线数据采集终端的设计[J]. 电子科技, 2011,24(9):108-110.
[2] 孟敬,刘寿强,冯建.基于ZigBee的智能交通车辆数据采集器的设计与实现[J]. 传感器世界, 2011,(6):30-34.
[3] 王丽娟,闫绍敏.基于ZigBee技术的图书馆智能消防监控系统[J]. 电子技术,2013(2):52-54.
[4] 于硕.基于RS232接口的数据采集分析系统研究[D].西安:西安电子科技大学,2012.
[5] 轩运动,方震,杜利东,等.基于无线体域网技术的老人健康监护系统的设计[J].计算机研究与发展,2011,48(Z2):355-359.
[6] 曾繁贰,钟清华,张静萌,等.移动健康监护系统[J].微计算机信息,2011,27(7):34-36.
[7] 夏侯耀红.一种基于无线技术远程监护系统的研究与实现[D].江西:江西师范大学, 2013.
[8] 王宁. 基于DSP和FPGA的OFDM系统硬件设计与调制解调技术研究[D]. 西安:西安电子科技大学,2009.
[9] 王孙安,张进华,吴明军.基于ARM的开放式数控系统的研究[J]. 现代制造工程,2007(9):54-57.
[10] Liu C,Fu B.Development of a Compact Marine Environmental Monitoring Module Based on SMT32[C]//Engineering and Technology (S-CET), 2012 Spring Congress on. IEEE,2012: 1-4.
[11] Qu Q, Li L.Realization of embedded speech recognition module based on STM32[C].Communications and Information Technologies (ISCIT), 2011 11th International Symposium on. IEEE, 2011:73-77.
[12] 南志坚.基于STM32的室内温湿度检测器设计[J].黑龙江科技信息,2014(7):21-21.