1、MSP430 单片机便携式疲劳信号检测研究摘 要根据人体脉搏波信号的特征,设计性能优良的脉搏波信号采集系统,选用超低功耗 16 位单片机 MSP430F449 对采集的脉搏波信号进行记录、处理、传输。硬件部分为满足脉搏信号的采集要求,着重讨论了模拟放大电路的组成结构、工作原理、分析方法以及性能参数的计算。软件部分利用 Matlab 图形用户接口(GUI)设计工具,设计了脉搏信号检测系统。对智能化测试疲劳信号的一次努力和尝试,无论是在硬件电路设计,还是在软件算法处理上,都采用了比较独特的方法,从而为今后疲劳信号客观定量研究提供重要而具有指导意义的参考。 关键词疲劳检测 脉搏波信号 MSP430
2、中图分类号:TM58 文献标识码:A 文章编号:1009-914X(2016)01-0365-01 1 引言 疲劳虽然是一个很正常的生理现象,但每年导致的交通事故给世界各国造成巨大的经济损失和人员伤亡,增加了社会的不安定因素。故近年来,就如何减少交通事故,促进道路交通安全也是各国汽车厂商投入重金研究的一片领域。驾驶员疲劳驾驶问题已受到世界各国越来越多研究人员的关注,因此针对疲劳驾驶检测方法而进行的研究更显得具有重要的现实意义。 疲劳是由于人们长时间工作而导致工作能力暂时下降的规律性生理现象, 在疲劳产生的初期, 由于意志的作用, 人还能够强迫自己仍按原有意图进行操作, 但工作状态会受到很大的影
3、响, 特别是在道路交通状态发生突然变化等情况下, 处于疲劳状态下的驾驶员, 容易发生交通事故。本文主要着重于基于 MSP430 的脉搏信号采集系统的设计并在此基础上对采集到的脉搏信号进行预处理和高阶谱分析,为疲劳状态的分析和评测提供科学依据。同时本实验对于脉诊的客观定量化,以及避免因疲劳驾驶而引起交通事故具有重要而积极的意义。 2 MSP430 单片机及外围模块介绍 2.1 MSP430 系列单片机简介 MSP430 系列单片机都集成了较丰富的片内外设。它们分别是看门狗计时器(WDT) 、比较器、定时器 A(Timer_A) 、定时器 B(Timer_B) 、串口 0、1(USART0、1)
4、、硬件乘法器、液晶驱动器、10/12/16 位 ADC、12位 DAC、I2C 总线、直接数据存取(DMA) 、端口 18(P1P8) 、基本定时器(Basic Timer) 、实时时钟模块、电源电压监控(SVS) 、硬件乘法器(MPY)等一些外围模块的不同组合。其中,看门狗可以使程序失控时迅速复位;模拟比较器进行模拟电压的比较,配合定时器,可设计出 A/D转换器;16 位定时器(Timer_A 和 Timer_B)具有捕获/比较功能,可用于事件计数、时序发生、PWM 等;有的器件更具有可实现异步、同步及多址访问串行通信接口,可方便的实现多机通信;12/14 位硬件 A/D 转换器有较高的转换
5、速率,最高可达 200kbps,能够满足大多数数据采集应用;硬件 I2C 串行总线接口实现存储器串行扩展;为了增加数据传输速度,可采用直接数据传输(DMA)模块。 MSP430 系列单片机可以分为以下几个系列:X1XX ,X2XX,X3XX, X4XX 等等而且还在不断发展,从存储器角度又可分为 ROM(C 型) 、OTP (P 型) 、EPROM(E 型) 、Flash Memory(F 型) 。系列的全部成员均为软件兼容可以方便地在系列各型号间移植。MSP430 系列单片机的 MCU 设计成适合各种应用的 16 位结构。它采用“冯-纽曼”结构,因此 RAM、ROM和全部外围模块都位于同一个
6、地址空间内。 3 脉搏信号处理软件各部分原理介绍 在前面介绍了用户界面的编写方法,接下来介绍的是各个具体功能的实现原理。 3.1 开始采集 通过 RS232 串口将数据采集部分与计算机连接,利用 MATLAB7.0 自带的通信类(SERIAL)可开发出通信与数据采集软件,通过人机界面完成对脉搏波形的数据采集与存储。 s = serial(COM2,BaudRate,9600) ; %创建一个波特率为 9600 的 COM2 串口对象,并以 s 标识它 fopen(s) %打开串口设备对象 data_in =1 fwrite(s, data_in,char,async) ; %向 COM2 口发
7、送两个数据 和1启动采集 data_in =2 fwrite(s, data_in,char,async) ; %向 COM2 口发送两个数据 和2启动采集 fclose(s) ; %关闭 COM2 串口 可以看出,在 Matlab 中进行串行通信是十分简单的,编程较为容易。而且,在 Matlab 中串行通信的出错率较低,通信也很可靠,为进一步提高通信的安全性,也可以采用增加握手信号以及数据校验等的方式进一步增加通信的可靠性。 3.2 中值滤波 由于脉搏信号属于低频信号,脉搏信号的能量频段主要集中在0.520Hz 之间,在实际应用时,一般取 0.530Hz 之间的信号。在此文中我们采用低通滤波
8、和中值滤波的方法消除工频干扰和基线漂移。 为有效克服因偶然因素引起的波动干扰,彻底滤除尖波干扰噪声,首先对原始信号采用了 medfilt1 一维中值滤波法,来实现脉搏曲线更平滑。 medfilt1 函数的用法为: medfilt1(x, n) X 为你想平滑的时间序列,N 为滤波器的阶数。 4 总结 本文基本完成了疲劳脉搏信号采集系统的设计及运用高阶谱分析数据的初期目标,即设计出了一套基于 MSP430 的脉搏数据采集系统。同时,进行了一定的实验测试并基本上验证了该方案的可行性。 参考文献 1 刘世杰主编,中国医学百科全书七?劳动卫生与职业病学M.上海科学技术 出版社,1992,181. 2
9、孙玮等.避免疲劳驾驶的驾驶员警示系统J.交通世界(运输.车辆) ,2006(1):57. 3 卫生部卫生监督局. 中国伤害状况报告M.人民卫生出版社, 2007, 96. 4 贺太纲,刘建平,郑崇. 精神疲劳及其测定J.生物医学工程学杂志,1996,13(3):267 一 273. 5 King L M, Nguyen H T, Lal S K L.Early Driver Fatigue Detection from Electroencephalography Signals using Artificial Neural Networks.Proceedings ofthe 28th IEEE EMBS Annual International Conference, New York City, USA, 2006 :21872190. 6 Yang G, Lin Y, Bhattacharya P.A Driver Fatigue Recognition Model UsingFusion of Multiple Features. Conf. Proc. IEEE Int. Conf. Syst. Manbern., Waikoloa, HI, United States, 2005(2):17771784.