← Ana Sayfaya Dön
Python / PyQt6 Güç Sistemleri İleri-Geri Süpürme Radyal Dağıtım

PowerFlow Analyst — Radyal Dağıtım Şebekesi Güç Akışı Çözücüsü

Stop resisting. Master the flow. — Saha mühendisleri için tasarlanmış, statik şebeke verisini saniyeler içinde dinamik operasyonel öngörülere dönüştüren taşınabilir bir masaüstü güç akışı analiz aracı.

EE 374 — Fundamentals of Power Systems · Dönem Projesi
PowerFlow Analyst ürün infografiği — performans, kullanım senaryosu ve teknik özellikler.

Bir Bakışta Proje

PowerFlow Analyst, yüksek gerilim iletim şebekelerinin sahip olduğu SCADA görünürlüğünden yoksun olan radyal dağıtım fiderleri için geliştirilmiş, uçtan uca Python ile yazılmış bir masaüstü uygulamasıdır. Saha mühendisi şebekenin sabit topolojisini bir JSON dosyasından yükler, anlık yük / kompanzasyon koşullarını arayüzden düzenler ve tek tuşla her baranın gerilim genliği ile faz açısını hesaplatır. Çözücü, radyal yapıyı sömüren İleri-Geri Süpürme (Backward-Forward Sweep) algoritmasıyla neredeyse anlık yakınsar; gerilim ihlali olan baralar otomatik olarak renkle işaretlenir. Uygulama, Python kurulumu gerektirmeyen tek bir taşınabilir .exe dosyası olarak dağıtılır.

1. Proje Kapsamı ve Mühendislik Yaklaşımı

İletim şebekeleri sürekli SCADA ve otomatik sayaç altyapısı (AMI) ile izlenirken, alt kademedeki dağıtım fiderleri yerel saha manevraları sırasında büyük ölçüde "kör" kalır. Bağlantı matrisleri, hat empedansları ve ekipman değerleri önceden bilinse de, şebekenin gerçek zamanlı "durumu" — anlık yük profilleri ve kapasitör bankı statüleri — telemetre edilmez. PowerFlow Analyst bu bilgi boşluğunu kapatır: mühendisin elle girdiği güncel işletme koşullarını sabit fiziksel altyapı üzerine eşleyerek sistem durumunu çözer.

Tasarımın merkezinde "salt bir betik değil, gerçek bir ürün" felsefesi yer alır. Bu nedenle çözücü çekirdeği kadar; saha mühendisinin operasyonel kısıtlarına göre kurgulanmış kullanıcı deneyimi, hatalı veri girişlerine dayanıklılık (sayısal alana metin girilmesi gibi) ve taşınabilir dağıtım da projenin ilk sınıf hedefleridir.

2. Sistem Mimarisi

Uygulama, sorumlulukları net biçimde ayrılmış katmanlara bölünmüştür. JSON Parser sabit topolojiyi okur; Network Model baraları, hatları ve ekipmanı bir ağaç yapısında tutar; BFS Solver güç akışını çözer; PyQt6 GUI ise tek-hat diyagramını çizer ve sonuçları görselleştirir. Veri akışı tek yönlü ve öngörülebilirdir.

Giriş Bölgesi Hesaplama Çekirdeği Sunum Bölgesi .JSON Şebeke Dosyası topoloji + empedans JSON Parser doğrulama + ayrıştırma GUI Veri Girişi canlı yük / shunt düzenle Network Model radyal ağaç (per-unit) BFS Solver geri + ileri süpürme Voltage Control Loop yaprak baranı sürer Tek-Hat Diyagramı SLD render Sonuç Tablosu |V|, ∠V, durum İhlal Vurgulama yeşil / turuncu / kırmızı
Şekil 1. Üç katmanlı sistem mimarisi: giriş, hesaplama çekirdeği ve sunum.

3. Veri Modeli ve JSON Çerçevesi

İnsan kaynaklı hatayı azaltmak için şebeke topolojisi önceden yapılandırılmış JSON dosyalarından okunur. Dosya; sistem tabanı, baralar, hatlar, yükler ve shunt cihazlarını ayrı dizilerde tanımlar. Aşağıda parser'ın beklediği temel parametreler listelenmiştir.

Parametre Beklenen Değer Mühendislik Açıklaması
s_base_mvaSayısal (MVA)Per-unit hesapları için küresel güç tabanı.
slack_busTam sayı (Bara ID)Ana trafo merkezi referansı; 1.0 pu ∠ 0° sabittir.
bus_idTam sayıHer bara için benzersiz tanımlayıcı.
r_ohm / x_ohmSayısal (Ω)Hat segmentinin faz başına seri direnci ve reaktansı.
s_rated_mvaSayısal (MVA)Yük/üretecin anma gücü; P ve Q arayüzden enjekte edilir.
q_mvarSayısal (MVAr)Shunt anma reaktif gücü. Pozitif = endüktif, negatif = kapasitif.

Aşağıda parser'ın beklediği yapısal şablonun kısaltılmış bir örneği yer alır:

{
  "system_data": [
    { "network_name": "Sample Distribution Feeder", "s_base_mva": 1.0, "slack_bus": 1 }
  ],
  "bus_data": [
    { "bus_id": 1, "bus_name": "Main Substation", "voltage_level_kv": 35.0 },
    { "bus_id": 2, "bus_name": "Industrial Node",  "voltage_level_kv": 0.4 }
  ],
  "line_data": [
    { "line_id": 1, "from_bus_id": 1, "to_bus_id": 2, "r_ohm": 1.25, "x_ohm": 2.50 }
  ],
  "load_data":  [ { "load_id": 1, "bus_id": 2, "s_rated_mva": 1.5 } ],
  "shunt_data": [ { "shunt_id": 1, "bus_id": 2, "q_mvar": -0.5 } ]
}

4. Çekirdek Çözücü: İleri-Geri Süpürme

Radyal şebekelerde her baranın tek bir üst düğümü vardır; bu ağaç yapısı, ağır Jacobian terslerini gerektiren genel Newton-Raphson yerine çok daha hızlı bir yöntem kullanmaya imkân verir. İleri-Geri Süpürme (BFS) iki aşamayı yineler: geri süpürmede yapraklardan köke doğru dal akımları toplanır; ileri süpürmede kökten yapraklara doğru gerilim düşümleri uygulanır. Yineleme, ardışık iki adım arasındaki en büyük gerilim değişimi tolerans değerinin (varsayılan 1×10⁻⁶ pu) altına düşene dek sürer.

Başlat tüm |V| = 1.0 pu Geri Süpürme yaprak → kök, akım topla İleri Süpürme kök → yaprak, ∆V uygula max ∆V < tol ? Yakınsadı sonuçları raporla Hayır — yeni yineleme Evet
Şekil 2. İleri-Geri Süpürme yineleme döngüsü ve yakınsama kontrolü.

Yaprak Baranı Gerilim Kontrol Döngüsü

Saha senaryolarında yaprak düğümün (örn. fiderin en ucundaki bara) gerilimi bir kısıt olarak ele alınabilir. Bu seçenek etkinleştirildiğinde, çözücü slack bara gerilimini bir dış döngüde (varsayılan 0.5 sönümleme katsayısıyla) ayarlayarak yaprak baranın hedef değere yakınsamasını sağlar. Devre dışıyken slack bara standart 1.0 pu ∠ 0° referansında kalır.

5. Örnek Tek-Hat Diyagramı

Uygulama topolojiyi alan mühendisinin tanıyabileceği sembollerle çizer: trafo merkezi, güç trafosu, yükler, üreteçler ve kompanzasyon birimleri ayrı sembollerle gösterilir. Aşağıda dört baralı örnek bir fiderin şematik gösterimi yer alır.

Power Grid Bus 1 Bus 2 Bus 3 Bus 4 Trafo G (1 + j2.5) Ω/ph Shunt (1.5 + j4) Ω/ph Yük (yaprak)
Şekil 3. Dört baralı örnek fider: trafo merkezi, güç trafosu, üreteç, shunt kompanzasyon ve uç yük.

6. Gerilim Sağlık Durumu ve Renk Kodları

Çözüm tamamlandığında her bara, standart şebeke limitlerine (0.95–1.05 pu) göre renkle işaretlenir. Bu sayede saha mühendisi tabloyu okumadan, diyagrama bakarak sorunlu noktaları anında görür.

Normal

0.95 ≤ |V| ≤ 1.05 pu. Sağlıklı güç dağıtımı, yeterli reaktif destek ve güvenli yalıtım seviyesi.

Düşük Gerilim

|V| < 0.95 pu. Uzun ve ağır yüklü hatların ucunda sık görülür; turuncu vurgulanır.

Aşırı Gerilim

|V| > 1.05 pu. Yalıtım için kritik risk; hafif yükte uzun hatlarda (Ferranti etkisi) oluşur.

7. Uygulamadan Görüntüler

Kimlik doğrulama ekranı — operatör girişi.
Ana çalışma alanı — diyagram, parametreler ve sonuç tablosu.
Ayarlar sekmesi — yaprak gerilim kontrolü ve maksimum yineleme.
Geçmiş sekmesi — zaman damgalı çözüm denetim kaydı.
Şekil 4. 10 baralı fiderin yakınsamış çözümü; düşük/aşırı gerilim baraları renkle işaretli.

8. Sağlamlık ve Kullanıcı Deneyimi

Ürün, sahanın zorlu koşullarına göre tasarlandı. Sayısal alanlara girilen hatalı veri tipleri (örn. metin) yakalanıp reddedilir; çözücü kararsız bir senaryoyla karşılaştığında çökmek yerine "50 yinelemede yakınsamadı" uyarısı verir ve operatörü Settings sekmesinden maksimum yinelemeyi artırmaya ya da yaprak gerilim kontrolünü etkinleştirmeye yönlendirir.

Saha Odaklı Özellikler

  • Açık/koyu tema — parlak dış saha ile loş kumanda odası için.
  • Yakınlaştır / Uzaklaştır / Sığdır — büyük şebekelerde etiket okunabilirliği.
  • Canlı parametre düzenleme — JSON dosyasına dokunmadan "what-if" senaryoları.
  • Çözüm geçmişi — zaman damgalı, yinelemeli denetim kaydı.

9. Sonuç

PowerFlow Analyst, akademik bir güç akışı algoritmasını saha mühendislerinin günlük kullanımına uygun, taşınabilir ve sağlam bir ürüne dönüştürür. Radyal yapıyı sömüren İleri-Geri Süpürme çözücüsü neredeyse anlık yakınsama sağlar; sezgisel tek-hat görselleştirmesi ve renkli ihlal uyarıları ise karmaşık sayısal çıktıyı anında okunabilir operasyonel bilgiye çevirir. Proje boyunca; sayısal yakınsama, kullanıcı deneyimi tasarımı ve dağıtımın taşınabilirliği aynı önemde ele alındı — bu da onu salt bir betikten gerçek bir mühendislik ürününe yükseltti.