庭院监控

来自Jack's Lab
(版本间的差异)
跳转到: 导航, 搜索
(概述)
(最新版本)
 
(未显示1个用户的25个中间版本)
第6行: 第6行:
  
  
* 360度防水自由云台 (220V 电源)
+
* 360度全铝防水自由云台 (220V 电源)
  
* 30W LED 庭院灯 (220V 电源)
+
* 30W 防水铝壳 LED 射灯 (220V 电源)
  
 
* 120 分贝报警喇叭 (220V 电源)
 
* 120 分贝报警喇叭 (220V 电源)
  
* WiFi 智能摄像头
+
* WiFi 智能摄像头 (5V 电源)
  
  
<br><br>
+
微信远程控制云台、LED 灯、报警喇叭和 WiFi 摄像头的电源
  
== HW设计 ==
 
  
四路 5V 继电器,带光藕隔离,高电平触发;CH1 ~ CH4 分别控制 LED大灯、警告喇叭、云台和 WiFi摄像头的电源
+
7x24 小时运行 2 年后:
  
[[文件:Relay-4ch.jpg | 700px]]
+
[[文件:Maike-Smart-Yard-06.jpg | 600px]]
 
+
 
+
 
+
继电器只是控制这些设备的电源(LED大灯、警告喇叭、云台的电压为 220V,WiFi 摄像头电压为 5V)
+
 
+
云台的转向和俯仰通过传统 315MHz 遥控器控制
+
 
+
WiFi 模块的 GPIO5, GPIO4, GPIO14, GPIO12 分别用于 CH1 ~ CH4,高电平有效(通)
+
  
 
<br><br>
 
<br><br>
  
== FW设计 ==
+
== HW设计 ==
  
SN: 字符串,19个字符,唯一编号,对应一个庭院监控设备
+
=== 最新版本 ===
  
KEY: 字符串,8个字符,注意保护,用于生成每次通信的 Token
+
CH1 ~ CH4 分别控制 30W LED大灯、警告喇叭、云台和 WiFi摄像头的电源
  
MAC: 6字节,12个字符,MAC地址
+
一片 Noduino iBaihe 5 路高品质 WiFi 继电器板解决 (板载一片 SmartNode WiFi 模块):
  
  
云端入口:
+
[[文件:Ibaihe-yard-03.jpg | 800px]]
  
<source lang=bash>
 
http://cos.icamgo.com:998
 
</source>
 
  
<br><br>
+
[[文件:Ibaihe-yard-04.jpg | 800px]]
 
+
== FW 逻辑 ==
+
 
+
user_init() ---> cos_init()
+
 
+
判断 activeflag,出厂状态(未激活,即用户没有给其设置家里路由的 ssid & password),则设置为 SOFTAP / STATIONAP,方便用户直连以配置 ssid&password
+
 
+
如果 wifi opmode 不为 SOFTAP,100ms 定时检查 cos_check_ip(),如能获得 IP,且 connect (TCP / UDP) 云 OK,则执行 connected 回调函数
+
 
+
 
+
100ms 一次的 connected 的回调,逻辑上讲,应该是心跳 (Beacon),但 100ms HTTP 请求写一次 DB,资源开销太大,建议为 1 分钟左右,且应该被 1s 左右一次的 /v2/node/state checking 替代,云端判断是否时间到了要去更新 DB 里的 Beacon 字段
+
 
+
 
+
--
+
恢复出厂状态,即将 activeflag 清零,目前实现为向 /v2/node/state POST: {"activate":0}
+
 
+
FW 每 1.2s check 这个 /v2/node/state 时,解析到 activate = 0 则将 activeflag 清零,设备重启后,即恢复为出厂状态
+
  
 
<br><br>
 
<br><br>
  
== 模块与云通信 ==
+
=== 历史版本 ===
  
=== 概述 ===
+
四路 5V 继电器,带光藕隔离,高电平触发;CH1 ~ CH4 分别控制 LED大灯、警告喇叭、云台和 WiFi摄像头的电源
  
模块固件从 flash 中读出 SN 和 KEY,SN + 当前时间戳用 KEY 加密(AES) 运算后生成的串作为 Token
+
[[文件:Relay-4ch.jpg | 700px]]
  
云端验证 SN 和 Token
 
  
<br><br>
 
  
=== 激活 ===
+
继电器只是控制这些设备的电源(LED大灯、警告喇叭、云台的电压为 220V,WiFi 摄像头电压为 5V)
  
用户关联(添加)设备,视为激活设备
 
  
实现为:直接在 WeiXin / APP 里扫码添加
+
云台的转向和俯仰通过传统 315MHz 遥控器控制
  
WeiXin / APP 扫描二维码后,解析出 ID / UUID,作为调用如下 cloud api 的参数:
 
  
  /v2/node/activate
+
WiFi 模块的 GPIO5, GPIO4, GPIO14, GPIO12 分别用于 CH1 ~ CH4,高电平有效(通)
  
<br><br>
 
  
=== Beacon ===
+
[[文件:Yard-monitor3.jpg | 700px]]
 
+
  /v2/node/beacon
+
  
 
<br><br>
 
<br><br>
  
=== 状态检查 ===
+
== UI ==
 
+
;;1. Polling 方案
+
 
+
  /v2/node/state
+
 
+
模块 1s GET 一次,取回的数据为一个 JSON 结构,解析得到 value (on/off, 55/99),与本地状态不一致,就改变自己的状态、
+
 
+
APP 通过写 (POST) 这个值,来完成远程控制
+
 
+
APP 也需要定时 (2s ?) GET 一下,以防其他用户改变该值导致插座状态改变而与另一个用户APP状态不一致
+
  
 +
[[文件:Maike-Smart-Yard-05.png | 650px]]
  
;;2. TCP 长链接方案
 
  
<pre>
+
[[文件:Maike-Smart-Yard-04.png | 650px]]
</pre>
+
  
 
<br><br>
 
<br><br>

2017年10月10日 (二) 20:16的最后版本

Yard-monitor.jpg

目录

[编辑] 1 概述

Yard-monitor2.jpg


  • 360度全铝防水自由云台 (220V 电源)
  • 30W 防水铝壳 LED 射灯 (220V 电源)
  • 120 分贝报警喇叭 (220V 电源)
  • WiFi 智能摄像头 (5V 电源)


微信远程控制云台、LED 灯、报警喇叭和 WiFi 摄像头的电源


7x24 小时运行 2 年后:

Maike-Smart-Yard-06.jpg



[编辑] 2 HW设计

[编辑] 2.1 最新版本

CH1 ~ CH4 分别控制 30W LED大灯、警告喇叭、云台和 WiFi摄像头的电源

一片 Noduino iBaihe 5 路高品质 WiFi 继电器板解决 (板载一片 SmartNode WiFi 模块):


Ibaihe-yard-03.jpg


Ibaihe-yard-04.jpg



[编辑] 2.2 历史版本

四路 5V 继电器,带光藕隔离,高电平触发;CH1 ~ CH4 分别控制 LED大灯、警告喇叭、云台和 WiFi摄像头的电源

Relay-4ch.jpg


继电器只是控制这些设备的电源(LED大灯、警告喇叭、云台的电压为 220V,WiFi 摄像头电压为 5V)


云台的转向和俯仰通过传统 315MHz 遥控器控制


WiFi 模块的 GPIO5, GPIO4, GPIO14, GPIO12 分别用于 CH1 ~ CH4,高电平有效(通)


Yard-monitor3.jpg



[编辑] 3 UI

Maike-Smart-Yard-05.png


Maike-Smart-Yard-04.png















个人工具
名字空间

变换
操作
导航
工具箱