این نشریه رونویسی از وبینار را ارائه می دهد
امروز یاد خواهیم گرفت که میتوانیم مدلها را برای رسیدن به تعادل بهینه بین صحت و دقت نتایج شبیهسازی و سرعت فرآیند شبیهسازی تنظیم کنیم. این کلید استفاده موثر از شبیه سازی و اطمینان از اینکه سطح جزئیات در مدل شما برای کاری که قصد انجام آن را دارید مناسب است.
همچنین خواهیم آموخت:
- چگونه می توانید با استفاده از الگوریتم های بهینه سازی و محاسبات موازی، شبیه سازی ها را سرعت بخشید.
- نحوه توزیع شبیهسازیها در چندین هسته رایانه، سرعت بخشیدن به وظایفی مانند تخمین پارامتر و انتخاب پارامتر.
- نحوه سرعت بخشیدن به توسعه با خودکارسازی وظایف شبیه سازی و تجزیه و تحلیل با استفاده از MATLAB.
- نحوه استفاده از اسکریپت های متلب برای تجزیه و تحلیل هارمونیک و مستندسازی نتایج هر نوع تست با استفاده از تولید گزارش خودکار.
ما با مروری بر مدل شبکه الکتریکی هواپیما شروع می کنیم. ما در مورد اهداف شبیه سازی خود بحث خواهیم کرد و به روند توسعه ای که برای ایجاد مدل استفاده شده است نگاه خواهیم کرد.
سپس مراحل این فرآیند از جمله طراحی اولیه را طی می کنیم - جایی که الزامات را روشن می کنیم. طراحی تفصیلی - جایی که به تک تک اجزای شبکه الکتریکی نگاه می کنیم و در نهایت از نتایج شبیه سازی طرح تفصیلی برای تنظیم پارامترهای مدل انتزاعی استفاده می کنیم. در نهایت، به نحوه مستندسازی نتایج تمام این مراحل در گزارش ها خواهیم پرداخت.
در اینجا یک نمایش شماتیک از سیستمی است که ما در حال توسعه آن هستیم. این یک مدل نیمه هواپیما است که شامل ژنراتور، باس AC، بارهای متناوب متناوب مختلف، واحد ترانسفورماتور یکسو کننده، باس DC با بارهای مختلف و باتری است.
سوئیچ ها برای اتصال قطعات به شبکه الکتریکی استفاده می شوند. با روشن و خاموش شدن قطعات در طول پرواز، شرایط الکتریکی ممکن است تغییر کند. ما می خواهیم این نیمه از شبکه برق هواپیما را در این شرایط متغیر تحلیل کنیم.
یک مدل کامل از یک سیستم الکتریکی هواپیما باید شامل سایر اجزا باشد. ما آنها را در این مدل نیم صفحه قرار نداده ایم زیرا فقط می خواهیم تعاملات بین این اجزا را تجزیه و تحلیل کنیم. این یک روش معمول در هواپیماسازی و کشتی سازی است.
اهداف شبیه سازی:
- الزامات الکتریکی برای اجزای مختلف و همچنین خطوط برقی که آنها را به هم وصل می کنند، تعیین کنید.
- تجزیه و تحلیل تعاملات سیستم بین اجزای رشته های مهندسی مختلف، از جمله اثرات الکتریکی، مکانیکی، هیدرولیک و حرارتی.
- و در سطح دقیق تر، تجزیه و تحلیل هارمونیک را انجام دهید.
- کیفیت منبع تغذیه را تحت شرایط متغیر تجزیه و تحلیل کنید و به ولتاژها و جریان ها در گره های مختلف شبکه نگاه کنید.
این مجموعه از اهداف شبیهسازی با استفاده از مدلهایی با درجات مختلف جزئیات به بهترین وجه انجام میشود. خواهیم دید که در طول فرآیند توسعه، یک مدل انتزاعی و دقیق خواهیم داشت.
وقتی به نتایج شبیهسازی این مدلهای مختلف نگاه میکنیم، میبینیم که نتایج مدل سطح سیستم و مدل دقیق یکسان هستند.
اگر نگاه دقیقتری به نتایج شبیهسازی بیندازیم، میبینیم که حتی با وجود دینامیک ناشی از تعویض دستگاههای قدرت در نسخه دقیق مدل ما، نتایج کلی شبیهسازی یکسان است.
این به ما امکان می دهد تا تکرارهای سریع در سطح سیستم و همچنین تجزیه و تحلیل دقیق سیستم الکتریکی را در سطح دانه ای انجام دهیم. به این ترتیب می توانیم به طور موثر به اهداف خود برسیم.
حالا بیایید در مورد مدلی که با آن کار می کنیم صحبت کنیم. ما برای هر جزء در شبکه برق چندین گزینه ایجاد کرده ایم. بسته به مشکلی که حل می کنیم، انتخاب می کنیم که از کدام نوع جزء استفاده کنیم.
وقتی گزینههای تولید برق شبکه را بررسی میکنیم، میتوانیم ژنراتور درایو یکپارچه را با یک ژنراتور سرعت متغیر نوع سیکلونوکتور یا یک ژنراتور فرکانس جفت شده DC جایگزین کنیم. ما می توانیم از اجزای بار انتزاعی یا جزئی در مدار AC استفاده کنیم.
به طور مشابه، برای یک شبکه DC، میتوانیم از یک گزینه انتزاعی، دقیق یا چند رشتهای استفاده کنیم که تأثیر سایر رشتههای فیزیکی مانند مکانیک، هیدرولیک و اثرات دما را در نظر میگیرد.
جزئیات بیشتر در مورد مدل
در اینجا مولد، شبکه توزیع و اجزای موجود در شبکه را مشاهده می کنید. این مدل در حال حاضر برای شبیه سازی با مدل های جزء انتزاعی تنظیم شده است. محرک به سادگی با تعیین توان اکتیو و راکتیو که جزء مصرف می کند، مدل سازی می شود.
اگر این مدل را به گونهای پیکربندی کنیم که از انواع اجزای دقیق استفاده کند، محرک قبلاً به عنوان یک ماشین الکتریکی مدلسازی شده است. ما موتور سنکرون آهنربای دائم، مبدل ها و اتوبوس DC و سیستم کنترل داریم. اگر به واحد ترانسفورماتور یکسو کننده نگاه کنیم، می بینیم که با استفاده از ترانسفورماتورها و پل های جهانی که در الکترونیک قدرت استفاده می شود، مدل سازی شده است.
همچنین میتوانیم یک گزینه سیستمی (در بارهای TRU DC -> Block Choices -> Multidomain) انتخاب کنیم که اثرات مرتبط با سایر پدیدههای فیزیکی (در پمپ سوخت) را در نظر میگیرد. برای پمپ بنزین می بینیم که یک پمپ هیدرولیک داریم، بارهای هیدرولیک. برای بخاری، ما شاهد در نظر گرفتن اثرات دما هستیم که بر رفتار آن جزء با تغییر دما تأثیر می گذارد. ژنراتور ما با استفاده از یک ماشین سنکرون مدل سازی شده است و ما یک سیستم کنترل برای تنظیم میدان ولتاژ برای این دستگاه داریم.
چرخه های پرواز با استفاده از یک متغیر متلب به نام Flight_Cycle_Num انتخاب می شوند. و در اینجا ما داده هایی را از فضای کاری MATLAB می بینیم که روشن و خاموش شدن برخی از اجزای شبکه الکتریکی را کنترل می کند. این نمودار (Plot_FC) برای اولین چرخه پرواز زمانی که اجزا روشن یا خاموش می شوند نشان می دهد.
اگر مدل را روی نسخه Tuned تنظیم کنیم، می توانیم از این اسکریپت (Test_APN_Model_SHORT) برای اجرای مدل استفاده کنیم و آن را در سه چرخه پرواز مختلف آزمایش کنیم. اولین چرخه پرواز در حال انجام است و ما در حال آزمایش سیستم در شرایط مختلف هستیم. سپس به طور خودکار مدل را برای اجرای یک چرخه پرواز دوم و یک چرخه سوم پیکربندی می کنیم. پس از اتمام این تست ها، گزارشی داریم که نتایج این سه تست را نسبت به آزمایش های قبلی نشان می دهد. در این گزارش می توانید اسکرین شات هایی از مدل، اسکرین شات هایی از نمودارهایی که سرعت، ولتاژ و توان تولیدی در خروجی ژنراتور را نشان می دهد، نمودارهای مقایسه با آزمایش های قبلی و همچنین نتایج تجزیه و تحلیل کیفیت شبکه الکتریکی را مشاهده کنید.
یافتن یک مبادله بین وفاداری مدل و سرعت شبیه سازی کلید استفاده موثر از شبیه سازی است. همانطور که جزئیات بیشتری را به مدل خود اضافه می کنید، زمان مورد نیاز برای محاسبه و شبیه سازی مدل افزایش می یابد. مهم است که مدل را برای مشکل خاصی که حل می کنید سفارشی کنید.
وقتی به جزئیاتی مانند کیفیت توان علاقه مند هستیم، جلوه هایی مانند سوئیچینگ الکترونیک قدرت و بارهای واقعی را اضافه می کنیم. با این حال، زمانی که به مسائلی مانند تولید یا مصرف انرژی توسط اجزای مختلف در شبکه برق علاقه مند هستیم، از روش شبیه سازی پیچیده، بارهای انتزاعی و مدل های ولتاژ متوسط استفاده خواهیم کرد.
با استفاده از محصولات Mathworks، می توانید سطح دقیق جزئیات را برای مسئله مورد نظر انتخاب کنید.
برای طراحی موثر، به مدلهای انتزاعی و جزئی اجزا نیاز داریم. در اینجا نحوه قرار گرفتن این گزینه ها در فرآیند توسعه ما آمده است:
- ابتدا، ما الزامات را با استفاده از یک نسخه انتزاعی از مدل روشن می کنیم.
- سپس از الزامات تصفیه شده برای طراحی جزییات جزء استفاده می کنیم.
- ما میتوانیم یک نسخه انتزاعی و دقیق از یک جزء را در مدل خود ترکیب کنیم، که امکان تأیید و ترکیب جزء با سیستمهای مکانیکی و سیستمهای کنترل را فراهم میکند.
- در نهایت، میتوانیم از نتایج شبیهسازی مدل تفصیلی برای تنظیم پارامترهای مدل انتزاعی استفاده کنیم. این به ما مدلی می دهد که به سرعت اجرا می شود و نتایج دقیقی تولید می کند.
می بینید که این دو گزینه - سیستم و مدل تفصیلی - یکدیگر را تکمیل می کنند. کاری که ما با مدل انتزاعی انجام می دهیم تا نیازمندی ها را روشن کنیم، تعداد تکرارهای مورد نیاز برای طراحی دقیق را کاهش می دهد. این روند توسعه ما را سرعت می بخشد. نتایج شبیه سازی مدل تفصیلی یک مدل انتزاعی به ما می دهد که به سرعت اجرا می شود و نتایج دقیقی را تولید می کند. این به ما امکان میدهد بین سطح جزئیات مدل و وظیفهای که شبیهسازی انجام میدهد مطابقت داشته باشیم.
بسیاری از شرکت ها در سراسر جهان از MOS برای توسعه سیستم های پیچیده استفاده می کنند. ایرباس در حال توسعه یک سیستم مدیریت سوخت برای A380 بر اساس MOP است. این سیستم شامل بیش از 20 پمپ و بیش از 40 شیر می باشد. شما می توانید تعداد سناریوهای شکست مختلف را تصور کنید که ممکن است رخ دهد. با استفاده از شبیه سازی، آنها می توانند بیش از صد هزار تست را در آخر هفته اجرا کنند. این به آنها اطمینان می دهد که بدون توجه به سناریوی شکست، سیستم کنترل آنها می تواند آن را مدیریت کند.
اکنون که نمای کلی مدل و اهداف شبیه سازی خود را دیدیم، روند طراحی را طی خواهیم کرد. ما با استفاده از یک مدل انتزاعی برای روشن کردن الزامات سیستم شروع خواهیم کرد. این الزامات تصفیه شده برای طراحی دقیق استفاده خواهد شد.
ما نحوه ادغام اسناد الزامات را در فرآیند توسعه خواهیم دید. ما یک سند الزامات بزرگ داریم که تمام الزامات سیستم ما را مشخص می کند. مقایسه الزامات با کل پروژه و اطمینان از اینکه پروژه این الزامات را برآورده می کند بسیار دشوار است.
با استفاده از SLVNV، می توانید اسناد مورد نیاز و مدل را مستقیماً در Simulink پیوند دهید. میتوانید مستقیماً از مدل به الزامات پیوند ایجاد کنید. این امر بررسی اینکه بخش خاصی از مدل به یک نیاز خاص مربوط می شود آسان تر می کند و بالعکس. این ارتباط دو طرفه است. بنابراین اگر به یک نیاز نگاه می کنیم، می توانیم به سرعت به یک مدل بپریم تا ببینیم چگونه آن نیاز برآورده شده است.
اکنون که سند الزامات را در گردش کار ادغام کردهایم، الزامات شبکه الکتریکی را اصلاح خواهیم کرد. به طور خاص، ما به نیازهای بار عملیاتی، پیک و طراحی برای ژنراتورها و خطوط انتقال نگاه خواهیم کرد. ما آنها را در طیف گسترده ای از شرایط شبکه آزمایش خواهیم کرد. آن ها در طول چرخه های مختلف پرواز، زمانی که بارهای مختلف روشن و خاموش می شوند. از آنجایی که ما فقط روی برق تمرکز می کنیم، از سوئیچینگ در الکترونیک قدرت غفلت خواهیم کرد. بنابراین از مدل های انتزاعی و روش های شبیه سازی ساده شده استفاده خواهیم کرد. این بدان معناست که ما مدل را طوری تنظیم می کنیم که جزئیاتی را که به آن نیاز نداریم نادیده بگیریم. این باعث میشود شبیهسازی سریعتر اجرا شود و به ما امکان میدهد شرایط را در چرخههای طولانی پرواز آزمایش کنیم.
ما یک منبع جریان متناوب داریم که از زنجیره ای از مقاومت ها، خازن ها و اندوکتانس ها عبور می کند. کلیدی در مدار وجود دارد که بعد از مدتی باز می شود و دوباره بسته می شود. اگر شبیه سازی را اجرا کنید، می توانید نتایج را با حل کننده پیوسته ببینید. (V1) می بینید که نوسانات مربوط به باز و بسته شدن کلید به طور دقیق نمایش داده می شود.
حالا بیایید به حالت گسسته سوئیچ کنیم. بر روی بلوک PowerGui دوبار کلیک کنید و حل کننده گسسته را در تب Solver انتخاب کنید. می بینید که حل کننده گسسته اکنون انتخاب شده است. بیایید شبیه سازی را شروع کنیم. خواهید دید که نتایج اکنون تقریباً یکسان است، اما دقت به نرخ نمونه انتخابی بستگی دارد.
اکنون می توانم حالت شبیه سازی پیچیده را انتخاب کنم، فرکانس را تنظیم کنم - زیرا راه حل فقط در یک فرکانس مشخص به دست می آید - و دوباره شبیه سازی را اجرا کنم. خواهید دید که فقط دامنه سیگنال نمایش داده می شود. با کلیک بر روی این بلوک، می توانم یک اسکریپت متلب را اجرا کنم که مدل را به صورت متوالی در هر سه حالت شبیه سازی اجرا می کند و نمودارهای حاصل را روی هم ترسیم می کند. اگر به جریان و ولتاژ دقیقتر نگاه کنیم، خواهیم دید که نتایج گسسته نزدیک به نتایج پیوسته هستند، اما کاملاً منطبق هستند. اگر به جریان نگاه کنید، می بینید که یک اوج وجود دارد که در حالت گسسته شبیه سازی مشخص نشده است. و می بینیم که حالت پیچیده به شما امکان می دهد فقط دامنه را ببینید. اگر به مرحله حل کننده نگاه کنیم، می بینیم که حل کننده پیچیده تنها به 56 مرحله نیاز دارد، در حالی که حل کننده های دیگر به مراحل بسیار بیشتری برای تکمیل شبیه سازی نیاز دارند. این باعث شد حالت شبیه سازی پیچیده بسیار سریعتر از حالت های دیگر اجرا شود.
علاوه بر انتخاب یک حالت شبیه سازی مناسب، به مدل هایی با سطح جزئیات مناسب نیاز داریم. برای روشن شدن توان مورد نیاز قطعات در یک شبکه الکتریکی، از مدل های انتزاعی کاربرد عمومی استفاده خواهیم کرد. بلوک Dynamic Load به ما اجازه می دهد تا توان اکتیو و راکتیو را که یک جزء در شبکه مصرف یا تولید می کند، مشخص کنیم.
ما یک مدل انتزاعی اولیه برای توان راکتیو و اکتیو بر اساس مجموعه ای از الزامات اولیه تعریف خواهیم کرد. ما از بلوک منبع ایده آل به عنوان منبع استفاده خواهیم کرد. این به شما امکان می دهد تا ولتاژ شبکه را تنظیم کنید و می توانید از آن برای تعیین پارامترهای ژنراتور استفاده کنید و بفهمید که چه مقدار برق باید تولید کند.
در مرحله بعد، نحوه استفاده از شبیهسازی برای اصلاح توان مورد نیاز برای ژنراتور و خطوط انتقال را خواهید دید.
ما یک مجموعه اولیه از الزامات داریم که شامل رتبه قدرت و ضریب توان برای اجزای شبکه است. ما همچنین یک سری شرایط داریم که این شبکه می تواند در آن فعالیت کند. ما می خواهیم این الزامات اولیه را با آزمایش در طیف گسترده ای از شرایط اصلاح کنیم. ما این کار را با تنظیم مدل برای استفاده از بارها و منابع انتزاعی و آزمایش الزامات تحت طیف گسترده ای از شرایط عملیاتی انجام خواهیم داد.
ما مدل را طوری پیکربندی میکنیم که از مدلهای بار انتزاعی و ژنراتور استفاده کند و توان تولید و مصرف شده را در طیف گستردهای از شرایط عملیاتی ببینیم.
حالا به سراغ آن می رویم طراحی دقیق و با جزییات. ما از الزامات تصفیه شده برای جزئیات طراحی استفاده خواهیم کرد و این اجزای دقیق را با مدل سیستم ترکیب خواهیم کرد تا مشکلات یکپارچه سازی را شناسایی کنیم.
امروزه چندین گزینه برای تولید برق در هواپیما وجود دارد. به طور معمول ژنراتور توسط ارتباط با یک توربین گاز هدایت می شود. توربین با فرکانس متغیر می چرخد. اگر شبکه باید فرکانس ثابتی داشته باشد، تبدیل از سرعت شفت متغیر توربین به فرکانس ثابت در شبکه مورد نیاز است. این را می توان با استفاده از یک درایو با سرعت ثابت یکپارچه در بالادست ژنراتور، یا با استفاده از الکترونیک قدرت برای تبدیل AC فرکانس متغیر به AC فرکانس ثابت انجام داد. همچنین سیستم هایی با فرکانس شناور وجود دارند که فرکانس در شبکه می تواند تغییر کند و تبدیل انرژی در بارهای موجود در شبکه رخ می دهد.
هر یک از این گزینه ها به یک ژنراتور و الکترونیک قدرت برای تبدیل انرژی نیاز دارند.
ما یک توربین گاز داریم که با سرعت متغیر می چرخد. این توربین برای چرخش شفت ژنراتور استفاده می شود که جریان متناوب با فرکانس متغیر تولید می کند. برای تبدیل این فرکانس متغیر به فرکانس ثابت می توان از گزینه های مختلف الکترونیک قدرت استفاده کرد. ما می خواهیم این گزینه های مختلف را ارزیابی کنیم. این را می توان با استفاده از SPS انجام داد.
ما میتوانیم هر یک از این سیستمها را مدلسازی کنیم و شبیهسازیها را در شرایط مختلف اجرا کنیم تا ارزیابی کنیم که کدام گزینه برای سیستم ما بهترین است. بیایید به مدل سوئیچ کنیم و ببینیم چگونه این کار انجام می شود.
این مدلی است که ما با آن کار می کنیم. سرعت متغیر از شفت توربین گاز به ژنراتور منتقل می شود. و سیکلوکونورتر برای تولید جریان متناوب فرکانس ثابت استفاده می شود. اگر شبیه سازی را اجرا کنید، خواهید دید که مدل چگونه رفتار می کند. نمودار بالا سرعت متغیر یک توربین گاز را نشان می دهد. می بینید که فرکانس در حال تغییر است. این سیگنال زرد در نمودار دوم ولتاژ یکی از فازها در خروجی ژنراتور است. این جریان متناوب فرکانس ثابت از سرعت متغیر با استفاده از الکترونیک قدرت ایجاد می شود.
بیایید به نحوه توصیف بارهای AC نگاه کنیم. ما به یک لامپ، یک پمپ هیدرولیک و یک محرک متصل است. این اجزا با استفاده از بلوک های SPS مدل سازی شده اند.
هر یک از این بلوکها در SPS شامل تنظیمات پیکربندی میشود تا به شما امکان میدهد پیکربندیهای اجزای مختلف را تطبیق دهید و سطح جزئیات را در مدل خود تنظیم کنید.
ما مدلها را برای اجرای یک نسخه دقیق از هر جزء پیکربندی کردیم. بنابراین ما قدرت زیادی برای مدلسازی بارهای AC داریم و با شبیهسازی اجزای دقیق در حالت گسسته، میتوانیم جزئیات بسیار بیشتری از آنچه در شبکه الکتریکی ما میگذرد را ببینیم.
یکی از کارهایی که با نسخه دقیق مدل انجام خواهیم داد، تجزیه و تحلیل کیفیت انرژی الکتریکی است.
هنگامی که یک بار وارد سیستم می شود، می تواند باعث ایجاد اعوجاج شکل موج در منبع ولتاژ شود. این یک سینوسی ایده آل است و اگر بارها ثابت باشند، چنین سیگنالی در خروجی ژنراتور خواهد بود. با این حال، با افزایش تعداد اجزایی که میتوانند روشن و خاموش شوند، این شکل موج میتواند مخدوش شود و منجر به افزایشهای کوچکی شود.
این جهش ها در شکل موج در منبع ولتاژ می تواند مشکلاتی ایجاد کند. این می تواند منجر به گرم شدن بیش از حد ژنراتور به دلیل سوئیچینگ در الکترونیک قدرت شود، این می تواند جریان های خنثی زیادی ایجاد کند و همچنین باعث سوئیچینگ غیر ضروری در الکترونیک قدرت شود. آنها انتظار این جهش در سیگنال را ندارند.
اعوجاج هارمونیک معیاری از کیفیت توان الکتریکی AC را ارائه می دهد. اندازه گیری این نسبت در شرایط متغیر شبکه مهم است زیرا بسته به اینکه کدام جزء روشن و خاموش شده باشد، کیفیت متفاوت خواهد بود. اندازه گیری این نسبت با استفاده از ابزارهای MathWorks آسان است و می توان آن را برای آزمایش در طیف وسیعی از شرایط خودکار کرد.
در مورد THD بیشتر بدانید
در ادامه نحوه اجرای آن را خواهیم دید تجزیه و تحلیل کیفیت توان با استفاده از شبیه سازی
ما مدلی از شبکه برق هواپیما داریم. به دلیل بارهای مختلف در شبکه، شکل موج ولتاژ در خروجی ژنراتور مخدوش می شود. این منجر به بدتر شدن کیفیت غذا می شود. این بارها در زمان های مختلف در طول چرخه پرواز قطع و آنلاین می شوند.
ما می خواهیم کیفیت برق این شبکه را در شرایط مختلف ارزیابی کنیم. برای این کار از SPS و MATLAB برای محاسبه خودکار THD استفاده می کنیم. ما می توانیم نسبت را به صورت تعاملی با استفاده از رابط کاربری گرافیکی محاسبه کنیم یا از یک اسکریپت MATLAB برای اتوماسیون استفاده کنیم.
بیایید به مدل برگردیم تا این را با یک مثال به شما نشان دهیم. مدل شبکه الکتریکی هواپیمای ما شامل یک ژنراتور، یک باس AC، بارهای متناوب، و یک ترانسفورماتور یکسو کننده و بارهای DC است. ما می خواهیم کیفیت توان را در نقاط مختلف شبکه در شرایط مختلف اندازه گیری کنیم. برای شروع، من به شما نشان خواهم داد که چگونه این کار را به صورت تعاملی فقط برای ژنراتور انجام دهید. سپس به شما نشان خواهم داد که چگونه این فرآیند را با استفاده از MATLAB خودکار کنید. ابتدا یک شبیه سازی برای جمع آوری داده های مورد نیاز برای محاسبه THD اجرا می کنیم.
این نمودار (Gen1_Vab) ولتاژ بین فازهای ژنراتور را نشان می دهد. همانطور که می بینید، این یک موج سینوسی کامل نیست. این بدان معناست که کیفیت توان شبکه تحت تأثیر اجزای موجود در شبکه است. هنگامی که شبیه سازی کامل شد، از تبدیل فوریه سریع برای محاسبه THD استفاده می کنیم. ما بلوک powergui را باز می کنیم و ابزار تجزیه و تحلیل FFT را باز می کنیم. می بینید که ابزار به طور خودکار با داده هایی که من در طول شبیه سازی ضبط کرده ام بارگذاری می شود. ما پنجره FFT را انتخاب می کنیم، فرکانس و محدوده را مشخص می کنیم و نتایج را نمایش می دهیم. می بینید که ضریب اعوجاج هارمونیک 2.8٪ است. در اینجا می توانید سهم هارمونیک های مختلف را ببینید. دیدید که چگونه می توانید ضریب اعوجاج هارمونیک را به صورت تعاملی محاسبه کنید. اما ما می خواهیم این فرآیند را خودکار کنیم تا ضریب را در شرایط مختلف و در نقاط مختلف شبکه محاسبه کنیم.
اکنون گزینه های موجود برای مدل سازی بارهای DC را بررسی خواهیم کرد.
ما میتوانیم بارهای الکتریکی خالص و همچنین بارهای چند رشتهای که حاوی عناصری از زمینههای مهندسی مختلف، مانند اثرات الکتریکی و حرارتی، الکتریکی، مکانیکی و هیدرولیکی هستند، مدلسازی کنیم.
مدار DC ما شامل یک ترانسفورماتور یکسو کننده، لامپ، بخاری، پمپ سوخت و باتری است. مدل های دقیق می توانند اثرات مناطق دیگر را در نظر بگیرند، به عنوان مثال، یک مدل بخاری تغییرات در رفتار قطعه الکتریکی را با تغییرات دما در نظر می گیرد. پمپ بنزین اثرات سایر نواحی را در نظر می گیرد تا تأثیر آنها را بر رفتار قطعه نیز ببیند. من به مدل برمی گردم تا به شما نشان دهم که چگونه به نظر می رسد.
این مدلی است که ما با آن کار می کنیم. همانطور که می بینید، اکنون ترانسفورماتور یکسو کننده و شبکه DC کاملاً الکتریکی هستند، یعنی. فقط اثرات حوزه الکتریکی در نظر گرفته می شود. آنها مدل های الکتریکی ساده ای از اجزای این شبکه دارند. ما میتوانیم گونهای از این سیستم را انتخاب کنیم (TRU DC Loads -> Multidomain) که اثرات سایر زمینههای مهندسی را در نظر میگیرد. می بینید که در شبکه اجزای یکسانی داریم، اما به جای تعداد مدل های الکتریکی، جلوه های دیگری را اضافه کردیم - به عنوان مثال، برای ضربه، یک شبکه فیزیکی دما که تأثیر دما را بر رفتار در نظر می گیرد. در پمپ اکنون اثرات هیدرولیکی پمپ ها و سایر بارهای موجود در سیستم را در نظر می گیریم.
اجزایی که در مدل می بینید از بلوک های کتابخانه Simscape مونتاژ شده اند. بلوک هایی برای حسابداری برای رشته های برق، هیدرولیک، مغناطیسی و سایر رشته ها وجود دارد. با استفاده از این بلوک ها، می توانید مدل هایی ایجاد کنید که ما آنها را چند رشته ای می نامیم. با در نظر گرفتن اثرات رشته های مختلف فیزیکی و مهندسی.
اثرات مناطق دیگر را می توان در مدل شبکه الکتریکی ادغام کرد.
کتابخانه بلوک Simscape شامل بلوکهایی برای شبیهسازی اثرات از حوزههای دیگر، مانند هیدرولیک یا دما است. با استفاده از این مولفه ها می توانید بارهای شبکه واقعی تری ایجاد کنید و سپس شرایطی را که این اجزا می توانند تحت آن کار کنند را با دقت بیشتری تعریف کنید.
با ترکیب این عناصر، می توانید اجزای پیچیده تری ایجاد کنید و همچنین رشته ها یا مناطق سفارشی جدیدی را با استفاده از زبان Simscape ایجاد کنید.
اجزای پیشرفتهتر و تنظیمات پارامترسازی در برنامههای افزودنی Simscape در دسترس هستند. اجزای پیچیدهتر و دقیقتر در این کتابخانهها با در نظر گرفتن اثراتی مانند تلفات بازده و اثرات دما در دسترس هستند. همچنین می توانید با استفاده از SimMechanics سیستم های سه بعدی و چند بدنه را مدل سازی کنید.
اکنون که طراحی تفصیلی را تکمیل کرده ایم، از نتایج شبیه سازی های دقیق برای تنظیم پارامترهای مدل انتزاعی استفاده می کنیم. این به ما مدلی می دهد که سریع اجرا می شود و در عین حال نتایجی مطابق با نتایج یک شبیه سازی دقیق را تولید می کند.
ما فرآیند توسعه را با مدل های جزء انتزاعی آغاز کردیم. اکنون که مدلهای دقیق داریم، میخواهیم مطمئن شویم که این مدلهای انتزاعی نتایج مشابهی دارند.
سبز نیازمندی های اولیه ای را که دریافت کرده ایم نشان می دهد. ما می خواهیم نتایج مدل انتزاعی که در اینجا با رنگ آبی نشان داده شده است، نزدیک به نتایج شبیه سازی مدل دقیق باشد که با رنگ قرمز نشان داده شده است.
برای این کار با استفاده از سیگنال ورودی، توان های اکتیو و راکتیو را برای مدل انتزاعی تعریف می کنیم. به جای استفاده از مقادیر جداگانه برای توان اکتیو و راکتیو، یک مدل پارامتری ایجاد می کنیم و این پارامترها را طوری تنظیم می کنیم که منحنی های توان اکتیو و راکتیو از شبیه سازی مدل انتزاعی با مدل دقیق مطابقت داشته باشند.
در مرحله بعد، خواهیم دید که چگونه می توان مدل انتزاعی را برای مطابقت با نتایج مدل دقیق تنظیم کرد.
این وظیفه ماست. ما یک مدل انتزاعی از یک جزء در یک شبکه الکتریکی داریم. هنگامی که چنین سیگنال کنترلی را به آن اعمال می کنیم، خروجی نتیجه زیر برای توان اکتیو و راکتیو است.
هنگامی که سیگنال مشابهی را به ورودی یک مدل دقیق اعمال می کنیم، نتایجی مانند این دریافت می کنیم.
ما نیاز داریم که نتایج شبیهسازی مدل انتزاعی و تفصیلی یکسان باشد تا بتوانیم از مدل انتزاعی برای تکرار سریع روی مدل سیستم استفاده کنیم. برای انجام این کار، پارامترهای مدل انتزاعی را به طور خودکار تنظیم می کنیم تا نتایج مطابقت داشته باشند.
برای این کار از SDO استفاده می کنیم که می تواند به طور خودکار پارامترها را تغییر دهد تا زمانی که نتایج مدل های انتزاعی و جزئیات مطابقت داشته باشند.
برای پیکربندی این تنظیمات، مراحل زیر را دنبال می کنیم.
- ابتدا خروجی های شبیه سازی مدل تفصیلی را وارد کرده و این داده ها را برای تخمین پارامتر انتخاب می کنیم.
- سپس مشخص می کنیم که کدام پارامترها باید پیکربندی شوند و محدوده پارامترها را تنظیم می کنیم.
- در مرحله بعد، پارامترها را ارزیابی می کنیم، با SDO پارامترها را تا زمانی که نتایج مطابقت داشته باشند، تنظیم می کند.
- در نهایت، میتوانیم از دادههای ورودی دیگر برای اعتبارسنجی نتایج تخمین پارامتر استفاده کنیم.
شما می توانید با توزیع شبیه سازی ها با استفاده از محاسبات موازی، روند توسعه را به میزان قابل توجهی افزایش دهید.
شما می توانید شبیه سازی های جداگانه را بر روی هسته های مختلف یک پردازنده چند هسته ای یا روی خوشه های محاسباتی اجرا کنید. اگر وظیفه ای دارید که نیاز به اجرای چندین شبیه سازی دارد - به عنوان مثال، تجزیه و تحلیل مونت کارلو، تنظیم پارامترها، یا اجرای چرخه های پروازی متعدد - می توانید این شبیه سازی ها را با اجرای آنها بر روی یک ماشین چند هسته ای محلی یا خوشه کامپیوتری توزیع کنید.
در بسیاری از موارد، این کار دشوارتر از جایگزین کردن حلقه for در اسکریپت با یک حلقه for موازی، parfor نخواهد بود. این می تواند منجر به افزایش سرعت قابل توجهی در اجرای شبیه سازی شود.
ما مدلی از شبکه برق هواپیما داریم. ما می خواهیم این شبکه را تحت طیف گسترده ای از شرایط عملیاتی - از جمله چرخه پرواز، اختلالات و آب و هوا آزمایش کنیم. ما از PCT برای سرعت بخشیدن به این تست ها، از MATLAB برای تنظیم مدل برای هر آزمونی که می خواهیم اجرا کنیم استفاده خواهیم کرد. سپس شبیهسازیها را در هستههای مختلف رایانهام توزیع میکنیم. خواهیم دید که تست های موازی بسیار سریعتر از تست های متوالی تکمیل می شوند.
در اینجا مراحلی است که باید دنبال کنیم.
- ابتدا با استفاده از دستور parpool مجموعه ای از فرآیندهای کارگر یا به اصطلاح کارگران متلب ایجاد می کنیم.
- در مرحله بعد، برای هر تستی که میخواهیم اجرا کنیم، مجموعههای پارامتر تولید میکنیم.
- ابتدا شبیه سازی ها را به صورت متوالی و یکی پس از دیگری اجرا می کنیم.
- و سپس این را با اجرای شبیه سازی به صورت موازی مقایسه کنید.
با توجه به نتایج، کل زمان تست در حالت موازی تقریباً 4 برابر کمتر از حالت متوالی است. در نمودارها دیدیم که مصرف برق به طور کلی در سطح مورد انتظار است. پیک های قابل مشاهده مربوط به شرایط مختلف شبکه در هنگام روشن و خاموش شدن مصرف کنندگان است.
شبیهسازیها شامل تستهای زیادی بود که ما توانستیم با توزیع شبیهسازیها در هستههای مختلف کامپیوتر به سرعت آنها را اجرا کنیم. این به ما امکان داد تا طیف وسیعی از شرایط پرواز را ارزیابی کنیم.
اکنون که این بخش از فرآیند توسعه را تکمیل کردهایم، خواهیم دید که چگونه میتوانیم ایجاد مستندات را برای هر مرحله خودکار کنیم، چگونه میتوانیم آزمایشها را بهطور خودکار اجرا کنیم و نتایج را مستند کنیم.
طراحی سیستم همیشه یک فرآیند تکراری است. ما در یک پروژه تغییر ایجاد می کنیم، تغییر را آزمایش می کنیم، نتایج را ارزیابی می کنیم، سپس تغییر جدیدی ایجاد می کنیم. فرآیند مستندسازی نتایج و دلایل منطقی تغییرات زمان زیادی می برد. شما می توانید این فرآیند را با استفاده از SLRG خودکار کنید.
با استفاده از SLRG می توانید اجرای تست ها را به صورت خودکار انجام دهید و سپس نتایج آن تست ها را در قالب یک گزارش جمع آوری کنید. این گزارش ممکن است شامل ارزیابی نتایج آزمون، اسکرین شات از مدل ها و نمودارها، کد C و MATLAB باشد.
با یادآوری نکات کلیدی این سخنرانی به پایان خواهم رسید.
- ما فرصتهای زیادی را برای تنظیم مدل برای یافتن تعادل بین وفاداری مدل و سرعت شبیهسازی مشاهده کردیم - از جمله حالتهای شبیهسازی و سطوح انتزاع مدل.
- دیدیم که چگونه میتوانیم شبیهسازیها را با استفاده از الگوریتمهای بهینهسازی و محاسبات موازی افزایش دهیم.
- در نهایت، دیدیم که چگونه میتوانیم با خودکارسازی وظایف شبیهسازی و تجزیه و تحلیل در MATLAB، روند توسعه را تسریع کنیم.
Автор مواد - میخائیل پسلنیک، مهندس
لینک این وبینار
منبع: www.habr.com