GithubHelp home page GithubHelp logo

zhearing / simulator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lgsvl/simulator

0.0 2.0 0.0 174.34 MB

A ROS/ROS2 Multi-robot Simulator for Autonomous Vehicles

License: Other

ShaderLab 4.26% Mathematica 14.30% C# 68.26% C 7.17% Shell 0.07% Batchfile 0.03% C++ 0.30% Objective-C 0.16% HLSL 5.41% Smalltalk 0.02% DM 0.01% Dockerfile 0.03%

simulator's Introduction

LGSVL Simulator: An Autonomous Vehicle Simulator

Introduction

LG Silicon Valley Lab has developed a Unity-based multi-robot simulator for autonomous vehicle developers. We provide an out-of-the-box solution which can meet the needs of developers wishing to focus on testing their autonomous vehicle algorithms. It currently has integration with the Duckietown, TierIV's Autoware, and Baidu's Apollo platforms, can generate HD maps, and be immediately used for testing and validation of a whole system with little need for custom integrations. We hope to build a collaborative community among robotics and autonomous vehicle developers by open sourcing our efforts.

To use the simulator with Apollo, after following the build steps for the simulator, follow the guide on our Apollo fork.

To use the simulator with Autoware, build the simulator then follow the guide on our Autoware fork.

Video

ROSCON2018: LG Autonomous Simulator driving with Baidu Apollo & Tier IV Autoware

(Link)

Getting Started

Running the simulator with reasonable performance and frame rate (for perception related tasks) requires a high performance desktop. Below is the recommended system for running the simulator at high quality. We are currently working on performance improvements for a better experience.

Recommended system:

  • 4 GHz Dual core CPU
  • Nvidia GTX 1080
  • Windows 10 64 Bit

The easiest way to get started with running the simulator is to download our latest release and run as a standalone executable.

For the latest functionality or if you want to modify the simulator for your own needs, you can checkout our source, open it as a project in Unity, and run inside the Unity Editor. Otherwise, you can build the Unity project into a standalone executable.

Currently, running the simulator in Windows yields better performance than running on Linux.

Downloading and starting simulator

  1. Download the latest release of the LGSVL Simulator for your supported operating system (Windows or Linux) here: https://github.com/lgsvl/simulator/releases/latest
  2. Unzip the downloaded folder and run the executable.

Steps for starting simulator in Unity Editor

  1. Install Unity 2018.2.4. Windows link: https://unity3d.com/get-unity/download/archive

    Linux link (2018.2.4f1): https://beta.unity3d.com/download/fe703c5165de/public_download.html

  2. Install Git LFS (this should be as simple as git lfs install). Since this repository contains several large files, we speed up clones/uploads with Git LFS. This is a requirement for cloning our project, and without it the repository cannot be set up properly.

  3. Clone this repository from Github:

      git clone https://github.com/lgsvl/simulator.git
    
  4. Open Unity Editor by navigating to where it is installed and launching the Unity executable.

  5. Open the simulator project that was cloned in step 3 by selecting the simulator folder.

  6. Run the simulator. On the bottom left in the Project panel, Navigate to Assets->Scenes. Then double-click "Menu" (with the Unity icon next to it) to load the scene. At the top of the editor, click the Play button to start the simulator.

Build standalone executable

If you would prefer to not run in Unity Editor and build the standalone executable yourself, follow the instructions here.

Simulator Instructions

  1. After starting the simulator, you should see the main menu. Currently, only Free Roaming mode is supported. Click "Free Roaming."
  2. Select the appropriate map and vehicle. For a standard setup, select "SanFrancisco" for map and "XE_Rigged-apollo" for Robot. If connecting with Autoware or Apollo, make sure simulator establishes connection with rosbridge. Click "Run" to begin. The program will not allow running if there is no established connection with a rosbridge. To bypass this and just test out the simulator environment, hold down the Shift button and click "Run."
  3. The vehicle/robot should spawn inside the map environment that was selected. Read here for an explanation of all current keyboard shortcuts and controls.
  4. Follow the guides on our respective Autoware and Apollo repositories for instructions on running the platforms with the simulator.

Guide to simulator functionality

Look here for a guide to currently available functionality and keyboard shortcuts for using the simulator.

Contact

Please feel free to provide feedback or ask questions by creating a Github issue. For inquiries about collaboration, please email us at [email protected].

Copyright and License

Copyright (c) 2018 LG Electronics, Inc.

This software contains code licensed as described in LICENSE.

simulator's People

Contributors

ericboiselgsvl avatar martins-mozeiko avatar daviduhm avatar bshin-lge avatar haditab avatar keunhae avatar luqiang21 avatar ruudyliu avatar

Watchers

James Cloos avatar Zeyu Zhong avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.