pidex v0.2.2 Pidex

Documentation for Pidex.

Link to this section Summary

Functions

Main PID(ex) controller update function. Each call to this will produce a new PID(ex) state struct which needs to be passed to the next call to update. pid = %Pidex{kP: 1.2, kI: 1.0, kD: 0.001, max_point: 20.0} initial_state = %Pidex.State{ts: 0.00} {output, initial_state} =

Link to this section Types

Link to this type

t()

t() :: %Pidex{
  bias: term(),
  error_power: term(),
  kD: term(),
  kI: term(),
  kP: term(),
  max_point: term(),
  min_point: term(),
  set_point: term(),
  ts_factor: term()
}
Link to this type

timestamp()

timestamp() :: integer() | float()

Link to this section Functions

Link to this function

update(arg)

update({t(), Pidex.State.t(), number(), timestamp()}) ::
  {number(), Pidex.State.t()}

Main PID(ex) controller update function. Each call to this will produce a new PID(ex) state struct which needs to be passed to the next call to update. pid = %Pidex{kP: 1.2, kI: 1.0, kD: 0.001, max_point: 20.0} initial_state = %Pidex.State{ts: 0.00} {output, initial_state} =

{pid, state, 5.0, 1}
|> Pidex.update()
Link to this function

update(pid, state, process_value, ts)

update(t(), Pidex.State.t(), number(), timestamp()) ::
  {number(), Pidex.State.t()}