历史上的今天

今天是:2024年09月03日(星期二)

正在发生

2020年09月03日 | 基于MSP430的便携式运动量及生理参数监测仪设计

发布者:学海星空 来源: elecfans关键字:MSP430  便携式运动量  生理参数监测仪 手机看文章 扫描二维码
随时随地手机看文章

  随着我国经济和医疗卫生事业的快速发展,人们对自身的健康状况越来越关注,其健康理念已经逐渐从单纯“预防疾病”向“改善和促进健康”转变——即由“早发现、早诊断、早治疗”的二级预防向“利用各种健康促进手段来改善健康状况”的一级预防转变。与此相适应,智能化监护仪器作为健康管理和促进的重要手段已经成为一个新兴的应用领域和重要市场,每个人都可以通过一定的健康促进手段来对个人进行“健康管理”。本文所述的便携式运动量及生理参数监测仪就是一种可用于个人健康管理的智能化仪器,其设计理念和应用背景充分体现了我国新兴的健康管理产业的基本发展趋势。


  系统设计

  便携式运动量及生理参数监测仪能实时记录和监测人体的运动数据,并定量评估人体运动量和体能消耗程度,通过以卡路里为单位的热量形式实时显示出来;监测仪还能够实时监测人体血氧饱和度、心电信号、心率、体温等重要生理参数,从运动量和生理参数两方面评估体育锻炼或康复训练中的运动是否过量,并根据运动量及生理参数的数值是否在安全范围来决定是否进行报警提示。因此该监测仪既能保证运动效果,又可以有效预防因“过量运动”导致意外的发生。


  如图1所示,便携式运动量及生理参数监测仪是一个典型的单片机应用系统,在系统设计中应注意满足微功耗、微型化及可靠性的要求。便携式运动量及生理参数监测仪的现场使用性要求其电流消耗小,以降低系统的功耗,延长电池使用时间。因此,微功耗设计是系统设计的重要内容。微功耗设计的核心是最小功耗系统的设计,它不仅能降低系统功耗,还使系统具有较低的电磁辐射和较高的可靠性。本监测仪的微功耗设计具体包括系统的运行功耗分析、低功耗设计、功耗管理以及低功耗的软件设计。

  具体而言,便携式运动量及生理参数监测仪需满足以下要求:

  ● 能以高精度采集和存储人体的运动信号、生理信号,并通过相关算法对数据作相应处理;

  ● 具有友好的中文人机操作界面,能够方便地设置和操作;

  ● 能够与PC机方便地交换数据,并可通过PC机上的配套软件进行后续数据分析和处理;

  ● 监测仪能方便地佩带于人体,重量轻,体积小,1~2节电池供电。


  如图1所示,运动传感器、数字式血氧模块、心电模块以及信号调理单元构成了系统内的前向通道,人体的运动数据和血氧饱和度、心电、心率等生理参数的数据通过前向通道进入中央控制单元。


  中央控制单元采用了具有超低功耗的16位微控制器MSP430F149(以下简称F149),其片内集成有8通道12位精度的A/D转换模块、60kB的FLASH ROM和2kB的数据RAM,且具有硬件乘法器和2个串行通信接口。采用F149作为本系统的中央控制单元,可以在无需片外A/D芯片的基础上实现运动信号及各种生理信号的采集、接收和处理。提升了系统的先进性、可靠性和集成度,能有效降低系统设计的难度,较大程度提升系统的整体性能。


  数据存储单元用于存储系统内的运动数据、血氧饱和度及心电信号等数据,需要根据存储容量、功耗、接口形式、存取速度、体积等要求选择合适的数据存储芯片。


  显示与键盘接口单元提供了设置和操作本监测仪的键盘接口,并通过图形点阵液晶实现汉字功能菜单显示、生理参数的数值显示和波形回放等功能,为系统提供友好和智能化的人机交互界面。


  时钟单元为系统提供实时的时间坐标,进而能为数据的存储提供可参照的起始和结束时间点。


  数据通信单元提供本监测仪与PC机之间的数据交换手段,既可以是串行、USB、TCP/IP网络通信等有线接口方式;又可以通过无线收发芯片组建一个固定频点下(如433MHz)的无线通信网络,或者是基于GPRS的远程无线传输网络。


  电源单元为监测仪内的模拟和数字电路部分分别供电,提供不同的工作电压和一定的电源分区管理功能,其输出质量直接关系到系统的精度和可靠性。


运动监测模块

  运动监测模块完成人体运动信号的输入、放大和滤波,主要包括运动传感器和信号调理单元。


  运动传感器一般可以有两种形式:单维的振动传感器和三维的运动传感器。前者如微振动传感器,是一种有源的微功耗振动检测器件,一般以正弦波形式输出,可将其转换成脉冲波形后输入微控制器。微控制器通过检测高电平来实时记录跑步者的步数,并以此计算运动者的体能损耗。


  更精确的人体运动信号可以通过三维加速度传感器获得。加速度传感器作为近十几年才发展、成熟起来的运动传感器,其不仅能够通过测量运动能耗来评估运动量,还能通过测量加速度来反映人体运动的强度和频率,能够把人体的各种运动状态转换为不同幅度的电压信号。其安装简便,体积小,测量简单。三维加速度传感器是本监测仪前向通道中的理想运动传感器元件。


  如图1所示,信号调理单元的作用是将传感器输出的微弱电信号(通常为电压信号)不失真地放大或调整到能够直接由A/D转换模块采样的幅度足够的电压信号,且信号调理单元对其前级的传感器和后级的A/D转换模块的影响要尽可能的小。


  信号调理单元具体包括信号放大电路、滤波电路及精密电压基准电路等,主要实现信号的放大、整形及滤波等功能。信号调理单元中的信号放大电路应具有较强的共模抑制和差动放大能力,实际共模抑制比较高,输入阻抗较大,失调和温漂较小,这些都能有效减小信号放大电路对传感器输入信号的影响,减少温度误差。同时信号调理单元中的滤波器应采用同相结构的精密运放和RC网络组成高阶有源滤波器,这样既能提供一定的增益和缓冲作用,又可以减小对后级尤其是A/D转换的影响。


  信号调理单元是本监测仪中模拟电路的主要部分,其调整后信号的精度直接决定着系统内可采集到的人体运动信号的精度,其电路结构和复杂程度也直接关系到系统的整体功耗和体积。因此信号调理单元的设计更要符合微功耗和微型化设计要求,能够在单电源下工作,其信号放大范围要与A/D转换所需的信号幅度一致,在电路结构上应力求简单,集成度要高,不宜采用分离元件太多的设计方案。


生理参数监测模块

  从系统整体设计和降低设计难度的角度,血氧饱和度、心电信号、心率、体温等人体重要的生理参数可以通过市面上已有的一些功能模块直接获得而不必自行设计。如目前市面上已有供二次开发使用的监测血氧饱和度、心率等的集成功能模块(简称为数字式血氧模块),其内往往已集成了信号处理内核(如Dolphin公司OEM-701模块),这种数字式血氧模块能够通过探头直接检测人体的血氧饱和度、心率、体温等数据,支持串行接口的输出方式。


由于心电信号的检测电路一般都较为复杂,因此也可以采用市面上已有的心电信号检测的功能模块供二次开发使用。具体如BT007七通道心电模块,能输出同步七通道心电波,具有四级程控增益,三级滤波方式(诊断方式、监护方式和手术方式),具有起搏脉冲抑制功能和导联脱落报警功能,其检测的心电信号结果也可以通过串行接口输出。


  本监测仪的中央控制单元F149微控制器内包含有两个串行通信接口—USART0和USART1,故可以直接接收数字式血氧模块和心电模块输出的血氧饱和度、心率及心电信号的数据。这种直接采用已有集成式功能模块进行二次开发的设计思路,可以有效降低本系统的设计难度和提高系统集成度。


数据存储单元

  由于监测仪需要存储大量的现场数据,对数据存储容量的要求很高,存储密度较低的EEPROM、SRAM等均不能满足要求。ATMEL公司的AT45系列SPI串行接口FLASH存储器的接口电平与F149相匹配,硬件上能直接连接。采用SPI串行三线接口,减少了I/O资源占用,能有效降低系统所占空间,提高系统可靠性,降低开关噪声。AT45系列存储器芯片的内部还包括2个SRAM类型的数据缓冲区,每个缓冲区的容量均与主存储器阵列中一个页面的存储容量相同。这样即使在存储器被烧写的过程中也允许接收数据,这就为数据存储的实时性和可靠性提供了硬件保证。


  本监测仪中也可以采用并行的FLASH存储器,如三星电子的K9xxGxxxxM系列NAND FLASH芯片,能够提供4224M位的存储容量。这种高存储密度、大容量的并行FLASH数据存储芯片特别适用于本系统需要存储大量实时的运动数据、生理数据的应用环境。


数据存储程序

  数据存储程序设计时要重点考虑微功耗和实时性要求,即数据存储程序应是基于中断程序结构的,通过A/D中断服务子程序来实时采集和存储来自于运动监测模块的三维运动数据,通过2个串行通信接收中断服务子程序来分别接收和存储来自于血氧模块和心电模块的血氧饱和度、心率、体温和心电信号等生理数据。这些运动和生理数据首先由F149微控制器放置于其内的2KB数据RAM内,并通过页写入方式存储到FLASH数据存储芯片中。


  由于来自于运动监测模块的三维运动数据是多通道、连续变化的大量数据,考虑到数据采集过程中的微功耗和实时性要求,对F149的A/D转换模块采用序列通道单次转换模式较为合适,其时序控制简单,灵活性高。同时采用TImer_A定时器为A/D转换模块定时,使其工作在增计数模式,其定时时间对应于采样频率。


  用于接收生理数据的串行通信接收子程序也是基于中断响应模式的,由32768Hz的时钟晶振提供串行通信的时钟信号源,通过2个串行通信接收中断的响应子程序分别将接收到的血氧饱和度、心率、体温和心电数据填充到系统的数据RAM中。


  在利用FLASH数据存储芯片存储本系统不同类别的大量数据时,需要注意F149内数据缓冲区的划分、数据存储芯片内不同数据区域的划分。同时,在系统的主程序中需要维护几个重要变量:如一个记录页面编号的全局变量,以确定数据读写时所需访问的页面;以及一个缓冲区标志的变量,使得程序能够根据标志判断当前缓冲区是否存满、是否需要切换及切换到哪个缓冲区。


  另外,在编写FLASH芯片的数据写子程序时需要注意数据采集、接收与数据存储之间的时序配合,以保证数据采集、接收的连续性和数据的不丢失。同时数据读写过程中稳定的时钟信号也是需要优先考虑的,而这点往往为设计者所忽略。


  具体的数据存储程序的流程如图2所示。

监测仪的工作模式和流程

  便携式运动量及生理参数监测仪主要有两种工作模式:运动现场模式和医学监护模式。


  在运动现场模式下,系统完成运动现场的人体运动数据、生理数据(血氧饱和度、心率、体温、心电信号等)的采集和存储,并计算累计运动量的数值,根据运动量是否过量及生理数据是否在安全范围来判断是否给予报警提示。同时监测仪内存储的数据还可以传输到PC机上进行后续的处理,如给出运动过程的分析报告,对运动过程的所有数据进行数据库管理。


  在医学监护模式下,监测仪的运动监测模块主要用于病人姿态的感知,系统侧重于卧床病人的主要生理参数的连续实时监测,并可通过所联微机的配套软件进行远程数据传输和远程报警。本监测仪的这种工作模式非常适合于长期卧床病人的家庭护理,为他们在远离医院的条件下实施远距离的生命体征的实时监控。


  本系统中运动量和生理参数的具体阈值范围应结合运动医学的具体理论并通过一定的人体运动分组实验来确定。监测仪的控制程序需要完成运动量的定量计算、运动者姿态的感知、运动量及生理参数的智能判别功能,当运动过度或生理参数指标不正常时进行报警提示。


结语

  便携式运动量及生理参数监测仪能够完成运动过程中的运动能耗评估、运动危险因素评价及运动干预管理等功能,使运动效率和安全性得到较大程度的提高。同时该监测仪还可以用于医学监护和家庭护理,是一种专为个人健康管理服务的智能化仪器,具有可预见的广阔市场前景。本文的设计方案在样机实现过程中均取得了较好效果。

关键字:MSP430  便携式运动量  生理参数监测仪 引用地址:基于MSP430的便携式运动量及生理参数监测仪设计

上一篇:MSP430x09x系列 MCU在电动剃须刀中的应用
下一篇:基于MSP430对UART的控制方案

推荐阅读

    9月2日消息 上周五,万众期待的中国联通物联网NB通信模块的招标终于落下帷幕,下图是招标的具体信息。第一名:深圳市有方科技股份有限公司;第二名:大唐移动通信设备有限公司;第三名:吴通控股集团股份有限公司;第四名:厦门骐俊物联科技股份有限公司;第五名:深圳高新兴物联科技有限公司;从图中我们可以得知有五家企业成为中国联通物联网NB...
近一段时间以来,华为成为大家关注的焦点,在机遇与挑战并存的情况下,华为在国内的“签约”动作频频,从高校到地方,似乎一改往日“低调”的风格。集微网编辑盘点了近几个月华为与高校的部分签约情况。5月6日,中国海洋大学与华为签署战略合作协议,共建智能高性能计算技术联合实验室。双方将依托华为自主研发的高性能计算设备,发挥中国海大的学科优势,...
1.在CALL中调用已建立FOLGE程序. 2.CALL调用FOLGE程序: PGNO = PRG_NR$IN[1]TO $IN[8] Folgestarn打开Folge程序 -程序启动- SWITCH P_TYPE -程序使用类型选择 CASE 0 ;-以整数形式接受发出程序号 SWITCH PGNO CASE 10-如程序满足选择程序10 FOLGE10()-执行程序10 CASE 124 FOLGE124() CASE 125 FOLGE125() ENDSWITCH 3.程序...
STM8的IO口控制,说好听点是灵活多变,可以各种定制,可是用起来那真是烦,要定义的好多!void io_init() { PA_DDR |= (1<<3); PA_CR1 |= (1<<3); PA_CR2 &= ~(1<<3);//PA3设置为推挽输出 PD_DDR |= (1<<5); PD_CR1 |= (1<<5); PD_CR2 &= ~(1<<5); //PD5设置为推挽输出 PD_DDR &= ~(1<<6); //PD6设置为悬浮输入 ...

史海拾趣

问答坊 | AI 解惑

MOTOROLA8位单片机选型指南 (一)

MOTOROLA8位单片机主要特性列表(一) 型号 RAM ROM 串行口 定时/计数器 总线速度(MHz) A/D转换器 电源电压(V) PWM I/O口线 中断源 68HC05B6 176 6144 Mask SCI 4 1,2.1 8 5,3.3 2 32 - 68HC05B8 7168 Mask 68HC05B16 352 15360 Mask 68HC0 ...…

查看全部问答∨

有哪位朋友可以介绍一下用于手机的视频编解码的DSP?

手机要做视频编码和解码,用哪一款DSP比较好呢?还望高手指点一下…

查看全部问答∨

高清IP网络摄像机高分辨率带来新应用有哪些?

对视频监控系统钻研较深的技术人员都十分清楚其中的重大意义。因为IP网络摄像头的出现为另一项技术开辟了一条康庄大道。那便是智能视频分析技术。   所有的智能视频分析技术都须对视频信号进行智能分析,以便让计算机完成某些智能判断工作。然 ...…

查看全部问答∨

wince 怎么让添加到NK的dll是没办法复制拷贝的?

如题。就是在*.bib文件下添加dll 属性是SH,(系统隐藏),可是在wince windows目录下是可以copy的,要怎么搞啊。。…

查看全部问答∨

WinCE5.0系统加载完之后起不来

WinCE5.0系统加载完之后,屏幕还显示Logo,采用的是研华的嵌入式主板,Flash芯片采用M-System ,硬件驱动都是研华提供以及BSP, 我采用Hive-based注册表方式, [code] [HKEY_LOCAL_MACHINE\\init\\BootVars]   "SystemHive"="Doc ...…

查看全部问答∨

程序获取wince系统密码

我通过BOOL NTLMSetUserInfo( LPTSTR pszUser, LPTSTR pszPassword )这个函数给系统添加了用户名和密码,请问如何通过过程序来获取这个密码呢?我看了看Ntlmssp.h 这个头文件,好像没有类似NTLMGetUserInfo函数用来获取用户信息的。 …

查看全部问答∨

电容的计量单位

电容单位总是忘: 现发一贴子希望记住   这是我找来的: 电容单位换算 电容器Q容量Kvar换算C容值uF公式I=0.314×C×UC=Q / 0.314×U×U Q容量=单位KvarC容值=单位uF1F=1000000μFI为补偿电流,单位为A,式中0.314=2πf/100 ...…

查看全部问答∨

STM8用什么调试?有JTAG么?

                                 手册里面说的单线调试接口是用来调试的么?…

查看全部问答∨

浅析DIM3517板子的CVBS

为了解决DIM3517的显示问题(因为板子没有代LCD),坛主建议我买一块LCD,最后她可以买回,坛主一片盛情,买一个LCD虽然不贵,但是只用一次的话显得太浪费,不符合一个开发者的做法,寻找廉价方案,另外一个方案:HDMI转AV,因为我的电视机有AV接口 ...…

查看全部问答∨

stm32 中断问题

我买的stm32f103zet6最小系统板,在设置中断的时候,发现不论我把外部中断设置在哪个端口,都会在端口A上面反映,比如说我设置PB.2为外部中断, 但写程序的时候,PB.2不会响应中断,而PA.2则会,就算我把A的时钟关了,它也会相应中断。 就相当于 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved