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

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

 

Simulink >> Sources >> Step

Simulink >> Sources >> Clock

Simulink >> Sinks >> Stop Simulation

Simulink >> Sinks >> Scope

Simulink >> Continuous >> Transfer Fcn

Simulink >> Sources >> Constant

Simulink >> Sinks >> Display

Simulink >> Logic and Bit Operations >> Relational Operator

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

  • روی بلوك Constant دوبار كلیك نموده و مقدار آن را  قرار دهید
  • روی بلوك Relational Operator دوبار كلیك نموده و در قسمت Relational operator عملگر =< را انتخاب كنید
  • روی بلوك Step دوبار كلیك نموده و مقدار Step time را 0 قرار دهید
  • روی بلوك Transfer Fcn دوبار كلیك نموده و مقدار Denominator coefficients را [6.748 1] قرار دهید

تنظیمات مدل:

  • مقدار Max step size را 0.001  قرار دهید

حال می‌توانید مدلتان را Run کنید:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

توضیح مدل:

در واقع ما خروجی این سیستم را با مقدار مقایسه کرده‌ایم و  هرگاه که خروجی به این مقدار رسید، خروجی بلوک مقایسه‌گر 1 شده و بلوک Stop Simulation شبیه‌سازی را متوقف می‌کند. حال قطعا مقدار زمان شبیه‌سازی، برابر مقدار ثابت‌زمانی سیستم خواهد بود.

در مثال بعدی می‌خواهم یک مدار مقسم فرکانس با فلیپ فلاپ T ایجاد کنم. آنطوری که من در کتابخانه سیمولینک گشتم، این FF وجود نداشت. پس مجبوریم از فلیپ فلاپ JK استفاده و دو پایه آن را به‌هم وصل کنیم. در این مدار ما از چهار عدد FF استفاده کرده‌ایم در نتیجه در خروجی FFها به‌ترتیب سیگنال‌هایی با فرکانس‌های 2/1 ، 4/1 ، 8/1 و 16/1 فرکانس ورودی خواهیم داشت.

بلوک‌ها:

Simulink >> Sinks >> Scope

Simulink >> Sinks >> Terminator

Simulink >> Sources >> Constant

Simulink >> Signal Attributes >> Data Type Conversion

Simulink >> Simulink Extras >> Flip Flops >> Clock

Simulink >> Simulink Extras >> Flip Flops >> J-K Flip-Flop

حال بلوک‌ها را مانند شکل مرتب کرده و سیم‌کشی کنید و تنظیمات لازمه را بر مبنای آنچه که در ادامه آمده است، اعمال کنید:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

  • روی بلوك Constant دوبار كلیك نموده و در تب Signal Attributes نوع داده خروجی را boolean برگزینید
  • روی بلوك Clock دوبار كلیك نموده و مقدار پریود آن را 0.2 قرار دهید
  • روی تمامی بلوك‌های Data Type Conversion دوبار كلیك نموده و در قسمت Output data type نوع داده‌ی خروجی را double انتخاب كنید
  • روی بلوك Scope دوبار كلیك نموده و سپس به منوی Parameters رفته و تعداد محورها را برابر 5 قرار دهید

اینک می‌توانید مدلتان را اجرا کنید:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

توجه:

جهت اینکه نمودارها را بطور کامل و واضح ببینید، روی تمامی نمودارها راست کلیک کرده و گزینه Axes properties را انتخاب و سپس تغییرات شکل زیر اعمال کنید:

 

 

 

 

 

 

 

 

 

در مثال بعدی می‌خواهم یک مالتی پلکسر 4 به 1 را با استفاده از بلوک‌های شرطی، پیاده‌سازی کنم. همان‌طور که می‌دانید این عنصر(مالتی پلکسر 4 به 1) دارای دو پایه کنترلی می‌باشد که بسته به وضعیت منطقی این دو پایه، یکی از 4 سیگنال ورودی، در خروجی قرار می‌گیرد. آنطوری که من کتابخانه سیمولینک را جستجو کردم، بلوکی با نام مالتی‌پلکسر و با خصوصیات مذکور پیدا نکردم.

بلوک‌ها:

Simulink >> Sources >> Constant

Simulink >> Sources >> Ground

Simulink >> Sinks >> Display

Simulink >> Math Operations >> Sum

Simulink >> Signal Routing >> Manual Switch

Simulink >> Logic and Bit Operations >> Logical Operator

Simulink >> Ports & Subsystems >> If

Simulink >> Ports & Subsystems >> If Action Subsystem

حال بلوک‌ها را مانند شکل مرتب کرده و سیم‌کشی کنید و تنظیمات لازمه را بر مبنای آنچه که در ادامه آمده است، اعمال کنید:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

  • روی بلوك Constant1 دوبار كلیك نموده و مقدار آن را 2 قرار دهید
  • روی بلوك Constant2 دوبار كلیك نموده و مقدار آن را 3 قرار دهید
  • روی بلوك Constant3 دوبار كلیك نموده و مقدار آن را 4 قرار دهید
  • روی بلوك Sum دوبار كلیك نموده و در قسمت List of signs علامت‌های ++++| را وارد كنید
  • روی بلوك Logical Operator دوبار كلیك نموده و نوع عملگر آن را NOT قرار دهید سپس در قسمت Icon shape نوع نمایش را distinctive انتخاب كنید
  • روی بلوك Logical Operator1 دوبار كلیك نموده و نوع عملگر آن را NOT قرار دهید سپس در قسمت Icon shape نوع نمایش را distinctive انتخاب كنید
  • روی بلوك If دوبار كلیك نموده و مانند شکل زیر عمل کنید:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

حال می‌توانید مدلتان را اجرا کنید: