VEINS_CARLA安装指南
这是Veins团队开发的一个接口,能够实现veins和carla之间的数据传输,通过veins通信模块能够实现carla中感知决策等相关数据的传输。
- github:veins_carla
- paper:Poster: A Case for Heterogenous Co-Simulation of Cooperative and Autonomous Driving
配置环境要求
实验室电脑配置为:cpu: i7 12700;显卡:3080-ti;内存:32G(DDR5)(单条,买的时候没看,不是双通道)。
这个配置需要先看一下,主要是CARLA安装的配置要求就行,




参考官方确定ubuntu18.04;CARLA0.9.12;UE4.26
CARLA 安装
参考教程:
- 官方:CARLA Documentation
- 官方github:CARLA Simulator
- 知乎小飞哥:史上最全Carla教程
参考官方教程即可,应该不会出现太大问题,也可以参考官方github中的issues或者小飞哥的评论区。
我遇到的一个现象就是,打开UE后,可以看到cpu几乎是占满的状态,但还能够操作,随后点击play后,就卡死了,一度怀疑是不是配置的问题,也不知道具体卡了多久,应该是等渲染完后,cpu占用就正常了,然后就可以执行python3 automatic_control.py,这就代表安装成功了!

OMNeT++安装
carla主要是师弟安装,具体过程记录的不多,教程也很多,OMNeT++我来安装,在此记录下来。先找到相关的官方资料文档。

- 官方:OMNeT++ Downloads
- 官方安装手册:OMNeT++ Installation Guide
开始吧!

Veins_carla没说说明安装omnet++的哪个版本,6.0的安装指南中要求ubuntu 20.04,

所以在晚上搜索了一下,还是安装低一点的版本,选择5.6.2吧。

因此又找了博客,注意,还是以官方的文档为主,博客仅作为参考。
【软件安装】Ubuntu18.04及20.04中安装omnet++
Ubuntu18.04 安装 omnet 5.6.2
以及下载安装包后,
中带有的安装文档:


支持18.04,ok,可以开始了。可以看到,前期收集资料要以官方及按照官方译的博客等,筛选高质量的信息,起码写这个博客的人是经验丰富或行业从业者等。
下载解压:
参考安装手册,第四章和第五章并结合相关博客。

没有问题继续:

继续

接下来看第四章:
我看有些博客这里设置路径有些不一样,一开始我是很相信的,以为可能要根据官方做一下修改,比如下面到博客,但如果路径设置错来,会导致一些基本到比如,ls,gedit这些密令用不了,他会给出一个路径,就是这些密令到可执行文件所在到路径,使用路径就行,把错误的路径删掉或注释,然后重启就行,一定要删掉或注释,不要盲目重启。


我最后是按官方文档到路径添加到,没有做任何到更改。

然后继续!


随后进行编译:

经过漫长的等待!

Omnet++安装成功!

验证安装。

设置桌面图标



接下来继续安装相关依赖:

接下来配置conan:


有个提示,按红色中的提示密令输入一遍就行:

接下来是下载veins:

如果下载的慢或者超时就手动下载吧,解压后放到omnet的文件夹里。

编译veins:

找不到"opp_makemake",在网上搜索了一下该错误,是在github中的issue中,

看起来就是路径应该有问题,因为bin路径下面是有这个opp_makemake的。
所以再次打开路径,因为前面我说了,我是直接复制的官方文档的路径,但是我并没有深刻理解,但却没有报错,到veins这就有问题了,所以HOME是啥意思呢?我问了下gpt,

于是我重新更改了一下路径:

仍然报错,暂未找到原因,感觉应该是路径的问题。
第二天找同门一起看来下,最后找到了原因,source完后,我是在另一个窗口进行./configure,但是并没有生效,可以使用env查看一下是否添加进去来,在该窗口进入veins然后进行./configure。



这是我最后到的路径

接下来安装veins_carla:




可以看到报错了,Conan 版本不满足,要升级到1.53.0
python3 -m pip install --user conan==1.53.0

报错!

下载Conan 1.54.0!
继续!


应该是没有问题了。

这里到运行应该有些区别!
carla运行:
先开启CarlaUE4。
$ ~/UnrealEngine_4.26/Engine/Binaries/Linux/UE4Editor "$PWD/CarlaUE4.uproject"
找到这个目录:

终端执行
bash
~/UnrealEngine_4.26/Engine/Binaries/Linux/UE4Editor "$PWD/CarlaUE4.uproject"
启动!

点击运行!


继续!
bash
cd veins_carla/examples/veins_carla
./doRun.sh

make[1]: Entering directory '/home/luo/OMNet++/omnetpp-5.6.2-src-linux/veins_carla/src'
make[1]: opp_configfilepath: Command not found
make[1]: opp_configfilepath: Command not found
Makefile:50: *** Config file '' does not exist -- add the OMNeT++ bin directory to the path so that opp_configfilepath can be found, or set the OMNETPP_CONFIGFILE variable to point to Makefile.inc. Stop.
make[1]: Leaving directory '/home/luo/OMNet++/omnetpp-5.6.2-src-linux/veins_carla/src'
Makefile:35: recipe for target 'all' failed
make: *** [all] Error 2
make: Leaving directory '/home/luo/OMNet++/omnetpp-5.6.2-src-linux/veins_carla'
后面路径再次出问题,fuck!,最后正确的路径是
bash
export PATH=$HOME/OMNet++/omnetpp-5.6.2-src-linux/omnetpp-5.6.2/bin:$PATH

如issue所示!

看样子bug是解决不了了,也到github上反馈下,
都装到这了,把sumo也装了,顺便把Veins的example运行下!

版本的选择,选择1.8版本即可!
下载链接SUMO-Downloads
github

参考官方安装教程Linux Build
参考中文博客Veins、OMNeT++、SUMO仿真平台搭建(ubantu系统下)
OK,准备资料找好了,开始吧!



github好像没写是什么系统的版本。
这个网址下载也行
Simulation of Urban MObility Files

下载后解压
bash
tar zxvf sumo-all-1.8.0.tar.gz

配置环境变量


可以通过 echo $SUMO_HOME 来初步检测有没有修改成功:

安装sumo的依赖库,
bash
sudo apt-get install git cmake python3 g++ libxerces-c-dev libfox-1.6-dev libgdal-dev libproj-dev libgl2ps-dev python3-dev swig default-jdk maven libeigen3-dev
进入该目录

bash
cmake ../..
bash
make -j$(nproc)
经过一段时间编译等待

启动
bash
sumo-gui

来试一个简单的demo吧
进入sumo文件下的docs/tutorial/traci_tls
bash
python runner.py


箭头可以设置为小车的形状,

接下来跑通veins的examples:
测试安装的sumo和Veins能否正常运行
进入到指veins文件夹

bash
#运行命令执行测试
sumo-gui -c erlangen.sumo.cfg

接下来运行在Omnet++中运行veins,要先链接sumo
进入到veins文件夹下:

输入指令
bash
python2 sumo-launchd.py -vv -c sumo-gui
出现Listening on port 9999就可以啦,然后打开Omnet++:

运行就可以啦!

至此,ubuntu 18.04下的carla,omnet++,sumo,veins以及veins_carla的全部安装教程就到此结束了,veins_carla应该是官方bug。