بلوکهای تابع تبدیل در سیمولینک
به نام خدا و سلام.
به جلسه دوازدهم از سری جلسات آموزش سیمولینک خوش آمدید. آموزش رایگان سیمولینک از وبسایت متلبپلاس ارائه میشود. در یازده جلسه گذشته انواع مختلف بلوکهای سیمولینک معرفی شد. بلوکهایی از توابع ریاضی، رسم نمودار، ورودی سیستم، تبدیل واحد و… ازین موارداند. از منوی سمت راست 👉 لیست کامل این جلسات قابل دسترسی است. در این جلسه به معرفی بلوکهای تابع تبدیل (Transfer Function) در سیمولینک بپردازیم. در سیمولینک دو بلوک برای پیادهسازی تابع تبدیل وجود دارد. بلوک Transfer Fcn و بلوک Zero-Pole. در ادامه با هردوی این بلوکها بطور کامل آشنا میشویم.
با متلب پلاس همراه باشید.
بلوک Transfer Fcn در سیمولینک
بلوک Transfer Fcn در سیمولینک برای مدلسازی تابع تبدیل یک سیستم بکار میرود. بلوک Transfer Fcn یک سیستم خطی را با تابع انتقال از متغیر S در فضای لاپلاس مدل میکند. این بلوک میتواند سیستمهای تک خروجی- تک ورودی (SISO) و تک ورودی-چند خروجی (SIMO) را مدل کند. این بلوک در کتابخانه سیمولینک، دربخش Continuous قابل دسترسی است (مطابق شکل زیر).
معمولا نمایش تابع تبدیل بصورت یک عبارت کسری با متغیر S میباشد. بلوک Transfer Fcn تابع تبدیل را به فرم زیر درنظر میگیرد.
دقت کنید که مرتبه مخرج باید بزرگتر یا مساوی از مرتبه صورت باشد. در سیمولینک برای تعریف تابع تبدیل بایستی صورت و مخرج آن را بصورت یک بردار در بلوک Transfer Fcn وارد کرد. مثلا تابع تبدیل زیر را درنظر بگیرید.
برای تعریف این تابع تبدیل در بلوک Transfer Fcn سیمولینک، ابتدا روی این بلوک دابل کلیک میکنیم. بلافاصله پنجره تنظیمات این بلوک باز خواهد شد. در این پنجره در قسمت Numerator Coefficients ضرایب صورت کسر تابع تبدیل را (بصورت یک بردار) وارد میکنیم. در قسمت Denominator Coefficient نیز ضرایب مخرج کسر تابع تبدیل را (بصورت یک بردار) وارد میکنیم. به شکل زیر دقت کنید.
پس از وارد کردن صورت و مخرج تابع تبدیل، روی OK کلیک میکنیم. در مدل سیمولینک ظاهر بلوک تابع تبدیل بصورت زیر تغییر خواهد کرد.
حال بلوک تابع تبدیل آماده استفاده است. مثلا میتوانیم به این سیستم یک ورودی پله وارد کرده و رفتار آن را مشاهده کنیم. بلوکهای ورودی در سیمولینک مثل ورودی پله، شیب و… در جلسه پنجم تشریح شد. برای مشاهده نمودار نیز یک بلوک Scope به مدل اضافه میکنیم. در نتیجه خواهیم داشت:
برای مشاهدهی خروجی میتوان روی بلوک Scope کلیک کرد. با کلیک روی این بلوک، نمودار زیر ارائه میشود.
به این ترتیب میتوان هرگونه تابع تبدیل دلخواه را در سیمولینک وارد کرد. در ادامه آموزش کار با سیمولینک در متلب، بلوک دیگری برای تعریف تابع تبدیل معرفی میشود.
بلوک Zero-Pole در سیمولینک
یکی دیگر از بلوکهایی که برای تعریف تابع تبدیل در سیمولینک استفاده میشود، بلوک Zero-Pole است. بلوک Zero-Pole سیستمی را مدل میکند که با صفرها، قطبها و بهره تابع انتقال در فضای لاپلاس تعریف میشود. این بلوک میتواند سیستمهای تک خروجی تک ورودی (SISO) و چند خروجی تک ورودی (SIMO) را مدل کند.
تفاوت این بلوک با بلوک Transfer Fcn در نحوه تعریف تابع تبدیل است. در بلوک Transfer Fcn ضرایب صورت و مخرج تابع تبدیل وارد میشود. در حالیکه در بلوک Zero-Pole صفرها و قطبهای تابع تبدیل وارد میشوند. منظور از صفرها، ریشههای صورت و منظور از قطبها، ریشههای مخرج تابع تبدیل است. این بلوک در کتابخانه سیمولینک وبخش Continuous قرار دارد (مطابق شکل زیر).
شکل نمادین تابع تبدیل در این بلوک بصورت زیر است.
که در آن Z نشان دهنده صفرها، P نشان دهنده قطبها و K نیز بهره (Gain) تابع تبدیل است. تعداد قطبها باید بزرگتر یا مساوی با تعداد صفرها باشد. اگر قطبها و صفرها مختلط باشند، باید جفتهای مختلط – مزدوج باشند. برای یک سیستم چند خروجی، همه توابع انتقال باید دارای قطبهای یکسان باشند. صفرها میتوانند از نظر مقدار متفاوت باشند، اما تعداد صفرها برای هر تابع انتقال باید یکسان باشد.
برای درک بهتر نحوه استفاده از بلوک Zero-Pole سیمولینک، تابع تبدیل زیر را درنظر بگیرید.
این تابع تبدیل همان مثال ابتدای این مقاله است که به شکل دیگری نمایش داده شده است. برای تعریف این تابع تبدیل در بلوک Zero-Pole سیمولینک، ابتدا روی بلوک دابل کلیک میکنیم. سپس در قسمت Zeros صفرهای تابع تبدیل، Poles قطبها و Gain بهره تابع تبدیل را وارد میکنیم. مطابق شکل زیر.
پس از وارد کردن و کلیک بر روی OK، بلوک Zero-Pole در مدل سیمولینک بصورت زیر تغییر خواهد کرد.
مشابه با مثال قبل، میتوان بلوکهای ورودی و نمایش نمودار را به این بلوک اضافه کرد. این کار را شما بعنوان تمرین انجام دهید. یک بلوک ورودی پله و یک بلوک Scope به مدل بالا اضافه کنید. سپس رفتار این سیستم را با مثال قبل مقایسه کنید.
جمعبندی
جلسه دوازدهم از مجموعه جلسات آموزش سیمولینک در اینجا به پایان رسید. در این جلسه با بلوکهای تعریف تابع تبدیل در سیمولینک آشنا شدیم. دو بلوک Transfer Fcn و Zero-Pole در سیمولینک برای تعریف تابع تبدیل وجود دارد. هردوی این بلوکها با جزئیات کامل و همچنین حل مثال تشریح شد. بلوک Transfer Fcn صورت و مخرج تابع تبدیل را بطور مستقیم دریافت میکند. درحالیکه بلوک Zero-Pole صفرها و قطبهای تابع تبدیل را از کاربر دریافت میکند. از این بلوکها برای ایجاد یک سیستم کنترلی یا دینامیکی استفاده میشود. به همین دلیل توصیه میشود که مباحث این جلسه را بطور کامل و دقیق مطالعه کنید. هدف تیم متلب پلاس ارائه محتوای آموزشی درجه یک برای شما عزیزان است.
اگر سوال و ابهامی درباره مباحث این جلسه دارید در بخش نظرات (پایین همین صفحه) به ما بگید. از فهرست سمت راست👉 هم میتونید به محتوای بقیه جلسات آموزش سیمولینک متلب دسترسی داشته باشید.
4 Comments
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
سلام
استاد کی همه ی جلساتش رو قرار میدین؟
ضمنا برای تسلط بیشتر منبع پر از مثال و تمرین معرفی کنید
ممنونم
سلام محمد عزیز
پستهای آموزش سیمولینک در روزهای پنجشنبه هر هفته منتشر میشوند. این نکته رو هم بگم که این آموزشها تا جلسه 15 ادامه خواهند داشت.
اگر با مطالعه متون و آموزشها به زبان انگلیسی مشکلی ندارید، موارد زیر را پیشنهاد میکنم:
1) راهنمای خود نرم افزار متلب بخش سیمولینک (Simulink Help)
2) کتاب MATLAB and Simulink Crash Course for Engineers
3) کتاب MATLAB & Simulink Essentials: MATLAB & Simulink for Engineering Problem Solving and Numerical Analysis
4) کتاب MATLAB and Simulink for Engineers
و کلی کتاب دیگه که اگر در گوگل سرچ کنید میاد.
با احترام
سلام چطور میشه به s در مخرج توان اختصاص بدیم
سلام این بلوک از فرم استاندارد تابع تبدیل استفاده میکنه. شکل استاندارد تابع تبدیل هم به همین صورتی هست که در این بلوک وجود داره. هیچ توانی در این فرم نداریم. باید عبارت مخرج رو تجزیه کنید به همین فرمی که داریم.