Gazebo Simulation Start - autowarefoundation/autoware_ai_documentation GitHub Wiki

Gazebo simulator quick start guide

Overview

Autonomous driving car simulator based on Gazebo.

screenshot from 2019-01-11 00-42-10-min

Simulated sensors

  • Velodyne (VLP-16, HDL-32E)
  • Camera
  • IMU

Input and output

arch

  • Input:
    • Autoware
      • vehicle_cmd: select field twist_cmd (default) or ctrl_cmd
    • Debug
      • cmd_vel: for teleoperation
  • Output:
    • Autoware
      • /vehicle_status: CAN data
      • /image_raw: Image data
      • /camera_info: Camera infomation
      • /points_raw: LiDAR data
      • /imu: IMU data
    • Debug (Ground Truth)
      • /gazebo_vehicle/pose: base_link pose
      • /gazebo_vehicle/twist: base_link twist
      • /gazebo_vehicle/velocity: vechicle velocity in metres per second
      • /gazebo_vehicle/steering_angle: vehicle steering angle in radians
      • ground truth pose tf: default disable

Requirements

Hardware

  • CPU: Core i7 (More than eight threads preferred)
  • RAM: 16GB or higher
  • GPU: GTX1080 or higher (used for DNN)

Software

  • ROS (Kinetic or Melodic)
  • gazebo (version 7)
  • CUDA (optional but requires GPU by default)

Data files

If you need a point cloud map, tf and waypoint path files, you can download them from here.

Quick setup and start video (recommend)

Follow this video to setup and launch Gazebo.

  1. Launch the Autoware launcher
  2. Click the initial setup button in the simulation tab
  3. Choose world and launch button

Manual setup and start

Setup

  1. Upgrade the Gazebo version and download Gazebo models (only needs to be done once)

    See the following link for why this is necessary: https://bitbucket.org/DataspeedInc/velodyne_simulator/src/56d11e899ce0a198e7206298b3aaaf8004f3a2c6/gazebo_upgrade.md?fileviewer=file-view-default

    $ rosrun vehicle_gazebo_simulation_launcher setup.sh
    

Examples

Citysim

See http://gazebosim.org/blog/car_sim.

$ roslaunch vehicle_gazebo_simulation_launcher gazebo_launcher.launch world_name:=citysim_gazebo7 gpu:=true

If you use Gazebo 9 and ROS Melodic, you can simulate traffic lights and moving objects. Build according to the readme and execute the following command.

$ roslaunch vehicle_gazebo_simulation_launcher gazebo_launcher.launch world_name:=citysim_gazebo9 gpu:=true

screenshot from 2019-01-11 00-40-35-min

mcity (car_demo)

See https://github.com/osrf/car_demo.

$ roslaunch vehicle_gazebo_simulation_launcher gazebo_launcher.launch world_name:=mcity gpu:=true

screenshot from 2019-01-11 00-38-49-min

simple

$ roslaunch vehicle_gazebo_simulation_launcher gazebo_launcher.launch world_name:=simple gpu:=true

How to change vehicle info

You can customize sensor positions and vehicle info.

  • Sensor position: vehicle/vehicle_model/config/caibration.yaml
  • Vehicle info: vehicle/vehicle_model/config/vehicle_info.yaml