Portable C99 implementation of Type-C PID controller with a flexible API and errors handling. Also an Arduino library.
About this project
EPID: Type-C PID controller library Description Portable implementation of Type-C PID controller for both hosted and freestanding C environments with a flexible API that allow the usage of third-party external and/or internal filter(s) for a better control backed with errors and exceptions handling. Equations brief [\]: \( x \): Measured process variable (PV). \( y \): Control variable (CV/CO). In case of Markdown math equations rendering issues: Features Portable code: C standard ISO/IEC 9899:1999 (C99) or later. Usage of IEEE-754 standard for floating-point arithmetic. Handling of floating-point arithmetic errors. Flexible API by dividing processing functions to allow the usage of third-party external and/or internal filter(s). Permissive free software license (ISC). API and usage synopsis Macro constants and library settings Context structures epidt PID context structure. epidlpft Low-pass filter context structure. User functions Initialization functions Processing functions Step one (1) processing functions epidpidcalc(), epidpicalc(). Step two (2) processing functions epidpidsum(), epidpisum(). Utilities and filters epidutililim(): I-term anti-windup.
From the project README on
GitHub
- Stars
- 27
- Forks
- 3
- License
- ISC
- Last push
- 29 Jul 2024
Add this badge to your README
Show that your project is listed on Made in Algeria.
[](https://www.madeinalgeria.dev/projects/embedded-pid)