Introduction to AUTOSAR
Today I am happy to welcome Shwetha Bhadravathi Patil to talk about AUTOSAR.
What is AUTOSAR
AUTOSAR (AUTomotive Open System ARchitecture) is a worldwide development partnership of vehicle manufacturers, suppliers, and other companies from the electronics, semiconductor, and software industries. The AUTOSAR standard is designed to enable software standardization, reusability, and interoperability.
The AUTOSAR standard provides platforms to support the current and next generations of automotive ECUs:
- The Classic Platform supports traditional internal applications such as powertrain, chassis, body, and interior electronics.
- The Adaptive Platform supports new service-based applications such as automated driving, Car-to-X, software updates over the air, and vehicles as part of the Internet of Things.
As more adaptive applications are deployed, you will see AUTOSAR classic, adaptive, and non AUTOSAR ECUs interoperating in a single car.
The AUTOSAR Classic Platform architecture has 3 layers on top of the microcontroller hardware:
- Application Software, providing application implementations in self-contained units called software components. Building software components generates platform-compliant AUTOSAR XML descriptions and C code implementation modules.
- Runtime Environment (RTE), providing communication between application software and Basic Software. Software components communicate with other components and/or Basic Software modules exclusively via the RTE, which allows software components to be independent of any specific ECU and other software components.
- Basic Software (BSW), providing ECU abstraction, microcontroller abstraction, and services, including memory and diagnostics.
This modularity helps manage the growing complexity of automotive systems, provides flexibility to upgrade or update the product, and makes it scalable across product lines.
The AUTOSAR Adaptive Platform architecture has layers similar to Classic Platform but is a service-oriented architecture (SOA), which provides a foundation to handle highly compute intensive applications. The Adaptive Platform supports POSIX operating systems. Software components are deployed as OS processes that are independent applications. All modules and applications in Adaptive must be written in C++ whereas Classic uses C.
MathWorks Support
MathWorks is an AUTOSAR Premium Member and actively participates in the development of the standard, with a focus on how to use Model-Based Design with an AUTOSAR development process for automotive ECUs.
Using Simulink® and AUTOSAR Blockset, you can:
- Model AUTOSAR classic software components and adaptive applications as Simulink® models, by using the AUTOSAR Component Designer app
- Model and simulate compositions, AUTOSAR ECU software, and Basic Software, including Diagnostic and NVRAM services, using Basic Software blocks
- Use blocks for AUTOSAR library routines, such as lookup-table interpolation, to generate optimized library routines for AUTOSAR Classic applications.
- Author AUTOSAR software compositions, components, and their interfaces in Simulink, by creating an architecture model (with System Composer) and adding Component, Composition, and Basic Software blocks.
- Generate C and C++ production code (with Embedded Coder®) and qualify the code for ISO 26262 (with IEC Certification Kit). Here is a sample of C++ code generated for an AUTOSAR Adaptive application.
As shown in the above image, you can also develop an AUTOSAR classic application in Simulink model and generate C code.
Now it’s your turn
You can access several examples to start building your AUTOSAR model in Simulink here. Then, let us know what you think in the comments below.
- Category:
- Code Generation,
- Guest Blogger
Comments
To leave a comment, please click here to sign in to your MathWorks Account or create a new one.