Leveraging the high-performance computing power of Arm Neoverse CPUs and their comprehensive software ecosystem, you can run automotive software simulations on any Neoverse computing platforms.
You can use either an Arm Cloud Instance or on-premise servers to run Open AD Kit. The example has been tested on AWS EC2 and an Ampere Altra workstation , allowing you to choose the most suitable setup based on your needs.
You need Docker to run Open AD Kit. Refer to the Docker install guide to learn how to install Docker on an Arm platform.
First, verify Docker is installed on your development computer by running:
docker --version
If Docker is installed, it will display version information similar to the output below:
Docker version 28.0.4, build b8034c0
Clone the demo repository using:
git clone https://github.com/autowarefoundation/openadkit_demo.autoware.git
The project is containerized in three Docker images, so you do not need to install any additional software.
The Open AD Kit demo consists of three core components: simulator
, planning-control
, and visualizer
, each serving a distinct function.
The simulator is responsible for creating a virtual driving environment to test and validate autonomous driving functionalities. It can simulate various driving scenarios, road conditions, and traffic situations, providing a realistic testbed for planning and control modules.
The Key Functions of Simulator are:
Interaction with Other Components:
The command below starts a new Docker container named simulator
, ensuring it runs in interactive mode with a terminal and is automatically removed upon stopping, while using a predefined Docker image pulled from the GitHub Container Registry.
docker run --name simulator --rm -it ghcr.io/autowarefoundation/demo-packages:simulator
The planning-control module is responsible for path planning and vehicle control. It uses data from the simulator to determine the optimal path and send control commands (steering, acceleration, braking) back to the simulator.
The Key Functions of Planning-Control:
Interaction with Other Components:
This command starts a new Docker container named planning-control
, ensuring it runs in interactive mode with a terminal and is automatically removed upon stopping, while using a predefined Docker image pulled from the GitHub Container Registry. Additionally, it connects to the host network to enable seamless ROS 2 communication with other components, such as the simulator and visualizer.
docker run --name planning-control --rm -it --network host ghcr.io/autowarefoundation/demo-packages:planning-control
The visualizer provides real-time visualization of the simulation, including vehicle movement, planned trajectories, sensor outputs, and the driving environment. It enables developers to analyze and debug system behavior visually.
The Key Functions of Visualizer:
Interaction with Other Components:
This command starts a new Docker container named visualizer
, ensuring it runs in interactive mode with a terminal and is automatically removed upon stopping. It maps port 6080 from the container to the host, enabling remote visualization via a web browser, allowing users to view real-time simulation data using VNC-based visualization tools.
docker run --name visualizer --rm -it -p 6080:6080 ghcr.io/autowarefoundation/demo-packages:visualizer
After gaining a basic understanding of Open AD Kit, the next section will guide you through running three containers simultaneously on a single physical machine.