【发布时间】:2019-03-31 05:42:21
【问题描述】:
我已经创建了自己的 Veins 场景,现在我需要检索场景中每辆车的平均速度和气体排放量(如 CO2)等车辆值。有人可以向我详细解释如何实现这一目标吗?有什么需要实现的代码吗?如果是,在哪个文件中?我已经浏览了 SUMO 的 TraCI wiki,但没有解释如何实现这一点。任何帮助对我来说都很有价值。 使用:SUMO 0.32 和 Omnet++5.3
【问题讨论】:
我已经创建了自己的 Veins 场景,现在我需要检索场景中每辆车的平均速度和气体排放量(如 CO2)等车辆值。有人可以向我详细解释如何实现这一目标吗?有什么需要实现的代码吗?如果是,在哪个文件中?我已经浏览了 SUMO 的 TraCI wiki,但没有解释如何实现这一点。任何帮助对我来说都很有价值。 使用:SUMO 0.32 和 Omnet++5.3
【问题讨论】:
我正在使用旧版本的静脉,但它可能仍然是相同的方式。
确实,正如您所说,提示位于 TraciMobility 文件中。查看“veins\modules\mobility\traci\”中的“TraciMobility.cc”和“TraciMobility.h”。您可以发现在模拟运行期间初始化并维护了一个变量(double totalCO2Emission)。变量是作为标量的记录器。我还不确定如何获得它的价值(因为我也是静脉新手)。但是,还有另一种方法可以获得总二氧化碳排放量:
virtual double getTotalCO2Emission() const {
return totalCO2Emission;
}
double test = mobility->getTotalCO2Emission();
或将其打印为如下事件:
EV << "Test the CO2 emission: " << mobility->getTotalCO2Emission() << endl;
因此,每当车辆收到消息时,它都会在模拟屏幕(如果不是 cmd)中显示当前的二氧化碳排放量。
如果有任何事情,请随时提及。
最好的问候,
【讨论】: