A finite state machine is a model of a reactive system. The model defines a finite set of states and behaviors and how the system transitions from one state to another when certain conditions are true.
A finite state machine is used to model complex logic in dynamic systems, such as automatic transmissions, robotic systems, and mobile phones.
Examples of operations containing complex logic include:
- Scheduling a sequence of tasks or steps for a system
- Defining fault detection, isolation, and recovery logic
- Supervising how to switch between different modes of operation
A finite state machine can be represented by state charts. State charts provide additional capabilities beyond traditional finite state machines, such as:
- Modeling hierarchical states for large-scale systems
- Adding flow graphs to define complex decision logic
- Defining orthogonal states to represent systems with parallelism
For more information about modeling state machines, see Stateflow®..