2、环境搭建(上):操作系统与硬件要求、安装CARLA(源码与二进制包选择)、安装SUMO(Ubuntu与Windows)

说实话,环境搭建是联合仿真里最磨人的一步。我见过太多人卡在这一关,还没开始跑仿真就放弃了。别急,咱们一步步来。

这一章,我带你搞定三件事:选对硬件和系统、装好CARLA、装好SUMO。嗯,都是基础活,但细节不少。

2.1 操作系统与硬件要求

先聊聊硬件。CARLA这玩意儿,说白了就是个吃显卡的怪兽。我最早用一台老笔记本跑,结果卡成PPT,帧率不到5。后来换了台式机,才算是真正跑起来。

最低配置(能跑,但别指望流畅)

  • CPU:Intel i5 或 AMD Ryzen 5,4核以上
  • GPU:NVIDIA GTX 1060 6GB 或同等性能
  • 内存:16GB DDR4
  • 硬盘:SSD 256GB(CARLA解压后约30GB,SUMO很小)
  • 系统:Ubuntu 20.04 / 22.04 或 Windows 10/11

推荐配置(我个人的习惯配置)

  • CPU:Intel i7-12700 或 AMD Ryzen 7 5800X
  • GPU:NVIDIA RTX 3070 8GB 或更高
  • 内存:32GB DDR5
  • 硬盘:NVMe SSD 1TB
  • 系统:Ubuntu 22.04 LTS(我个人强烈推荐)
⚠️ 注意: 如果你用Windows,记得关闭Windows Defender的实时扫描。我在项目中遇到过,它会把CARLA的某些dll文件误删,导致启动报错。别问我怎么知道的,都是泪。

为什么我推荐Ubuntu?

其实很简单:CARLA官方对Ubuntu的支持最好。Windows版虽然能用,但编译源码时坑多。SUMO在Ubuntu下安装也更丝滑。你想想看,省下来的时间干点啥不好?

2.2 安装CARLA:源码与二进制包选择

CARLA的安装方式有两种:二进制包和源码编译。我建议新手直接选二进制包。为什么?因为省事。

2.2.1 二进制包安装(推荐新手)

二进制包就是官方编译好的压缩包,解压即用。我个人习惯用这种方式,除非你需要修改CARLA源码。

Ubuntu下的安装步骤:

  1. 去CARLA官网(https://carla.org/)下载最新版,比如CARLA 0.9.15
  2. 解压到你的工作目录:tar -xzf CARLA_0.9.15.tar.gz -C ~/workspace/
  3. 进入目录:cd ~/workspace/CARLA_0.9.15
  4. 启动CARLA:./CarlaUE4.sh

Windows下的安装步骤:

  1. 下载Windows版的zip包
  2. 解压到 C:\CARLA(路径不要有中文)
  3. 双击 CarlaUE4.exe 启动
💡 小技巧: 我第一次装的时候,启动后画面全黑。后来发现是显卡驱动太旧。记得更新NVIDIA驱动到最新版,至少535以上。

2.2.2 源码编译安装(进阶玩家)

如果你需要修改CARLA的传感器、车辆模型,或者想调试底层代码,那就得走源码编译。嗯,这条路比较折腾,但值得。

Ubuntu下编译步骤(精简版):

# 1. 克隆源码
git clone https://github.com/carla-simulator/carla.git
cd carla

# 2. 更新子模块
git submodule update --init --recursive

# 3. 安装依赖
sudo apt-get install -y build-essential clang-8 lld-8
sudo apt-get install -y libomp-dev

# 4. 编译(耗时约1-2小时)
make PythonAPI
make launch

我曾经在编译时卡在 Unreal Engine 的授权上。这里提醒一下:源码编译需要先注册Epic Games账号,并关联GitHub账号。不然你连Unreal Engine的源码都拉不下来。

📌 我的建议: 如果你是初学者,或者只是做联合仿真,用二进制包就够了。别在编译上浪费时间。等你把联合仿真跑通了,再回头折腾源码也不迟。

2.3 安装SUMO:Ubuntu与Windows

SUMO的安装比CARLA简单多了。它就是个交通仿真工具,不依赖GPU。说白了,是个轻量级选手。

2.3.1 Ubuntu下安装SUMO

Ubuntu下有两种方式:apt安装和源码编译。我推荐apt,一行命令搞定。

方式一:apt安装(推荐)

sudo apt update
sudo apt install sumo sumo-tools sumo-doc

装完后,检查版本:sumo --version。我目前用的是1.18.0,稳定。

方式二:源码编译(如果你需要最新功能)

# 下载源码
git clone --recursive https://github.com/eclipse/sumo.git
cd sumo

# 安装依赖
sudo apt install cmake python3-dev libxerces-c-dev libfox-1.6-dev libgdal-dev libproj-dev libgl2ps-dev

# 编译
mkdir build && cd build
cmake ..
make -j$(nproc)
sudo make install
⚠️ 注意: 源码编译时,记得加上 -j$(nproc) 参数,不然编译速度慢得你想哭。我第一次没加,等了40分钟。

2.3.2 Windows下安装SUMO

Windows下更简单,直接下载安装包。

  1. 去SUMO官网(https://sumo.dlr.de/)下载Windows安装包
  2. 双击安装,一路Next
  3. 安装完成后,把 C:\Program Files (x86)\Eclipse\Sumo\bin 添加到系统环境变量PATH中
  4. 打开命令行,输入 sumo --version 验证
💡 避坑指南: 我曾经在Windows下装完SUMO后,运行 sumo-gui 报错说缺少 MSVCRT.dll。后来发现是Visual C++运行库没装。去微软官网下载 vc_redist.x64.exe 装上就好了。

2.4 本章知识体系

下面这张图,帮你理清这一章的核心逻辑。说白了,就是先搞定系统,再装CARLA,再装SUMO。顺序别搞反了。

环境搭建核心流程 操作系统选择 安装CARLA 安装SUMO 二进制包(推荐) 源码编译(进阶) Ubuntu(apt/源码) Windows(安装包) 建议顺序:操作系统 → CARLA → SUMO

2.5 环境验证

装完不是终点,能跑起来才算数。我习惯用一个小脚本验证环境是否正常。

验证CARLA:

# 启动CARLA服务端
./CarlaUE4.sh -quality-level=Low -fps=10

# 另开终端,运行Python客户端测试
python3 -c "
import carla
client = carla.Client('localhost', 2000)
client.set_timeout(10.0)
world = client.get_world()
print('CARLA连接成功,世界名称:', world.get_map().name)
"

验证SUMO:

# 运行自带示例
sumo-gui /usr/share/sumo/tools/example.sumocfg

# 或者用Python测试
python3 -c "
import sumolib
print('SUMO库导入成功,版本:', sumolib.version)
"
📌 核心要点:
  • 操作系统:Ubuntu 22.04 是首选,Windows也能用但坑多
  • CARLA:新手用二进制包,老手才编译源码
  • SUMO:Ubuntu用apt,Windows用安装包
  • 环境验证:跑通一个小脚本,比什么都强

好了,环境搭好了,下一章咱们就开始搞真正的联合仿真了。嗯,到时候你会觉得,今天流的汗都是值得的。

可可精品资料库