Python VISSIM COM接口-Vissim.Net.Vehicles.GetMultipleAttributes“'EmissionsCO2'”返回None

问题描述

我正在尝试测量网络中所有车辆的排放和燃料消耗。我正在使用AV和人类驾驶的车辆(HDV)进行一些模拟。我正在运行python 3.7.6,并使用COM API与VISSIM进行交互。

基本上,我使用以下命令在一个循环中创建X个HDV:

for i in range(x):
    hdvs.append(Vissim.Net.Vehicles.AddVehicleAtLinkPosition( 100,link,lane,pos,desired_speed,interaction))

然后我控制我的AV,最后尝试访问车辆的排放,燃料消耗和总行驶距离:

all_veh_emissions = Vissim.Net.Vehicles.GetMultipleAttributes(('EmissionsCO2','EmissionsNOx','FuelConsumption','distTravTotal'))

EmissionCO2,EmissionsNOx和FuelConsumption返回None,distTravTotal返回以米为单位的真实数字。那么,为什么我不能访问排放量和燃料消耗量?我错过了VISSIM吗?

最好的问候, 雅各布

解决方法

要获得每辆车的排放量和油耗,需要额外的附加模块。

根据 Vissim 手册 pdf 文件,

如果您购买了附加模块API,您可以通过接口访问Emission Model.dll文件进行排放计算。您必须提供 EmissionModel.dll。它不是 Vissim 的一部分。

附言我的是 Vissim 11.00。