dvg-pid-controller 2.2.0
PID controller with integral-windup & derivative-kick prevention and bumpless manual-to-auto-mode transfer.
License: MIT
Requires Python: >=3.6
Keywords: PID, feedback, controller, automation, laboratory, science

.. image:: https://img.shields.io/pypi/v/dvg-pid-controller
    :target: https://pypi.org/project/dvg-pid-controller
.. image:: https://img.shields.io/pypi/pyversions/dvg-pid-controller
    :target: https://pypi.org/project/dvg-pid-controller
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
    :target: https://github.com/psf/black
.. image:: https://img.shields.io/badge/License-MIT-purple.svg
    :target: https://github.com/Dennis-van-Gils/python-dvg-pid-controller/blob/master/LICENSE.txt

ABANDONED PROJECT
=================

While there is nothing technically wrong with this library, the implementation found
at https://github.com/m-lundberg/simple-pid is more elegant. It follows the same
methodology as Brett Beauregard's original.


DvG_PID_Controller
==================
*PID controller with integral-windup & derivative-kick prevention and bumpless
manual-to-auto-mode transfer.*

- Github: https://github.com/Dennis-van-Gils/python-dvg-pid-controller
- PyPI: https://pypi.org/project/dvg-pid-controller

Installation::

    pip install dvg-pid-controller

Based on C++ code by:

    ::

        /******************************************************************************
        * Arduino PID Library - Version 1.2.1
        * by Brett Beauregard <br3ttb@gmail.com> brettbeauregard.com
        *
        * This Library is licensed under the MIT License
        ******************************************************************************/

    More information:
        * http://brettbeauregard.com/blog/2011/04/improving-the-beginners-pid-introduction/
        * http://playground.arduino.cc/Code/PIDLibrary

    Ported to Python by Dennis van Gils.

Modifications:

    * Code refactoring.
    * P_ON_M mode has been removed.
    * Made the proportional, integrative and derivative terms accessible.
    * Made the last error accessible.
    * Added optional argument `differential_input` to have the PID controller
      regulate a specific difference with respect to the main argument
      `current_input`. The specific difference that will be regulated is set by
      `setpoint`.
      Contributor: https://github.com/antonverburg.

Changelog
=========

2.2.0 (2024-06-26)
------------------
* Support for Numpy 2.0 without any change needed
* That being done, this library is now abandoned. The implementation found at
  https://github.com/m-lundberg/simple-pid is more elegant.

2.1.1 (2023-02-27)
------------------
* Deprecated `requires.io`

2.1.0 (2021-12-04)
------------------
* Made the last error accessible
* Added optional argument `differential_input` to have the PID controller
  regulate a specific difference with respect to the main argument
  `current_input`. The specific difference that will be regulated is set by
  `setpoint`.
  Contributor: https://github.com/antonverburg.

2.0.2 (2021-12-04)
------------------
(yanked, should have been minor version increment instead of patch)

2.0.1 (2021-12-03)
------------------
(yanked, should have been minor version increment instead of patch)

2.0.0 (2020-07-02)
------------------
* DvG module filenames changed to lowercase

1.0.1 (2020-06-29)
------------------
* Fixed Readme typo

1.0.0 (2020-06-29)
------------------
* First release on PyPI