版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
物联网技术在智能健身设备检测与优化中的应用与实现摘要:为解决传统健身设备缺乏精准监测与优化功能的问题,采用物联网技术,以STM32F103C8T6单片机为核心,结合WiFiESP8266、心率血氧模块、DS18B20、计步模块、GPS模块等设计并实现了智能健身设备监测与优化系统。系统功能包括数据采集、处理、传输、显示以及远程控制几大功能模块,可采集心率、血氧、运动时长、体温、GPS定位信息和步数数据,通过OLED屏幕及配套小程序实时展示,还能在参数异常时声光报警。系统以MQTT协议将数据上传至云平台,经测试,该系统满足设计基本需求,能安全、稳定和可靠地运行,为用户健身提供有效辅助。关键词:物联网;智能健身设备;STM32F103C8T6;MQTT协议;健康监测TheApplicationandImplementationofInternetofThingsTechnologyintheDetectionandOptimizationofIntelligentFitnessEquipment.Abstract:Inordertosolvetheproblemthattraditionalfitnessequipmentlacksaccuratemonitoringandoptimizationfunctions,theInternetofThings(IoT)technologyisadopted.WiththeSTM32F103C8T6microcontrollerunit(MCU)asthecore,combinedwiththeWiFiESP8266module,heartrateandbloodoxygenmodule,DS18B20temperaturesensor,pedometermodule,GPSmodule,etc.,anintelligentfitnessequipmentmonitoringandoptimizationsystemhasbeendesignedandimplemented.Thesystemfunctionsincludeseveralmajorfunctionalmodulessuchasdatacollection,processing,transmission,display,andremotecontrol.Itcancollectdataonheartrate,bloodoxygensaturation,exerciseduration,bodytemperature,GPSpositioninginformation,andthenumberofsteps.ThecollecteddataaredisplayedinrealtimethroughanOLEDscreenandasupportingmini-program.Moreover,whentheparametersareabnormal,thesystemwillgivebothaudibleandvisualalarms.ThesystemuploadsthedatatothecloudplatformthroughtheMQTTprotocol.Aftertesting,thissystemmeetsthebasicdesignrequirementsandcanoperatesafely,stably,andreliably,providingeffectiveassistanceforusers'fitnessactivities.Keywords:InternetofThings;IntelligentFitnessEquipment;STM32F103C8T6;MQTTProtocol;HealthMonitoring
目录TOC\o"1-2"\h\z\u1引言 41.1研究背景与意义 41.2国内外研究现状 42系统整体方案设计 62.1系统需求分析 62.2系统功能 62.3系统整体设计方案 73系统硬件模块选型与整体电路设计 83.1STM32F103C8T6单片机 83.2ESP8266模块 103.3心率血氧模块原理 103.4DS18B20温度传感器 113.5STP101M计步模块 123.6GPS定位模块 133.7蜂鸣器模块 143.8OLED显示电路 144软件程序实现 154.1开发环境 154.2主程序设计 154.3心率血氧采集程序 164.4DS18B20温度采集程序 184.5计步模块驱动程序 194.6GPS模块驱动程序 204.7ESP8266程序设计 224.8MQTT通信程序 234.9蜂鸣器报警程序 244.10OLED液晶显示程序 255云平台与小程序开发设计 265.1云平台接入 265.2小程序功能模块设计 285.3界面设计与交互 296系统优化策略 336.1硬件优化 336.2程序优化 346.3交互界面优化 347系统功能测试 347.1功能测试 347.2测试结论 378结论与展望 378.1研究成果总结 378.2研究创新点与不足 378.3未来研究方向 38致谢 38参考文献 381引言1.1研究背景与意义当前物联网技术身为信息技术的要害构成,正匆匆融入各色领域,继而引发了多个产业的变革潮涌,因为5G网络得以推广,云运算也取得了长足进步,导致数据传输的速度提升之余,延迟还不断降低,这些都成为了支持物联网大规模运用的可靠基座,中国对于物联网发展的关注与重视十分明显,为此出台了大量优惠政策去支撑其研发及使用诸如《国家新一代人工智能发展规划》及《工业企业互联网行动计画》此类方针与办法就创造了适合物联网高速前行的优势政策环境氛围。国家经济飞速增长当中,“互联网+”多策略还在不断深化,人们的健身意识有了显著增强,这直接给健身行业带来明显的提升效果[1],使这一产业处在难得的大好发展时机当中,物联网技术所具备的把物品互相连接起来的特性及其包括感知全面、传递可靠以及智能处理等各种能力[2],有助于应对现阶段智慧健身领域内数据架构不全并且推广程度较低的各种切实难题[3]。智能体育器材是由健身产业及物联网技术相结合之后产生成果,靠整合各类传感器设备、分析方法和人工智能技术,可即时记录使用者的心率变化、血氧浓度、运动时长、体温调节状况、走步数目等具体参数,且还能够针对性很强地提供训练参考规划与指导,为用户提供更为高效准确的健身体验感受环境。通过实时、智能健身设备可精确地监测使用者的多项生理信息,运动过程中只要出现心率、血氧或者体温等方面的情况异常,就能够很快被发觉并收到警告,提示调整运动强度或者是作出相应的应对措施,以此避免运动带来的伤害还有一些潜在健康危险,为用户的身体健康安全撑起一道保护屏障,从健身行业的角度来看,这类装置的发展促成整个行业的数字化转型以及智能化进程有所提速。一方面,大量的用户运动数据被采集,通过数据分析之后企业便能更明确地知晓客户需求和行为习惯,这个条件帮助产品设计和服务方式进行优化,令用户体验得到改善,提升在市场上占有额方面的效率;另外一方面是智能型健材的投入使用拓展了业务形态,比如网络课程、模拟教学模式还有社交区域等多种新形式的服务形态兴起,这给厂家带来更多的入收来源并且推动整个行业向创新型方向进一步迈进,同时互联网形态的健体服务也将成为今后主要的变化趋势,即便在室内足能接受的专业指导效果不减线下健身环境太多[4]。综上所述,探究物联网技术在智能健身设备监测与优化中的应用价值显得颇为必要,这能在满足公众日益增长的健康需求方面发挥作用,并且在传播健康生活理念上有一定潜力,同时也给健身行业的成长提供了新的可能性,对其在数字化时代的持续发展形成助力。1.2国内外研究现状智能健身设备与物联网技术在国外的应用研究起步较早,凭借其先发优势与雄厚的科研实力,这一领域已沉淀下大量成果,多具备开创性特点,对于智能健身设备来说,众多研究仍在围绕功能升级和优化展开探索,可穿戴式智能健身装置便是一个重要的方向,这类设备通常被称为继平板电脑与智能手机之后的一种颠覆性创新产品[5],以AppleWatch为例来看,这款产品的研发得力于传感技术的快速迭代更新,其不仅在心率监测、血氧水平追踪以及日常步数记录等基本数据的获取上有了更高的精准度,并且在运动轨迹的描墓与身体动作形态抓取的技术层面展现出了显著进步的能力。内置加速度计和陀螺仪响应速度达毫秒级别,细致记录跑步中步频以及步幅相关数据,游泳时划水次数、姿势角度之类的信息也被精确追踪,为使用者生成细致的运动分析报告,佳明(Garmin)这家公司专注于研发专业运动手表,其设备搭载了光学心率传感装置与气压高度感应仪器,在户外环境下,精准捕捉海拔改变、心率浮动情况等各类数据,从而为用户优化运动强度调整及路径规划提供帮助,借助其成果达成对运动信息监测的准确性提升及其范围的全面性拓展,这种方式有助于减少运动伤害出现概率并促成更好的训练成效报道所示[6]。物联网技术的应用方面,国外研究重点放在高效稳定通信架构的构建上[7],像美国高通公司研发的低功耗蓝牙(BLE)和Wi-Fi融合通信技术,智能健身设备、移动终端以及云平台的数据实时传输交互得到了可靠保障,在此技术支持下,健身设备于较低能耗状况中可迅速把用户运动数据传至云端,还能接收云平台发送的个性化健身指引[8],亚马逊推出来的AWS物联网平台仰仗其强大的云计算与数据处理能力,在全球范围内实现了对智能健身设备的统一管理与数据存储,这为远程健康管理以及个性化服务推广奠定了坚实的基础。国外正针对前沿科技与物联网的结合方面展开不断尝试,比如美国的MyFitnessPal这款应用软件,通过采用机器学习算法去大量处理运动以及饮食数据记录,从而更加精准计算卡路里消耗还有营养需求之类的各项信息内容,最后提供给用户定制级别较高的健身体能训练安排和膳食计划[9]。而在德国那边也有这么一些团队依靠深度学习办法处理从个人上传来的运动录像画面,来分辨识别相关人体移动的动作并对其姿态状况进行解析判断,对用户的锻炼过程中出现的各种异常姿势可达成即时性识别跟踪以及纠正意见反馈功能,这样做的直接效果是在某些运动方式下极大提高了这些运动者的实际体验成效。国内的研究里头,通过参考国外的前沿经验,在智能化健身器材的开发与使用方面有了显著进展,从研发视角看,国内学者正着力突破自主产权的智能化健身器械,意图破解国外的技术垄断困境,推动这类产品走向国产化之路并大力铺开布局,比如华为发布的智能手环和运动腕表,其中嵌入了自主研发的TruSeen心率监测模块以及TruSleep睡眠检测方案[10],此类装置准确度已经达到国际顶级规格。小米则凭借其高性价比的智能健身品类快准狠占领本土大部分市场,好比米家出品的智能体脂秤就是运用生物电阻抗理论运作的,能够精准测量身体中的多项数据像脂肪含量、骨骼肌数量这类,并借助智能手机软件生成全面的身体状况报告内容以满足群众管理身体健康的目的。物联网技术的研究与应用方面,国内根据自身实际状况和用户需求寻找本土智能健身解决办法,在社区健身领域有所体现,一些城市借助该技术构建社区智能健身服务平台[11],给健身器材装上传感器与通信块后,实现了器材的联网管理和数据共享,居民在使用器械时运动数据就会立刻传至平台,而平台会按用户的运动和身体情形推荐合适的项目与强度。同时在国内,大家对将物联网技术用于智能健身设备中的安全问题尤为看重,腾讯、阿里巴巴等互联网公司依靠自身强大技术实力,研发出各类数据加密和隐私保护的手段,其中区块链技术也被用于进行健身数据存储,从而令用户信息传输与储存期间的安全性和完整性得到确保。不过现有研究还是有些问题得赶紧解决,在数据监控这一块,传感器技术虽说已经有了明显进步,但部分传感器的准确性与稳定性仍有待改进,特别是在高温、高湿或强电磁干扰等复杂的运动环境条件下传感器所采集的数据很容易被打乱。比如说在高温环境下,一些心率传感器就可能出现测量偏差的现象,这就使得对用户实际运动强度评估变得困难;再比如强电磁干扰时运动轨迹监测数据可能也会不准确,这么一下来,用户的运动状况想要做精准的判断可就受到很大的影响。智能健身设备能够借助用户的数据提供部分个性化的建议,只是这些建议往往深度不足也不够准确,目前多数健身设备所提供的个性化服务,主要是依靠用户的年龄、性别和体重这类基本信息,以及较为简单的运动统计数据,多样化需求面前显得捉襟见肘,特别是对于有着明确目标的使用者而言,无论是增肌还是减脂亦或是康复训练,现成的个性化方案在科学合理的阶段规划与专业指导下有所缺失,很难有效地帮助他们达成设定的目标。每位用户的运动习惯及其身体适应状态各不相同,而现有的个性化服务很难真真切切地量身打造出适配每个人具体情况的内容安排。2系统整体方案设计2.1系统需求分析本研究聚焦物联网技术在智能健身设备监测与优化中的实际应用,涵盖硬件设计以及软件开发还有系统测试等方面,意图搭建一个功能齐全同时性能稳定可靠的智能健身监测系统。功能需求里头,数据采集是系统的根基部分,以STM32F103C8T6单片机作为核心控制单元,配合心率血氧模块、DS18B20温度传感器、计步模块与GPS模块等多种传感装置,目的是精准采集用户的心率、血氧含量、活动时长、体温数值、GPS定位地点信息以及步数等各种数据,这些采集的数据为后续分析及决策奠定重要基础。通过心率和活动时间可以判定运动强度,借助GPS位置讯息能够记录运动路线,给用户提供详尽的运动数据分析结果[12],与此同时数据传输功能也非必不可少,通过WiFi模块ESP8266实现设备间的无线通讯连接,确保数据搜集后可以及时平稳传递至外网,方便人们在终端查看相关信息,同时为日后数据存储和进一步剖析创造条件。在数据展示方面,运动信息被OLED屏幕实时显示出来,无需其他设备的辅助,用户即可随时掌握自身运动状态,报警功能不能忽视,一旦用户的生理指标存在异常状况,蜂鸣器就会立刻响起,像心率过高或者是血氧含量太低时,用户会被赶紧提醒停止运动并且进行一些应对的操作,这样做的主要目的,就是保障用户在运动中的安全。性能需求方面的重点体现在数据采集的准确与实时上,无论是跑步骑行还是登山之类的不同运动情境下,各类传感器都要维持数据收集的稳定及精准状态,避免环境因素影响导致数据偏差出现,数据传输部分则要求稳定度高且延时短,这样才能使用户数据快快上传云端并且还可及时对接收到来自云端发出的指令及反馈信息的过程加以保障,达到提高整体使用感的目的,还有系统响应速度也要能满足用户的即刻操作需要才行,像一些界面上的数据显现或报警启动此类动作都得尽可能缩短处理进程。数据安全和隐私保护不容忽视,系统需保障用户的数据与隐私安全在传输过程中借助加密技术避免数据泄露或遭到篡改,至于数据存储环节就得设立严苛的访问规定,以确保授权人员以及用户本人才有权限查看相关数据,系统的硬件部分应具备一定的防护能力,从而应对运行时可能出现的磕碰、振动和潮湿等情况,以此维持系统正常的运作状态。系统得具备较为良好的可扩展性特征,这样之后按照用户的实际需求以及技术的发展状况,新功能模块能够被加入进去,现有的传感器也可以实现升级替换,这样一来整个系统就能一点点地去契合市场的动态趋势,始终为使用者提供高水准的智能健身监测服务逗号服务的质量始终保持在高水平状态,满足用户持续变化的预期。2.2系统功能2.2.1硬件功能选用STM32F103C8T6充当核心控制单元,数据处理与指令操作能力突出成为关键因素,此单片机呈现高性能、低成本以及低功耗的特点,并且ARMCortex-M3内核的运行频率能够达到72MHz,各传感器信息传递任务可被迅速执行,在这种实时性需求得以满足的同时诸多的通用定时器还有ADC通道等充沛外设资源发挥硬件支撑的作用,这有助于实现整个系统的高效率和稳定性。心率血氧模块若要实现对心率血氧数据的精确测量,高精度和稳定性属于必须要满足的要求,在人进行运动时身体是处于不断动态改变的状态中的,这时候该模块就得能实时并且准确地获取到心率变化以及血氧水平转变的情况,为了保障数据可靠,误差得被要求控制在很小的范围内。DS18B20温度传感器需要适配不同运动情境下的温度变化情况,在户外高温活动场景中,抑或室内健身那种略微让人感到不透气的热氛围下,都能够完成快速且准确的测温任务[13],为用户展开健康监测工作时带来有力的数据支撑效果。计步模块需要具备较高的灵敏度,能精确捕捉用户每一回的运动步幅,同时还要区分正常走路与跑步等差异化的运动状态下步伐展现的特点,避免发生漏记录或错误记录的情形,各个环节都需体现出较高的精准性与适应性。GPS模块实现快速定位与精准轨迹记录,为用户运动路线规划及数据分析提供支持。WiFi模块ESP8266具备稳定的无线连接能力和较强的抗干扰性。在运动过程中,用户可能处于不同的网络环境,模块要能快速连接到可用网络,并保证数据传输的稳定性和低延迟,确保采集到的数据能及时上传至云端,同时接收来自云端的指令和反馈信息。OLED屏幕的配备满足用户即时查看运动数据的需求,用户能清晰看到心率、步数等关键数据。实时同步最新的运动数据,为用户提供直观、便捷的交互体验。蜂鸣器作为报警装置为用户运动安全提供一定保障。当检测到心率异常升高、血氧含量过低等危险情况时,能迅速发出警报,为用户争取宝贵的处理时间。2.2.1软件功能数据远程传输与管理借助WiFi模块ESP8266,将传感器采集的数据稳定传输至远程服务器或云端平台,实现数据远程监控与集中管理。开发手机小程序或网页,为用户提供便捷远程管理界面,可实现登录注册、个人资料修改、实时数据展示、历史数据查询、运动轨迹查看等功能。支持阈值设定。2.3系统整体设计方案此系统以STM32F103C8T6单片机为核心,构建起一个高效的数据采集、处理与传输系统,其架构如图1所示:图1系统整体设计框架图在系统中各模块通过与STM32F103C8T6单片机的连接和协同工作,来实现设备的各项功能。心率血氧模块利用光电容积脉搏波描记法,将检测到的心率和血氧信号通过I2C接口传输给单片机;DS18B20温度传感器采用单总线通信协议,把测量的体温数据传输至单片机的GPIO引脚;计步模块基于加速度传感器检测人体运动的加速度变化,经信号处理后将步数信息传递给单片机;GPS模块通过串口通信,将获取的位置信息发送给单片机;ESP8266WiFi模块则负责实现设备的无线通信功能,它通过SPI接口与STM32F103C8T6单片机相连。单片机将处理后的数据发送给ESP8266模块,该模块再通过WiFi网络将数据上传至MQTT服务器;OLED屏幕通过SPI接口与单片机连接,用于实时显示采集到的心率、血氧、体温、步数、运动时长等数据;蜂鸣器连接到单片机的GPIO引脚,当心率异常、血氧异常或者体温异常时,单片机控制蜂鸣器发出告警声音。3系统硬件模块选型与整体电路设计整体系统硬件设计电路如图2所示:图2系统整体电路设计图3.1STM32F103C8T6单片机STM32F103C8T6是基于ARMCortex-M3内核的单片机,具备高性能、低成本特点。采用哈佛结构,指令与数据总线独立,配合Thumb-2指令集,指令执行效率高。这款单片机有64KB闪存用于存储程序,20KBSRAM作临时数据存储,48个GPIO引脚能灵活配置,可连接心率血氧模块、DS18B20、计步模块、GPS模块等传感器,还能连接OLED屏幕和蜂鸣器。同时集成USART、SPI、I2C等通信接口,方便与WiFi模块ESP8266通信。内置定时器用于精确时间控制,12位ADC可将传感器模拟信号转换为数字信号。它的工作原理是上电复位后加载启动代码初始化系统,随后执行应用程序。在本设计中,它作为核心控制单元,负责采集心率、血氧等数据,经处理后在OLED屏幕显示。依据APP设置的阈值,判断数据是否异常,异常时触发蜂鸣器告警,还通过MQTT协议将数据上传到服务器转发给APP。STM32F103C8T6单片机的实物与电路设计图如图3、图4所示。图3STM32F103C8T6实物图图4STM32F103C8T6电路设计图3.2ESP8266模块ESP8266模块相比其他模块具有低成本、低功耗、高集成度、体积小、支持多种工作模式的特点,通信距离在理想环境下可达上百米,能够满足一般智能健身设备与网络路由器之间的通信需求。它能够接收和发送Wi-Fi信号,实现数据的双向传输。模块内置了TCP/IP协议栈,负责处理网络通信中的各种协议,如HTTP、MQTT等。在本设计中,ESP8266模块负责将单片机的心率、血氧、运动时长、体温、GPS定位信息和步数等数据,通过Wi-Fi网络上传到MQTT服务器,MQTT服务器再将这些数据转发给APP,实现设备数据的远程实时传输,使用户可以通过手机APP随时随地查看自己的健身数据。ESP8266模块还可以接收来自APP的指令,再传给单片机。可以此设置阈值来判断是否出发声光报警等操作。ESP8266的实物与电路设计如图5、图6所示。图5ESP8266实物图图6ESP8266电路设计图3.3心率血氧模块智能健身设备中的心率血氧模块对用户的心率和血氧状况予以实时监测,它运用的是光电容积脉搏描记法(PPG),此方法在生物医学监测方面被广泛运用,属于非侵入式的检测手段,这项技术依靠血液吸收特定波长光线的特性来进行心率与血氧测量。人体内的氧合血红蛋白(HbO2)和还原血红蛋白(Hb)对于不同波长光的吸收表现存在差异,这一差异被心率血氧模块捕捉到之后,就会发射特定波长的红光与红外光到手指上,再对经手指反射或透射过的光信号强度变化子以探测,通过对这类数据加以分析,最后得出所要的血氧饱和度数值。光电二极管被设定用以接收反射光或透射光,之后将其转为电信号当心脏跳动时动脉血管会呈现周期性扩张与收缩,因而使血液中的血红蛋白含量发生相应变动,这样导致了反射或透射光强度跟随产生周期性变化,由此产生的经过周期性波动后的电信号就构成了所谓的光电容积脉搏波即PPG波,通过对PPG波的周期性变动情况的分析,心率血氧检测装置可以获取心率数据。一个完整的PPG波周期等同一场心脏跳动事件,只要对单位时间下的PPG波周期数量实施测定,便能够得出对应的心率参数值,至于血氧饱和度则需借助红光和红外光之间的吸收比例来计算其数值,心率血氧相关装置的外观与电路构造在图7与图8中体现明确。图7心率血氧模块实物图图8心率血氧模块电路设计图3.4DS18B20温度传感器DS18B20的核心功能是对用户体温进行精确测量,健康监测的重要数据支持也由此提供出来,其工作原理基于独特的单总线通信协议配合温度检测机制实现,在高精度、低功耗以及较强的抗干扰能力等方面表现出的优势获得广泛认同,内部结构上包含了多个重要部分,像温度传感器、温度转换电路、数据存储和控制逻辑之类的内容都包含其中。温度传感器是它的核心部件,采用了热敏电阻原理,能够将温度变化转换为相应的电阻变化。热敏电阻的阻值会环境温度发生变化,这种电阻变化通过内部的温度转换电路被转换为数字信号。温度传感器DS18B20使用单总线协议实施通信,通过一条数据线即可实现和主设备如单片机等之间的交互任务,通信之时主设备借助这条数据线向DS18B20传输用来转换温度的指令以及读取温度值的指令,然后DS18B20接到指令,遵照指示执行对应操作后将处理后的结果采用此数据线送回至主设备。此法有效简化硬件连接环节,在削减系统整体成本方面有着积极意义,而系统的可靠性与稳定性由此获得了显著提高,DS18B20温度传感元件具体的外部形态及其电路设计情况则可在图9及图10中观察见闻。图9DS18B20实物图图10DS18B2电路设计图3.5STP101M计步模块STP101M计步模块被用来统计用户的步伐数量,这一模块带有3D计步功能,低能耗和紧凑体积是它最为显著的特性,内部配备了高精度振动感应器、3D步伐计量单元以及迅速处理的核心部件,运行过程中功耗低至12uW,尺寸大小仅为9x9mm,体积显得十分紧凑,设计所需的技术规范得到了较佳的实现,图11与图12显示了STP101M模块的实际外观样貌及其电路设计方案。图11STP101M实物图图12STP101M电路设计图3.6GPS定位模块GPS模块的灵敏度相对较高,功耗表现较低且体积较为紧凑[14],位置数据能够实时获取并且运动路径也可记录,定位能力依赖于卫星信号的接收与分析过程进行,与之相关的卫星导航原理以及信号特性共同起到了作用。NEO-6M是一种高性能的GPS模块,该模块的工作方式在于接收由GPS卫星所发布的信号从而达到定位的作用,这些位于太空中的卫星不停向外传播包含自身定位与时间等数据的信息波,NEO-6M的内置天线则主要承担采集这类信号的功能,并对获取的波段实施放大、滤波等一系列处理步骤后,这些任务才交给模块内的集成电路来解码分析,集成电路依据接收到的卫星到模块所需传输周期进行评估后与己知的卫星位置信息杂糅在一起,最终依靠三维角度测量法得出此模块在地球三维空间上的精确点位--也就是定位其经度值、纬度范围以及海拔高低。NEO-6M模块具备一系列辅助性功能,像是经由串口或其他接口与其他设备之间进行通讯工作,还可以把定位相关的数据传递给外部装置,用来实现接下来的加工应用,在某种程度范围内它确实适应于各类不同的环境下与信号情况中,通过特有的算法和电路设计优化手段对定位精准程度以及稳定性方面给予提升,当用于智能型健身器械时,GPS这块则可以实现运动路径记录并标定所在地,来收集用户所需的运动信息进而辅助规划相关体育方案,而有关ENO-6M产品具体实物状况以及电路安排,则能够从图13、图14看到对应呈现。图13ENO-6M实物图图14ENO-6M电路设计图3.7蜂鸣器模块蜂鸣器控制电路在智能健身设备中起着关键的报警作用,当用户的心率、血氧或体温出现异常时,能够及时发出警报,提醒用户注意健康状况。其电路设计基于STM32F103C8T6单片机的GPIO控制原理,通过控制蜂鸣器的驱动信号来实现报警功能。蜂鸣器的实物与电路设计如图15、16所示。图15蜂鸣器实物图图16蜂鸣器电路设计图3.8OLED显示电路OLED(有机发光二极管)显示屏以其自发光、对比度高、视角广、响应速度快等优点,成为智能健身设备中数据显示的理想选择。OLED显示电路主要负责将智能健身设备采集到的心率、血氧、运动时长、体温、步数等数据直观地呈现给用户。它的实物与电路设计如图17、图18所示。图17OLED显示屏实物图图18OLED显示屏电路设计图4软件程序实现4.1开发环境本设计选用了keil5软件来展开开发工作,作为一款常用的嵌入式系统开发集成环境(IntegratedDevelopmentEnvironment,简称IDE),功能和优势都非常突出,为使用者带来了不小便利,这款平台支持多种半导体厂商所出的微控制器芯片,例如ARMCortex-M系列、Cortex-R系列及8051芯片家族等多种类选项,在开始项目创建的时候能够轻松找到所需的芯片类型清单,使得一旦选好具体模型之后,很多编译参数和初始启动代码都将自动配置到位,无形之中节约了大量原本要花在设置调整上的时间和精力;调试部分也不仅在硬件设备层面存在手段,还在软性模拟仿真中提供丰富手段,双双结合形成一个高效路径,助力更精确快速地捕捉程序内可能存在的各种故障和错误;自带丰富的功能库函数以及实例可被便捷调用也加快了推进步骤,与此同时技术社区储备了大量的专业文档与交流讨论方向则能够很好地丰富知识来源为工程师提供更多灵感素材。4.2主程序设计本次设计需要实现心率血氧、体温、步数、定位的采集,使数据在OLED屏上显示,并通过WiFi模块上传数据到服务器,同时能够根据上层下发的阈值参数做出反应,一旦异常及触发警报。系统实现的流程如图19所示。图19主程序流程图4.3心率血氧采集程序心率血氧模块用于用户使用中采集用户的心率血氧等数据,模块通过特有的信号调理技术和算法可以直接输出相关参数,降低了系统的复杂程度,通过串口即可和模块通信,并直接获得测量结果。流程图如图20所示以及部分示例代码如图21所示。产品的相关特性:1)可检测心率、血氧、呼吸率三项参数2)数据稳定、一体化集成红光红外光双LED3)高灵敏度的光传感器。4)13*10mm超小体积。5)超低工作功耗。6)3-5V灵活的电平接口。7)易于使用的UART接口输出。图20心率血氧程序流程图图21心率血氧部分示例代码4.4DS18B20温度采集程序DS18B20温度传感器驱动利用单总线通信协议,其初始化函数需实现总线复位、设备识别等操作。程序开始后,首先执行DS18B20_Init函数对DS18B20的IO口进行初始化,该函数中先使能了PORTG即GPIOA的时钟,接着配置GPIOA的Pin_8引脚为推挽输出模式,速度设置为50MHz,并将该引脚置高电平,然后调用DS18B20_Rst函数对DS18B20进行复位操作,最后通过DS18B20_Check函数检查DS18B20是否存在。若检查结果判断DS18B20不存在,则程序结束并提示设备不存在;若DS18B20存在,便会调用DS18B20_Get_Temp或DS18B20_Get_Temp2函数获取温度值。在这两个获取温度值的函数中,先分别调用DS18B20_Start或DS18B20_Start2函数开始温度转换,之后再次对DS18B20进行复位,接着检查其响应情况,再依次发送跳过ROM命令0xcc和读取温度命令0xbe,随后读取温度数据的低字节TL和高字节TH。根据读取到的高字节TH的值判断温度的正负,若TH大于7则温度为负,需对TH和TL进行取反操作,否则温度为正。之后将高字节TH左移8位后与低字节TL相加,再将结果乘以0.625进行转换得到实际的温度值,最后根据之前判断的温度正负情况返回相应的温度值,至此程序结束并输出温度值。程序流程图和部分示例代码如图22、图23所示。图22温度采集程序流程图图23温度采集程序部分示例代码图24计步程序流程图4.5计步模块驱动程序计步模块程序部分代码声明了
externu16speed;
和
externu32pulse;我们用脉冲数来代表步数,在
EXTI1_IRQHandler
函数(外部中断1的中断服务函数)中,执行
pulse++
操作,即每当触发外部中断1时,pulse
变量的值就会增加1。在计步器实现中,通常会利用传感器(如加速度计等)产生的脉冲信号来计数,每检测到一个代表一步的信号,就会触发中断并增加步数计数。它的程序流程和部分示例代码如图24、图25所示。图25计步程序部分示例代码4.6GPS模块驱动程序GPS模块驱动基于NEO-6M模块,程序主要是对GPS数据进行解析,并将解析所得的UTC时间转换为中国时间。其核心部分由三个函数构成,分别是comma_split、GNRMC_Parse和UTCToChina,这些函数均在check_gps函数中被调用。程序启动后,便进入check_gps函数。首先在传入的buf中查找$GPRMC字符串,检查GPS数据的有效性。若没有找到该字符串,则流程直接结束;若找到了,就继续执行后续操作。接下来进行GNRMC数据的提取,把包含$GPRMC的数据段单独分离出来,截断数据后添加换行符\r\n,再把提取的数据复制到string数组中。调用GNRMC_Parse函数对提取的数据进行解析。在此过程中,先计算字符串的长度和逗号数量,若逗号数量不为12,则返回错误并结束流程;接着检查起始字符是否为$GPRMC,若不是,同样返回错误并结束流程;再检查结束字符是否为\r\n,若不符合也返回错误并结束流程。当这些条件都满足后,依次提取并解析定位状态、经度、纬度。倘若在解析过程中出现如提取数据失败等错误情况,就返回错误并结束流程;若解析成功,便进入下一步。它的程序流程和部分示例代码如图26、图27所示。图26GPS程序流程图图27GPS程序部分示例代码4.7ESP8266程序设计ESP8266模块用来实现设备网络连接与数据传输。usart1_Init对USART1串口初始化,开启相关时钟,配置GPIO引脚,进行NVIC中断设置,设定串口参数并使能相关中断。USART1_IRQHandler在接收非空时读取数据存入缓冲区,总线空闲时设置帧结束标志。ESP8266_Init使能时钟、配置复位引脚、初始化串口并复位模块,ESP8266_Rst直接控制复位引脚,ESP8266_AT_Test发送恢复出厂指令测试模块。ESP8266_Net_Mode_Choose设置工作模式,ESP8266_CloseBack关闭回显,ESP8266_JoinAP连接外部WiFi,ESP8266_Enable_MultipleId控制多连接模式,ESP8266_Link_Server连接服务器。ESP8266_UnvarnishSend设置透传模式,ESP8266_SendString依透传情况选择发送方式。此外还有一系列MQTT相关函数,用于配置属性、设置ID、连接服务器、订阅发布消息、等,MQTT_SendString可在指定主题发送消息。程序流程及部分代码示例如图28、图29所示。图28MQTT程序流程图图29蜂鸣器部分示例代码4.8MQTT通信程序MQTT通信程序负责实现智能健身设备与MQTT服务器之间的数据上传和交互,确保设备采集的数据能够准确、及时地传输到服务器,并接收服务器下发的指令。ESP8266_STA_MQTTClient函数用于实现ESP8266模块作为STA模式的MQTT客户端功能,首先通过ESP8266_AT_Test函数测试模块对AT指令的响应情况,接着使用ESP8266_Net_Mode_Choose函数将模块网络模式设为STA模式,并通过ESP8266_JoinAP函数使其连接到由User_ESP8266_SSID和User_ESP8266_PWD指定的Wi-Fi网络,连接成功后调用ESP8266_CloseBack函数关闭回显功能,然后利用ESP8266_MQTTUSERCFG函数配置好MQTT客户端的用户信息,包括客户端ID、用户名和密码,再通过ESP8266_MQTTCONN函数连接到由User_ESP8266_MQTTServer_IP和User_ESP8266_MQTTServer_PORT指定的MQTT服务器,最后使用ESP8266_MQTTSUB函数订阅User_ESP8266_MQTTServer_Sub_Topic指定的MQTT主题,从而完成整个配置和连接过程,为后续MQTT数据交互做好准备。程序流程及部分示例代码如图30、图31所示。图30MQTT程序流程图图31MQTT部分示例代码4.9蜂鸣器报警程序蜂鸣器报警程序对于智能健身设备而言,是确保使用者安全的关键部分,核心之处体现在阈值触发机制上,在设备运行过程中,系统会对心率、血氧还有体温等数据执行实时监测,那些数据一旦超出正常范围界限,报警程序就会被触发启动,具体的报警流程及相关代码片段可以参考图32和图33。图32蜂鸣器报警流程图图33蜂鸣器部分示例代码图57OLED显示程序流程图4.10OLED液晶显示程序通过LCD_WrDat和LCD_WrCmd函数实现向OLED写数据和命令,基于SPI通信方式操作引脚电平逐位传输。LCD_Set_Pos用来设置显示起始位置。初始化函数OLED_Init先配置GPIO引脚,然后复位OLED,再写入一系列命令设置显示参数,最后清屏并设置初始显示位置。程序流程如图57所示,OLED显示页面的部分代码如图58所示。图58OLED显示示例代码图34云平台接入流程图5云平台与小程序开发设计5.1云平台接入系统用到的物联网云平台是通信猫云平台。该平台是一款免费的物联网MQTT平台,采用标准MQTT协议实现接入,具备设备管理、数据查看、设备模型数据查看等功能,同时提供数据存储与历史数据查询服务,支持指令的接收与下发至嵌入式端。在实际应用中需在云平台完成一系列配置操作以实现系统接入。首先要在云平台进行必要的配置,之后通过硬件与云平台的交互,实现采集数据的上传与存储,最终达成硬件与APP的通信。整个云平台接入流程如图34所示。5.1.1添加产品和设备注册好云平台账号后,就可以添加产品信息确定产品名称,选择通信模式为WiFi,创建产品后继续在产品中添加设备信息,一个设备对应的是一套硬件,确定好数据的主题和命令主题,保障数据能够接受和发送。在设备下继续添加设备模型,一个监测数据对应一个设备模型,需要注意的是,这里设置的标识符要和代码中的标识符保持一致。本设备用到的设备模型如图35所示。图35添加设备模型图36云平台数据查看5.1.2数据查看将设备上电,云平台与ESP8266模块成功连接后,在设备模型中可以查看实时数据,如图36所示。5.2小程序功能模块设计在设计小程序的功能模块时,以用户的健身需求和使用场景为中心,以便提供便捷且全面的健身服务,其中登录/注册部分属于关键所在要求每个使用者必须进行注册并登录,这一过程对输入的信息会开展核实工作,旨在确保其准确无误以及独一无二,当登录成功之后,系统会依据登录信息给予专属化服务,好比展示用户的个人详情以及过去运动经历等内容。个人资料编辑区支持用户进行身高、体重、年龄、性别和健身目标等个人信息的补充或者修改,而该类数据对于小程序去制定针对性健身指导还有锻炼规划非常重要,基于自己的情况,用户可以对这些资料进行灵活更改,保证各项服务贴合实际状况;实时数据显示板块借由智能健身装置的即时通讯功能,同步收集如环境温度、行走步数、心脏每分钟跳动次数、血液中氧气的饱和度以及身体活动时间长的内容,并在小程序界面显示出来,让用户可以准确了解自身的运动状态以及相关的身体参数,方便他们在运动的时候进行即时调整;运动路线追踪组件则是通过智能装备内的GPS定位设备,在人做体育活动的时候追寻行进而产生的踪迹,同时,小程序也能接获相应的位置信息,在地图上呈现具体的路线图形,让人们可在做完活动后回顾整个进程细节;要是监测结果超越设置了的心率,血氧浓度以及体温的安全范围数值,警告提示就会出现以提示注意。图37小程序功能架构5.3界面设计与交互5.3.1首页界面在首页中,有两个导航键,分别是“首页”和“我的”,首页放置了广告轮播,公告信息栏,“我的”则是相关数据的查询设定等入口。界面设计如图38、图39所示。图38首页图39“我的”页5.3.1登录/注册界面当用户点击“登录”按钮时,系统会验证用户输入的账号和密码,如果验证通过,会根据用户的登录信息,为用户提供个性化的服务,如显示用户的个人信息、历史运动数据等。若没有账号用户可以点击“去注册”按钮,会跳到注册页引导用户填写注册信息。注册成功后,系统会自动跳转到登录界面,用户可以使用新注册的账号进行登录。界面设计如图40、图41所示。图40登录页图41注册页5.3.3个人资料界面用户点击进入个人资料后,会出现多个输入框,用户可以修改相应的信息。修改完成后,点击“提交”按钮,系统会将新的信息保存并更新界面上的显示内容。界面如图42所示。图42个人资料修改页图45运动轨迹回显页图43实时数据查询页图44历史数据查询页5.3.4实时/历史数据查询界面用户点击进入实时数据展示界面后,界面会显示当前的数据,进入历史查询界面,可以根据时间起止进行查询。界面如图43、图44所示。5.3.5运动轨迹回显界面用户点击进入运动轨迹回显后,可以看到当前的位置以及运动轨迹。界面如图45所示。5.3.6阈值设置及告警界面用户点击进入阈值设置界面后可以对心率、血氧、体温进行阈值设置,超出阈值小程序会给出告警信息。界面如图46、图47所示。图46阈值设置页图47告警信息页6系统优化策略6.1硬件优化STM32F103C8T6单片机作为核心被选用为主控模块的控制单元,具有高性能、低耗能并且成本易接受的特性,其配备的丰富外设端口能够适应系统对多种传感器信息收集及处理的要求,类似的它的运行时钟频率能达到72MHz极限,具备嵌入式的64KBFlash存储器与20KBSRAM资源条件,在此情形下单片机处理密集型操作的同时执行系统功能呈现出高度稳定的状态,还有充足的能力去应对接踵而至的多线程计算环节的挑战任务。心率血氧模块采用MKSSPO2_BLE模块,内置高灵敏度的光传感器,数据稳定,一体化集成红光红外光双光LED,工作功耗超低,使用3-5V灵活的电平接口,易于使用UART接口输出。使用红外光和红光技术精准测量用户的心率和血氧饱和度,并把采集到的数据实时传输给单片机。选用DS18B20模块用来测量用户体温是因为DS18B20具有体积小,精度高,抗干扰能力强等特点,而且DS18B20还支持单总线通信,它能把测量到的体温数据直接传输给单片机,测量范围从-55℃到+125℃,精度可达±0.5℃。计步器模块选用STP101M3D计步器,这款模块具有体积小,功耗低的特点,输出接口采用脉冲输出的方式,方便与系统进行连接。STP101M集成了G-传感器与微控制单元(MCU),基于3DMEMS传感器技术,结合高精度算法,能够实现任意方向上的精确步数统计,计数分辨率可达1步,在匀速行走状态下,步数统计误差控制在±3%以内。u-bloxNEO-M6系列定位模块于定位导航方面有着卓越展现,其高度集成的GPS模块具备为诸多设备提供精准位置信息的强大能力,在空旷环境之中定位精度竟能达到约2.5米,这对车辆导航、户外运动装备以及无人机这类对精确定位需求偏高的场景而言非常合适,该模块的低功耗特点可有效延长设备电池的工作时长,手持式这类能耗敏感装置会特别受益于此,利用串口这种通信端口同主控芯片相连并传输定位数据的操作方式相对简便,这给整个系统整合与开发工作增添助力。WiFiESP8266模块是系统通信的核心部件,单片机处理完成的数据靠它上传到云平台,同时接收云平台发出的控制命令,此模块对802.11b/g/n协议可提供支持,因有着较高的通信速率便能够满足系统对于数据传递实时性的诉求,在进行设置时通过串口连接单片机实现操作简便且易于使用的特点。6.2程序优化各传感器模块依据对应的通信协议来确保数据能够准确及时地被传输至单片机,针对各类不同的传感器需编写各自的驱动程序用于收集数据,心率血氧模块内部靠模数转换(ADC)协议将感应到的人体光电容积脉搏波信号变为数字信号,方便后面进行处理分析操作而设置DS18B20温度传感器运用单总线协议完成初始化、温度转换以及数据读取等行为,大幅削减了操作量。计步模块则是依靠基于加速度计原理的协议来进行数据采集任务;而GPS模块按照全球定位系统(GPS)协议接收数据之后,还要按照其中如伪距测量、载波相位测量等计算规则算出来其自己的地理坐标包括经度与纬度的数据被判读。6.3交互界面优化搭建配套小程序实现设备的远程交互,为用户提供便利的使用体验,以及舒适的健身服务。在小程序设置多个板块供用户查询实时数据、历史数据、参数阈值、轨迹回显和个人资料编写等,丰富界面设计,增加用户体验感。7系统功能测试7.1功能测试将硬件接线全部接好,给设备上电,查看各个模块的功能显示是否正常。设备的整体接线如图48所示。图48设备接线图上电之后先对OLED的功能进行测试,如图49可以看出OLED屏能够正常显示出心率、血氧、步数以及体温。通过按键可以切屏显示运动计时和经纬度,如图50所示。图49OLED屏显示图50OLED屏显示连接小程序,设定参数阈值进行测量,参数阈值如图51所示。当测量数值超过设定阈值蜂鸣器正常响应,小程序端告警信息正常发布,如图52所示。图51阈值设定图52告警信息进行多段测试后查询实时数据和历史数据均正常显示如图53、图54所示。图53实时数据查询图54历史数据查询最后带着设备在户外进行轨迹回显测试,测试结果如图55所示,满足设计要求。图55运动轨迹回显最后打开云平台查看数据,如图56所示。图56云平台数据查询7.2测试结论经过实物上电及上电后小程序和云平台的测试,OLED能够正常显示个监测模块监测到的数据,各模块都能正常工作,小程序端能够及时接收数据并进行告警,云
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2027年商贷借款合同抵押合同二篇
- 2027年远期结售汇合同二篇
- 2027年买房送车合同二篇
- 合规转利润:降本增效全指南(2026)《GBT 36407-2018机械应力分级锯材》
- 合规转利润:降本增效全指南(2026)《GBT 36096-2018信息技术 学习、教育和培训 虚拟实验构件服务接口》
- 锂盐田工岗前任职考核试卷含答案
- 摇床选矿工安全生产规范模拟考核试卷含答案
- 废矿物油再生处置工诚信竞赛考核试卷含答案
- 印刷操作员岗前强化考核试卷含答案
- 家禽繁殖员安全操作模拟考核试卷含答案
- 2026秋教科版(新教材)小学科学六年级上册(全册)教学设计(附目录p276)
- 第1课《我是什么样的人》课件心理健康教育四年级上册(北师大版)
- 微信小程序开发实战(第2版)全套PPT完整教学课件
- 营销策划 -教育-华与华-“得到”品牌战略提报方案
- 高考语文复习-文言文专题训练《三国志曹操传》
- 深井泵说明书
- GB/T 6188-2017螺栓和螺钉用内六角花形
- GB/T 451.2-2002纸和纸板定量的测定
- GB/T 1690-1992硫化橡胶耐液体试验方法
- 南京农业大学农业设施工程学第一章 设施农业建筑材料2013课件
- 江西南昌大学跨境教育中心国际教育学院管理人员招考聘用(全考点)模拟卷含答案
评论
0/150
提交评论