VisSim/State Charts™

Send to friendSend to friend
VisSim/State Charts
VisSim State Chart to decode a serial packet protocol

New for Version 8, VisSim/State Charts lets you graphically create, edit, simulate and generate C-code for finite-state machines within the VisSim design environment. Finite state machines are event-driven systems that transition from one state to another based on a set of rules.
VisSim/State Charts is based on the industry-standard OMG UML 2.1. It uses common graphical elements – such as states, pseudo-states, and transition arcs – to represent simple, hierarchical, and parallel states, and the transitions among them. You can attach C code actions to state activity and transitions to further define state chart behavior.
State chart execution runs in synch with VisSim dynamic simulator operation.
Communication between a state chart and the VisSim model uses standard VisSim variables, triggers, and I/O
pins on the state chart.

The new V8 State Chart addon provides an easy and intuitive method of developing system control. The graphical design entry along with traditional text based language syntax combine to provide a familiar design entry experience. Behavioral operation of the control can easily be simulated before targeting the embedded hardware. This is an amazing new addon.

Randall Pipho - Senior Design Engineer
TECO Westinghouse Motor Company

Features

  • Graphical state chart editor
  • OMG UML 2.1 compliant
  • Smoothly integrated with VisSim data flow diagrams
  • Supports hierarchical and parallel states with transitions
  • State actions and transitions defined using standard C syntax
  • Trigger and guards expression control transitions
  • Integrated debugger with breakpoints and logging
  • Highlight active state
  • Single step simulation
  • Behavioral C code execution logging
  • ANSI C code generation

Defining the VisSim Model - StateChart Interface

In VisSim, a state chart appears as a standard block with input and output pins.
Data can be passed between the state chart and VisSim continuous model using these pins or using triggers or VisSim variables.
You can have any number of state chart blocks in a given VisSim diagram.
A state chart has its own hierarchy. To edit or view the structure of the state
chart, you “drill” into it with a right click of the mouse.

Defining Transitions

Transitions are paths from one state or psuedo-state to another on which the
logic of the system flows. Transitions are represented as lines with an arrowhead
at one end, indicating the direction of signal flow.
You can apply conditional guards to transitions that are evaluated dynamically. When the condition
evaluates to TRUE, the transition occurs.
Like state actions, conditional guards are defined in standard C syntax.

Debugging a State Chart

VisSim provides debugging tools for examining, locating and correcting
incorrect state chart behavior. You can single step through the state chart, set breakpoints that halt the simulation
when when a selected state action or transition is activated, log individual events, and log all executed behavioral C code in execution order.

Generating Production-Quality C-Code

If you have installed the VisSim/C-Code module (available separately), you can generate efficient, in-line code from your
state chart. The generated code communicates seamlessly with the continuous portion
of the VisSim diagram in the same fashion as the simulation engine. This is a fast and simple way to incorporate UML state charts into your embedded controller.

Downloads

» Free Trial Version
» VisSim Data Sheets