Releases: m-lundberg/simple-pid
Releases · m-lundberg/simple-pid
v2.0.0
[2.0.0] - 2023-04-28
Added
- Ability to override the time function by setting PID.time_fn to whichever function to use
- Black is now run in CI to detect formatting problems
- Project is now defined by a pyproject.toml file instead of the old setup.py. The setup.cfg file remains for flake8 configuration for now.
- Ability to give the PID a starting guess for its output, when you start controlling a system that is already at the setpoint and don't want the PID to start outputting 0
- Option for specifying differential_on_measurement, to choose between calculating the derivative term on the input (default) or on the error (classic PID)
Changed
- Rename the module
PID
topid
to avoid the shadowing from thePID
class - potentially a breaking change in some edge cases - CI migrated from Travis to GitHub Actions
- The documentation has gotten an overhaul and a new look. Much of the detailed documentation in README.md has been moved to a dedicated user guide.
Fixed
- Fix mypy issue by explicitly exporting
PID
- Remove duplicated definition of
output_limits
in type stubs
Deprecated
- Official support for Python 2 is dropped. While the code will likely keep working in Python 2 going forward, it's no longer tested in CI and no guarantees are given.
v1.0.1
[1.0.1] - 2021-04-11
Fixed
- Added type information for public instance variables to typing stub
v1.0.0
[1.0.0] - 2021-03-20
Added
-
Function to map the error value to a different domain
-
Typing information through a stub file so that users of the library can use e.g.
mypy to type check their code -
This project now uses the Black code style
-
The PID class now has a
__repr__()
method, meaning that objects of this type can be printed
directly for use during development -
MANIFEST.in file to ensure all necessary files are included in the source distribution
Fixed
- Formatting errors in the documentation due to poorly formatted docstrings
v0.2.4
[0.2.4] - 2019-10-08
Added
- Added optional argument to manually set dt (useful e.g. when running in a simulation)
v0.2.3
[0.2.3] - 2019-08-26
Added
- A reset method to reset the internal state of the PID controller
v0.2.2
[0.2.2] - 2019-07-04
Changed
- Don't limit the proportional term to the output bounds when using
proportional_on_measurement
v0.2.1
[0.2.1] - 2019-03-01
Fixed
ZeroDivisionError
on systems with limited precision time.
v0.2.0
[0.2.0] - 2019-02-26
Added
- Allow the proportional term to be monitored properly through the components-property when
proportional on measurement is enabled.
Fixed
- Bump in output when re-enabling auto mode after running in manual mode.
v0.1.5
[0.1.5] - 2019-01-31
Added
- The ability to see the contributions of the separate terms in the PID
Fixed
- D term not being divided by delta time, leading to wrong output values