安防监控项目(Remeo)概要设计

安防监控项目(Remeo)概要设计1. 项目背景随着人们在家居生活中使用的电器越来越多,由此带来的安全隐患也有了明显的增多。为了降低电器的不合理使用带来的异常情况,大众对家庭智能监控的需求也越来越高。家庭智能监控主要依托摄像头,温湿度传感器等设备实现实时监控和智能报警的功能。RomeoMonitor主要是为模拟是家庭安防监控的简易系统。主要基于温湿度传感器、运动传感器和摄像头、蜂鸣器、LED等硬件作为终端,基于TCP和zig…

大家好,又见面了,我是你们的朋友全栈君。

1. 项目背景

随着人们在家居生活中使用的电器越来越多,由此带来的安全隐患也有了明显的增多。为了降低电器的不合理使用带来的异常情况,大众对家庭智能监控的需求也越来越高。家庭智能监控主要依托摄像头,温湿度传感器等设备实现实时监控和智能报警的功能。
Romeo Monitor主要是为模拟是家庭安防监控的简易系统。主要基于温湿度传感器、运动传感器和摄像头、蜂鸣器、LED等硬件作为终端,基于TCP和zigbee为通信基础监控系统。该系统可实现家庭成员从网页端获取房间的摄像头和温湿度等信息,以及设置智能报警等功能,极大程度降低了房间的安全隐患。

2. 项目需求

2.1 功能说明

2.1.1 远程控制

  1. 摄像头监控
    网页端可实时查看当前摄像头的监控信息;
  2. 基础信息采集
    网页端可实时查看房间温湿度信息,以及陀螺仪、重力加速计的读数信息;
  3. 自动报警
    通过网页可设置温度和湿度的最高和最低阈值,并给出默认值,当超过阈值触发报警:
    (1)温度/湿度超出阈值自动打开蜂鸣器报警,同时触发短信/电话报警;
    (2) 如温度高于最大阈值,则自动打开风扇;

2.1.2 远程控制

  1. LED灯控制
    (1)所有LED灯打开和关闭控制;
    (2)模拟四路数码管显示1-15数字;
  2. 蜂鸣器控制**
    (1)蜂鸣器打开和关闭控制;
    (2)蜂鸣器自动报警打开和关闭控制;
  3. 风扇控制
    (2) 风扇打开和关闭控制;
    (2) 风扇自动降温的打开和关闭;

2.1.3 账户管理

1.管理员账户:登陆后可查看所有监控信息和更改所有控制信息;
2.普通账户:登陆后绑定homeID可查看和控制指定的home;
3.账户和home:每个账户可绑定不超过10个home,每个home最多可被10个账户绑定;

2.2 系统交互流程图

在这里插入图片描述

2.3页面交互展示

在这里插入图片描述

3. 项目范围

3.1 可交付成果

3.2 验收标准

4. 工作包和进度表

在这里插入图片描述工作包说明:(html已提供)

  1. A9主框架搭建:进程线程框架搭建,通信结构体定义;
  2. 开发板硬件驱动:4个LED驱动,蜂鸣器驱动,陀螺仪重力加速计驱动,内核添加USB以及硬件芯片驱动;
  3. 摄像头数据采集和上传:mjpg-streamer移植;
  4. zigbee协调器和终端驱动:温湿度传感器数据点播到协调器,协调器广播控制风扇转动;
  5. 短信报警程序:添加GPRS通过AT指令实现发送短信。

5. 项目成本和预算

5.1 成本估算

5.2 预算制定

6. 需求变更记录

7. 项目风险登记册

8. 项目收获(经验教训登记册)

本次项目涵盖了多线程C编程,ARM体系架构和高级驱动开发等一系列前序知识,另又增加了实际项目中会用到的boa服务器,mjpg-streamer,zigbee等知识,需要自学的部分比较多,总结了个人的提升点:

  1. 大型项目先做主框架的搭建,可以清晰把握整个项目;
  2. 加深理解了模块化编程,模块化的可移植性和可读性都很高;
  3. zigbee作为一项比较先进的技术,本项目没有做详细讲解,完全靠自己靠自学去理解开发框架,从完全陌生入手艰难,阅读不同功能的代码中,从相同点和不同点着手,感觉有豁然开朗的感觉,切勿对单一功能代码死缠烂打;
  4. 项目重点完成了基础功能的开发,之后了解了一些相关的功能在实际智能家居中的应用,比如陀螺仪控制百叶窗,重力加速计实现定位功能,LED的数码管功能用于数显,在实际应用中还需要多参考一些资料。

9. 术语定义

10. 附录

附录一:开发环境信息
附录二:开发框架和通信协议
附录三:zigbee驱动框架

附录一:开发环境信息
软件配置
开发平台:Ubuntu14.04,windows 7(zigbee用IAR)
运行环境:linux3.14.0,uboot2013.01
编译工具:gcc4.6.4
通信协议: 串口、ZigBee、i2c协议等
服务支持:nfs,tftp,boa服务器,mjpg-streamer
串口调试工具:Putty,Xcom
硬件配置
开发板:三星contex-A9
存储设备:SD卡
终端设备:ZigBee(温湿度传感器,风扇),摄像头

附录二:开发框架和通信协议

  1. 数据通信框架
    在这里插入图片描述
  2. 通信结构体定义
    数据上行:
    在这里插入图片描述
    数据下行:

附录三:zigbee驱动框架
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153422.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • activity和task_startactivity无效

    activity和task_startactivity无效我现在需要在点击listview的某个item的时候启动一个activity,因为我的listview不在activity中,所以为了简便我直接用context来调用activity,如下:Intentintent=newIntent(view.getContext(),BlogDetail.class);intent.putExtra(“blog_id”,blog.getId());…

    2022年10月6日
    2
  • 开销是有益的:AppCan 至HTML5移动创新和创业精神和健康

    开销是有益的:AppCan 至HTML5移动创新和创业精神和健康

    2022年1月4日
    52
  • 9.电阻线性电压转换电路[通俗易懂]

    9.电阻线性电压转换电路[通俗易懂]电阻线性电压转换电路在电子设计中,电阻值的测量是非常重要的。比如在薄膜压力传感器中需要对电阻值进行测量,利用PT100测温度的时候需要测量其电阻。1.电阻分压测量方法在测量电阻的时候通常都是转换为电压测量,串联一个已知电阻,测量两个电阻之间的电压,利用分压公式得到电阻值。显然这个电路中,输出电压为:式中,为串联分压的电阻,为参考电压。令为10K,为5V,利用MATLAB画出U-R曲线,如图:从曲线可以看出,U与R不成线性关系,计算复杂。并且R的测量精度在不同值

    2022年5月8日
    86
  • wing是什么_一圈四叶草的项链

    wing是什么_一圈四叶草的项链在 Mars 星球上,每个 Mars 人都随身佩带着一串能量项链,在项链上有 N 颗能量珠。能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数。并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标记。因为只有这样,通过吸盘(吸盘是 Mars 人吸收能量的一种器官)的作用,这两颗珠子才能聚合成一颗珠子,同时释放出可以被吸盘吸收的能量。如果前一颗能量珠的头标记为 m,尾标记为 r,后一颗能量珠的头标记为 r,尾标记为 n,则聚合后释放的能量为 m×r×n(Mars 单位),新产

    2022年8月9日
    5
  • PyYAML中文文档「建议收藏」

    PyYAML中文文档「建议收藏」PyYAML文档PyYAML现在维护在https://github.com/yaml/pyyaml。此页面仅用于历史目的。英文文档链接:http://pyyaml.org/wiki/PyYAMLDocumentation安装下载源码包PyYAML-3.12.tar.gz并解压缩。转到目录PyYAML-3.12并运行$pythonsetup….

    2022年8月30日
    2
  • java编译环境配置

    java编译环境配置1.设置PATH环境变量右击桌面上的计算机图标,单击属性菜单项,系统显示控制面板主页,单击高级系统设置,出现系统属性对话框,再单击高级,出现如下图所示的对话框。单击环境变量按钮,将看到如下图所示的环境变量对话框,通过该对话框可以修改或添加环境变量。上图所示的对话框上面的用户变量用于设置当前用户的环境变量,系统变量用于设置整个系统的环境变量。对于windows系统而言,名为pat…

    2022年6月2日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号