2.3.6.1.9. Schlüssel "ThreadGroupRx_xx" - Gewindekonfiguration

Die Konfigurationsdatei ifadeskinv.cfg steuert, wie die Gewindebezeichnung von PARTsolutions nach Inventor übersetzt wird.

Ab V11 wird das Gewindemapping exklusiv via ifadeskinv.cfg gesetzt.

Gewinde sind in Gruppen kategorisiert, welche durch reguläre Ausdrücke spezifiziert werden. Jede Gruppe besteht aus einem Schlüsselbegriff und einer eindeutigen Nummer.

Beispiel:

ThreadGroupRx_10=M(\d+)(\.0*)?$
ThreadGroupRx_20=M(\d+ *\. *\d+)$
etc.

Weiteres Beispiel: Gewindemapping für M-Gewinde, die ein "x" im Namen haben (z.B. M24x1)

ThreadGroupRx_30=M([0-9]+\.*[0-9]*) *x *([0-9]+\.*[0-9]*)

Die Suche nach einer Match-Gruppe wird in aufsteigender Ordnung ausgeführt. Nachfolgend wird überprüft, ob das Gewinde in einer der gegebenen Tabellen, getrennt durch den spezifizierten Dezimaltrenner (siehe unten) verfügbar ist. Wenn eine Tabelle mit dem gesuchten Gewinde gefunden wird, wird genau diese verwendet. Ansonsten wird nach einer anderen passenden Gewindegruppe gesucht. Wenn ein CADENAS-Gewinde einer Gruppe entspricht, aber nicht mit den Daten dieser Gruppe in Inventor erstellt werden kann, dann geht die Suche weiter zur nächsten Gruppe. Wenn keine der Gruppen passt, wird eine entsprechende Fehlermeldung angezeigt.

Jede Gruppe muss wenigstens die Schlüssel ThreadGroupRx und ThreadGroupTable haben.

  • ThreadGroupRx enthält den regulären Ausdruck (siehe obige Beispiele).

    ThreadGroupRx wird auf die CADENAS Gewindebezeichnung angewendet. Wenn der Ausdruck der CADENAS Gewindebezeichnung entspricht, wird er Eins-zu-Eins nach Inventor übergeben, wo er in der thread.xls gesucht wird.

  • ThreadGroupTable ist der Name der korrespondierenden Tabelle in thread.xls.

    Alle ThreadGroupTable* Schlüssel unterstützen mehrere semikolongetrennte (;)Tabellennamen.

    Wenn es Tabellen mit unterschiedlichen Dezimaltrennern gibt, dann kopieren Sie einfach eine Gruppe und passen Sie Tabellenname und Trennzeichen an (und weitere Einträge wenn erforderlich).

    ThreadGroupRx_70=ST(.+)
    ThreadGroupName_70=ST\1x%round(%pitch,1)
    ThreadGroupTable_70=THREADTBL_ISO_FORMING
    ThreadGroupClass_innerthread_70=6g
    ThreadGroupClass_outerhread_70=6g
    ThreadGroupDecimalMark_70=.
    
    ThreadGroupRx_71=ST(.+)
    ThreadGroupName_71=ST\1x%round(%pitch,1)
    ThreadGroupTable_71=THREADTBL_ISO_FORMING2
    ThreadGroupClass_innerthread_71=6g
    ThreadGroupClass_outerhread_71=6g
    ThreadGroupDecimalMark_71=,
    

Standardmäßig ist der Dezimaltrenner für Gleitkommazahlen ein Punkt "." (wenn der Schlüssel fehlt, wird dieses Zeichen verwendet). Diese Einstellung kann mit dem globalen Schlüssel ThreadsDecimalMark überschrieben werden. Zusätzlich kann das Trennzeichen für jede Gewindegruppe individuell gesetzt werden mittels unveränderlichem ThreadGroupDecimalMark_xxx (wobei xxx die Gewinde-Gruppen-ID ist).

Falls die Inventor-Bezeichnung unterschiedlich von der CADENAS-Bezeichnung sein sollte, dann kann optional der Schlüssel ThreadGroupName gesetzt werden.

Verfügbare Variables für die Erstellung von ThreadGroupName:

  • %dia = Gewindedurchmesser

  • %pitch = Gewindesteigung

    Ein Formatierungsstring in "printf" Nomenklatur kann den Systemvariablen vorangestellt werden (%pitch, etc.).

    Beispiel:

    %5.3gpitch

  • %invpitch = 1 / pitch

  • \1, \2, .... : Die gematchten Strings

Verfügbare Funktionen für die Erstellung von ThreadGroupName:

  • %ThreadDesignationMap_*** (*** steht für irgendeinen, aber eindeutigen Namen): Modifiziert Gewindedurchmesser zu Werten, die von Inventor behandelt werden können.

    In ifadeskinv.cfg muss genau eine passende Zeile verfügbar sein, die mit "ThreadDesignationMap_***=" beginnt und die Wertepaare getrennt durch ";" hat. Diese Wertepaare werden dann für das Mapping verwendet. Die Werte eine Wertepaares sind getrennt durch ",".

    Beispiel:

    ThreadDesignationMap_UNx=0.06,0; 0.073,1; 0.086,2; 0.099,3; 0.112,4; 0.125,5; 0.138,6; 
     0.164,8; 0.19,10; 0.216,12

  • %round: Gibt einen gerundeten Wert für die Gewindesteigung zurück. Sie können die Genauigkeit optional als zweiten Parameter setzen.

[Hinweis]Hinweis

Aktuell werden nur Konstanten oder Variablen als Argumente für Funktionen unterstützt.

Wenn der Name für inneres und äußeres Gewinde unterschiedlich sein soll, dann müssen die Schlüssel ThreadGroupNameForInnerThread und ThreadGroupNameForOuterThread anstelle von ThreadGroupName verwendet werden.

Wenn es spezielle Tabellen für inneres und äußeres Gewinde gibt, dann müssen die Schlüssel ThreadGroupTableForInnerThread und ThreadGroupTableForOuterThread anstelle von ThreadGroupTable verwendet werden.

Desweiteren sind die selbsterklärenden Schlüssel ThreadGroupTableForConic und ThreadGroupTableForNotConic als Alternative verfügbar. Solch ein Schlüssel kann eine direkte Referenz zu einer Tabelle in thread.xls enthalten oder eine Referenz zu einem Tabellennamen in ifadeskinv.cfg.

Wenn die Gewinde in der Tabelle nach Klassen sortiert sind, dann kann mittels ThreadGroupClass_innerthread und ThreadGroupClass_outerhread der entsprechende Klassenname für inneres und äußeres Gewinde gesetzt werden. Wenn beide Schlüssel nicht verwendet werden, dann wird kein Klassenname gesetzt. Wenn nur ein Klassenname gesetzt werden soll, müssen dessen ungeachtet beide gesetzt werden. In diesem Fall bleibt der zweite Schlüssel leer.

Die an Inventor übergebene Gewindesteigung kann unabhängig vom Gewindenamen gesetzt werden (Spezialfall ST Gewinde). Hierfür dient der Schlüssel ThreadGroupPitch. Dies betrifft jedoch nicht die Variablen %pitch und %invpitch.