当前位置:首页 > 通信技术 > 通信网络
[导读] 人在日常生活中的一举一动都离不开加速度的变化,所以采集人体动作信息主流方法之一就是利用加速度传感器来识别人体运动状态[1]。对于采集人体动作信息,单个加速度传感器已经无法满足研究人员的需要,出于

人在日常生活中的一举一动都离不开加速度的变化,所以采集人体动作信息主流方法之一就是利用加速度传感器来识别人体运动状态[1]。对于采集人体动作信息,单个加速度传感器已经无法满足研究人员的需要,出于不同的实验目的,投入的加速度传感器数目也不同,传统的点对点无线模块也无法适应多节点的通信需求,结合无线传感网络技术采集信息成为学者们研究的热点话题[2]。ZigBee技术凭借低成本、低功耗、自组织、低复杂度等特点[3],在自动控制、远程控制、环境监测以及智能家居领域相比较蓝牙、WiFi和红外等技术更具优势[4]。基于此,本文设计实现了一种基于ZigBee无线传感网络的人体动作信息采集系统,该系统可采集加速度值,并将数据传至上位机进行后续处理。

1 采集平台架构设计

如图1所示,本文提出的信息采集平台由ZigBee无线采集网络和上位机监测平台组成,整个ZigBee采集网络由Z-stack协议栈支撑运行。ZigBee网络有且仅有一个协调器与多个路由器和终端设备组成,本实验由于不需要较远距离的传输过程,终端节点相互之间以及节点与协调器之间不受距离因素影响,所以本采集网络不添加多余的路由节点,以避免不必要的路径选择,提高传输效率。实验采用3个终端节点和一个协调器的设计方案,3个终端设备可以分散地绑在实验对象身体上采集运动信息,终端节点会将加速度值无线传输给协调器,协调器再经过串口发送给上位机软件,上位机软件描绘出各节点的三轴加速度值的变化曲线图。

2 ZigBee网络工作原理及网络拓扑

实现整个ZigBee无线网络的功能,其核心就是ZigBee协议栈,本文采用的是美国TI公司推出的Z-stack协议栈[5]。在Z-stack协议中添加了操作系统抽象层OSAL(OperaTIng System AbstracTIon Layer),该层好比一个简化的实时操作系统,实现的方式是建立一个多任务链表,链表中存放着协议栈每层的处理函数名,即指向每层处理函数的指针,并赋给每个处理函数连续的任务ID号。当程序运行时,就会不断地递增任务ID号来查询某任务是否有事件触发,同时每一个触发事件都伴随一些数据传递,系统将事件和它的数据封装成一个消息,为此OSAL层维护了一个消息队列,每一个任务处理事件时会调用消息接收函数来取得自己的数据包。

ZigBee网络拓扑结构分为星形网络、网状网络以及树状网络。由于人体动作信息测量的终端节点相互距离短,测试环境在室内测量,实验采集节点数为3个,数据容量需求小,所以采用结构简单、速率较快的星形网络来实现[6]。

3 无线传感网络系统实现

3.1终端节点设计

(1)硬件组成

本文系统的终端节点以及协调器节点均采用TI公司的CC2530芯片设计。这款芯集成了一个高性能的RF收发器与一个增强型8051微处理器、8 KB的RAM、32/64/128/256 KB闪存以及一套强大的外设集[7]。终端节点的硬件结构图如图2所示,该节点模块主要由传感器模块、CPU内核、RF射频模块、A/D转换模块、DMA控制模块、电源模块以及晶振模块组成。其中加速度传感器模块采用飞思卡尔公司的MMA7361L加速度传感器,这是一种低功耗、高精度、模拟量输出的三轴加速度传感器,本实验采用1.5 g精度模式,其精度为800 mV/g。

(2)软件设计

终端节点的软件设计要满足低功耗、采集速度快、保证一定的精度要求等特点。本系统ZigBee无线网络的开发平台采用IAR Systems公司的IAR 2007开发平台。编程采用模块化思想,分别有加速度传感器驱动模块、ADC转换模块、DMA驱动模块、通信协议模块以及中断处理模块。为将读取的加速度模拟量值转换为可存储的数字量值,需要开启A/D转换,与传感器三轴连接的GPIO口必须设置为ADC外设引脚。为了减轻CPU内核的负担,降低转换时间,提高收发速率,本实验采用直接存取访问(DMA)控制器将加速度值从A/D转换模块不经过CPU直接传送到RF接收缓存器中,再传送给协调器单元[8]。终端节点的程序流程图如图3所示。

MMA7361L三轴加速度器所测得的加速度值为模拟量,经过A/D装换后得到对应的数字量,本实验用线性插值法计算出与实测数字量对应的加速度值。具体公式如下:

其中Dig为测得模拟量; A为所求的加速度值; U为电压,其量程为0 V~3.3 V; G为重力加速度,其量程为-1.5 g~1.5 g;C为常数,该A/D转换的有效位共9位,故29为512。

3.2 协调器设计

协调器硬件设计与终端节点类似,协调器软件实现主要分为网络管理、数据上传功能。网络管理包括了创建ZigBee网络,允许新的终端节点加入网络并分配16位网络地址,接收网络中各节点数据,向网络各节点发送操作命令,绑定网络节点等操作。数据上传则是与上位机的通信模块,在接收到了某终端节点的数据后立即送至上位机,才能使上位机同步的做出加速度值变化曲线图。为此,协调器沿用DMA控制器将RF收发缓冲器的数据不通过CPU内核直接发送至UART串口,这样可以保证传输速率同时不加重CPU负担[9]。协调器的软件设计过程如图4所示,网络中有3个终端采集节点,所以要在确认与3个节点都通信成功以后再进行数据采集工作。

4 上位机软件设计与实现

上位机监测软件是在Visual Studio开发环境下自定义编写的。软件界面上能显示协调器向上位机串口所发送的数据,经过处理后分别可显示出各终端节点的网络短地址以及对应的三轴加速度X、Y、Z实时变化的数值,最后在每个节点对应的图框中显示三轴的变换曲线趋势图,以红、蓝、绿三色线分别表示不同的方向。测试结果如图5所示,图中有A、B、C 3个终端采集节点,分别固定在人体的手臂以及两腿脚踝处。前两幅曲线图采集的是走路时左右脚的加速度值变换,图中的波峰波谷振动区域就是抬脚落地的过程,平稳区则是脚和地面接触的过程;第三幅曲线图采集的是手臂来回摆动加速度值变化曲线,可以从X、Y方向上明显看出周期性变化,Z方向也有小幅变化,不明显的原因是Z方向几乎垂直于手臂摆动的运动平面。

将ZigBee网络用于采集人体动作信息,介绍了采集网络以及检测平台的总体方案,ZigBee协议栈的工作原理及网络拓扑,终端节点以及协调器的软硬件设计,并对系统进行测试。测试结果表明,利用ZigBee网络星形拓扑能够较好地采集到各节点加速度值并上传,通过自定义编写的监测软件可以观察加速度值的变化曲线,从而分析人体动作的变化。该系统方案实现了对人体动作信息的采集,利用该采集网络进行二次开发,分析动作类别,模拟出人体的运动轨迹,可应用于更广阔的平台。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭