版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
物联网短距离无线通信技术项目十八
BLE家庭门磁报警系统1.项目场景2.安防类程序逻辑分析目录CONTENTS3.安防类程序接口分析4.项目实践项目场景项目场景
安全问题无疑是每个家庭最关注的问题。如果能让家庭更安全,为什么要拒绝呢?有了智能门磁,可以随时了解门窗开关状态,保护室内财产安全。相比智能门锁,智能门磁因为位置隐蔽,所以不用担心被破解。智能门磁设备,可贴在门、窗、抽屉等位置,实时监测其开关门状态并同步到用户的智能手机上。当门窗异常打开时,用户可接到电话报警。无需SIM卡,免电话费,随贴随用,超长待机。16:19
/3任务目标本节以智能门磁系统检测预警系统为例学习在应用接口下的报警节点的程序开发,学习并掌握控制节点的操作逻辑和应用接口的使用。16:19
/4安防类程序逻辑分析
安防类程序逻辑分析
远程信息预警程序逻辑1)节点安全信息定时获取并上报;2)当节点监测到危险信息时系统能迅速上报危险信息;3)当危险信息解除时系统能够恢复正常;4)当监测到查询信息时节点能够响应指令并反馈安全信息。16:19
/5安防类程序逻辑分析
安防类程序流程:16:19
/6安防类程序逻辑分析
安防类协议设计:1)每条数据以“{}”作为起始字符;3)数据上行格式参考:{value=12,status=1}4)数据下行查询命令参考:{value=?,status=?},程序返回:{value=12,status=1}安防类程序接口分析
安防类程序接口分析
传感器应用接口函数:
函数名称函数说明sensorInit()硬件设备初始化sensoLinkOn()传感器入网成功后调用sensoUpdate()sensorCheck()上传控制器实时数据实时监测传感器报警状态,并实时预警上报ZXBeeUserProcess()MyEventProcess()解析接收到的下行控制命令用户事件处理16:19
/8安防类程序接口分析
安防类程序流程:16:19
/9安防类程序接口分析
无线数据包收发函数函数名称函数说明ZXBeeInfSend()ZXBeeInfRecv()节点发送无线数据包给汇集节点处理节点收到无线数据包
无线数据包解析函数函数名称函数说明ZXBeeBegin()增加ZXBee通信协议的帧头“{”增加ZXBee通信协议的帧尾“}”并返回封包后的数据包指针ZXBeeEnd()ZXBeeAdd()ZXBee通信协议的数据包中添加数据ZXBeeDecodePackage()对接收到的无线数据包进行解包16:19
/10安防类程序接口分析
家庭门磁报警系统设计16:19
/11项目实践项目实践
硬件功能设计
从上图中可以得知,CC2540直接驱动霍尔传感器,霍尔传感器原理图如下:16:19
/12项目实践
家庭门磁报警通信协议数据方向协议格式说明上行(节点往应用发送数据){doorStatus=X}X表示霍尔传感器状态查询霍尔传感器状态,返回:{
doorStatus
=Y},X为0表示门磁打开状态,X为1表示门磁关闭状态下行(应用往节点发送指令){doorStatus
=?}16:19
/13项目实践
传感器初始化霍尔传感器初始化代码如下:voidsensorInit(void){hall_init();//霍尔传感器初始化//启动定时器,触发传感器上报数据事件:MY_REPORT_EVTosal_start_timerEx(simpleBLEPeripheral_TaskID,
MY_REPORT_EVT,(uint16)((osal_rand()%10)
*1000));}16:19
/14项目实践
传感器主动上报传感器数据voidsensorUpdate(void){char
pData[16];char
*p
=
pData;updateDoorStatus();ZXBeeBegin();sprintf(p,
"%u",
doorStatus);ZXBeeAdd("doorStatus",p);p
=ZXBeeEnd();if
(p
!=NULL)
{//智云数据帧格式包头//
智云数据帧格式包尾ZXBeeInfSend(p,
strlen(p));//将需要上传的数据进行打包操作,并通过zb_SendDataRequest()发送到协调器}printf("sensor->sensorUpdate():
doorStatus=%u\r\n",
doorStatus);}}16:19
/15项目实践
霍尔传感器实时监测voidsensorCheck(void){static
char
lastDoorStatus=0;static
uint32
ct0=0;char
pData[16];char
*p
=
pData;updateDoorStatus();ZXBeeBegin();if
(lastDoorStatus
!=
doorStatus
||(ct0!=0&&
osal_GetSystemClock()>(ct0+3000))){sprintf(p,
"%u",
doorStatus);ZXBeeAdd("doorStatus",p);ct0=
osal_GetSystemClock();if
(doorStatus
==0)
{ct0=0;}lastDoorStatus
=
doorStatus;}p
=ZXBeeEnd();if
(p
!=NULL)
{int
len
=
strlen(p);ZXBeeInfSend(p,
len);}}16:19
/16项目实践
自定义事件处理void
MyEventProcess(
uint16
event
){if
(event
&MY_REPORT_EVT)
{sensorUpdate();//
传感器数据定时上报//启动定时器,触发事件:MY_REPORT_EVTosal_start_timerEx(simpleBLEPeripheral_TaskID,
MY_REPORT_EVT,
20*1000);}if
(event
&
MY_CHECK_EVT)
{sensorCheck();//
传感器状态实时监测//启动定时器,触发事件:MY_CHECK_EVTosal_start_timerEx(simpleBLEPeripheral_TaskID,
MY_CHECK_EVT,
100);}}16:19
/17项目实践
霍尔传感器驱动函数函数名称函数说明hall_init
()霍尔传感器初始化get_hall_sta
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑能耗监测系统施工方案及技术措施
- 2026年【机修钳工(初级)】考试题及答案解析
- 2026年全国中级经济师考试真题卷含答案(保险专业)
- 患者知情同意书
- 保修责任保险与风险分担机制
- 2026年河北省衡水市医疗三严三基理论考试试题及答案
- 计量配料系统安装调试施工方案及技术措施
- 2026年保险代理人资格考试试题(含答案)
- 2026福建厦门市杏南中学非在编(顶岗)教师招聘21人笔试题库附完整答案详解【名师系列】
- 2026四川内江市隆昌市石燕桥镇李市小学招聘1人笔试题库【综合题】附答案详解
- 根据新版事故类型(27 类)编制的生产安全事故应急预案
- 2026年上海市普通高中学业水平合格性考试物理模拟卷(含答案详解)
- 2025-国家基层糖尿病防治管理指南
- 办理食品经营许可证的食品安全管理制度目录
- 国电南瑞员工手册
- 三江能源有限公司煤矿矿山地质环境保护与土地复垦方案
- 初中英语感叹句用法及练习题附答案汇编
- 2022年血液透析质量控制检查表
- 优选教案:人教B版高中数学选择性必修第三册6.3利用导数解决实际问题
- 2023年华新燃气集团有限公司招聘笔试题库及答案解析
- 2023年民航无人机驾驶理论考试题库大全-上(单选800题)
评论
0/150
提交评论