[][src]Module msr::bang_bang

Bang-bang controller

Example

use msr::{Controller,bang_bang::*};

let mut cfg = BangBangConfig::default();
cfg.default_threshold = 5.8;
cfg.hysteresis = 0.1;
let mut c = BangBang::new(cfg);

assert_eq!(c.next(5.89), false); // 5.89 < threshold + hysteresis
assert_eq!(c.next(5.9),  true);
assert_eq!(c.next(5.89), true);  // 5.89 > threshold - hysteresis
assert_eq!(c.next(5.71), true);
assert_eq!(c.next(5.69),  false);

Structs

BangBang

A Bang-bang controller implementation

BangBangConfig

Bang-bang controller configuration

BangBangState