我试图在Volttron Project中配置bacnet代理,由于某些原因,我在中遇到了此错误volltron.log日志启动代理时:
你能告诉我配置文件里有没有做错什么吗? 对于设备的IP地址,我在配置文件中尝试了三种变体:
其中<;>是设备的ip地址。在
不幸的是这些都没用。在
以下是对各种文件的描述:
=============================伏特创日志===================================
2016-06-28 13:55:31,888 (bacnet_proxyagent-0.1 7777) <stderr>
ERROR: socket.error: [Errno 99] Cannot assign requested address
=================================================================================
====================BACNET代理配置==========================
^{pr2}$我运行了voltron/scripts/bacnet/bacnet_扫描.py结果如下:
Device Address = <Address 192.168.1.9>
Device Id = 570009
maxAPDULengthAccepted = 480
segmentationSupported = segmentedBoth
vendorID = 24
Device Address = <RemoteStation 5701:37>
Device Id = 990037
maxAPDULengthAccepted = 480
segmentationSupported = segmentedBoth
换句话说,进入proxy config的device_地址是您的本地地址,这样bacnet驱动程序就可以绑定到设备上的接口。在
这是一个常见的错误。当您设置bacnet代理时,您实际上是在创建一个新的bacnet设备并将其放到网络上。然后,Voltron平台BACnet驱动程序使用此设备与网络上的设备进行通信。在
此设备与网络上的任何其他设备没有任何共同之处,除了它将通过的端口进行通信。
从BACnet代理文件:
设备地址-绑定到网络端口的地址,在运行Voltron的计算机上,BACnet通信将通过该端口进行。这是不是任何目标设备的地址。在
http://volttron.readthedocs.io/en/develop/core_services/drivers/BACnet-Proxy-Agent.html
例如,如果您的Voltron安装在IP为192.168.1.2的机器上,您可以将其用于BACnet代理配置文件中的设备地址设置。在
它将与您在voltron/scripts/bacnet中使用的值相同/BACpypes.ini文件“地址”设置使bacnet_扫描.py脚本工作。在
这是必要的是BACnet协议使用UDP进行所有通信,并且必须打开一个端口来监听响应。在
您还必须将代理配置中的“object_id”设置更改回599。根据bacnet_scan的输出,使用570009会导致与您试图设置的设备发生冲突。按BACnet的说法,这是设备ID。BACnet网络上的所有设备ID必须是唯一的。在
您希望与之通信的设备的地址用于MasterDriverAgent配置中特定设备的配置中。在
例如,对于这样的MasterDriverAgent配置:
你可以把目标设备地址bacnet.config文件公司名称:
^{pr2}$相关问题 更多 >
编程相关推荐