Stateflow
   HOME

TheInfoList



OR:

Stateflow (developed by
MathWorks MathWorks 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 The company's key product, MATLAB, wa ...
) 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 offers t ...
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 David Harel ( he, דוד הראל; born 12 April 1950) is a computer scientist, currently serving as President of the Israel Academy of Sciences and Humanities. He has been on the faculty of the Weizmann Institute of Science in Israel since 1980, ...
, enabling the representation of hierarchy, parallelism and history within a state chart. Stateflow also provides
state transition tables State may refer to: Arts, entertainment, and media Literature * ''State Magazine'', a monthly magazine published by the U.S. Department of State * ''The State'' (newspaper), a daily newspaper in Columbia, South Carolina, United States * '' Our ...
and truth tables.


Common uses

Stateflow is generally used to specify the discrete controller in the model of a hybrid system 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 Requirements traceability is a sub-discipline of requirements management within software development and systems engineering. Traceability as a general term is defined by the IEEE Systems and Software Engineering Vocabulary as (1) the degree to wh ...
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