Skip to content

Releases: BrandonElectronic/AutoPID-for-ESP-IDF

v1.0.2

28 May 01:28
57f121e
Compare
Choose a tag to compare
  • Remove the name in idf_component.yml

Full Changelog: v1.0.1...v1.0.2

v1.0.1

25 May 10:00
Compare
Choose a tag to compare
  • Fix CI typo for uploading component

v1.0.0

25 May 09:38
Compare
Choose a tag to compare

This initial release provides robust PID control features, designed to help developers easily implement advanced control systems in their ESP32 projects.

Key Features

AutoPID Class

  • Constructor: Initializes a new AutoPID object with configurable input, setpoint, output pointers, output range, and PID gains (Kp, Ki, Kd).
  • setGains: Allows manual adjustment of PID gains.
  • setBangBang: Supports bang-bang control with both upper/lower offsets and a single range threshold.
  • setOutputRange: Allows manual (re)adjustment of the output range.
  • setTimeStep: Configures the PID calculation time interval.
  • atSetPoint: Checks if the input has reached the desired setpoint within a specified threshold.
  • run: Automatically runs PID calculations at the configured time interval.
  • stop: Stops PID calculations and resets internal values.
  • reset: Resets internal PID calculation values without stopping.
  • isStopped: Indicates if PID calculations have been stopped.
  • getIntegral: Retrieves the current value of the integral term.
  • setIntegral: Overrides the current value of the integral term, useful for resuming states after power cycles.

AutoPIDRelay Class

  • Constructor: Initializes a new AutoPIDRelay object with configurable input, setpoint, relay state pointers, pulse width, and PID gains (Kp, Ki, Kd).
  • getPulseValue: Retrieves the current pulse length for the relay, providing additional control and monitoring capability.

Enhancements and Bug Fixes

  • Comprehensive Doxygen-style documentation for all public functions to assist developers in understanding and using the library effectively.
  • Optimized internal calculations for improved performance and stability.
  • Various bug fixes and improvements based on initial testing and user feedback.