Safe Haskell | None |
---|---|
Language | Haskell2010 |
PID related functions for Topic
s.
- pidUniform2 :: Fractional a => a -> a -> a -> Topic IO a -> Topic IO a -> Topic IO a
- pidUniform :: Fractional a => a -> a -> a -> a -> Topic IO a -> Topic IO a
- pidFixed2 :: Fractional a => a -> a -> a -> a -> Topic IO a -> Topic IO a -> Topic IO a
- pidFixed :: Fractional a => a -> a -> a -> a -> a -> Topic IO a -> Topic IO a
- pidTimed2 :: Fractional a => a -> a -> a -> Topic IO a -> Topic IO a -> Topic IO a
- pidTimed :: Fractional a => a -> a -> a -> a -> Topic IO a -> Topic IO a
- pidStamped2 :: Fractional a => a -> a -> a -> Topic IO a -> Topic IO (a, a) -> Topic IO a
- pidStamped :: Fractional a => a -> a -> a -> a -> Topic IO (a, a) -> Topic IO a
Documentation
pidUniform2 :: Fractional a => a -> a -> a -> Topic IO a -> Topic IO a -> Topic IO a Source
pidUniform2 kp ki kd setpoint t
runs a PID controller that
transforms Topic
t
of process outputs into a Topic
of control
signals designed to steer the output to the setpoints produced by
Topic
setpoint
using the PID gains kp
, ki
, and kd
. The
interval between samples produced by the Topic
is assumed to be
1.
pidUniform :: Fractional a => a -> a -> a -> a -> Topic IO a -> Topic IO a Source
pidFixed2 :: Fractional a => a -> a -> a -> a -> Topic IO a -> Topic IO a -> Topic IO a Source
pidFixed2 kp ki kd setpoint dt t
runs a PID controller that
transforms Topic
t
of process outputs into a Topic
of control
signals designed to steer the output to the setpoints produced by
Topic
setpoint
using the PID gains kp
, ki
, and kd
, along
with an assumed fixed time interval, dt
, between samples.
pidTimed2 :: Fractional a => a -> a -> a -> Topic IO a -> Topic IO a -> Topic IO a Source
pidTimed2 kp ki kd setpoint t
runs a PID controller that
transforms Topic
t
of process outputs into a Topic
of control
signals designed to steer the output to the setpoints produced by
Topic
setpoint
using the PID gains kp
, ki
, and kd
. The
system clock is checked for each value produced by the input
Topic
to determine the actual sampling rate.
pidTimed :: Fractional a => a -> a -> a -> a -> Topic IO a -> Topic IO a Source
pidTimed kp ki kd setpoint t
runs a PID controller that
transforms Topic
t
of process outputs into a Topic
of control
signals designed to steer the output to the given setpoint using
the PID gains kp
, ki
, and kd
. The system clock is checked for
each value produced by the input Topic
to determine the actual
sampling rate.
pidStamped2 :: Fractional a => a -> a -> a -> Topic IO a -> Topic IO (a, a) -> Topic IO a Source
pidStamped2 kp ki kd setpoint t
runs a PID controller that
transforms Topic
t
of process outputs into a Topic
of control
signals designed to steer the output to the given setpoint using
the PID gains kp
, ki
, and kd
. Values produced by the Topic
t
must be paired with a timestamp and thus have the form
(timeStamp, sample).
pidStamped :: Fractional a => a -> a -> a -> a -> Topic IO (a, a) -> Topic IO a Source
pidStamped kp ki kd setpoint t
runs a PID controller that
transforms Topic
t
of process outputs into a Topic
of control
signals designed to steer the output to the given setpoint using
the PID gains kp
, ki
, and kd
. Values produced by the Topic
t
must be paired with a timestamp and thuse have the form
(timeStamp, sample).