基于51单片机的老人防跌倒报警器体温检测GSM短信上报原理图方案设计
硬件电路的设计
(下方附文件)
系统的功能分析及体系结构设计
3.1.1系统功能分析
本设计由STC89C52单片机电路+ADXL345加速度传感器电路+按键电路+蜂鸣器报警电路+DS18B20温度传感器电路+LED灯电路+GSM模块电路+电源电路组成。
1、板子竖直放置的时候,蜂鸣器不报警,板子歪倒一定角度,则蜂鸣器鸣叫报警。一段时间约15s未回复正确状态,GSM发送报警信息给手机:Help me!!。
2、如果温度超过38度,蜂鸣器报警,持续温度过高约15s左右,同时短信报警:has a cold
3、设计带有误报警按键,蜂鸣器报警的时候,如果老人认为是误报警,则按键按下,蜂鸣器停止报警,如果持续问题存在还会报警。
4、短信处理过程有指示灯显示。
5、GSM模块是SIM800A,该模块和SIM900A电路程序完全兼容外观外形一模一样。
3.1.2系统总体结构
本系统具体框图如下图所示:
原理图:
GSM_SIM800A模块电路设计
GSM模块,是将GSM射频芯片、基带处理芯片、存储器、功放器件等集成在一块线路板上,具有独立的操作系统、GSM射频处理、基带处理并提供标准接口的功能模块。GSM模块具有发送SMS短信,语音通话,GPRS数据传输等基于GSM网络进行通信的所有基本功能。简单来讲,GSM模块加上键盘、显示屏和电池,就是一部手机。
SIM800A是SIMCOM公司推出的一款高性能工业级 GSM/GPRS 模块, 该模块具有极高的性价比,在双频的市场中占据极大份额。
GSM_SIM800A模块采用高性能工业级GSM/GPRS模块:SIM800A,工作频段:GSM900/1800MHz。硬件设计在官方设计上加以优化,采用高效开关电源供电,SIM卡采用主流的卡座,质量更坚固。GSM_SIM800A模块在外围硬件的设计上参考了SIM800A 模块的硬件设计指南,对板子的电源、保护和抗干扰上做足了功夫。电源采用开关电源模块供电,电源利用效率高。
模块应用领域:远程监控、远程智能抄表、智能家居和车载设备等远程通讯设备。
SIM800A是一款两频GSM/GPRS模块,为SMT封装。其性能稳定,外观小巧,性价比高,能满足客户的多种需求。SIM800A工作频率为GSM/GPRS 900/1800MHz,可以低功耗实现语音、SMS和数据信息的传输。SIM800A尺寸为24243mm,能适用于各种紧凑型产品设计需求。
一、主要特性
(1)两频900/1800MHz
(2)GPRS multi-slot class 12/10
(3)GPRS mobile station class B
(4)满足GSM 2/2+ 标准
– Class 4 (2W @900MHz)
– Class 1 (1W @1800MHz)
(5)尺寸: 24243mm
(6)重量: 3.1g
(7)通过AT命令控制(GSM 07.07 ,07.05 and SIMCOM 增强AT命令集)
(8)SIM应用工具包
(9)供应电压范围: 3.4 ~ 4.4V
(10)低功耗
(11)操作温度范围: -40℃ ~ 85℃
(12)数据传输GPRS class 12:最大85.6 kbps(下行速率)
(13)CSD达14.4 kbps
(14)140USSD
(15)非透传
二、在短信应用方面有如下特点
(1)点对点MO and MT
(2)短信广播
(3)文本和PDU模式
三、模块接口说明
(1)5V 接5V
(2)GND 接GND
(3)R 串口接收端,与模块通信用的
(4)T 串口发送端,与模块通信用的
四、模块使用说明
(1)开机异常或自动关机
如果发生如下现象:
a、上电后,看到绿灯开始闪烁,很快又灭了,关机了;
b、开机正常后,发送短信进行数据传输时突然就关机了;
以上现象在保证 SIM 卡正常时,一般都是供电不足造成的。
电源请保证以下几点:
a、电压为5V,电压过低,模块会不工作。
b、电流需保证能提供2A的峰值。开机和数据传输过程电流较大,输出电流不够会造成电压跌落,而关机。
c、电源电流纹波不要过大,电压波动大,模块也会关机。
模块接口原理图如下图所示。
软件
#include <reg52.h>
#include <intrins.h>
#include <stdio.h>
#include <math.h> //Keil library
#include"delay.h"
#include"18b20.h"
#include "adxl345.h"sbit buzzer=P1^4; //定义接口
sbit key=P2^2;
sbit led_gsm=P1^1;unsigned long times_20ms=0; //定时20ms计时unsigned char shaidaoFlag=0; //发送消息标志
unsigned char read_adxl345=0; //读取标志
unsigned char sdDelaySec=0; //摔倒计时unsigned char readTem=0; //读取温度
unsigned char hotDelaySec=0; //温度过高计时
unsigned char hotFlag=0; //温度过高标志unsigned char i;void Init_Timer0(void);//函数声明
void UART_Init(void);
void uartSendByte(unsigned char dat);
void uartSendStr(unsigned char *s,unsigned char length);void main (void)
{static unsigned char ErrorNum=0; //adxl345数据判断结果计数static unsigned char CheckNum=0;float temperature=0.0;Init_Timer0(); //定时器0初始化UART_Init();led_gsm = 0;for(i=0;i<20;i++) //短暂延时gsm稳定{DelayMs(100);}Init_ADXL345(); //初+始化ADXL345Single_Read_ADXL345(0X00); //读出的数据为0XE5,表示正确uartSendStr("AT+CMGF=1\r\n",11);buzzer=1;led_gsm =1;while(1) //主循环{if(readTem==1) //定时读取温度标志{readTem=0;temperature=(float)ReadTemperature()*0.0625; //读取温度if(temperature>=38.0) //温度过高{hotFlag = 1;}//温度过高标志 else{hotFlag=0;} //清除温度过高标志 if(hotFlag == 1) hotDelaySec++;//温度过高计时 1s处理一次else hotDelaySec = 0;//否则清零if(shaidaoFlag == 1) sdDelaySec++;//温度过高计时 1s处理一次else sdDelaySec = 0;//否则清零}if(read_adxl345==1){read_adxl345=0;ReadData_x();CheckNum++;if((temp_X<450)||(abs(temp_Y)>750)) //方位值判断 查看正常次数{ErrorNum++;}if(CheckNum>=5) //进行5次处理{if(ErrorNum>1) //3次以上正常情况 不进行上报{shaidaoFlag =1;}//摔倒标志 else{shaidaoFlag =0;}//清楚 摔倒标志ErrorNum=0; //清空滤波计数CheckNum=0; //清除总计数 }}if((hotFlag == 1)||(shaidaoFlag == 1))//有异常{buzzer= 0;}else buzzer=1; //关闭蜂鸣器 if((hotDelaySec>=15)||(sdDelaySec>=15))//15S 上报{led_gsm=0;uartSendStr("AT+CMGF=1\r\n",11);for(i=0;i<3;i++) //短暂延时gsm稳定{DelayMs(100);}uartSendStr("AT+CSCS=\"GSM\"\r\n",15);for(i=0;i<3;i++) //短暂延时gsm稳定{DelayMs(100);}uartSendStr("AT+CMGS=\"+8618105140357\"\r\n",26); //可以修改电话号码
// SendStr("AT+CMGS=\"+8615706086115\"\r\n",26); //可以修改电话号码for(i=0;i<2;i++) //短暂延时gsm稳定{DelayMs(100);}if(hotDelaySec>=15){uartSendStr("Has a cold!",11); //可以修改短信内容,11代表短信内容长度,不可以发汉字,如果发汉字的话,需要转化为特定的码hotDelaySec=0; //清除计数}if(sdDelaySec>=15){uartSendStr("Help me!!",9); //可以修改短信内容,9代表短信内容长度sdDelaySec = 0;//清除计数}for(i=0;i<2;i++) //短暂延时gsm稳定{DelayMs(100);}uartSendByte(0x1a);uartSendByte(0x1a);for(i=0;i<30;i++) //短暂延时gsm稳定{DelayMs(100);} led_gsm=1;}if(key==0){hotFlag=0; //上报过热标志清零shaidaoFlag=0; //摔倒标志 清零buzzer=1; //关闭蜂鸣器}}
}
.
链接:https://pan.baidu.com/s/1F0WtP7gEZpGa6XQobYnAIA
提取码:vgsc
.
基于51单片机的老人防跌倒报警器体温检测GSM短信上报原理图方案设计相关推荐
- 基于STM32单片机老人防跌倒报警系统GSM短信上报原理图PCB
功能: 0.本项目采用STM32F103C8T6作为单片机系统的控制MCU 1.本项目采用倾角传感器adxl345模块,实时检测老人的状态角度. 2.采用GSM模块实现短信的发送,只要老人跌倒了(且没 ...
- 基于单片机智能手环心率老人防跌倒心率体温 步数里程
功能介绍 以STM32单片机作为主控系统: OLED液晶显示心率体温步数等信息: 通过按键设置心率.体温上限设置: 当心率或者体温超过按键设置上限蜂鸣器进行声光报警提醒: 通过wifi模块esp826 ...
- 自动计数报警器c语言,基于51单片机的光电式计数报警器
详细的基于51单片机的光电式计数报警器的技术方案,有图,详尽,从原理到设计思路,到设计过程,关键代码,到测评都很详尽. 基于51单片机的光电式计数报警器 概述与应用背景 光电式传感器是将光信号转化为电 ...
- 3、基于51单片机的智能水箱控制系统-温度-PH值-水位(仿真+程序+原理图)
目录 基于51单片机的智能水箱控制系统 1.主要功能 2.实验结果 3.仿真工程 4.原理图 5.程序源码 6.资源获取 基于51单片机的智能水箱控制系统 1.主要功能 51单片机检测水箱内温度,ph ...
- 基于51单片机+SHT30设计的环境温度与湿度检测设备(IIC模拟时序)
一.项目介绍 当前文章介绍基于51单片机和SHT30传感器设计的环境温度与湿度检测设备.设备采用IIC模拟时序通信协议,能够实时监测环境的温度和湿度,并将数据通过LCD显示屏显示出来:可以广泛应用于室 ...
- 基于51单片机的脉搏心率心跳血压体温测量检测仿真(仿真+原理图+源码+论文)
资料编号:057 本设计利用红外光电传感器产生脉冲信号,经过放大整形后,输入单片机内进行相应的控制,从而测量出一分钟内的脉搏跳动次数,快捷方便.测量范围限可以用按键调节,并进行声音报警,测量结果以数 ...
- 基于51单片机的蓝牙控制双色LED点阵显示屏(实物图+原理图+源码+全套资料)
资料编号:086 采用stm32单片机,可以通过蓝牙app控制点阵显示不同效果, 具体功能请看演示视频,全套资料齐全: 86-基于51单片机的蓝牙控制双色LED点阵显示屏(实物图+原理图+源码+全套资 ...
- 17、基于51单片机智能饮水机带温度水位检测APP控制系统设计
毕设帮助.开题指导.技术解答(有偿)见文末. 目录 摘要 一.设计方案 二.设计功能 三.实物图 四.原理图 五.PCB图 六.Proteus仿真 七.程序源码 八.资料包括 摘要 本设计基于STC8 ...
- 基于51单片机的汽车自动照明灯超声波光敏检测远近光灯方案原理图设计
系统的功能分析及体系结构设计 (附文件) 系统功能分析 本设计由STC89C52单片机+光照检测电路(光敏电阻)+超声波HC-SR04模块电路+4位高亮白色LED灯+黄绿LED指示灯电路+拨动开关电路 ...
最新文章
- 做个游戏:设计代码生成特定的调用堆栈
- verilog 移位运算符 说明_FPGA、数字IC系列(2)——电子科大与北航部分Verilog题目与解析...
- [渝粤教育] 广东-国家-开放大学 21秋期末考试服务标准化10011k1
- dbms支持哪几种数据模型_DBMS中不同类型的数据模型
- Nodejs之view中的视图模板之——EJS模板语言,快速入门
- ES6——generator与yield
- 荒野行动系统推荐观战榜_荒野行动 观战延迟投票结果公示 更新计划抢先看!...
- VS2010开发应用程序读写注册表
- linux m25p80 dts,OpenWrt添加开发板RT5350-EVB,并成功设置pppoe
- acm模板 java_java 之acm模板
- Linux下的python.......安装
- Python实现栅格数据拼接、裁剪等操作
- 产品读书《产品经理的第一本书》
- pcm设备的注册流程
- React 后台管理系统
- 爬取豆瓣音乐Top250详细教程
- 罗胖关于管理与企业发展的关系
- simulink他励直流电动机降压调速仿真
- CSS3 渐变边框,按钮样式、设计图标、电子优惠券 详解!
- 小米6手机投屏到wins 8.1电脑上的软件——scrcpy的安装与使用教程
热门文章
- html 天气插件,H5 实现天气效果(心知天气插件)
- linux+usb刻录,如何在Ubuntu上安装Etcher-开源USB刻录机工具
- Win10下 Ubuntun1604LTS双系统安装
- 一加android 6.0壁纸,Android 6.0!一加发布氢 OS V1.4
- 保险业务与系统——LOMA 290 保险公司运营——第二讲——寿险行业的竞争、监管及职业道德
- 基于java贫困学生信息跟踪管理系统
- 开源家庭NFC门禁系统
- OkHttp官方使用教程
- [NetworkFlow]网络流建模相关
- 任正非最新讲话:内卷都是发生在不应该进行精益求精的地方