Getting started with Carla_controller
Dependency
!Important |
carla_controller 要求 carla版本 0.9.5 及以上,适配的 ros_bridge 0.9.5.1 |
carla_controller 主要由三个部分组成,包括scenario_designer、customed_carla_ros_bridge和rambot_controller。为了仿真您的控制器,您必须先运行carla服务端,这是所有操作的前提。scenario_designer 用来设计您需要的仿真路线及场景,customed_carla_ros_bridge是连接 carla world的桥梁,而rambot_controller则是控制器的样品,展示了消息的接口,您可以仿照它定制自己的控制器。
Usage
首先,设计您自己的场景,自由选择您需要的地图,并自定义路线,障碍物。
cd ~/../CARLA_0.9.5
./CarlaUE4.sh 或者 DISPLAY= ./CarlaUE4.sh
推荐使用:
DISPLAY= ./CarlaUE4.sh /Game/Carla/Maps/Town01 -benchmark -fps=10
!Note |
该消息的含义如下:不进行图形显示,打开地形均为平面的Town01,将仿真帧率调到最低的10帧 可以根据这个格式更换地图,不打开显示的原因是,这个显示显示的是对整个地图的全局观测, 而不是对车子的观测,而且还会capture 鼠标,不如关掉显示。 |
cd ~/../(free_scenario_design.py的文件夹下)
python free_scenario_design.py
执行python脚本打开地图编辑视角后通过鼠标键盘自定义路线和线路图;操作方式如下
按键方式 | 作用 | 按键方式 | 作用 | 按键方式 | 作用 |
---|---|---|---|---|---|
w | 上 | c | 选择放置物体或者路线模式 | 鼠标左键 | 物体模式下预览物体、路线模式下预览位置 |
s | 下 | 空格 | 删除上一次放置的物体 | 鼠标右键 | 物体模式放置物体,路线模式下设置waypoint |
a | 左 | Tab | 切换摄像头视角 | o | 切换设置路线模式决定路线是否经过waypoint |
d | 右 | r | 记录数据 | shift+R/Esc | 重启/退出 |
按R 保存数据, 并新开一个终端,cd到上述文件夹下
python python csv_to_xml_helper.py route input_file_name output_file_name
配置文件已经保存在output_xmls文件夹下,您需要将保存的your_config_name.xml中的内容复制到/carla_scenario_runner_ros/src/carla_scenario_runner_ros/srunner/configs/ControlAssessment.xml中;注意格式
!Note |
配置完场景,将运行中的python脚本退出 |
新开一个终端;运行下述命令,该launch文件将除了控制器的节点全部启动,场景已经准备完毕,等待控制器对小车进行控制;
roslaunch carla_launcher assess_rambot_controller.launch
新开一个终端;运行控制器
roslaunch rambot_controller rambot_controller_simu.launch
!Note |
当然,如果你想画图,我们也为你准备了一个开源的画图工具!想要画曲线图,请在仿真运行之前配置好参数! |
新开一个终端;运行;
rqt_multiplot