Stateflow
   HOME

TheInfoList



OR:

Stateflow (developed by
MathWorks The MathWorks, Inc. is an American privately held corporation that specializes in mathematical computing software. Its major products include MATLAB and Simulink, which support data analysis and simulation. History MATLAB was created in the 1 ...
) is a control logic tool used to model reactive systems via state machines and flow charts within a
Simulink Simulink is a MATLAB-based graphical programming environment for modeling, simulating and analyzing multidomain dynamical systems. Its primary interface is a graphical block diagramming tool and a customizable set of block libraries. It offe ...
model. Stateflow uses a variant of the
finite-state machine A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
notation established by David Harel, enabling the representation of hierarchy, parallelism and history within a state chart. Stateflow also provides state transition tables and truth tables.


Common uses

Stateflow is generally used to specify the discrete controller in the model of a
hybrid system A hybrid system is a dynamical system that exhibits both continuous and discrete dynamic behavior – a system that can both ''flow'' (described by a differential equation) and ''jump'' (described by a state machine, automaton, or a differ ...
where the continuous dynamics (i.e., the behavior of the plant and environment) are specified using Simulink. Specific applications for Stateflow include: * Mode logic, where each discrete mode of a system is represented by a state * Fault management, where the Stateflow chart is used to control how the system responds to faults and failures within a system * Task scheduling, where the Stateflow chart is used to schedule when specific tasks occur, either within the Stateflow chart or within the overall Simulink modelEmbedded Coder Robot NXT Modeling Tips
/ref>


Extensions

A number of MathWorks and third-party tools can be used with Stateflow to validate the design and generate code. For example, Simulink Verification and Validation, a MathWorks tool, can be used to check for requirements traceability and model coverage analysis. Other add-on code generation tools can be used to automatically generate C, C++, HDL, and PLC code for implementation on embedded systems.


References

{{reflist, 2 Simulation programming languages Visual programming languages