Java 楼宇管理系统的BACNet插件

Java 楼宇管理系统的BACNet插件,java,c,configuration,building,Java,C,Configuration,Building,我正试图在Seimens服务器上安装一个BACNet扫描仪,该服务器运行带有BACNet接口的远地点系统。我已经尝试过在test/Scan.java的LocalDevice对象上使用put,因为我得到了一个端口绑定错误 是否有人知道我可以使用的任何其他库或将BACNet插件设置到楼宇管理系统的参考说明?关于端口绑定错误,您可能必须配置防火墙,因为: BACnet/IP正在使用UDP 默认端口号为47808(0xBAC0) 我以前也遇到过同样的问题,即BACnet客户端需要从UDP端口47808

我正试图在Seimens服务器上安装一个BACNet扫描仪,该服务器运行带有BACNet接口的远地点系统。我已经尝试过在test/Scan.java的LocalDevice对象上使用put,因为我得到了一个端口绑定错误


是否有人知道我可以使用的任何其他库或将BACNet插件设置到楼宇管理系统的参考说明?

关于端口绑定错误,您可能必须配置防火墙,因为:

  • BACnet/IP正在使用UDP
  • 默认端口号为47808(0xBAC0)

我以前也遇到过同样的问题,即BACnet客户端需要从UDP端口47808发送和接收数据。由于BACnet服务器已经使用该端口侦听(和应答),因此我的解决方案是使用虚拟IP(网桥),以便我的客户端在同一以太网卡上运行,但使用不同的IP地址。有点复杂,我知道,但它是有效的


远地点系统是否支持虚拟(或简单的附加)网络驱动程序完全是另一个问题。在我的Linux和Windows机器上,我可以运行我需要的任意多个服务器和客户端(实际上我不知道限制是什么,我已经运行了多达5个服务器和3个客户端,没有任何问题)。

您的问题可能是使用了一个已经在使用的(BACnet端口#)套接字;在绑定到套接字之前,您必须确保它不是独占使用的,但是(稍微重要一点)还要确保它被标记为可重用


但是,除非您正在收听的是Who Is广播,否则我建议您在不同的端口(例如0xBAC1/47809)上收听(单播)响应,但仍然在标准端口(0xBAC0/47808)上发送。

我理解,但是BACNet服务器应该绑定到这个端口,我需要这个插件来扫描服务器,并向服务器查询活动对象。扫描代码不应尝试绑定到与服务器相同的地址。它适用于BACNet工具的C构建,但不适用于BACNet4j。如果您试图与运行BACNet服务器的Apogee Insight通信,则需要在BACNet网络2上进行通信。这是Insight上BACnet服务器的默认网络号。指定网络号码时,需要对要与之通信的设备使用正确的编码。IP地址、MAC地址、网络号等。。基于135-2008年的远程网络配置。