《智能仪器 课程设计.docx》由会员分享,可在线阅读,更多相关《智能仪器 课程设计.docx(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、智能仪器 课程设计 题目要求: 利用三轴加速度传感器实现跌倒的检测。在PSoC 3 FirstTouch板上实现。 一、学习PSOC的开发环境creator的使用。首先图示化选定所用的硬件并产生该硬件的API 函数,然后类似keil环境下做C语言程序。 二、 /data/html/2022-9-14/85764.html理解加速度传感器检测跌倒的算法原理。 三、PSoC 3 FirstTouch上有三轴加速度传感器KXSC7-2050,实现跌倒检测算法。 摘要 跌倒是指人身体的任何部位意外地触及地面或其它较低的平面,而当事人无法实时做出反应跌倒是对健康,乃至生命的严重威胁。随着老龄化社会的到来
2、,对跌倒的监测和及时报警日益成为一个紧迫的问题。 跌倒监测报警系统的目标是能够将跌倒(Fall)与日常生活的正常动作(Activities of Daily Life,ADL)区分开来,准确地检测跌倒的发生,并智能判断是否需要报警求助。从而尽可能地缩短救助时闻,减小跌倒带来的伤害,降低误报率,最终提升被监测者的生活质量。 本次研究采用了PSoC 3 FirstTouch实验板,利用三轴加速度传感器KXSC7-2050搭建了三维加速度监测系统。 研究主要分为两部分:第一,对跌倒和ADL进行定义和模式分类,通过佩戴在腰间的数据记录系统记录各模式下的三维加速度数据,并对其进行处理、分析和比较;第二,
3、根据分析结果,提出了以SVM或SMA为特征量,以人体状态及姿态为辅助判据的算法,并总结出了具体阈值相关参数。另外,还提出了基于三维加速度数据的步态分析及跌倒预警的设想,并进行了步频分析等初步的分析与论证 关键词:跌倒检测监测三维加速度传感器 跌倒判断方式 对跌倒的自动检测可通过直接或间接的手段。常见的手段包括: (1)视频分析:需要在每个盗测区域安置设备,不方便且昂贵; (2)声响或振动分析:该方法认为跌倒可通过频率分析与其它活动区分开来,但各种各样的地面材质是一个棘手蛉问题; (3)智能护理系统:跌倒发生后的当然结果就是在其后的一段时期内,被监测者几乎不会有运动,缺点是反应需要的对间较长且易
4、误报警; (4)随身佩戴的装置:它们能够即时检测出跌倒,且如果有智能判断,可自动决定是否发出摄警或求救信号。 显然,第四种方案简便、可靠、经济,且易与现有技术结合,从而达到更好的监测效果,难点在予检测的准确性:既不能漏过每一次跌倒,也不能将正常活动误报为跌倒,其中的平衡取舍较难掌握。 早期的跌倒判定手段和方法比较简单,其结果也受较大的限制。如,手杖中的水银开关。该检测方法默认,当跌倒发生时,手杖也躺倒呈水平状态,此时水银开关导通发出报警信号。显然这样的手段太过简单,结果也很粗糙。之后渐渐出现了以加速度信号为监测对象的监测 系统。如分别放置在人体躯干和大腿前侧的单维加速度传感器,可检测人体静态姿
5、势(比如躺卧、站立、坐立等)以及人体活动姿态(行走和骑车等)。但此类方法由于采用单维加速度传感器,且检测的只是几种典型的活动姿势变化过程,跌倒监测的效果并不好。 随着微电子及传感技术的发展与成熟,低功耗、低成本的微集成电路使以前的许多设想渐渐具有了现实基础。基于三维加速度传感的系统成为目前国外研究跌倒监测的主要趋势,而加速度阈值是最常见的跌倒判定方式。如,Mathie等在预先设定人体跌倒过程是在1-2秒内完成,提取其过程中三维加速度z轴方向上分量,判断是否出现至少连续两次脉冲信号,并是否超过已定的阈值(18g)。而Yoshida等使用一个01秒的时间窗进行判别。 目前,相关研究主要的分为两个方
6、面,一方面着重于跌倒与日常活动的模式分析与算法,如Bourke等通过实验得到的判定跌倒的不同的加速度阈值,讨论了佩戴位置对结果的影响,产生较大加速度响应而有可能造成误报的ADL等,而Diaz等在其论文中提出了一种较复杂的算法,基于时域和频域(能量)条件共同判断,也得到了不错的结果。基于SVM(Signal Magnitude Vector)和SMA(Signal Magnitude Area)的阈值判定是常用的方法,同时为了降低报错率,还采用了其它辅助判定条件一一如姿态判定等。另一方面着眼于整个系统的构建,传感器(Sensor)、处理器(MCU)和通讯单元的组合是常见设计。如加州大学伯克利分校
7、的JCheal 等设计的家用穿戴式无线跌倒监测系统,就是由两个正交的二维加速度传感器与已有的“电予尘埃”技术的结合,监测的结果经无线通讯传输,并根据射频信号强度实现定位。而Burchfield与Venkatesan设计的用予监测人体“异常运动”(Abnormal Movement)的无线装置与此类似,由加速度传感器、MCU以及基于ZigBee技术的无线通讯模块构成了整个系统 运动模式与实验组织 本系统的难点和目标在于通过加速度数据有效地区分跌倒和日常活动(ADL)。本章的目的是将常见的跌倒和ADL按不同模式分类,记录其加速度数据。希望根据对数据的处理分析结果,最终能得到简便且有效的方法区分跌倒
8、与ADL。 人体活动分为正常日常活动(ADL)和跌倒两大类 正常日常活动(ADL) 人体静态姿势:左侧躺、右侧躺、仰卧、俯卧、直立、后仰立、前倾立、坐直、后仰坐、前倾坐等等。 人体动态姿势:躺下、蹲下、坐下、起立、走、上楼梯、下楼梯、奔跑 跌倒:向前跌倒,膝关节弯曲;向后跌倒,膝关节弯曲;侧向(左右)跌倒,膝关节弯曲。 容易引起误判的因素:行走时跌倒、摔倒在椅子中(准备从椅子上站起来时或静止站立时)、滑倒、瞬间失去平衡最后却控制住身体等等这些模式可能是下一步堆备研究的对象,目前仅考虑以上三种基本模式。 本系统三维加速度信号的采样频率为50Hz。鉴于人体运动的特点,加速度信号采样频率不用太高一一
9、事实上,我们所要监测的人体活动的频率全是是低于20Hz的(即使包括了运动信号,其能量的99也是集中在15Hz以下),已有的监测系统的采样频率很少有超过50Hz的。 加速度数据分析 通常情况下,佩戴在人体上的加速度传感器的输出信号是由以下信号线性叠加而成的: (1)人体运动加速度分量; (2)入体重力加速度分量; (3)人体抖动; (4)系统测量噪声; 其中(1)和(2)是直接人体活动相关联的因素,重力加速度的值在-1g和+1g之间,人体运动加速度分量是系统采集的目标信号和最终判定运动模式的依据;而(3)、(4)和则作为噪声部分加入到传感器输出值中,可以通过模拟或数字滤波器加以滤除,从而提高信噪
10、比。 数据预处理 预处理主要分为两步,主要目的是去除噪声,以及根据使用目的将信号分离: (1)中值滤波(n=3)。由实验得知,加速度传感器输出信号中参杂了大量脉冲噪声,在实际应用申必须加以剔除传统的消除脉冲噪声的方法是使用中值滤波器。采用序列的中值是指采样序列中一半样本的值比该值大,而另一半比其小。在信号处理时需要将采样序列排序,然后取中间值。中值滤波器是一个非线性信号处理技术,它使用一个给定长度的窗依次滑过原始信号序列,然后将窗内居中的样本值用该窗所包含信号序列的中值替代。针对加速度传感器输出信号包含有脉冲噪声,这里滤波器窗口大小n设为3。辫n过大时,则区分人体是否处于活动状态等算法的效果将
11、变差。 (2)低通滤波(LPF,截止频率为025Hz,001dB纹波,3阶IIR滤波器),目的是从原始加速度信号中分出两路信号,分别为GA(Gravity,可用于姿态判断)和BA(BodilymotionAcceleration,可用于运动状态判断)信号。GA由(1)后信号LPF后得到,BA可由GA与(1)后信号的差别得到。 基于跌倒过程特点的跌倒分析判断 跌倒过程中的加速度变化特征 对跌倒检测原理的研究主要是找到人体在跌倒过程中的加速度变化特征。 图3给出的是加速度在不同运动过程中的变化曲线,包括(a)步行上楼、(b)步行下楼、(c)坐下、(d)起立。跌倒检测器被固定在被测的人体腰上。其中红
12、色的曲线是Y轴(垂直方向)的加速度曲线,其正常静止状态下应该为-1g;黑色和黄色的曲线分别是X轴(前后方向)和Z轴(左右方向)的加速度曲线,其正常静止状态下应该为0g;绿色的曲线是三轴加速度的矢量和,其正常静止状态下应该为+1g。 由于老年人的运动相对比较慢,所以在普通的步行过程中,加速度变化不会很大。最明显的加速度变化就是在坐下动作中Y轴加速度(和加速度矢量和)上有一个超过3g的尖峰,这个尖峰是由于身体与椅子接触而产生的。 关于几个中断设置的说明 1、Activity - 当加速度值超过一定门限(THRESH_ACT)时,Activity中断置位。 2、Inactivity - 当加速度值低
13、于一定门限(THRESH_INACT)并且持续超过一定时间(TIME_INACT)时,Inactivity中断置位。 3、Free_Fall - 当加速度值低于一定门限(THRESH_FF)并且持续超过一定时间(TIME_FF)时,Free_Fall中断置位。与Inactivity中断的区别在于,Free_Fall中断主要用于对自由落体运动的检测。 而跌倒过程中的加速度变化则完全不同。图4给出的是意外跌倒过程中的加速度变化曲线。 通过图4和图3的比较,可以发现跌倒过程中的加速度变化有4个主要特征,这可以作为跌倒检测的准则。这4个特这在图4中以红色的方框标注,下面将对其逐一进行详细介绍。 1失重
14、:在跌倒的开始都会发生一定的失重现象。在自由落体的下降过程,这个现象会更加明显,加速度的矢量和会降低到接近0g,持续时间与自由落体的高度有关。对于一般的跌倒,失重现象虽然不会有像自由落体那么明显,但也会发生合加速度小于1g的情况(通常情况下合加速度应大于1g)。因此,这可以作为跌倒状态的第一个判断依据。可以由ADXL345的Free_Fall中断来检测。 2撞击:失重之后,人体发生跌倒的时候会与地面或其他物体发生撞击,在加速度曲线中会产生一个很大的冲击。这个冲击可以通过ADXL345的Activity中断来检测。因此,Free_Fall 中断之后,紧接着产生Activity中断是跌倒状态的第二
15、个判断依据。 3静止:通常,人体在跌倒后,也就是撞击发生之后,不可能马上起来,会有短暂的静止状态(如果人因为跌倒而导致昏迷,甚至可能是较长时间的静止)。表现在加速度曲线上就是会有一段时间的平稳。这可以通过ADXL345的Inactivity中断来检测。因此,Activity中断之后的Inactivity中断是跌倒状态的第三个判断依据。 4. 与初始状态比较:跌倒之后,人体会发生翻转,因此人体的方向会与原先静止站立的姿态(初始状态)不同。这使得跌倒之后的静止状态下的三轴加速度数值与初始状态下的三轴加速度不同(见图4)。假设跌倒检测器固定在被测人体上的腰部,这样初始状态下的三轴加速度数值可以认为是
16、已知的(本例中,初始状态为:X轴0g,Y轴-1g,Z轴0g)。读取Inactivity 中断之后的三轴加速度数据,并与初始状态进行比较。如图4所示,重力加速度方向由Y 轴上的-1g变为了Z轴上的1g,这说明人体发生了侧向跌倒。因此,跌倒检测的第四个依据就是跌倒后的静止状态下加速度值与初始状态发生变化,且矢量变化超过一定的门限值(比如0.7g)。 这四个判断依据综合在一起,构成了整个的跌倒检测算法,可以对跌倒状态给出报警。当然,还要注意各个中断之间的时间间隔要在合理的范围之内。比如,除非是从很高的楼顶掉下来,否则Free_Fall中断(失重)和Activity中断(撞击)之间的时间间隔不会很长。
17、同样,通常情况下,Activity中断(撞击)和Inactivity中断(静止)之间的时间间隔也不会很长。本文接下来会通过一个具体实例给出一组合理的取值。当然,相关中断的检测门限以及时间参数也可以根据需要而灵活设置。 另外,如果跌倒造成了严重的后果,比如,导致了人的昏迷。那么人体会在更常的一段时间内都保持静止。这个状态仍然可以通过Inactivity中断来检测。也就是说,如果发现在跌倒之后的很长时间内都保持Inactivity状态,可以再次给出一个严重报警。 流程图及相关程序设计 1初始化后,系统等待Free_Fall中断(失重),这里把THRESH_FF设为0.75g,把TIME_FF 设为
18、30ms。 2Free_Fall中断产生之后,系统开始等待Activity中断(撞击),这里把THRESH_ACT设为2g。 3Free_Fall中断(失重)与Activity中断(撞击)之间的时间间隔设置为200ms。如果超过200ms,则认为无效。200ms计时需要通过MCU中的定时器来实现。 4Activity中断产生之后,系统开始等待Inactivity中断(撞击后的静止),这里把THRESH_INACT 设为0.1875g,把TIME_INACT设为2s。 5在Activity中断产(撞击)生之后的3.5s时间之内,应该有Inactivity中断(撞击后的静止)产生。如果超时,则认为
19、无效。3.5s计时需要通过MCU中的定时器来实现。 6. 如果Inactivity中断之后的加速度值与初始状态(假设已知)下数值的矢量差超过0.7g,则说明检测到一次有效的跌倒,系统会给出一个报警。 7. 当检测到跌倒状态之后,为了判断是否在跌倒之后人体有长时间的静止不动。需要继续检测Activity中断和Inactivity中断。这里把THRESH_ACT设为0.5g。把THRESH_INACT设为0.1875g,把TIME_INACT设为10s。也就是说,如果在10s之内,人体一直没有任何动作,则会产生Inactivity中断,使系统给出一个严重报警。而在此期间一旦人体有所动作,则会产生A
20、ctivity中断,从而结束整个判断过程。 基于SVM和SMA的跌倒分析判断 如前所述,对于人体运动状态的区分(即跌倒与ADL的区分),主要是通过对人体运动加速度数据的阈值设置来分隔。这个阈值的选择是整个系统的关键。但同样是阈值分隔,也有不同的特征量或方法可以选择在本次研究中,选择了两种参数来提取特征值作为比较。 5。3。1特征量SVM SVM,即Signal Magnitude Vector。其中A x、A y、A z分别为X、Y、Z三轴输出,并经中值滤波后的信号,单位为g。 $VM。42+42+42 由于无法预知跌倒的方向,即发生时的加速度变化主要体现的某空间方向,所以不宜用某一轴的加速度
21、数据去判断跌倒的发生。采用该特征值的优点在于其将空间的加速度变化集合为一矢量,而且阈值法在本系统跌倒的判据中可以忽略该矢量的空间方向即无论朝哪个方渤跌倒,SVM都会超过某一阈值。这正是SVM判据的基本思想 图53各模式SVM对比,图中:(a)向前跌倒;(b)向前跌倒;(c)恻商跌倒; (d)坐下一一较高的凳子,其后的尖峰为对应的起盘动律;(e)蹲下一,其后的尖峰为对应的起立动作;(f)蹲下,其后的尖峰为对应的起立动作;(g)走一一平地;(h)走一一下楼;(i)走一一上楼;(j)跳原地;(k)跑平地; 图53中值得注意的几点是: 1考虑到本系统的目标用户(老人、病人、残疾人等),假如不考虑某些较
22、激烈、动作幅度较大的运动,如跑、跳等一一实际上,这也是最大可能的误报源。那么ADL的SVM最大值出现在模式“走一一下楼”处(图53中(h),其SVM=2.26g而三类跌倒的最小的SVM出现在模式“侧向(左右)跌倒(图53中(c),其值为367g;即“跌倒”与“ADL”之间的SVM峰值的“空隙”为141g这为我们设置阈值留下了充分的空间(如设置阈值为28g),极大地降低了误报的可能性; 2.假如将模式“跑”或“跳”一并纳入考虑的范畴,从上图中可以看出仍然有操作的“空间”。但在稍微激烈的运动出现的情况下,却有可能导致误报。这个问题可能将透过其它辅动判据来共同解决一一如身体姿态的判断; 3三类跌倒模
23、式中SVM峰值从大到小依次为:向后跌倒(529g)、向前跌倒(374g)、侧向跌倒(367g)。其中向前和侧向的SVM峰值相差不多,而大大小于向后的峰值,这可能是因为在发生向前或侧向跌倒时,手臂和膝盖一定程度上起到了缓冲的作用,从而减小了实际的“下降高度”,向后跌倒的“下降高度”更大同样可以预见的是,在向前或侧向跌倒时若失去或没有用手臂或膝盖作为缓冲,其SVM峰值会更大 532特征量SMA SMA,即Signal Magnitude Area,其定义如式(52)。其中冀、4、4分别为X、Y、Z三轴输出,并经中值滤波和高通滤波后的信号,单位为g 同样的,避免以某一轴的输出作为判定的依据。另外,上
24、式中的t参数的选择也是一个值得讨论的问题。本次试验暂定为1秒钟,即50个采样点。取1秒钟的原因是它既能体现信号的暂态变化或趋势,又能有效减小干扰(如突变跳动)。 各模式典型的SMA对比如图56 图56各模式SMA(t=ls)对比,图中依次为:(a)向后跌倒;(b)向前跌倒;(c)侧向跌倒;(d)坐下,其后的峰值为对应的起立动作;(g)躺倒一一从坐的姿势,其后的是从躺到坐起的动作;(h)走一一平地;(i)走一一下楼;(j)走一一上楼;(k)跳一一原地;(l)跑一一平地; 从图56中可以看出,跌倒的最小SMA峰值来自于模式“向前跌倒”(其值约为101g),而若不考虑模式“跑和“跳”,那么ADL的最
25、大峰值来盘于模式“走一一下楼”(088g),其与模式“跌倒”之间的差值为0.13g。而若加入模式“跑”和“跳”,则其峰值甚至超过了跌倒(-0329、g)。这是由予在这两种模式整,加速度信号在短时间内急剧地变化,而高通滤波滤掉的直流分量较少的缘故。此外,在“跑”或“跳”,甚至“走”的模式里,一旦时间参数t大于其运动周期,那么每次计算SMA时的“积分”便计入了至少两次“尖峰”,这样就理所当然地导致了这几种运动模式都得到很高的SMA值,而且几乎“抹平了每个尖峰,如图56。可以考虑减小t值。 虽然信号不变,但当取t=03s时,得到了更好的结果,如图5。7。跌倒与ADL之间的差距增加,就阈值判定的角度来
26、看,这个结果显然较t=1s时要理想得多。 以跌倒与ADL之间的峰值差距为标准,从阈值判断的角度考虑,参数SVM更适合作为判据,但是SMA在某些方面也有其独特的优势。在加速度变化比较慢,但变化幅度较小的场合,SVM的峰值比较小,可能无法与ADL区分开来,但SMA信号的峰值就相对较大如“侧向摔倒”时的SVM和SMA波形可见,共有三次跌倒,SVM的峰值幅度依次递减,但SMA峰值幅度交化不大。 加入时间参数t是特征量SMA的优势,使其能够检测到变化时间持续较长,变化幅度相对较小的加速度变化。其实际应用意义在于,比如,老年人较缓慢地摔倒在地上或椅子里,或者支撑着座椅、墙壁等缓慢倒下,通过SVM阈值判断很难将这样的情形与ADL区分开来,但利用SMA阈值判断就有可能因此t值并非越小越好,因为t值越小,SMA就越可能失去上述功能一一t是一个决定着SMA运用效果的重要参数。 533特征量A SMA SVM提供了传感器(佩戴者)瞬时加速度的度量值,为了监测加速度的变化情况,特征量ASVM 提供了加速度昀瞬时变化往:,即本次测得的SVM值减去上次测 得的SVM值。可以看出ASVM对突变的、持续时间短、变化幅度大的信号比较敏感,能够突出它们,这说明ASVM比较适于检测突然的、“于净利落”的跌倒。该特征量同样可通过阈值比较,用于判断人体处于“活动”还是“静息”状态。