totop

آشنایی با محیط سیمولینک متلب ( بخش هفتم )شنبه 30, مه 2020

آموزش متلب در همیارپروژه

آشنایی با محیط Matlab

در ادامه آموزش های سایت همیارپروژه برنامه نویسی متلب ارائه خواهد شد .آموزشها از مقدماتی تا پیشرفته ادامه دارد و ما به شما کدنویسی در نرم افزار متلب را یاد خواهیم داد. با ما همراه باشید.

انجام پروژه متلب

سیمولینک

در این بخش می خواهیم یک مبدل آنالوگ به دیجیتال (ADC) بسیار ساده را طراحی نماییم. همانطور که می دانید , یکی از پارامترهای مهم در یک  ADC , تعداد بیت های آن است که در واقع مشخص کننده ی قدرت تفکیک پذیری آن می باشد . به طور مثال یک ADC هشت بیت می تواند ۲۵۶ حالت را ایجاد نماید . حال فرض کنید که ما می خواهیم یک مبدل چهار بیت طراحی نماییم ( این مبدل می تواند ۶۱ حالت مختلف را ایجاد نماید.)

برای شروع کار ابتدا بلوک های زیر را در یک مدل قرار می دهید:

ابتدا باید سیگنال ورودی را به ۶۱ قسمت مساوی تقسیم کنیم و در نتیجه به بعضی از پارامترهای سیگنال ورودی احتیاج داریم . به عنوان مثال فرض کنید که دامنه پیک تا پیک و همچنین مینیمم سیگنال را داریم حالا باید از مقدار مینیمم شروع کرده و به نسبت A/15 به مقدار مینیمم اضافه کنیم تا به مقدار ماکزیمم سیگنال برسیم این مقادیر را به صورت پارامتری , درون ۶۱ عدد بلوک Constant قرار می دهیم سپس سیگنال ورودی را به ۷۱ قسمت تقسیم می کنیم تا بتواند از عملگرهای مقایسه ای استفاده کنیم. سپس از مقدار مینیمم شروع کرده و به نسبت A/16 به مقدار مینیمم اضافه می کنیم تا به مقدار ماکزیمم سیگنال برسیم این مقادیر را به صورت پارامتری , درون ۷۱ عدد بلوک Constant قرار می دهیم. تنظیمات تمام بلوک ها ی سوئیچ را به صورت زیر قرار می دهیم:

حال به صورت زیر عمل می کنیم:

زمانی که خروجی بلوک عملگر رابطهای , ۱ باشد ( دامنه سیگنال از مقدار P+A/16 کمتر باشد) بلوک سوئیچ , عدد P ( مقدار اولیه ) و در غیر این صورت این بلوک مقدار صفر را عبور می دهد.

سپس بلوک هایی را مانند شکل زیر درست می کنیم:

در این شکل همانطور که ملاحظه می شود , زمانی که دامنه سیگنال ورودی از مقدار P+(2*A)/16کوچکتر و بزرگتر و یا مساوی مقدار P+A/16 باشد, خروجی بلوک AND یک شده و بلوک سوئیچ مقدار P+A/15 را از خود عبور می دهد و در دیگر حالات زمین در مسیر خروجی قرار می گیرد.

سپس به همین ترتیب ادامه می دهیم تا نهایتا به مدل زیر می رسیم:

نکته:

می توان یک سیگنال ژنراتور و یک زمین به کاربرد و برای استفاده در مکانهای دیگر از آنها انشعاب گرفت ( در واقع هیچگونه اثر بارگذاری روی یکدیگر ندارند)

حال خروجی ۶۱ بلوک سوئیچ را به یک جمع کننده با ۶۱ ورودی می دهیم تا سیگنال دیجیتال شده را به ما تحویل دهد. سپس خروجی جمع کننده را به یک بلوک اسکوپ داده و نهایتا از کل سیستم , یک زیر سیستم تهیه کرده و آنرا ماسک می کنیم و تنظیمات ماسک را به صورت زیر قرار می دهیم:

مدل نهایی با اندکی تغییرات به صورت زیر می باشد:

حال مدل را به ازای یک ورودی سینوسی با فرکانس ۱KHz و دامنه ۱ و مقدار dc برابر ۰ شبیه سازی می کنیم ( مقدار مینیمم سیگنال برابر -۱ و دامنه پیک تا پیک آن برابر با ۲ می باشد.)

خروجی به صورت زیر می باشد:

در ادامه آموزش simulink مثالی را مطرح می کنیم که بیشتر با دقایق و ظرافت این نرم افزار آشنا شوید. فرض نمایید یک سیستم کنترلی داریم که تابع تبدیل آن در دسترس نیست و می خواهید مقدار ثابت زمانی این سیستم را بدست آورید . برای این منظور به ورودی سیستم , پله داده و ثابت زمانی را از ورودی خروجی سیستم اندازه میگیریم.

حال پنجره های جدید باز کرده و بلوکهای زیر را وارد آن کنید:

سپس بلوک ها را همانند شکل زیر مرتب نمایید و سیم کشی کنید.

تنظیمات بلوک ها:

  • بر روی بلوک Constant دو مرتبه کلیک نمایید و مقدار آن را ۱-۱/e قرار دهید.
  • بر روی بلوک Relational Operator دو مرتبه کلیک نمایید و در قسمت Relational Operator عملگر <= را انتخاب نمایید.
  • بر روی بلوک Step دو مرتبه کلیک نمایید و مقدار Step time را برابر ۰ قرار دهید.
  • بر روی بلوک Transfer Fcn دو مرتبه کلیک نمایید و مقدار Denominator Coefficients را [۱ ۷۴۸٫۶] قرار دهید.

تنظیمات مدل:

  • مقدار Max step size را ۰٫۰۰۱ قرار دهید حال می توانید مدلتان را Run نمایید.

توضیح مدل:

در واقع ما خروجی این سیستم را با مقدار ۱-۱/e مقایسه کرده ایم و هرگاه که خروجی به این مقدار رسید, خروجی بلوک مقایسه گر۱ شده و بلوک stop simulation شبیه سازی را متوقف می کنند. حال قطعا مقدار زمان شبیه سازی , برابر مقدار ثابت زمانی سیستم خواهد بود.

در اینجا آشنایی با محیط متلب بخش سی و ششم به پایان رسیده است و در آموزش های بعدی به مباحث دیگر آموزش متلب می پردازیم. همچنین از شما مخاطبین عزیز سایت همیارپروژه دعوت می کنم که برای انجام پروژه متلب خود آموزش های ما را دنبال نمایید.

 

نویسنده: زهرا رستمی


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

حق نشر برای همیارپروژه ❤️ مرجع انجام پروژه دورکاری و آنلاین ✔️ سایت انجام پروژه و استخدام فریلنسر در همه حوزه ها ، مهارت ها ، نرم افزارها و پروژه های برنامه نویسی محفوظ است.