项目四 智能小区安全防护系统

一.项目需求

随着城市化进程的加速和人口数量的增加,城市居民社区管理越来越复杂,安全问题也逐渐受到关注。传统的安全防护手段已经不能满足现代社区的需求,因此智能小区安全防护系统应运而生。
智能小区安全防护系统利用物联网、人工智能等先进技术,实现社区内的监控、报警、门禁、巡逻等功能,可以有效提高社区的安全性和管理效率,减少犯罪率,保障居民的生命财产安全。
项目背景中还可以加入一些现代社会面临的安全问题,比如盗窃、抢劫、火灾等,强调了安全防护系统的必要性和应用前景。同时,可以提及一些成功案例和先进技术的发展,强调智能小区安全防护系统的创新性和实用性。

二.项目目标

控制终端:距离探测(超声波测距、激光测距)、门禁(读卡指纹人脸识别、远程开启)、车辆管理系统(地感线圈、图像采集、字符识别等)入侵报警(声光报警)、视频监控(摄像头)

三.实验步骤

1.创建基于 MQTT 协议的产品

image.png

在第三步填写信息中,添加必要的产品信息(标记*号的项)。其中“节点类型”选择“直连设备”,
“接入协议”选择“MQTT”,“数据协议”选择“OneJson”,“联网方式”选“Wi-Fi”,“开发方案”选择“自定义方案”。

2.根据项目场景创建产品物模型

进入产品开发详情页面


image.png

点击页面右侧的“设置物模型”按钮,进入物模型管理页面


image.png

添加系统功能点和自定义功能点。
image.png

在弹出的添加页面中,选择如下图所示的系统功能点,点击右下角的“添加”按钮完成添加


image.png

检查页面上添加的物模型各功能点信息无误后,点击“保存”按钮,并点击弹出的确认提示
“确定”。则创建的物模型在 OneNET 平台上生效。
image.png

3.创建基于 MQTT 的设备

在产品下添加名为Controller和Simulator的设备


image.png

4.模拟设备接入OneNET 平台

4.1.获取产品、设备的必要信息(产品ID,设备名称和设备密钥)

image.png

4.2.使用官方 Token 计算工具,获得验证 token 信息

image.png

4.3.安装并配置 MQTT.fx 工具模拟设备信息

设置 Profile Name:可设置一个便于记忆的名字,如“智能小区模拟设备接入”
设置 Broker Address:mqtts.heclouds.com (MQTT 设备接入平台网址)
设置 Broker 端口:1883 (本次实训任务采用非 TLS 加密的 MQTT 连接)
设置 Client ID:{设备名称}(前一个步骤中确定的设备名称填入此处)
在下方的第一个选项页“General”中,设置MQTT 协议版本号:取消默认勾中,确保下方版本选择下拉框可选,并选择为 3.1.1


image.png

设置 User Name:{产品 ID}(前一个步骤中确定的产品 ID)
设置 Password:{token} (前一个步骤中计算得到的 token)


image.png

4.4.使用 MQTT.fx 工具模拟设备接入

点击“Connect”,如果一切正常,工具将很快登陆接入OneNET 平台,此时 Connect 按钮变灰,右侧 Disconnect 按钮处于激活状态。再点击log


image.png

点击”Log“ 选项页,查看工具连接服务端的情况,正常连接成功则提示类似如下图红框所示信息。


image.png

当工具显示正常连接后,查看OneNET 平台中当前模拟的设备在页面显示为在线状态
image.png

5.模拟设备接入OneNET 平台实现属性上报

5.1.订阅属性上报结果通知消息

点击模拟工具的“Subscribe”选项页表头,在其中的输入框填写属性上报结果通知topic。($sys/产品 ID/设备名称/thing/property/post/reply)


image.png

5.2.发送属性上报消息

点击“Publish”选项页表头,切换到消息发送页,在输入框中填入属性上报 topic 主题,该 topic为:$sys/产品 ID/设备名称/thing/property/post
在空白编辑处输入如下代码,其中value为上报的属性值,填入一个合适的数字即可,
time需用时间戳计算工具获得当前时刻的时间戳(单位ms)无误后点publish


image.png

5.3.查看属性上报结果

点击“Subscribe”选项页表头,查看之前订阅的属性上报结果通知消息 topic 下,收到的消息如下图示例:
可以看到最新的一条消息,标识了消息的 id 和 code,其中 id 的值为发送时的 id 值,code 值为 200表示该条消息成功送达 OneNET 平台。


image.png

5.4.OneNET 平台中查看设备的属性最新值

回到 OneNET 平台中设备管理页面,进入“Simulator”设备详情,查看当前设备各个属性的最新数据,确认显示出通过模拟工具上报来的 value 值:


image.png

6.OneNET 平台下发属性值到模拟工具

6.1.订阅接收平台下发属性数据的 topic

设备侧如需要收到平台下发的数据,需要订阅接收平台下发数据的 topic,该 topic 为:$sys/产品 ID/设备名称/thing/property/set

6.2.OneNET 平台下发属性数据

在“设备管理”中选择要下发属性的设备,点击详情进入设备信息页面,切换功能为“设备调试”
“应用模拟器”,勾中属性功能点距离 distance,并填写一个具体数值,点击页面下方的 “属性设置”按钮,完成发送。可以在页面右侧的调试日志中看到下发的日志信息


6.3.模拟设备中查看收到的属性数据值

image.png

7.真实设备接入OneNET 平台实现属性上报

7.1.修改设备程序的 OneNET 平台网络接入配置参数

  1. 工程相对路径\device\src\net_device.c 约 677 行处,将{wifi}、{password}替换为设备所在 Wifi 网络用户名和密码
#if(PHONE_AP_MODE == 1)
            UsartPrintf(USART_DEBUG, "Tips: AT+CWJAP\r\n");
            if(!NET_DEVICE_SendCmd("AT+CWJAP=\"111\",\"00000000\"\r\n", "GOT IP", 400))
                //1.更改此处为热点名称和密码 2021-6-15
#endif
  1. 工程相对路径\onenet\src\onenet.c 约 56 行处,依次修改{设备密钥}、{产品 id}、{设备名称}
ONETNET_INFO onenet_info = {"", "d1U3eTZRSmZKekNnNDFoM3o2cjlmZ0dRUmpsQzA1NFk=", "",
                            "05cd0XY2bQ", "", "",
                            "183.230.40.96", "1883", 0,
                            0, 0, 1, 0, 0, 0, 0, 0, 0};
char devicename[32]="Controller";
//2、更改此处产品id,设备名称,设备key,备注:设备key可以用产品key替换,权限更高。

8.烧写程序,OneNET 平台侧查看设备上报数据信息

image.png

9.通过 OneNET平台 的设备调试方式进行属性下发

进入 OneNET 平台 的设备调试功能页面。本任务中,需要切换调试方式为“应用模拟器”先勾选一个功能点,然后设置下发的数值。(以蜂鸣器为例,这是一个 bool 型功能点,勾选后,可设置值为 true、false 两个之一)点击页面下方的“属性设置”按钮,右侧调试日志展示了下发的报文,设备端也同时将该数值执行生效。


image.png

10.基于OneNET 云平台的场景联动

1.创建场景联动规则

点击页面右上角“新建场景”,填写场景名称,这里我们需要一个“距离太近告警”的场景,点击添加进入下一步。


image.png

再创建一个“距离太远取消告警”的场景,将两条场景规则的启用状态修改为“开”

2.设备上线,观察场景实现效果

近距离遮挡超声波模块的距离探测器探头,稍等一定时间后,蜂鸣器模块鸣叫,移开超声波模块遮挡, 再稍等一定时间后,蜂鸣器模块停止鸣叫。


image.png

四、安全防护系统的可视化实现

1.物联网云平台可视化组件配置运用

1.1创建一个可视化项目

先新增一个可视化项目,在弹出的模板选择页面,选择一个 2D 项目模板下的“空白模板”作为
本次项目可视化的基础模板


image.png

1.2增加数据源模板

点击左侧菜单“数据管理”下“数据源模板”子菜单,右侧页面中,点击“创建数据源模板”,预先为界面展示距离的变化图表建立一个数据来源模板。


image.png

1.3编辑可视化页面及各个组件

点击这里进入编辑


image.png

双击添加的控件,右侧出现对应控件的“样式”属性修改 Tab 页,根据项目看板展示效果所需,自行展开具体的属性列表项,调整各项属性,达到最优显示效果
点击“数据源模板”Tab 页,展示目前所有的数据源模板,可以看到一条在之前步骤中已经创建好的记录(名称为 distance),点击该记录操作列中最右图标:“以此模板创建数据源”。


image.png

image.png

1.4设置图表的横轴列展示字段名与数据提供字段相匹配

展开“数据系列”的节点,修改列字段名为“value”,保持与数据源中提供的数值字段“value”相一致


image.png

1.5保存视图,完成可视化项目

屏幕截图 2024-05-27 114633.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容