Elcano Carla Simulation External Specification
CARLA <http://carla.org/> is an open-source driving simulator. During Q4 2019 we will be developing a go-between circuit board to transfer data between CARLA simulation and the sensor slots of the Elcano hardware. The CARLA software allows users to emulate trike parameters under controlled conditions within a virtual world, providing an efficient system for testing sensor behavior, design implementation, and benchmarking overall vehicle progression. The CARLA software can simulate a variety of road conditions such as traffic patterns, inclines, and weather as well as provide users control over vehicle parameters including weight, engine power, and aerodynamic properties.
A go-between circuit board will transfer data from vehicle systems to CARLA under a variety of test conditions, enabling the software to replicate responses and return sensor data to be reevaluated for accuracy. Connecting the simulation software to components on both the high and low level boards of the Elcano trike including lidar, sonar, throttle, and brake systems, will allow users to immediately see the results of adjustments to vehicle parameters and highlight physical aspects of the trike within the virtual simulation. This project will enable users to efficiently implement improvements and track the immediate effects of design changes without spending the time and resources it would take to transport or operate the trike in real world test scenarios. It enables developers to improve the software without needing to invest in a vehicle.
How to Set-up
The components involved in the simulation of the Elcano trike vehicle will be a computer running an instance of CARLA along with our framework and any additional user scripts along with a go-between board to direct data from the trike system to CARLA and back. The flow of data between components can be seen in the project block diagram. The following is an overview of the simulation equipment and necessary connections to be made.
- A computer with a mid level graphics card and a display monitor.
- The computer should have the latest stable version of CARLA installed and be able to run it at an acceptable level of performance.
- The computer should have Elcano test framework installed.
- Parallel cable
- Go-between board (Type of board TBD)
- Elcano circuit boards.
- CARLA Simulator
- Framework to manage the trike model along with manipulating and transporting data between the board and the simulator.
- User scripts defining whatever conditions will be added to the simulation
- Standard Elcano software runs on microcontrollers.
CARLA User Guide
- Connect the USB port on the computer to the one on the go-between board
- Wire the go-between board to the CAN bus and whatever sensors you would like to replace with simulation input
- Attach the output from the low level board to the go-between board
- Run CARLAUE4.exe to spawn a new instance of the CARLA Simulator
- (Optional) open trike.py and under the line “##TRIKE ATTRIBUTES” adjust or add any of the attributes in the CARLA Trike Model on the wiki to the object assigned to the “trikeControl” object
- Open a new command window
- Run framework.py
- Follow the prompt to insert the trike into the simulation
- (Optional) Provide a logging file that will contain the output sensor data from the simulation
- The trike will now await actuating control inputs from the parallel port while outputting the sensor data along the same port as well as to the log file if enabled
- Open a new command window and run whatever CARLA scripts you would like to test the trike with for example “dynamic_weather.py” included in the CARLA examples will enable different dynamic weather patterns at random within the simulation