zoukankan      html  css  js  c++  java
  • 基于Z-WAVE 协议的LED智能照明系统的研究笔记

    LED调光基础:
    ☆:LED照明调光控制信号的方式有两种:
      1. 通过PWM信号控制LED灯具开关电源的占空比从而实现调光;
      2. 通过调光控制信号和交流电源供电线合用的两线式或三线式(例如LED相控调光)
      3. 调光控制信号和交流电源供电线分离调光(0-10V,ADLI,DMX512,KNX等)。
    ☆:LED智能家居通讯协议:
      1. wifi(项目最开始的时候用这个吧,比较熟悉,而且速度很快(快于下面的三个,就是不够安全))
      2. ZigBee(功耗1/10,网状网络)
      3. ZigBee Light Link(支持很多智能家居的东西)
      4. Z-Wave(室内覆盖范围30M,室外100M)
    Zwave基础:
    ☆:控制节点(Controller)
      控制节点是一个具有网络全部路由表的Z-Wave网络设备,因此他可以跟Z-Wave网络中所有节点进行通讯。新的Z-Wave网络创建取决于控制设备的加入。控制节点分为主控制器和次控制器,每个Z-Wave网络只能有一个主控制器,只有主控制器具有添加和删除其他设备,次控制器只能进行指令的发送,不能向网络中添加或删除设备。
    ☆:从属节点(Slavers)
      从属节点在网状网络中充当路由器,普通从节点可以是调光器。路由节点可以主动发送路由信息给网络中的其他节点,路由节点存储了一定数量的静态路由信息,用于给一定数量的节点发送未审核的信息。增强节点是一个可以用EEPROM储存信息的节点。
    ☆:网络的标志(Home ID,Node ID)
      Home ID在Z-Wave网络用于区分不同的网络,在一个Z-Wave网络中,Node ID是唯一且不可以重复的。
    ☆:物理层(MAC Layer)
      1. 数据传输使用曼切斯特码(Manhester Code)序列并以40k的速率进行传输(以8位数据块结构进行传输) 这些数据块分布分别是:前序(Preamble),起始帧(Start of Frame),数据(Data),结束帧(End of Frame),物理层独立于频射介质,频率和调制方式,为了调高数据传输的可靠性,物理层采用多址/冲突避免(CSMA/CA)机制,来保证传输通道不被占用。
      2. Z-Wave的物理层具有避免冲突的机制,这种机制可以避免不同的时刻发送信息。如果当一个节点正在传输数据,其他需要发送数据的节点将会自动延迟,当网络中存在数据传输时,所有节点的冲突保护都将会被激活启用,传输数据将会被延迟。
    ☆:传输层(Transfer Layer)   
      1. Z-WAVE的数据包的结构如图所示
                                    
        一个Z-Wave数据包包含以下信息:该网络的Home ID,发送该数据节点的Node ID,帧头,帧长度,目的节点的Node ID,数据和数据校验块。传输层的数据包主要包括以下几种:
        ①:单播数据包:单播数据包总是被传送给一个特殊的节点,并且接受节点的需要作出回应以确定该数据包被接受。如果单播数据包或者反馈数据丢失或者损失,就要重新发送这个数据包。为了避免潜在的冲突发生,重发会在一定的延迟后进行,这个延迟的时间应该小于发送最大长度的数据包并收到反馈信息的时间。当系统不要求可靠数据的传输的时候,单播数据包可以使用无反馈的方式进行。
        ②:回应数据包:Z-Wave网络的回应数据包是一个不包含数据的特殊单播数据包。当节点收到其他节点发来的单播数据包时,会发送一个回应数据包给发送节点当做回应。
        ③:多播数据包:多播数据包可以同时发送给多个节点,并且接受节点不需要回应。(不可靠传输)
        ④:广播数据包:包发送给Z-Wave网络中的所有节点,并且不需要回应。
        ⑤:探询数据包:探询数据包是一种特殊的广播数据包(用于更新网络拓扑结构和发现网络中特定节点的位置)
    ☆:路由层(Routing Layer)
        1. Z-Wave网络的路由层有两种数据结构:一种是路由单播数据包,另一种是反馈数据包。
        两者的区别仅仅在于是否多了回环确认字符(acknowledgement character)(Routed Ack和一个Ack)(另一篇论文有优化)
        2.路由表
    路由表被Z-Wave网络的控制节点用来保存路由信息和网络拓扑结构(说白了就是图)。比如(都学过了)
    ☆:应用层(Application Layer)
         1. 应用层的数据结构:

    LED控制基础:
    ☆:LED亮度调节
      1.调电压(线性调光)2. 调脉冲占空比(PWM调光方式)2. 硅亮度调光(新的调光方式),调脉冲占空比的方式和红外线实验的那个方式差不多,要读协议书才知道脉冲应该怎么调。
      2. 内置的RGB三原色LED分别受到三个PWM信号的控制,LED的颜色就可以改变,还可以改变透明度(就可以改变灰度);要熟读CIE色度原理。
      3. 可以直接选用ZM4104芯片进行网络控制,但是好像用STM332也可以,需要尝试。
    ☆:接口电路
      和8086/80386硬盘访问的方式类似,先要产生中断(8086/80386是用out指令对总线进行访问),产生中断后然后传等到信号传输->信号传输,循环。
     
     
     
     
     
     Refernce: 《基于Z-WAVE协议的LED智能照明系统的研究》-马欣儒
         《基于Z_wave技术的智能家居系统设计》-刘晗
     
     
  • 相关阅读:
    实战SpringCloud响应式微服务系列教程(第八章)构建响应式RESTful服务
    说说hashCode() 和 equals() 之间的关系?
    说说Object类下面有几种方法呢?
    Redis中是如何实现分布式锁的?
    从实践角度重新理解BIO和NIO
    数据的异构实战(一) 基于canal进行日志的订阅和转换
    The base command for the Docker CLI.
    Installing Jenkins to Centos Docker
    Docker Community Edition for CentOS
    Kafka自我学习-报错篇
  • 原文地址:https://www.cnblogs.com/Philip-Tell-Truth/p/5562753.html
Copyright © 2011-2022 走看看