Visual Solutions has been a pioneer in the development of Windows-based software for the modeling and simulation of dynamic systems. VisSim products are used by major companies worldwide to model, simulate and embed control, communication and signal processing systems.


Click on the Edition to see more information and pricing

VisSim Professional 9.0


VisSim Professional 9.0

VisSim Boxshot

VisSim is a Windows-based program for the modelling and simulation of complex nonlinear dynamic systems. VisSim combines an intuitive drag & drop block diagram interface with a powerful simulation engine.

VisSim provides a fully integrated control system design environment where all design and simulation tasks can be completed without writing a line of code. Furthermore, VisSim offers unprecedented ease-of-use and consequently a shorter learning curve than competitive systems. Less time training -- more time engineering!

The visual block diagram interface offers a simple method for constructing, modifying and maintaining system models. The simulation engine provides fast and accurate solutions for linear, nonlinear, continuous time, discrete time, time varying and hybrid system designs. With VisSim, users can quickly develop software or "virtual" prototypes of systems or processes to demonstrate their behaviour prior to building physical prototypes. Built-in integration tools allow users to communicate seamlessly with MATLAB and Mathcad. A VisSim/SIMULINK Translator allows SIMULINK users to import SIMULINK V2 or V3 block diagrams directly into VisSim.

The user builds his system model by selecting predefined blocks from a block library and simply wiring (graphically connecting) the blocks into a diagram. Each block of the diagram performs a mathematical or input/output function. These "blocks" may represent complex algorithms, input variables, or various outputs like graphs, charts, plots or data files. Users can also create custom blocks in C, Fortran or Pascal and add them to the VisSim block library. After the model is configured, a simulation is run and results of the simulation are displayed.

Once the behaviour of the system model is understood, often the next step is to develop a "software" controller that will control the behaviour of the model and eventually the physical system itself. In the above example, a motion control engineer developed a system model of an AC Induction Motor and then developed a "software" PID controller to control the torque, velocity and position of the motor.

VisSim Viewer

Professional VisSim includes the VisSim Viewer, a run-time, view only version of VisSim. The VisSim Viewer enables users to distribute VisSim models and simulations to individuals not licensed to use VisSim. Model integrity is preserved by prohibiting recipients from changing wiring and model structure. However, recipients of the Viewer are able to change block and simulation parameters, optimise gains, perform interactive "what -if " scenarios and customise histogram, plot and stripChart blocks. 

VisSim options

The core product, VisSim, is used for general modelling, simulation and control system design applications. VisSim product options include VisSim/Analyze, for frequency domain analysis, and VisSim/Real-Time, for real-time hardware-in-the-loop validation.

The addition of a comprehensive library of communication blocks to the core VisSim product results in a product called VisSim/Comm - an integrated solution for the modelling and simulation of analog, digital or mixed-mode, end-to-end communication systems. Pre-built blocks like signal sources, encoders/decoders, modulators/demodulators, filters, channels, RF components and PLLs make it easy to build, maintain and modify even the most complex communication system models.

The VisSim/C-Code product option is available for VisSim, VisSim/Comm. VisSim/C-Code automatically generates ANSI C code for the model/controller/algorithm. The C code can be compiled and run on any platform that supports an ANSI C compiler.

Finally, integrated VisSim/DSP solutions enable users to model and simulate their control/communication/signal processing system, automatically convert their algorithm to ANSI C code and compile-link-download to an embedded system.


Modeling Features

  • AudioIn and audioOut blocks read and write data from .WAV files or Windows audio devices

  • DelayedSwitch block lets you control the delay for the‘on’ and ‘off’ commands found in process control

  • TimeOfDay block provides hour, minute, second, day, month, year with interactive update

  • MinElement and maxElement blocks find the value and location of matrix elements

  • VisSim Browser lets you explore the VisSim menu hierarchy, making it very convenient to insert blocks from deeply nested menu trees

  • Knobs and Gauges lets you specify high-quality graphical behavior of interactive gauges, meters, dials, switches, and knobs. This gives a ‘dashboard’ faceplate to drive and monitor your VisSim models

  • Spectrum display displays the amplitude of vector elements with a vertical bar for each element

  • Plots with many data points now repaint many times faster

Simulation Features

  • Subsystem superclocking allows all blocks within a Compound block to run at a user-defined rate faster than the overall simulation rate. It also allows for containment of high-frequency components, iterating through matrixes, or modeling of partial differential equations

  • Adaptive Adams-Moulton and BDF integration algorithms are two new integration methods for solving adaptive step stiff systems

  • Real-time scale factor lets you run real-time simulations at multiples or fractions of real time

  • Auto check pointing lets your automatically save diagram states at given intervals to a unique file name composed of the original file name plus a time stamp suffix. The file contains the current state of all variables in the diagram, letting you re-run simulations from any check pointed state

  • Start-up scripting allows C or Matrix initialisation syntax

  • VisSim - Maple interface allows reading and writing of scalar and matrix data to the Maple workspace, as well as execution of Maple script. Brings a fast and smooth interface between VisSim and Maple

  • Import block feature allows ‘,’ as decimal point, and allow ‘.’ as a field separator. The import block now understands hh:mm:ss.ff as a time specification format

  • Export block feature allows ‘,’ as decimal point, and ‘.’ as a field separator

Visualisation Features

  • VisSim Tutor lets you annotate a VisSim diagram with interactive help balloons so that others can read and understand it better

General Features

  • Ctrl-TAB switches to the next window; Ctrl-F4 closes current window

  • Block display ordering allows "Bring Forward" or "Send to back" of bezel blocks

  • Block menu tree is an alternate method to insert blocks into diagram




VisSim/Comm is the fastest and easiest-to-use software for the modeling and simulation of physical layer end-to-end communication systems.

VisSim/Comm is a Windows-based software program for the modeling and simulation of end-to-end communication systems at the signal or physical level. It is based on Visual Solutions well established and highly regarded modeling and simulation software. With a full complement of communication blocks and powerful, time-domain simulation engine, VisSim/Comm provides fast and accurate solutions for analog, digital and mixed-mode communication system designs. VisSim/Comm's intuitive block diagram interface makes it easy to build, modify and maintain even the most complex system models.

Using VisSim/Comm, engineers can freely move among the stages of model construction, simulation, optimization and validation. This tightly integrated development platform allows engineers to simulate and view signal waveforms at any stage of the communication system chain. Importantly, all modeling and simulation tasks can be completed without writing a line of code. Ericsson Inc., a leading developer and manufacturer of cellular and PCS consumer electronics, has been using VisSim/Comm under an early release program.

"If it doesn't work mathematically, it won't work on the bench! Using VisSim/Comm, we designed a new modulation synthesizer much faster than if we had followed the conventional hardware prototype cycle for proof-of-concept. We were able to validate our approach in a matter of days as opposed to the several weeks required to design, assemble, and test a breadboard."

- Charles Gore, R & D Engineer, Ericsson

VisSim/Embedded Controls Developer


VisSim/Embedded Controls Developer

A development environment for the rapid prototyping and development of embedded control systems.

Supports the TI MSP430, F24x, LF240x, F2812, C5510, C6713 and associated development boards from Spectrum Digital and SoftBaugh.

VisSim is unique in its ability to generate small memory footprint target files. For example. a closed loop PID control with encoder input and PWM output and one Digital output line take 2.5K ROM and 500 bytes RAM and can sample at up to 300 KHz on the F2812.

VisSim/Embedded Controls Developer is the smarter, faster way for embedded control design.

"The combination of the VisSim/Embedded Controls Developer software and TI's C2000 DSPs provides designers with an excellent embedded DSP control platform."
Todd Solak
Worldwide Marketing Manager, Digital Controls System Group
Texas Instruments


  • VisSim/Fixed Point block set performs simulation and efficient code generation of scaled fixed point operations like sin/cos/sqrt/atan2/FIR/IIR. Overflow and precision loss effects are easily seen and corrected at simulation time. Auto-scaling speeds fixed point development. In-line code generation creates fast target code.

  • Peripheral Blocks to generate code for C2000 on-chip devices:​

    • ​280x ePWM, eQEP, eCAP,

    • analog and digital I/O, quadrature encoder inputs

    • event captures (up to 1 MHz resolution)

    • CAN 2.0, serial port

    • up to 16 PWM outputs

    • dynamic control of PWM frequency and phase

    • complete deadband control

    • Interrupt driven, selectable queue length drivers for I2C and serial port

    • SPI, Device I/O ports, watchdog, interrupts

  • TI C2000 Digital Motor Control (DMC) Block Set supporting simulation and code generation of efficient, fixed-point routines for Park and Clarke transforms, rotor speed and flux estimation, PID control, space vector wave form generation for AC Induction and Brushless DC motor control.

  • Automatic C code generation of production quality fixed-point code, compile, link, and JTAG download to the TI F2833x, F280x, F281x, MSP430, LF240x, C5510, C6713

  • Retention of the VisSim GUI while algorithm executes on DSP lets you visualize interactive plots of DSP outputs and change DSP gains and parameters in real-time.

  • VisSim-Code Composer Studio (CCS) plug-in for automatic CCS project creation

  • TI C2000 CAN Bus Support

  • Serial port based LCD display support

  • Efficient 7 and 14 Segment LCD display support for MSP430. User Table can customize segment assignments. Auto conversion from scaled fixed point to decimal display uses no floating point and no divide for maximum efficiency on MSP architecture.

  • Flash Burn support tracks processor speed and PLL multiple to safely burn your standalone controller to Flash

  • Conditional execution of subsystems based on any Boolean condition, including occurrence of interrupt.

  • User Control of Execution Order is done via block placement in diagram. Execution order is top down. Subsystem contents are completely executed before the next block on given layer.


Click on the Addon to see more information and pricing




VisSim/Analyze lets you perform a frequency domain analysis of a VisSim model or subsystem. It helps answer the question "Is this a stable system?" VisSim/Analyze approximates the dynamics of a nonlinear system by linearizing the system about a specified operating point. Linearized systems can be represented in ABCD state space or transfer function form. With VisSim Analyze, you can easily access transfer function information; edit zeros and poles; and compute Nyquist, Bode, and root locus plots.

Bode plot

Bode plot of 11th order Butterworth filter

Interactive Controller Design

Designing a controller for a plant model is performed interactively by editing compensator zeros and poles, and observing the combined controller-plant behavior in Bode and root locus plots. Once the desired responses are obtained, the resulting controller block is simply inserted into a VisSim diagram.

The preliminary pole placement controller is connected to a plant model creating a feedforward or a feedback control loop. A simulation is run in VisSim and the results of the simulation are easily viewed in graphical plots. The stability of the closed-loop system can then be determined using Nyquist plots.

Compensator Design

VisSim/Analyze also features a compensator design capability that lets you interactively design feedback control systems. You edit the poles and zeros of the compensator transfer function in a floating window. In return, VisSim/Analyze automatically updates the Bode and root locus plots of the combined plant-compensator system to reflect the effects of the pole and zero manipulation. Once you attain the desired response characteristics, you can place the compensator in the VisSim diagram.

Analysis of Discrete Transfer Functions

VisSim/Analyze supports analysis of discrete transfer functions. This lets you effectively handle the most general closed-loop system scenarios where a plant is modeled as a continuous dynamic system and the controller is a discrete (sampled data) system suitable for easy implementation on micro-controller hardware.


  • Approximates the dynamics of a nonlinear system by linearizing the system about a specific operating point

  • Generates ABCD state-space matrix (screen display or .M/.MAT file exportation)

  • Performs numerical perturbation for creating SISO ABCD state-space matrices

  • Calculates transfer function information, including numerator and denominator polynomials in the powers of the s-plane; gain, zeros, and poles locator; and cleansing of numerical round-off errors

  • Computes Bode phase and magnitude plots, root locus plots, and Nyquist plots

  • Provides interactive compensator design

  • Analyzes discrete transfer functions

  • Generates gain and phase margin

Root Locus

Root Locus plot of 11th order Butterworth




VisSim/C-Code automatically translates VisSim diagrams into highly optimized, ANSI C code that can be compiled and run on the host PC, an embedded target, or any platform that supports an ANSI C compiler. The generated C-code is royalty free. It can be used on any platform with no additional charge.


VisSim C-code Generation Dialog

Optimized Code

Using a technique called "constant folding," the generated code is optimized for speed by performing evaluation of constant expressions at compile time. In addition, the number of function calls and array references are minimized to increase code efficiency. The resulting executables run up to ten times faster than their block diagram counterparts, which is particularly useful for applications with high sampling rates.

Readable Code

VisSim/C-Code preserves variable names from the block diagrams to make it easier to identify signals in the generated code. In addition, comments can be inserted to indicate the hierarchical level of the diagram from which the code is generated. Finally all C code is formatted, including word length control, to improve readability and maintainability.

Automatic DLL Generation

VisSim/C-Code can automatically generate DLLs from any portion of a block diagram. For complex, multi-level diagrams, using DLLs rather than the corresponding blocks can significantly increase simulation speed and efficiency.

Simulation Object Generator

The PC target supports creation of a standalone executable, a DLL to run as a block in VisSim, or a "simObject." A simObject allows you to embed one or more VisSim simulations in your C or C++ application. You control a simObject via the simObject API. A simObject can be instantiated multiple times, allowing multiple copies of a simulation to be run simultaneously. A simObject takes user input, runs to a user-specified time, and provides simulation output. You can reset simObjects to run again. In case of errors, SimObjects return strings for the application to use.


  • Generates ANSI C code directly from block diagram

  • Host PC supports standalone .exe, add-on DLL, or simObject

  • Supports conditional subsystems

  • Supports multi-rate subsystems

  • Simulations run up to 10X faster

  • Generates code for user-written blocks

  • Automatically generates VisSim-callable DLLs

  • Retains variable names used in diagram

  • Targets available for QNX, PC Windows, TI MSP430, LF240x, F280x, F281x, F2823x, F2833x, C67xx

  • Support Library source code available




By using system identification techniques, VisSim/ModelWizard allows you to develop high-fidelity, dynamic models of process plant subsystems or components from real-time plant and historic data. Using VisSim/ModelWizard, process control engineers and technicians can easily create models for tuning controllers without spending days or weeks developing the models.

System ID Process

VisSim/ModelWizard consists of a simple wizard interface combined with a set of sophisticated algorithms. The underlying algorithms identify the key frequencies of a system -- even in the presence of noise -- and generate a mathematical model of optimal order, or alternatively, of an order that you specified. VisSim/ModelWizard is designed to produce models for single input/single output (SISO) systems and is particularly well-suited for PID-controlled systems. These models can be easily configured with other VisSim blocks (for example, PID control blocks) to perform process simulation, off-line tuning (optimization), and operator training.




VisSim/Neural-Net uses established neural network algorithms to perform learning and recognition of patterns. Neural networks excel at nonlinear system identification, problem diagnosis, decision making, prediction, and other problems where pattern recognition is important and precise computational answers are not readily available.

Neural Net Dialog

Neural network configuration dialog

Within the engineering community neural networks, are used for learning nonlinear dynamic behavior from historic data sets. Once trained, neural networks are used to predict plant behavior based on input values.

Neural networks can be both trained and used for prediction directly from a VisSim diagram.


  • Up to 32 layers per network

  • Up to 32767 neurons per layer

  • up to 128 neural networks per diagram

  • Five learning methods

  • User-selectable learn rate

  • User-selectable neighborhoods

  • User-specified smoothing factor

  • Table-driven weight initialization




VisSim/OPC is an OPC client add-on to VisSim. Based on proven Kepware OPC client technology, VisSim/OPC allows VisSim to connect to any OPC server, including all Kepware servers. Using VisSim/OPC, you can easily log data or run a virtual plant in VisSim for off-line tuning or operator training.

Renewable Energy board

VisSim reading and writing OPC tags on Matrikon OPC server

Just Click, Wire, and Go

To exchange data between VisSim and any OPC server, you simply wire OPC Read and OPC Write blocks into a diagram and then click the Go button. The OPC Read and OPC Write blocks let you read data from and write data to an OPC server. Update rates and data exchange modes are easily specified. You can also edit item names (including data types and initial value), time bias, percent deadband, and language ID. You use the OPC Server block to establish a connection with the OPC server. You can create connections to as many OPC servers as you require.

VisSim/OPC works with popular PLC/DCS equipment from companies including Honeywell, Emerson Process, Siemens, and Allen Bradley.


  • Automatically invoke OPC server

  • Monitor data exchange with OPC server

  • Automatically re-establish broken links

  • Browse tags

  • Add by name

  • Import lists

  • Dynamic error checking

  • Support of 1.0a and 2.0 data access interfaces

  • Exchange data between VisSim and any OPC server

  • Synchronous or asynchronous data exchange

  • Display data exchange status

  • Automatically activate or deactivate

  • Connect to multiple OPC servers

  • Populate OPC blocks using item lists

  • Viewable list of errors and events

OPC setup dialog

OPC Read properties with three tags




Real-time Data Acquisition, Control, and Hardware-in-the-Loop Validation

VisSim/Real-TimePRO interfaces VisSim to popular analog and digital I/O boards and devices from National Instruments, Measurement Computing, and Quanser. VisSim/Real-TimePRO provides the capability to couple a VisSim system model directly with a real PLC or DCS system for off-line tuning, or to prototype a VisSim control with a real plant.

With VisSim/Real-TimePRO, hardware-in-the-loop (HIL) systems can be configured and executed by interfacing VisSim plant or controller models with real-world hardware, such as manufacturing plants, chemical processes, motors, pumps, and electric drives. The interface to the real-world hardware is through computer I/O cards; high-speed motion control interface cards; or serial port connections to Programmable Logic Controllers (PLCs) or Distributed Control Systems (DCSs). There is no code generation or programming involved to configure an HIL system with VisSim/Real-TimePRO. Click here for a list of supported boards and a discussion of board performance.


  • Develop and validate control strategies

  • Perform off-line tuning of controllers against a real-time plant

  • Perform real-time control of actual plant

  • Operator training against a real-time plant simulation


  • Biomedical engineering

  • Furnace control

  • HVAC

  • Model verification

  • PLC commissioning

  • Precision servo control

  • Pulp and paper

  • Real-time simulation

  • System identification


  • Works interactively under Windows

  • Universal library support for National Instruments and Measurement Computing boards

  • Real-time data acquisition and display

  • Real-time HIL execution

  • Real-time data logging with gating

  • Closed-loop process control

  • Cold junction compensation

  • Pulse width modulation

  • Thermocouple linearization

  • PID tuning

  • Connect up to 16 boards simultaneously

  • Simultaneous use of boards from different vendors

  • Up to 10 kHz data sampling rate

  • 4-20 ma I/O

  • PWM output

  • Counter-timer

  • Quadrature encoder

  • Use up to 16 boards in one diagram

  • Simultaneous use of boards from different vendors

  • Multiplexer addons provide up to 112 channels per board

  • Data switching of 120V AC systems

  • Supports USB devices like PMD-1208