Advertisement

KNX-Core:基于Java的KNX NetIP通信库

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
KNX-Core是一款采用Java语言开发的开源软件库,专为实现KNX NetIP协议的设备间通信而设计。它简化了智能家居和楼宇自动化系统中节点之间的数据交换过程。 KNX核心React性是一个无阻塞的Java库,用于支持KNX Net/ IP通信。该库的目标是让开发人员能够使他们的应用程序通过KNX Net/IP设备(如KNX路由器或接口)与KNX世界进行通讯。它涵盖了隧道和路由模式的支持。 需要说明的是,这个库目前尚未实现最新一代KNX Net/IP设备中的KNX Secure功能,因为作者没有具备支持此安全特性的KNX路由器供测试使用。 在使用该库之前,请确保已安装Java 11或更高版本,并且以Java 11及以上版本运行。对于隧道模式的设置,您需要一个可用的KNX路由器或者接口以及其对应的免费隧道连接IP地址(如果未提供,则将自动发现服务)。而对于路由模式的应用场景,则仅需使用KNX路由器即可;同时确保在您的KNX路由器设备上的过滤器表已正确配置以转发数据包。此外,在没有指定的情况下,库会默认采用224.0.23.12的组播地址作为IP组播通信的基础。 从架构上看,此项目旨在优化与KNX Net/IP相关的应用场景,并提供了便利的功能来简化开发流程中的复杂性问题。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • KNX-CoreJavaKNX NetIP
    优质
    KNX-Core是一款采用Java语言开发的开源软件库,专为实现KNX NetIP协议的设备间通信而设计。它简化了智能家居和楼宇自动化系统中节点之间的数据交换过程。 KNX核心React性是一个无阻塞的Java库,用于支持KNX Net/ IP通信。该库的目标是让开发人员能够使他们的应用程序通过KNX Net/IP设备(如KNX路由器或接口)与KNX世界进行通讯。它涵盖了隧道和路由模式的支持。 需要说明的是,这个库目前尚未实现最新一代KNX Net/IP设备中的KNX Secure功能,因为作者没有具备支持此安全特性的KNX路由器供测试使用。 在使用该库之前,请确保已安装Java 11或更高版本,并且以Java 11及以上版本运行。对于隧道模式的设置,您需要一个可用的KNX路由器或者接口以及其对应的免费隧道连接IP地址(如果未提供,则将自动发现服务)。而对于路由模式的应用场景,则仅需使用KNX路由器即可;同时确保在您的KNX路由器设备上的过滤器表已正确配置以转发数据包。此外,在没有指定的情况下,库会默认采用224.0.23.12的组播地址作为IP组播通信的基础。 从架构上看,此项目旨在优化与KNX Net/IP相关的应用场景,并提供了便利的功能来简化开发流程中的复杂性问题。
  • KNX-Examples: KNX Core实例
    优质
    KNX-Examples项目提供了基于KNX Core库的各种示例程序,旨在帮助开发者理解和应用KNX协议进行智能家居或楼宇自动化系统的开发。 欢迎来到本节,在这里您可以找到关于如何使用项目各种示例的介绍。 例如,“读取灯的状态”演示了如何发送请求以获取灯泡状态: ```javascript // 发送一个读取请求到KNX执行器 client.readRequest(knxGroupAddress); // 这是存储所有已请求状态信息的状态池 var statusPool = client.getStatusPool(); // 状态池将从KNX接收的字节数组转换为布尔值 var isLampOn = statusPool.getValue(); ```
  • C# KNX源码
    优质
    这段代码提供了使用C#语言实现与KNX(KNX是一套专为建筑和工业领域设计的通讯协议)网络进行交互的功能,包括读取、发送数据等操作。 KNX-IP网关通讯SDK支持单播和广播功能,能够实现与KNX总线的通信,并且可以监听其他设备发送到KNX总线的数据。
  • KNX-Core-Plugins:扩展KNX核心功能插件,如审计、统计和REST API等。
    优质
    KNX-Core-Plugins是一款专为扩展KNX核心库功能而设计的插件集合,提供包括审计追踪、数据分析统计以及基于REST的API访问等功能。 KNX Core插件文件夹包含一些可以通过插件管理器注入到KNX Client中的插件。通过编写自己的插件,可以扩展客户端的功能,并实现与第三方应用程序(例如Grafana、Kafka等)的集成。这些可用插件使用RESTful API来增强KNX Client功能。 审核所有事件(数据包和信号)并记录到一个文件中,支持JSON和TSV格式。以预定义的时间间隔将统计信息写入文件,支持JSON、TSV和TEXT格式。 每个插件都必须实现Plugin接口,并包含onInitialization(KnxClient)方法,在通过内部插件管理器有效注册到KNX Client时调用该方法。在大多数情况下,可以使用ObservablePlugin和/或Extensi来开发这些插件。
  • Calimero-Core:用KNX网络访问与管理中心
    优质
    Calimero-Core是一款专为KNX协议设计的核心库,提供全面的网络访问和设备管理功能。它简化了智能建筑系统的开发,支持高效的数据交换与控制。 卡利梅罗核心可以从GitHub上克隆下来:https://github.com/calimero-project/calimero-core.git(这里只提供地址描述,实际操作中请直接在命令行执行git clone指令)。Calimero-core提供了安全的KNX通信协议、KNX数据点和属性访问以及管理功能。Java.base是最低要求的运行时环境。卡利梅罗开发的重点是在嵌入式设备上运行且占用空间小的应用程序。 该库支持的功能包括:访问协议,KNX IP的安全发现与自我描述隧道式组播(创建安全网络链接),总线监控器、设备管理以及KNXnet/IP 发现和自我描述。此外,它还提供路由总线监控器功能、设备管理和KNX IP的通信服务。同时支持KNX射频USB接口及KNX USB协议,包括使用EMI2或cEMI实现串行连接的FT1.2协议以及通过串行连接访问TP1网络的TP-UART。此外还提供BAOS(总线访问和对象服务器)的过程通讯功能。
  • Calimero:开源免费Java KNX网络
    优质
    Calimero是一款开源且免费的Java KNX网络库,旨在为开发者提供便捷、高效的KNX协议编程接口。 Calimero 是一款针对基于嵌入式工作站的 KNX 应用程序设计的 Java 库。它要求最低版本为 Java ME CDC 1.4(基础配置文件)或 Java SE 8(compact1 配置文件)。该库支持远程访问和控制,兼容多种通信协议如 KNXnet IP、KNX IP、FT1.2、TP-UART 和 KNX USB。它还利用 EMI 12 和 cEMI 进行链路层操作,并提供对 KNX 数据点类型以及应用程序管理层的支持,同时具备消息缓冲功能以促进数据交换。
  • Arduino-Esp-KNX-IP.zip
    优质
    本项目为一个结合了Arduino和ESP系列微控制器的KNX IP网关程序包。它允许用户通过以太网或Wi-Fi将KNX系统与现代网络技术连接,实现智能家居设备间的高效通信。 Arduino-esp-knx-ip.zip 是一个包含 Arduino esp KNX IP 的 ESP8266 库的文件。Arduino 是一家开源软硬件公司和制造商社区,在21世纪初创立,深受电子制造者的欢迎。通过其开源系统,Arduino 提供了极大的灵活性。
  • KNX协议第三方开源
    优质
    本项目提供了一个基于KNX协议的第三方开源库,旨在为开发者简化智能家居设备间的通信和集成过程,促进创新应用开发。 KNX协议第三方开源库提供了一系列工具和支持,帮助开发者更便捷地实现基于KNX的智能家居控制系统。这些库通常包含设备连接、数据传输以及错误处理等功能模块,旨在简化开发流程并提高系统的稳定性和兼容性。对于希望在项目中集成KNX技术但缺乏相关经验或资源的团队来说,这类开源解决方案是一个非常有价值的起点和参考。
  • KNX消息解析
    优质
    KNX消息解析主要探讨智能家居系统中KNX协议的消息结构、编码规则及处理方法,帮助开发者和工程师深入理解并有效应用这一国际标准通信协议。 本段落档介绍了KNX帧格式及其组成。通过理解帧格式及每个字节的控制方式,可以了解协议栈的工作原理。
  • KNX虚拟插件
    优质
    KNX虚拟插件是一款专为智能家居控制系统设计的应用程序,它能够兼容多种硬件设备,并提供灵活、可定制化的解决方案,简化智能家庭系统的安装和配置过程。 **KNX Virtual 插件详解** KNX Virtual插件是一种强大的工具,专为那些在缺乏实际KNX硬件的情况下希望进行开发、测试和调试的用户设计。它能够模拟真实的KNX网络环境,使用户能够在软件环境中实现对各种设备的控制与通信,从而简化项目的前期准备及后期维护工作。 ### 1. **KNX技术概述** KNX(Konnex)是全球公认的智能建筑控制系统标准,用于集成照明、遮阳、温控、安全和能源管理等多个领域。通过统一的通信协议连接各种设备,实现智能家居与楼宇自动化功能。 ### 2. **KNX Virtual 插件的功能** - **模拟设备**:可以模拟多种类型的KNX设备,如灯光控制装置、窗帘控制器及温度调节器等,在没有实体硬件的情况下进行功能验证。 - **数据点配置**:支持用户定义和编辑设备的数据点表(DPT),根据需求设置不同参数类型。 - **通信测试**:通过虚拟环境中的设备间通讯来检验报文的准确性,支持EIBDP与TPDU两种传输层协议。 - **项目开发**:在软件环境中快速创建并修改虚拟设备,无需实际硬件即可完成基础功能调试工作。 - **故障排查**:模拟潜在问题场景以帮助识别和解决可能存在的错误。 ### 3. **版本2.5.0的特性** 新发布的版本可能会提升处理速度、降低延迟,并提供更流畅的操作体验。此外还可能增加新的设备模型或改进现有模型的行为,提高与不同KNX开发工具(如EIBVisio及ETS)的兼容性并修复已知的问题。 ### 4. **使用步骤** 1. 安装插件。 2. 创建或导入项目,并定义虚拟设备和数据点。 3. 配置设备属性以及通信参数。 4. 连接测试虚拟环境中的设备间通讯情况。 5. 在软件环境中调试并优化控制逻辑配置方案。 6. 将设定导出至实际的ETS工程文件中。 ### 5. **版本更新** “kv-20220404”这个名称可能表示的是KNX Virtual插件的一个特定版本,日期部分(即2022年4月4日)表明该版本发布于这一天。这说明用户下载的为截止到此日期为止的所有改进和修复后的最新版。 ### 6. **应用场景** - **教育与培训**:学生可以在没有实物设备的情况下进行实践操作。 - **项目预测试**:开发者可以使用虚拟环境在实际部署前验证控制策略及设备交互情况。 - **远程支持**:技术人员可以通过虚拟环境为客户提供远程技术支持,无需亲自到场。 KNX Virtual插件是开发和调试KNX系统的重要工具之一。它提供了无硬件条件下的模拟环境,极大地提升了工作效率并提高了项目的成功率。对于熟悉并掌握KNX技术的人来说,这是一个不可或缺的资源。