volttron BACnet 发现并非所有点都通过

volttron BACnet discovery not all points coming through

我正在尝试抓取 BACnet 设备,但我注意到 scripts/bacnet/grab_bacnet_config.py

并未捕获所有点

在下面 BACnet 扫描工具的屏幕截图中,这些是未通过的 BO:

有什么想法可以尝试吗?

如果我执行 vctl config edit platform.driver registry_configs/1100.csv 一切似乎都被捕获,但 BACnet 二进制输出(BO):

Duct Static Pressure Local,Duct Static Pressure Local,inchesOfWater,-5.02 to 5.02,analogInput,presentValue,FALSE,5,,
Control Cabinet Space Temperature,Control Cabinet Space Temperature,degreesFahrenheit,-58.00 to 482.00,analogInput,presentValue,FALSE,6,,
config: operation timed out,IT Closet Space Temperature,degreesFahrenheit,-58.00 to 482.00,analogInput,presentValue,FALSE,7,,
Return Air Humidity Local,R(volttron) volttron@volttron:/var/lib/volttron$ 00,analogInput,presentValue,FALSE,8,,
Outdoor Air Relative Humidity Local,Outdoor Air Relative Humidity Local,percent,-150.00 to 150.00,analogInput,presentValue,FALSE,9,,
Supply Fan Speed Command,Supply Fan Speed Command,percent,-150.00 to 150.00 (default 0.0),analogOutput,presentValue,FALSE,1,,
Return Fan Speed Output Command,Return Fan Speed Output Command,percent,-150.00 to 150.00 (default 0.0),analogOutput,presentValue,FALSE,2,,
Outdoor Air Damper Command,Outdoor Air Damper Command,percent,-150.00 to 150.00 (default 0.0),analogOutput,presentValue,TRUE,3,8,
ERU Supply Damper Command,ERU Supply Damper Command,percent,-150.00 to 150.00 (default 0.0),analogOutput,presentValue,FALSE,4,,
Return Fan offset,Return Fan offset,percent,-150.00 to 150.00 (default 15.0),analogValue,presentValue,FALSE,1,,
Supply Fan P-Gain,Supply Fan P-Gain,noUnits,-1000.00 to 1000.00 (default 2.0),analogValue,presentValue,FALSE,2,,
Duct Static Pressure Setpoint BAS,Duct Static Pressure Setpoint BAS,inchesOfWater,-5.02 to 5.02 (default 1.0),analogValue,presentValue,FALSE,3,,
Discharge Air Cooling Setpoint BAS,Discharge Air Cooling Setpoint BAS,degreesFahrenheit,-58.00 to 482.00 (default 60.0),analogValue,presentValue,FALSE,4,,
Cooling Capacity Status,Cooling Capacity Status,percent,-150.00 to 150.00 (default 0.0),analogValue,presentValue,FALSE,5,,
Economizer Minimum Position Setpoint BAS,Economizer Minimum Position Setpoint BAS,percent,-150.00 to 150.00 (default 10.0),analogValue,presentValue,FALSE,6>
Economizer Outdoor Air Enable Setpoint BAS,Economizer Outdoor Air Enable Setpoint BAS,degreesFahrenheit,-58.00 to 482.00 (default 55.0),analogValue,present>
Outdoor Air Temperature BAS,Outdoor Air Temperature BAS,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,8,,
Outdoor Air Temperature Active,Outdoor Air Temperature Active,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,9,,
Space Temperature BAS,Space Temperature BAS,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,10,,
Space Temperature Active,Space Temperature Active,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,11,,
Discharge Air Temperature Setpoint Active,Discharge Air Temperature Setpoint Active,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentVal>Discharge Air Temperature,Discharge Air Temperature,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,13,,
Cooling P Gain,Cooling P Gain,noUnits,-1000.00 to 1000.00 (default 2.0),analogValue,presentValue,FALSE,14,,
Duct Static Pressure Setpoint Active,Duct Static Pressure Setpoint Active,inchesOfWater,-5.02 to 5.02 (default 0.0),analogValue,presentValue,FALSE,15,,
Econoomizer P Gain,Econoomizer P Gain,noUnits,-1000.00 to 1000.00 (default 2.0),analogValue,presentValue,FALSE,16,,
Warmup Terminate Setpoint,Warmup Terminate Setpoint,degreesFahrenheit,-58.00 to 482.00 (default 70.0),analogValue,presentValue,FALSE,17,,Warmup will Initia>
Heating Capacity Primary Status,Heating Capacity Primary Status,percent,-150.00 to 150.00 (default 0.0),analogValue,presentValue,FALSE,18,,
Heating P-Gain,Heating P-Gain,noUnits,-1000.00 to 1000.00 (default 2.0),analogValue,presentValue,FALSE,19,,
Discharge Air Heating Setpoint BAS,Discharge Air Heating Setpoint BAS,degreesFahrenheit,-58.00 to 482.00 (default 100.0),analogValue,presentValue,FALSE,20,,
Outdoor Air Enthalpy Active,Outdoor Air Enthalpy Active,btusPerPoundDryAir,-98.90 to 98.90 (default 0.0),analogValue,presentValue,FALSE,21,,
Return Air Enthalpy Active,Return Air Enthalpy Active,btusPerPoundDryAir,-98.90 to 98.90 (default 0.0),analogValue,presentValue,FALSE,22,,
Occupancy Request,Occupancy Request,State,State count: 5 (default 1),multiStateValue,presentValue,TRUE,1,8,"1=Unoccupied, 2=Occupied Bypass, 3=Occupied Sta>
Occupancy Status,Occupancy Status,State,State count: 5 (default 1),multiStateValue,presentValue,FALSE,2,,"1=Unoccupied, 2=Occupied Bypass, 3=Occupied Stand>
Economizer Airside Enable BAS,Economizer Airside Enable BAS,State,State count: 2 (default 1),multiStateValue,presentValue,FALSE,3,,1=Enabled

我不能从这里说出来,但你会不会是 retrieving/enumerating 来自结构化对象列表而不是对象列表的对象?

(结构化对象列表中的对象可能少于对象列表中的对象 - 因此可能不包括您的二进制输出对象?)

@HenryHub 我在我的 BACnet 设备上 运行 scripts/bacnet/grab_bacnet_config.py 并且能够得到一个二进制输出点。下面是从脚本生成的注册表 csv 文件的片段。请注意,第一行包含 headers。我添加这个作为参考。在您的情况下,什么是 binaryOutput 寄存器的示例?换句话说,如果脚本能够捕获您的二进制输出,它应该是什么样子?

在不知道您所针对的设备的详细信息并且由于您可以直接访问您的设备的情况下,我建议您手动编写一个 binaryOutput 并将其添加到您的注册表 csv 文件中;然后看看 Volttron 是否可以抓取那个 binaryOutput 点。这将执行以下操作:1) 如果可以读取该点,则表明 grab_bacnet_config.py 未按预期工作,并且 2) 如果无法读取该点,则可能表明您的设备未正常工作出于某种未知原因允许访问 binaryOutput。或者它可能与上面@DennisVM-D2i 的评论有关。顺便说一句,我听说另一个 Volttron 用户遇到了同样的问题;所以你不是唯一一个。

注册表文件中的二进制输出示例:

Reference Point Name,Volttron Point Name,Units,Unit Details,BACnet Object Type,Property,Writable,Index,Write Priority,Notes
3820a/Field Bus.3820A-AHU.SF-C,3820a/Field Bus.3820A-AHU.SF-C,Enum,0-1 (default 0),binaryOutput,presentValue,FALSE,3000034,,Supply Fan Command