ETS可以说是KNX世界中最重要的软件,没有之一。所有的KNX产品,无论哪一个厂家,都是通过ETS软件来进行编程,从而实现功能的。可以说,在统一的ETS软件平台中进行编程设定,也是保证了不同KNX产品之间能够无缝连接的一个重要原因。因此,ETS软件也就成了每一个要从事KNX领域技术工作的人必须了解和掌握的一个工具。下面我们就简单来介绍一下ETS软件中的一些基本规律。1

ETS是怎样实现设备之间的控制的?

要想理解ETS软件的编程规律,就需要回顾一下KNX系统的工作原理。KNX系统是一个弱电控制强电的总线系统。系统控制指令的传输依赖于总线。某一个设备,能够控制总线上的其他哪一个设备,是通过软件,也就是ETS进行设定的。通常情况下,在总线上发出控制指令的,是面板、传感器等设备,而接受控制指令的,是驱动器等设备。

为了实现总线上设备的相互控制,系统就需要对每个设备进行编址。首先是物理地址。物理地址用于表示对应设备在系统中的物理位置。物理地址就好像是每个设备的名字,是唯一对应的,即每个设备只有一个物理地址,每个物理地址也只对应一个总线设备。

但是有了物理地址还无法实现相互之间的控制,还需要根据相应的功能进行分组,因此,在ETS里就有了一个“组地址”的概念。可以把它想象成我们今天随处可见的“微信群”。每个人都可以同时属于很多不同的群,每个群里也可以有很多人同时在线。给这个群起的名字,就是所谓的“组地址”。有了这个“微信群”,就可以进行沟通了。当群里一个“人”说话,群里其他“人”都可以接收到,继而根据这句话的指令,来执行相应的动作,于是就形成了控制。

2怎样快速识别对象功能
(object function)
对于ETS来说,放在“群”里面的“人”,实际上是各个设备的对象(object)。但是每个设备都有很多不同的对象,每个对象的功能是不同的,对于一个初学者来说,在接触一个新产品的时候,怎样快速的判断出每个对象的功能呢?大致上可以从三个方面来推测:
首先是对象的功能描述(object function)。我们可以从关于对象的描述中,推测出这个对象的大概用途。比如下图中,对象功能为“ON/OFF”,说明这个对象与控制输出的开闭有关,而对象功能“status indication ON/OFF”,则告诉我们这个对象与输出的状态反馈有关。

判断对象功能的另一个重要依据是它的数据类型(data type)。从大的分类上讲,分别有1bit, 4 bit, 1 byte, 2byte, 4byte等数据类型。其中最常用的当然是1bit,所有开关控制都是1 bit的数据类型,因为它只有两种状态:开和关(也就是0或者1)。还有比较常用的是1 byte,比如常见的调光亮度值、场景等都是1 byte(也就是一个8位字节的数值)。关于每种数据类型,还有更详细的分类,但是我觉得对于初学者来说不必细究,最重要的一点必须记住就行了,那就是:不同数据类型的对象是不可以放进同一个组地址中的。这就是我们寻找匹配对象的关键依据。比如某个面板发出的指令是1 byte的数据类型,那么你就需要在驱动器中寻找1 byte的对象来形成控制关系,而不是1 bit的对象。

还有一点需要注意的就是,不是每一个对象都具备发送控制指令的权限,这就需要了解关于对象的另外一个属性–“flag”。每个对象都分别有“C、R、W、T、U”五个flag,每个flag的含义各有不同,篇幅原因,在这里不做展开,有兴趣的童鞋可以研究一下KNX的基础培训课程来做深入了解。初学者只要记住一个简单的规律,那就是只有带有“T”flag的对象,才具备在总线被传输发出控制的能力,而只有带有“W”flag的对象,才有可能被写入相关的数值,从而被控制。

3举个例子如下图,是海格的一个具备恒照度控制功能的人体感应器TX511,当我们第一次打开它的对象列表,但从对象名称和对象功能描述中,恐怕很难确定哪一个对象可以用来进行控制,甚至有些童鞋会误以为0号对象“dimming control”和1号对象“switch ON/OFF”是用来控制驱动器的,但是当我们仔细观察每个对象的flag,才会发现,只有5号对象“dimming value”才具备“T”flag,才具备发出控制指令的能力。进一步的,我们发现这个“dimming value”对象的数据类型是1 byte,也就意味着我们需要把驱动器中,数据类型为1 byte的对象拉进来,与它组成一个组,才能形成控制,比如调光驱动器中的2号对象“Brightness Value”。最重要的是你不用担心兼容性问题。ETS Apps虽然提供了无限的选择,但仍然能与整个KNX系统完美兼容。想要获得额外功能的ETS用户只需下载、安装并获得许可即可享受这些额外功能。ETS Apps更多的功能和更多的自定义的灵活性为您提供完美解决方案。4

关于参数“Parameter”的修改

解决了组地址的链接问题,ETS里还有一个重要工作要做,那就是每个设备的参数修改。如果说组地址是设定谁能够控制谁的问题(who),那么参数的修改是设定怎样控制的问题(how)。比如你设定了一个组地址1/1/1,在这个组里面有一个面板的按键对象和一个驱动器的输出输出,那么当我按下这个按键,组地址1/1/1在总线上传输,那它的值应该是0还是1呢?这个就需要在面板的参数中通过设定来实现。那当驱动器接收到这个组地址的指令,是立刻执行还是延时执行呢?这个就需要在驱动器的参数中进行调整。

某些情况下,设备的某个对象是需要通过参数的调整才能够出现在对象列表中的,而一旦修改相关的参数设定,涉及到的对象所进行的组地址链接就需要被重置。所以,在进行ETS项目编程时,我们需要先进行设备参数的修改,然后才进行组地址的链接。

5

总结一下

由于KNX的厂家及产品众多,技术人员不可能每个产品的每个功能都非常熟悉,尤其在第一次接触一个新产品的时候,如何能快速的识别每个对象的用途和用法呢?可以通过三个方面,一是通过对象的名称来推测,二是通过对象的数据类型来辨别,三是根据对象所具备的flag来判断。然后结合设备参数中的选项,就基本上可以对每个设备的主要功能以及对应实现方式有所掌握了。

ETS是一个工具软件,能否熟练运用,其实很大程度上取决于编程人员对各厂家具体产品的熟悉程度,但是其中也不乏一些简单的规律。了解这些规律,就会提高我们融会贯通的能力,在遇到新产品的时候,能够比较容易上手。希望以上的一些心得对初学者能够有所帮助。如果你想系统的学习KNX系统基础课程,建议还是报名参加KNX认证培训中心的相关课程来全面了解。

欢迎在留言区分享你的ETS使用经验。



关于yuv rtp 打包_【讲堂】关于KNX编程基本规律相关推荐

  1. AMR-WB 比特流---单通道多帧,120ms RTP打包

    一.来源 RFC4867协议,地址:https://www.rfc-editor.org/rfc/pdfrfc/rfc4867.txt.pdf 只解析AMR-WB的单通道多帧格式,其它参考协议文档:净 ...

  2. live555学习笔记7-RTP打包与发送

    七 RTP打包与发送 rtp传送开始于函数:MediaSink::startPlaying().想想也有道理,应是sink跟source要数据,所以从sink上调用startplaying(嘿嘿,相当 ...

  3. live555学习笔记-RTP打包与发送

    RTP打包与发送 rtp传送开始于函数:MediaSink::startPlaying().想想也有道理,应是sink跟source要数据,所以从sink上调用startplaying(嘿嘿,相当于d ...

  4. RTP打包G711音频数据发送

    前面博客讲过G711编码,有两种G711A/G711U,主要在安防中应用,是一帧波形编码的音频数据,只是将PCM压缩一半数据量.一般G711,采样率8000,通道数1.所以G711中1B就是一个样本数 ...

  5. RTP协议解析及H264/H265 音视频RTP打包分析

    一 概述 实时传输协议(Real-time Transport Protocol或简写RTP)是一个网络传输协议,它是由IETF的多媒体传输工作小组1996年在RFC 1889中公布的. RTP协议详 ...

  6. RTP打包音频g711

    目录 音频资源 如何计算打包发送间隔.打包字节数 C++ RTP打包代码 JAVA RTP打包代码 RFC3550 RTP:http://www.networksorcery.com/enp/rfc/ ...

  7. Android_多渠道打包_混淆

    Android_多渠道打包_混淆 1.多渠道打包配置 2.混淆 1.多渠道打包配置 android studio version 4.2.2 sdk version 30 作用: 1.统计用户安装AP ...

  8. 基于H.264的RTP打包原理和FU-A分片实例分析

    1. H.264码流结构   H.264编码规范从逻辑上划分为视频编码层(VCL)和网络提取层(NAL).   VCL数据是由编码器直接输出的原始数据比特串(SODB),它表示图像被压缩后的编码比特流 ...

  9. 按照RFC3984协议实现H264视频RTP打包(附源代码)

    2011-03-30 10:34:44|  分类: 流媒体 |  标签: |字号大中小 订阅 参考链接:http://topic.csdn.net/u/20090725/11/5FBC75B0-109 ...

  10. linux下h.264码流实时rtp打包与发送,Linux下H.264码流实时RTP打包与发送

    由于项目要求在DM6467T平台上添加实时RTP打包发送模块,这才找了找有没有人分享 这方面的经验.这里需要感谢网友:yanyuan9527,他写的文章对我帮助很大,可以说让一个完全小白的人了解了RT ...

最新文章

  1. Java之Spring mvc详解(非原创)
  2. 大白话系列之C#委托与事件讲解(一)
  3. 如何在Visual Studio中直接使用示例代码浏览器搜索下载和管理代码示例
  4. edem颗粒替换_EDEM后处理问题的大汇总,方便易懂!
  5. java的druid连接
  6. Python中文问题
  7. html 隐藏input
  8. linux 从github拉取更新_关于拉取请求
  9. [渝粤教育] 重庆电子工程职业学院 信息技术与人工智能基础 参考 资料
  10. Linux命令任务管理器,如何在:Linux下面启动任务管理器
  11. 五年级上册计算机工作总结,小学五年级信息技术上册教学工作总结范文
  12. iNFTnews | Yuga Labs收购Meebits,NFT IP市场操纵存在担忧
  13. The Shapely GEOS version (3.9.1-CAPI-1.14.2) is incompatible with the GEOS version PyGEOS was compil
  14. asp医院病历管理系统
  15. 图像处理大型科普——图像直方图
  16. 为什么要用java股票交易接口?
  17. 投资效率模型两个版本(含stata代码以及计算参考文献)
  18. 笔记本锁定计算机功能键,笔记本电脑键盘锁的设置方法以及解锁步骤【图文教程】...
  19. 我是疫情期间的幸运儿
  20. 解决ubuntu终端输入异常,回退变成空格后移

热门文章

  1. 程序员的有个坏习惯!
  2. C语言 求100--200之间的素数
  3. 18软工实践-团队现场编程实战(抽奖系统)
  4. JSAAS的Activiti会签开发扩展处理
  5. swarm测试网如何查票?查票流程
  6. Windows 10 21H2正式版镜像
  7. 基于单片机的超市储物柜设计_一种超市用储物柜的制作方法
  8. TestCenter测试管理工具问题详解(5)
  9. 文件怎么设置密码?一文带你看到文件加密的方法
  10. 已知 XYZ+YZZ=532,其中,X、Y、Z 为数字,编程求出 X、Y 和 Z 的值。