车载网络: OMNeT++安装CAN协议

前言

请按照本文叙述的顺序安装。

安装 OMNeT++

首先要保证已安装好 OMNeT++。具体安装教程可参照 Ubuntu: 安装 OMNeT++ 仿真工具

安装 INET

去官网下载最新的 INET 框架 [1]: ​https://inet.omnetpp.org/Download.html

解压之:

tar xvfz inet-<version>.tgz

并将解压后的文件夹移至 sample/ 文件夹下:

并按照 Installing INET [2] 里的 手动安装方法 装好:

打开 OMNeT++ IDE,通过 File -> Import -> Existing Projects to the Workspace 导入 INET 选项。

Note: 如果找不到 File 选项入口,可将 OMNeT++ IDE 窗口放大,即可见左上角的选项栏:

  1. Single left click “inet”. Project -> Properties -> C/C++ Build -> Configuration:gcc-debug[Active]

Click Apply. Click Apply and close .

  1. Single right click inet -> Build Configurations -> Clean All
  2. Single right click inet -> Build Configurations -> Build Selected.. -> gcc-debug[Active]

Click OK.

安装 CoRE 插件

CoRE4INET Download:

在 OMNeT++ IDE 中进入 Help -> Install New Software...

在跳出的框内输入以下地址:

http://sim.core-rg.de/updates/

并在框内勾选 Abstract Network Description LanguageCoRE Simulation Model Installer 以及 Gantt Chart Timing Analyzer 这三个选项,并确定之。

弄好后,OMNeT++ IDE 会要求重启本工具。

获取 CoRE 框架

在 OMNeT++ IDE 中进入 Help -> Install CoRE Simulation Models...

选择你需要的 Project(我为了保险起见全部勾选了),安装之。

安装完后发现 OMNeT++ IDE 里多了 CoRE4INET/ 文件夹:

以及 FiCo4OMNeT/ 文件夹:

安装 FiCo4OMNeT

首先要保证你的 OMNeT++ 版本不小于 5.0 [3] 。

omnetpp-<version>/ 文件夹下通过 which nedtool 指令查看是否在路径中:

如果能显示出路径,说明到现在为止一切正常。

编译 FiCo4OMNeT 有两种方式:通过指令行 / 通过IDE。 我选择了第一种:

进入 FiCo4OMNeT/ 文件夹中,打开终端。

依次通过以下两条指令完成对 FiCo4OMNeT 的编译:

make makefiles
make MODE=release -j8

编译完成:

运行CAN协议

在 OMNeT++ IDE 左栏找到 FiCo4OMNeT/examples/can/ 文件夹下的任一 .ini 文件:

run之,即可验证CAN协议运行正常:

Note: 如果在虚拟机里面运行,在 run 之后出现的短暂黑屏属于正常现象。稍事等候,运行结果就会出来了。


Ref:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏bboysoul

如何黑入安卓手机(ezsploit)

安装很简单clone git clone https://github.com/rand0m1ze/ezsploit.git cd ezsploit ch...

19020
来自专栏哈雷彗星撞地球

Mac下Jenkins构建+蒲公英分发构建过程补充

因为持续构建完成后,有的公司可能不是用企业证书,需要借助蒲公英、fir.im等分发工具供测试人员安装,所以构建完成后自动上传蒲公英、fir.im也很重要。这里记...

8530
来自专栏计算机编程

SNS项目笔记<四>--RXjs简要用法

在命令行输入ionic g provider youProviderName 在创建好后,系统会自动导入从@angular/http里导入Http这个类,方便后...

15940
来自专栏Netkiller

PHP高级编程之守护进程

PHP高级编程之守护进程 http://netkiller.github.io/journal/php.daemon.html 摘要 2014-09-01 发表...

41170
来自专栏乐沙弥的世界

配置共享服务器模式

两者完成相同的任务,即处理所有指定的SQL操作。假定从客户端提交一个任意查询(DQL)到数据库服务器不论是专用模式还是共享

29430
来自专栏乐沙弥的世界

cannot set user id: Resource temporarily unavailable

    前阵子,Infra报告无法透过putty以及SecureCRT连接到数据库服务器,提示的错误为Resource temporarily unavaila...

10600
来自专栏向治洪

使用GitBook写电子书

工作以来一直有写博客的习惯,除了在各大站长写博客外,还可以使用 gitbook 将博客整理成电子书出版,如果受到好评还可以将图书弄成电子版出版。 经过近半年的整...

32270
来自专栏Golang语言社区

gRPC服务发现&amp;负载均衡

构建高可用、高性能的通信服务,通常采用服务注册与发现、负载均衡和容错处理等机制实现。根据负载均衡实现所在的位置不同,通常可分为以下三种解决方案:

91820
来自专栏

后端开源软件集合

缓存系统:memcached(group cache)、redis、mongodb、Couchbase(CouchDB、Membase、CouchOne) ht...

28090
来自专栏ionic3+

【技巧】ionic3视频上传

有人问到视频上传这个问题,那我还是写一下吧,其实基本参考《ionic3多文件上传》这文章也行,不过对于单文件上传就不用那么复杂了,步骤如下:

10820

扫码关注云+社区

领取腾讯云代金券