基于物联网的模块化智能监控系统

栏目: IOS · Android · 发布时间: 6年前

内容简介:当今安保智能化的需求日渐增长,本款小型的智能监控系统可应用于家庭、学校、企业等场所,有利于降低犯罪率,维护社会长治久安。MQTT 主要应用于硬件之间的数据传送。MQTT将各个传感器等配件的信息进行封装,最终以HTTP方式提交到 OneNet 平台。HTTP主要应用于网络上端到端的数据传送。考虑到需要发送视频等大体积的二进制数据故采用 POST 方式进行提交,因为 POST 方式相比 GET 方式更安全,并且对提交数据的体积没有限制。

1 需求

当今安保智能化的需求日渐增长,本款小型的智能监控系统可应用于家庭、学校、企业等场所,有利于降低犯罪率,维护社会长治久安。

2 设计思路

  • 模块化组合,自由定制,根据实际需求选配硬件,契合用户需求的同时实现成本最小化;
  • 通过软件平台提供更丰富的数据分析功能,与市场现有产品做到差异化;
  • 结合当下热门的人工智能技术,尤其是计算机视觉方面已经成熟的技术,对数据进行智能处理,减少用户手动操作,提高用户体验。

3 具体实现

3.1 感知识别层

3.1.1 硬件模块

  • Arduino 开发板

    Arduino 是一款便捷灵活、方便上手的通用开源电子原型平台,便于扩展,因此应用端借助 Arduino 平台结合各种配件来实现数据的接受和传送。

基于物联网的模块化智能监控系统

Arduino 开发板

  • 红外传感器

    这套监控系统具备两种工作模式:感知模式和预警模式。平时只启用感知模式,此时摄像头关闭,红外传感器工作。一旦传感器检测到生物体,立即进入预警模式,开启摄像头,并转动角度追踪生物体位置。

基于物联网的模块化智能监控系统

价格非常低廉的人体红外感应模块

  • 高清摄像头

    摄像头负责录像。

基于物联网的模块化智能监控系统

结合 Arduino 使用的摄像头零件

  • 扬声器、警报器

    控制端可以启用应用端的扬声器,发出警报或者隔空对话。为确保警报足够的音量,需要使用大功率的扬声器单元。

基于物联网的模块化智能监控系统

扬声器零件

  • 无线网络信号收发器

    将经过初步处理的数据发送到云端的 OneNet 平台。使用 Wi-Fi 模块还是基于电信供应商基站的GPS网络信号取决于应用端所处的环境。

基于物联网的模块化智能监控系统

Wi-FI收发模块

3.2 网络传输层

3.2.1 MQTT

MQTT 主要应用于硬件之间的数据传送。MQTT将各个传感器等配件的信息进行封装,最终以HTTP方式提交到 OneNet 平台。

基于物联网的模块化智能监控系统

国内流行的物联网开放平台

3.2.2 HTTP

HTTP主要应用于网络上端到端的数据传送。考虑到需要发送视频等大体积的二进制数据故采用 POST 方式进行提交,因为 POST 方式相比 GET 方式更安全,并且对提交数据的体积没有限制。

另外,为了更自由地定制各项用户服务,另外搭建一个服务器后台,将 OneNet 平台上的数据转发到服务器后台再进行其他处理操作。具体流程如下:

  • 在阿里云平台申请云服务器一台,考虑到初期并发量不会很大,先选择低配置的选项,后期再根据需要升级配置;申请域名并备案;
  • 部署服务器环境:CentOS 7.2 + Java 环境 (OpenJDK + TomCat) + MySQL
  • 服务器后台主要使用 Java 进行开发,结合 Spring Cloud / Mybatis 等企业级框架可轻松构建康高并发的后台;并推荐部分模块使用 Google 新推出的 Golang 编程语言进行开发,提倡多样化尝试;

3.3 应用支持层

3.3.1 数据库

数据库主要采用开源免费的 MySQL 数据库。No-SQL类型的 MongoDB 数据库和 Key-Value 类型的 Redis 数据库作为辅助结合使用。

图像和视频存储直接使用文件系统而不使用数据库。

3.3.2 数据分析

首先应用端本地设备借助 Tensorflow 或 Pytorch 等训练出来的计算机视觉模型对视频数据进行初步分析。并对出现预警状况的时段进行统计,每周或每月形成一份数据分析报告发送给用户。

3.3.3 专家系统

  • 预警信息实时同步到平台上,并且集合成整个城市的安全状况警报图,可方便警方及时出警。
  • 通过计算机视觉的模型训练识别预警模式下被检测人体的行为,并进行标记,尽可能减少用户人工操作。

3.4 应用接口层

3.4.1 Web端

Web端借助 HTML5 页面实现一个管理端控制系统,前端采用 Vue.JS 框架开发单页式 Web 应用,后台采用Java+SSM框架开发,Web端与本地App端共用一套服务器后台。

3.4.2 移动端

移动端分为 Android 端和 iOS 端。

Android 端使用 Kotlin 编程语言+ Android Studio 开发环境+ Android SDK 开发,使用 Google 官方提出的 Material Design 2.0 以美化界面,提高用户体验。

iOS 使用 Swift 编程语言+ Xcode 开发环境进行开发,同时兼顾 iPhone 和 iPad 设备。开发完毕后将应用提交至 App Store;

基于成本等因素,不考虑对 Windows Phone / Firefox OS / Ubuntu Mobile / Sailfish OS 等小众移动操作系统的支持,这些平台直接使用 Web 端进行操作。

3.4.2 PC端(Windows)

方案一:

借助 C# 语言结合 WPF 框架进行本地GUI应用的快速开发,必要时结合HTML5页面以实现快速迭代更新;

方案二:

使用Node.JS 结合 Electron 框架进行开发,舍弃性能的同时却可以大大提高开发效率和更新速度,并且可以跨 Linux / macOS 等平台;

方案三:

使用 C++ 结合 Qt,支持跨平台并且性能较佳,但开发周期较长,开发难度有所提升。

4 推广前景

本产品实现的硬件成本较低,硬件及软件开发成本后期可通过收取附加服务费的形式回本,本身具备一定的差异化,可以向市场进行推广尝试。


以上所述就是小编给大家介绍的《基于物联网的模块化智能监控系统》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

如何构建敏捷项目管理团队

如何构建敏捷项目管理团队

丽萨·阿金斯 / 徐蓓蓓、白云峰、刘江华 / 电子工业出版社 / 2012-6 / 49.00元

《敏捷项目管理系列丛书•PMI-ACPSM考试指定教材•如何构建敏捷项目管理团队:ScrumMaster、敏捷教练与项目经理的实用指南》结合作者的亲身经历告诉读者如何建立一个高性能的敏捷项目管理团队,以及最终成为一名优秀的敏捷教练。作者将敏捷教练定义为导师、协助者、老师、问题解决者、冲突领航员、协作指挥者,正是这种不同角色之间的细微区别才使敏捷教练的工作富有深度。《敏捷项目管理系列丛书•PMI-A......一起来看看 《如何构建敏捷项目管理团队》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

在线进制转换器
在线进制转换器

各进制数互转换器

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具