我正在开发 Veves 4.4,然后转移到最新版本。我遇到了此链接的问题,因此注释掉了该代码。现在我不想要障碍物阴影我该怎么办?去除
<AnalogueModel type="SimpleObstacleShadowing">
<parameter name="carrierFrequency" type="double" value="5.890e+9"/>
<obstacles>
<type id="building" db-per-cut="9" db-per-meter="0.4" />
</obstacles>
</AnalogueModel>
Run Code Online (Sandbox Code Playgroud)
来自 config.xml 和来自.ini文件的障碍物定义就够了吗?会有副作用吗?
我有多个交通灯逻辑,每个都有特定的信号计划。
我在文件中定义了每个连接特定的逻辑:
J1.lgc.xml
Run Code Online (Sandbox Code Playgroud)
当我尝试将这些文件添加到配置文件 ( J.sumocfg)
<additional-files value="J1.add.xml"/>
<additional-files value="J2.add.xml"/>
...
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
错误:无法设置选项“附加文件”(可能定义了两次)。
有没有办法单独加载所有这些文件而不是将所有文件放在一个文件中?
我需要计算当前车辆和前车之间的距离,对于流动中的每辆车,在边缘上行驶.
在通过TraCI时,我遇到了getLeader方法,该方法应该返回领导者的ID和我需要的距离.
但我找不到一个带有此名称的实现方法,或者在TraCI中用C++编写的概述扩展变量检索中列出的任何其他方法.
如果有人能帮助我,我真的很感激.
我成功地实施getLastStepVehicleIDs作为建议从感应回路中检索值这里.我遵循已经实现的相同类型的方法(例如getJunctionIds),但在这种情况下,找不到这样已经实现的方法.
我正在尝试模拟一种VANET场景,在这种场景中,如果道路被阻塞,那么在特定时间之后,汽车会广播一条消息,其中包括被阻塞的roadId和它周围100米处的车辆数量。
在TraCIDemo11p应用程序中,当汽车停下来超过10秒钟时,它将节点颜色更改为红色(以表示事故),并向包含阻塞道路ID的其他汽车发送消息,所有这些操作均在handlePositionUpdate方法中完成:
findHost()->getDisplayString().updateWith("r=16,red");
sentMessage = true;
WaveShortMessage* wsm = new WaveShortMessage();
populateWSM(wsm);
wsm->setWsmData(mobility->getRoadId().c_str());
//host is standing still due to crash
if (dataOnSch) {
startService(Channels::SCH2, 42, "Traffic Information Service");
//started service and server advertising, schedule message to self to send later
scheduleAt(computeAsynchronousSendingTime(1,type_SCH),wsm);
}
else {
//send right away on CCH, because channel switching is disabled
sendDown(wsm);
}
Run Code Online (Sandbox Code Playgroud)
可以通过更新.ini文件中的maxInterfDist值来设置100m的限制
*.connectionManager.maxInterfDist = 100m
Run Code Online (Sandbox Code Playgroud)
现在我的问题是如何获取车辆数量和100m的面积,我有一个想法,这将使用TraCI来完成,最有可能使用LaneAreaDetector的getJamLengthVehicle来完成,但是我不知道如何做到这一点。他们任何等效的方法还是我看错了方向?
在 Ubuntu 16.04 上安装 Sumo-0.30.0 时,make导致以下错误:
make[4]: Entering directory '/home/<path>/sumo-0.30.0/src/gui'
g++ -DHAVE_CONFIG_H -I. -I../../src -I/home/<path>/sumo-0.30.0/./src -I/usr/include/ffmpeg -I/usr/local/include -I/usr/include/fox-1.6 -I/usr/include/gdal -I/usr/local/include -I/usr/include -msse2 -mfpmath=sse -O2 -DNDEBUG -MT GUIViewTraffic.o -MD -MP -MF .deps/GUIViewTraffic.Tpo -c -o GUIViewTraffic.o GUIViewTraffic.cpp
In file included from GUIViewTraffic.cpp:36:0:
../../src/utils/gui/div/GUIVideoEncoder.h:58:32: fatal error: libswscale/swscale.h: No such file or directory
compilation terminated.
Makefile:449: recipe for target 'GUIViewTraffic.o' failed
Run Code Online (Sandbox Code Playgroud)
安装了安装/Linux 构建库中提到的所有必备库并验证我的ffmpeg版本是最新版本后,我继续./configure执行安装指南中的命令,结果成功。./configure 结果的最后几行显示ffmpeg已启用。
Optional features summary
-------------------------
Enabled: TRACI PROJ GDAL …Run Code Online (Sandbox Code Playgroud) 我是VEINS的新手,正在尝试在MyVeinsApp.cc中实现加权p持久性。该公式中使用了发送节点和接收节点之间的距离。我看到了下面的两个功能。
virtual Coord& getSenderPos();
virtual const Coord& getSenderPos() const {return const_cast<WaveShortMessage*>(this)->getSenderPos();}
Run Code Online (Sandbox Code Playgroud)
我应该使用其中一种方法来计算节点之间的距离吗?
请建议最好的方法。
我是 VEINS/Omnet++ 的新手,正在尝试各种广播抑制技术,并且想计算丢包率。我想我必须使用这个公式:
丢包率 = TotalLostPackets / SentPackets
但由于某些节点发送 0 个数据包,是否有一种简单的方法可以在 Omnet++ .anf 配置文件中或在 VEINS 中指定这一点,而无需进行手动调整?否则,如果任何节点发送 0 数据包,则所有图都显示为无穷大。
谢谢你!
sumo ×7
omnet++ ×5
veins ×5
c++ ×4
simulation ×2
config ×1
ffmpeg ×1
networking ×1
ubuntu-16.04 ×1
xml ×1