شبیهسازی سختافزار در حلقه (HIL)
شبیهسازی سختافزار در حلقه (HIL) میتواند سختافزار کنترلکننده یک سیستم کنترل حلقه بسته را به صورت واقعی در کنار شبیهسازی نرمافزاری بقیه اجزای سیستم، تست و ارزیابی نماید. همانطور که پیچیدگی و یکپارچگی سیستمهای اویونیکی روزبهروز بیشتر میشود، هزینههای کلی و مدت زمان صحتسنجی و اعتبارسنجی سیستمها به طور مداوم افزایش پیدا میکند. این موجب افزایش هزینههای طراحی سیستمهای جدید نیز خواهد شد. به همین دلیل برای کنترل هزینهها، کاهش زمانبندی و بهبود کیفیت کلی، راهکارهای شبیهسازی سختافزار در حلقه (HIL) توزیع شده ارائه شد.
این شبیهسازیها برای بررسی سیستمهای اویونیک ماژولار یکپارچه به کار گرفته میشوند. در واقع با پیچیدهتر شدن معماری اویونیک، سیستم اویونیک توزیعشده باید همواره به تعداد زیادی از رابطهای هواپیما، حسگرها و محرکها متصل باشد. در نتیجه سیستم شبیهساز سختافزار در حلقه نیز مستلزم یک معماری توزیعشده با پردازش بلادرنگ خواهد بود.
مقدمه
امروزه برنامههای کاربردی اویونیک در شبکهای از سیستمهای ماژولار یکپارچه (IMA) ارائه میشوند. به دلیل افزایش تعداد تجهیزات، استفاده از معماری شبکه برای انتقال داده بین هر زیرسیستم بسیار اهمیت دارد. همچنین ارتباطات تعمیر و نگهداری، داده ویدئویی با پهنای باند بالا و داده بلادرنگ رویداد محور، باید در شبکه ارتباطات اویونیک، یکپارچه و ادغام شوند.
طراحی مبتنی بر مدل فرایندی برای طراحی و پیادهسازی سیستمهای کنترل است که در آن همه مراحل طراحی، پیادهسازی، تست و ارزیابی سیستم کنترل با استفاده از یک مدل نرمافزاری انجام میشود. شرکت MathWorks بهعنوان یکی از توسعهدهندگان اصلی این روش طراحی است و توسعه نرمافزار MATLAB و بهصورت خاص SIMULINK بهنحوی صورت میگیرد که همه مراحل طراحی، تست و پیادهسازی یک سیستم کنترلی را بتوان در این محیط انجام داد.
در ابتدای ظهور معماری IMA اکثر سیستمهای اویونیکی برای اتصال به سایر تجهیزات، به گذرگاههای سختافزاری خاص و رابطهای اختصاصی تکیه میکردند. از نمونه این گذرگاههای استاندارد معمول میتوان به MIL-STD-1553 در کاربردهای نظامی و ARINC 429 در کاربردهای تجاری اشاره کرد. اما با افزایش توزیعشدگی سیستمها در شبکه، این گذرگاهها به اندازه کافی سریع و مقیاسپذیر نبودند.
به همین دلیل استاندارد تجاری اترنت (IEEE 802.3) به مرور به ستون فقرات ارتباطات در سیستمهای اویونیک تبدیل شد. در چند دهه اخیر اترنت به عنوان یک استاندارد بالفعل برای کاربردهای تجاری توزیعشده استفاده میشود. این استاندارد کم هزینه یک فناوری اثباتشده برای برنامههای سیستمهای توزیعشده است. در نتیجه تبدیل اترنت به محور اصلی شبکه اویونیک ماژولار یکپارچه را میتوان یک روند قابل انتظار دانست.
اگرچه اترنت مزایای زیادی را ارائه میکند اما برنامههای کاربردی اویونیکی خاصی وجود دارند که اترنت روی آنها اعمال نمیشود. به طور معمول این برنامهها علاوه بر توزیع داده شبکهای، به ویژگیهای دیگری که هنوز اترنت برای آن تجهیز نشده است، نیازمندند.
روند طراحی مبتنی بر مدل به بیان ساده بدینصورت است: ابتدا مدل نرمافزاری سیستم در محیط SIMULINK طراحی شده و سپس پارامترهای مدل با استفاده از ورودیها و خروجیهای سیستم واقعی تنظیم میشوند. این کار با استفاده از ابزار Parameter Estimation انجام میشود. سپس سیستم کنترل با استفاده از ابزارهای متنوع موجود برای مدل نرمافزاری طراحی میشود.
در ادامه نمونهسازی سریع و شبیهسازی سختافزار در حلقه پلنت انجام میشود که در آن کنترلکننده طراحیشده در محیط SIMULINK با استفاده از ابزارهای Real Time Windows Target یا xPC Target بهصورت زمانحقیقی اجرا شده و به پلنت واقعی متصل میشود. در این حالت میتوان عملکرد سیستم کنترل را روی پلنت واقعی ارزیابی کرد و تنظیمات نهایی را انجام داد.
پس از تنظیم پارامترهای کنترلکننده نوبت به پیادهسازی آن روی یک برد سختافزاری میرسد. در روش طراحی مبتنی مدل این کار با استفاده از ابزارهای تولید خودکار کد انجام میشود. در این حالت نیازی به کدنویسی سختافزار پردازشی بهصورت دستی نیست و با انجام یکسری تنظیمات ساده میتوان مدل توسعهدادهشده در محیط SIMULINK را روی برد سختافزاری موردنظر پیادهسازی کرد.
ایده اصلی شبیه سازی سخت افزار در حلقه (HIL)، به قراردادن یک یا چند زیر سیستم از یک سامانه به صورت سخت افزار واقعی در حلقه ی شبیه سازی مربوط می شود. مزیت عمده این روش این است که بدون نیاز به ساخت تمام اجزای سیستم، می توان سیستم کنترل را در شرایطی تا حد امکان واقعی مورد آزمایش قرار داد و چون به جای برخی از زیر سیستم ها، سخت افزار واقعی قرار گرفته است، نتایج شبیه سازی به عملکرد واقعی سیستم نزدیکتر خواهد بود و در نتیجه می توان از ریسک و هزینه ی آزمایش هایی که ممکن است ناموفق باشند، جلوگیری کرد.
گام اول در طراحی مفهومی آزمایشگاه، تعیین حلقه های موجود در سیستم و تعیین زیر سیستم های هر حلقه است. ممکن است یک سیستم برای انجام صحیح مأموریت خود، از چندین حلقه استفاده کند که هرکدام از این حلقه ها دارای زیر سیستم های متعدد هستند. پس از تعیین حلقه های موجود در سیستم لازم است که تعیین شود که شبیه سازی سخت افزار در حلقه برای کدام حلقه ها انجام می شود.
اینکه کدام یک از زیر سیستم ها و کدام حلقه در شبیه سازی سخت افزار در حلقه مورد بررسی قرار بگیرند، به نظر طراحان سیستم و امکانات در دسترس بستگی داشته و در جلسات مشترک تعیین می شود. پس از تعیین حلقه-هایی که در شبیه سازی سخت افزار در حلقه به آنها توجه می شود، بررسی از داخلی ترین حلقه آغاز شده و تا بیرونی ترین حلقه ادامه خواهد یافت. شبیه سازی سخت افزار در حلقه برای یک سیستم بسته به اینکه کدام قسمت از آن به صورت نرم افزاری و کدام قسمت به صورت سخت افزاری در حلقه شبیه سازی قرار گیرد، متفاوت است.
در مرحله دوم، تمام حالاتی که زیر سیستم های یک حلقه به صورت سخت افزار یا نرم افزاری در حلقه ی شبیه سازی قرار می گیرند در جدولی به نام جدول حالات رسم می شوند. بعد از رسم جدول حالات برای حلقه های مورد نظر سیستم، لازم است حالاتی که از لحاظ منطقی غیرممکن هستند از جدول حالات حذف شوند.
یک نمونه از حالات غیرممکن حالت هایی است که در آنها پلنت به صورت سخت افزاری و حسگرها و عملگرها به صورت نرم افزاری در حلقه ی شبیه سازی قرار داده شده اند، زیرا در حالتی که پلنت واقعی باشد، نمی توان با استفاده از عملگر شبیه سازی شده، فرمانی به آن اعمال کرد، همچنین در این حالت نمی توان با استفاده از حسگر شبیه سازی شده اطلاعات مورد نیاز را خواند، علاوه بر آن، حالت هایی که حسگر به صورت سخت افزاری در حلقه شبیه سازی قرار داشته و پارامتری که قرار است توسط آن اندازه گیری شود، به صورت نرم افزاری در حلقه قرار داده شود، به عنوان حالات غیرممکن حذف می شوند.
آموزش MATLAB & SIMULINK 2016 به صورت تصویری در قالب ۲ دی وی دی آموزشی به صورت اینتراکتیو همراه با نرم افزار متلب ۲۰۱۶ را از لینک زیر می توانید تهیه کنید.