Pular para o conteúdo principal

synapsys.algorithms

Control algorithm implementations ready for use in agents or standalone scripts.

PID

Discrete-time PID controller with output saturation and back-calculation anti-windup.

Constructor

PID(
Kp: float,
Ki: float = 0.0,
Kd: float = 0.0,
dt: float = 0.01,
u_min: float = -inf,
u_max: float = inf,
)
ParameterDescription
KpProportional gain
KiIntegral gain
KdDerivative gain
dtSample time in seconds
u_min, u_maxOutput saturation limits

Methods

MethodDescription
compute(setpoint, measurement) -> floatComputes the control signal for one timestep
reset()Clears the integrator and previous error

lqr

Solves the infinite-horizon Linear Quadratic Regulator problem.

lqr(A, B, Q, R) -> tuple[np.ndarray, np.ndarray]
ParameterDescription
ASystem matrix (n×n)(n \times n)
BInput matrix (n×m)(n \times m)
QState cost matrix (n×n)(n \times n), positive semi-definite
RControl cost matrix (m×m)(m \times m), positive definite

Returns: (K, P) where K is the optimal gain and P is the Riccati solution.

Source

See synapsys/algorithms/ on GitHub.