Я использую Veins-4a2 и я изменил сценарий демонстрационного примера. Я добавил новый wsm, который является ACK, когда узел получает сообщение, он отправляет сообщение ACK на исходный узел. Я добавил эту строку в функцию onData():
sendWSM(prepareWSM("ack", ackLengthBits, type_SCH, ackPriority, sourcenode.idNode, 2));
и я, конечно, изменил функции prepareWSM и handleLowerMsg() в BaseWaveApplLayer.cc, но когда я запускаю симуляцию, она вылетает через 10 секунд. Это сообщение об ошибке:
Ошибка в модуле (Mac1609_4) RSUExampleScenario.node[2].nic.mac1609_4 (id=240) в событии #1196, t=9.210177776741: Ошибка модели: ASSERT: условие useSCH false в функции handleUpperMsg, veins/modules/mac /ieee80211p/Mac1609_4.cc строка 259.
Разве я не имею права повторно использовать канал SCH для сообщения ACK? Как я могу исправить эту проблему, пожалуйста?