Toyo Pid Auto Tune Average ratng: 4,3/5 7275 votes

A self-tuning PID demonstration GPL software using genetic algorithm. /how-to-system-pause-in-dev-c.html.

  1. Toyo Pid Autotune 1
  2. Toyo Pid Autotune Software
  3. Toyo Pid Autotune For Windows

When i want to autotune PID parameters in a closedloop control system that it's Plant is an ADAMS/viwe plant, I have a problem: linearization failed: The plant model in the PID loop linearizes to zero, and therefore cannot be used in PID controller design. May 30, 2015  Basically in practical implementation of a PID controller and tuning its control parameter there is a possibility that due to human intervention the process is not tuned to obtain optimum control hence auto-tune method serves a masterpiece as it automatically tunes the parameters (which in other case have to be tuned manually) and controls the.

Demonstration video here : https://www.youtube.com/watch?v=cK6kWN9K_do

Explanation here : https://kevinjoly25.wordpress.com/2015/01/13/pid-controller-auto-tuning-using-genetic-algorithm/

  • Qt4

$ mkdir build
$ cd build
$ cmake .
$ make

No install method has been provided yet. However, you can run the software from the build directory:$ ./pid-autotune

There is 4 dock widgets in this software:

  • Motor: enable the user to choose a motor to use and test it in closed on opened loop.
  • Controller : enable the user to choose a controller to use with the motor (check 'Use controller'). The controller parameters can be set in this widget for test purpose.
  • Graph settings : enable the user to change the axes scale by setting the min and max to be displayed.
  • Genetic : enable the user to control the genetic algorithm parameters such as:
    • input : value of the input applied on the system.
    • min/max Kx : boundary values of each PID action.
    • Evaluation time : system running time when evaluating fitness.
    • Population size : size of the genetic algorithm's population.
    • Mutation ratio : probability to mutate the offspring's variable.
    • Crossover ratio : probability to crossover two parents.
    • Overshoot penalty : ratio which multiply the error when an overshoot occurs. If you don't want any overshoot, set this to the maximum.
    • Elite num : Number of best parents kept in the next generation of population.The start button launch the genetic process. Pause stop the process, press start to launch it again without any loss. Reset enable the user to generate a new random population by deleting the old one.

Example

Toyo Pid Autotune 1

  • Under 'Motor' : choose the DummyMotor.
  • Under 'Graph settings' : set xMax to 0.1 and yMax to 2.0.
  • Under 'Genetic' : set maxKp to 1.0, maxKd to 2.0, maxKi to 0.1.
  • Hit start button and enjoy the dance of a self-tuning PID! ;)

Toyo Pid Autotune Software

More on GAs..

The fitness function is using the sum of squarred error to evaluate the generated PID.Thanks to this fitness function, tournament selection can be used in order to select parents of the next PID population.The genetic algorithm implemented in Genetic.cpp uses arithmetic crossover and gaussian mutation to generate the new population.Elitism can be used.

Toyo Pid Autotune For Windows

This software is using the GPL software QCustomPlot from Emanuel Eichhammer.