最近在研究OPNET仿真,从零开始,遇见了很多小白问题,网络上相关资源过少,记录一下,希望能够帮助到大家。
1. 安装
- 安装是跟着b站上一个up主的视频来的,同时评论区也附有OPNET安装包和相关文件。
- 推荐b站上几个比较有用的教程
- OPNET安装教程,视频附带安装包。按教程安装就没什么问题,但编译的时候发现环境变量配置不太全。
- 环境变量配置建议参考OPNET环境变量配置
- OPNET仿真学习,此教程有画音不同步的问题,需要在特殊浏览器下观看,不然太难受了。
- 安装完成后就可以搭建网络仿真啦!我是先跟着陈敏老师的==《OPNET网络仿真》==这本书来进行的,第六章OPNET编程基础实例非常有用,建议初学者跟着做一遍,对整个仿真流程有个大致的了解。
2. 编译
1. 未找到string.h文件
- 环境变量未配全,在vc安装路径下的include文件夹里有string.h文件,把它加入环境变量
- 具体环境变量配置参考:OPNET环境变量配置
2. fatal error C1057:宏扩展中遇到意外的文件结束
- 字符错误
- 报错里提示F:\OPNET\EXdoc\initials_node_proc.pr.c文件146行出错,发现有字符错误,在节点进程模型的代码中发现最后用了中文分号
3. 仿真
1. 仿真中止——Aborted
- 报错信息(1):
No field named (dest_address) in packet (0).
Standard function stack imbalance
initials_proc_model [idle enter execs]
- 解决方案
(1)No Field Named (dest_address) in packet(0)
检查包格式发现未命名为dest_address
(2)Standard function stack imbalance
FIN 和FOUT/FRET未配对,检查后发现函数结尾少了FOUT; - 报错信息(2):
<<< Program Abort >>>
The set of models necessary for running the simulation is incomplete.
Check that all the ‘repositories’ attributes are complete.
T (0), EV (-), MOD (NONE) - 解决方案
因为是自建模型,就不再用标准模型库stdmod,设置:Edit->Preference->Search For:repositories,将Value值改为空值即可
- 报错信息(3):
<<< Program Abort >>>
No true transitions from state (idle)
T (10), EV (540), MOD (top.Office Network.node_0.tx_proc) - 解决方案
将节点模型中的统计线,右键->Edit Attribute,将rising edge trigger 和 falling edge trigger改成disable
2. 仿真无结果数据
- 链路连接未按照顺序排列
- 解决方案: 仿真无结果问题分析
2021.11.15 分割线
后续继续更新。