• 智能家居应用模型


    早就有搭建物联网应用的想法,不过一直盘旋在脑子里,形不成具体的东西,具体执行也得慢慢细化成形。于是我打算先发布个大概思路,供大家闲余饭后瞅瞅,可以给给建议,指点指点。以后我还会慢慢修正更新,期待完成,然后再尝试各种版本~

    角色
    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-4521-1-1.html

  • 相关阅读:
    LinkList
    hadoop记录篇3-namenode水平拓展Federation+viewfs
    hadoop记录篇2-namenode高可用(HA)之QJM+NFS
    hadoop记录篇1-hdfs集群安装
    springcloud记录篇5-zuul路由
    springcloud记录篇4-断路器Circuit Breaker
    springcloud记录篇3-springcloud客户端ribbon和feign
    springboot心得笔记-常用配置
    springboot心得笔记-入门
    springcloud记录篇2-服务注册和发现
  • 原文地址:https://www.cnblogs.com/dapangsen/p/9287643.html
Copyright © 2020-2023  润新知