.. java:import:: ch.epfl.leb.alica.interfaces.controllers ControllerStatusPanel .. java:import:: ch.epfl.leb.alica.acpack.controllers.pi PI_controller .. java:import:: ij IJ .. java:import:: java.util.logging Level .. java:import:: java.util.logging Logger SelfTuningController ==================== .. java:package:: ch.epfl.leb.alica.acpack.controllers.selftuningpi :noindex: .. java:type:: public class SelfTuningController extends PI_controller A self-tuning implementation of the PI controller. It waits for 10 cycles, and over next 20 cycles generates a step pulse and measures response. From this response it estimates the P and I components of the PID controller. :author: Marcel Stefko Constructors ------------ SelfTuningController ^^^^^^^^^^^^^^^^^^^^ .. java:constructor:: public SelfTuningController(double max_output, double sampling_period_s) :outertype: SelfTuningController Initialize a new SelfTuningController :param max_output: max output :param sampling_period_s: tick rate of controller in seconds :param step_height: how big step pulse should be generated :param p_factor: scaling factor for P in tuning :param i_factor: scaling factor for I in tuning Methods ------- getName ^^^^^^^ .. java:method:: @Override public String getName() :outertype: SelfTuningController getStatusPanel ^^^^^^^^^^^^^^ .. java:method:: @Override public ControllerStatusPanel getStatusPanel() :outertype: SelfTuningController nextValue ^^^^^^^^^ .. java:method:: @Override public double nextValue(double value) :outertype: SelfTuningController recalibrate ^^^^^^^^^^^ .. java:method:: public final void recalibrate(double step_height, double p_factor, double i_factor) :outertype: SelfTuningController