目录
2.1单片机的功能及最小系统的电路设计.................................................. 9
内置闪存存储器.................................................................................. 10
2.1.1 CRC计算单元............................................................................ 11
2.1.2内置SRAM................................................................................. 11
2.1.3 嵌套的向量式中断控制器(NVIC)........................................... 11
2.1.4 16个Cortex™-M3的中断线)和16个优先级。....................... 11
2.1.5部中断/时间控制器.................................................................... 11
2.1.6 时钟和启动................................................................................ 12
2.1.7供电方案..................................................................................... 12
2.1.8供电监控器................................................................................. 12
2.1.9电压调压器................................................................................. 13
低功耗模式.......................................................................................... 13
2.1.11 RTC和后备寄存器.................................................................. 14
2.1.12电压调压器定时器和看门狗................................................... 14
2.3 ADXL345简要介绍.............................................................................. 16
2.3.1传感器自带抗自动休眠模式................................................... 16
2.3.2通信方式................................................................................... 16
2.4 GSM模块简介...................................................................................... 18
2.4.1 VBAT 引脚................................................................................ 18
2.4.2 PWRKEY 引脚.......................................................................... 19
2.5 OLED显示模块.................................................................................... 20
2.6.1心率传感器检测原理................................................................. 22
3.2 Altium Designer应用............................................................................ 24
设计了一种基于ADXL345加速度传感器的跌倒实时检测与报警系统,用以实现老人跌倒后可以被及时发现并救助;系统采用STM32单片机,搭载了无线通信和北斗卫星定位模块;设计中添加了脉搏温度的测量,实时监测老人的身体状态。对跌倒和日常生活运动特征参数进行了研究分析,提出了基于SVM阈值法的三次。。。。。。。。。。。。。
关键词:加速度传感器;脉搏传感器;单片机;北斗模块
A fall detection real-time detection and alarm system based on ADXL345 accelerometer is designed to realize the timely discovery and rescue of the elderly after falling. The system adopts STM32 single-chip microcomputer, equipped with wireless communication and Beidou satellite positioning module; pulse temperature is added in the design. The measurement measures real-time monitoring of the physical condition of the elderly. The characteristic parameters of fall and daily life movements are studied and analy。。。。。。。。。。。。。。
Key words: acceleration sensor; pulse sensor; single chip microcomputer; Beidou module
1 跌倒报警器研究现状
老年人摔倒现象时有发生,老年人跌倒带来的后果严重。因此,准确判断老年人发生危险,研究一种老年人跌倒报警器非常重要。基于上述要。。。。。。。。。。。。。。。
现用的老年人跌倒报警装置是通过无线对讲系统研发的。它外观精美,自动化程度高,有很强的专业性。但是,设计者忽略了一个问题,因为大多数老年人使用现代化产品不熟练,随着视力、操作能力的下降,使用该设备有很大困难。另外,老年人跌倒以后,由于受到惊吓,再进行操作按钮、实施对讲,就更不现实。随着信息化、智能化、网络化的。。。。。。。。。。。。。。。。
2 硬件设计
本次设计的老人防摔设计主要是基于51单片机作为主控芯片、ADXL345电容式微机械三轴加速度计作为检测老人摔倒的检测传感器、还有GPS模块做为老人摔倒地址定位的传感器以及一块GSM模块进行通知亲友。考虑到扩展的可能性。。。。。。。。。。。。
系统总设计框图
2.1单片机的功能及最小系统的电路设计
本系统基于STM32F103系列单片机来实现功能,因为系统没有其它高标准的。。。。。。。。。。
STM32F103C8系列使用高性能的ARM® Cortex™-M3 32位的RISC内核,工作频率为72MHz,内置高速存储器(高达128K字节的闪存和20K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC、3个通用16位定时器和1个PWM定时器,还包含标准和先进的通信接口:多达2个I2C接口和SPI接口、3个USART。。。。。。。。。。。
STM32F103系列产品提供包括从36脚至100脚的6种不同封装形式;根据不同的封装形式,器件中的外设配置不尽相同。下面给出了该系列产品中所有外设的基本介绍。这些丰富的外设。。。。。。。。。。
2.1.1 CRC计算单元
CRC(循环冗余校验)计算单元使用一个固定的多项式发生器,从一个32位的数据字产生一个在众多的应用中,基于CRC的技术被用于验证数据传输或存储的一致性。在EN/IEC 60335-1标准的范围内,它提供了一种检测闪存存储器错。。。。。。。。。。
2.1.2内置SRAM
20K字节的内置SRAM,CPU能。。。。。。。。。。。。。。。。
2.1.3 嵌套的向量式中断控制器(NVIC)
STM32产品内置嵌套的向量式中断控制器,能够处理多达43个可。。。。。。。。。。。。。
紧耦合的NVIC能够达到低延迟的中断响应处理
中断向量入口地址直接进入内核
紧耦合的NVIC接口
允许中断的早期处理
处理晚到的较高优先级中断
支持中断尾部链接功能
自动保存处理器状态
中断返回时自。。。。。。。。。。。。。。。。
2.1.5部中断/时间控制器
部中断/事件控制器包含19个边沿检测器,用于产生中断/事件请求。每个中断线都可以立地配置它的触发事件(上升沿或下降沿或双边沿),并能够单独地被屏蔽;有一个挂起寄存器维。。。。。。。。。。。。。
2.1.6 时钟和启动
系统时钟的选择是在启动时进行,复位时内部8MHz的RC振荡器被选为默认的CPU时钟随后可以选择外部的、具失效监控的4~16MHz时钟;当检测到外部时钟失效时,它将被隔离,系统将自动地切换到内部的RC振荡器,如果使能了中断,软件可以接收到相应。。。。。。。。。。。。
2.1.7供电方案
VDD = 2.0~3.6V:VDD引脚为I/O引脚和内部调压器供电。
VSSA,VDDA = 2.0~3.6V:为ADC、复位模块、RC振荡器和PLL的模拟部分提供供电。使用ADC时,VDDA不得小于2.4V。VDDA和VSSA必须分别连接到VDD和VSS。
VBAT = 1.8~3.6V:当关闭VDD时,(通过内部电源切换器)为RTC、外部32kHz振荡器和后备寄存器供电。
2.1.8供电监控器
内部集成了上电复位(POR)/掉电复位(PDR)电路,该电路始终处于工作状态,保证系统在供电超过2V时工作;当VDD低于设定的阀值(VPOR/PDR)时,置器件于复位状态,而不必使用外部复位电路。器件中还有一个可编程电压监。。。。。。。。。。。。
2.1.9电压调压器
调压器有三个操作模式:主模式(MR)、低功耗模式(LPR)和关断模式
主模式(MR)用于正常的运行操作低功耗模式(LPR)用于CPU的停机模式
关断模式用于CPU的待机模式:调压器的输出为高阻。。。。。。。。。。。。。。。
低功耗模式
STM32F103xC、STM32F103xD和STM32F103xE增强型产品支持三。。。。。。。。。。。。。
睡眠模式
在睡眠模式,只有CPU停止,所有外设处于工作状态。。。。。。。。。。。。。
停机模式
在保持SRAM和寄存器内容不丢失的情况下,停机模式可以达到最低的电能消耗。在停机模式下,停止所有内部1.8V部分的供电,PLL、HSI的RC振荡器和HSE晶体振荡。。。。。。。。。。。
可以通过任一配置成EXTI的信号把微控制器从停机模式中唤醒,EXTI信号可。。。。。。。。。
待机模式
在待机模式下可以达到最低的电能消耗。内部的电压调压器被关闭,因此所有内部1.8V部分的供电被切断;PLL、HSI的RC振荡器和HSE晶体振荡器也被关闭;进入待机模式。。。。。。。。。。
从待机模式退出的条件是:NRST上的外部复位信号、IWDG复位、WKUP引脚上的一。。。。。。。。。。。
2.1.10 DMA
灵活的7路通用DMA可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输;DMA控制器支持环形缓冲区的管理,避免了控制器传输到。。。。。。。。。。。。。。SPI、I2C、USART,通用、基本和高级控制定时器TIMx和ADC。
2.1.11 RTC和后备寄存器
RTC和后备寄存器通过一个开关供电,在VDD有效时该开关选择VDD供电,否则由VBAT引脚供电。后备寄存器(10个16位的寄存器)可以用于在关闭VDD时,保存20个字节的用户应用数据。RTC和后备寄存器不会被。。。。。。。。。。。。。。。。。
实时时钟具有一组连续运行的计数器,可以通过适当的软件提供日历时钟功能,还具有闹钟中断和 阶段性中断功能。RTC的驱动时钟可以是一个使用外部晶体的32.768kHz的振荡器、内部低功耗RC 振荡器或高速的外部时钟。。。。。。。。。。。。。。。。。。。。。。
2.1.12电压调压器定时器和看门狗
中等容量的STM32F103xx增强型系列产品包含1个高级控制定时器、3个普通定时器,以及2个看门狗定时器和1个系统嘀嗒定时器。下表比较了高级。。。。。。。。。。
2.2 GPS模块
GPS模块就是集成了RF射频芯片、基带芯片和核心CPU,并加上相关外围电路而组成的一个集成电路。在本次设计采用了设计要求的VK2828U7G5LF模块,这个模块主芯片是UBX-G7020-KT,通过串口通信与单片机相连接,当使他工作的时候,就会开始定位,并将数据通过串口送给单片机,数据遵守NMEA0183协议,里面有时间、位置、地面速度信息等,我们可以直接对送过来的数据进行解读,就可以获取我们所先要的时间信息。
RF射频属性:
2.3 ADXL345简要介绍
ADXL345是一款完整的3轴加速度测量系统,可选择的测量范围有±2 g,±4 g,±8 g或±16 g。既能测量运动或冲击导致的动态加速度,也能测量静止加速度,例如重力加速度,使得器件可作为倾斜传感器使用。 该传感器为多晶硅表面。。。。。。。。。。。。
2.3.1传感器自带抗自动休眠模式
如果ADXL345在静止期间自动切换到休眠模式,可以省电。要使能此功能,在THRESH_INACT寄存器(地址0x25)和TIME_INACT寄存器(地址0x26)设。。。。。。。。。。。。。
2.3.2通信方式
I2C 如图所示,CS引脚拉高至VDD I/O,ADXL345处于I2C模式,需要简单2线式连接。ADXL345符合《UM10204 I2C总线规范和用户手册》03版(2007年6月19日,NXP Semiconductors提供)。如果满足了表11和表12列出的总线参数,便能支持标准(100 kHz)和快速(400 kHz)数据传输模式。如图41所示,支持单个或多个字节的读取/。。。。。。。。。。。。。。。。。
如果有其他器件连接到同一I2C总线,这些器件的额定工作电压电平不能高于VDD I/O 0.3V以上。I2C正确操作需要外接上拉电阻RP。为确保正确操。。。。。。。。。。。。。。。。。。。
加速度计为机械结构,包含可以自由移动的元件。这些运动部件对机械应力非常灵敏,程度远远超过固态电子产品。0 g偏置或偏移为重要加速度计指标,因为它定义了用于测量加速度的基线。组装载有加速度计的系统时,可施加附加应力。这些应力可能来自,但不限于,元件焊接、安装时的电路板应力和元件上的任何混合物的应用。如果有必要校准,建议系统组装完成后进行校准,以补偿这些影响。假设ADXL345灵敏度如表1所列。。。。。。。。。。。。。
X0g和Y0g的实测值对应于x轴和y轴偏移,通过从加速度计输出中减去。。。。。。。。。。。。
因为z轴测量在+1 g场完成,无调头或单点校准方案假定为z轴的理想灵敏度SZ。从Z+1g。。。。。。。。。。。。。。。。。
使用偏移寄存器(寄存器0x1E、寄存器0x1F和寄存器0x20),ADXL345可以自动补偿偏移输出。这些寄存器包含8位二进制补码值,为自动添加到所有测得的加速度值,其结果随后置入到DATA寄存器。因为置于偏移寄存器的值为附加值,负值置于寄存器,消除正偏移,相反则消除负偏移。该寄存器比例因子为15.6 mg/LSB,与选定的g。。。。。。。。。。。。。。。
这些值编程至OFSX寄存器、OFSY寄存器和OFXZ寄存器,分别为0xFD、0x03和0xFE。正如ADXL345的所有寄存器,当器件电源移除后,偏移寄存器不保留写入值。重新启动ADXL345,返回偏移寄存器,进入默认值0x00。 由于无调头或单点校准方法假定z轴为理想灵敏度,任何灵敏度误差都会导致偏移误差。举例来说,如果前面例。。。。。。。。。。。。。。。
通过PB10和PB11两个I/O口将倾角模块检测到的数据输送到。。。。。。
2.4 GSM模块简介
2.4.1 VBAT 引脚
VBAT 供电范围 3.2~4.8V 之间,常规下为 4.0V, 在某些情况下,射频的数据发送时隙脉冲会耗流峰值达到 2A,这必然会导致电压跌落,所以需要有 2A 以上的电流供电能力。主要看客户给模块供电 IC 选择,如果供电能力较低,那么需要加大电容补偿,以免电压跌落造成模块重启。PCB 布局时候 VBAT 上的旁路电容一定要放在对应 pin 。。。。。。。。。。。。
在电源设计中一定要保证不能使 VBAT 跌落至 3.1V 以下。因此, VBAT 设计会影响整个模块的工作稳定性,比如常见问题模块开机几秒钟就关机、TCP/IP 传输数据频繁大数据量、信号强度不好的情况,都可。。。。。。。。。。。。
2.4.2 PWRKEY 引脚
PWRKEY 引脚内部通过 100K 电阻上拉到 3V 电压,所以客户设计时候要注意模块端的电平。为了防止 PWRKEY 与 IO 直连导致串电,增强开关机可靠性,建议客户使用。。。。。。。。。。。。
模块开关机时序如下:
对于 SIM800、SIM800A、SIM800D 模块,可以通过 STATUS 引脚判断模块是否开关机;对于 SIM800B、 SIM800S 模块,可以通过 VDD_E。。。。。。。。。。。。。
2.5 OLED显示模块
有机发光二极管(缩写:OLED)又称有机电激发光显示(缩写:OLED)、有机发光半导体,OLED技术最早于1950年代和1960年代由法国人和美国人研究,其后索尼、三星和LG等公司于21世纪开始量产,与薄膜晶体管液晶显示器为不同类型的产品,前者具有自发光性、广视角、高对比、低耗电、高反应速率、全彩化及制程。。。。。。。。
OLED显示技术具有自发光的特性,采用非常薄的有机材料涂层和玻璃基板,当有电流通过时,这些有机材料就会发光,而且OLED显示屏幕可视角度大,并且能够节省电能,从2003年开始这种显示设备在MP3播放器上得到了应用。 以OLED使用的有机发光材料来看,一是以染料及颜料为材料的小分子器件系统,另一则以共轭性高分子为。。。。。。。。。。。。
2.6 脉搏模块
目前心率监测系统有以下几种检测方法:光电容积脉搏波法、液体耦合腔心率传感器、压阻式心率传感器以及应变式心率传感器。近年来,光电检。。。。。。。
根据朗伯一比尔(Lamber—Beer)定律,物质在一定波长处的吸光度和其浓度成正比。当恒定波长的光照射到人体组织上时,通过人体。。。。。。。。。。。。
心率主要由人体动脉舒张和收缩产生的,在人体指尖组织中的动脉成分含量高,而且指尖厚度相对其他人体组织而言比较薄,透过手指后检测到的光强相对。。。。。。。。。
手指组织可以分成皮肤、肌肉、骨骼等非血液组织和血液组织,其中非血液组织光的吸收量是恒定的。在血液中,静脉血的搏动相对于动脉血来说十分。。。。。。。。。。。
2.6.1心率传感器检测原理
光电容积法的基本原理是利用人体组织在血管搏动时造成透光率不同来进行脉搏测量的。其使用的传感器由光源和光电变换器两部分组成,通过绑带或夹子固定在病人的手指或耳垂上。光源一般采用对动脉血中氧和血红蛋白有选择性的一。。。。。。。。。。。
2.6.2心率传感器引脚
脉搏传感器的实物图如下图所示,三个引脚分别为S、+、-,将S与单片机。。。。。。。。。。
脉搏传感器的结构如下图所示,最终以模拟的电压信号向单片机输出脉搏信号。
心率传感器的结构如下图所示:
脉搏模块通过PB12口,将模拟信号输入单片机中。电路图如下图所示:
2.7 按键电路
本设计采用了两个独立按键,由于考虑到触发报警可能是老人弯腰捡东西,所以设置了K1按键,按下K1按键本次倾角无效,K2按键为测量心率按钮,按下开始测量心率。其电路图如2-13所示:
3 软件设计
3.1 keil应用
Keil C51是美国Keil Software公司出品的STM32系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要。。。。。。。。。。。。。。
图17 Keil_c软件界面
该软件是一款集编程和仿真于一体的软件,它支持汇编、C语言及二者的混合编程。
3.2 Altium Designer应用
Altium Designer是PORTEL公司在80年代末推出的EDA软件。Altium Designer是应用于Windows9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以网设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个32。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。
3.3程序流程
本次设计,通过ADXL345检测老人是否摔倒 ,如果老人摔倒,蜂鸣器会报警,如果摔倒超过15S老人仍为站起来,单片机会通过GSM模块给所绑定的手机号进行发送提示短息,信息里有最近一次的GPS的定位信息。
主程序流程图如下:
GSM模块发送短信流程图
4.系统分析与调试
本设计是在Keil C环境下开发的,Keil C软件支持C语言的编程及调试,运用方便,是做C语言毕业设计者的首选。设计的首要任务是安装和学习使用这个软件,在简单的学习和了解Keil C后,在编译完Keil C后,再运用STC_ISP_V480软件烧录到开发板上,实现实物与程序的连接。在烧录前要对STC_ISP_V480进行一些必要的设置。第一。。。。。。。。。。。
请给MCU上电时,打开开发板上的开关,它就自行烧录了。
。。。。。。。。。。。。。。。。。。。。。。
图20 程序烧录运行图
在完成对程序的调试及烧录之后,还要对功能进行测试,首先用万用表测试电源和地有没有短路,然后再对设计进行通电。最开始要对主控板进行测试,因为它是核心,按下按键看下数码管是否显示正常,当显示“b”会显示30s,当“b”灭掉之后按下“sos。。。。。。。。。。。。。。。。
万用表检测是否短路时,发现有短路显现,经过排查,发现数码管接错,数码管。。。。。。。
程序烧录不了,当用同学的电脑烧录时,可以烧录,最后发现是串口的com端口选择错误,每个电脑的端口都不一样的。要用“串。。。。。。。。。。。
当布防灭掉之后就报警,人体感应模块根本没有检测到人体为什么会报警呢?通过电路的排除和查阅资料,最终确定是人体感应模块的延时调到了最大。。。。。。。。。。。。
5 设计心得体会
这次课程设计让我受益匪浅,无论从知识上还是其他个方面。上课的时候从来没有见过真正的单片机,只是从理论的。。。。。。。。。。。。。。。。
本文介绍了在设计的过程的关键点,供大家参考学习,如果下载链接失效、对其他单片机硬件设计感兴趣、有不明白的或者错误的,可以添加徽biyezhan007
郑重声明,此文章提供给大家做参考模板,杜绝一切不良学术不良行为。