MATLAB (Simulink) Based UI Development for Low Level Drivers of Model Based Application | Automotive Tier-I Supplier
Customer:
An US Tier-1 supplier of automotive and industrial products.
Business Challenge:
- Our customer was engaged in a model based development project.
- The customer identified the need for the development of a configurable interface for managing the settings of Low Level Drivers (LLD), Application Model functionality testing and code generation.
Embitel Solution:
- Our Automotive software team developed the required User Interface (UI) in MATLAB, Simulink using s-functions and GUIDE.
- The S-Function Interface, supported by the UI, is a solution to manage configuration/settings of the low-level drivers.
- These Low level device drivers (LLD) had been manually coded to support functions of various blocks of the Model Based Application layer.
- For code generation and testing of LLD, various block modules had been designed like signal conversion modules (for example ADC) , electrical signal control modules (example, current and voltage) and more
- Each block (within the mentioned module) was assigned multiple S-Functions. We also developed UI screens for each S-Function, to support configuration of LLD settings.
- For an instance, the communication protocol block has different UI message IDs for different functions such as configuring baud rates, transmit/receive channel and more. When the user selects a message ID from the UI, the supported scripts call the relevant LLD function. The LLD function loads the data requested by the user for further processing.
- These s-function blocks are used for simulation testing (MIL) and are further used for code file generation once the simulation is successful.
Embitel Impact:
- The stability and performance of the whole system (LLD configuration with the model based application) improved due to simulation testing in virtual environment.
- Our automotive software development team, followed software development best practice and automated the whole process of s-function generation, model creation and code generation using tool and scripts.
- To save the overall process time, our expert engineers automated some sub-steps required for block creation.
- With minimal changes, these scripts are reusable across multiple MATLAB or Simulink projects.
Tools Used:
- Matlab, Simulink 2015b
- Windriver Compiler