Matlab Tutorial

  • October 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Matlab Tutorial as PDF for free.

More details

  • Words: 801
  • Pages: 26
‫‪MATLAB‬‬ ‫در درس سیستمهای‬ ‫کنترل خطی‬

‫میثم‬ ‫شاهدی‬

MATLAB ‫آشنایی با محیط‬

Workspace Command Window Command History

‫آشنایی با محیط‬ ‫باز کردن یک فایل ‪M.‬‬

‫منوی ‪File‬‬ ‫گزینه ‪New‬‬ ‫گزینه ‪M-‬‬ ‫‪File‬‬

‫‪( MATLAB‬ادامه)‬

‫آشنایی با دستورات اولیه‬ ‫بزرگ و کوچک بودن حروف در ‪MATLAB‬‬

‫تفاوت دارد‬

‫• ‪ :clc‬محیط ‪ Command Window‬را پاک‬ ‫میکند‬ ‫• ‪ :clear‬محیط ‪ Workspace‬را پاک می کند‬ ‫(در اصل پارامترهای مقداردهی شده را‬ ‫پاک می کند)‬

‫آشنایی با دستورات محاسباتی‬

‫مقدار دهی یک متغیر‪:‬‬ ‫;‪x=12‬‬ ‫تولید یک بردار‪:‬‬ ‫;]‪X=[2 10 -4 5 0 6 -1 11‬‬ ‫تولید یک ماتریس‪:‬‬ ‫;]‪-1‬‬

‫‪12 ; 1 6‬‬

‫‪2 ; 0 -4‬‬

‫‪Y=[1 0‬‬

‫آشنایی با دستورات محاسباتی‬ ‫(ادامه)‬

‫جمع‪ ،‬ضرب‪ ،‬تفریق‪ ،‬تقسیم و‬ ‫قرینه کردن‪:‬‬ ‫‪;z=x+y‬‬ ‫‪;z=x*y‬‬ ‫‪;z=x-y‬‬ ‫‪;z=x/y‬‬

‫آشنایی با دستورات محاسباتی‬ ‫(ادامه)‬

‫توان‪:‬‬ ‫‪;z=x^y‬‬

‫جذر‪:‬‬ ‫‪;)z=sqrt)x‬‬

‫آشنایی با دستورات محاسباتی‬ ‫(ادامه)‬

‫•‪ : min‬کوچکترین آرایه یک بردار را بر‬ ‫می گرداند‬ ‫‪;)M=min)X‬‬ ‫•‪ : max‬بزرگترین آرایه یک بردار را بر‬ ‫می گرداند‬ ‫;(‪N=max)X‬‬ ‫برای یافتن بزرگترین یا کوچکترین آرایه‬

‫آشنایی با دستورات محاسباتی‬ ‫(ادامه)‬

‫• ‪ :abs‬اندازه یک کمیت مختلط را‬ ‫محاسبه می کند‬ ‫‪)A=abs)1+i‬‬ ‫‪ans=1.4142‬‬ ‫• ‪ :angle‬فاز یک کمیت مختلط را بر‬ ‫حسب رادیان محاسبه می کند‬ ‫(‪P=angle)1+i‬‬

‫آشنایی با دستور شرط‬

‫ساختار شرط‪:‬‬ ‫( شرط ) ‪if‬‬ ‫دستورات قسمت اول‬ ‫‪else‬‬ ‫دستورات قسمت دوم‬ ‫‪end‬‬

‫آشنایی با دستور شرط‬

‫(ادامه)‬

‫علئم شرط‪:‬‬ ‫‪A~=B‬‬

‫‪A==B‬‬

‫‪A>=B‬‬

‫‪A>B‬‬

‫‪A<=B‬‬

‫‪A
‫مثال‪:‬‬

‫& ‪if )A==B | A+B>B‬‬

‫&‬

‫آشنایی با حلقه ‪: for‬‬

‫ساختار حلقه‪:‬‬ ‫‪for j=m:s:n‬‬ ‫دستورات‬ ‫‪end‬‬ ‫در ابتدا ‪ j‬با مقدار ‪ m‬مقداردهی می شود و‬ ‫با هر بار اجرای دستورات مقدار ‪ s‬به آن‬ ‫اضافه می گردد تا به مقدار ‪ n‬برسد‪.‬‬

‫آشنایی با دستورهای کنترل خطی‬

‫• ‪ : tf2ss‬تابع انتقال را به مدل فضای‬ ‫حالت تبدیل می کند‪.‬‬ ‫‪Y ( s ) num‬‬ ‫=‬ ‫‪U ( s ) den‬‬ ‫فرض کنید‪:‬‬

‫اگر ‪ num‬و ‪ den‬آرایه هایی شامل ضرایب‬ ‫چندجمله ایهای صورت و مخرج تابع تبدیل‬ ‫به شکل زیر‪2‬‬ ‫باشند‪:‬‬ ‫‪2 s + 3s − 5‬‬

‫‪2‬‬

‫‪3‬‬

‫‪s + 3s + 1‬‬

‫‪[ num=[ 2 3 -5‬‬

‫=‬

‫آشنایی با دستورهای کنترل خطی‬

‫آنگاه‪:‬‬ ‫;(‪[A,B,C,D] = tf2ss)num,den‬‬ ‫ماتریسهای ‪ A ،B ،C‬و ‪ D‬مربوط به فضای‬ ‫حالت سیستم را برمی گرداند‪.‬‬ ‫ماتریسهای بدست آمده مربوط به یکی از‬ ‫بی شمار مدلهای فضای حالت ممکن برای‬ ‫سیستم است‪.‬‬

‫آشنایی با دستورهای کنترل خطی‬

‫• ‪ : ss2tf‬مدل فضای حالت را به تابع‬ ‫انتقال تبدیل می کند‪.‬‬ ‫اگر چهار ماتریس مربوط به فضای حالت‬ ‫در اختیار باشد‪:‬‬ ‫(‪[num,den]=ss2tf)A,B,C,D,iu‬‬ ‫تابع تبدیل سیستم را به صورت دو بردار‬ ‫صورت و مخرج (بر اساس ورودی ‪iu‬‬

‫آشنایی با دستورهای کنترل خطی‬

‫•‪ : tf‬نمایش تابع تبدیل‪:‬‬ ‫(‪tf)num,den‬‬ ‫تابع تبدیل سیستم را به صورتی که در‬ ‫ریاضیات نوشته می شود (نسبت دو چند‬ ‫جمله ای) ارائه می نماید‪:‬‬

‫‪25 s + 5‬‬ ‫‪---------------------‬‬‫‪s^3 + 5 s^2 + 25 s + 5‬‬

‫آشنایی با دستورهای کنترل خطی‬

‫•‪ : step‬نمایش پاسخ حالت گذرا به ورودی‬ ‫پله واحد‬ ‫(‪step)num,den,t‬‬ ‫تابع تبدیل را به صورت دو آرایه از ضرایب‬ ‫چندجمله ایهای صورت و مخرج دریافت می‬ ‫کند و در صفحه ای جدید نمودار پاسخ حالت‬ ‫گذرای سیستم به ورودی پله را تا زمان ‪t‬‬ ‫رسم می نماید‪.‬‬

‫آشنایی با دستورهای کنترل خطی‬ ‫مثال‪:‬‬ ‫;(‪step)[25 5],[1 5 25 5],10‬‬

‫آشنایی با دستورهای کنترل خطی‬

‫اگر از دستور ‪ step‬به شکل زیر استفاده‬ ‫نماییم اندازه نمودار در تعداد ‪ 101‬نقطه در‬ ‫آرایه ای به نام ‪ a‬ذخیره می گردد و نمودار‬ ‫پاسخ نمایش داده نمی شود‪:‬‬ ‫;(‪a=step)num,den‬‬

‫این کار برای انجام محاسبات مربوط به‬ ‫پاسخ حالت گذرا مناسب است‪.‬‬ ‫برای تقسیم بندی دلخواه زمان‪ t ،‬را به‬

‫آشنایی با دستورهای کنترل خطی‬

‫•‪ : ord2‬تولید تابع تبدیل یک سیستم مرتبه‬ ‫دوم استاندارد به شکل زیر‪:‬‬ ‫)‪C ( s‬‬ ‫‪1‬‬ ‫‪= 2‬‬ ‫‪R ( s ) s + 2ζω n s + ω n2‬‬

‫;(‪[num,den]=ord2)wn,damp_ratio‬‬ ‫توجه کنید که صورت تابع تبدیل یک است‪.‬‬

‫آشنایی با دستورهای کنترل خطی‬

‫•‪ : rlocus‬ترسیم مکان هندسی ریشه های‬ ‫تابع انتقال حلقه بسته‬ ‫;(‪rlocus)num,den,K‬‬ ‫مکان هندسی ریشه ها را برای مقادیر‬ ‫آرایه ‪ K‬رسم می کند‪.‬‬ ‫مقداردهی ‪ K‬اختیاری است‪.‬‬ ‫مکان هندسی ریشه ها قابل ذخیره سازی‬

‫آشنایی با دستورهای کنترل خطی‬

‫•‪ : bode‬ترسیم نمودار بود یک سیستم‬ ‫‪;)bode)num,den,w‬‬ ‫نمودار بود سیستم را به ازای مقادیر آرایه‬ ‫‪ w‬رسم می کند‪( .‬مقداردهی ‪ w‬اختیاری‬ ‫است)‬ ‫نمودار بود قابل ذخیره سازی در سه بردار‬ ‫است‪.‬‬

‫آشنایی با دستورهای کنترل خطی‬

‫•‪ : nyquist‬ترسیم نمودار نایکوییست یک‬ ‫سیستم‬ ‫;(‪nyquist)num,den,w‬‬ ‫نمودار نایکوییست را برای مقادیر‬ ‫فرکانسی آرایه ‪ w‬رسم میکند‪.‬‬ ‫مقداردهی ‪ w‬اختیاری است‪.‬‬ ‫نایکوییست قابل ذخیره سازی در سه‬

‫آشنایی با دستورهای کنترل خطی‬

‫اگر در هنگاه رسم نمودار نایکوییست‬ ‫برنامه ‪ MATLAB‬خطای تقسیم به صفر‬ ‫داد‪ ،‬محدوده نمایش نمودار را با دستور‬ ‫‪ axis‬تصحیح کنید‪:‬‬ ‫‪;)[axis)[x1 x2 y1 y2‬‬ ‫این دستور محور افقی را در محدوده ‪ x1‬تا‬ ‫‪ x2‬و محور عمودی را در محدوده ‪ y1‬تا ‪y2‬‬ ‫ترسیم می کند‪.‬‬

‫نباشید‬ ‫خسته‬ ‫!‬

Related Documents

Tutorial Matlab
May 2020 1
Matlab Tutorial
October 2019 7
Matlab Tutorial
December 2019 6
Tutorial Matlab
October 2019 10
Matlab Tutorial
May 2020 2
Matlab Tutorial
November 2019 1