MATLAB
2.35K subscribers
202 photos
24 videos
143 files
280 links
Download Telegram
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________

Y(s) = G(s) R(s)
R(s)= 1/s : Y(s)=G(s) / sپاسخ پله
R(s)= 1 Y(s)=G(s) = s G(s) / sپاسخ ضربه
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________

مثال :
پاسخ ضربه سیستم زیر را بیابید:
G(s)=(s+1)/((s+3)(s+2))
clc
clear

s=tf('s');
G=(s+1)/(s+3)/(s+2);
[Y,t,x]=step(s*G);
plot(t,Y)
grid on
title('Unit-Impulse Response')
xlabel('Time (sec)')
ylabel('Amplitude')

____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/drfc
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
اما در متلب برای بدست آوردن پاسخ ضربه یک سیستم تابع impulse وجود دارد.
impulse(sys)
impulse(sys,Tfinal)
impulse(sys,t)
[y,t] = impulse(sys)
[y,t] = impulse(sys,Tfinal)
y = impulse(sys,t)
[y,t,x] = impulse(sys)
[y,t,x,ysd] = impulse(sys)
مثال :
پاسخ ضربه سیستم زیر را بیابید:
G(s)=(s+1)/((s+3)(s+2))
clc
clear

s=tf('s');
G=(s+1)/(s+3)/(s+2);
impulse(G)
__________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/5lAz
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
قسمت دوم :
بررسی پاسخ شیب سیستم
برای یافتن پاسخ شیب با توجه به این که پاسخ شیب انتگرال پاسخ پله است بنابراین میتوان برای بدست آوردن پاسخ شیب از پاسخ پله سیستم G(s) / s استفاده کرد.

__________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
مثال :
پاسخ شیب سیستم زیر را بیابید:
G(s)=(s+1)/((s+3)(s+2))
clc
clear

s=tf('s');
G=(s+1)/(s+3)/(s+2);
[Y,t,x]=step(G/s,3);
plot(t,Y)
grid on
title('Unit-Ramp Response')
xlabel('Time (sec)')
ylabel('Amplitude')

__________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/P6pg
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
قسمت سوم:
پاسخ به ورودی دلخواه:
دستور lsim در متلب برای بدست آوردن پاسخ سیستم به ورودی دلخواه است:
lsim(sys,u,t)
lsim(sys,u,t,x0)

مثال :
پاسخ شیب سیستم زیر را بیابید:
G(s)=(s+1)/((s+3)(s+2))
clc
clear

s=tf('s');
G=(s+1)/(s+3)/(s+2);
t=0:0.01:3;
u=t;
[Y,T,X]=lsim(G,u,t);
plot(T,Y)
grid on
title('Unit-Ramp Response')
xlabel('Time (sec)')
ylabel('Amplitude')

__________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/6h5S
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
مثال:
پاسخ سیستم زیر به ورودی sin(2t) را بیابید:
G(s)=(s+1)/((s+3)(s+2))
clc
clear

s=tf('s');
G=(s+1)/(s+3)/(s+2);
t=0:0.01:3;
u=sin(2.*t);
[Y,T,X]=lsim(G,u,t);
plot(T,Y)
grid on
title('Sin(2t) Response')
xlabel('Time (sec)')
ylabel('Amplitude')

__________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/6P6o
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
مثال:
پاسخ سیستم زیر به ورودی sin(2t) و شرایط اولیه y=0.1 را بیابید:
G(s)=(s+1)/((s+3)(s+2))
پاسخ:
ابتدا باید یک تحقق از سیستم بدست آوریم:
[A,B,C,D]=tf2ss([1 1],[1 5 6])

A =
-5 -6
1 0
B =
1
0
C =
1 1
D =

0________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
بنابراین شرایط اولیه تمام پاسخ های دستگاه x1+x2=0.1 می تواند باشد.
clc
clear

[A,B,C,D]=tf2ss([1 1],[1 5 6]);
sys=ss(A,B,C,D);
t=0:0.01:3;
u=sin(2.*t);
[Y,T,X]=lsim(sys,u,t,[0.05,0.05]);
plot(T,Y)
grid on
xlabel('Time (sec)')
ylabel('Amplitude')
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/BeUj
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
تذکر مهم :
در مثال فوق یک تحقق از سیستم را بدست آوردیم و همچنین شرایط اولیه را برابر جواب دلخواهی از دستگاه x1+x2=0.1 در نظر گرفتیم. با تغییر تحقق و یا با در نظر گرفتن جوابی دیگر از دستگاه x1+x2=0.1 پاسخ سیستم (پاسخ به شرایط اولیه و در نتیجه پاسخ کلی) تغییر خواهد کرد. توجه به این نکته لازم است که ما در عمل شرایط اولیه را برای یک تحقق مشخص داریم و بنابراین در عمل شرایط اولیه اگر مشخص باشد باید در مدل فضای حالت باشیم

____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
مثال :
پاسخ سیستم زیر به شرایط اولیه y=0.1 را بیابید:
G(s)=(s+1)/((s+3)(s+2))
پاسخ:
ابتدا باید یک تحقق از سیستم بدست آوریم:
[A,B,C,D]=tf2ss([1 1],[1 5 6])

A =

-5 -6
1 0


B =

1
0


C =

1 1


D =

0
بنابراین شرایط اولیه تمام پاسخ های دستگاه x1+x2=0.1 می تواند باشد.

____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
clc
clear

[A,B,C,D]=tf2ss([1 1],[1 5 6]);
sys=ss(A,B,C,D);
t=0:0.01:3;
[Y,T,X]=initial(sys,[0.05,0.05],t);
plot(T,Y)
grid on
title('Response to Initial Conditions')
xlabel('Time (sec)')
ylabel('Amplitude')


____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/MuRF
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
___مثال:
قاعده جمع آثار را برای سیستم زیر و نیز ورودی(sin(2t و شرایط اولیه[ X0=[0.1,0.3بررسی کنید.
A=[-5 -6; 1 0] ; B=[1;0] ; C=[1 1] ; D=0
clc
clear

A=[-5 -6;1 0];
B=[1;0];
C=[1 1];
D=0;
sys=ss(A,B,C,D);
t=0:0.05:3;
u=sin(2.*t);
[Y0,T0,X0]=initial(sys,[0.1,0.3],t);
[Yu,Tu,Xu]=lsim(sys,u,t);
Y=Yu+Y0;
T=Tu;
plot(T,Y)

hold on
[Yy,Tt,Xx]=lsim(sys,u,t,[0.1,0.3]);
plot(Tt,Yy,'or')
grid on
xlabel('Time (sec)')
ylabel('Amplitude')
legend('y=yu+y0','y=y')
همانظور که میبینیم هر دو نمودار روی هم واقع شده اند.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/QbF2
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
قسمت پنجم:
استفاده از ode45 برای یافتن پاسخ یک سیستم به ورودی و شرایط اولیه دلخواه:
در این قسمت میخواهیم پاسخ یک سیستم کلی (خطی – غیر خطی – متغیر با زمان) به ورودی و شرایط اولیه دلخواه را بدست آوریم.
برای این کار سیستم را توسط مدل فضای حالت مدل میکنیم. در واقع به طور ساده معدلات دیفرانسیل حاکم بر سیستم را مینویسیم. سپس از دستور ode45 برای حل این معادلات استفاده میکنیم.
مثال:
پاسخ سیستم زیر به ورودی( sin(2t و شرایط اولیه[ X0=[0.1,0.3 را بیابید.
A=[-5 -6;1 0] ; B=[1;0] ; C=[1 1] ; D=0

____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
حل:
ابتدا یک تابع مینویسیم که سیستم را مدل میکند:
function dX=sys(t,X)

dX=zeros(2,1);

u=sin(2*t);

dX(1)=-5*X(1)-6*X(2)+u;
dX(2)=X(1);
سپس از دستور ode45 استفاده میکنیم:
X0=[0.1,0.3];
t=0:0.05:3;
[T,X]=ode45(@sys,t,X0);
y=X(:,1)+X(:,2); % y=c*x+d*u
plot(T,y)
grid on
xlabel('Time (sec)')
ylabel('Amplitude')

____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/oALE
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
تذکر:
برتری روش اخیر این است که هیچ محدودیتی در نوع سیستم نداریم. یعنی سیستم میتواند غیرخطی نیز باشد.
مثال:
سیستمی با معادله دیفرانسیل غیرخطی زیر توصیف میشود. پاسخ آن را به ورودی sin(2t) بیابید. فرض کنید شرایط اولیه درصورت در نظر گرفتن x و مشتق آن به عنوان حالت های سیستم برابر[1,-2] باشد. و خروجی سیستم x میباشد.
x ̈=-x^2 x ̇+u
پاسخ:
ابتدا مدل فضای حالت آن را میابیم:
با فرض متغیرهای حالت به صورت x_1=x و x_2=x ̇ داریم.
x ̇_1=x_2
x ̇_2=〖-x_1^2 x〗_2+u

____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/oALE
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه هفتم
💡 استاد : مهندس ورمقانی
____________________________
حال که مدل فضای حالت را داریم مانند مثال قبل یک تابع برای توصیف آن نوشته و سپس از دستور ode45 استفاده میکنیم:
function dX=sys(t,X)

dX=zeros(2,1);

u=sin(2*t);

dX(1)=X(2);
dX(2)=-X(1)^2*X(2)+u;
حال از دستور ode45 استفاده میکنیم:
X0=[1,-2];
t=0:0.05:10;
[T,X]=ode45(@sys,t,X0);
y=X(:,1); %y=x
plot(T,y)
grid on
xlabel('Time (sec)')
ylabel('Amplitude')

____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_هفتم
#ورمقانی
#کنترل_مدرن
#مثال

© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/ZoFc
Forwarded from test matlab
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from test matlab
This media is not supported in your browser
VIEW IN TELEGRAM