An US based 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 as per the control algorithm requirements of the project.
  • As per the defined control strategy, a Simulink block/S-function was designed to configure the LLD code through an associated UI.
  • Thus for each functionality, a s-function, an associated UI, and corresponding Low-Level Driver function code were developed. This facilitates the end-user to configure the LLD code as per project requirements.
  • Such a design enables the user to check the required functionality, as per all the possible hardware configurations in virtual environment. The user can then rectify all possible errors before executing for code generation.

S Function Architecture

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.
  • With minimal changes, these scripts are reusable across multiple MATLAB or Simulink projects.

Tools Used:

  • Matlab, Simulink 2015b.
  • Windriver Compiler.


to Help!