Difference between revisions of "Software"
Line 15: | Line 15: | ||
=== Sparrow Real-Time Control Libraries === | === Sparrow Real-Time Control Libraries === | ||
− | The [https://github.com/murrayrm/sparrow Sparrow project] at Caltech is 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 | + | The [https://github.com/murrayrm/sparrow Sparrow project] at Caltech is 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 the text are available: |
* [https://github.com/murrayrm/sparrow Sparrow] - a real-time library that supports control loops, device interfaces, real-time displays | * [https://github.com/murrayrm/sparrow 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.) | * 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.) |
Revision as of 16:02, 28 May 2023
A wealth of software is available for analysis, design and implementation of feedback systems. This page contains information on open source software that is being developed to support the analysis and design techniques described in Template:Am08.
Python Control Systems Library (python-control)
A library of functions for analysis and design of control systems is being developed for use in the Python programming language. The python-control package is an open source project that is intended to implement the standard control system functions. More information is available at:
- http://python-control.org - python-control wiki page (includes download instructions and examples)
The current release of this software includes the ability to generate most of the figures in the book. Links to individual figures and examples are available on chapter pages. To run some of the code used to generate these figures, you may need additional files available here:
Sparrow Real-Time Control Libraries
The Sparrow project at Caltech is 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 the text 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
Analysis and Design Tools
- Julia - Control Systems Design in Julia
- Interactive Learning Modules Project - interactive tools for PID control
- Octave (GNU) - open source MATLAB replacement
- Scilab (INRIA) - open source MATLAB replacement
Control Implementation Libraries
- Comedi - Linux control and measurement interface; device drivers for data acquisition cards
- Real-Time Control Systems Library (NIST)
- ROS - open-source, meta-operating system for robotics applications