Comprehensive SIMULINK & Stateflow

Course Highlights

This five-day comprehensive hands-on training is a bundle of ‘Comprehensive SIMULINK’ and ‘Stateflow for Logic Driven System Modeling' course modules.  It is especially designed for beginners new to SIMULINK who wish to learn how to optimize Simulink and Stateflow under an umbrella scheme.

Course Objectives

  • Provide participants with the fundamentals and hands-on experience in using SIMULINK & Stateflow
  • Help participants improve their ability to model using SIMULINK & Stateflow and discover which tools are most appropriate for certain applications.

Who Must Attend

This hands-on course is designed for engineers who are new to the SIMULINK environment. Engineers, researchers, scientists, and managers working with systems level design will be shown an easy-to-use approach in using SIMULINK & Stateflow.


Attended "Comprehensive MATLAB " or equivalent experience in using MATLAB.

Course Outline

Day 1 of 5
Creating and Simulating a Model
Objective: Create a simple Simulink model, simulate it, and analyze the results.

  • Introduction to the SIMULINK interface
  • Potentiometer system
  • System inputs and outputs
  • Simulation and analysis

Modeling Programming Constructs
Objective: Model and simulate basic programming constructs in SIMULINK

  • Comparisions and decision statements
  • PWM conversion system
  • Zero crossing
  • Matlab Function block

Modeling Discrete Systems
Objective: Model and simulate discrete systems in Simulink

  • Discrete signals and states
  • PI Controller system
  • Model discrete transfer functions and state space systems
  • Multirate discrete systems

Modeling Continuous Systems
Objective: Model and simulate continuous systems in Simulink

  • Continuous states
  • Throttle system
  • Continuous transfer functions and state-space systems
  • Physical boundaries

Day 2 of 5

Solver Selection
Objective: Select a solver that is appropriate for a given Simulink model.

  •  Solver behavior
  •  System dynamics
  •  Discontinuities
  •  Algebraic loops

Developing Model Hierarcy
Objective: Use subsystems to combine smaller systems into larger systems and to model signal driven systems.

  •  Subsystems
  •  Bus signals
  •  Masks

Modeling Conditionally Executed Algorithms
Objective:Create subsystems that are executed based on a control signal input.

  • Conditionally executed subsystems
  • Enabled subsystems
  • Triggered subsystems         
  • Input validation model 

Creating Libraries
Objective:Use libraries to create and distribute custom blocks

  • Creating and populating libraries
  • Managing library links
  • Addding a library to the Simulink Library Browser

Day 3 of 5

Understanding Simulink Execution
Objective:Understand how timing works in Simulink and what tools you can use to analyze and control the scheduling a Simulink model

  • Execution process
  • Block update
  • Rate transitions

Automating Modeling Tasks
Objective: Learn ways to automatically test and run the Simulink model

  •  Simulating the model
  •  Accessing simulation output data
  •  Automating test runs
  •  Checking and modifying settings

Speed and Memory Management
Objective: Learn methods for increasing the speed of simulation by changing Simulink parameter settings, optimizing model structure and managing memory.

  • Model advisor
  • Simulink profiler
  • Performance Improvement
    • Vectorization
    • Optimization setting
    • Signal specification
    • Eliminating integration.
    • Simulink accelerator

Combining Models into Diagrams
Objective:Use model referencing to combine models

  • Subsystems and model referencing
  • Model referencing workflow
  • Model reference simulation modes
  • Model workspaces
  • Model dependencies

Calling Matlab Code from Simulink
Objective: Integrate MATLAB code into Simulink models

  • Writing a MATLAB function in a MATLAB function block
  • Converting a MATLAB function to a MATLAB Function block
  • MATLAB Function block coding standard

Day 4 of 5

Modeling Flows Graphs
Objective: Implement decision flows with flow graphs

  • Junctions and transitions
  • Flow graph behaviour
  • Stateflow interface
  • Conditions and condition actions
  • Chart data
  • Common patterns

Modeling State Machines
Objective:Implement state machines with state diagrams

  • State machine behaviour
  • State and transition actions
  • Chart initialization
  • Action execution order
  • Flow graphs within states

Hierarchical State Machines
Objective:Implement Hierarchical disgrams to improve clarity of state machine designs

  • Superstates and substates
  • State data
  • History Junction
  • Transition priority
  • Action execution order

Parallel State Charts
Objective:Implement parallel states to model multiprocessing designs

  • Benefits of parallel states
  • Chart/state decomposition
  • Parallel state data
  • Parallel state behaviour

Day 5 of 5

Using Events in State Charts

Objective: Use events within a Stateflow chart to affect chart execution.

  • Using events in state charts
  • Broadcasting events
  • Behavior of state charts that contain events
  • Implicit events
  • Temporal logic operators

Calling Functions from State Charts

 Objective: Create functions in a Stateflow chart out of Simulink blocks, MATLAB code, and flow graphs.

  • Types of functions available
  • Simulink functions
  • MATLAB functions
  • Graphical functions

 Truth Tables and State Transition Tables

Objective: Create flow graphs and state charts in table form.

  • Truth tables
  • Conditions, decisions, and actions
  • State transition tables
  • States, transitions, and actions 

Design Considerations in Stateflow

Objective: Reuse Stateflow designs, constrain chart semantics, and interact with structured Simulink data.

  • Mealy and Moore charts
  • Data types
  • Bus signals
  • Atomic subcharts
  • Data mapping
  • Chart reuse  




Course Registration Form

Course Title
Invalid Input

or Key in Your Own Title
Invalid Input

Course Start Date

Invalid Input

Sponsorship (*)
Invalid Input

Contact Person

Invalid Input

Invalid Input

Designation/ Department/ Division(*)
Invalid Input

Invalid Input

Billing Address (*)
Invalid Input

Street Address

Invalid Input

Street Address Line 2

Invalid Input

State / Province(*)
Invalid Input

Postal / Zip Code(*)
Invalid Input

Invalid Input

Invalid Input

Email Address (*)
Invalid Input

Participant Details

Participant Salution 1
Invalid Input

Participant Name1
Invalid Input

Designation/ Department/ Division
Invalid Input

Invalid Input

Invalid Input

Email Address
Invalid Input

Dietary Requirement
Invalid Input

Participant Salution 2
Invalid Input

Participant Name2
Invalid Input

Designation/ Department/ Division
Invalid Input

Invalid Input

Invalid Input

Email Address
Invalid Input

Dietary Requirement
Invalid Input

Participant Salution 3
Invalid Input

Participant Name 3
Invalid Input

Designation/ Department/ Division
Invalid Input

Invalid Input

Invalid Input

Email Address
Invalid Input

Dietary Requirement
Invalid Input

Payment Method(*)
Invalid Input

Cheque number
Invalid Input

PO Number
Invalid Input

How did you get to know about this programme?(*)
Invalid Input

Terms and Conditions
Invalid Input

Invalid Input