Software

From AMwiki

Jump to: navigation, search

Contents

A wealth of software is available for analysis, design and implementation of feedback systems. This page contains information on some of the software that is being developed to support the analysis and design techniques described in Feedback Systems.

MATLAB/LabView tools

Some specialized scripts have been developed to produce plots that match the style in Feedback Systems. These scripts can be used in MATLAB, LabView or compatible tools.

  • ambode.m: alternative version of bode command (gain in powers of 10)
  • amnyquist.m: alternative version of the nyquist command with better labeling and treatment of imaginary poles
  • amphaseplot.m: function to generate phase plots. This command uses several helper functions:
    • arrow.m - function to generate customized arrowheads (from MATLAB Central)
    • amquiver.m - modified version of MATLAB quiver command (uses arrow.m)
    • boxgrid.m (optional) - function to generate a grid of initial conditions

You can use these functions by simply copying them into a directory that is in your MATLAB or LabView path. For your convenience, these files are also available as a single zip file or tar file.

MATLAB code for many of the examples used in the text can be found on the Additional Examples page.

Sparrow real-time control libraries

The Sparrow project at Caltech is developing a collection of open source C/C++ libraries for implementing real-time controllers on Linux-based data acquisition & control systems. Two low-level libraries that allow implementation of the controllers described in Feedback Systems are available:

  • Sparrow - a real-time library that supports control loops, device interfaces, real-time displays
  • Falcon - a library for implementing standard control techniques such as state space compensators and Kalman filters. (The linux version of the falcon library will be released in the near future.)

In addition, some more advanced libraries are being developed for use in networked control environments:

  • Skynet - a messaging library for communication between processing using the Spread communications protocol
  • NTG - nonlinear trajectory generation library, including receding horizon control (RHC)

Other Software Packages

General Purpose Modeling Tools

  • Modelica (Wolfram Research) - symbolic manipulation and lots more
  • SIMULINK (MathWorks) - block diagram-based simulation package

Control Analysis and Design

Control Implementation Libraries

Personal tools