Luận Văn Bài tập dài môn học Lý thuyết điều khiển tự động

Thảo luận trong 'Cơ Khí' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    167
    Điểm thành tích:
    0
    Xu:
    0Xu
    Bài tập dài môn học Lý thuyết điều khiển tự động

    V.Tính tham số tối ưu của bộ điều khiển PID dùng hàm Least-quares.
    1.Hàm Least-quares.

    *Yêu cầu của đề bài là tìm các tham số Kp,Ki,Kd sao cho tổng sai số trong suốt quá trình quá độ:

    J= là nhỏ nhất (min).
    *Do hệ thống xét là ổn định nên ta chỉ xét trong khoảng thời gian [0 NT]
    N đủ lớn đế có sai số taị đó gần bằng 0.
    T thời gian lấy mẫu.
    Ei phụ thuộc vào các tham số PID
    J=
    2.Các hàm để tính toán các tham số tối ưu PID.
    a) Hàm asignpid:
    function assignpid(pid)
    assignin('base','Kp',pid(1));
    assignin('base','Ki',pid(2));
    assignin('base','Kd',pid(3));
    *Thực hiện gán 3 tham số của khâu PID bằng các tham số Kp,Ki,Kd.
    b) Hàm yout_1:
    function e=yout_1(pid,model,tspan)
    opt=simset('solver','ode5');
    assignpid(pid);
    [t,x,y]=sim('bai_tap',tspan,opt);
    e=y-1;
    *Thực hiện các chức năng:
    -Tính ra sai số.
    -Gán các tham số.


    -Tự chạy cửa sổ Simulink
    c) Hàm lsqpid:


    function pid=lsqpid(pid0,model,tspan)
    options=foptions;
    options=[1 0.01 0.01];


    pid=leastsq('yout_1',pid0,options,[],'bai_tap',tspan);


    3.Quá trình tính toán trên máy:
    a)Sơ lược quá trình tính:
    -Dùng 2 cửa sổ Command window &Simulink trong Matlab.
    -Với sơ kiện ban đầu Simulink sẽ chạy và đưa ra kết quả sai số cho Command.Command tính toán và đưa trở lại kết quả thm số PID cho Simulink.Simulink lại chạy và đưa ra tham số .Quá trình sẽ kết thúc khi mức sai số là không thay đổi.
    b)Các bước tiến hành.

     
Đang tải...