2017-11-17 88 views
0

我正在使用静脉4.5框架进行一个学期的项目。我试图在给出的示例代码中观察不同函数的行为。出于某种原因,RSU的onWSM函数永远不会被调用。我添加了一条消息(使用EV命令)打印到日志中,只要调用该函数但消息从不记录。我在车辆的onWSM功能中尝试了同样的功能,并且工作正常。我不明白这里有什么问题。RSU未收到静脉中的WSM 4.5

我搜索了Google,显然其他人在不同的论坛发布了类似的问题,但还没有收到答案(例如http://java.wekeepcoding.com/article/10429913/RSU+receiving+message+but+onWSM+method+not+executing+in+veins+4.5)。对于不同版本的静脉有相同的问题的答案,但现在我使用的版本中的功能不同(例如Allow a RSU receive messages in Veins)。

任何帮助,将不胜感激。

回答

0

想到的一件事是看看BaseWaveApplLayer中的handleLowerMsg函数,看看onWSM实际上是否在RSU到达WSM时被调用。

+0

我在'handleLowerMsg'函数中添加了日志消息。在日志中,仅为节点(即汽车)打印消息,而不是RSU。对于节点,该消息仅在if-else条件的'bsm'部分打印。我试图在RSU应用程序中添加一个'onBSM'函数来查看该函数是否会被调用,但是它不会被调用。还有其他建议吗? – an4s