Skip to content

pid_controller integral limit not working as expected

Our default config doesn't have an integrator_limit, so it looks like the limit is set to unitless_type(0.0): https://git.barrett.com/software/libbarrett/-/blob/devel/include/barrett/systems/detail/pid_controller-inl.h#L86

But when operate()ing, it asks, "intErrorLimit != MT::zero()?" and this would appear to be true, because it is limiting the integral error to zero. So I suspect unitless_type(0.0) != MT::zero(). https://git.barrett.com/software/libbarrett/-/blob/devel/include/barrett/systems/detail/pid_controller-inl.h#L158