基于STM32和Onenet的智能健康管家的设计与实现

  作者:杨裴裴,李胜岚,石恒瑞 时间:2019-08-12来源:电子产品世界

  杨裴裴,李胜岚,石恒瑞(郑州工商学院河南,河南 郑州 450000)

  摘 要:基于STM32单片机和Onenet平台,设计了一款智能健康管家。在设计中结合了打印机、心率模块、OLED显示模块、WiFi通信模块等一些市面上常见的传感器,提出并设计出一款专门针对空巢老人使用的且操作简单、使用方便、快速准确测量心率的仪器

  关键词:STM32;Onenet;心率测量仪;物联网;智能健康管家

  0 引言

  改革开放以来,随着国家经济和科技的快速发展,人们生活条件越来越好,人们的追求开始逐渐改变,从以前只需要吃饱穿暖到现在的吃好穿美,社会步伐在快速向前,但人们的身体素质却越来越低,特别是心血管疾病的发病率越来越高。很多人对心血管疾病的了解并不多,经常会认为很多心血管疾病是突发病,常常都是到了严重的地步才会去寻医问诊。大多数的心血管疾病都是可以预防的,这就需要我们平时要注意好身体,同时多锻炼身体,而且要注意饮食健康。但是很多人已经有了隐疾,所以需要早点发现早点治疗。当前医院最常用的就是用心电图机(ECG)来检测心率,但检测出来的结果都是当时短时间内的结果,但是很多的心血管疾病前期都没有比较明显的症状,而且很多都是间歇性的,很可能在医院检查的时候是正常的,但是说不定在什么时候就显现出症状。虽然现在很多的移动设备(例如:智能手表、手机等)都带有心率检测功能,虽然很方便,但是考虑到很多老年人还是不愿意接触新鲜事物,所以这些最新科技对于他们没有那么实用,因此一款专门针对空巢老人使用的心率检测仪器显得极为重要。

  1 智能健康管家的设计框图

  该智能健康管家的设计主要分为硬件和软件两部分。 硬件部分设计包括电源设计、 STM32外围电路以及相关的传感器、 WiFi模块与STM32连接电路设计;软件部分设计包括STM32单片机代码编写、 ESP8266固件的编写、Android手机APP的代码编辑和编写以及PC网页端应用的编辑。 系统的设计框图如图1所示。

1565682318872022.jpg

  由图1可知,当该智能健康管家检测到心率模块输出有规律波形时(即人体组织与心率模块进行有效接触,人体组织多为手指肚),进入测量模式,然后根据算法算出心率值,在OLED屏幕上显示出来,同时打印机打印出结果,并根据心率值给出相应的建议,也会把心率值通过Onenet云平台发送到手机端或电脑网页端,并把心率值记录到云端,绘制曲线,让用户看到自己心率的起伏。该系统也可以绑定邮箱,当心率值处于危险值时,云平台会给绑定邮箱发送邮件,使一些在外的儿女也能了解到家中父母的心率状况。在应用端我们也可以发送消息,例如发送消息提醒老人测量心率,消息返回给主控板,并显示在OLED显示屏上。以上设计使智能管家更加方便快捷,也更加的智能,使其能够满足未来智能家居的要求。

  2 智能健康管家的硬件设计

  本设计中使用STM32F103RCT6最小系统板作为主控核心板,并搭配ESP8266WiFi模块、心率模块、OLED显示屏和串口打印机等多种传感器完成硬件部分的设计,该设计的整体电路如图2所示。

  2.1 WiFi模块

1565682336899515.jpg

  在该设计中,WiFi模块是沟通硬件和软件的桥梁,在硬件获取心率值后需要上传到云端,这就需要WiFi模块来连接两者,这里选用的深圳安信可公司所出产的ESP-01模块,这是一款高性能无线 SOC,以最低成本提供最大实用性,为 WiFi 功能嵌入其他系统提供无限可能。在该设计中并没有使用常见的AT固件,而是采用了SDK二次开发,把与Onenet的协议处理部分都交给ESP8266处理,这里只需要主控板把获取的数据通过串口传给WiFi模块,模块作为一个高性能的SoC,将数据通过协议处理再上传到Onenet云平台,也可以接收消息处理并通过串口发送给主控板。其电路原理图如图3所示。

1565682352181558.jpg

  2.2 OLED模块

  该模块工作温度为 -40℃ ~ +70℃,内部自带升压电路,分辨率为 128×64像素,采用SSD1306 驱动芯片,仅需 3.3V 供电即可。该模块支持8位6800并口、8位8080并口、I 2 C总线、 4线SPI 总线等4种通信接口方式,该设计用的是I 2 C 总线接口,我们程序中使用的是模拟I 2 C。OLED 屏与液晶屏类似,在应用前都需要进行初始化。整个初始化工作为一系列显示控制芯片的设置工作,主要包括关闭显示、设置时钟分频因子、设置显示偏移、设置内存地址、行列起始地址等。输入 OLED 模块的数据之所以能显示到屏幕上,是因为内部有一个显存,该显存与模块屏幕上的像素点是一一对应的关系。只要把数据送到显存对应的地址上,就会按显存的地址显示到屏幕上。我们主要使用OLED显示出来心率的值,同时也能给出一些小的建议,也能显示应用端发送的数据。

  2.3 心率检测模块

  Pulsesensor心率模块传感器比较方便使用,三个引脚,分别是VCC、GND和ADC,模块通过电路获取心电信号,并利用硬件电路对信号进行滤波,单片机可以直接通过AD转换采集心率数据。它使用了光电容积脉搏波描记法(PPG)测量心率,这种技术听起来十分的高级,其实原理非常简单,通常情况下是用一个光源对人体组织进行照射,人体组织由于血管搏动时透光率发生变化,所以人体组织反射过来的光也随之发生变化,通过采集反射光的变化,将之转化为电信号采集起来,再通过滤波计算就能得到心率。这里使用了双重滤波,模块本来就有滤波电路,在STM32的程序中我们对数据进行再次滤波,使检测到波形更加准确,所获取的心率值更加准确。

  2.4 打印机

  热敏打印机体积小、速度快、噪声小、成本低、打印清晰而且使用方便。热敏打印技术最早使用在传真机上,它的基本原理是把打印机接收到的数据转换成点阵信号形式,进而控制器控制热敏元的加热,然后把热敏纸上的热敏图层加热显示。热敏打印机需使用专用的热敏纸,热敏纸上涂有一层遇热就就会产生化学反应而变色的图层,利用这种特性,诞生了热敏打印技术。

  嵌入式微型打印机单元一行有 384 个加热点,打印机内置字库,汉字字库大小为 24*24,所以一行可以打印 384/24=16 个汉字字符。英文字库大小为12*24,所以一行可以打印 36 个英文字符。如果发送的数据大于 16 个汉字字符或者 32 个汉字字符,打印机会自动打印出这一行出来,如果低于 16 个中文字符或者 32 个英文字符,打印机不会打印出来,需要多发送十六进制数 0D 0A,具体需要看指令集。打印机和主控板之间通过串口通信,通过指令设置好之后,可以直接发送串口数据,打印机就会直接打印出来发送的串口数据,十分方便。

  使用过程中,通过以上各个模块和主控板之间的制作,我们会把心率数据上传到云平台,并且显示在手机端或者电脑端,同时数据也显示到OLED屏幕上,打印机打印出心率值并给出相应的意见。

  3 软件设计

  在Onenet平台上编辑出网页端应用和手机端应用。通过Onenet云平台, 实现心率的数据上传。

  3.1 Onenet云平台

  OneNET是由中国移动打造的PaaS物联网开放平台。平台能够帮助开发者轻松实现设备接入与设备连接,快速完成产品开发部署,为智能硬件、智能家居产品提供完善的物联网解决方案。我们与Onenet对接使用ESP8266的SDK二次开发,直接连接WIFI并进行协议的处理。我们可以绑定邮箱,使心率数据处于危险状态时,Onenet平台直接发送邮件给用户。

  3.2 PC端界面

  我们的界面十分简洁,只有一个曲线表和命令框,当使用完该设计后,能够在得到心率值后立刻上传数据,并显示在界面曲线表里,十分明了的显示出心率在不同时间的起伏变化。而且我们可以通过命令框发送特定的短消息给设备,并显示在OLED显示屏上,用于提醒老人们测量心率。其界面如图4所示。

微信截图_20190813154334.jpg

  3.3 手机端界面

  手机端基本与PC端一致,其界面如图5所示。我们可以在Onenet平台直接编辑我们的手机端和PC端应用。进入编辑页面之后可以拖拽我们所需要的元素,基本元素有文本、折线图、柱状图、图片、链接、地图、仪表盘,控制元素有旋钮、开关、命令框,这里我们选择了能够体现心率变化的折线图以及能发送命令的命令框,然后编辑属性,选择我们的设备和数据流,也可以编辑折线图的刷新频率、颜色、时间样式等,编辑之后就可以保存了。

1565682398448744.jpg

1565682398727786.jpg

  3.4 邮件提醒

  该系统也可以绑定邮箱,当心率值处于危险值时,云平台会给绑定邮箱发送邮件,使一些在外的儿女也能了解到家中父母的心率状况。比如正常人心率在70-70~100次/min,当心率不是在这个范围内就可能使危险状态,此时Onenet云平台就会接收到数据,判断后便会发送邮件到绑定邮箱。如图6所示,当数值大于100时,就会发送邮件提醒。

微信截图_20190813154406.jpg

  4 设计的实物图

  该设计的实物图如下图所示

微信截图_20190813154412.jpg

  5 设计中的创新点

  从心率检测的设计角度,本设计在以往的设计基础上加入了许多创新点和设计元素:

  • 测量结果可以多端显示,OLED显示屏、打印机打印、PC端显示、手机端显示,使用者本人可以很明了的看到测量结果,在外的儿女也可以看到自己父母的身体状况;

  • 子女可以在手机端或电脑端对父母进行提醒,以防老人忘记测量心率;

  • 打印机打印心率结果,并给出相应的建议,建议其饮食和锻炼。老人们可以存着结果小票,然后通过对自己不同时间的心率变化来进行调节自己的饮食和锻炼。

  习近平主席强调:发展是第一要务,人才是第一资源,创新是第一动力。创新就是为了更好的服务人类的生活,为人们生活带来更多的便利,也为人们的健康带来更多帮助。智能健康管家的创新点就是为了让在外的子女能多多了解老人们在家的健康情况,也是为了避免心率疾病突发所带来的不必要的伤亡。

  6 结论

  现在市场上有不少的心率检测仪器,现在的手机和手环也有很多都支持心率检测,但这些对于空巢老人来说并不是很实用,市场上很少有一款真正的为空巢老人所设计的物联网智能化心率测量仪,因此,本文中的智能健康管家在很多方面针对空巢老人做出的设计,就是为了能够更好的服务老人,同时也是服务在外的年轻人,让这些年轻人能够放心的在外打拼。产品的设计就是为了让科技融入到社会的各个人群,不仅仅让年轻人享受到科技的服务,也让老人们享受到科技带来的便利。

  参考文献

  [1] 王刚,张保威,李诗然,杨可标,李登峰.基于STM32的微型热敏打印机的设计和实现[J].工业仪表与自动化装置,2016(04):113-116. 

  [2] 刘正翔.基于STM32的OLED显示屏接口设计[J].电子技术与软件工程,2017(19):65.

  [3] 汪楠,莫德清,韩剑.基于OneNET云平台的pH在线检测仪[J].桂林电子科技大学学报,2018,38(02):139-143.

  [4] 陈星星,梁雨,穆真,王晶.基于STM32的生理信号数字滤波器设计[J].电子技术与软件工程,2016(21):111.

  作者简介:

  杨裴裴(1988-),女,硕士,主要研究方向:教育技术理论研究、多媒体技术

  李胜岚(1988-),女,硕士,主要研究方向:无线传感器网络石恒瑞,男,本科,主要研究方向:物联网

  本文来源于科技期刊必威娱乐平台 2019年第8期第60页,欢迎您写论文时引用,并注明出处


关键词: 201908 STM32 Onenet 心率测量仪 物联网 智能健康管家

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版