PROGRAM KOMPUTEROWY WSPOMAGAJACY

Transkrypt

PROGRAM KOMPUTEROWY WSPOMAGAJACY
Nr 63
Prace Naukowe Instytutu Maszyn, Napędów i Pomiarów Elektrycznych
Politechniki Wrocławskiej
Nr 63
Studia i Materiały
Nr 29
2009
dyskretyzacja, metoda elementów skończonych,
transformator, automatyzacja zadań grafiki
Krzysztof KOWALSKI*
PROGRAM KOMPUTEROWY WSPOMAGAJACY
DYSKRETYZACJĘ OBWODU ELEKTROMAGNETYCZNEGO
TRANSFORMATORA TRÓJFAZOWEGO
W pracy przedstawiono zagadnienia dotyczące konstrukcji diagramu Voronoi oraz triangulacji
Delaunay. Opisane zostały kryteria optymalizacyjne dla dwu trójwymiarowych siatek dyskretyzacyjnych. Przedstawiono statyczny algorytm radial sweet oraz dynamiczny step by step do tworzenia trójkątnej siatki dyskretyzacyjnej. Omówiono zagadnienia dotyczące trójwymiarowej dyskretyzacji transformatora trójfazowego średniej mocy. Zaproponowano algorytm dyskretyzacji obwodu
elektromagnetycznego transformatora. Opisany został program komputerowy do automatycznej dyskretyzacji. Przedstawione zostały przykładowe wyniki uzyskane przy pomocy opracowanego oprogramowania. Do wizualizacji wyników działania programu dyskretyzacyjnego wykorzystano system
AutoCAD.
1.TEORETYCZNE PODSTAWY GENEROWANIA SIATEK
DYSKRETYZACYJNYCH
1.1. WPROWADZENIE
Ostatnie lata nacechowane są intensywnym rozwojem techniki komputerowej. Powszechnie dostępne komputery klasy PC posiadają coraz większą moc obliczeniową.
Umożliwia to zaimplementowanie złożonych algorytmów obliczeniowych w systemach
wspomagających proces projektowania oraz modelowania stanów pracy obiektów technicznych. Do analizy stanów pracy przetworników elektromagnetycznych powszechnie
__________
*
Politechnika Poznańska; Instytut Elektrotechniki i Elektroniki Przemysłowej; ul. Piotrowo 3a;
60-965 Poznań; e-mail: [email protected]
jest stosowany model polowy. Jedną z metod wykorzystywanych do wyznaczania rozkładu pola magnetycznego jest metoda elementów skończonych (MES). W metodzie tej
analizowany obszar jest dzielony na skończoną liczbę elementów. Podział ten przyjęto
nazywać dyskretyzacją. Dyskretyzację można podzielić na dwie grupy: dyskretyzację
dwuwymiarową (2D) oraz dyskretyzację trójwymiarową (3D). W pierwszej dokonuje
się podziału powierzchni na elementy płaskie (np. trójkąty), w drugiej natomiast następuje podział przestrzeni na skończoną liczbę elementów wielościennych (np. czworościanów). Zbiór wszystkich elementów dyskretyzowanego obszaru tworzy siatkę dyskretyzacyjną.
Proces generowania siatki dyskretyzacyjnej można podzielić na cztery etapy:
– opisanie geometrii dyskretyzowanego obszaru, czyli definiowanie ograniczeń
domen fizycznych;
– określenie funkcji rozmiaru, czyli definicja rozmiaru elementu bazowego w dyskretyzowanym obszarze, umożliwia to zagęszczanie siatki w szczególnie istotnych miejscach;
– generacja siatki, czyli określenie współrzędnych punktów w dyskretyzowanym
obszarze oraz ustalenie połączeń między nimi;
– optymalizacja siatki, czyli zadanie polegające na przekształceniu otrzymanej
siatki w celu maksymalizacji określonego wskaźnika jakości.
Pod względem uporządkowania struktury siatki dyskretyzacyjne można podzielić na
dwa typy: siatki dyskretyzacyjne o strukturze ustalonej (regularnej) oraz siatki dyskretyzacyjne o strukturze nieustalonej (nieregularnej). Siatka dyskretyzacyjna o strukturze
regularnej złożona jest z identycznych elementów. W przypadku siatek powierzchniowych elementami tymi są najczęściej czworoboki. Natomiast dla siatek dyskretyzacyjnych objętościowych (trójwymiarowych) elementami są prostopadłościany. Siatka dyskretyzacyjna regularna jest bardzo korzystna dla obszarów o kształcie zgodnym z
kształtem elementów bazowych. Algorytmy automatycznej dyskretyzacji takich obszarów są stosunkowo proste, a ich implementacja programowa szybka w działaniu.
1.1. DIAGRAM VORONOI
Podstawową konstrukcją geometryczną, która jest definiowana przez nieregularną
siatkę jest diagram Voronoi. Nazwa metody pochodzi od nazwiska matematyka
M.G. Voronoi, który opracował tą geometryczną konstrukcję w 1908r [6]. Danymi wejściowymi dla diagramu Voronoi jest zbiór punktów w obszarze. Wokół poszczególnych
punktów tworzone są wielokąty. Kształt i rozmiar wielokąta uzależniony jest od położenia punktów sąsiadujących z rozpatrywanym punktem. Każdy bok wieloboku jest tak
umiejscowiony aby należał do symetralnych odcinków łączących rozpatrywany punkt z
punktami sąsiednimi. Jeżeli zastosuje się tą regułę dla wszystkich punktów w regionie,
to obszar zostanie podzielony wielobokami. Na rys. 1 przedstawiono kolejne kroki pro-
cesu tworzenia diagramu Voronoi dla zbioru 7 przypadkowych punktów. Wielokąty na
krawędziach obszaru pozostały otwarte, ponieważ nie mają sąsiadujących punktów.
Rys. 1. Diagram Voronoi
Fig. 1. Voronoi tessellation
1.2. TRIANGULACJA DELAUNAY
Pierwszym krokiem przy dyskretyzacji skomplikowanych obiektów geometrycznych
jest rozbicie ich na prostsze obiekty geometryczne. Najprostszymi obiektami geometrycznymi w przestrzeni dwuwymiarowej są trójkąty, natomiast w przestrzeni trójwymiarowej czworościany. Klasyczne zadanie triangulacji dotyczy analizy skończonej
liczby obiektów geometrycznych i wyznacza zbiór nie przecinających się przekątnych,
które dzielą wielokąt na trójkąty lub bryłę na czworościany.
Triangulacja Delaunay jest ściśle powiązana z diagramem Voronoi [2,3]. Danymi
wejściowymi dla triangulacji Delaunay są wieloboki diagramu Voronoi – rys.2a. W
wyniku połączenia odcinkami punktów znajdujących się w środku wieloboków diagramu, powstaje siatka złożona z trójkątów – rys. 2b.
Rys. 2. Triangulacją Delaunay
Fig. 2. Delaunay triangulation
Triangulacja Delaunay może być również przeprowadzona bezpośrednio na zbiorze
punktów (z pominięciem diagramu Voronoi ), wówczas obszar jest dzielony na nie zachodzące na siebie trójkąty, tak aby okrąg opisany na dowolnym trójkącie siatki nie
zawierał żadnego innego punktu ze zbioru [2]. Otrzymana w wyniku triangulacji Delaunay siatka jest siatką optymalną. Proces optymalizacji siatki dyskretyzacyjnej jest nazywany inaczej legalizacją. W wyniku legalizacji (optymalizacji) siatki dyskretyzacyjnej
następuje eliminacja trójkątów o dużych dysproporcjach długości boków. Optymalizację
siatki można przeprowadzić za pomocą kryterium okręgu [1,2] lub pomocą kryterium
kątowego [1,2]. Stosując kryterium okręgu (rys. 3) należy sprawdzić czy do koła opisanego na wierzchołkach pojedynczego trójkąta siatki należą jeszcze inne punkty, jeżeli
tak (rys.3a) oznacza to, że kryterium nie jest spełnione. Następuje wówczas zmiana połączeń międzywęzłowych, czyli reorganizacja siatki (rys 3b). W wyniku tej operacji
okręgi opisane na nowopowstałych elementach nie zawierają żadnych innych punktów,
czyli kryterium jest spełnione (rys. 3c).
a)
b)
c)
Rys. 3. Kryterium okręgu
Fig. 3. The Circle Criterion
W przypadku kryterium kątowego sprawdzane są miary kątów w czworoboku składającym się z dwóch trójkątów (rys. 4).
Rys. 4 Kryterium kątowe
Fig. 4 The criterion of angles
Trójkąty siatki są uznawane za optymalne w przypadku gdy spełniona jest nierówność:
α ADB + α ABD + α BDC + α DBC ≥ α DCB + α DAB .
(1)
W przypadku siatki przestrzennej, składającej się z elementów czworościennych do
legalizacji stosowane kryterium sfery (analogiczne do kryterium okręgu). Zastosowanie
kryteriów optymalizacyjnych nie zawsze gwarantuje uzyskanie optymalnej siatki. W
niektórych przypadkach dla uzyskania optymalnej siatki konieczne jest wprowadzanie
dodatkowych węzłów.
Opracowanych zostało wiele algorytmów triangulacji, różniących złożonością obliczeniową, czasem realizacji czy metodami legalizacji siatki. Algorytmy triangulacji
Delaunay można podzielić na dwa rodzaje: statyczne i dynamiczne. Do grupy algorytmów statycznych należą algorytmy, w których w pierwszym kroku generowana jest
siatka zawierająca wszystkie punkty zbioru wejściowego. W kolejnych krokach dokonywana jest legalizacja triangulacji. Natomiast w algorytmach dynamicznych legalizacja siatki dyskretyzacyjnej jest realizowana każdorazowo po wstawieniu punktu. W
grupie algorytmów statycznych wyróżnić można następujące algorytmy: radial sweep,
recursive split, divide and conquer [1,2,4], natomiast w grupie algorytmów dynamicznych: step by step, incremental, incremental delete and build [1,2].
1.3. ALGORYTM RADIAL SWEEP
Algorytm radial sweet jest podstawowym algorytmem statycznym triangulacji Delaunay Został zaprezentowany przez A. Mirante [4]. Pierwszym krokiem algorytmu jest
wybranie ze zbioru danych wejściowych jednego punktu znajdującego się najbliżej
środka dyskretyzowanego obszaru (2D) bądź przestrzeni (3D) i utworzenie połączeń ze
wszystkimi pozostałymi punktami zbioru (rys. 5a). Następnie tworzone są nieprzecinające się odcinki (2D) bądź ściany (3D) łączące sąsiadujące ze sobą punkty(rys. 5b,c).
Powstała siatka zawiera niezachodzące na siebie elementy. W kolejnym kroku dokonywana jest legalizacja siatki przy pomocy kryterium okręgu (rys. 5d).
a)
b)
c)
Rys. 5 Algorytm radial sweet
Fig. 5 The radial sweet algorithm
d)
1.4. ALGORYTM STEP BY STEP
Algorytm step by step [1,2] jest najczęściej stosowany do triangulacji Delaunay.
Pierwszym krokiem algorytmu jest wykreślanie linii podstawowej między dwoma
punktami, nazywanej baseline. Punkty podstawowe są tak wybierane aby znajdowały
się na krawędzi zbioru i były względem siebie w najbliższym sąsiedztwie (rys. 6a).
Następnie szukany jest taki punkt sąsiedni, który razem z punktami końcowymi linii
podstawowej definiuje okrąg. Z wielu punktów sąsiednich wybierany jest punkt który
definiuje okrąg o najmniejszym promieniu. Punkt sąsiedni może zostać określony
również poprzez kryterium kąta. W takim przypadku określana jest miara kąta pomiędzy ramionami trójkąta, którego podstawą jest linia podstawowa (baseline). Wybierany jest punkt, dla którego miara kąta jest największa. Odcinki pomiędzy nowym punktem, a dwoma punktami wyjściowymi będą stanowiły drugi i trzeci bok trójkąta (rys
6a). Boki powstałego trójkąta są przyjmowane jako linie podstawowe dla dalszej
triangulacji (rys 6b). W ten sposób algorytm tworzy triangulację Delaunay w całym
obszarze.
a)
b)
Rys. 6 Algorytm step by step
Fig. 6 The step by step algorithm
2.PROGRAM KOMPUTEROWY WSPOMAGAJĄCY PROCES
DYSKRETYZACJI TRANSFORMATORA 3-FAZOWEGO
2.1. PODSTAWOWE ZAŁOŻENIA ALGORYTMU
Obwód elektromagnetyczny transformatora trójfazowego jest obiektem trójwymiarowym. Zastosowanie algorytmów podziału na czworościany (tetrahedralizacji) De-
launay znacząco skomplikowałoby program wspomagający dyskretyzację oraz spowodowało długi czas generowania siatki dyskretyzacyjnej. W programie wspomagającym dyskretyzację ograniczono się do triangulacji na płaszczyźnie. Model obiektu
dzielony jest nieprzecinającymi się płaszczyznami na warstwy. Każda z płaszczyzn
dzielona jest na w ten sam sposób na trójkąty przy zastosowaniu algorytmu step by
step. Następnie z otrzymanych trójkątów tworzone są pryzmy (elementy pięciościenne
o podstawie trójkąta). Wysokości poszczególnych pryzm (warstw) zależą od wymiarów geometrycznych poszczególnych elementów transformatora oraz od założonej
gęstości siatki dyskretyzacyjnej. Poszczególne warstwy nałożone na siebie tworzą
jedną spójną siatkę trójwymiarową. Zastosowanie dyskretyzacji tego typu, opierajacej
się na strukturze płaszczyzn równoległych w porównaniu z implementacją algorytmów tetrahedralizacji Delaunay znacznie skraca czas obliczeń.
2.2. OPIS PROGRAMU
Istnieje wiele typów i rodzajów transformatorów trójfazowych. Praktycznie niemożliwe jest napisanie uniwersalnego a zarazem dokładnie odwzorowującego budowę
transformatora programu wspomagającego dyskretyzację. W Zakładzie Maszyn Elektrycznych i Mechatroniki Politechniki Poznańskiej opracowany został program komputerowy wspomagający proces dyskretyzacji obwodu elektromagnetycznego transformatora trójfazowego. W opracowanym programie komputerowym przyjęto
następujące założenia:
– oprócz obwodu elektromagnetycznego transformatora trójfazowego w programie
dyskretyzowany jest również obszar wokół uzwojeń i rdzenia, przy pominięciu
elementów i urządzeń transformatora, takich jak przełącznik zaczepów, radiatory, konserwator oleju, belki ściskające itp.,
– kadź transformatora została uproszczona do postaci cienkościennego prostopadłościanu,
– rdzeń transformatora jest rdzeniem trójkolumnowym niesymetrycznym o prostokątnym przekroju kolumny,
– rdzeń jest rozpatrywany jako element lity (anizotropowość rdzenia może być
później uwzględniona w polowym programie obliczeniowym).
Opracowany program umożliwia automatyczne generowanie siatki trójwymiarowej dyskretyzacyjnej. Dane wejściowe programu wprowadzane są w trybie konwersacyjnym. Na rys 7. pokazane jest okno programu umożliwiające wprowadzenie wymiarów transformatora.
Rys. 7 Deklaracja wymiarów transformatora
Fig. 7 Declaration of transformer dimensions
Kolejnym etapem wprowadzania danych jest określenie gęstości siatki dyskretyzacyjnej. Na rys 8 przedstawione jest przykładowe okno programu umożliwiające deklarowanie parametrów dyskretyzacji.
Rys. 8 Deklaracja parametrów dyskretyzacji
Fig. 8 Declaration of discretization parameters
Wynikiem działania programu są współrzędne punktów elementów pięciościennych (pryzm) tworzących trójwymiarową siatkę dyskretyzacyjną. Otrzymane wyniki
mogą być bezpośrednio przesłane do programu obliczeniowego (MES) lub zapisane
do pliku. Opracowany program posiada możliwość wizualizacji wyników. W tym celu
wykorzystano technikę ActiveX Automation [5]. Technika ActiveX Automation wywodzi się z technologii OLE i umożliwia na wymianę danych pomiędzy aplikacjami
działającymi w środowisku Windows. Program dyskretyzacyjny został połączony z
programem AutoCAD firmy Autodesk. Uzyskano w ten sposób możliwość programowego sterowania obiektami rysunkowymi AutoCADa. Na rys. 9 przedstawiono
przykładową wizualizację wyników działania programu dyskretyzacyjnego.
Rys. 9 Wizualizacja wyników dyskretyzacji
Fig. 9 Visualization of discretization results
Obiekty rysunkowe umieszczone w przestrzeni programu AutoCD mogą być edytowane jak również wizualizacja może być zapisana jako plik typu dwg.
3. PODSUMOWANIE
Opracowany program komputerowy jest narzędziem wspomagającym tworzenie
trójwymiarowej siatki dyskretyzacyjnej obwodu elektromagnetycznego transformatora 3-fazowego. Program może być wykorzystywany jako samodzielnie działająca
aplikacja lub jako procedura w programie do analizy pola magnetycznego metodą
elementów skończonych. Program posiada przystępny interfejs graficzny, umożliwiający wprowadzanie danych. Wyniki programu zapisywane są do plików tekstowych.
Zastosowanie techniki ActiveX Automation do komunikacji z systemem AutoCAD,
umożliwiło przejrzystą wizualizację wyników.
LITERATURA
[1] DE BERG M., VAN KREVELD M., OVERMARS M., SCHWARZKOPF O., Geometria obliczeniowa. Algorytmy i zastosowania, WNT, Warszawa 2007.
[2] HJELLE Ø., DÆHLEN M., Triangulations and Applications, Springer 2006.
[3] MICHAEL J., MCCULLAGH, C., ROSS G., Delaunay triangulation of a random data set for isarithmic mapping, The Cartographic Journal, 17(2),p:93-99, 1980.
[4] MIRANTE A., WEINGARTEN N., The Radial Sweep Algorithm for Constructing Triangulated
Irregular Networks. Computer Graphics and Applications, IEEE, Volume 2, May 1982,p:11 – 21.
[5] SUTHPIN J., AutoCAD 2006 VBA A Programmer’s Reference, Apress 2005.
[6] VORONOI M.G, Nouvelles applications des parametres continus a la theorie des formes quadratiques, J.Reine u. Angew. Math.,134:p.198-287, 1908.
COMPUTER PROGRAM AIDING DISCRETIZATION OF ELECTROMAGNETIC
CIRCUIT OF THREE–PHASE TRANSFORMER
The paper deals with the selected algorithms for discretization of two- and three-dimensional
continuous media. The construction of Voronoi tessellation have been presented. The algorithms basing
on the radial sweep and the step by step method for Delaunay triangulation have been described.
The circle and angle criteria for the acceptance of two and- and three-dimensional mesh discretization
have been given. The special algorithm and the computer program assisting the discretization process
have been elaborated. The developed program was used to generate the three-dimensional mesh of an
electromagnetic circuit of a three-phase transformer. Examples of the program results have been
presented. The elaborated computer application enables the visualization of the work results in the
AutoCAD environment.