DE banner

BO - Magnitude Optimum (Betragsoptimum) by Kessler specified for
undelayed inputs (classical Betragsoptimum) and
delayed inputs (Symmetrical Optimum)


BO Toolbox Version 1.2

The BO Toolbox Version 1.2 is available for MATLAB with the following m-files or as ZipFile. Several examples illustrate the calculation of the controller parameters (*par.m) and the achievable control behaviour (*.sim.slx).

function namefeaturesinput arguments
bo_u_gen Magnitude optimum (Betragsoptimum) controller optimization: I-, PI-, PID- and PID2-type, undelayed input (without pre-filter), one integrator in open loop
controller type; plant gain, denominator, numerator; optional: dead-time, approximation type;
bo_u_gen02 same as bo_u_gen, but two higher order controllers possible no change compared to bo_u_gen
bo_d_gen Magnitude optimum (Betragsoptimum) controller optimization: PI-, PID-, PID2- type, delayed input (pre-filter, so-called Symmetrisches Optimum), variable number of open loop integrators controller type; plant gain, denominator, numerator; optional: dead-time, approximation type, initial values, solver options
bo_d_gen02 same as bo_d_gen, but two higher order controllers possible, revised equation system no change compared to bo_d_gen
bo_prefi_op Magnitude Optimum (Betragsoptimum) optional pre-filter optimization (second step), to decrease overshoot more LTI definitions of plant, controller bo_u AND controller bo_d as well as pre-filter according to bo_d; desired order of the optimized pre-filter is adjustable
bo_prefi_op02 same as bo_prefi_op, but additional pre-filter for reference system possible LTI definitions of plant, controller and pre-filter for reference system, controller and pre-filter of the system to be optimized; potential reference system: e.g. dr_d_wedz; potential system to be optimized: bo_d_gen(02); desired order of optimized pre-filter is adjustable
bo_prefi_op03 same as bo_prefi_op, but input arguments of two different plant transfer functions for reference system and system to be optimized possible; LTI definitions of plant and controller for reference system, plant and controller plus pre-filter for system to be optimized; potential reference system: e.g. bo_u_gen(02); potential system to be optimized: e.g. bo_d_gen(02); desired order of optimized pre-filter is adjustable
bo_check accuracy check for fulfillment of basic Magnitude Optimum equations number of controller degrees of freedom; transfer functions: plant, controller, pre-filter if any
bo_d_PI same as bo_d_gen, but PI-type controller only, direct solution of a quadratic equation, unlike bo_d_gen no use of a solver for nonlinear systems of equations same as bo_d_gen, but fixed controller type, without arguments for solvers of nonlinear equation systems (initial values, options)
bo_d_speso PID-type controller optimization based on Magnitude Optimum for delayed inputs (pre-filter, Symmetric Optimum) for four special plant structures plant type; parameters: gain, first-order time-delay elements, integrator, oscillating element
bo_d_pltgen Magnitude optimum (Betragsoptimum) controller optimization: PI-, PID-, PID2-type, delayed inputs; unlike bo_d_gen: LTI definitions of plant and controller controller type, plant, dead time, approximation, initial value, solver options
dr_d_wedz PID-type controller optimization based on Naslin Method (Doppelverhältnisse) for delayed inputs (pre-filter, optional: double zero) for four special plant structures plant type; parameters: gain, first-order time-delay elements, integrator, oscillating element

Applying MATLAB and SIMULINK directory DEMO offers following m- und slx-Files containing examples for scripts to call above listed functions and Simulink simulation structures to check the results.

controller optimization features simulation
Vran21_ex1_par.m Plant with multiple poles (4-fold), controller with essential filter time constant for D-terms (much larger than Simulink default), application of bo_u_gen02 for optimization of PID, PID2 and PID3 controllers Vran21_ex1_sim.slx
ex1_par_Vgl.m Plant with multiple poles (4-fold); comparison of PID, PID2 and PID3 controllers with and without essential filter time constant of the controller (bo_u_gen02, bo_d_gen02); comparison of the optimization of the pre-filter when using the exact result and when limiting the accuracy to 4 digits (bo_prefi_op) ex1_sim_Vgl_und.slx ex1_sim_Vgl_del.slx ex1_sim_Vgl_del_FO.slx ex1_sim_Vgl_del_FO_4d.slx
Vran21_ex2_par_po39_filpla.m Plant with multiple poles (2-fold) and dead time (= half time constant), controller with essential filter time constant for D-terms (much larger than Simulink default), application of bo_u_gen02 for optimization of PID, PID2 and PID3 controllers and for comparison application of bo_d_gen for optimization of PID and PID2 controllers Vran21_ex2_sim_po39_filpla.slx
Vran21_ex4_par.m Plant with multiple poles (3-fold) and dead time (= time constant) , controller with different filter time constants for D-terms (approx. 0.1 to 0.2-fold time constant), application of bo_u_gen02 for optimization of PID2, PID3 and PID4 controllers Vran21_ex4_sim.slx
Vran21_ex7_plus_par.m Plant with 4 different first-order time-delay elements, controller with 2nd order filter polynomial for D-terms, application of bo_u_gen02 to optimize PID2 controller, application of bo_d_gen to optimize PID controller, application of bo_d_gen02 to optimize PID2 controller, application of bo_prefi_op to optimize prefilter Vran21_ex7_plus_sim.slx
Vran09_ex01till04_par.m Four different plants: (1) 2 poles, (2) zero, pole and double pole , (3) negative zero, double pole, (4) 8-fold pole and dead time (= double time constant); all controllers with essential filter time constant for D-terms (much larger than Simulink default), application of bo_u_gen02 to optimize PID controllers, application of bo_d_gen to optimize PID controllers, application of bo_prefi_op to optimize pre-filters Vran09_ex01_optprefi_sim.slx
Vran09_ex02_optprefi_sim.slx
Vran09_ex03_optprefi_sim.slx
Vran09_ex04_optprefi_sim.slx
Vran09_ex05_par.m Plant with gain and denominator polynomial of 2nd order, controller with filter time constant for D-terms, application of bo_u_gen02 for optimization of PID controller, application of bo_d_gen02 for optimization of PID controller, application of bo_prefi_op for optimization of prefilter Vran09_ex05_sim.slx
cv_PI_1till4_par.m
cv_PI_5till8_par.m
cv_PI_1_2and5_6_par.m
Four plants each from eight different plants: (1) dead time and first-order delay-element, (2) two first-order delay-elements, (3),(4),(6),(7) dead time and structure of an oscillating element - various parameters, (5) oscillating element and first-order delay-element, (8) second order oscillating element and first-order delay-element; PI controller optimization using bo_u_gen and bo_d_gen, application of bo_prefi_op for pre-filter optimization cv_PI_1till4_sim.slx
cv_PI_5till8_sim.slx
cv_PI_1_2and5_6_sim.slx
cv_PID_1till4_par.m
cv_PID_5till8_par.m
cv_PID_3_4and5_7_par.m
Four plants each from eight different plants: (1) dead time and first-order delay-element, (2) two first-order delay-elements, (3),(4),(6),(7) dead time and structure of an oscillating element - various parameters, (5) oscillating element and first-order delay-element, (8) second order oscillating element and first-order delay-element; PID controller optimization using bo_u_gen and bo_d_gen, application of bo_prefi_op for pre-filter optimization cv_PID_1till4_sim.slx
cv_PID_5till8_sim.slx
cv_PID_3_4and5_7_sim.slx
case1_bo_d_par.m Plant with 2 first-order time-delay elements and 1 integrator; comparison of the optimization of a PID controller based on the Magnitude Optimum for delayed inputs using bo_d_speso with the optimization based on the Naslin Polynomial Method (double ratios) using dr_d_wedz case1_bo_d_sim.slx
case2_bo_d_par.m Plant with 3 first-order time-delay elements; comparison of the optimization of a PID controller using bo_d_gen, bo_d_speso and dr_d_wedz; example for pre-filter optimization of different order using bo_prefi_op case2_bo_d_sim.slx
case5_bo_d_par.m Plant with 1 first-order time-delay element and 2 integrators; comparison of the optimization of a PID controller based on the Magnitude Optimum for delayed inputs using bo_d_gen with the optimization based on the Naslin Polynomial Method (double ratios) using dr_d_wedz in two variants: without and with double zero of the controller case5_bo_d_sim.slx
bo_d_case0_01_par.m Plant: 2 first-order time-delay elements; controller: PI; optimization: Magnitude Optimum for delayed inputs, variation of time constants, comparison of the results of bo_d_gen and bo_d_PI bo_d_case0_01_sim.slx
bo_d_case1_01_par.m Plant: 2 first-order time-delay elements and 1 integrator; controller: PID; optimization: Magnitude Optimum for delayed inputs, variation of time constants, comparison of the results of bo_d_gen and bo_d_speso bo_d_case1_01_sim.slx
bo_d_case2_01_par.m Plant: 3 first-order time-delay elements; controller: PID; optimization: Magnitude Optimum for delayed inputs, variation of time constants, comparison of the results of bo_d_gen and bo_d_speso bo_d_case2_01_sim.slx
bo_d_case3_01_par.m Plant: 1 oscillation element and 1 first-order time-delay element; controller: PID; optimization: Magnitude Optimum for delayed inputs, variation of the two time constants, comparison of the results of bo_d_gen and bo_d_speso bo_d_case3_01_sim.slx
bo_d_case4_01_par.m Plant: 1 oscillation element and 1 integrator; controller: PID and 1 first-order time-delay element; optimization: Magnitude Optimum for delayed inputs, variation of integrator time constant, calculation with bo_d_gen bo_d_case4_01_sim.slx
bo_d_case4_02nae_par.m Plant: 1 oscillation element and 1 integrator; controller: PID and 1 first-order time-delay element; optimization: Magnitude Optimum for delayed inputs, variation of integrator time constant, approximation for the product of oscillation element and first-order time-delay element in the controller, comparison of the results of bo_d_gen and bo_d_speso bo_d_case4_02nae_sim.slx
bo_check_01_par.m Plant: dead time and 3 first-order time-delay elements; controller: PID; optimization: Magnitude Optimum for undelayed (bo_u_gen)and delayed (bo_d_gen) inputs; verification of the fulfilment of the first 3 basic equations of the Magnitude Optimum for both optimizations (bo_check), for comparison additionally simulation with optimized pre-filter (bo_prefi_op) bo_check_01_sim.slx
bo_d_pltgen_01_par.m Plant: 1 third-order time-delay element and 1 first-order time-delay element; controller: PID and PID2; optimization: Magnitude Optimum for undelayed inputs using bo_u_gen and for delayed inputs with LTI definition of the transfer functions using bo_d_pltgen, pre-filter optimization using bo_prefi_op bo_d_pltgen_01_sim.slx
bo_prefi_op02_01_par.m Plant: 3 first-order time-delay elements; controller: PID; optimization: Magnitude Optimum for undelayed inputs using bo_u_gen, Magnitude Optimum for delayed inputs with LTI definition of the transfer functions using bo_d_pltgen and Naslin Polynomial Methode (double ratio) using dr_d_wedz; pre-filter optimization inclusive of a pre-filter for the reference system using bo_prefi_op02 bo_prefi_op02_01_sim.slx
Pp_t1ex4_par.m Plant: 1 first-order time-delay element of 5th order with 2 of them non-minimum phase; controller: PID; optimization: Magnitude Optimum for undelayed inputs using bo_u_gen and Magnitude Optimum for delayed inputs using bo_d_gen; parameter variant Pp_t1ex4_sim.slx
Pp_t1ex5_par.m Plant: 5 first-order time-delay elements, 2 large zeros; controller: I, PI and PID; optimization: Magnitude Optimum for undelayed inputs using bo_u_gen and Magnitude Optimum for delayed inputs using bo_d_gen Pp_t1ex5_sim.slx
Pp_t2ex3_par.m Plant: 1 integrator, 1 first-order time-delay element of 5th order with 2 of them non-minimum phase; controller: PI and PID; optimization: Magnitude Optimum for delayed inputs using bo_d_gen Pp_t2ex3_sim.slx
Pp_t2ex4_par.m
Pp_t2ex4_par_WithCheck.m
Plant: 1 integrator, 1 first-order time-delay element of 5th order, dead-time; controller: PID; optimization: Magnitude Optimum for delayed inputs using bo_d_gen; variant applying accuracy check bo_check Pp_t2ex4_sim.slx
Pp_t2ex5_par.m Plant: 1 integrator, 5 first-order time-delay elements, 1 large zero; controller: PI and PID; optimization: Magnitude Optimum for delayed inputs using bo_d_gen Pp_t2ex5_sim.slx
Pp_t3ex1plus_par.m Plant: 1 or 2 integrators, 1 first-order time-delay element of 5th order; controller: PID and PID2; optimization: Magnitude Optimum for delayed inputs using bo_d_gen Pp_t3ex1plus_sim.slx
Pp_t3ex2plus_par.m Plant: 1 or 2 integrators, 5 first-order time-delay elements, dead time; controller: PID and PID2; optimization: Magnitude Optimum for delayed inputs using bo_d_gen Pp_t3ex2plus_sim.slx
Pp_t3ex3plus_par.m Plant: 1 or 2 integrators, 5 first-order time-delay elements with 2 of them non-minimal phase; controller: PID and PID2; optimization: Magnitude Optimum for delayed inputs using bo_d_gen Pp_t3ex3plus_sim.slx
LK_ex071_par.m Plant: 1 first-order time-delay element, 1 large dead time; controller: PI and PID; optimization: Magnitude Optimum for undelayed inputs using bo_u_gen and Magnitude Optimum for delayed inputs using bo_d_gen; comparison to YOULA parametrization LK_ex071_sim.slx
LK_ex072_par.m Plant: 2 first-order time-delay elements, 2 large zeros; controller: PI and PID; optimization: Magnitude Optimum for undelayed inputs using bo_u_gen and Magnitude Optimum for delayed inputs using bo_d_gen; comparison to YOULA parametrization LK_ex072_sim.slx

Home page
Dr. G.-H. Geitner
Master page
BOD
Master page
Toolbox BOD
Master page
Bond Graph
Master page
BO
Master page Modelling and Simulation
of event-driven Systems
Master page
Symbolic structure definition
Chair Electrical Machines
and Drives - TU Dresden