اطلاعیه

Collapse
No announcement yet.

کنترل مدرن

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    کنترل مدرن

    من یه پروژه برای درس کنترل مدرن دارم که از مثال های کتاب باید استفاده شه.برنامه نوشته شده س و برای مثال کتاب جواب میده ولی از روی مقاله ی داده شده میخوایم برنامه رو تغییر بدیم.توی این حالت نمودار حلقه بسته ی ژنراتور با پاسخ ردیاب یکی در میاد که نباید اینجوری باشه و ماتریس c رو طبق مقاله تعریف میکنیم ولی توی نمودار تاثیر نداره.توی مثال کتاب ورودی پله ی واحده ولی ما باید تغییرش بدیم که نمیدونم از کجا میشه تغییرش داد.کسی میتونه کمکم کنه؟
    این برنامه ی مثال کتابه:
    clear all
    %----- PARAMETERS DEFINITION -----
    a11=-0.0507;
    a12=-3.861;
    a21=-0.00117;
    a22=-0.5164;
    a31=-0.000129;
    a32=1.4168;
    a33=-0.4932;
    b1=0;
    b2=-0.0717;
    b3=-1.645;
    g=9.81;
    %----- OPEN-LOOP SYSTEM: X_dot=AX+BU ----
    A=[a11 a12 0 -g;a21 a22 1 0;a31 a31 a33 0;0 1 0 0];
    B=[b1;b2;b3;0];
    %----- OPEN-LOOP ANALYSIS ----------------
    openloop_eigenvalues=eig(A)
    controlability_rank=rank(ctrb(A,B));
    %----- STATE FEEDBACK DESIGN ------------
    P=[-0.9+1.9i -0.9-1.9i -1.8+0.6i -1.8-.6i];
    % Desired Closed-Loop Ploes
    K=acker(A,B,P); % State-Feedback Gain
    %--------------------------------------------
    %----- SIMULATION OF REGULATION PROBLEM -----
    %--------------------------------------------
    t=.01:.01:10; % simulation time
    [rt,ct]=size(t);
    x(:,1)=[0;1;0;0]; % initial condition
    for k=2:ct
    u(k)=-K*x(:,k-1);
    x(:,k)=x(:,k-1)+.01*(A*x(:,k-1)+B*u(k));
    end
    %~~~~~ PLOTTING STATES ~~~~~
    subplot(2,2,1);plot(t,x(1,);
    title('Regulation Problem, state:X_1'
    subplot(2,2,2);plot(t,x(2,);
    title('Regulation Problem, state:X_2'
    subplot(2,2,3);plot(t,x(3,);
    title('Regulation Problem, state:X_3'
    subplot(2,2,4);plot(t,x(4,);
    title('Regulation Problem, state:X_4'
    %~~~~~ PLOTTING CONTROL SIGNAL ~~~~
    figure;plot(t,u);
    title('Regulation Problem, Control Signal (u)'
    %*****************************
    %----------------------------------------------
    %------ SIMULATION OF TRACKING PROBLEM --------
    %----------------------------------------------
    C=[1 0 0 0]; % selecting 'teta' as system output
    D=0;
    CL_sys=ss(A-B*K,B,C-D*K,D); % Closed-Loop System
    CL_gain=dcgain(CL_sys);
    % DC-Gain of closed-loop system
    K_r=inv(CL_gain); % control signal: u=-K*x+K_r*yd
    yd=1; % desired value for output (teta)
    %~~~ SIMULATION ~~~
    x(:,1)=[0;1;0;0]; % initial condition
    for k=2:ct
    u(k)=-K*x(:,k-1)+K_r*yd;
    x(:,k)=x(:,k-1)+.01*(A*x(:,k-1)+B*u(k));
    end
    %~~~~~ PLOTTING STATES ~~~~~
    figure;subplot(2,2,1);plot(t,x(1,);
    title('Tracking Problem, state X_1'
    subplot(2,2,2);plot(t,x(2,);
    title('Tracking Problem, state:X_2'
    subplot(2,2,3);plot(t,x(3,);
    title('Tracking Problem, state:X_3'
    subplot(2,2,4);plot(t,x(4,);
    title('Tracking Problem, both:X_4 and Output'
    %~~~~~ PLOTTING CONTROL SIGNAL ~~~~
    figure;plot(t,u);
    title('Tracking Problem, Control Signal'
    ما باید برای مشخصات زیر این برنامه رو بنویسیم
    [A=[0 0 1 0,0 0 0 1,0 2165 -53.6 0,0 -2797 53.6 0
    B=[0,0,99,-99[
    C=[1 1 0 0
    y=teta + alpha

    #2
    پاسخ : کنترل مدرن

    بسم الله الرحمن الرحیم
    سلام
    فکر میکنم برای تغییر استپ باید b1 .b2 .b3 رو تغییر بدید
    استپ:b1,b2=0
    خطی:b1=0
    سهمی:همه مقادیر دارند
    اگه بجای B سینوس تعریف کنید سینوس میشه
    یا علی
    كنترل
    انسان اول بايد روي خودش كنترل داشته باشه
    بعد بخواد دنيا رو كنترل كنه.و الا دنيا خودش رو كنترل مي كنه بعد شما رو كنترل ميكنه.پس شناخت منشا بهترين كنترل هاست

    دیدگاه


      #3
      پاسخ : کنترل مدرن

      کسی یه مقاله خوب واسه شبیه سازی نداره؟

      دیدگاه


        #4
        پاسخ : کنترل مدرن

        سلام یه پروژه دارم در مورد کنترل مدرن. ( کنترل ردیابی موقعیت و سرعت موتور DC)
        کامله کامل. تمامی مراحل کتاب کنترل مدرن رو شامل میشه. از نقطه تعادل گرفته تا رویت پذیری و کنترل پذیری و فیدبک حالت، کنترلر حالت، پایداری لیاپانوف، کنترل بهینه (معادله ریکاتی) ، معادلات دینامیکی سیستم، محاسبه rank و null space و رسم پاسخ فرکانسی، پاسخ ضربه، پاسخ پله، پاسخ به ورودی سینوسی، رسم پاسخ فیدبک حالت و مقایسه با حالت ناپایدار و غیره
        مقاله + ام فایل متلب + گزارش word و PDF + فایل آموزش تمامی دستورات

        دیدگاه

        لطفا صبر کنید...
        X