Difference between revisions of "Software"
(11 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{righttoc}} | {{righttoc}} | ||
A wealth of software is available for analysis, design and implementation of feedback systems. | 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 | + | This page contains information on ''open source'' software that is being developed to support the analysis and design techniques described in ''Feedback Systems''. |
− | === Python Control Systems Library === | + | === 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: | 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: | ||
Line 9: | Line 9: | ||
* http://python-control.org - python-control wiki page (includes download instructions and examples) | * http://python-control.org - python-control wiki page (includes download instructions and examples) | ||
− | The current release of this software includes the ability to | + | The current release of this software includes the ability to generate most of the figures in the book. Links to individual [[:Category:Figures|figures]] and [[:Category:Examples|examples]] are available on chapter pages. To run some of the code used to generate these figures, you may need additional files available here: |
+ | |||
+ | * https://github.com/murrayrm/fbs2e-python | ||
=== Sparrow Real-Time Control Libraries === | === Sparrow Real-Time Control Libraries === | ||
− | The [ | + | 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 |
* 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.) | ||
In addition, some more advanced libraries are being developed for use in networked control environments: | 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 | * Skynet - a messaging library for communication between processing using the Spread communications protocol | ||
− | * NTG - nonlinear trajectory generation library, including receding horizon control (RHC) | + | * [https://github.com/murrayrm/ntg NTG] - nonlinear trajectory generation library, including receding horizon control (RHC) |
=== Other Software Packages === | === Other Software Packages === |
Latest revision as of 16:06, 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 Feedback Systems.
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