收藏官网首页
查看: 25406|回复: 5

[开源项目] 智能家居应用模型One

9

主题

24

帖子

399

积分

中级会员

Rank: 3Rank: 3

积分
399
跳转到指定楼层
楼主
发表于 2016-12-31 00:55:15 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
免费使用STM32、APP自动代码生成工具
本帖最后由 Genius 于 2018-7-10 10:30 编辑

        早就有搭建物联网应用的想法,不过一直盘旋在脑子里,形不成具体的东西,具体执行也得慢慢细化成形。于是我打算先发布个大概思路,供大家闲余饭后瞅瞅,可以给给建议,指点指点。以后我还会慢慢修正更新,期待完成,然后再尝试各种版本~
角色
1、智能管家:负责管理环境监测中心开关控制中心,设置环境终端开关终端之间的点联动功能。包含语音服务、提醒服务、定时服务等其他个性服务;
2、环境监测中心:自行处理智能管家分派的任务,实时上传环境终端发来的测量数据,监管环境终端,把环境数据在本地分类存储,能与开关控制中心联动;
3、开关控制中心自行处理智能管家分派的任务,监控开关终端的状态,能与环境监测中心联动
4、流动显示屏:显示时间、实时信息
5、特殊监测站:监测特定位置点的气压(P)、紫外线(U)、磁场强度(M)、CO2浓度(C)、PM2.5含量(G)、……,并直接与智能管家沟通,把数据在本地分类存储

6、巡逻机器人:巡逻检查,报告或处理室内环境的异常情况;

7、环境终端:检测单点位置的单一或多种环境参量;
8、开关终端:控制单点位置的单个或多个开关节点,或者参量控制;

配置
1、智能管家:1个,gokit2开发板STM32F103RE,72MHz,3.5寸480*320串口HMI,128*64点OLED屏,语音模块,WiFi模块esp8266,占用智能管家NRF24L01通道0;
2、环境监测中心:1个,128*64单色LCD屏,STM32F103RC,72MHz,rt-thread,占用智能管家NRF24L01通道1,SD卡更新固件,无线更新固件;
3、开关控制中心:1个,128*64单色LCD屏,STM32F103RC,72MHz,rt-thread,占用智能管家NRF24L01通道2,SD卡更新固件,无线更新固件
4、流动显示屏:N个,32*16点RGB点阵屏,新唐M0516lan,50MHz,rt-thread,光敏传感器,占用智能管家NRF24L01通道3;
5、特殊监测站:N个,128*64单色LCD屏,STM32L053R8,32MHz,两节18650;或2.8寸320x240触摸屏,STM32F103RC,72MHz,rt-thread,占用智能管家NRF24L01通道4;
6、巡逻机器人:N个,1.44寸TFT液晶屏,STM32F411RG,100MHz,rt-thread,摄像头,占用智能管家NRF24L01通道5;
7、环境终端N个,STM8L051F3P6,无屏,或STM8L052C6T6,2MHz,4位笔段式LCD,2节AAA干电池,随机占用环境监测中心的通道1
8、开关终端N个,STM8S003F3P6,STM32F030F4P6,STM32F030C8T6,32MHz,现场取电,随机占用开关控制中心的通道1

通信协议
1、NRF24L01<==>NRF24L01,空中通信速率1Mbit/s,最大2Mbit/s。SPI通信速率几个Mbit/s,面对大数据并发应该没问题;
2、MCU<==>WiFi模组,标准串口通信,9600波特率,960字节/每秒,30个数据包(每包32字节)/每秒,确实有点低;

环境终端>--->环境监测中心
1、一个数据包固定为28字节长,不允许超过,也不分包发送;
2、协议格式:
3、协议说明:
  • 位置ID码:2字节,单点位置的唯一标识码。最多可安置65535个位置;
  • 电池电压:2字节,采样计算得出的电压,单位mV;
  • 参量个数:1字节,本终端上传几个环境参量,环境监测中心会据此以及类型码解析数据区域。0x03代表本终端上有3个传感器;
  • 数据域:n字节,由【1字节类型码+n字节参量数值】、【类型码+参量数值】...组成。不同的环境参量,用不同的类型码区别,参量数值根据类型码由1字节或2字节表示:【1】温度(T)为0x01,单位0.1℃,0x0103代表当前温度为25.9℃。【2】湿度(H)为0x02,单位1%,0x28代表当前湿度为40%。【3】光照度(I)为0x03,单位1LUX,0x05B4代表当前照度为1460流明,等。数据域最大28-7=21字节,若是数据值都用2字节表示,最多容纳7个传感器数据;
  • 剩余字节:n字节,用0x00填充;
  • 重发次数:1字节,标明这个数据包被环境终端重发了几次,0x02代表这个数据包重发了2次;
  • 校验字节:1字节,前面所有字节的累加和。0x1E代表当前数据包的校验字为0x1E,0xAA+0xAA+0x0C+0xCE+0x03+0x01+0x01+0x03+0x02+0x28+0x03+0x05+0xB4+0x02=0x1E;

环境监测中心<--->智能管家
1、一个数据包固定为32字节长,不允许超过,也不分包发送;
2、协议格式:

3、协议说明:
  • 身份ID码:1字节,身份识别的唯一标识。智能管家端显示为十进制代号,如“环境检测中心001”;
  • 命令字:1字节,0x01上传环境终端数据包命令,0x02同步时间命令,0x03联动命令;
  • 数据域:n字节,根据命令字不同,内容不同。【1】命令字为0x01,数据域即需要上传的数据包。【2】命令字为0x02,数据域即智能管家下发的时间。【3】如命令字为0x03,数据域即智能管家下发的联动命令。数据域最大32-4=28字节;
  • 剩余字节:n字节,用0x00填充;
  • 重发次数:1字节,标明这个数据包被环境监测中心重发了几次;
  • 校验字节:1字节,前面所有字节的累加和;

后续还有,
开关终端<---<开关控制中心开关控制中心<--->智能管家的通信协议说明及其他角色有待添加~



后续:http://club.gizwits.com/thread-4522-1-1.html



本帖被以下淘专辑推荐:

9

主题

24

帖子

399

积分

中级会员

Rank: 3Rank: 3

积分
399
板凳
 楼主| 发表于 2016-12-31 13:47:48 | 只看该作者

蟹蟹~~~~~~~~~

562

主题

1222

帖子

8133

积分

版主

Rank: 7Rank: 7Rank: 7

积分
8133
地板
发表于 2017-1-3 09:37:28 | 只看该作者
很棒的想法,期待楼主更新~~~
1、机智云QQ群: 287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits /   机智云智能宠物屋go-kit
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

50

主题

67

帖子

460

积分

中级会员

Rank: 3Rank: 3

积分
460
5#
发表于 2017-1-4 10:46:18 | 只看该作者
免费使用STM32、APP自动代码生成工具
很实用~~谢谢分享

1

主题

20

帖子

486

积分

中级会员

Rank: 3Rank: 3

积分
486
6#
发表于 2017-1-8 12:44:01 | 只看该作者
厉害了楼主
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表