Klothoide

Die erste Bekanntschaft mit einer Klothoide dürfte den meisten Menschen nicht bewusst sein. Jedes Kind, das nicht vom Tretroller oder Fahrrad abgeworfen werden will, nutzt sie ganz natürlich, da es allmählich und nicht abrupt einlenkt.
Als stolzer Besitzer einer Spielzeugeisenbahn merkt man den schlagartigen Beginn der Kurvenfahrt, wenn man die Standardbögen nutzt. Würde das in der Realität ebenso sein, dann führte diese Schienenbindung zu in jeder Hinsicht schädlichen Querrucken. Die Passagiere täten sich jedenfalls bedanken! 😉
Wie ungebundene(re) Autofahrer “von der Bahn abkommen”, wenn sie “unrund” konzipiert ist, zeigt das folgende Bild:

Quelle: Gläser, Hans [1972]: Trassierung von Straßen und Gewässern

Ich kann mich nicht erinnern, dass die Klothoide in meiner Technikausbildung je näher beleuchtet wurde. Das dürfte bei anderen ähnlich gewesen sein, jedenfalls fand sie auch bei ausgewiesenen Anwendungsfällen (z. B. Rollenführungen) keinen Anklang!
Im Zuge der Beschäftigung mit der Kerbformoptimierung drängte sie sich wieder einmal auf, da man sich dort schon mit Ellipse, Tangens und Traktrix versucht hatte.
Das blieb zwar fruchtlos, die Auseinandersetzung hatte aber schon Früchte in Excel getragen.
Die folgende Datei enthält Formeln für den Ordinaten- und Abszissenwert zufolge einer Bogenlänge L und einer Konstanten A. Jeder einzelne Wert verlangt wegen der darin verarbeiteten Reihe die Eingabe als Matrixformel (Arrayformel) (STRG+UMSCHALT+EINGABE). Für die Berechnung mehrerer Werte wurde deswegen eine benutzerdefinierte Funktion CLOTHOID(Konstante;Bogenlänge am Ende;[Bogenlänge am Anfang];[Anzahl der Zwischenpunkte]) programmiert, wobei Konstante und Bogenlänge am Ende erwartet werden und Bogenlänge am Anfang und Anzahl der Zwischenpunkte optional sind. Die Funktion liefert gleichzeitig die Werte für Ordinate, Abszisse, Steigungswinkel und Krümmung, auf einzelne Werte davon greift man via Funktion INDEX zu:

Kerbformoptimierung

Ich weiß nicht mehr, wie ich auf das Buch “Warum alles kaputt geht” von Professor Claus Mattheck gestoßen bin. Vielleicht habe ich wieder einmal nach meinem Steckenpferd “Bionik” gegoogelt. Jedenfalls gesellte es sich zu jenen von Professor Werner Nachtigall:

  • Vorbild Natur: Bionik-Design für funktionelles Gestalten
  • Bionik: Grundlagen und Beispiele für Ingenieure und Naturwissenschaftler
  • Das große Buch der Bionik: Neue Technologien nach dem Vorbild der Natur
  • Natur macht erfinderisch: Das große Buch der Bionik

Weitestgehend auf Mathematik verzichtend handeln die Seiten 98 bis 103 von einer möglichst kerbfreien Schulter eines abgesetzten Bauteils, das auf Zug beansprucht ist.
Im Formelanhang auf Seite 186 findet sich dafür unter dem Titel “Formoptimierung” folgende detailliertere Skizze:

Quelle: “Warum alles kaputt geht”, mit freundlicher Genehmigung von Professor Claus Mattheck

Die nächste Seite präsentiert dazu schließlich folgende Formeln: \[ \begin{array}{lcr}
& \Delta F_T = – \Delta F_Q & (1) \\
& F_T^i – F_T^{i + 1} = F_Q^{i + 1} – F_Q^i & \\
& F_T^{i + 1} = F_0 \frac {D_0} {D_{i + 1}} \cos \left( \sum_{k = 0}^i \alpha_k \right) & (2) \\
& F_T^i = F_0 \frac {D_0} {D_i} \cos \left( \sum_{k = 0}^{i – 1} \alpha_k \right) & (3) \\
& F_Q^{i + 1} = 2 F_T^{i + 1} \sin \left( \frac {\alpha_{i + 1}} 2 \right) & (4) \\
& F_Q^i = 2 F_T^i \sin \left( \frac {\alpha_i} 2 \right) & (5) \\
\text{mit} & D_{i + 1}=D_i + 2 s \sin \left( \sum_{k=0}^i \alpha_k \right) & \text{folgt aus (1) – (5):} \\
& \alpha_{i+1} = 2 \arcsin \left\{ \frac {\frac {D_{i+1}}{D_i} \cos \left( \sum_{k = 0}^{i-1} \alpha_k \right) \left[ 1 + 2 \sin \left( \frac {\alpha_i} 2 \right) \right] – \cos \left( \sum_{k = 0}^i \alpha_k \right)}{2 \cos \left( \sum_{k = 0}^i \alpha_k \right)} \right\} & (6)
\end{array} \]

Als einstmaliger Konstrukteur kam es mir so vor, als wollte man den klassischen Korbbogen in praxisuntauglicher Form akademisch neu erfinden. Als Berechnungsingenieur interessierte mich der Ansatz durchaus, weswegen ich ihn eingehender studierte.
Die Verhältnisse \( \frac {D_0}{D_{i + 1}} \) und \( \frac {D_0}{D_i} \) in den Gleichungen \( (2) \) und \( (3) \) sind eigentlich die Flächenverhältnisse mit herausgekürzter Dicke bei Zug- oder Druckspannung.
Zur allgemeinen Anwendung werden \( \left( \frac {D_0}{D_i} \right)^{k_W} \) und \( \left( \frac {D_0}{D_{i + 1}} \right) ^{k_W} \) als Widerstandsverhältnisse eingeführt, mit:
\( \bullet\ k_W = 1 \) für Zug und Druck eines ebenen Querschnitts der Breite \( D \)
\( \bullet\ k_W = 2 \) für die Biegung eines ebenen Querschnitts der Breite \( D \)
\( \bullet\ k_W = 3 \) für die Biegung und Torsion eines Kreisquerschnitts mit Durchmesser \( D \)
Damit ergibt sich eine universellere Formel für den lokalen Knickwinkel:
\[ \alpha_{i+1} = 2 \arcsin \left\{ \frac { \left( \frac {D_{i+1}}{D_i} \right)^{k_W} \cos \left( \sum_{k = 0}^{i-1} \alpha_k \right) \left[ 1 + 2 \sin \left( \frac {\alpha_i} 2 \right) \right]}{2 \cos \left( \sum_{k = 0}^i \alpha_k \right)} – \frac 1 2 \right\} \]

Daraus entstand eine App mit folgenden Eigenschaften:
Vorwahl der Spannungsart Zug/Druck, Biegung: Ebener QS, Biegung: Runder QS oder Torsion, Festlegung einer Segmentanzahl von 1 bis 10 und die Vorgabe eines Anfangsquerschnitts.
Mittels des Solvers werden Segmentlänge und Anfangswinkel derart variiert, dass etwaige Minima und Maxima derselben aber auch jene eines Abbruchwinkels und der Länge und Höhe der Kerbe eingehalten werden. Dabei wird immer versucht, die Höhe voll auszunützen. Die Koordinaten der sich ergebenden Spline-Punkte können sodann im CAD verwendet werden:

Zuschnittsermittlung

Ein 3D-CAD-Native, der es nicht anders kennt, als sich Zuschnitte selbst einfacher Blechbiegeteile generieren zu lassen, hat vielleicht von einer Biegeverkürzung gehört, damit beschäftigen muss er sich nicht.
Spezifische Faktoren für eventuell unterschiedliche Biegeprozesse werden ja idealerweise von einem Administrator eingestellt.

Befindet man sich allerdings in der 2D-Welt, die hierzu keine Unterstützung bietet, dann muss man sich behelfen. DIN 6935 gibt einen Korrekturfaktor \( k=0{,}65+0{,}5 \log_{10} \frac r s \) für die Verkürzung an. Die Formel und der Rechengang finden sich im Wikipedia-Artikel Biegeverkürzung und in Tabellenbüchern, weswegen man die Norm nicht unbedingt erstehen muss.

Die folgende Datei ermittelt die Abschnittslängen und die kumulierten Längen von bis zu 5 Schenkeln:

Rohrende quetschen

Für das Verschweißen von kreisförmigen Rohren kann man mehr oder weniger Aufwand treiben. Sind Festigkeit oder/und Steifigkeit oder/und Optik wichtig, dann bedarf es in den meisten Fällen einer spanenden Bearbeitung. In anderen Fällen mag es schon ausreichen, das Rohrende im richtigen Winkel abzulängen und zu quetschen.

Im Rahmen des Anlagenbaus in der Hüttentechnik war es, insbesondere für Geländer, meist völlig ausreichend, wenn gequetschte Rohrenden verschweißt wurden. Denn wegen der dort üblichen Überdimensionierung sind Festigkeit und Steifigkeit automatisch gegeben, und Optik ist eher tertiär als sekundär.

Anfangs noch mit 2D zugange, habe ich mir deswegen ein kleines “Excelchen” erstellt, damit die sich ergebende Quetschung abgeschätzt werden kann, damit Darstellung und Schweißnahtlänge einigermaßen passten.
Die folgende Datei errechnet ausgehend von Außendurchmesser und Wandstärke des Rohres die Breite der Quetschung zufolge gewünschter Dicke:

ODER für Matrixformeln

Der Funktion ODER(Wahrheitswert1;[Wahrheitswert2];…) können bis zu 255 (30 in Excel 97 – 2003) Bedingungen übergeben werden, die entweder als WAHR oder als FALSCH bewertet werden können. Diese Argumente dürfen auch als Arrays (Matrizen) vorliegen, was einen verleiten könnte, ODER auch in einer Matrixformel zu verwenden, was aber daran scheitert, dass immer nur ein Wert zurückgegeben wird!

Abhilfe
Anstatt ODER(Wahrheitsarray1;Wahrheitsarray2;…) nehme man bei Matrixformeln den logischen Ausdruck {=(Wahrheitsarray1+Wahrheitsarray2+…>0)}. Die geschlungenen Klammern ergeben sich durch Eingabe mittels STRG+UMSCHALT+EINGABE.

Alternative
Die Benutzerdefinierte Funktion OR4AF(Wahrheitswert1;[Wahrheitswert2];…) (Abkürzung für “OR for Array Formulas”) funktioniert wie das normale ODER (allerdings werden beliebig viele Argumente entgegengenommen), wenn sie von einer “gewöhnlichen” Formel aufgerufen wird, in allen anderen Fällen (Aufruf durch Matrixformel, VBA,…) werden die Wahrheitswerte wie folgt abgearbeitet:

  • 2-dimensionale Matrix führt zum Fehler #WERT!
  • 1-dimensionale Matrizen können gemischt als Spalten- und Zeilenvektoren vorliegen
  • Der größte Vektor bestimmt den Ergebnisumfang
  • Fehlende Werte eines kleineren Vektors werden ignoriert
  • Ein Einzelwert wird zu einem Vektor mit einer Komponente
  • Dabei werden wie beim normalen ODER Text und fast alle Zahlen ignoriert, denn 0 entspricht FALSCH

Die folgende Datei zeigt die Verwendung der Benutzerdefinierten Funktion OR4AF im Vergleich zum normalen ODER anschaulich für die verschiedensten Fälle:

Normzahlen

Normzahlen und daraus gebildete Normzahlreihen finden sich sehr vorteilhaft und meist unbemerkt überall in unserem Alltag. Ein Konsument braucht sich damit nicht beschäftigen, ein Techniker, der Dinge auf die Welt bringt, sollte dies allerdings schon tun. In DIN 323, Blatt 2 werden von a bis v 22 gute Gründe angeführt, warum man Normzahlen nicht links liegen lassen sollte!

Zu meiner Zeit an der HTBLA wurden Normzahlen im Rahmen der Maschinenelemente gelehrt. Das Prinzip war relativ leicht zu ergründen, die Tragweite allerdings nicht, und diese wurde, zumindest meiner Erinnerung nach, nicht ausreichend betont. Dies dürfte leider sehr verbreitet gewesen sein, weil ich während meiner ganzen Entwicklerlaufbahn nie auf jemanden getroffen bin, der die Vorteile geschätzt hätte.
Beispielweise wurde bei Schrauben selbstverständlich immer zu genormten und somit leicht zu beziehenden Größen gegriffen, kaum machte man sich über Eigenfertigungsteile her, war der Aspekt sofort aus dem Sinn. Dabei ist auch bei solchen Teilen die Wiederverwendbarkeit davon abhängig, wie geschickt man abstuft.
Ein abschreckendes Beispiel dafür war die Vielfalt an “Laschen”, auf die ich einstmals in einer Firma traf. Wenigstens etwas einschränkend – weil Normzahlen gehorchend – wirkten die dafür verwendeten Band- und Flachstähle, nicht auszudenken, wenn es damals schon wirtschaftliche Laserschnitte gegeben hätte!
Aber auch Schläuche können mit dem Argument, dass im Projektgeschäft ohnehin immer alles anders sei, eine derartige Population erreichen, dass sie irgendwann nach Bereinigung schreien, noch dazu, wenn jede Ausführung eine eigene Zeichnung verlangt!

Die nachfolgende Datei offeriert die gemäß DIN 323, Blatt 1 definierten, wenig gerundeten Grundreihen R 5, R 10, R 20, R 40 und zusätzlich die zu vermeidende Ausnahmereihe R 80 sowie deren gerundete Versionen R’ 10, R’ 20 und R’ 40 und die stark gerundeten Ausführungen R” 5, R” 10 und R” 20.
Für eigene Kreationen dient die “Benutzerdefinierte Reihe”, wofür Startwert, Endwert und Stufenzahl vorgegeben werden können.
Für alle Reihen können überdies Steigung und Faktor definiert werden, und die Ordinate des Diagramms kann linear oder logarithmisch skaliert werden:

To-do-Liste

Ich führe auch privat eine To-do-Liste. Das hat weniger mit meinem fortgeschrittenen Alter und einer eventuell damit einhergehenden zunehmenden Vergesslichkeit zu tun. Aufgaben und Termine parat zu haben, kann nicht schaden, insbesondere wenn dadurch nichts (mehr) vergessen werden kann und sich der Aufwand für die Verwaltung in Grenzen hält.

Natürlich bietet sich hiefür Excel an, weswegen man dazu auch jede Menge Vorlagen im Internet findet. Vielen davon sieht man die Professionalität an, weil sie Spalten für z. B. Prozesseigner und Status enthalten.

Meine ist mit Datum- und Aufgabenspalte minmalistisch, wurde aber im Laufe der Zeit mit ein paar “Helferlein” ausgestattet:

  • Das Tagesdatum wird mittels Bedingter Formatierung durch Füllfarbe hervorgehoben
  • Die Änderung eines Datums in der 1. Spalte führt zu einer automatischen Sortierung
  • Datumsänderungen können nicht nur manuell, sondern auch mittels Shortcut und Kontextmenü erfolgen
  • Der Shortcut Strg+T blendet eine Input-Box mit der Vorgabe 1 ein, die direkt überschrieben werden kann. Mit der Eingabetaste wird das Datum um die eingegebene Anzahl an Tagen erhöht, mit Esc abgebrochen. Auch negative Zahlen fürs Vorziehen sind natürlich zulässig.
  • Wenn eine einzeln selektierte Zelle ein Datum enthält, dann bietet das Kontextmenü den Menüpunkt ≫Verschiebung…≪ mit den Unterpunkten ≫1 Tag≪, ≫x Tage…≪, ≫1 Woche≪, ≫1 Monat≪ und ≫1 Jahr≪ an. Die ersten 3 Unterpunkte lassen sich auch sehr schnell durch den Shortcut erledigen.
  • Innerhalb des benutzten Bereichs bietet das Kontextmenü überdies den Menüpunkt ≫Priorität…≪ mit den Unterpunkten ≫|||||| Gelb≪, ≫|||||| Orange≪, ≫|||||| Rot≪ und ≫|||||| Keine Füllung≪ an. Die Zelle der selektierten Zeile in der 2. Spalte wird entsprechend farbig befüllt oder geleert.

Wer also wie ich mit einer simplen To-do-Liste auskommt, oder diese als Basis für eine eigene “aufgebohrte” verwenden will, findet in der folgenden Datei die oben beschrieben Funktionalitäten:


Vollständiges elliptisches Integral II. Art

Im Beitrag Vollständiges elliptisches Integral I. Art erwähne ich die Beschäftigung mit der Hertz’schen Pressung. Diese verlangt aber auch noch nach der II. Art dieser Kategorie eines Elliptischen Integrals.

Die 3. Formel der angeführten Reihenentwicklungen auf THE WOLFRAM FUNCTIONS SITE ist \( K(z) \) sehr ähnlich: \[ E(z) = \frac \pi 2 \sum_{k = 0}^\infty \frac {\left( – \frac 1 2 \right)_k \left( \frac 1 2 \right)_k z^k}{k!^2} \]
Die darin vorkommenden indizierten Klammerausdrücke sind das bereits veröffentlichte Pochhammer-Symbol.
Da eine Konvergenz nur für \( |z|<1 \) gegeben ist, braucht es für \( z<-1 \) noch die Identität \( E(z<-1) = \sqrt {1-z} E \left( \frac z {z-1} \right) \), als zweite von 7 angebotenen auf THE WOLFRAM FUNCTIONS SITE.
Um eine annehmbare Genauigkeit zu erhalten, müssen ausreichend viele Glieder aufsummiert werden, wobei Fakultäten – insbesondere potenziert – dem allzu schnell ein Ende setzen können. Es bietet sich hier also an, die Quotienten \( \frac {\left( – \frac 1 2 \right)_k}{k!} \) und \( \frac {\left( \frac 1 2 \right)_k}{k!} \) zu multiplizieren, was mit \( \left( – \frac 1 2 \right)_k = – \frac {(2k – 2)!}{2^{2k-1} (k-1)!} \) und \( \left( \frac 1 2 \right)_k = \frac {(2k – 1)!}{2^{2k-1} (k-1)!} \) zu \( – \frac 1 {2 \pi} \frac {\Gamma \left[ – \frac 1 2 +k \right]}{\Gamma \left[ 1+k \right]} \frac {\Gamma \left[ \frac 1 2 +k \right] }{\Gamma \left[ 1+k \right]} \) führt. \( \Gamma \) steht dabei für die Gamma-Funktion, die Excel anbietet, weswegen einer Formel nichts mehr im Wege steht. Als Besonderheiten müssen noch folgende speziellen Werte berücksichtigt werden: \( K(1) = 1 \) , \( K(0) = \frac \pi 2 \) und \( K(-1) = \frac {2 \Gamma \left( \frac 3 4 \right)^4 + \pi^2}{2 \sqrt {2 \pi} \Gamma \left( \frac 3 4 \right)^2} \).

Damit die Formel alle Glieder aufsummiert, muss sie als Matrixformel (Arrayformel) eingegeben werden. Die Begrenzung der Gliederanzahl kommt dabei von der größtmöglichen positiven Zahl in Excel, weswegen die Gamma-Funktion keine größere ganze Zahl als 171 zulässt.

Das kann auch mittels der Benutzerdefnierten Funktion E_z(z) erfüllt werden, wobei z eine einzelne Zahl, eine Matrix-Konstante, eine einzelne Zelle oder ein einzeiliger oder einspaltiger Zellbereich sein darf. Nicht mehr die Anzahl der Glieder ist schlagend, sondern die geforderte Genauigkeit, fixiert auf die 15 signifikanten Stellen in Excel, bei deren Erreichen abgebrochen wird. Die Restriktion der Gamma-Funktion kann umgangen werden, weil in einer Schleife nicht jedes Glied gänzlich neu berechnet werden muss. Auch noch Rechenzeit sparend, ist ein neues Glied das vorhergehende multipliziert mit deren Quotienten.

Die nachfolgenden Datei enthält alles obig Beschriebene nachvollziehbar, wobei der Vergleich mit Werten aus Mathematica gezogen wird:

Bemerkung: Wegen der Funktion GAMMA nicht als 97-2003-Version.