您现在的位置是:首页 > 单片机

基于SPCE061A单片机的便携式多功能实时生理参数监测仪

2020-05-29 05:05:50

前言

  本文利用凌阳单片机设计了便携式多功能实时生理参数监测仪,具有播放MP3的功能,可达到提高身体锻炼质量的效果。
系统硬件设计

  系统以单片机为核心,配置了各种集成传感器,体积小巧。由于采用了微型封装的芯片及元器件,使连线变短,减少了通信接口,从而提高了整机工作的可靠性。系统硬件结构如图1所示。

  SPCE061A单片机

  SPCE061A单片机内部集成了ADC、 DAC、32KB的Flash和2KB的SRAM,以及液晶驱动模快。利用该单片机作为处理芯片,使得模、数信号之间的转换以及液晶驱动可以通过软件来实现,避免了外界信号的干扰,提高了系统的 
稳定性及抗干扰能力。

                        

                                            图1 系统硬件结构框图

  DS18B20温度传感器

  DS18B20温度传感器采用12位存储温度值对应的数字表示形式,理论精度可达到0.05℃ ,能实时、精确地检测到人体温度的变化,可通过单片机在液晶显示器上显示温度。

  DS18B20与单片机的典型接口设计

  可以采用外接电源与寄生电源(即从数据线上得到供电电源)两种方式供电,如图2所示。

  使用DS18B20的注意事项

  (1)DS18B20从测温结束到将温度值转换成数字量需要一定的转换时间,这是必须保证的,不然会导致转换错误,使温度输出总是显示85℃。

  (2)在实际使用中发现,应使电源电压保持在5V左右,若电源电压过低,会使所测得的温度与实际温度出现偏高现象,经过试验发现,一般在5V左右。

  (3)较小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20与单片机间采用串行方式传送数据,因此,在对DS18B20进行读写编程时,必须严格保证读写时序,否则将无法读取测温结果。

  (4)在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦DS18B20接触不好或断线,当程序读该DS18B20时,将没有返回信号,程序进入死循环,这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视。

  ZD-3微震动传感器

  ZD-3微震动传感器是一种有源的高灵敏度微功耗检测元件,以正弦波形式输出,可利用74LS14施密特触发器将其转换成脉冲波,输入单片机检测高电平,能实时记录跑步者或锻炼者的步数,进而得到锻炼者的能量损耗,以利于更有效地进行锻炼。

  HK-2000A脉搏检测传感器

  HK-2000A传感器是一种主要用在运动、健身器材上检测脉搏的传感器,以脉冲波的形式输出。当脉搏波动一次时输出一正脉冲,可将其输出信号输入单片机,检测高电平,记录脉搏。

  OCM4X8C液晶显示模块

  OCM4X8C液晶显示模块采用128×64点阵的汉字图形液晶显示模块,可显示汉字及图形,内置国标GB2312码简体中文字库(16×16点阵)、128个字符(8×16点阵)及64×256点阵的GDRAM绘图区域。可与CPU直接接口,提供8位并行及串行连接方式连接微处理器。该液晶显示模块具有多种功能:光标显示、画面移位、睡眠模式等。配合1×4键盘可实现参数设置、浏览和修改分析结果,以及进行各种人机对话,能实时显示 
各种生理参数值。

             

                             

;                              图 2 寄生电源供电 报警模块

  利用凌阳单片机内部的语音功能,采用软件控制,当参数超过阈值时发出报警信号,同时输出一高电平,用以驱动发光二极管,这样更容易提醒锻炼者。

  呼吸气流温度检测模块

  为了减少热惰性带来的误差,准确地测量呼吸气流温度的变化,要求热敏元件热容量越小越好,其位置位于呼吸道中气流速度最大的地方。因此,在电路中选用BLTS101 PN结温度传感器(热响应时间τ<0.2s)。恒流源向PN结提供100μA的恒定正向电流,则PN结的正向压降仅随温度T的变化而变化,该电压信号由前置放大器放大后,通过一个4.84Hz低通滤波器,再变换为数字信号送入单片机。

  系统软件设计

  软件设计采用模块化结

构和菜单操作。利用C61(类似于C语言的凌阳单片机编程语言)及汇编语言编写软件,在液晶显示屏上实时显示各种生理参数数据,数据存储采用Flash, 这样,在更换仪器电池时不会丢失数据。所有测量参数均可设定上、下报警阈值,当任一参数超过阈值时都能发出声、光报警。根据设计的需要,可以利用消声键停止报警。仪器进入工作状态后,主程序首先完成对液晶显示屏的初始化,然后进入检测状态。由于呼吸阻抗信号具有基线漂移现象,因此,在软件设计中采用一种变化中值检测法对基线进行校正,具体方法是把上一次呼吸周期内的中值点作为本次呼吸周期的检测点,这样即可克服在正常检测电压范围内的基线漂移现象所带来的漏检情况。 

  数据采集部分

  生理参数的实时数据采集主要通过传感器进行。在测量人体温度时,由于体温在锻炼时的变化比较缓慢,因此,主要运用软件定时中断的方法进行检测。在检测步数和脉搏等参数时,主要记录的是频率,只需采用软件计数就可以,根据检测到的高电平,计数器进行自加运算,从而记录频率。

  参数阈值设定

  
        由于正常情况下人体温度在36.5℃左右。因此,设定温度阈值的初值为36.5℃,以0.25℃为步进量,可以用上下键增减,每按一次按键,就递增或递减0.25℃,直到达到锻炼者想要设定的阈值为止(在35℃~42℃之间)。其它参数的设定情况类似。

  液晶驱动程序设计

  系统显示功能的实现,实际上就是对OCM4X8C液晶显示模块的驱动编程。本文按照结构化的编程思想,利用C61语言将上翻、下翻、返回和确定等按键功能编成子函数,这样便于主程序的调用。限于篇幅,液晶驱动程序不在此详述。

  结语

  本方案 轻便小巧,适合室内、室外锻炼时使用。同时,如果能将蓝牙模快集成到该仪器中,可以实现这些生理参数的无线传输,实现对老人或病人的远程看护。