در مدلهای پیچیده سیمولینک، با افزایش تعداد سیگنالها و ارتباط میان بخشهای مختلف مدل، مدیریت مسیر انتقال داده اهمیت زیادی پیدا میکند. استفاده از ابزارهای Signal Routing، مکانیزمهای مرتبط با Data Store Memory و بلوکهای Data Receiver کمک میکند ساختار مدل منظمتر، قابلفهمتر و قابلکنترلتر باشد.
این امکانات بهویژه در مدلهایی که دارای زیرسیستمهای متعدد، مسیرهای داده پیچیده و ارتباط میان بخشهای مختلف هستند، کاربرد زیادی دارند.
مفهوم مسیریابی سیگنال در سیمولینک
مسیریابی سیگنال به مجموعه روشهایی گفته میشود که برای انتقال، تقسیم، انتخاب، ترکیب یا تغییر مسیر سیگنالها در مدل مورد استفاده قرار میگیرند.
در یک مدل ساده میتوان سیگنال را مستقیماً از خروجی یک بلوک به ورودی بلوک دیگر متصل کرد؛ اما در مدلهای بزرگ، ایجاد تعداد زیادی اتصال مستقیم باعث شلوغی نمودار و دشوار شدن دنبالکردن مسیر داده میشود.
سیمولینک برای حل این مسئله مجموعهای از بلوکهای مسیریابی را در اختیار قرار میدهد که امکان سازماندهی مسیرهای داده را بدون ایجاد اتصالات طولانی و پیچیده فراهم میکنند.
بلوکهای مهم Signal Routing
کتابخانه Signal Routing شامل مجموعه متنوعی از ابزارها برای مدیریت مسیر سیگنال است. از جمله این ابزارها میتوان به Goto، From، Data Store Memory، Data Store Read، Data Store Write، Bus Selector، Bus Creator، Merge، Multiport Switch، Manual Switch و Data Routing اشاره کرد.
هرکدام از این بلوکها برای نوع خاصی از مدیریت سیگنال طراحی شدهاند و انتخاب صحیح آنها میتواند ساختار مدل را بسیار سادهتر کند.
استفاده از Goto و From
یکی از روشهای متداول برای کاهش تعداد خطوط اتصال، استفاده از Goto و From است.
Goto سیگنال را با یک نام یا برچسب مشخص در اختیار بخش دیگری از مدل قرار میدهد و From میتواند همان سیگنال را در محل موردنظر دریافت کند.
این روش بهخصوص در مدلهایی که یک سیگنال باید به بخشهای مختلف منتقل شود، باعث کاهش خطوط طولانی و عبوری میشود.
استفاده صحیح از این بلوکها همچنین باعث میشود نمودار مدل خواناتر باشد و ارتباط منطقی میان قسمتهای مختلف بهتر مشخص شود.
مفهوم Data Store Memory
Data Store Memory روشی متفاوت برای مدیریت داده در سیمولینک ارائه میکند. در این ساختار، یک ناحیه مشخص برای نگهداری داده تعریف میشود و سایر بخشهای مدل میتوانند با استفاده از بلوکهای مربوطه به آن داده دسترسی داشته باشند.
در واقع، بهجای اینکه داده حتماً از طریق یک مسیر مستقیم سیگنال منتقل شود، میتوان آن را در یک محل مشخص ذخیره کرد و در بخشهای مختلف مدل مورد استفاده قرار داد.
این روش برای مدلهایی که چند بخش مختلف به یک داده مشترک نیاز دارند، اهمیت زیادی دارد.
Data Store Read و Data Store Write
دو ابزار اصلی برای کار با Data Store، بلوکهای Data Store Read و Data Store Write هستند.
Data Store Write برای نوشتن یا بهروزرسانی داده در محل ذخیرهسازی استفاده میشود، در حالی که Data Store Read امکان دسترسی به داده ذخیرهشده را فراهم میکند.
به این ترتیب، تولیدکننده داده و مصرفکننده داده میتوانند بدون اتصال مستقیم به یکدیگر با داده مشترک کار کنند.
این معماری در مدلهای بزرگ، بهخصوص زمانی که ارتباط مستقیم میان زیرسیستمها باعث پیچیدگی نمودار میشود، بسیار مفید است.
مدیریت داده مشترک میان زیرسیستمها
یکی از کاربردهای مهم Data Store، اشتراکگذاری داده میان زیرسیستمهای مختلف است.
برای مثال، یک زیرسیستم میتواند اطلاعاتی را تولید و در Data Store ذخیره کند و چند زیرسیستم دیگر در بخشهای مختلف مدل همان اطلاعات را بخوانند.
در چنین ساختاری لازم نیست برای هر مصرفکننده یک مسیر سیگنال مستقل از منبع ایجاد شود. در نتیجه، معماری مدل میتواند سادهتر و منظمتر شود.
گیرندههای داده و Data Receiver
در مدلهای سیمولینک، مفهوم گیرنده داده میتواند برای دریافت اطلاعات تولیدشده توسط بخشهای دیگر مدل مورد استفاده قرار گیرد. این مفهوم بهویژه در ساختارهایی که داده از طریق Data Store، Bus یا مسیرهای غیرمستقیم منتقل میشود، اهمیت پیدا میکند.
در مدلهای پیچیده، جدا کردن منبع تولید داده از بخش دریافتکننده باعث میشود وابستگی مستقیم میان اجزای مدل کاهش پیدا کند.
این رویکرد برای طراحی مدلهای ماژولار و قابل توسعه اهمیت زیادی دارد.
تفاوت مسیر مستقیم و مسیر غیرمستقیم
در مسیر مستقیم، خروجی یک بلوک مستقیماً به ورودی بلوک دیگر متصل میشود. این روش ساده و قابل مشاهده است، اما در مدلهای بزرگ میتواند باعث ایجاد تعداد زیادی خط اتصال شود.
در مسیر غیرمستقیم، ابزارهایی مانند Goto و From یا Data Store برای انتقال داده مورد استفاده قرار میگیرند. در این حالت، ارتباط فیزیکی میان دو بخش مدل کمتر دیده میشود، اما ساختار منطقی مدل میتواند مرتبتر باشد.
بنابراین استفاده از مسیرهای غیرمستقیم باید با رعایت اصول نامگذاری و سازماندهی انجام شود تا پیدا کردن منبع و مقصد سیگنال دشوار نشود.
مدیریت Bus و سیگنالهای گروهی
یکی دیگر از بخشهای مهم مسیریابی سیگنال، مدیریت Bus است. زمانی که تعداد زیادی سیگنال باید بین دو بخش مدل منتقل شوند، میتوان آنها را در یک ساختار گروهی قرار داد.
Bus Creator برای ایجاد چنین ساختاری و Bus Selector برای استخراج سیگنالهای موردنظر از آن استفاده میشود.
این روش بهخصوص در مدلهای دارای تعداد زیادی پارامتر، سیگنال اندازهگیری یا داده کنترلی کاربرد دارد.
استفاده از Multiport Switch
در برخی مدلها لازم است یکی از چند سیگنال ورودی بر اساس یک سیگنال انتخابکننده به خروجی منتقل شود. Multiport Switch برای چنین شرایطی مناسب است.
این بلوک امکان ایجاد مسیرهای انتخابی را فراهم میکند و میتواند در طراحی سیستمهایی که دارای چند حالت عملیاتی هستند، مورد استفاده قرار گیرد.
برای مثال، یک سیستم میتواند بر اساس وضعیت کاری خود یکی از چند مجموعه داده یا سیگنال را برای پردازش بعدی انتخاب کند.
Merge و ترکیب مسیرهای شرطی
در مدلهایی که چند مسیر اجرایی شرطی وجود دارند، ممکن است چند زیرسیستم مختلف بتوانند یک نوع خروجی تولید کنند. در چنین شرایطی Merge میتواند برای ترکیب خروجی مسیرهای شرطی مورد استفاده قرار گیرد.
این ساختار در مدلهایی که دارای Enabled، Triggered، Function-Call یا سایر زیرسیستمهای شرطی هستند، اهمیت بیشتری پیدا میکند.
استفاده صحیح از Merge باعث میشود ارتباط میان مسیرهای مختلف اجرای مدل ساختاریافتهتر شود.
نقش Data Routing در مدلهای بزرگ
در مدلهای بزرگ، هدف از مسیریابی فقط انتقال سیگنال نیست؛ بلکه مدیریت معماری ارتباطات نیز اهمیت دارد.
طراحی مناسب مسیرهای داده میتواند وابستگی میان زیرسیستمها را کاهش دهد و امکان تغییر یا توسعه بخشهای مختلف مدل را آسانتر کند.
به همین دلیل، بهتر است از همان مراحل ابتدایی طراحی مدل، مشخص شود که کدام سیگنالها به اتصال مستقیم، کدام دادهها به مسیرهای Goto و From و کدام اطلاعات به اشتراکگذاری از طریق Data Store نیاز دارند.
نکات مهم در مدیریت حافظه
استفاده از Data Store نیازمند توجه به نحوه دسترسی و تغییر دادههاست. هنگامی که چند بخش مختلف مدل یک داده مشترک را میخوانند یا تغییر میدهند، باید مشخص باشد که هر بخش چه نقشی در تولید یا مصرف داده دارد.
نامگذاری مناسب Data Storeها نیز اهمیت زیادی دارد. در مدلهای بزرگ، استفاده از نامهای واضح باعث میشود پیدا کردن منبع داده و بخشهای استفادهکننده از آن سادهتر باشد.
همچنین در مدلهای پیچیده باید وابستگیهای زمانی و ترتیب دسترسی به دادهها بهدقت بررسی شود تا رفتار مدل قابل پیشبینی باقی بماند.
کاربرد در سیستمهای مهندسی
مسیریابی سیگنال و مدیریت داده در بسیاری از پروژههای مهندسی کاربرد دارند. در سیستمهای کنترل میتوان دادههای وضعیت و فرمان را میان زیرسیستمهای مختلف منتقل کرد.
در مدلهای صنعتی، دادههای اندازهگیریشده میتوانند در یک محل ذخیره شده و توسط بخشهای مختلف کنترل، پایش و حفاظت مورد استفاده قرار گیرند.
در مدلهای پردازش سیگنال نیز میتوان با استفاده از Bus، Goto، From و سایر ابزارهای مسیریابی، ارتباط میان مراحل مختلف پردازش را سازماندهی کرد.
جمعبندی
Signal Routing، Data Store و Data Receiver از عناصر مهم برای مدیریت ارتباطات و داده در مدلهای سیمولینک هستند. ابزارهایی مانند Goto و From برای کاهش پیچیدگی اتصالات، Data Store Memory برای مدیریت دادههای مشترک و Busها برای سازماندهی مجموعهای از سیگنالها کاربرد دارند.
انتخاب صحیح میان مسیر مستقیم، مسیر غیرمستقیم، ذخیرهسازی مشترک و ساختارهای Bus به اندازه خود طراحی الگوریتم اهمیت دارد. در مدلهای بزرگ، یک معماری مناسب برای مسیریابی داده میتواند خوانایی، قابلیت نگهداری، توسعهپذیری و مدیریت مدل را به شکل قابلتوجهی بهبود دهد.
کلیدواژه ها : Signal Routing-مسیریابی سیگنال-Goto Block-بلوک Goto-From Block-بلوک From-Data Store Memory-حافظه ذخیرهسازی داده-Data Store Read-خواندن داده ذخیرهشده-Data Store Write-نوشتن داده ذخیرهشده-Data Routing-مسیریابی داده-Data Receiver-گیرنده داده-Bus Creator-ایجادکننده باس-Bus Selector-انتخابگر باس-Multiport Switch-سوئیچ چندپورتی-Merge Block-بلوک ادغام-Shared Data-داده مشترک-Data Management-مدیریت داده-Memory Management-مدیریت حافظه-Signal Management-مدیریت سیگنال-Subsystem Communication-ارتباط زیرسیستمها-Simulink-سیمولینک