Getting started with AUTOSAR based project
Getting Started With AUTOSAR Based Project
Translate in your language
AUTOSAR seems daunting for new developers 😀 I got a comment on my last article asking for information on getting started with AUTOSAR project, so I thought of covering it in this article first.
AUTOSAR has developed a layered architecture having standard specifications and software for AUTOSAR based ECU is developed is by adhering to those specifications. The software can be developed by software developers or the code can be generated by using different ECU configuration softwares like Vector’s DaVinci Configurator and Developer, K-SAR, etc. The former is for very advanced developers who understand whole AUTOSAR specifications in detail and latter is used by majority of developers (like me 🙂 ) because it decreases the time for development and there is no need to reinvent the wheel 😀 . In this option, you can generate code by configuring the application requirements in a software having GUI and then application code can be integrated in that generated code. This article will help in understanding the process of configuration of ECU based on AUTOSAR.
Please note that this article won’t provide detailed steps, but a abstract view of the process helpful for beginners.
The group of all ECUs and whole network in a car is called System and firstly the System is configured and then each ECU of that system is configured.
Above figure shows the process flow of ECU code generation from System configuration to ECU executable. Although above figure shows executable as .exe but it should not be confused with .exe file of Windows PC 😀 . Here .exe file means a general executable file which can be .elf, .bin, etc. AUTOSAR uses a specific file format for information exchange between different steps in the process. That file format is similar to XML but in AUTOSAR context its called .arxml ( AUTOSAR Extensible Markup Language ) file. The configuration software will interpret this file and generate code according to the information contained in this file.
Some Steps in configuration are:
- System Configuration: In this step, overall ECUs required in car(System) and their hardware is configured along with SWCs and the Compostion SWCs are mapped to respective ECUs.
- Generate System Configuration Description: After configuration from first step, the output of the first step is called System Configuration Description file which is in .arxml file format.
- ECU Extract generation: By using the System Configuration description arxml file from step 2 as input, a new file is generated which is called ECU Extract arxml file. It has information for single ECUs only unlike the System Configuration description file which has information of all the ECUs in a Car.
- ECU Configuration: In this step, the ECU Extract is used as input and respective ECU is configured according to application requirements. Configurations like BSW configuration, OS configuration etc.
- Generate ECU Configuration Description: This step will be used to generate the output of step 4 i.e. generate ECU Configuration Description arxml file which will be used further to generate Executable.
You can note file nomenclature, the files with suffix “Description” is the output of the respective step or process. For example System Configuration Description arxml is the output of System Configuration step.
What Information System Configuration Description File Has?
The System Configuration Description file (generated after System Configuration) have all the system configuration information such as :
- ECUs present in the system
- Communication systems interconnecting those ECUs and their configuration
- Communication matrices which will indicate the data which will be sent and received for those communication systems. As AUTOSAR aims to standardize whole development, all the data, size,etc that will be transmitted or received needs to be configured at the configuration time.
- Definition of SWCs with their ports and interfaces and connections.
- Mapping of SWCs(Software Components) to ECUs.