Software: FEMM - Elektrostatik - OBC-Script

Aus OptiYummy
Zur Navigation springenZur Suche springen

LUA-Script für Open Boundary Problem

Leiterkapazität im unendlichen Raum

Software FEMM - Elektrostatik Feldbild.gif

Die Berechnung der Leiter-Kapazität als Open-Boundary-Condition Problem (OPC-Problem) soll nun ebenfalls als LUA-Script Leiterplatte2_xx.LUA beschrieben werden. Hierfür können wir die existierende Datei Leiterplatte1_xx.LUA modifizieren:

  • Wir erzeugen eine Kopie der vorhandenen Datei unter dem neuen Namen.
  • Der Radius der Luft-Sphäre soll nur 2,5 mm betragen:
Software FEMM - Elektrostatik - OPC-Script geometrie.gif
  • h_Air=2.5 kann nun als Radius dieser Luft-Sphäre interpretiert werden.
  • b_FR4 muss nun abhängig von h_Air berechnet werden (Formel). Das setzt voraus, dass beide Parameter sequentiell in der richtigen Reihenfolge mit Werten belegt werden!
  • Die Geometrie-Anweisungen für die nicht mehr benötigten Linien-Segmente und Eck-Knoten des bisherigen Luftraums können im Script gelöscht werden.
  • ei_seteditmode ("arcsegments") aktiviert den Bogen-Modus.


Hinweis: Die Aktivierung der einzelnen Bearbeitungsmodi ist für die Funktion eines Scripts nicht erforderlich. Man sollte dies aber trotzdem konsequent anwenden, weil man sich damit im Fehlerfall sofort im richtigen Bearbeitungsmodus befindet! Außerdem dient seteditmode gleichzeitig der Strukturierung des Scripts.


  • ei_addarc(x1,y1, x2,y2, deg, segm_deg) zeichnet entgegen dem Uhrzeigersinn einen Kreisbogen von Knoten1 nach Knoten2 mit dem angegebenen Winkel [deg]. Gewählt werden die Knoten, welche den Koordinaten (x1,y1) und (x2,y2) am nächsten liegen. Wir nutzen die berechneten, exakten Koordinaten.

Der Bogen wird aus kleinen Linien-Segmenten zusammengesetzt, welche einen maximalen Winkel aufweisen [segm_deg]. Dafür sollte man z.B. 5° wählen.

  • Zusätzlich zu den Potentialen der Conductor-Segmente müssen wir noch die "Open Boundary Property" für den Kreisbogen definieren und dem Bogen zuweisen:
    • ei_addboundprop("boundpropname", Vs, qs, c0, c1, BC-Type) erzeugt eine Randbedingung.
    • Über den BC-Type kann man wählen zwischen:
      • 0="Konstantspannung" (alles Null, außer Vs),
      • 1="Mixed" (Rest Null, außer c0 und c1),
      • 2="Ladungsdichte" (Rest Null, außer qs)
    • In unserem Beispiel sind:
      • c0=eo/(h_Air*mm);
      • c1=0;
      • In der Formel für c0 ist der Radius h_Air in Meter gefordert. Da unser Wert in Millimetern gemessen ist, muss man ihn mit der vordefinierten Konstante mm=0.001 multiplizieren!
    • ei_addboundprop("asymp.BC" , 0 , 0 , c0, c1, 1); lautet also die konkrete Anweisung, nachdem man zuvor c0 und c1 berechnet hat.


Achtung: Damit die Boundary Property "asymp.BC" dem Kreisbogen auch zugewiesen wird, muss man in Analogie zur Behandlung von Linien-Segmenten das Bogensegment selektieren und ihm danach die Property zuweisen. Die speziellen LUA-Befehle sind dem FEMM-Manual zu entnehmen! Ob die Open Boundary Condition richtig definiert wurde, erkennt man nach der Simulation anhand der Feldlinien (Siehe obiges Bild).


Frage für Teilnehmer der Lehrveranstaltung:

Senden Sie die mit Ihrer Teilnehmer-Nummer xx konfigurierten Script-Dateien Leiterplatte1_xx.LUA und Leiterplatte2_xx.LUA als Teil der Lösung.