用静脉数据填充消息
Populating messages with data in veins
我正在做一个项目,其中 RSU 向其范围内的汽车发送信标。当汽车收到此信标时,它应该将其 ID 发送回 RSU.I 制作了一个自定义消息文件it.This 中的车辆 ID 就是我现在处理信标的方式。
void MyVeinsApp::onBSM(DemoSafetyMessage* bsm)
{
findHost()->getDisplayString().setTagArg("i", 1, "green");
if(sentMessage==false){
sendDown(bsm);
//scheduleAt(simTime() + 2 + uniform(0.01, 0.2), wsm->dup());
sentMessage=true;
}
}
这对我在 all.Is 不起作用有什么方法可以从汽车向 RSU 发送消息?
我不是专家,但我最近开始与您一起从事类似的项目。因此,您的消息包含一个参数,比方说,vehicle_id,并且在收到信标后,您必须将消息发送到包含 ID 的 RSU。要执行此操作,您必须首先使用
之类的车辆 ID 填写消息
bsm->setVehicle_id(findHost()->getIndex());
当您创建一个包含变量的新消息文件然后构建它时,程序还会创建 get() 和 set() 函数以处理这些参数。
现在为了让 RSU 简单地获取您发送的消息变量,它必须像这样调用 get() 函数:
RSU_vehicle_id=wsm->getVehicle_id();
现在您有一个包含接收到的车辆节点 ID 的变量。
我强烈建议您花几天时间来了解 Veins 教程背后的原理以及它如何处理它的所有方面。
我正在做一个项目,其中 RSU 向其范围内的汽车发送信标。当汽车收到此信标时,它应该将其 ID 发送回 RSU.I 制作了一个自定义消息文件it.This 中的车辆 ID 就是我现在处理信标的方式。
void MyVeinsApp::onBSM(DemoSafetyMessage* bsm)
{
findHost()->getDisplayString().setTagArg("i", 1, "green");
if(sentMessage==false){
sendDown(bsm);
//scheduleAt(simTime() + 2 + uniform(0.01, 0.2), wsm->dup());
sentMessage=true;
}
} 这对我在 all.Is 不起作用有什么方法可以从汽车向 RSU 发送消息?
我不是专家,但我最近开始与您一起从事类似的项目。因此,您的消息包含一个参数,比方说,vehicle_id,并且在收到信标后,您必须将消息发送到包含 ID 的 RSU。要执行此操作,您必须首先使用
之类的车辆 ID 填写消息bsm->setVehicle_id(findHost()->getIndex());
当您创建一个包含变量的新消息文件然后构建它时,程序还会创建 get() 和 set() 函数以处理这些参数。
现在为了让 RSU 简单地获取您发送的消息变量,它必须像这样调用 get() 函数:
RSU_vehicle_id=wsm->getVehicle_id();
现在您有一个包含接收到的车辆节点 ID 的变量。 我强烈建议您花几天时间来了解 Veins 教程背后的原理以及它如何处理它的所有方面。