基于单片机的多功能跑步监测仪 精品.docx
- 文档编号:28064113
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:22
- 大小:353.76KB
基于单片机的多功能跑步监测仪 精品.docx
《基于单片机的多功能跑步监测仪 精品.docx》由会员分享,可在线阅读,更多相关《基于单片机的多功能跑步监测仪 精品.docx(22页珍藏版)》请在冰豆网上搜索。
基于单片机的多功能跑步监测仪精品
基于单片机的多功能跑步监测仪
专业:
姓名:
指导教师:
摘要
本设计是在PROTEUS环境下完成的,以单总线数字温度传感器DS18B20、AT89C51单片机、HK-2000A集成化脉搏传感器、ND-3微振动传感器、LM041L字符型显示器构成的多功能实时生理参数监测仪系统的硬件电路及软件系统的设计。
本文介绍了PROTEUS和KEIL软件,DS18B20单线数字温度传感器、AT89C51单片机和LM041L字符型显示器的结构、性能特点以及工作原理,以及HK-2000A集成化脉搏传感器和ND-3微振动传感器的性能参数。
该系统可以完成对温度、心率、步数等参数的采集、处理和显示,并且能在这些参数超过设定的阈值时,进行报警提示。
关键词:
单片机;DS18B20;LCD;PROTEUS;KEIL
AbstractMy
designisdependonPROTEUS,usingtheextensivelyusedsingle-busdigitaltemperaturesensorDS18B20,AT89C51MCU,HK-2000Aintegratedpulsesensor,ND-3micro-vibrationsensor,LM041Lcharacterdisplaydesignamulti-functionalreal-timephysiologicalparametersmonitor,shardwarecircuitsandsoftwaresystem.PROTEUSandKEILsoftware,DS18B20single-wiredigitaltemperaturesensor,AT89C51MCUandLM041Lcharacterdisplaystructure,performancecharacteristicsandworkingprinciples,aswellastheHK-2000AintegratedpulsesensorsandND-3micro-vibrationsensorperformanceparametersisintroducedinthispaper.Thissystemcanbecompletedoncollect,processinganddisplaytheparametersthetemperature,heartrate,paces,andmorethantheseparametersinthethresholdthatwesetforalarm.
KeywordsMCU;DS18B20;LCD;PROTEUS;KEIL
目录
摘要2
AbstractMy2
目录3
引言4
第一章、跑步监测仪任务书及分析5
1.任务书5
2.1DS18B20智能温度控制器5
2.2DS18B20内部结构6
第三章:
跑步监测仪振动传感器和脉搏监测传感器的选定8
3.2SPCE061A最小系统9
3.3DS18B20温度传感器10
3.5HK-2000A脉搏检测传感器11
4.1设计系统简介12
4.2AT89C51单片机13
4.3Proteus软件14
第五章:
复位电路模块的设计14
10.1系统软件设计18
10.5主要技术指标21
第十一章、总结22
参考文献22
答谢24
引言
随着国民经济的不断发展,人们生活水平不断提高和完善,健康已成了人们关注的焦点和追求的目标。
参加锻炼无疑是保持健康的最佳方法,但很多人急于求成,往往适得其反,达不到锻炼的效果,甚至可能对身体造成一定程度的伤害。
目前市场上单纯的跑步计步器不能同时监测人体生理参数并实时显示,反馈给锻炼者。
便携式多功能实时生理参数监测仪是一种可对跑步者跑步时的各种生理参数进行实时监测的仪器,该仪器以单片机为核心,以单片机为核心,配以DS18B20温度传感器、ND-3微振动传感器、HK-2000A脉搏传感器及LCD显示电路,使得该仪器具有实时监测参数并显示出来的功能。
便携式多功能实时生理参数监测仪可以实时检测人在跑步和锻炼时的人体体表温度、心率和所跑的步数,并可以记录显示反馈给锻炼者,当这些参数超过设定的阈值时,监测仪会发出报警声提醒锻炼者,让锻炼者根据各个参数进行正确的调整运动量,以达到减少不合理的锻炼导致的对身体的伤害,提高锻炼质量的目的。
第一章、跑步监测仪任务书及分析
1.任务书
设计内容:
1.掌握跑步监测仪器用途与意义分析及背景概述;2.熟练掌握SPCE061单片机DS18B20温度计数器、ZD-3微振动传感器、AHK-2000A脉搏检测传感器等及其工作特性;3.设计跑步监测仪器整体实现方案与设计技术方法实现;4.完成系统设计的报警模块设计与实现;5.完成跑步监测仪器测试;6.结论.
设计任务:
1.跑步监测仪器整体设计方案与设计思路实现;2.系统设计的报警模块设计与实现;
3.对某位同学跑步的监测进行测试;4.测试跑步监测仪器其功能及效用精度等;5.总结.
设计要求:
1.根据设计内容的不同,划分出独立的章节;2.在每章的开始,应对所要完成的任务、基本的设计原则及算法作简要的论述;3.在每章的结尾,应对所完成的工作做简要的总结;4.全文书写规范.
第二章:
跑步监测仪单片机和温度计数器的选定
2.1DS18B20智能温度控制器
Dallas半导体公司的数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。
新的“一线器件”体积更小、适用电压更宽、更经济。
一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。
DS18B20、DS1822“一线总线”数字化温度传感器同DS18B20一样,DS18B20也支持“一线总线”接口,测量温度范围为-55℃~~+125℃℃,在-10~+85℃范围内,精度为±0.5℃。
DS1822的精度较差为±2℃。
现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。
适合于恶劣环境的现场温度测量,如:
环境控制、设备或过程控制、测温类消费电子产品等。
与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。
而且新一代产品更便宜,体积更小。
DS18B20、DS1822的特性DS18B20可以程序设定9~12位的分辨率,精度为±0.5℃。
可选更小的封装方式,更宽的电压适用范围。
分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。
DS18B20的性能是新一代产品中最好的,性能价格比也非常出色。
DS1822与DS18B20软件兼容,是DS18B20的简化版本。
省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为±2℃,适用于对性能要求不高,成本控制严格的应用,是经济型产品。
继“一线总线”的早期产品后,DS18B20开辟了温度传感器技术的新概念。
DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统
2.2DS18B20内部结构
DS18B20内部结构主要由四部分组成:
64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
DS18B20的管脚排列如下:
引脚介绍:
GND接地端DQ数据输入/输出端VDD电压输入端NC空引脚光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码CRC=X8+X5+X4+1)。
光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。
DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:
用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。
这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。
第三章:
跑步监测仪振动传感器和脉搏监测传感器的选定
随着国民经济的不断发展,人们生活水平不断提高和完善,健康已成了人们关注的焦点和追求的目标。
参加锻炼无疑是保持健康的最佳方法,但很多人急于求成,往往适得其反,达不到锻炼的效果,甚至可能对身体造成一定程度的伤害。
目前市场上只有单纯的跑步计步器,不能同时监测人体生理参数并实时显示,反馈给锻炼者。
本文设计的基于凌阳单片机的便携式多功能实时生理参数监测仪可将二者结合起来,并增加了MP3功能,使锻炼者在锻炼的同时还可以听音乐,放松心情,从而达到提高锻炼质量的效果。
系统硬件设计
系统以单片机为核心,配置以各种集成传感器,使系统体积变的小巧。
由于采用了微型封装的集成电路芯片,使连线变短,减少了通信接口的个数,从而提高了整机工作的可靠性。
系统硬件结构框图如图1所示。
图1系统硬件结构框图
3.1SPCE061A单片机
SPCE061A单片机内部集成了模/数转换器(ADC)、数/模转换器(DAC)、32KBFLASH和2KBSRAM以及液晶驱动器。
利用该单片机作为处理芯片,使得模、数信号之间的转换、液晶驱动可以通过软件来实现,避免了外界信号的干扰,提高了系统的稳定性及抗干扰能力。
3.2SPCE061A最小系统
SPCE061A最小系统当中,包括SPCE061A芯片外围的基本模块,有晶振输入模块(OSC)、锁相环外围电路(PLL)、复位电路(RESET)、指示灯(LED)等,如图2所示。
图2SPCE061A最小系统
SPCE061A的内核供电为3.3V,而I/O端口可接3.3V也可以接5V,所以在电源模块(61板上)中有一个端口电平选择跳线,如图3中的J5,图3为61板上的电源模块图。
图3SPCE061A电源模块
3.3DS18B20温度传感器
DS18B20温度传感器用12位存储温度值,理论精度可达到0.05℃,能实时、精确地检测到人体温度的变化,可通过单片机在液晶显示器上显示,避免了电压或电流等模拟信号再转换为数字信号的过程,从而提高了系统的抗干扰能力和精度。
DS18B20的一线工作协议流程是:
初始化→ROM操作指令→存储器操作指令→数据传输。
其工作时序包括初始化时序、写时序和读时序。
DS18B20与单片机的典型接口设计
可以采用外接电源与寄生电源供电(就是供电电源从数据线上得到),寄生电源如图4所示。
图4寄生电源供电
3.4ZD-3微振动传感器
ZD-3微振动传感器是一种有源的高灵敏度微功耗振动检测器件,以正弦波形式输出,可利用74LS14施密特触发器将其转换成脉冲波,输入单片机检测高电平,能实时记录跑步者或锻炼者的步数,进而得到锻炼者的能量损耗,以利于更有效的进行锻炼。
3.5HK-2000A脉搏检测传感器
HK-2000A传感器是一种主要用在运动、健身器材上对脉搏检测的传感器,以脉冲波的形式输出。
当脉搏波动一次时输出一正脉冲,可将其输出信号输入单片机,检测高电平,记录脉搏。
主要特点:
·模拟脉冲信号输出,灵敏度高,·抗干扰性能力强,过载能力大,一致性好,性能稳定可靠,使用寿命长技术指标:
·电源电压:
3~12VDC,压力量程:
-50~+300mmHg,过载:
100倍,输出高电平:
大于VCC-1.5V,输出低电平:
小于0.2V
3.6OCM4X8C液晶显示模块
OCM4X8C液晶显示模块采用128×64点阵的液晶显示模块,可显示汉字及图形,内置国标GB2312码简体中文字库(16×16点阵)、128个字符(8×16点阵)及64×256点阵显示RAM(GDRAM)。
可与CPU直接接口,提供8位并行及串行两种连接方式连接微处理器。
该液晶显示模块具有多种功能:
光标显示、画面移位、睡眠模式等。
配合1×4键盘可实现参数设置,分析结果浏览和修改以及各种人机对话,能适时显示各种生理参数值及记录到的步数。
3.7键盘输入模块
1×4键盘输入模块,系统设计的功能键采用中断方式输入,当有任一功能键按下时,即产生中断,CPU执行中断程序,读取键码并执行相应操作;没有键按下时,不占用CPU的运行时间,提高了CPU的运行效率。
由于SPCE061A有32个I/O口,所以显示模块可以直接接至I/O口,无须另外的硬件编码,简化了硬件设计。
3.8呼吸气流温度检测模块
呼吸气流温度检测回路通过热敏元件,检测人体呼吸时呼出与吸入气流温度的变化情况,从而获得呼吸频率参数,为了减少热惰性带来的误差,准确地测量呼吸气流温度的变化,要求热敏元件热容量越小越好。
因此在电路中选用BLTS101PN结温度传感器(φ1mm,热响应时间τ<0.2s)。
恒流源向PN结提供100μA的恒定正向电流,则PN结的正向压降仅随温度T的变化而变化,该电压信号由前置放大器放大后通过一4.84Hz低通滤波器,再经过波形变换为数字信号送入单片机。
第四章:
本次设计主要使用的软件的选定
4.1设计系统简介
本设计选择AT89C51为核心控制元件,以LM041L液晶显示模块为显示元件,以蜂鸣器为音频输出,用DS18B20数字温度计、HK-2000A型脉搏传感器、ND-3微振动传感器作为生理参数信号采集元器件,设计制作了一个日常生活中用到的便携式多功能实时生理参数监测仪系统。
当启动单片机时,会自动检测并监测体温、心率,记录所跑的总步数,并且在液晶显示器上显示出来。
当体温超过39℃或心率低于50次/分钟或心率高于140次/分钟时,就会发出报警声。
由于这是对现实生活中应用的一种模拟,要达到实际的需要,应用到生产领域,还有很大的距离,所以在系统的设计过程中避免不了遗漏一些问题,这是在所难免的,但是该系统经过实践证明运行稳定,各个功能均得以实现,基本上达到了设计的要求。
主要元器件:
AT89C51、LM041LLCD、蜂鸣器、DS18B20、HK-2000A、ND-3、晶振、开关、电容、电阻、滑动变阻器若干。
用到的主要软件:
仿真软件Proteus、编译软件KeiluVision2。
4.2AT89C51单片机
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
4.3Proteus软件
Proteus是目前最好的模拟单片机外围器件的工具,它可以仿真51系列、AVR,PIC等常用的MCU及其外围电路(如LCD,RAM,ROM,键盘,马达,LED,AD/DA,部分SPI器件,部分IIC器件...)。
Proteus的显著的特点如下:
(1)全部满足单片机软件仿真系统的标准,并在同类产品中具有明显的优势;
(2)具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS-232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能,有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等;(3)目前支持的单片机类型有:
6800系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片;(4)支持大量的存储器和外围芯片。
总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大,是其他任何一款软件不能相比的。
运行proteus的ISIS程序后,进入该仿真软件的主界面。
在工作前,要设置view菜单下的捕捉对齐和system下的颜色、图形界面大小等项目。
通过工具栏中的p(从库中选择元件命令)命令,在pickdevices窗口中选择电路所需的元件,放置元件并调整其相对位置,元件参数设置,元器件间连线,编写程序;在source菜单的Definecodegenerationtools菜单命令下,选择程序编译的工具、路径、扩展名等项目;在source菜单的Add/removesourcefiles命令下,加入单片机硬件电路的对应程序;通过debug菜单的相应命令仿真程序和电路的运行情况。
Proteus软件所提供了30多个元件库,数千种元件。
元件涉及到数字和模拟、交流和直流等。
第五章:
复位电路模块的设计
这种复位电路的工作原理是:
单片机的复位电路在刚接通电时,刚开始电容是没有电的,电容内的电阻很低,通电后,5V的电通过电阻给电容进行充电,电容两端的电会由0V慢慢的升到4V左右(此时间很短一般小于0.3秒),RC构成的微分电路在上电瞬间产生一个微分脉冲,其宽度大于两个机器周期,89C51将复位。
正因为这样,复位脚的电由低电位升到高电位,引起了内部电路的复位工作,RST端电压慢慢下降,降到一定电压值以后,即为低电平,单片机开始正常工作(这是单片机的上电复位,也叫初始化复位);当按下复位键时,电容两端放电,电容又回到0V了,于是又进行了一次复位工作(这是手动复位原理)。
第六章:
晶振电路模块的设计
AT89C51芯片内部有一个高增益反相放大器,用于构成振荡器。
反相放大器的输入端为XTAL1,输出端为XTAL2,两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。
电容C1和C2通常取30pF左右,可以稳定频率并对振荡频率有微调作用。
在本设计中选用的是12MH的石英晶振和33pF的电容。
第七章:
数据采集模块的设计
在本设计中需要采集的生理参数包括体温、心率、所跑的步数,采集体温用单线数字温度传感器DS18B20,采集心率用HK-2000A集成化脉搏传感器,采集所跑的步数用ND-3微振动传感器。
由于在仿真软件Proteus中找不到HK-2000A集成化脉搏传感器和ND-3微振动传感器,因此在仿真时采用数字脉冲源来模拟这两个传感器所采集数据的输出。
第八章:
显示模块的设计
采用LM041L作为显示器件,为四行每行16字液晶显示屏,D0-D8接P0口,所以要接上拉电阻。
RS、RW、E接P1.3、P1.4、P1.5起控制作用。
滑动变阻器用来调节LCD的背光亮度,可以使显示器显示更加清楚。
第九章:
报警模块的设计
9.1报警模块(声光报警)
利用凌阳单片机内部的语音功能及软件控制,当参数超过阈值时发出语音报警。
同时输出一高电平,驱动发光二极管发光,更容易提醒锻炼者。
报警电路部分使用的是一个蜂鸣器,其一端接P1.0,另外一端接地。
当P1.0为高电平是就发出嘟的声音,为报警提示音。
在系统初始化完成时会“嘟、嘟、嘟”连响三声,系统正常运行后在出现生理参数超出正常阈值时,报警电路会嘟嘟嘟的报警到生理参数回到正常阈值内或重启监测仪才会解除报警。
第十章:
本次设计的系统软件的设计
10.1系统软件设计
软件设计采用模块化结构,菜单操作。
利用C61及汇编语言编写软件,在液晶显示屏上实时显示各种生理参数的数据,信号数据存储采用FLASH,这样在仪器更换电池时不会丢失数据。
所有测量参数均可设定上、下报警限,任一参数越限时都能发出声、光报警,需要时,能用消声键停止报警声。
仪器进入工作状态后,主程序首先完成对液晶显示屏的初始化,然后进入检测状态。
由于呼吸阻抗信号具有基线漂移现象,因此在软件设计中采用一种变化中值检测法对基线进行校正,具体方法是把上一次呼吸周期内的中值点作为本次呼吸周期的检测点,这样即可克服在正常检测电压范围内基线漂移现象所带来的漏检情况。
程序流程图如图5所示。
图5主程序流程图
10.2数据采集部分
对生理参数的实时数据采集无疑是最重要的,主要通过传感器进行实时采集。
由于人体的温度在锻炼时变化也是很缓慢的,因此,主要运用软件定时中断的方法进行检测。
步数和脉搏等参数,主要记录的是频率,只需软件计数就可以,根据检测到的高电平,计数器进行自加运算,从而记录频率。
10.3参数阈值设定
由于人体温度正常情况下在36.5℃左右。
因此,我们设定温度域值的初值为36.5℃,以0.25℃为步进量,可以用上下键增减,每按一次按键,就递增或递减0.25℃,直到达到锻炼者想要设定的阈值为止(在35~42℃之间)。
其他参数设定类似。
10.4液晶驱动程序设计
系统显示功能的实现,实际上就是对OCM4X8C液晶显示模块的驱动编程。
我们按照结构化的编程思想利用C61语言将上翻、下翻、返回和确定等按键功能编成子函数,这样利于主程序的调用。
液晶驱动的部分程序如下:
#include"spce061v004.h"
voidDelay()
{inti;
i=300;
while(i--);
}
voidWriteBit(charB)
{intD;
D=*P_IOB_Buffer&0xfffd; //SDA输出数据
if(B!
=0)
*P_IOB_Data=D|0x0002;
else
*P_IOB_Data=D&0xfffd;
D=*P_IOB_Buffer&0xfffe; //SCK脉冲
*P_IOB_Data=D|0x0001;
*P_IOB_Data=D&0xfffe;
}
voidWriteByte(charB,charI)
{intD,i;
D=*P_IOB_Buffer&0xffbf;
*P_IOB_Data=D|0x0040; //片选有效
for(i=1;i<6;i++)
WriteBit
(1); //5个空脉冲,数据为1synchronizingbitstring
WriteBit(0); //RW=0
...
...
...
D=*P_IOB_Buffer&0xffbf;
*P_IOB_Data=D&0xffbf; //片选有效
}
voidLCDinit(void)
{intD,i;
D=*P_IOB_Dir&0xffbc; //SDA为输出
*P_IOB_Dir=D|0x0043;
D=*P_IOB_Attrib&0xffbc; //SDA为正逻辑输出
*P_IOB_Attrib=D|0x0043;
D=*P_IOB_Buffer&
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于单片机的多功能跑步监测仪 精品 基于 单片机 多功能 跑步 监测