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