Voltron失败的Bacnet代理代理

2024-10-01 04:49:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在Volttron Project中配置bacnet代理,由于某些原因,我在中遇到了此错误volltron.log日志启动代理时:

你能告诉我配置文件里有没有做错什么吗? 对于设备的IP地址,我在配置文件中尝试了三种变体:

  1. IP地址/24
  2. IP地址
  3. 在IP地址:端口(47808)

其中<;>是设备的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

供应商ID=24


Tags: projectlogid代理addressdevice配置文件错误
2条回答

换句话说,进入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配置:

{
    "agentid": "master_driver",
    "driver_config_list": [
        "/home/volttron/volttron/examples/configurations/drivers/bacnet.config"                 
    ]
}

你可以把目标设备地址bacnet.config文件公司名称:

^{pr2}$

相关问题 更多 >