基于STM32单片机的心率计步体温显示系统设计.docx
- 文档编号:28968243
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:27
- 大小:2.03MB
基于STM32单片机的心率计步体温显示系统设计.docx
《基于STM32单片机的心率计步体温显示系统设计.docx》由会员分享,可在线阅读,更多相关《基于STM32单片机的心率计步体温显示系统设计.docx(27页珍藏版)》请在冰豆网上搜索。
基于STM32单片机的心率计步体温显示系统设计
中文摘要
科技在进步,时代在发展,科学的生物学信号指标与人们的生活健康紧紧地联系在一起,只有更全面地了解其中规律,才能更科学地解决人体健康问题和拥有高质量的生活。
随着科学技术的发展,便捷式生物医学电子设备技术也愈来愈趋于成熟,人们的生活水平越来越高,对便捷式生物医学信号电子实时监测显示设备的需求也越来越高。
健康指标很多,本设计是根据人们行走的步数和心跳的频率两个重要的健康指标进行开发设计,因此,本次毕业设计按照现在发展的需要设计一款基于STM32单片机的运动实时监测显示系统。
运动实时监测显示系统主要采用STM32F103C8T6核心板电路,而计算人的走路步数,走过的路程距离和行走的状态主要通过重力加速度传感器ADXL345来实现检测。
通过心率传感器和温度传感器实时检测心跳频率和身体温度。
而实时显示步数多少、距离长短、心率快慢以及温度高低则通过LCD1602来实现。
关键词:
STM32F103步数ADXL345模块心率模块温度
Abstract
Scienceandtechnologyareprogressing,thetimesaredeveloping,andthebiologicalsignalindicatorsofsciencearecloselyrelatedtothehealthofpeople'slives.Onlybymorecomprehensiveunderstandingoftherules,canwesolvehumanhealthproblemsmorescientificallyandhaveahighqualityoflife.Withthedevelopmentofscienceandtechnology,convenientbiomedicalelectronicequipmenttechnologyisbecomingmoreandmoremature,people'slivingstandardisgettinghigherandhigher,andthedemandforconvenientbiomedicalsignalelectronicreal-timemonitoringanddisplayequipmentisbecominghigherandhigher.Therearemanyhealthindicators,thisdesignisbasedonthenumberofpeoplewalkingandthefrequencyofheartbeattwoimportanthealthindicatorstodevelopthedesign,therefore,thisgraduationprojectAccordingtotheneedofdevelopment,areal-timemotionmonitoringanddisplaysystembasedonSTM32singlechipmicrocomputerisdesigned.Thereal-timemotionmonitoringanddisplaysystemmainlyadoptstheSTM32F103C8T6coreboardcircuit,andcalculatesthenumberofwalkingsteps,thedistanceandthestateofwalkingmainlythroughthegravityaccelerationsensorADXL345torealizethedetection.real-timedetectionofheartbeatfrequencyandbodytemperaturethroughheartratesensorsandtemperaturesensors.Andthereal-timedisplayofthenumberofsteps,thelengthofdistance,heartratespeedandtemperaturethroughtheLCD1602toachieve.
Keywords:
STM32F103stepsadxl345moduleheartratemoduletemperature
第一章绪论
1.1课题背景及研究意义
伴随着当今社会的不断发展,人们的生活水平不断的提高,实时监测人体健康指标在预防突发疾病方面愈发重要,人们也通过各种各样的方式去保持自己的身体健康。
人们在日常生活中最容易注意到心率、体温等方面的健康指标。
心脏是人体中最关键的器官,在我国人口死亡中因为心脏病病发死亡的人数每年所占百分比都很高。
为了防止突发心脏病,人们自然而然就会想着实时监测到自己的身体状况,随着生物学技术和电子科学技术的发展,便携式健康电子监测设备引入了人们的生活。
人们可以通过有计划的制定适量的运动方案来健身,并且能够通过便携式健康电子监测设备来实时分析人体的健康状况,还有就是便携式健康电子监测设备也会迅速的适应市场需求,因而越发流行。
心率是指描述心脏周期性跳动的频率,简单阐述也就是指心脏在一分钟周期内跳动的次数。
在生物学方面,心脏跳动的频率也是有具体的健康范围值,正常人心跳频率是由窦房结主管,窦房结发放冲动的频率是60-100次/分。
但是正常人在睡眠状态下,心率可以低于60次/分。
体育运动员,经常参加体育锻炼的人和重体力劳动者,心率常低于60次/分,在50次/分左右,没有任何心动过缓的症状,也考虑是正常的。
对于体质虚弱、缺乏锻炼的人,基础心率可能会偏高,常在100次/分左右,甚至超过100次/分,也可以视为正常,建议增加体育锻炼,降低基础心率。
人们在运动状态下以及过度的激动的时候,心率也会增快。
计步器的出现,正是因为人们为了做适量的跑步运动来锻炼心肺功能而设计的便携式“健康”电子实时监测设备。
人们会通过计步器有计划性的制定适量运动来锻炼身体,从而达到符合生物医学方面规律性的运动,这时就不容易出现运动过度或运动量不足的情况。
通过规律性的制定运动计划,从而提高人体的健康水平。
体温就是用来描述人体内部温度的数值度量。
从生物学方面来说,人体内部温度是相对保持在恒定的状态,相对恒定的体温是保证人体机能新陈代谢和生命运动进行的必要条件,一个正常人的体温又分很多种,腋下的温度会在36.1℃~37℃,口腔的温度会在36.3℃~37.2℃,然而在人体体温正常的情况下,人体其他部位表面皮肤的温度会在33℃左右。
人们为了保证人体机能新陈代谢和生命运动的进行,从而提高人体的免疫力,人们就会不断的关注自己的体温变化情况,这时实时监测体温的便携式电子设备就符合了市场的需求。
基于此,本设计选择研发一种将步数、心率和体温连接一体的实时监测显示系统。
1.2 国内外研究状况
通过调查情况显示,近年来,我国乃至全球科学技术发展迅猛,其中在医疗器械方面的产业发展较为突出,全球在医疗电子智能设备研发和生产方面的投入力度不断增涨,与此同时,全球在医疗电子智能设备方面的贸易往来也变得越来越活跃,并且在贸易往来中每年平均增速在7%左右,如今医疗器械产业技术方面的研发和贸易作为全球较为关注和竞争的焦点。
因此,全球的医疗器械产业也会相应在创新性、资金链、人才培养、服务型、管理型等方面不断进行拓展。
相对于其他的发达国家来说,我国的医疗器械产业方面的发展还是远远不够的,在技术创新方面,我国医疗器械产业要比发达国家薄弱,在贸易往来中,我国目前很多较为先进的医疗器械都需要在发达国家中引进来。
在人才培养方面,我国相对于发达国家来说还是有一点差距。
重要的核心技术掌握程度还是很匮乏。
因此,我们要不断的提高技术型人才培养,从而更好地掌握医疗器械核心技术,提高技术水平。
我国在不断提高医疗器械技术水平方面是具有高度的战略性、带动性和成长性。
一个国家经济发展快慢和现代化水平的高低也与医疗器械技术方面是否发达息息相关。
在当今国际社会医疗电子智能设备的发展中,便携式的医疗电子智能设备也在市场上掀起了一股浪潮,不断受到人们的广大欢迎,并且在市场的需求量上也是不断提高。
单从心率计方面来讲,医院或者一些私人医疗机构中专门用来测量心电图的仪器不多,并且只适合于临床监测,然而在人们日常生活健康的监测上是不够轻型化,这时便携式的心率实时监测电子设备就满足了当今人们日常生活的健康监测。
虽然便携式心率电子设备在精度上有所欠缺,但是在未来的科技发展趋势中,便携式心率电子实时监测设备将是不可忽视。
1.3本设计论文结构安排
第一章:
主要针对本设计内容进行国内外背景及研究现状的介绍。
第二章:
主要针对本设计整体组成思路的介绍以及所需材料的优选分析。
第三章:
主要针对本设计相关硬件部分的应用原理图设计以及功能分析。
第四章:
主要针对本设计在系统程序方面的整体操作流程。
第五章:
主要针对本设计系统程序方面的调试以及硬件部分的调试操作。
第六章:
主要针对本设计系统作出总结与展望。
第二章设计方案的选择
2.1STM32单片机芯片选择
方案一:
可编程逻辑器件CPLD
本设计是心率计步体温实时显示系统,CPLD是一种较为复杂的可编程逻辑器件,其具有较高的密度以及处理速度快,并且在功耗方面也是比较低,在应用于大规模的控制系统中具有更明显的效果,但是本设计控制系统不需要复杂的逻辑功能以及在处理数据的速度上也要求不高,综合考虑其使用和经济等方面因素,本系统设计采用可编程逻辑器件CPLD作为处理器不合适,从而不选择作为本设计主要的控制器。
方案二:
STC89C52单片机
STC89C52单片机可以说是8051单片机增强版,不仅在内核上采用了8051经典的内核,而且也完全兼容8051上的指令代码,其作为控制器不仅具有很高的性能和低功耗,而且还有8k在线编程Flash存储器,该单片机作为本设计的主控器是完全符合的,并且可达到相应的功能效果。
方案三:
STM32单片机
本设计系统所选的单片机主控器是一种意法半导体,ST公司生产的STM32系列单片机。
STM32系列单片机具有低功耗和处理速度快,由于采用ARM最新的内核,从而使其具有优异的实时仿真性能,并且在应用于开发方面较为容易上手,在应用于本设计作品上具有很好的体现效果,其产品在市场上也极受欢迎。
通过以上的各方面的参数对比考虑后决定选择方案三。
2.2显示模块选择
方案一:
LED数码管动态扫描显示
使用多个发光二极管封装组成“8”字型的LED数码管,在应用于单片机开发中占用的线口较少和设计电路简单,并且对于显示数字十分的合适。
因为本设计需要显示的数据较多,所以LED数码管显示明显就不合适。
方案二:
点阵式数码管显示
点阵式数码管在工艺设计上和LED数码管具有相似性,两种数码管都是由发光二极管组成,其在显示文字和数字方面都不够清晰和美观,因此,本系统在显示模块电路设计中不采用点阵式数码管。
方案三:
LCD液晶显示
LCD液晶显示,由单片机驱动,它主要用来显示大量数据、文字、图形,能够显示的位数多,显示清晰多样和美观,同时液晶显示器的编写程序简单,价格便宜,而且功率消耗小、寿命长和抗干扰能力强。
通过以上的各方面的参数对比考虑后决定选择方案三。
2.3计步模块选择
方案一:
陀螺仪
陀螺仪是一种常用于角运动检测的装置,众多的角运动检测装置中,陀螺仪具有较高的精准度以及稳定性,在应用于本设计系统中可以达到很好的精准度效果,但是其在控制起来比较复杂。
方案二:
ADXL345模块
采用基于ADI公司的倾角加速传感器ADXL345模块来检测人体的位置信息,ADXL345模块功能强大,内置很多寄存器,而且成本低,易于控制。
通过以上的各方面的参数对比考虑后决定选择方案二。
2.4心率监测模块选择
方案一:
压力传感器
压力传感器是一种通过感受外界压力传导后产生电信号的传感器。
其在设计应用上电信号传输比较微弱,从而难以用于检测细微的压力传导。
因为在应用于本设计的心率监测方面明显达不到相应的功能效果,所以本设计不采用压力传感器模块。
方案二:
心率模块
通过红外感应方式来采集心率电信号,红外感应模块对采集的心率电信号抗干扰能力较强,检测到的心率电信号输出波形比较稳定,在本设计中是一种比较理想的选择。
通过以上的各方面的参数对比考虑后决定选择方案二。
第三章硬件电路设计
3.1系统功能分析及系统结构设计
3.1.1系统功能分析
本设计系统主要采用STM32F103C8T6系统板控制心率模块、计步模块和温度模块进行数据采集,再控制显示模块对相应数据进行显示,具体功能分析如下:
(1)使用Pulsesensor模块和DS18b20模块分别采集心率和温度数据。
(2)使用ADXL345模块实时检测人体运动状态,并且采集三轴的变化情况,计算出相应的步数和距离数值。
(3)使用LCD1602模块显示计算得到心率、步数、温度和距离的数值。
3.1.2系统结构
本系统具体框图如下图3-1所示:
图3-1系统原理框图
3.2模块电路的设计
3.2.1主控板电路
一、STM32F103C8T6单片机的主要优点:
(1)STM32单片机具有低功耗性能和处理速度快;
(2)在嵌入式硬件开发上具有优异的实时仿真性能[1];
(3)在嵌入式开发上可以达到很大集成化;
二、STM32F103C8T6单片机——最佳的平台选项
本设计系统在开发上使用到较多模块器件,在面向多个项目的开发上更适合选择STM32单片机,单个STM32平台不管在储存空间和引脚等方面的应用上都具有
很好的适配性,并且在外设连接应用以及软件应用开发上的兼容性高。
在应用于本设计系统中可以达到高度的集成化。
STM32F103C8T6单片机核心板接口电路图如下图3-2所示:
图3-2STM32单片机核心板接口原理图
STM32单片机核心板内部电路图如下图3-3所示:
图3-3STM32单片机核心板内部原理图
STM32单片机实物图如下图3-4所示:
图3-4STM32单片机核心板实物图
3.2.2显示模块电路
本设计系统在进行数据显示方面采用了LCD1602液晶显示模块[2],其在工艺设计原理上主要是由若干个点阵字符位组成,虽然间隔式的液晶显示不美观,但是液晶显示模块在本设计显示字符上具有高度适用性。
本设计系统采用的LCD1602点阵型显示模块电路连接设计图3-5如下,原理图中VDD和A引脚都接上5V的电源来点亮显示模块;VSS与K引脚都接上地;RS作为选择寄存器的引脚连接到处理器PB5信号引脚,再通过处理器控制PB5高低电平信号来选择数据寄存器还是指令寄存器;RW作为读取信号的引脚连接到处理器PB6信号引脚,再通过处理器控制PB6引脚高低电平信号来选择读操作还是写操作;E作为使能信号引脚连接到处理器PB7信号引脚,再通过处理器控制PB7引脚高低电平信号来控制显示模块执行命令;D0到D7分别和PB8到PB15引脚连接作为处理器和显示模块之间的双向数据传输功能。
最后AO引脚与地之间接上一个PR1电阻,其中PR1电阻在本设计中采用了滑动变阻器,从而达到通过调节电阻大小来控制显示模块的对比度。
图3-5LCD1602液晶显示电路原理图
LCD1602实物图如下图3-6所示。
图3-6LCD1602液晶显示屏
3.2.3计步模块电路
本系统在设计计步时采用一种低功耗3轴加速计ADXL345传感器模块,其传感器模块针对移动端的设备应用具有很好的作用效果。
ADXL345传感器模块主要通过检测到物体倾斜角度和动态加速度变化来计算出相应人体运动的步数以及距离等方面的运动状态,其检测的高分辨率可以对运动的物体测量到1.0°的倾斜角度变化,而且传感器还可以通过比较任意轴上的加速度和设置的阀值来检测物体的运动和非运动情况,所以在本设计系统中起到很好计步作用效果。
本设计ADXL345模块相应的接口图如图3-7所示。
图3-7ADXL345模块接口图
ADXL345模块内部电路图如图3-8所示。
U2即为稳压芯片,实现5V直流电转化为3.3V直流电,C1-C4为滤波电容。
R2和R3作为上拉电阻,使信号输入更加稳定。
D1作为电源指示灯,R1作为限流电阻,主要用来保护LED灯D1。
图3-8ADXL345模块电路图
ADXL345模块实物图如下图3-9所示。
图3-9ADXL345模块实物图
3.2.4心率模块电路
本设计系统在检测心率数据方面采用了Pulsesensor脉搏心率模块,此脉搏心率模块实质是一款基于光信号转为电信号的光学传感器[3],其整体内部电路原理图设计了放大电路和噪声消除电路,从而使输出信号更加稳定。
本设计采用的心率模块是佩戴[4]在手指端进行心率数据采集,脉搏心率模块主要通过发光二极管发光来实时检测手指端血管舒张和收缩情况,当心脏跳动时,手指端血管血容量就会产生周期性的变化,心率模块发光二极管[5]在手指端的透光率也会产生周期性变化,从而心率模块将检测到红外光信号[6]变化转为电信号。
一、接口说明:
(1)正极引脚外接上5V电源
(2)负极引脚外接上GND
(3)信号输出接口(0和1)
Pulsesensor脉搏心率传感器模块接口原理图如图3-10所示:
图3-10心率模块接口原理图
Pulsesensor脉搏心率传感器模块实物图如下图3-11所示:
图3-11心率模块实物图
本设计系统采用的Pulsesensor脉搏心率模块[7]模拟输出波形图如图3-12,示波器实际显示输出波形图如图3-13,两者波形图显示基本一致。
图3-12理论输出波形图图3-13实际输出信号波形
本设计系统直接采用心率模块输出波形信号并不是数字方波信号[8],在进行数据读取时不够精确、快捷、稳定,因此,本设计系统采用LM393比较器和心率模块连接,从而使心率传感器模块经过滤波后输出更加稳定,并且便于数据采集的标准数字方波信号。
LM393比较器滤波后输出的波形图如图3-14所示。
图3-14心率脉搏传感器经比较器滤波后输出的波形图
LM393比较器模块对Pulsesensor脉搏心率传感器模块滤波的电路原理图如下图3-15所示。
图3-15心率检测电路原理图
本设计系统心率模块和LM393比较器设计原理图如图3-16所示,在心率传感器模块与LM393模块之间设计R1电阻、C1和C2电容是为了使LM393模块检测到的模拟信号转化为模拟电压时进行分压[9]、滤波[10]后输出更加稳定的数字信号。
其中R1起到了分压的作用;C1起到了对电源端的滤波作用;C2起到了对模拟信号端的滤波作用。
还有为了保护LED不容易被损坏而设计了R2和R3电阻进行限流,设计R4电阻为上拉电阻是为了保证将不确定的信号源保持在一个高电平状态,与此同时R4也起到了限流的作用。
最终通过这些设计保证心率模块与单片机端的信号传输信号更加稳定有效。
图3-16LM393比较器模块内部电路图
LM393比较器模块实物图如下图3-17所示。
图3-17LM393比较器模块实物图
3.2.5温度模块电路
一、DS18B20技术参数:
(1)DS18B20模块自身具有独特的单线接口达到双线传输[11]数据的功能,在与单片机之间只需要进行单线口连接即可。
(2)在实测过程与单片机之间是以9到12位的串行数字传输,并且测试范围值在负55摄氏度到正125摄氏度之间,测试范围较广。
(3)在应用于嵌入式硬件电路设计中都不需要与其他的元器件组合使用,单独接线单片机即可。
(4)DS18B20模块在应用于嵌入式硬件设备中还可以多个模块并联使用,从而达到多个测试点作用。
(5)DS18B20模块在使用是需要接上3到5V的电源
本设计系统采用DS18B20模块主要基于其9到12位的分辨率,并且在进行监测温度转为12位的数字格式速度是750ms,器件技术参数是能满足本设计要求的。
市场上主要存在两种DS18B20温度传感器模块,一种工艺设计原理上是芯片直接裸露,并且不具有防水功能,实物图如图3-18,则适用于本设计系统温度检测。
另一种是长芯片钢管封装形式,具有防水功能,主要应用于液体温度检测装置,实物图如图3-19,则不适用本设计系统体温检测。
图3-18DS18B20传感器实物图(裸露)图3-19DS18B20传感器实物图(防水)
DS18B20温度传感器原理图如图3-20。
传感器原理图中GND引脚与处理器GND引脚相连;引脚DQ与处理器的PC13信号引脚相连;引脚VDD与处理器5V电源引脚相连;其中引脚DQ和引脚VDD之间接上一个R1电阻作为上拉电阻,从而保证DS18B20传感器数据读取更稳定。
图3-20DS18B20温度传感器原理图
第四章系统软件应用
4.1系统编程语言选择
因为本设计采用的处理器是基于STM32系列的单片机,其中应用到了不少器件模块,所以整体系统程序较为复杂和计算量较大,则采用C语言作为程序设计语言。
STM32系列单片机开发上C语言比汇编语言的优点:
(1)C语言在开发上不需要了解相关的指令,在嵌入式硬件设计中使用C语言编程的用例较多以及具有很多标准的库文件,从而大大提高了在线编程开发和调试的效率。
C语言的应用函数以及关键字更加贴切用户的使用思维,提高了程序结构上的可读性。
(2)作为计算机专业中一门基础语言,C语言编译器的适用性更加广泛,更加适合用户的入门学习和实践。
(3)在使用C语言编程时不需要考虑相关寄存器的分配和存储器寻址等问题,针对系统开发更加的简化和方便。
4.2程序开发环境
本设计系统在程序开发方面应用了KeiluVision5软件,KeiluVision5软件是STM32系列单片机主流开发环境,具有完整的STM32单片机开发应用库文件,能够实时在线对系统程序进行编译、连接和调试,开发界面完整、简洁,并且采用了C或C++基础语言开发。
在开发者使用方面来说,系统程序编辑效率更高,能够使开发者更快更好的完成项目开发。
开发界面如图4-1所示。
图4-1开发界面图
其中Keil有以下特点:
(1)KeiluVision5作为STM32单片机主流开发环境,其应用的操作系统更加广泛,比如windows和macOS等操作系统,并且具有完整的STM32单片机库函数文件。
(2)KeiluVision5是一个高度一体化开发环境,其能使开发者在线进行对系统程序整改和调试,具有很高的仿真性。
(3)KeiluVision5作为KeiluVision4的升级版开发环境,扩大了对STM32系列单片机处理器的开发应用层面,并且开发形式更加方便和快捷。
4.3软件开发流程
本设计系统开发首先需要新建一个.c主函数文件,再建立心率、体温、计步等模块应用的.c程序文件,并且往“Project”工程里面添加相关的STM32系列单片机.h库函数文件。
本设计是基于STM32F103C8T6单片机的心率计步体温显示系统,则“Project”工程芯片设置时选择STM32F103C8T6,最后通过参考STM32单片机及模块开发手册进行C语言编写系统程序,并且编译和调试,直至程序无误后下载到单片机。
具体工程开发流程如图4-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 STM32 单片机 心率 体温 显示 系统 设计