Carla_1_step

Windows 下全套安装过程

  • 微 PE:制作 U 盘启动项安装系统
  • msdn:下载 windows 镜像
  • CarLa(windows 版本):地址
  • Nvidia experience:用于在 Nvidia 安装 cuda

系统安装

在 Neoyous 计算机中,需要将硬盘格式转换为 NTFS 后,利用 DiskGiners 运行 Windows 安装器进行 Windows 安装

此时重启后 grub 会因为之前安装过 Linux 的原因出错

重新安装 Linux 后 grub 正常


安装 NVidia 驱动

Windows 中安装 NVidia 相对容易 完成 NVIDIA Experience 的安装 更新后重启 完成 NVidia 驱动及 CUDA 的安装

Carla 在 Windows 上的安装

安装 Anaconda Anaconda3-2018.12-Windows-x86_64

下载 CarLa 后 解压至 D: 安装 carlalib 到D:\carla\CARLA_0.9.13\WindowsNoEditor\PythonAPI\carla\dist中安装

  1. 可以用 easy_install 安装 egg
  2. 可以用 pip install 安装 whl 创建虚拟环境 (利用 conda)
conda create -n your_env_name python=3.7 //创建python虚拟环境
activate your_env_name //使用激活
deactivate //关闭虚拟环境

----------------
conda remove -n your_env_name --all //删除虚拟环境
conda remove --name your_env_name package_name //删除环境中的某个包

完成 python 所需要的所有依赖 通过 example 的例子就可以运行


关于 Carla 的理解

Core Concepts

The client 客户端运行在特定的 IP 和端口上 通过客户端来请求/修改信息 The world 仿真器对象 通过对主要方法的抽象来抓取演员 一个仿真只能对应一个世界 随着地图的改变进行销毁和重建

actor 仿真器中的任何角色都可以是演员:车辆 人 传感器 信号灯 交通标志等

blueprints 蓝图是已经设定的一些 actor 通常,模型会有一些动画和属性 Blueprint library 中可以去设置这些


Carla 脚本程序

Carla 利用 python 脚本控制 simulation 的运行

import random
import time

import carla //导入Carla包

actor_list = []//创建actor
try:
    client = carla.Client('localhost', 2000)//创建一个特定IP和端口的client
    client.set_timeout(5.0)//设置断连时间

    world = client.get_world()//获取world
    blueprint_library = world.get_blueprint_library()//获取blueprints library
    v_bp = blueprint_library.filter("model3")[0]//生成model3
    spawn_point = random.choice(world.get_map().get_spawn_points())//设置车辆出生点
    vehicle = world.spawn_actor(v_bp, spawn_point)//在世界上投放
    actor_list.append(vehicle)//将车辆加入到actor中
    vehicle.apply_control(carla.VehicleControl(throttle=1.0, steer=0))//设置车辆的油门和转向
    time.sleep(5)//运行时间
finally:
    for actor in actor_list:
        actor.destroy()//销毁对象
    print("结束")

G29 的安装与调试

在 Logitech 官网下载lghub_installer

安装完成更新

在 Carla 安装目录中 D:\carla\CARLA_0.9.13\WindowsNoEditor\PythonAPI\examples

使用manual_control_steeringwheel.py进行调试 pygame 中的 joystick 可以对应 G29 的支持,对应的 config 中指定配置文件-wheel_config.ini 创建配置文件 wheel_config.ini

[G29 Racing Wheel]
steering_wheel = 0
throttle = 2
brake = 3
reverse = 5
handbrake = 4

G29 与 carla 联调成功


CARLA 在 linux 上的安装

linux 的安装从双系统开始 起初 windows 安装时,Bios 选择了 Dual 模式 使得 Ubuntu 无法进入 随后发现 carla 需要超过 150G 储存空间 在微 PE 中革硬盘 装 ubuntu18.04 随后进行 nvidia 驱动的安装

安装 nvidia 驱动有三种方法:

  1. apt-get中安装
  2. 从设置 soft&update 中进行升级
  3. 离线升级

利用 470 版本进行安装 发现均不行

回退到老版本 430 进行安装 安装过程如下:

#禁用nouveau相关驱动
sudo gedit /etc/modprobe.d/blacklist.conf
#加入命令
blacklist rivafb
blacklist vga16fb
blacklist nouveau
blacklist nvidiafb
blacklist rivatv
#测试是否成功禁用
lsmod | grep nouveau
#创建blacklist-nouveau.conf
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
#填写以下内容
blacklist nouveau
options nouveau modeset=0
#之后更新
sudo update-initramfs -u
#重启
sudo reboot

安装显卡驱动

sudo apt update
sudo apt install dkms build-essential linux-headers-generic

ctrl+Alt+F1进入命令提示符界面 执行安琥包程序

sudo chmod 755 NVIDIA-Linux-x86_64-384.111.run  #修改权限(否则没有访问权限,无法进行指令安装)
sudo ./NVIDIA-Linux-x86_64-384.111.run –no-x-check –no-nouveau-check –no-opengl-files #安装驱动
#–no-x-check 关闭X服务
#–no-nouveau-check 禁用nouveau
#–no-opengl-files 不安装OpenGL文件

遇到kernel-module选yes 安装后重启 之后nvidia-smi 出现显卡信息,安装成功


linux中unreal Engine安装

安装依赖软件

sudo apt-get update &&
sudo apt-get install wget software-properties-common &&
sudo add-apt-repository ppa:ubuntu-toolchain-r/test &&
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - &&
sudo apt-add-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main" &&
sudo apt-get update

Ubuntu 18.04 依赖 sudo apt-get install build-essential clang-8 lld-8 g++-7 cmake ninja-build libvulkan1 python python-pip python-dev python3-dev python3-pip libpng-dev libtiff5-dev libjpeg-dev tzdata sed curl unzip autoconf libtool rsync libxml2-dev git

进行交叉编译配置

sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/lib/llvm-8/bin/clang++ 180 &&
sudo update-alternatives --install /usr/bin/clang clang /usr/lib/llvm-8/bin/clang 180

然后安装pip更新

pip install --user setuptools &&
pip3 install --user -Iv setuptools==47.3.1 &&
pip install --user distro &&
pip3 install --user distro &&
pip install --user wheel &&
pip3 install --user wheel auditwheel

Unreal Engine的安装

Unreal Engine的安装中有几个要点

carla 0.9.12版本对应的是Unreal Engine4.26的安装

需要利用Epic账户和Github账户进行连接 才能在Github中访问项目

git clone --depth 1 -b carla https://github.com/CarlaUnreal/UnrealEngine.git ~/UnrealEngine_4.26

在项目中进行安装: ./Setup.sh && ./GenerateProjectFiles.sh && make 安装中出现的几个问题:

  1. 需要下载10G左右的dependence
  2. 编译时会出现crtbeginS.o的文件无法找到

通过查找编译过程的makefile 发现其对应的执行文件是x86_64-unknown-linux-gnu 对应的链接库地址是UnrealEngine/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/usr/lib64

从gcc目录下 将缺少文件copy到该目录下 再更改其权限从root改成user 然后编译通过


carlar的安装

carla安装的问题主要是python的切换 carla 0.9.12 对应的是python3.7 所以需要设置python版本 还要保证pip的版本是python3.7 pip3 -V

改变环境变量的方法

echo alias python3=python3.7>>~/.bashrc
source ~/.bashrc

carla安装时有个要点: 需要查看carla的对应版本 carla0.9.12对应python3.7 ubuntu18.04自带python3.6 所以需要将python3.6升级为python3.7 但是仍需要保持python正常

需要将python3.7与pip3& python2与pip对应好后 再安装carla.whl

补充 grub有问题 导致无法进入系统

可以利用新的ubuntu引导进行修复

sudo su
sudo add-apt-repository ppa:yannubuntu/boot-repair
apt-get update
apt-get install boot-repair

随后使用过程中 又出现了问题 大致是UID 121问题

问题没有解决 所有又重新来过

但是 安装中仍然出现了不少问题:

  1. nvidia驱动问题 仍然只能安装430驱动 安装470及以后的驱动 不能启动
  2. Vulkan问题 test.png 在linux中安装ureal Engine后,通过编译,启动时,会报vulkan版本不匹配的问题 此问题会导致carla无法启动 后查证是在安装显卡驱动时,没有opengl的对应驱动 导致的 sudo ./NVIDIA-Linux-x86_64-384.111.run –no-x-check #安装驱动 在x_lib选择是选择no 问题解决.
  3. python版本切换带来pip切换的问题 在python切换后 pip -V仍然无法切换 在系统变量路径上打开/usr/bin/中对应的pip3 文件,然后将首行/usr/bin/python3更改为/usr/bin/python3.7 然后pip -V显示正确
  4. ureal Engine问题 check dependence的文件可以拷贝出来 装机完成后继续使用 不用从网络更新
  5. libEGL.so和libGL.so的缺失问题 删除两个文件,将libEGL.so.1 cp为libELG.so 通过编译

完成

✿✿ヽ(°▽°)ノ✿

(撒花)

updatedupdated2021-12-172021-12-17