Active Disturbance Rejection Control for Python
Project description
Active Disturbance Rejection Control for Python
A simple, yet powerful control method for when a PID controller just doesn’t cut it.
Features
Discrete linear time invariant active disturbance rejection controller for digital control systems.
Implementation in state-space representation form of first- and second-order ADRC.
For practical application - half-gain tuning, magnitude and rate limiter for actuator limitations
User guide and/or theoretical background (for when you don’t have anything else to read).
A first/second-order LTI model generator and a quadcopter altitude model for experimentation, testing and verification.
Installation
Installing pyadrc is really simple, just run this command in your terminal:
pip install pyadrc
or you can clone the repository and install it manually:
git clone git://github.com/onguntoglu/pyadrc
cd pyadrc
python setup.py install
Licence
pyadrc is licenced under the MIT Licence
Acknowledgements
None of this work would be possible without Gernot Herbst and his papers:
Practical Active Disturbance Rejection Control: Bumpless Transfer, Rate Limitation and Incremental Algorithm, https://arxiv.org/abs/1908.04610
A Simulative Study on Active Disturbance Rejection Control (ADRC) as a Control Tool for Practitioners, https://arxiv.org/abs/1908.04596
Transfer Function Analysis and Implementation of Active Disturbance Rejection Control, https://arxiv.org/abs/2011.01044
Half-Gain Tuning for Active Disturbance Rejection Control, https://arxiv.org/abs/2003.03986
A Minimum-Footprint Implementation of Discrete-Time ADRC, https://arxiv.org/abs/2104.01943
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pyadrc-0.4.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ad3ba6fce18bb7b9ae6903e0439be7b4934f041987682e3d21f4c418f2a0782 |
|
MD5 | 417fca4f68061d5eca20c113172fab1f |
|
BLAKE2b-256 | e8e9ddb637727adede1fb50ce62c410413efc2456b91cf9696857f254e6307d5 |