Tutorials#
The tutorials show how to do real tasks with Autoware, step by step. They assume that you installed Autoware and ran it in a simulation. Use the installation pages first if you have not done that.
The tutorials have three parts:
- Integrating Autoware: put Autoware on your own vehicle.
- Training machine learning models: train the models of Autoware with your own data.
- Others: short guides for development, debugging, and evaluation.
Integrating Autoware#
These tutorials take you from a new vehicle to a vehicle that drives with Autoware. Start with the overview, and then follow the steps in order:
- Create your Autoware repositories: make your own copy of the
autowaremeta-repository and the repositories for your vehicle and sensors. - Create the vehicle and sensor models: describe the dimensions of your vehicle, the positions of your sensors, and calibrate the sensors.
- Create the vehicle interface: connect Autoware to the drive-by-wire system of your vehicle.
- Create maps: make the pointcloud map and the vector map of your area.
- Launch Autoware: configure and start each component on your vehicle.
- Tune parameters and performance: adjust Autoware to your vehicle and your environment.
- Integrate your vehicle in AWSIM: test your vehicle in a simulator.
- Integrate sensors: add sensors, for example cameras.
Training machine learning models#
Training and deploying models explains how to train the traffic light classifier, the CenterPoint 3D object detector, and the YOLOX traffic light detector with your own data. It also explains how to convert the trained models to ONNX for Autoware.
Others#
These guides each cover one topic.
Development:
- Add a custom ROS message: define a new message package.
- Advanced usage of colcon: select packages, change the build type, and speed up builds with Ccache.
- Applying Clang-Tidy to ROS packages: find and fix problems in C++ code.
- Fixing dependent package versions: save and restore the versions of all repositories in your workspace.
- Determining component dependencies: list the packages, system libraries, and topics of a component.
Running and debugging:
- Debug Autoware: use logging, the ROS 2 command line tools, RViz, rqt, and a debugger.
- Running Autoware without CUDA: select the object detector and the traffic light recognition that run on the CPU.
- Using divided pointcloud map: divide a large pointcloud map and load only the part near the vehicle.
- Reducing start delays on real vehicles: find and reduce the delays between a start command and the vehicle motion.
Evaluation and research:
- An example procedure for adding and evaluating a new node: record data, develop a node, and evaluate it in simulation and on a vehicle.
- Defining temporal performance metrics on components: choose the message rates and response times to measure.
- Planning evaluation using scenarios: create scenarios, run them in Scenario Simulator, and read the results of the Autoware Evaluator.
- Lane detection methods: compare lane detection and multitask detection methods.
For the evaluation of Autoware components in simulation, also see Simulation and evaluation.