<<

VISSIM

VisSim is a visual block diagram language for simulation of dynamical systems and Model Based Design of embedded systems. It is developed by Visual Solutions of Westford, Massachusetts.

Applications

VisSim is widely used in control system design and digital signal processing for multidomain simulation and design. It includes blocks for arithmetic, Boolean, and transcendental functions, as well as digital filters, transfer functions, numerical integration and interactive plotting. The most commonly modeled systems are aeronautical, biological/medical, digital power, , electrical, hydraulic, mechanical, process, thermal/HVAC and econometric.

Academic program

The VisSim Free Academic Program allows accredited educational institutions to site license VisSim v3.0 for no cost. The latest versions of VisSim and addons are also available to students and academic institutions at greatly reduced pricing.

Distributing VisSim models

VisSim viewer screenshot with sample model.

The free Vis Sim Viewer is a convenient way to share VisSim models with colleagues and clients not licensed to use VisSim. The VisSim Viewer will execute any VisSim model, and allows changes to block and simulation parameters to illustrate different design scenarios. Sliders and buttons may be activated if included in the model. Code generation

The VisSim/C-Code add-on generates efficient, readable ANSI C code for algorithm acceleration and real-time implementation of embedded systems. The code is more efficient and readable than most other code generators. VisSim's author served on the X3J11 ANSI C committee and wrote several C compilers, in addition to co-authoring a book on C. [2] This deep understanding of ANSI C, and the nature of the resulting machine code when compiled, is the key to the code generator's efficiency. VisSim can target small 16-bit fixed point systems like the Texas Instruments MSP430, using only 740 bytes flash and 64 bytes of RAM for a small closed-loop Pulse-width modulation (PWM) actuated system, as well as allowing very high control sample rates over 500kHz on larger 32-bit floating point processors like the Texas Instruments 150MHz F28335

Model based Development

VisSim's hierarchical composition makes it easy to create nested block diagrams. Typically you build virtual plants with various VisSim layers, combined if necessary with custom blocks written in C or FORTRAN. Then a virtual controller is added and tuned to give desired overall system response. Addition of sliders and buttons makes it easy to perform "What-If?" scenarios for operator training or controller tuning. The technique of simulating system performance off- line, and then generating code automatically from the simulated diagram is known as "Model- Based Development." Model-Based Development for embedded systems is becoming widely adopted for production systems because it shortens development cycles for hardware development in the same way that Model-driven architecture shortens production cycles for software development.

Model building is a visual way of picturing a situation. Instead of forming simultaneous equations and solving for the variables, model building involves using blocks to solve the problem. The power of using models can best be illustrated by problems, often involving mathematical equations, which appear difficult but if models can be drawn to show the situation, the solution becomes clearer, sometimes even obvious. Though VisSim was originally designed for use by electronics engineers, it can be used for any type of mathematical model. A good example is Steve Keen, who claims that too much debt is the cause of the current financial crisis and is the result of common errors in modern-day risk modeling. He bases his research on VisSim models that he has designed and made available via his website, most notably modeling Hyman Minsky's Financial Instability Hypothesis.

VisSim add-ons

Screenshots show the simulation of a simple sine function in VisSim. Noise is added to the model, then filtered out using a . The signal traces of the sine function with noise and filtered noise are first shown together, and then shown in separate windows in the block. 320x240 version. This video size: 50% (320x240 pixels)

Other size: 100% (640x480 pixels)

y Physical layer communication system simulation (modulators, encoders, PLLs, Costas Loop, BPSK, QPSK, DQPSK, QAM, Bit Error Rate (BER), Eye Diagram, Viterbi algorithm, Reed-Solomon, etc) y analysis (, , Nyquist plot) y CAN bus (Controller-area network) packet read and write y Automatic C programming language code generation y Electric motor simulation library for AC induction, Brushless DC, and Stepper motors y Neural networks y OPC (OLE for process control) client gives read and write of OPC tags for real-time simulation of SCADA/HMI virtual plants y Global optimization of system parameters y Real-time analog signal and digital I/O under Windows y Fixed-point arithmetic blockset for bit-true simulation and code generation y Embedded system targeting for Texas Instruments C2000 and MSP430 chips. Supports on-chip peripherals like serial ports, CAN, PWM, Quadrature Encoder Pulse (QEP), Event Capture, Serial Peripheral Interface Bus (SPI), I²C, Analog-to-digital converter (ADC), Digital-to-analog converter (DAC), and GPIO.

5. References

1. Visual simulation with student VisSim, by Karen Darnell, 1996, PWS Pub. Co., Boston, ISBN 0-534-95485-5 2. Books on C by Peter A. Darnell and Philip E. Margolis 3. The Roving Cavaliers of Credit 4. Steve Keen (1995): "Finance and economic breakdown: modelling Minsky¶s Financial Instability Hypothesis", Journal of Post Keynesian Economics, Vol. 17, No. 4, 607-635