🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/WZ2z
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/WZ2z
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/tp4D
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/tp4D
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
در شکل اول دیاگرام بود را توسط دستور bode رسم کردیم در شکل 2 پس از بدست آوردن مقادیر دامنه و فاز و فرکانس متناظرشان با استفاده از دستور semilogx مقادیر دامنه و فاز را رسم کردیم در این شکل مقدار دامنه بر حسب dB نیست. در شکل 3 نیز مقادیر دامنه و فاز را به کمک دستور semilogx رسم کردیم اما مقدار دامنه را برحسب dB تبدیل کردیم.
دستور semilogx :
این دستور شبیه به دستور plot عمل میکند با این تفاوت که محور x ها را در اسکیل لگاریتمی نمایش میدهد.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
در شکل اول دیاگرام بود را توسط دستور bode رسم کردیم در شکل 2 پس از بدست آوردن مقادیر دامنه و فاز و فرکانس متناظرشان با استفاده از دستور semilogx مقادیر دامنه و فاز را رسم کردیم در این شکل مقدار دامنه بر حسب dB نیست. در شکل 3 نیز مقادیر دامنه و فاز را به کمک دستور semilogx رسم کردیم اما مقدار دامنه را برحسب dB تبدیل کردیم.
دستور semilogx :
این دستور شبیه به دستور plot عمل میکند با این تفاوت که محور x ها را در اسکیل لگاریتمی نمایش میدهد.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
مثلا در مثال قبل اگر به جای semilogx از دستور plot استفاده کنیم داریم:
clc
clear
close all
num=[1 1];
den=[1 2 3];
[mag,phase,w]=bode(num,den);
subplot(2,1,1)
plot(w,20*log10(mag))
grid on
subplot(2,1,2)
plot(w,phase)
grid on
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/ePij
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
مثلا در مثال قبل اگر به جای semilogx از دستور plot استفاده کنیم داریم:
clc
clear
close all
num=[1 1];
den=[1 2 3];
[mag,phase,w]=bode(num,den);
subplot(2,1,1)
plot(w,20*log10(mag))
grid on
subplot(2,1,2)
plot(w,phase)
grid on
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/ePij
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
رابطه بین منحنی فاز و منحنی دامنه در سیستم های مینیمم فاز:
در سیستم های مینیمم فاز با مشخص بودن نمودار اندازه در همه فرکانس ها میتوان نمودار فرکانس را هم به دست آورد و برعکس. در سیستم های مینیمم فاز مقدار زاویه فاز در فرکانس بینهایت برابر است با -90(q-p) که q و p به ترتیب درجه مخرج و صورت تابع تبدیل حلقه باز سیستم است.
در همه سیستم ها چه مینیمم فاز و چه نامینیمم فاز شیب نمودار لگاریتم اندازه برابر -20(q-p) است.
مثال :
P(s)=(s+1)/(s^2+2s+3)
clc
clear
close all
num=[1 1];
den=[1 2 3];
bode(num,den);
grid on
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/hLmn
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
رابطه بین منحنی فاز و منحنی دامنه در سیستم های مینیمم فاز:
در سیستم های مینیمم فاز با مشخص بودن نمودار اندازه در همه فرکانس ها میتوان نمودار فرکانس را هم به دست آورد و برعکس. در سیستم های مینیمم فاز مقدار زاویه فاز در فرکانس بینهایت برابر است با -90(q-p) که q و p به ترتیب درجه مخرج و صورت تابع تبدیل حلقه باز سیستم است.
در همه سیستم ها چه مینیمم فاز و چه نامینیمم فاز شیب نمودار لگاریتم اندازه برابر -20(q-p) است.
مثال :
P(s)=(s+1)/(s^2+2s+3)
clc
clear
close all
num=[1 1];
den=[1 2 3];
bode(num,den);
grid on
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/hLmn
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
در مثال فوق q=2 و p=1 بنابراین مقدار فاز نهایی باید برابر با -90(q-p)=-90 درجه باشد که از دیاگرام بود مشخص است.
همچنین مقدار شیب در فرکانسهای نهایی برابر -20(q-p)=-2 dB/dec که از نمودار بود مشخص است.
در واقع اگر نمودار بود یک سیستم را داشته باشیم به کمک روابط اخیر میتوانیم درجه صورت و مخرج تابع تبدیل متناظرش را بیابیم. کافی است یک دستگاه دو معادله دو مجهول را حل کنیم.
ارتباط بین نمودار بود و نوع سیستم :
برای تعیین نوع(تیپ) سیستم به شیب نمودار اندازه در حوالی صفر توجه میکنیم برای سیستم با تیپ n این شیب برابر -20n میباشد.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
در مثال فوق q=2 و p=1 بنابراین مقدار فاز نهایی باید برابر با -90(q-p)=-90 درجه باشد که از دیاگرام بود مشخص است.
همچنین مقدار شیب در فرکانسهای نهایی برابر -20(q-p)=-2 dB/dec که از نمودار بود مشخص است.
در واقع اگر نمودار بود یک سیستم را داشته باشیم به کمک روابط اخیر میتوانیم درجه صورت و مخرج تابع تبدیل متناظرش را بیابیم. کافی است یک دستگاه دو معادله دو مجهول را حل کنیم.
ارتباط بین نمودار بود و نوع سیستم :
برای تعیین نوع(تیپ) سیستم به شیب نمودار اندازه در حوالی صفر توجه میکنیم برای سیستم با تیپ n این شیب برابر -20n میباشد.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
مثال :
P(s)=(s+1)/(s^2 (s^2+2s+3))
clc
clear
close all
s=tf('s');
sys=(s+1)/(s^2)/(s^2+2*s+3);
w=logspace(-3,1,100);
bode(sys,w);
grid on
نتیجه :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/F1DV
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
مثال :
P(s)=(s+1)/(s^2 (s^2+2s+3))
clc
clear
close all
s=tf('s');
sys=(s+1)/(s^2)/(s^2+2*s+3);
w=logspace(-3,1,100);
bode(sys,w);
grid on
نتیجه :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/F1DV
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
همانطور که از شکل فوق مشخص است شیب در حوالی فرکانس صفر برابر با 40 dB/dec است. که نشان میدهد سیستم از تیپ 2 میباشد.
در مثال فوق چون هدف تعیین تیپ سیستم بود بنابراین بردار w را به گونهای انتخاب کردیم تا مقادیر دقیقتری در حوالی صفر داشته باشیم. یعنی فرکانسها را از 0.001 تا 10 در نظر گرفتیم.
رابطه دیاگرام بود با ثابت خطای مکان، سرعت و شتاب :
با توجه به تیپ سیستم (شیب منحنی اندازه حوالی صفر) میتوان برای سیستم های نوع صفر k_p و برای سیستم های نوع یک k_v و برای سیستم های نوع دو k_a را بدست آوریم. برای سیستم نوع صفر دیاگرام اندازه با یک خط افقی شروع میشود و محل برخورد این خط با محور اندازه برابر 20 log〖k_p 〗 میباشد. برای سیستم با تیپ یک خط اولیه با شیب 20- را امتداد میدهیم عرض نقطه برخورد این خط با خط ω=1 برابر 20 log〖k_v 〗 میباشد. برای سیستم با تیپ دو خط اولیه با شیب 40- را امتداد میدهیم عرض نقطه برخورد این خط با خط ω=1 برابر 20 log〖k_a 〗 میباشد.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
همانطور که از شکل فوق مشخص است شیب در حوالی فرکانس صفر برابر با 40 dB/dec است. که نشان میدهد سیستم از تیپ 2 میباشد.
در مثال فوق چون هدف تعیین تیپ سیستم بود بنابراین بردار w را به گونهای انتخاب کردیم تا مقادیر دقیقتری در حوالی صفر داشته باشیم. یعنی فرکانسها را از 0.001 تا 10 در نظر گرفتیم.
رابطه دیاگرام بود با ثابت خطای مکان، سرعت و شتاب :
با توجه به تیپ سیستم (شیب منحنی اندازه حوالی صفر) میتوان برای سیستم های نوع صفر k_p و برای سیستم های نوع یک k_v و برای سیستم های نوع دو k_a را بدست آوریم. برای سیستم نوع صفر دیاگرام اندازه با یک خط افقی شروع میشود و محل برخورد این خط با محور اندازه برابر 20 log〖k_p 〗 میباشد. برای سیستم با تیپ یک خط اولیه با شیب 20- را امتداد میدهیم عرض نقطه برخورد این خط با خط ω=1 برابر 20 log〖k_v 〗 میباشد. برای سیستم با تیپ دو خط اولیه با شیب 40- را امتداد میدهیم عرض نقطه برخورد این خط با خط ω=1 برابر 20 log〖k_a 〗 میباشد.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
مثال:
G(s)=1/(1+0.2s+0.04s^2 )(1+0.1s)
همانطور که مشخص است سیستم از تیپ 0 میباشد. به صورت تحلیلی داریم:
(k_p=lim)┬(s→0)〖1/(1+0.2s+0.04s^2 )(1+0.1s) 〗=1
حال دیاگرام بود را رسم میکنیم:
clc
clear
close all
s=tf('s');
sys=1/(1+0.2*s+0.04*s^2)/(1+0.1*s);
w=logspace(-3,1,100);
bode(sys,w);
grid on
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/ZiIg
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
مثال:
G(s)=1/(1+0.2s+0.04s^2 )(1+0.1s)
همانطور که مشخص است سیستم از تیپ 0 میباشد. به صورت تحلیلی داریم:
(k_p=lim)┬(s→0)〖1/(1+0.2s+0.04s^2 )(1+0.1s) 〗=1
حال دیاگرام بود را رسم میکنیم:
clc
clear
close all
s=tf('s');
sys=1/(1+0.2*s+0.04*s^2)/(1+0.1*s);
w=logspace(-3,1,100);
bode(sys,w);
grid on
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/ZiIg
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
بنابراین:
20 log〖k_p 〗=0 و بنابراین k_p=1 میباشد.
که همان نتیجه عملیات تحلیلی میباشد.
مثال :
G(s)=1/s(1+0.2s+0.04s^2 )(1+0.1s)
همانطور که مشخص است سیستم از تیپ 1 میباشد. به صورت تحلیلی داریم:
〖(k_v=lim)┬(s→0) s〗〖1/s(1+0.2s+0.04s^2 )(1+0.1s) 〗=1
حال به کمک دیاگرام بود :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
بنابراین:
20 log〖k_p 〗=0 و بنابراین k_p=1 میباشد.
که همان نتیجه عملیات تحلیلی میباشد.
مثال :
G(s)=1/s(1+0.2s+0.04s^2 )(1+0.1s)
همانطور که مشخص است سیستم از تیپ 1 میباشد. به صورت تحلیلی داریم:
〖(k_v=lim)┬(s→0) s〗〖1/s(1+0.2s+0.04s^2 )(1+0.1s) 〗=1
حال به کمک دیاگرام بود :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
یک خط اولیه با شیب 20- را امتداد میدهیم عرض نقطه برخورد این خط با خط ω=1 برابر 20 log〖k_v 〗 میباشد. این کار را توسط برنامه زیر انجام میدهیم:
clc
clear
close all
w=logspace(-1,2,1000);
s=tf('s');
sys=1/s/(1+0.2*s+0.04*s^2)/(1+0.1*s);
[MAG,phase,W]=bode(sys,w);
MAG_dB=20*log10(MAG);
for i=1:numel(MAG)
mag(1,i)=MAG_dB(1,1,i);
end
semilogx(W,mag)
grid on
hold on
slope=(mag(10)-mag(1))/(log10(w(10))-log10(w(1)))
l=slope.*(log10(w)-log10(w(1)))+mag(1);
plot(w,l)
plot([1,1],[-200,50])
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
یک خط اولیه با شیب 20- را امتداد میدهیم عرض نقطه برخورد این خط با خط ω=1 برابر 20 log〖k_v 〗 میباشد. این کار را توسط برنامه زیر انجام میدهیم:
clc
clear
close all
w=logspace(-1,2,1000);
s=tf('s');
sys=1/s/(1+0.2*s+0.04*s^2)/(1+0.1*s);
[MAG,phase,W]=bode(sys,w);
MAG_dB=20*log10(MAG);
for i=1:numel(MAG)
mag(1,i)=MAG_dB(1,1,i);
end
semilogx(W,mag)
grid on
hold on
slope=(mag(10)-mag(1))/(log10(w(10))-log10(w(1)))
l=slope.*(log10(w)-log10(w(1)))+mag(1);
plot(w,l)
plot([1,1],[-200,50])
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
در این برنامه پس از محاسبه مقدار اندازه و تبدیل آن برحسب dB مقادیر را در یک بردار به نام mag قرار میدهیم. سپس باید در فرکانسهای پایین یک خط بر نمودار اندازه مماس کنیم و عرض نقطه برخورد این خط با خط ω=1 را محاسبه کنیم. بنابراین ابتدا شیب خط مماس را بدست میآوریم (این شیب باید نزدیک به 20- باشد) سپس خط مورد نظر را رسم میکنیم. و در نهایت با رسم خط w=1 محل برخورد این دو خط را بدست میآوریم.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/myjy
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
در این برنامه پس از محاسبه مقدار اندازه و تبدیل آن برحسب dB مقادیر را در یک بردار به نام mag قرار میدهیم. سپس باید در فرکانسهای پایین یک خط بر نمودار اندازه مماس کنیم و عرض نقطه برخورد این خط با خط ω=1 را محاسبه کنیم. بنابراین ابتدا شیب خط مماس را بدست میآوریم (این شیب باید نزدیک به 20- باشد) سپس خط مورد نظر را رسم میکنیم. و در نهایت با رسم خط w=1 محل برخورد این دو خط را بدست میآوریم.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/myjy
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
20 log〖k_v 〗=0.007689
k_v=1.0008856
که همان نتیجه حاصل از روش تحلیلی است.
مثال :
G(s)=1/(s^2 (1+0.2s)(2+0.1s) )
همانطور که مشخص است سیستم از تیپ 2 میباشد. به صورت تحلیلی داریم:
ka=lims→0s21/(s^2 (1+0.2s)(2+0.1s) )=0.5
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
20 log〖k_v 〗=0.007689
k_v=1.0008856
که همان نتیجه حاصل از روش تحلیلی است.
مثال :
G(s)=1/(s^2 (1+0.2s)(2+0.1s) )
همانطور که مشخص است سیستم از تیپ 2 میباشد. به صورت تحلیلی داریم:
ka=lims→0s21/(s^2 (1+0.2s)(2+0.1s) )=0.5
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
حال به کمک دیاگرام بود :
خط اولیه با شیب 40- را امتداد میدهیم عرض نقطه برخورد این خط با خط ω=1 برابر 20 log〖k_a 〗 میباشد.
همان برنامه فوق را اجرا میکنیم فقط با تابع تبدیل جدید:
clc
clear
close all
w=logspace(-1,2,1000);
s=tf('s');
sys=1/s^2/(1+0.2*s)/(2+0.1*s);
[MAG,phase,W]=bode(sys,w);
MAG_dB=20*log10(MAG);
for i=1:numel(MAG)
mag(1,i)=MAG_dB(1,1,i);
end
semilogx(W,mag)
grid on
hold on
slope=(mag(10)-mag(1))/(log10(w(10))-log10(w(1)))
l=slope.*(log10(w)-log10(w(1)))+mag(1);
plot(w,l)
plot([1,1],[-200,50])
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/tm7z
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
حال به کمک دیاگرام بود :
خط اولیه با شیب 40- را امتداد میدهیم عرض نقطه برخورد این خط با خط ω=1 برابر 20 log〖k_a 〗 میباشد.
همان برنامه فوق را اجرا میکنیم فقط با تابع تبدیل جدید:
clc
clear
close all
w=logspace(-1,2,1000);
s=tf('s');
sys=1/s^2/(1+0.2*s)/(2+0.1*s);
[MAG,phase,W]=bode(sys,w);
MAG_dB=20*log10(MAG);
for i=1:numel(MAG)
mag(1,i)=MAG_dB(1,1,i);
end
semilogx(W,mag)
grid on
hold on
slope=(mag(10)-mag(1))/(log10(w(10))-log10(w(1)))
l=slope.*(log10(w)-log10(w(1)))+mag(1);
plot(w,l)
plot([1,1],[-200,50])
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/tm7z
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
20 log〖k_a 〗=-6.031
k_a=0.4994
که همان نتیجه حاصل از روش تحلیلی میباشد.
روش دیگر برای بدست آوردن k_v و k_a
همچنین برای بدست آوردن k_v و k_a میتوان محل برخورد خط اولیه یا امتداد آن را با 0db به دست آورد و این فرکانس از نظر عددی برای سیستم مرتبه یک برابر k_v و برای سیستم مرتبه دو، برابر ریشه دوم k_a میباشد.
مثال :
G(s)=1/(s^2 (1+0.2s)(2+0.1s) )
سیستم از نوع (تیپ) 2 میباشد و برای آن ثابت خطای شتاب برابر 0.5 است.(طبق محاسبات مثال قبل)
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
20 log〖k_a 〗=-6.031
k_a=0.4994
که همان نتیجه حاصل از روش تحلیلی میباشد.
روش دیگر برای بدست آوردن k_v و k_a
همچنین برای بدست آوردن k_v و k_a میتوان محل برخورد خط اولیه یا امتداد آن را با 0db به دست آورد و این فرکانس از نظر عددی برای سیستم مرتبه یک برابر k_v و برای سیستم مرتبه دو، برابر ریشه دوم k_a میباشد.
مثال :
G(s)=1/(s^2 (1+0.2s)(2+0.1s) )
سیستم از نوع (تیپ) 2 میباشد و برای آن ثابت خطای شتاب برابر 0.5 است.(طبق محاسبات مثال قبل)
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
برنامه زیر که بسیار شبیه به برنامه قبلی است به کمک روش اخیر مقدار ثابت خطای شتاب (k_a) بدست میدهد.
clc
clear
close all
w=logspace(-1,2,10000);
s=tf('s');
sys=1/s^2/(1+0.2*s)/(2+0.1*s);
[MAG,phase,W]=bode(sys,w);
MAG_dB=20*log10(MAG);
for i=1:numel(MAG)
mag(1,i)=MAG_dB(1,1,i);
end
semilogx(W,mag)
grid on
hold on
slope=(mag(10)-mag(1))/(log10(w(10))-log10(w(1)))
l=slope.*(log10(w)-log10(w(1)))+mag(1);
plot(w,l)
plot([0.1,100],[0,0])
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/Y1RY
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
برنامه زیر که بسیار شبیه به برنامه قبلی است به کمک روش اخیر مقدار ثابت خطای شتاب (k_a) بدست میدهد.
clc
clear
close all
w=logspace(-1,2,10000);
s=tf('s');
sys=1/s^2/(1+0.2*s)/(2+0.1*s);
[MAG,phase,W]=bode(sys,w);
MAG_dB=20*log10(MAG);
for i=1:numel(MAG)
mag(1,i)=MAG_dB(1,1,i);
end
semilogx(W,mag)
grid on
hold on
slope=(mag(10)-mag(1))/(log10(w(10))-log10(w(1)))
l=slope.*(log10(w)-log10(w(1)))+mag(1);
plot(w,l)
plot([0.1,100],[0,0])
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/Y1RY
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
همانطور که ملاحظه شد تنها تفاوت این است که خط مماس را به جای قطع با x=0 با y=0 قطع میدهیم.
k_a=〖(0.7065)〗^2=0.49914
یک برنامه کلی برای بدست آوردن ثابت های خطا :
برنامه زیر که یک برنامه کلی است میتواند ثابت های خطا را با توجه نوع سیستم برای هر سیستم دلخواه به دست آورد همچنین k_v و k_a را با هر دو روش به دست می آورد.
clc
clear
close all
num=[1];
den=[0.02 0.5 2 0 0];
w=logspace(-3,2,1000);
[mag phase w]=bode(num,den,w);
slope=(20*log10(mag(50))-20*log10(mag(10)))/(log10(w(50))-log10(w(10)));
K=slope*(log10(1)-log10(w(10)))+20*log10(mag(10));
k=10^(K/20);
if den(length(den))==0 && den(length(den)-1)==0;
disp('type of system=2');disp('ba raveshe ghat ba w=1')
ka=k
end
if den(length(den))==0 && den(length(den)-1)~=0;
disp('type of system=1');disp('ba raveshe ghat ba w=1')
kv=k
end
if den(length(den))~=0;
disp('type of system=0')
kp=k
end
kk=10^(((0-20*log10(mag(10)))/slope)+log10(w(10)));
if den(length(den))==0 && den(length(den)-1)==0;
disp('ba raveshe ghat ba 0db')
ka=kk^2
end
if den(length(den))==0 && den(length(den)-1)~=0;
disp('ba raveshe ghat ba 0db')
kv=kk
end
نتیجه :
type of system=2
ba raveshe ghat ba w=1
ka =
0.5000
ba raveshe ghat ba 0db
ka =
0.5000
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه یازدهم
💡 استاد : مهندس ورمقانی
____________________________
همانطور که ملاحظه شد تنها تفاوت این است که خط مماس را به جای قطع با x=0 با y=0 قطع میدهیم.
k_a=〖(0.7065)〗^2=0.49914
یک برنامه کلی برای بدست آوردن ثابت های خطا :
برنامه زیر که یک برنامه کلی است میتواند ثابت های خطا را با توجه نوع سیستم برای هر سیستم دلخواه به دست آورد همچنین k_v و k_a را با هر دو روش به دست می آورد.
clc
clear
close all
num=[1];
den=[0.02 0.5 2 0 0];
w=logspace(-3,2,1000);
[mag phase w]=bode(num,den,w);
slope=(20*log10(mag(50))-20*log10(mag(10)))/(log10(w(50))-log10(w(10)));
K=slope*(log10(1)-log10(w(10)))+20*log10(mag(10));
k=10^(K/20);
if den(length(den))==0 && den(length(den)-1)==0;
disp('type of system=2');disp('ba raveshe ghat ba w=1')
ka=k
end
if den(length(den))==0 && den(length(den)-1)~=0;
disp('type of system=1');disp('ba raveshe ghat ba w=1')
kv=k
end
if den(length(den))~=0;
disp('type of system=0')
kp=k
end
kk=10^(((0-20*log10(mag(10)))/slope)+log10(w(10)));
if den(length(den))==0 && den(length(den)-1)==0;
disp('ba raveshe ghat ba 0db')
ka=kk^2
end
if den(length(den))==0 && den(length(den)-1)~=0;
disp('ba raveshe ghat ba 0db')
kv=kk
end
نتیجه :
type of system=2
ba raveshe ghat ba w=1
ka =
0.5000
ba raveshe ghat ba 0db
ka =
0.5000
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_یازدهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________