【完整版】基于加速度传感器的姿态检测及应用系统毕业论文设计40

更新时间:2023-04-05 12:41:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

毕业设计(论文)

基于加速度传感器的姿态监测

及应用系统

姓名 Jermaine Pen

学号29010103023

专业班级通信工程09C

所在学院电子信息学院

指导教师 JianGuo.Shi 副教授

完成时间2013年5月10日

I

电子科技大学中山学院教务处制发

基于加速度传感器的姿态监测

及应用系统

摘要

本课题的主要任务是设计一种由一对无线传感器终端、一套三轴加速度传感器、LCD 显示屏组成的系统,系统中所有设备均通过单片机进行指令控制和协调操作。无线传感器终端发出的X、Y、Z轴加速度数值传送到监控主机,并利用主机进行数据处理、数据储存、数据显示等。系统充分利用了nRF905无线传感器网络所具有的通信质量高、通信距离远、连通性好、可扩展性强、功耗低、便于开发等优点,提高了加速度变化规律检测的效率和质量,并且为人体姿态检测提供有效的依据,将为未来动物姿态研究引入新的技术支持。系统工作在915MHz ISM频段,数据传输率为50Kbps,节点设备的工作电压为1.9-3.6V,工作电流则与设备类型和工作状态有关,其中,无线传感器的静态电流仅仅12.5μA,节能设计更方便。

关键词:nRF905;无线传感器网络;ADXL345;姿态检测;三轴加速度

Position Monitoring And Application Systems Based on the Acceleration

Sensor

Abstract

This main task of this project is to design a system composed of a pair of wireless sensor terminal,a set of three axis acceleration sensor, LCD display,system all equipment through the MCU control commands and coordinated operation.Wireless sensor terminal sends a X,Y,Z axis acceleration value is transmitted to the monitoring computer,and data processing,data storage,data display by quality of nRF905 wireless sensor network which distance, connectivity is good, strong scalability, low power consumption, easy development advantages, improve the efficiency and quality detection of variation of acceleration, and provide effective basis for posture detection, for the future of research into animal posture a new technical support.

The system works in 915MHz ISM band, the data transmission rate is 50Kbps, the working voltage is 1.9-3.6V, working current is related to the type of equipment and working state.The static current is only 12.5μA.

Keywords: nRF905; wireless sensor network; ADXL345; attitude detection; three axis accelerometer

目录

1 绪论 (1)

1.1 项目背景 (1)

1.2 项目的主要任务 (1)

2 总体设计方案 (2)

3 主要芯片简介 (3)

3.1 NRF905 (3)

3.2 ADXL345 (4)

4 硬件设计 (9)

4.1 无线主机 (9)

4.2无线从机 (11)

4.3 监控主机 (13)

5 软件设计 (14)

5.1 ICCA VR与Keil集成开发环境 (14)

5.2 主机程序流程 (14)

5.3 从机程序流程 (15)

6 系统调试 (17)

7 结论 (19)

参考文献 (20)

附录 (21)

附录A 系统样机实物图 (21)

附录B 源程序清单 (22)

致谢 (1)

1 绪论

1.1 项目背景

在日趋成熟的科学界,人们对生活的追求越来越高,然而,健康的追求是人们永恒不变的话题。在医学科技发达的今天,60岁以上的老年人所占的比例越来越大,人口老龄化促使人们更加关注老年人的健康和生活质量。据统计,国外约30%老年人每年跌倒一次,并造成不同程度的损害。而70岁以上的老年人跌倒年发生率高达50%,跌倒后常常会造成严重的损害,而这些损害往往因为没有及时处理而被无限扩大,例如失血过多、疼痛过度至休克、伤口感染等二次伤害。跌倒不但给老年的心灵上的摧残,更极大地影响了老年人的生活,在病床上的医疗时间足以消耗老年人本来就不旺盛的意志。

因此,本文设计一种基于三轴加速度传感器的人体姿态平衡检测系统,通过读取并分析三轴向加速度的数值,进行对老年人人体姿态实时检测,并预知老年人行进趋势,并通过无线通信网络等多种方式实现手段,进行声光报警,通知周边的人,对跌倒老人进行扶助,可以大大减少老年人跌倒的二次伤害。

无线通信网络可以有多种实现手段,其中,基于Bluetooth协议的系统数据传输率较高,但作用距离短,功耗大,组网能力弱;而ZigBee作为建立在IEEE802.15.4通信标准之上的低速无线个域网(LR-WPAN)协议规范,基于该技术的系统具有功耗小、可靠性高、组网能力强等优点,但数据速率低、传输距离近;NRF905采用Nordic公司的VLSI ShockBurst技术,ShockBurst技术使nRF905能够提供高速的数据传输,而不需要昂贵的高速MCU来进行数据处理时钟覆盖,极大降低成本,并拥有较高数据传输速率,同时传输距离较远,理论可达1000米,开发难度低,可靠性高等综合起来,成为本设计选择的无线通信网络核心组成部分。

1.2 项目的主要任务

本项目的主要任务就是通过三轴加速度传感器检测三轴加速度,并将模拟信号传送到单片机进行数据处理, 分析数据后判断人体是否平衡,并在人体跌倒时给出声光报警。在满足以上功能的前提下进一步将声光报警用短信通知替代。性能要求如下:平衡检测反应在3.0秒以内, 信号传输距离要大于3.0米。

2 总体设计方案

系统的主要任务是利用加速度传感器实现姿态检测及跌倒判定。对于传感器模块的数据采集,要根据数据情况实行三级检测,通过检测方式尽可能抵消误判的情况。系统总体上看是以Atmega128为主控器,并连接NRF905、ADXL345等模块。NRF905模块为三轴加速度数据无线传输端,ADXL345为加速度数据来源端。由ADXL345采集三轴加速度,Atmega128单片机进行处理和分析,然后由发送端将数据送到433Mhz开放ISM频段,通过无线的方式将数据送到接收端单片机,接收端单片机对数据进行简单应用,如声光警报和数据显示。以上是本设计的设计思路和总体设计方案。如图1-1所示。

图1-1 整体设计框图

本设计关键部分是数据算法处理,这部分在Atmega128单片机内进行。主要是对ADXL345数据进行处理。人体运动的加速度值,会随人体动作不断变化,而且ADXL345是先接收模拟值数据再进行AD转换,所以,要得到有用的数据,必须进行三级检测。第一级检测,采用SVM算法,对传感器传出的数据进行简单的筛选,该算法具有自我学习能力,把大多类似跌倒的情况积累起来,进行统计。第二级,对第一级算法的进一步分析,通过比较软件自身设定的阈值来确定该动作是否跌倒、行走、坐下等,阈值更是根据用户的身高、体重、性别、年龄等信息设置。第三级,是在第二级处理之后,判断加速度值是否有变化,如果变化,则抛弃前面两级数据,如果没变化,再判断人体倾角状态,从而判断剧烈动作人体是否躺下,进一步确定老人是否已经跌倒。

3主要芯片简介

3.1 NRF905

nRF905是挪威Nordic公司推出的单片射频式Transmitter Chip,工作电压为1.9-3.6V,32引脚方形扁平无引脚封装(5mm×5mm)。符合国家Radio Management Committee标准,无需申请频点,工作于433868915MHz3个ISM频道(工业、科学和医学)。本设计选择的无线传感器可以自动完成处理字头和CRC(循环冗余码校验)的工作,可由片内硬件自动完成Manchester编码解码,使用SPI接口和I2C接口与微控制器通信,配置非常方便,其功率消耗是非常的低,以-10dBm的输出功率发射时电流只有11mA,在器件开始接收模式时电流为12.5mA。nRF905单片无线收发器工作由一个完全集成的频率调制器,一个带解调器的接收器,一个功放器,一个晶体和一个全自动调节器组成。ShockBurst工作模式的特点是自动产生前导码和CRC,可以很容易通过SPI接口和I2C接口进行内部寄存器配置。图3-1为NRF905模块的硬件结构框图。

图3-1 NRF905硬件结构

以下是NRF905的主要特色和技术指标:

真正的单片

●低功耗ShockBurst工作模式帧长:协议规定不超过128B,实际有效数据载荷最大85B

●工作电源电压范围1.9—3.6V

●多通道工作—ETSIFCC兼容

●通道切换时间<650us

●极少的材料消耗

●微功率发射:最大发射功率为10mW、高接收灵敏度,外围元件最少(仅10个),基本

无需调试

●高抗干扰能力和低误码率:基于GFSK的调制方式,采用高效前向纠错信道编码技术,

提高了数据抗突发干扰和随机干扰的能力,在信道误码率为10-2时,可得到实际误码率10-5~10-6.)

●采用DSS+PLL频率合成技术,频率稳定性极好

●无需外部SAW滤波器

●输出功率可调至10dBm

●传输前监听的载波检测协议

●当正确的数据包被接收或发送时有数据准备就绪信号输出

●侦测接收的数据包当地址正确输出地址匹配信号

图3-2为NRF905模块的外形及引脚排列图,为提高电磁兼容性,模块正面采用了金属屏蔽罩。根据天线形式、发射功率以及内置协议的不同,共有10多种可选的模块产品。

图3-2 NRF905模块外形及引脚图

3.2 ADXL345

加速度传感器是能够测量物体运动物理量的电子设备。加速度,实际上就是物体在加速过程中所受外力的合力,更像是地球万有引力。在当今世界上,通过速度传感器测量物体外力引起的加速度,可以计算出设备相对于水平面的倾斜角度。通过计算动态加速度,可以分析出设备运行情况和动作趋势。现今工控技术的领域中,加速度传感器很多用在分析高速运作的发动机振动上,用来做减震设备,最大程度保护机器运转的稳定性。另一方面,电脑硬盘也应用了加速度传感器,当硬盘不慎跌落时,加速度会大于自由落体时的数值,可以此来及时进行数据紧急备份。

加速度传感器可分为压电式加速度传感器、压阻式速度传感器、电容式速度传感器、伺服速度传感器。在电子设备上较为常用的两种型号分别为ADXL345和MMA7455。表1-1为此两种型号速度传感器的参数。

表1-1 ADXL345与MMA7455技术指标的对比

出,在精度细分高的环境下,模拟输出通过16位AD转换可以得到1024个分级的数字信号,比直接的数字输出有更详细的数字信息。ADXL模块和MMA7455模块都支持SPI通信协议,而ADXL345更支持双线制的IIC通信协议,给主控机腾出更多的IO接口,并可以为一些只有一个SPI模块驱动的单片机腾出更多的操作资源。

根据以上的资料,本设计主要针对ADXL345性能分析和技术应用。ADXL345用途相当广泛,小至单电源数据采集系统、仪器仪表,大至电池供电系统和医疗仪器,甚至在过程

控制中也会应用到ADXL345。ADXL345有多种特殊的检测功能。可以根据活跃和非活跃的检测功能通过比较X、Y、Z任意方向的轴的加速度和用户的设置来检测设备之运动模式。图3-3为输出响应与重力方向的关系。

图3-3 输出响应与重力方向的关系图

ADXL345加速度传感器可以通过IIC或者SPI的方式与单片机进行数据交互,简单来说就是通信。根据Datasheet的介绍,本设计可以采取SPI通信模式和IIC通信模式。图3-4为数据手册推荐的4线式SPI模式的连接图,图3-5为数据手册推荐的IIC模式下的连接模式。

图3-4 推荐的SPI电气连接

图3-5 推荐的IIC电气连接

ADXL345还提供两个中断引脚,INT1和INT2,均是输出引脚,是推挽低阻抗引脚。这两个中断引脚可以控制双击事件、加速度大于指定数值事件、加速度小于指定数值事件、产生新数据中断等多种中断事件。下表1-2为中断引脚输出规格。

表1-2 中断引脚输出规格

ADXL345是一款小而薄的超低功耗3轴加速度计,分辨率高(13位),测量范围达±16g。数字输出数据为16位二进制补码格式,可通过SPI(3线或4线)或I2C接口访问。ADXL345非常适合移动设备应用。它可以在倾斜检测应用中测量静态重力加速度,还可以测量运动或冲击导致的动态加速度。其高分辨率(3.9mgLSB),能够测量不到1.0°的倾斜角度变化。该器件提供多种特殊检测功能。活动和非活动检测功能通过比较任意轴上的加速度与用户设置的阈值来检测有无运动发生。敲击检测功能可以检测任意方向的单振和双振动作。自由落体检测功能可以检测器件是否正在掉落。这些功能可以独立映射到两个中断输出引脚中的一个。正在申请专利的集成式存储器管理系统采用一个32级先进先出(FIFO)缓冲器,可用于存储数据,从而将主机处理器负荷降至最低,并降低整体系统功耗。低功耗模式支持基于运动的智能电源管理,从而以极低的功耗进行阈值感测和运动加速度测量。ADXL345采用3 mm × 5 mm × 1 mm,14引脚小型超薄塑料封装。功能框图如3-6所示。

●超低功耗:VS = 2.5 V时(典型值),测量模式下低至23μA,待机模式下为0.1μA。

●功耗随带宽自动按比例变化

●用户可选的分辨率:10位固定分辨率,全分辨率,分辨率随g范围提高而提高,±16g

时高达13位(在所有g范围内保持4 mgLSB的比例系数)

●正在申请专利的嵌入式存储器管理系统采用FIFO技术,可将主机处理器负荷降至最低。

●单振双振检测

●活动非活动监控

●自由落体检测

●电源电压范围:2.0V至3.6

●SPI(3线和4线)和IIC数字接口

●灵活的中断模式,可映射到任一中断引脚

●通过串行命令可选测量范围

●通过串行命令可选带宽

●宽温度范围(-40°C至+85℃)

●抗冲击能力:10,000g

●小而薄:3mm×5mm×1mm,LGA封装

图3-6 ADXL345的内部结构

ADXL345的外形及引脚排列如图3-7所示,其中VDD和GND分别为电源正极和负极接入脚,SDASDISDIO、SDOALT ADDRESS、SCLSCLK组成SPI或者IIC。

图3-7 ADXL345外形引脚图

4硬件设计

NRF905模块集成了构成典型无线网络通信设备所需的主要部件,而ADXL345模块是数字信号输出,应用系统硬件设计只需在此基础上增加主控芯片Atmega128、89C51和部分整合电路即可。

4.1 无线主机

主机控制芯片采用8位高速单片机Atmega128。Atmega128是基于A VR RISC架构的高速8位低功耗CMOS微处理器。A VR单片机在无线高速传输环境下起到举足轻重的作用。Atmega128单片机有丰富的内部资源,如实时时钟RTC能提供程序校时、4个灵活多功能计时器能丰富多线流程设计、两个USART、面向字节的两线接口TWI、8通道AD 转换、SPI通信协议端口等等。丰富的IO接口也为外部器件减少压力。Atmega128主要的工作是数据分析、数据处理、数据存储、数据发送等。本设计以Atmega128开发板为基础,在此开发板上合理分配IO单元,其电气电路如图4-1、4-2、4-3、4-4、4-5、4-6所示。

图4-1 Atmega128外形引脚图

图4-2 复位电路图4-3晶振电路图4-4SPI接口

图4-5 无线主机原理图

图4-6 ADXL345原理图

通过数据处理,将收集的数据发送到NRF905,再经过无线方式发送到接收端的NRF905。而接收端由STC89C52单片机为基准,接上NRF905,、显示器LCD12854,。这样,一个基于加速度传感器的姿态检测系统就基本就位。首先,ADXL时刻进行数据变化监测,一旦人体发生失衡跌倒状态触发,使休眠位复位,同时自动跳出休眠模式,并在寄存器0x32读出X轴数据0、寄存器0x33读出X轴数据1、0x34读出Y轴数据0、0x35读出Y轴数据1、0x36读出Z轴数据0、0x37读出Z轴数据1。通过2线IIC的通信协议接口,将以上数据传送到Atmega128单片机内,ATmega128单片机在内部将接受到的16位AD转换数据进行处理,将其换算为十进制数据。由ADXL345产生数据到Atmega128换算数据这一过程,称其为单次加速度数据。而人体一个完整的动作,需要多次采集单次加速度数据,并在一定时间范围内进行数据检查和判断。如果多个单次加速度数据在一定时间内有突然的正向加速度和反向加速度,则可以判定这个数据为跌倒数据,然后Atmega128单片机直接将跌倒的代码传到NRF905的寄存器中,然后通过控制NRF905的寄存器触发无线模块发送端发送数据,也就是跌倒这一事件对应的代码。直接发送代码的好处是把程序的轻重分工得到优化,把复杂的任务交给更灵活和敏捷的A VR单片机,而反应相对慢、数据存储量少的STC89C51则做简单处理,如数据显示、声光报警等。4.2无线从机

从机控制芯片采用的是STC89C51。89C51(STC12C5A08S2)是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only

Memory)的低电压、高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。采用89C51主要是用来做数据显示的作用和数据接收。数据显示采用的是LCD屏,分辨率为128×64,内置汉字字符,内置DC-DC转换电路,免除了外加负压。当主机代码发到NRF905接收模块时,会将代码存储到相应的寄存器并保存。STC89C51则在不断显示数据的同时不断检测NRF905是否新数据录入,所以当有新数据录入时,STC89C51能马上读取数据并做简单处理送到LCD12864模块接口,进行数据显示,如果代码为跌倒警报,则进行相关声光警报演示。其资源详细分布如下图4-6、4-7、4-8所示。

图4-6 89C51连接图

图4-7 复位电路图

图4-8 无线从机原理图

5软件设计

人体姿态检测系统的软件设计主要分为三大部分。第一部分,数据处理部分。这部分由无线主机控制芯片做软件处理,例如数据读取、数据转移、数据存储等操作。第二部分,无线数据传送。由主从机配合实现,要做到数据稳定、数据交互效率高、程序代码便于维护等要求。第三部分,数据显示并进行声光警报。此部分由从机进行处理,数据要求稳定即可。

5.1 ICCAVR与Keil集成开发环境

自ATMEL公司所研发的A VR系列单片机诞生以来,有很多第三方提供A VR单片机的集成开发软件,在本设计中,采用ICCA VR提供集成开发环境。ICCA VR是一种符合ANSI标准的C语言来开发单片机程序的一个工具,功能合适、适用方便、技术支持完善。ICCA VR提供了强大的函数库,字符类型函数、标准输入输出函数、编制库和内存分配函数、数学函数、字符串函数、BCD转换函数、存储器访问函数、延时函数、LCD函数、4×40字符型LCD函数、以8位外部存储器模式接口的LCD显示函数、IIC总线函数、LM75温度传感器函数、DS1621温度计函数、PCF8583实时时钟函数、DS1302实时时钟函数、DS1307实时时钟函数、单线通讯协议函数、DS18201822温度传感器函数、SPI函数、电源管理函数、格雷码转换函数。

C51的集成开发环境由ARM Germany GmbH和ARM Inc公司共同发布的KeilμVision4提供。Keil集成了各类广泛的工具,包括、ANSI C编译器、宏汇编程序、调试器、连接器、库管理器、固件和实时操作系统核心(real-time kernel)。而且有丰富的程序算法技术支持。与汇编相比,C语言在功能上、结构性、可读性、可维护性上都有明显的优势,大大提高了工作效率和减少项目开发周期。利用这些现成的函数库和集成开发环境的优势,界面如图5-1。

本文来源:https://www.bwwdw.com/article/vsdl.html

Top