یک واحد اندازه گیری فازور (Phasor Measurement Unit) سیگنال های شبکه برق اندازه گیری می کند. مانیتورینگ این سیگنال ها می تواند ما را از وضعیت شبکه مطلع گرداند.در مهندسی برق، از چنین اندازه گیری هایی به نام Synchro phasor نیز یاد می شود و اندازه گیری های مهمی در شبکه های قدرت در آینده خواهند بود.
با نصب PMU در یک باسبار، ولتاژ آن باسبار و جریان تمام شاخه های منشعب قابل اندازه گیری خواهند بود. با توجه به هزینه ی PMU، امکان نصب آن در تمام باسبارهای شبکه وجود ندارد، و روش های مختلفی برای جایابی بهینه ی PMU پیشنهاد شده است. در روش مکان یابی PMU قوانین زیر مورد استفاده قرار می گیرند:
قانون ۱: ولتاژ باسباری که روی آن PMU قرار می گیرد، به طور مستقیم اندازه گیری می شود.ضمنا جریان تمام شاخه های متصل به آن نیز به طور مستقیم قابل اندازه گیری است.
قانون ۲: ولتاژ هر باسباری که دارای ارتباط به صورت خط یا ترانسفورماتور با باسبار دیگری است که PMU در آن نصب شده، به راحتی قابل تخمین است و نیاز مستقیم به نصب PMU ندارد. با توجه به اینکه امپدانس بین دو باسبار مجاور یک عدد ثابت است و می توان آن را مشخص فرض کرد، ولتاژ باسبارهای مجاور با باسباری که مستقیما PMU روی آن قرار می گیرد، به راحتی با استفاده از قانون اهم قابل تخمین است.
قانون ۳: جریان هر خطی که ولتاژ دو باسبار ابتدا و انتهای آن اندازه گیری شده یا تخمین زده شده است، به راحتی قابل تخمین است و نیاز مستقیم به نصب PMU ندارد. در این مورد نیز می توان از قانون اهم استفاده نمود و جریان خطی که ولتاژ دو طرف آن معلوم است را تخمین زد.
قانون ۴: در کلیه ی باسبارهای شبکه قانون KCL را بررسی کنید. اگر در یک باسبار جریان تمام شاخه ها جز یکی معلوم باشند، به واسطه ی KCL می توان جریان را در شاخه ی دیگر محاسبه کرد. این قانون معمولا در باسبارهایی که تزریق صفر (zero injection) می باشند، یعنی باسبارهایی که مستقیما بار یا تولید روی آنها قرار نداشته باشد استفاده ی زیادی دارد.
در این DPL، با استفاده از روش کلاسیک به جایابی PMU خواهیم پرداخت. روش کلاسیک تمایل دارد که PMU روی باسباری که بیشترین اتصالات را دارد، نصب شود.
این DPL دارای دو زیر DPL با نامهای Branch و Buses برای بررسی قوانین اهم می باشد (برای آشنایی بیشتر با زیر برنامه به بسته جامع دیگسایلنت مراجعه کنید) ابتدا اصل برنامه را بررسی خواهیم کرد. سپس، دو زیر DPL آن را بررسی خواهیم کرد.
در شکل قسمت اول برنامه ی این DPL را ملاحظه می کنید. لازم به ذکر است در زیرصفحه ی Basic Options متغیر OutputFilePath را از نوع رشته ای برابر با ‘\:C’ تعريف نموده ایم.
در ابتدا ، متغیرهای مورد نیاز در طول برنامه را تعریف می کنیم. سپس، با دستور ClearOutput صفحه ی خروجی را پاک می کنیم. در سطر ششم برنامه، با دستور Sprintf مسیر ایجاد فایل متنی با نام PUM.txt جهت ذخیره ی اطلاعات خروجی را در متغير Path ذخیره می کنیم. در سطر هفتم، با دستور fopen فایل متنی در مسیر Path جهت نوشتن اطلاعات خروجی ایجاد می شود. سطر بعدی برنامه، تمام باسبارهای شبکه را انتخاب و در مجموعهی SET قرار میدهد. اولین عضو این مجموعه در متغیر o قرار داده می شود و در یک حلقه ى while، برای تمام باسبارهای شبکه، عملیات زیر انجام می شود: در سطر یازدهم، ولتاژ نامی باسبار انتخاب شده ارزیابی می شود. اگر ولتاژ کمتر از 13.8 کیلوولت بود، آن باسبار از مجموعه ی SET حذف می شود؛ در غیر اینصورت، جزء باسبارهای کاندید جهت اتصال PMU باقی می ماند.
می دانیم که در حال حاضر، PMU در سطوح فشار قوی نصب می شود. در این مثال، بالاتر سطح ولتاژ ۶۹ کیلوولت است و فقط سه باسبار را شامل می شود؛ لذا، سطوح 13.8 و ۶۹ کیلوولت برای نصب PMU انتخاب شده اند.
در سطر شانزدهم، از مجموعه ی باسبارهای باقیمانده، اولین عضو انتخاب و در متغیر o قرار داده می شود و در یک حلقه while، برای تمام باسبارهای کاندید جهت اتصال PMU، عملیات زیر انجام می شود: عناصر متصل به باسبار را در مجموعه ی M قرار میدهیم. با استفاده از دستور n=M.Count();تعداد عناصر متصل به باسبار را محاسبه کرده و در متغیر n ذخیره می کنیم. این DPL، از روش کلاسیک برای جایابی PMU استفاده کرده ایم. روش کلاسیک تمایل دارد که PMU را روی باسباری که بیشترین اتصالات را دارد، نصب نماید. بنابراین لازم است عدد n برای هر باسبار شبکه محاسبه شود. برای ذخیره ی این عدد از گزینه ی constr در صفحه ی اطلاعات باسبار استفاده نموده ایم.
اگر روی یک باسبار شبکه دو بار کلیک کنید، پنجره ی حاوی اطلاعات باسبار باز می شود. در زیر صفحه ی Description آن پنجره، مطابق شکل قسمتی تحت عنوان Year of Construction وجود دارد. با توجه به اینکه در اکثر شبکه ها این رکورد خالی است، تصمیم گرفتیم تا از این قسمت برای ذخیره ی متغیر n استفاده کنیم. اگر ماوس را بر روی این قسمت نگه دارید، ملاحظه می کنید که نام این پارامتر constr می باشد. با استفاده از دستور O:constr=n;متغیر n را به سال ساخت باسبار تخصیص میدهیم و این کار را برای تمام باسبارهای کاندید جهت اتصال PMU انجام میدهیم.
متصل است، از بیشترین به کمترین مرتب می کنیم و عبارت درون در سطر بیست و سوم برنامه، با (SET.SortToVar(1,’consrt’باسبارها را برحسب constr آنها که همان تعداد عناصر متصل است، از بیشترین به کمترین مرتب می کنیم و عبارت درون fprintf را در فایل متنی خروجی چاپ می کنیم.
در ادامه ی برنامه، از گزینه ی constr عناصر جهت تعیین وضعیت عناصر جهت تعیین وضعیت رویت پذیری آنان استفاده شده است. عنصری را رویت پذیر گوییم که اطلاعات آن یا مستقیما توسط PMU اندازه گیری شود یا توسط اطلاعات سایر نقاط شبکه قابل تخمین باشد. اگر اطلاعات عنصری مستقیما توسط PMU اندازه گیری شود، COISIT آن را برابر با ۱ و در صورتیکه اطلاعات آن عنصر توسط قوانین اهم یا KCL تخمین زده شود، constr آن را برابر با ۲ قرار میدهیم. اگر عنصری رویت پذیر نباشد، constr آن مساوی صفر خواهد بود. بنابراین لازم است در این قسمت برنامه، constr تمام عناصر را مساوی صفر قرار دهیم. سپس، در روند برنامه با توجه به وضعیت رویت پذیری عنصر، عدد constr آن تغییر می کند.
در شکل قسمت دوم برنامه ی این DPL را مشاهده می کنید. با توجه به شکل، تمام عناصر شبکه اعم از باسبارها، خطوط، ترانسفورماتورها، بارها و عناصر شانت را انتخاب می کنیم و با استفاده از دستور O:constr=0;به سال ساخت این عناصر عدد صفر را تخصیص میدهیم.
در شکل قسمت سوم برنامه ی این DPL را مشاهده می کنید. دوازده خط اول این قسمت، ادامه ی دستورات شکل قبل می باشند.
در سطر سیزدهم ، اولین باسبار مجموعه ی SET که دارای بیشترین عناصر متصله است را در متغیر 0 قرار میدهیم و با استفاده از دستور O:Constr=1;به سال ساخت آن عدد یک را تخصیص می دهیم. به عبارت دیگر، اولین PMU را روی این باسبار قرار میدهیم. سپس، این باسبار را از مجموعه ی باسبارهای کاندید جهت اتصال PMU حذف می کنیم و نام باسبار را در فایل متنی خروجی ذخیره می کنیم. در سطر هفدهم، عناصر متصل به این باسبار را در مجموعه ی M قرار می دهیم. می دانیم عناصری که به صورت مستقیم به این باسبار متصل شده اند، رویت پذیر خواهند بود. لذا در یک حلقه ى while ، تک تک عناصر متصل به باسبار را انتخاب و کد سال ساخت آنها را برابر 1 قرار می دهیم(;O:constr=1)
در سطرهای ۲۳ الی ۲۶، دو زیر برنامهی Branch و Buses اجرا می شوند. این دو زیربرنامه، قوانین اهم و KCL را برای عناصری که به صورت غیر مستقیم با این PMU رویت پذیر می شوند، مشخص می کنند و کد سال ساخت را برای آنها برابر ۲ قرار میدهند;O:constr=2 اور اجرا می شوند تا تمام عناصری که به صورت غیر مستقیم رویت پذیر می شوند را معین کنند.
در شکل قسمت انتهایی برنامه ی این DPL را مشاهده می کنید.
از مجموعه ی باسبارهای باقیمانده، اولین عضو مجموعه را انتخاب می کنیم و در متغیر O قرار میدهیم و در یک حلقه ی while، سال ساخت آن را بررسی می کنیم. اگر سال ساخت باسبار انتخاب شده، عددی بزرگتر از 0.5 باشد Constr>0.5 این باسبار به صورت مستقیم یا غیر مستقیم رویت پذیر می باشد. بنابراین، از مجموعه ی باسبارهای کاندید جهت نصب PMU حذف می شود. در سطر هشتم، تعداد باسبارهای باقیمانده در مجموعهی SET را با دستور n=SET.Count(); محاسبه کرده و در متغیر n ذخیره می کنیم. این متغیر به عنوان شرط حلقهى while انتخاب شده و تا زمانیکه 0<n باشد، عملیاتی در حلقه ی مذکور انجام می شود که در ادامه توضیح داده شده اند
اولین باسبار مجموعه ی SET که دارای بیشترین اتصالات می باشد را انتخاب می کنیم ساخت آن را برابر با ۱ قرار میدهیم. سپس، باسبار را از مجموعه ی باسبارهای کاندید جهت اتصال PML حذف می کنیم و نام آن را در فایل خروجی گزارش می دهیم. تمام عناصر متصل به این باسبار در مجموعه ی M قرار میدهیم. اولین عنصر این مجموعه را در متغیر O1 ذخیره می کنیم و در یک حلقه ى while برای تمام عناصر متصل به این باسبار سال ساخت را برابر ۱ قرار میدهیم.
در سطرهای بیست الی بیست و سه، دو زیر برنامه ی Branch و Buses برای بررسی قوانین اهم و KCL اجرا می شوند. سپس، از مجموعهی باسبارهای باقیمانده، اولین عضو مجموعه را انتخاب می کنیم و در متغیر 0 قرار میدهیم و در یک حلقه ی while برای تمام باسبارها سال ساخت آنها را بررسی می کنیم. اگر باسبار انتخاب شده، سال ساختی بزرگتر از 0.5داشته باشد O:constr>0.5 این باسبار به صورت مستقیم یا غیر مستقیم رویت پذیر می باشد و باید از مجموعه ی باسبارهای کاندید جهت نصب PMU حذف شود.
کلیه ی عملیات و محاسباتی که تاکنون بیان شد، تا آخرین باسبار مجموعه ی General Selection ادامه خواهد یافت و جایابی PMU تاجایی انجام می شود که کل شبکه رویت پذیرگردد.
در ادامه، زیر DPL های این برنامه را بررسی خواهیم کرد. در شکل قسمت اول زیر Branch DPL را مشاهده می کنید.
این زیر DPL از قانون اهم استفاده می کند. می دانیم که جریان خطوطی که ولتاژ دو طرف آن معلوم است O:const=1 یا تخمین زده شده است O:const=1 به راحتی قابل تخمین است. این اصل در داخل این زیر DPL بررسی می شود. در ابتدا، متغیرهای مورد نیاز در طول برنامه را تعریف می کنیم. در سطر سوم برنامه، تمام خطوط شبکه انتخاب می شوند و در مجموعه ی S قرار داده میشوند. اولین خط مجموعه را در متغير O ذخیره می کنیم و در یک حلقه ی while، برای تمام خطوط عملیات زیر را انجام میدهیم. اگر خط انتخاب شده سال ساختی بزرگتر از 0.5 داشته باشد Constr>0.5 باسبارهای متصل به آن را در مجموعه ی M قرار میدهیم. اولین باسبار مجموعه را به متغير O1و دومین باسبار را به متغير O2 اختصاص می دهیم. اگر یکی از این دو باسبار رویت پذیر باشد، با توجه به رویت پذیری خط، ولتاژ باسبار دوم نیز قابل تخمین خواهد بود O:const=2
قسمت دوم زیر برنامه ی Branch را نمایش می دهد. به طور مشابه، عملیات فوق برای تمام ترانسفورماتورهای دو سیم پیچه با سال ساخت بزرگتر از 0.5 انجام شده است.
زیر برنامه ی دوم، زیربرنامهی Buses می باشد. در این زیر DPL، قانون های اهم و KCL برای همه ی باسبارها بررسی خواهند شد. همه ی خطوط شبکه انتخاب می شوند و در صورتیکه هر دو باسبار ابتدا و انتهای آنان رویت پذیر باشند، جریان آن خط قابل تخمین خواهد بود. ضمنا، اگر فقط یکی از شاخه های متصل به یک باسبار رویت پذیر نباشد، جریان آن شاخه با استفاده از KCL محاسبه خواهد شد.
تصویر زیر قسمت اول زیر برنامه ی Buses را نمایش میدهد.
در قسمت اول این زیر DPL متغیرهای مورد نیاز برنامه را تعریف می کنیم. در سطر چهارم تمام خطوط شبکه را انتخاب و در مجموعه ی S قرار می دهیم. اولین خط مجموعه ی ک را در متغیر 0 ذخیره می کنیم و در یک حلقه ی while، برای تمام خطوط مجموعه S، عملیات زیر را انجام می دهیم اگر خط انتخاب شده سال ساختی کوچکتر از 0.5داشته باشد Constr>0.5 باسبارهای متصل به آن را در مجموعه ی M قرار میدهیم. به اولین باسبار متغیر O1 و به دومین باسبار متغير O2 را اختصاص می دهیم. اگر این دو باسبار رویت پذیر باشند، جریان خط هم قابل تخمین خواهد بود و کد سال ساخت خط ۲ خواهد شد. به طور مشابه، در سطر نوزدهم تمام ترانسفورماتورهای دو سیم پیچه را انتخاب و عملیات فوق را تکرار می کنیم.
قسمت دوم زیر برنامه Buses را در زیر مشاهده کنید
در این زیر DPL، قانون KCL برای همه ی باسبارها بررسی خواهد شد. تمام باسبارهای شبکه مجموعه ی S قرار داده می شوند. در حلقه ی while، ولتاژ نامی باسبار بررسی می شود و اگر کمتر از 13.8 کیلوولت باشد، از مجموعه ی باسبارها حذف خواهد شد. در سطر نهم، اولین باسبار در متغیر O قرار می گیرد و در یک حلقه ی while برای تمام باسبارهای موجود در مجموعه ی S عملیات زیر را انجام میدهیم
ابتدا دو متغیر p و m را برابر با صفر انتخاب می کنیم. p بیانگر تعداد شاخه های متصل به باسبار و بیانگر تعداد شاخه های رویت پذیر می باشد. تمام عناصر متصل به باسبار را در مجموعه ی M قرار می دهیم. اولین عضو مجموعه را در متغیر O1 ذخیره می کنیم. سپس، به متغیر p یک واحد اضافه می کنیم. اگر این عنصر از نوع شبکه خارجی ElmXnetنباشد (‘O1.IsClass(‘ElmXnet)=0’)و رویت پذیر باشد.(O:constr>0.5)به متغير m نیز یک واحد افزوده می شود. اما اگر از نوع شبکه خارجی باشد، از متغیر p یک واحد کاسته می شود و این عملیات برای تمام باسبارها انجام می شود.
علت اینکه شبکه ی خارجی را از سایر عناصر جدا کردیم این است که برای این عنصر سال ساخت تعریف نشده است. از طرف دیگر، فرض می کنیم برای شبکه ی خارجی بتوان ولتاژ و جریان خط ارتباطی را اندازه گیری نمود.
قسمت انتهایی زیر برنامه ی Buses را نمایش ببینید
اگر ) pتعداد شاخه های متصل به باسبار) از یک بزرگتر باشد و mتعداد شاخه های رویت پذیر متصل به باسبار از 1-p بیشتر باشد، آنگاه جریان شاخه ی باقیمانده نیز با استفاده از قانون KCL قابل تخمین خواهد بود. بنابراین در حلقه ی while، سال ساخت عنصر o1بررسی می شود و به عدد ۲ تغییر می یابد.