CARLA_autoware的配置流程(二)CARLA 与 ROS1 的联合

参考文件

Install ROS Bridge for ROS 1 - CARLA Simulator

这里使用的是 ubuntu18.04 与 ROS melodic

使用源存储库的方式

下载与编译

创建工作空间,克隆 ROS 网桥存储库和子模块

mkdir -p ~/carla-ros-bridge/catkin_ws/src
cd ~/carla-ros-bridge
git clone --recurse-submodules https://github.com/carla-simulator/ros-bridge.git catkin_ws/src/ros-bridge

在这里插入图片描述

设置 ros 环境与安装 ros 依赖

source /opt/ros/melodic/setup.bash
cd catkin_ws/
rosdepc update

在这里插入图片描述

更新功能包的依赖

rosdepc install --from-paths src --ignore-src -r

在这里插入图片描述

一般都选择继续执行
在这里插入图片描述

然后编译工作空间

catkin_make

在这里插入图片描述

将正确的 CARLA 模块添加到的 Python 路径中

这里要根据实际情况进行修改

export CARLA_ROOT=<path-to-carla>
export PYTHONPATH=$PYTHONPATH:$CARLA_ROOT/PythonAPI/carla/dist/carla<carla_version_and_arch>.egg:$CARLA_ROOT/PythonAPI/carla

在这里插入图片描述

那么根据我的位置,我应该写成如下内容,然后一并将工作空间的环境变量写入主目录的 .bashrc

export CARLA_ROOT=/home/xiong/CARLA_0.9.11
export PYTHONPATH=$PYTHONPATH:$CARLA_ROOT/PythonAPI/carla/dist/carla-0.9.11-py2.7-linux-x86_64.egg:$CARLA_ROOT/PythonAPI/carla

# For GitHub repository installation of ROS bridge
source ~/carla-ros-bridge/catkin_ws/devel/setup.bash

在这里插入图片描述

启动测试

启动 ROS 桥。使用任何可用的不同启动文件检查安装
在这里插入图片描述
启动测试

roslaunch carla_ros_bridge carla_ros_bridge.launch

出现报错
在这里插入图片描述

报错信息ImportError: No module named transforms3d.euler

安装 transforms3d

参考文件

安装transform3d_transforms3d安装-CSDN博客

安装 transforms3d

pip install transforms3d

在这里插入图片描述

CARLA 版本值的修改

重新运行后新报错
在这里插入图片描述

参考文件

ubuntu20.04安装运行carla0.9.13问题-CSDN博客

/home/xiong/carla-ros-bridge/catkin_ws/src/ros-bridge/carla_ros_bridge/src/carla_ros_bridge/CARLA_VERSION的值改成仿真器的对应版本,我这里是 0.9.11
在这里插入图片描述

等待接收仿真器的时间的修改

重新运行,新报错
在这里插入图片描述

修改/home/xiong/carla-ros-bridge/catkin_ws/src/ros-bridge/carla_ros_bridge/launch/carla_ros_bridge.launch的 timeout 为 200 秒。

<!--arg name='timeout' default='2'/>等待接收仿真器的时间 单位 s-->
<arg name='timeout' default='200'/>

在这里插入图片描述

也就是说 这个进程会等待仿真器的启动,重新运行后没有报错

roslaunch carla_ros_bridge carla_ros_bridge.launch

在这里插入图片描述

那么这里官方给出了测试方式
在这里插入图片描述

启动仿真器后进行测试检查

cd CARLA_0.9.11/
./CarlaUE4.sh -prefernvidia
rostest carla_ros_bridge ros_bridge_client.test

在这里插入图片描述
可以看到终端的反馈斌没有错误信息,继续流程

ROS 桥接套件测试

那么这里可以生成一个可以控制的车辆,然后查看传感器与地图的数据

The ROS bridge package - CARLA Simulator

运行脚本,似乎是CARLA强制使用了集成显卡,而没有使用 NVIDIA 显卡。通过如下命令,可以正常运行:

cd CARLA_0.9.11/
./CarlaUE4.sh -prefernvidia		# 需要添加 -prefernvidia 参数调用 NVIDIA 显卡

在这里插入图片描述

然后用自我车辆启动 ROS 桥:

roslaunch carla_ros_bridge carla_ros_bridge_with_example_ego_vehicle.launch

Pygame 的安装

启动 ROS 桥后发现报错

RuntimeError: cannot import pygame, make sure pygame package is installed

在这里插入图片描述

要注意这里不要使用包管理器来安装 Pygame:sudo apt-get install python-pygame,因为会默认安装 python 3.6 版本的,不能使用在这里,因为这里卡了一天。最后发现是 Pygame 的版本有要求,错误的流程就不写出来了。

安装 Pygame 2.0.3 版本

sudo pip install pygame

在这里插入图片描述

重新启动仿真后,启动用自我车辆启动 ROS 桥。成功启动

cd CARLA_0.9.11/
./CarlaUE4.sh -prefernvidia
roslaunch carla_ros_bridge carla_ros_bridge_with_example_ego_vehicle.launch

在这里插入图片描述

这里可以按 H 查看可以进行的操作

按 B 可以切换成手动控制

按 Q 可以更换前进挡或倒挡

CARLA 与 ROS1 的联合

根据官方的使用手册
在这里插入图片描述

发布底盘控制话题,注意这里要检查按 B 切换成自动控制

rostopic pub /carla/ego_vehicle/vehicle_control_cmd carla_msgs/CarlaEgoVehicleControl "{throttle: 1.0, steer: 1.0}" -r 10

在这里插入图片描述

可以看到车辆成功运行起来,证明 carla 与 ROS 连接桥通讯成功。

自此,ROS1 与 CARLA 的配置流程结束

上一节 CARLA_autoware的配置流程(一)CARLA 的快速入门与安装-CSDN博客
下一节 CARLA_autoware的配置流程(三)CARLA 与 Autoware 的联合-CSDN博客

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值