control-system/Assignment 6 - Tuning PID
2022-09-29 12:14:07 +07:00
..
assign_6_pso.ipynb Add files via upload 2022-09-29 12:14:07 +07:00
assign_6_pso.m figure system respons 2022-09-22 19:58:45 +07:00
Presentasi Sistem Kendali Pre-UTS.pptx add ppt final 2022-09-29 12:09:35 +07:00
README.md Update assign 6 documentation 2022-09-22 19:55:41 +07:00

Improved Particle Swarm Optimization on PID Tuning

This dir is belong to Control System class contains with Tuning PID with ZN1 and PSO on motor system.

Software

This program ran in Matlab

Variables

s = tf('s'); defines s as 'frequency domain' for transfer function and will be used further.

J = 0.01;
b = 0.1;
K = 0.01;
R = 1;
L = 0.5;

Those variable comes from BLDC control system.

c1=2; c2=2; w_max = 1; w_min = 0.1; particles=50; iterations=100;
var=3; e_max = 1; e_min=0.1;

% Search limit
lim_min = 0;
lim_max = 2500;

Variable above is the constant for PSO tuning.

Testing

ITAE Cost Function

itae

Step Response

step

Ramp Response

ramp

Impulse Response

impulse

Acceleration Response

acceleration

Results

Elapsed time is 18.701024 seconds.

Before PSO-PID

        RiseTime: 1.0161
    SettlingTime: 1.8471
     SettlingMin: 0.0819
     SettlingMax: 0.0907
       Overshoot: 0
      Undershoot: 0
            Peak: 0.0907
        PeakTime: 3.0168
         SSError: 0.9095

After PSO-PID

Kp = 853.3161

Ki = 74.1078

Kd = 2.4810e+03

        RiseTime: 9.5287e-04
    SettlingTime: 0.0012
     SettlingMin: 0.9949
     SettlingMax: 0.9976
       Overshoot: 0
      Undershoot: 0
            Peak: 0.9976
        PeakTime: 0.0036
         SSError: 0.0024

Notes

Contact nanda.r.d@mail.ugm.ac.id for more information

You can access the source code here github.com/nandard/control-system.git