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
File details
Details for the file pyadrc-0.4.1.tar.gz
.
File metadata
- Download URL: pyadrc-0.4.1.tar.gz
- Upload date:
- Size: 102.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b34fb6b0a6199c067b583f7dc7bc6d093e548ced6c0f325633ade2c66304cc50 |
|
MD5 | ccc40a925bd27081a4492cf7d5affedd |
|
BLAKE2b-256 | 6090f9ddf85f14c6847377b540f6bd1cf5808b915c68d186a7d80e2414f277f1 |
File details
Details for the file pyadrc-0.4.1-py2.py3-none-any.whl
.
File metadata
- Download URL: pyadrc-0.4.1-py2.py3-none-any.whl
- Upload date:
- Size: 11.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ad3ba6fce18bb7b9ae6903e0439be7b4934f041987682e3d21f4c418f2a0782 |
|
MD5 | 417fca4f68061d5eca20c113172fab1f |
|
BLAKE2b-256 | e8e9ddb637727adede1fb50ce62c410413efc2456b91cf9696857f254e6307d5 |