در بسیاری از سیستمهای مهندسی، رابطه میان ورودی و خروجی را نمیتوان همیشه با یک تابع ریاضی ساده و مشخص توصیف کرد. گاهی این رابطه از دادههای آزمایشگاهی، نتایج شبیهسازی، اطلاعات سازنده تجهیزات یا اندازهگیریهای واقعی به دست میآید. در چنین شرایطی، Lookup Table یکی از ابزارهای مهم Simulink برای نمایش رفتار سیستم است.
جدول جستجوی یکبعدی یا 1-D Lookup Table زمانی استفاده میشود که خروجی سیستم به یک متغیر ورودی وابسته باشد. این بلوک با استفاده از مجموعهای از نقاط ورودی و مقادیر متناظر خروجی، رفتار یک تابع را تقریب میزند و در صورت قرار گرفتن ورودی بین نقاط جدول، میتواند مقدار مناسب را از طریق درونیابی محاسبه کند.
مفهوم Lookup Table در سیمولینک
Lookup Table را میتوان روشی برای تبدیل یک ورودی به خروجی بر اساس دادههای از پیش تعریفشده دانست.
به جای اینکه رابطه ورودی و خروجی بهصورت یک مدل ریاضی پیچیده در Simulink پیادهسازی شود، مجموعهای از نقاط مشخص در جدول قرار میگیرد. سپس با تغییر ورودی، Simulink نزدیکترین دادههای مربوط به آن را پیدا کرده و خروجی مناسب را تعیین میکند.
این روش بهخصوص برای مدلسازی رفتارهای غیرخطی و روابطی که از دادههای تجربی به دست آمدهاند بسیار کاربردی است.
ساختار جدول جستجوی یکبعدی
یک جدول جستجوی یکبعدی از دو بخش اصلی تشکیل میشود:
Breakpoints: نقاط مشخص ورودی
Table Data: مقادیر خروجی متناظر با نقاط ورودی
Breakpoints محدوده و نقاط مرجع ورودی را مشخص میکند و Table Data مقدار خروجی مربوط به هر نقطه را تعیین میکند. تعداد مقادیر جدول باید با تعداد نقاط تعریفشده برای Breakpoint سازگار باشد.
به این ترتیب، جدول عملاً مجموعهای از نقاط ورودی و خروجی متناظر را در اختیار مدل قرار میدهد.
مفهوم Breakpoint
Breakpoint یکی از مهمترین اجزای Lookup Table است.
این مقادیر محدودهای را مشخص میکنند که رفتار سیستم در آن ثبت شده است. برای جدول یکبعدی، Breakpointها باید بهصورت مرتب و صعودی تعریف شوند.
برای مثال، اگر رفتار یک تجهیز در چند مقدار مشخص از دما اندازهگیری شده باشد، مقادیر دما میتوانند بهعنوان Breakpoint و خروجیهای اندازهگیریشده بهعنوان Table Data مورد استفاده قرار گیرند.
مفهوم Table Data
Table Data شامل مقادیر خروجی متناظر با Breakpointها است.
هر نقطه ورودی باید یک مقدار خروجی مرتبط داشته باشد. در نتیجه، جدول میتواند رفتار یک سیستم واقعی را بدون نیاز به تعریف مستقیم معادله آن سیستم نمایش دهد.
این قابلیت برای مدلسازی تجهیزات و فرآیندهایی که رفتار آنها از دادههای تجربی استخراج شده بسیار مفید است.
نحوه عملکرد 1-D Lookup Table
هنگامی که ورودی دقیقاً برابر یکی از Breakpointها باشد، بلوک میتواند مقدار متناظر آن نقطه را مستقیماً از جدول استخراج کند.
اما اگر ورودی بین دو Breakpoint قرار داشته باشد، Simulink بر اساس روش Interpolation انتخابشده، مقدار خروجی مناسب را تخمین میزند. اگر ورودی خارج از محدوده Breakpointها قرار بگیرد، رفتار بلوک به تنظیمات Extrapolation وابسته خواهد بود.
درونیابی در جدول جستجو
Interpolation یکی از مهمترین قابلیتهای Lookup Table است.
فرض کنید دادههای سیستم فقط در چند نقطه مشخص موجود باشند، اما ورودی شبیهسازی مقدار دیگری داشته باشد. در این شرایط لازم نیست برای تمام مقادیر ممکن، دادهای در جدول وجود داشته باشد.
Simulink میتواند بر اساس نقاط نزدیک، مقدار خروجی بین آنها را تخمین بزند. این فرآیند درونیابی نام دارد.
روش Linear Interpolation
روش Linear Point-Slope یکی از روشهای رایج در 1-D Lookup Table است و بهصورت پیشفرض نیز برای این بلوک استفاده میشود.
در این روش، مقدار خروجی بین دو نقطه شناختهشده بر اساس تغییرات بین همان دو نقطه تخمین زده میشود.
سادگی، سرعت مناسب و رفتار قابل پیشبینی باعث شده است که در بسیاری از مدلهای مهندسی، Linear Interpolation انتخاب مناسبی باشد.
روشهای دیگر درونیابی
Simulink برای 1-D Lookup Table علاوه بر روش خطی، روشهای دیگری نیز ارائه میکند؛ از جمله:
Flat
Nearest
Linear Lagrange
Cubic Spline
Akima Spline
هرکدام از این روشها برای نوع خاصی از داده و سطح مشخصی از نرمی یا دقت مناسب هستند. برای نمونه، روشهای Spline میتوانند برای دادههایی که تغییرات نرمتری دارند مناسب باشند، در حالی که روش Nearest رفتار سادهتری ارائه میدهد.
انتخاب روش درونیابی مناسب
انتخاب روش Interpolation باید بر اساس ماهیت داده انجام شود.
اگر دادهها حاصل اندازهگیریهای معمول مهندسی باشند و سرعت اجرای مدل اهمیت داشته باشد، روش خطی معمولاً انتخاب مناسبی است.
اگر هدف ایجاد منحنی نرمتر باشد، میتوان از روشهای Spline استفاده کرد. در مقابل، اگر خروجی باید نزدیکترین مقدار موجود در جدول را دنبال کند، روش Nearest میتواند مناسبتر باشد.
بنابراین افزایش پیچیدگی روش درونیابی الزاماً به معنی بهتر شدن مدل نیست.
مفهوم Extrapolation
اگر مقدار ورودی خارج از محدوده Breakpointها قرار گیرد، Simulink باید تصمیم بگیرد که خروجی چه مقداری داشته باشد.
این فرآیند Extrapolation نام دارد.
برای 1-D Lookup Table، روشهایی مانند Linear، Clip و برخی روشهای Spline برای مدیریت ورودیهای خارج از محدوده در دسترس هستند.
اهمیت انتخاب روش Extrapolation
انتخاب Extrapolation در مدلهای مهندسی بسیار مهم است.
فرض کنید دادههای یک تجهیز فقط در یک محدوده مشخص از دما در دسترس باشند. اگر دما در شبیهسازی از محدوده دادهها خارج شود، استفاده از یک روش Extrapolation نامناسب میتواند خروجی غیرواقعی ایجاد کند.
در چنین شرایطی، استفاده از Clip میتواند باعث شود خروجی در محدوده تعریفشده باقی بماند، در حالی که روش Linear میتواند روند دادهها را خارج از محدوده ادامه دهد.
وارد کردن دادههای جدول
در Simulink میتوان دادههای Breakpoint و Table Data را مستقیماً در تنظیمات بلوک تعریف کرد.
همچنین امکان استفاده از دادههایی که در محیط MATLAB ایجاد یا ذخیره شدهاند وجود دارد. این قابلیت برای پروژههایی که دادهها از محاسبات، آزمایش یا فایلهای خارجی به دست میآیند بسیار مفید است.
در مدلهای بزرگتر، استفاده از دادههای مدیریتشده در Workspace میتواند سازماندهی مدل را سادهتر کند.
Lookup Table Editor
Simulink ابزار Lookup Table Editor را نیز برای مدیریت و ویرایش جدولها ارائه میکند.
این ابزار امکان مشاهده، ویرایش و مدیریت دادههای Lookup Table را فراهم میکند و برای پروژههایی که تعداد زیادی جدول دارند میتواند مدیریت مدل را سادهتر کند.
استفاده از دادههای تجربی
یکی از مهمترین کاربردهای 1-D Lookup Table، تبدیل دادههای تجربی به یک مدل قابل استفاده در Simulink است.
برای مثال، فرض کنید عملکرد یک پمپ در چند مقدار مختلف سرعت اندازهگیری شده باشد. بهجای ایجاد یک مدل ریاضی پیچیده برای رفتار پمپ، میتوان دادههای سرعت و خروجی متناظر را در جدول قرار داد.
در زمان شبیهسازی، Lookup Table بر اساس سرعت لحظهای، خروجی مناسب را تعیین میکند.
مدلسازی رفتار غیرخطی
Lookup Table برای مدلسازی روابط غیرخطی نیز بسیار مناسب است.
ممکن است رفتار یک سیستم در ابتدا با افزایش ورودی بهصورت تقریباً خطی تغییر کند، اما در محدودههای بالاتر وارد ناحیه اشباع یا رفتار غیرخطی شود.
در چنین شرایطی میتوان نقاط مختلف رفتار سیستم را در جدول ثبت کرد و Simulink را به استفاده از این دادهها برای تخمین خروجی مجهز نمود.
کاربرد در سیستمهای حرارتی
در سیستمهای حرارتی، خواص بسیاری از مواد و تجهیزات به دما وابسته هستند.
برای مثال، ظرفیت حرارتی، رسانندگی یا سایر مشخصههای یک ماده ممکن است در محدودههای مختلف دما تغییر کنند. اگر این تغییرات از دادههای تجربی یا منابع معتبر مشخص باشند، میتوان از Lookup Table یکبعدی برای نمایش وابستگی خروجی به دما استفاده کرد.
کاربرد در سیستمهای مکانیکی
در سیستمهای مکانیکی نیز ممکن است یک پارامتر به موقعیت، سرعت یا نیروی ورودی وابسته باشد.
اگر رابطه این متغیرها بهصورت تجربی مشخص شده باشد، Lookup Table میتواند جایگزین مناسبی برای مدلسازی مستقیم این رابطه باشد.
به این ترتیب، مدل Simulink میتواند رفتار واقعی تجهیز را با استفاده از دادههای ثبتشده بازنمایی کند.
کاربرد در سیستمهای کنترلی
Lookup Table در سیستمهای کنترل نیز کاربرد گستردهای دارد.
گاهی ضرایب یا مشخصات یک کنترلکننده باید بر اساس شرایط عملیاتی تغییر کنند. در این حالت میتوان یک متغیر عملیاتی را به Lookup Table وارد کرد و مقدار مناسب پارامتر مورد نیاز را از جدول دریافت کرد.
این روش در کنترلکنندههای دارای Gain Scheduling و مدلهای کنترلی غیرخطی بسیار مفید است.
انتخاب Index Search Method
یکی از تنظیمات مهم 1-D Lookup Table، روش جستجوی موقعیت مناسب در Breakpointها است.
Simulink روشهایی مانند Binary Search، Linear Search و Evenly Spaced Points را ارائه میکند. انتخاب مناسب این روش میتواند روی سرعت اجرای مدل تأثیر بگذارد.
اگر Breakpointها فاصلههای مساوی داشته باشند، روش Evenly Spaced Points میتواند عملکرد مناسبی داشته باشد. برای دادههای نامنظم، روشهای Linear یا Binary Search بسته به نحوه تغییر ورودی و ساختار داده میتوانند انتخاب شوند.
تأثیر تعداد نقاط جدول
تعداد نقاط Breakpoint روی دقت نمایش رفتار سیستم تأثیر دارد.
اگر نقاط بسیار کمی وجود داشته باشند، ممکن است رفتار واقعی سیستم بهخوبی نمایش داده نشود. افزایش تعداد نقاط میتواند تقریب مدل را بهتر کند، اما همزمان حجم داده و پیچیدگی مدل را افزایش میدهد.
بنابراین بهتر است تعداد نقاط بر اساس تغییرات واقعی رفتار سیستم انتخاب شود، نه صرفاً با هدف افزایش حجم جدول.
دادههای نامنظم و منظم
Breakpointها میتوانند دارای فاصلههای مساوی یا نامساوی باشند.
اگر نقاط با فاصله مساوی قرار گرفته باشند، مدیریت آنها میتواند از نظر محاسباتی سادهتر باشد. اگر دادهها در نقاط نامنظم جمعآوری شده باشند، میتوان همان نقاط را بهعنوان Breakpointهای صریح وارد کرد.
Simulink برای هر دو حالت تنظیمات جداگانهای در اختیار کاربر قرار میدهد.
Data Type در Lookup Table
نوع داده نیز در طراحی Lookup Table اهمیت دارد.
Simulink امکان استفاده از انواع داده مختلف برای ورودی، Breakpoint و Table Data را فراهم میکند. این موضوع بهخصوص در مدلهای مرتبط با سیستمهای نهفته و پیادهسازیهای Fixed-Point اهمیت زیادی دارد.
بنابراین در پروژههای صنعتی باید سازگاری انواع داده میان ورودی، جدول و خروجی مورد بررسی قرار گیرد.
Lookup Table در سیستمهای بلادرنگ
در کاربردهای بلادرنگ، سرعت اجرای عملیات Lookup اهمیت زیادی دارد.
انتخاب روش مناسب جستجوی Breakpoint، نوع درونیابی و ساختار داده میتواند روی عملکرد مدل اثر بگذارد. در مدلهایی که Lookup Table به تعداد زیادی فراخوانی میشود، این موضوع اهمیت بیشتری پیدا میکند.
به همین دلیل طراحی جدول فقط یک مسئله مربوط به داده نیست و جنبه محاسباتی نیز دارد.
مقایسه Lookup Table با مدل ریاضی
استفاده از Lookup Table در مقابل تعریف یک تابع ریاضی مزایا و محدودیتهایی دارد.
مدل ریاضی زمانی مناسب است که رابطه سیستم بهخوبی شناخته شده و بتوان آن را با یک مدل تحلیلی مناسب توصیف کرد.
اما زمانی که رابطه پیچیده، تجربی یا ناشناخته باشد، Lookup Table میتواند راهکار سادهتر و واقعگرایانهتری ارائه دهد.
محدودیتهای Lookup Table
Lookup Table نیز مانند هر روش مدلسازی دیگری محدودیتهایی دارد.
اگر دادههای جدول کیفیت مناسبی نداشته باشند، مدل نیز نمیتواند رفتار واقعی سیستم را بهدرستی نمایش دهد. همچنین انتخاب نامناسب روش درونیابی یا برونیابی ممکن است باعث ایجاد خروجی غیرواقعی شود.
بنابراین کیفیت دادههای اولیه به اندازه تنظیمات خود بلوک اهمیت دارد.
جایگاه 1-D Lookup Table در مدلسازی سیمولینک
1-D Lookup Table سادهترین نوع جدول جستجو از نظر تعداد متغیرهای ورودی است.
اگر خروجی تنها به یک متغیر مستقل وابسته باشد، این بلوک انتخاب مناسبی خواهد بود. اگر خروجی به دو یا چند متغیر مستقل وابسته باشد، باید از 2-D یا n-D Lookup Table استفاده شود. کتابخانه Lookup Tables سیمولینک انواع مختلف این بلوکها را برای مدلسازی روابط چندمتغیره نیز ارائه میکند.
جمعبندی
1-D Lookup Table یکی از ابزارهای مهم Simulink برای مدلسازی روابطی است که میتوان آنها را با مجموعهای از دادههای ورودی و خروجی نمایش داد.
در این بلوک، Breakpointها محدوده و نقاط مرجع ورودی را مشخص میکنند و Table Data مقادیر خروجی متناظر را در اختیار مدل قرار میدهد. اگر ورودی دقیقاً روی یکی از نقاط جدول قرار نداشته باشد، Simulink میتواند با استفاده از روشهای مختلف Interpolation مقدار مناسب را تخمین بزند. برای ورودیهای خارج از محدوده نیز تنظیمات Extrapolation تعیینکننده رفتار خروجی خواهند بود.
به همین دلیل، انتخاب صحیح دادههای جدول، روش درونیابی، روش برونیابی، روش جستجوی نقاط و نوع داده از مهمترین مراحل طراحی یک Lookup Table قابل اعتماد محسوب میشوند. این قابلیت در مدلسازی تجهیزات صنعتی، سیستمهای کنترل، دادههای تجربی و رفتارهای غیرخطی کاربرد گستردهای دارد.
کلیدواژه ها : 1-D Lookup Table-جدول جستجوی یکبعدی-Lookup Table-جدول جستجو-Simulink Lookup Table-جدول جستجوی سیمولینک-Breakpoint-نقطه شکست-Breakpoint Data-داده نقاط شکست-Table Data-داده جدول-Interpolation-درونیابی-Linear Interpolation-درونیابی خطی-Nearest Interpolation-درونیابی نزدیکترین مقدار-Cubic Spline-اسپلاین مکعبی-Akima Spline-اسپلاین آکیما-Extrapolation-برونیابی-Clip Extrapolation-برونیابی محدود-Linear Extrapolation-برونیابی خطی-Index Search-جستجوی شاخص-Binary Search-جستجوی دودویی-Linear Search-جستجوی خطی-Evenly Spaced Points-نقاط با فاصله مساوی-Nonlinear Modeling-مدلسازی غیرخطی-Empirical Data-داده تجربی-Experimental Data-داده آزمایشگاهی-Function Approximation-تقریب تابع-Data Mapping-نگاشت داده-Table Lookup-جستجوی جدول-Lookup Table Editor-ویرایشگر جدول جستجو-Simulink Modeling-مدلسازی سیمولینک-Control System-سیستم کنترل-Gain Scheduling-زمانبندی بهره-Real-Time Simulation-شبیهسازی بلادرنگ-Fixed Point-حساب ممیز ثابت-Data Type-نوع داده-Continuous System-سیستم پیوسته-Discrete System-سیستم گسسته-2-D Lookup Table-جدول جستجوی دوبعدی-n-D Lookup Table-جدول جستجوی چندبعدی-Model-Based Design-طراحی مبتنی بر مدل