DE10144932A1 - Visualisierung von Werkstücken bei der Simulation von Fräsprozessen - Google Patents
Visualisierung von Werkstücken bei der Simulation von FräsprozessenInfo
- Publication number
- DE10144932A1 DE10144932A1 DE10144932A DE10144932A DE10144932A1 DE 10144932 A1 DE10144932 A1 DE 10144932A1 DE 10144932 A DE10144932 A DE 10144932A DE 10144932 A DE10144932 A DE 10144932A DE 10144932 A1 DE10144932 A1 DE 10144932A1
- Authority
- DE
- Germany
- Prior art keywords
- milling
- intersection
- workpiece
- emulating
- workpiece contour
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4069—Simulating machining process on screen
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/35—Nc in input of data, input till input file format
- G05B2219/35148—Geometric modeling for swept volume of moving solids
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37041—Digitize, electric wires form grid on surface
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
Abstract
Die Erfindung ermöglicht eine Nachbildung einer Werkstückkontur durch Simulation einer Fräsbearbeitung, wobei ein Werkstückrohling durch eine Geradenschar in einem dreidimensionalen Raum (x, y, z) modelliert wird und alle Geraden parallel zu einer Achse (z) verlaufen. Eine Werkstückkontur wird durch Schneiden der Geradenschar mit einer virtuellen Fräskante FK gemäß einer vorgegebenen Fräserbahn im dreidimensionalen Raum anhand der dabei erhaltenen Schnittpunkte der Geraden aller überstrichenen Volumen ermittelt, indem aus der so erhaltenen Menge von Schnittpunkten ein Flächennetz gebildet wird, das die Werkstückkontur beschreibt.
Description
- Die Erfindung betrifft ein Verfahren zur Nachbildung einer Werkstückkontur durch Simulation einer Fräsbearbeitung sowie eine dazu korrespondierende Vorrichtung, insbesondere einen Simulationsrechner.
- Bei CNC-gesteuerten Bearbeitungsmaschinen wie z. B. Fräsmaschinen wird ein Werkstück in der Regel entweder direkt codiert oder das Werkstück wird zuerst mittels eines CAD- Systems modelliert und dann in ein äquivalentes CNC-Teileprogramm umgewandelt. Das resultierende CNC-Teileprogramm bzw. das CAD-Modell entsprechen dabei idealisierten Bearbeitungsanweisungen für die Bearbeitungsmaschine. Das CNC- Programm wird dann in eine CNC-Steuerung geladen und die Bearbeitungsmaschine entsprechend dem CNC-Programm gesteuert.
- Wenn das entsprechend diesem CNC-Programm gefertigte Werkstück innerhalb der gewünschten Fertigungstoleranzen eines idealen Werkstücks liegt, stellen sich bei dieser Vorgehensweise keine Probleme. Entspricht das gefertigte Werkstück hingegen nicht den an es gestellten Anforderungen, so ergibt sich ein Optimierungsbedarf dahingehend, herauszufinden mit welchen Veränderungen z. B. im CNC-Programm ein ordnungsgemäßes Werkstück gefertigt werden kann.
- Es ist zwar möglich, nacheinander einzelne Bearbeitungsanweisungen und/oder einzelne Betriebsparameter der Bearbeitungsmaschine zu ändern, ein neues Werkstück zu fertigen und dann dieses erneut gefertigte Werkstück zu überprüfen. Diese Vorgehensweise ist aber sehr mühsam und darüber hinaus kosten-, material- und zeitintensiv. Dies gilt ganz besonders auch deshalb, weil oftmals nicht bekannt ist, wo die Ursache für die Abweichungen des tatsächlich gefertigten Werkstücks vom gewünschten Werkstück zu suchen sind.
- Aus diesem Grund geht man heute verstärkt den Weg, solche mechatronischen Systeme wie Bearbeitungsmaschinen zu simulieren. Dies gilt in besonderem Maße auch für Fräsmaschinen und die damit herzustellenden Werkstücke. Um jedoch das Ergebnis einer solchen Simulation analysieren zu können, bedarf es einer Visualisierungsumgebung und damit eines Verfahrens zur realistischen Nachbildung der Oberfläche eines durch Simulation erhaltenen Werkstücks.
- Insbesondere bei der Simulation von Fräsprozessen ist die Visualisierungskomponente in hohem Maße bedeutsam. Diese dient zur Darstellung von Daten und Ergebnissen wie beispielsweise Fräspunkten und -bahnen, Koordinatensystemen oder auch vom Simulationssystem berechneten Werkstückkonturen.
- Visualisierungskomponenten zeichnen sich heutzutage üblicherweise durch Dreidimensionalität und die Möglichkeit zur Interaktion aus. Dementsprechend handelt es sich bei den dargestellten Inhalten um orthographische bzw. perspektivische 3D- Projektionen, welche vom Benutzer aktiv verändert werden können. Dieser ist dabei meist in der Lage, die dargestellten Inhalte zu drehen, zu verschieben und deren Größe zu verändern (sog. zoomen). Bei komfortablen Visualisierungskomponenten kann er darüber hinaus durch Selektion bestimmter Teilinhalte zugeordnete Informationen wie beispielsweise deren Abmessung, räumliche Lage oder Beziehung zu anderen Teilinhalten der Szene erhalten.
- Insgesamt führt dies zu einem besseren Verständnis des Produktionsprozesses. Ferner kann die Oberflächenqualität des zu fertigenden Werkstücks bereits im Vorfeld bestimmt und analysiert werden, um eventuell die bestehende Parametrierung von Steuerung und Antrieb der Werkzeugmaschine zu optimieren.
- Denn dadurch ist es möglich ein "virtuelles Werkstück" zu fertigen bzw. die Bearbeitung virtuell durchzuführen. Es ist also nicht erforderlich, tatsächlich ein Werkstück herzustellen. Prinzipiell muss die Bearbeitungsmaschine als solche nicht einmal vorhanden sein.
- Um qualitative Aussagen über die zu erwartende Werkstückkontur treffen zu können, ist eine hochwertige Visualisierung somit unumgänglich. In dieser ist die virtuelle Werkstückkontur vorzugsweise als 3D-Modell darzustellen. Punkt- und Liniendarstellungen der Fräspunkte und -bahnen genügen in diesem Zusammenhang nicht den Anforderungen. Die Werkstückkontur soll also flächig aus den Fräsdaten zurückgeführt, d. h. berechnet, werden. Dies erfordert ein Verfahren, welches ein Flächennetz erzeugt, welches wiederum der Visualisierungskomponente zugeführt und anschließend dargestellt (gerendert) wird.
- Bisher bekannte Verfahren zur Visualisierung einer Werkstückoberfläche verarbeiten in der Regel lediglich interpolierend die Fräspunkte, also die Verfahrwege des Werkzeugmittelpunkts (sog. Tool center point).
- Im einfachsten Fall entsteht ein derartiges Flächennetz durch Linearinterpolation der Fräspunkte. So berechnen etwa bekannte Vernetzungsalgorithmen ein Dreiecksnetz. Der Algorithmus hat dabei neben der Interpolation die charakteristischen Eigenschaften Fräsbahntreue und Konturtreue. Nachteilig macht sich jedoch bei dieser Vorgehensweise bemerkbar, dass einzig die Fräspunkte, welche üblicherweise die Werkzeugmittelpunkte (tool center point, TCP) beschreiben, zur Berechnung des Flächennetzes herangezogen werden. Dabei bedeutet bei zylindrischen Fräsern der TCP, auch Werkzeugspitze genannt, denjenigen Punkt, an dem die Längsachse des Werkzeugs die Werkzeugoberfläche durchstößt. Der Werkzeugmittelpunkt berechnet sich dann als der um die Werkzeugradiuskorrektur (WRK) verschobene Punkt. Bei Kugelfräsern sind TCP und Kugelmittelpunkt üblicherweise identisch.
- Es wird damit ein punktförmiger Fräser (Fräser der Dimension Null) modelliert. Wie man sich leicht vorstellt, stimmt dieses Modell nicht mit realen Fräsvorgängen überein. Besitzt der Fräser beispielsweise eine Durchmessergröße von 12 mm, so liegt die Lage des tatsächlichen Fräserschnittes 6 mm von der Lage des Fräsermittelpunkts versetzt.
- Nachteilig ist dabei also, dass die Geometrie eines Fräswerkzeugs während der Simulation nicht berücksichtigt wird. Um realistische Werkstückkonturen zu erhalten, sollte daher notwendigerweise die Geometrie des Fräsers bei der Simulation einbezogen werden können. Bekannte Vorgehensweisen, die die Fräsergeometrie mitberücksichtigen, ermöglichen zwar eine höhere Detailtreue, sind jedoch aufgrund interner Datenstrukturen und der damit verbundenen hohen Rechenzeit bezüglich des Laufzeitverhaltens nicht konkurrenzfähig.
- Die bereits bekannten Algorithmen zur Lösung dieser Aufgabe sind somit entweder zu ungenau in der Approximation der Kontur oder ungenügend performant.
- Die Aufgabe der vorliegenden Erfindung besteht somit darin, basierend auf initialen Fräsdaten ein Verfahren zu schaffen, welches eine genügend genaue Nachbildung der zu erwartenden Werkstückkontur bei tolerierbaren Rechenzeiten ermöglicht. Außerdem soll eine Berücksichtigung der Fräsergeometrie möglich sein, ohne dass dadurch die Rechenzeit wesentlich beeinträchtigt wird.
- Gemäß der vorliegenden Erfindung wird diese Aufgabe durch ein Verfahren zur Nachbildung einer Werkstückkontur durch Simulation einer Fräsbearbeitung gelöst, wobei ein Werkstückrohling durch eine Geradenschar in einem dreidimensionalen Raum (x, y, z) modelliert wird und alle Geraden parallel zu einer Achse (z) verlaufen. Eine Werkstückkontur wird durch Schneiden der Geradenschar mit einer virtuellen Fräskante gemäß einer vorgegebenen Fräserbahn im dreidimensionalen Raum anhand der dabei erhaltenen Schnittpunkte der Geraden aller überstrichenen Volumen ermittelt, indem aus der so erhaltenen Menge von Schnittpunkten ein Flächennetz gebildet wird, das die Werkstückkontur beschreibt. Eine besonders geeignete Methode zur Bestimmung solcher Schnittpunkte wird an späterer Stelle ausführlich erläutert.
- Zur Simulation einer Fräsbearbeitung mit drei Achsen wird bei solchen Geraden, die mehrere Schnittpunkte aufweisen, jeweils nur der Schnittpunkt mit der kleinsten Koordinate in Richtung der Gerade zur Bildung des Flächennetzes herangezogen. Liegt mehr als ein Schnittpunkt mit einer Geraden vor, so wird also stets nur derjenige verwendet, dessen Wert in Richtung der Dimension parallel zur Geradenschar am kleinsten ist.
- Sollen neben den Schnittpunkten auch Geraden ohne Schnittpunkt einbezogen werden, so wird nach einer vorteilhaften Ausgestaltung deren jeweiliger Initialisierungswert zur Bildung des Flächennetzes herangezogen.
- Für die Erfindung hat es sich weiter als besonders günstig erwiesen, wenn ein modellierter Werkstückrohling in Richtung der übrigen beiden Dimensionen (x, y) diskretisiert ist, indem die Geraden der Geradenschar in Richtung der übrigen beiden Dimensionen (x, y) äquidistant zueinander angeordnet sind.
- Der Rechenaufwand lässt sich weiter verringern, wenn zur Modellierung des Werkstückrohlings die Geradenschar durch ein dazu achsparalleles Rechteck begrenzt wird, dessen Kantenlängen und räumliche Lage insbesondere unter Verwendung der extremalen Koordinaten der vorgegebenen Fräserbahn im dreidimensionalen Raum bestimmt wird, wobei alle Berechnungen innerhalb des durch dieses Rechteck definierten Raums erfolgen.
- Die gewünschte Berücksichtigung des Fäserradius lässt sich besonders einfach erreichen, indem die ermittelten Kantenlängen des begrenzenden achsparallelen Rechtecks in positive und negative Richtung um den Radius des realen Fräserkopfs vergrößert werden.
- Als besonders effektiv hat es sich erwiesen, wenn als Fräsbahn eine Fräsermittelpunktsbahn dient, die insbesondere als linearinterpolierender Polygonzug im dreidimensionalen Raum aus vorgegeben Fräsdaten, insbesondere aus einem Teileprogramm oder einem Interpolator, ermittelt wird.
- Nach einer besonders vorteilhaften Weiterbildung der Erfindung wird zur Simulation einer Fräsbearbeitung mit einem Fräser ein bei der Bearbeitung überstrichenes Volumen der Geradenschar aus geometrischen Teilvolumen nachgebildet und werden Schnittpunkte mit der Geradenschar separat für jedes dieser Teilvolumen ermittelt.
- Für eine Simulation einer Fräsbearbeitung mit einem Kugelkopffräser gemäß dem Verfahren der vorliegenden Erfindung wird dazu vorzugsweise ein bei der Bearbeitung überstrichenes Volumen der Geradenschar aus Teilvolumen in Form zweier Kugeln oder Halbkugeln nachgebildet, die über ein weiteres Teilvolumen eines in Fräsrichtung liegenden Zylinders miteinander verbunden sind, wobei die Kugeln oder Halbkugeln sowie der verbindende Zylinder jeweils den Fräserradius aufweisen und Schnittpunkte mit der Geradenschar separat für jedes dieser Teilvolumen ermittelt werden.
- Eine weitere Optimierung der Rechenzeit lässt sich dabei erreichen, indem bei einer vertikal verlaufenden Fräsbahn keine Ermittlung von Schnittpunkten der Geraden mit dem Teilvolumen des Zylinders erfolgt.
- Zur Simulation einer Fräsbearbeitung mit einem zylindrischen Fräser hat es sich als besonders effektiv herausgestellt, wenn nur die Volumenunterseite des überstrichenen Volumens der Geradenschar berücksichtigt wird.
- Dabei wird vorzugsweise eine Volumenunterseite des Fräser- Zylinders als Kreisscheibe und ein Verschieben dieser Volumenunterseite des Fräser-Zylinders durch einen durch zwei senkrecht zur Geradenschar parallele Ebenen beschränkten elliptischen Zylinder nachgebildet, wobei Kreisscheiben und diese verbindende elliptische Zylinder jeweils den Fräserradius aufweisen und Schnittpunkte mit der Geradenschar separat für jedes dieser Teilvolumen ermittelt werden.
- Eine weitere Verbesserung des Laufzeitverhaltens der Erfindung wird erreicht, wenn die Menge der zu berücksichtigenden Geraden innerhalb der durch das dazu achsparallele Rechteck begrenzten Geradenschar lokal eingeschränkt wird, indem in diesem achsparallelen Rechteck für Teilstücke der Fräsbahn jeweils separate lokale achsparallele Unterrechtecke gebildet werden, deren Abmessungen auf das jeweilige zu überstreichende Fräservolumen beschränkt werden, und jeweils lediglich die innerhalb eines Unterrechtecks liegenden Geraden bei der Ermittlung relevanter Schnittpunkte berücksichtigt werden.
- Im Fall einer Fräsbearbeitung mit einem Kugelkopffräser geschieht dies vorzugsweise dadurch, dass die Menge der zu berücksichtigenden Geraden innerhalb der durch das dazu achsparallele Rechteck begrenzten Geradenschar lokal eingeschränkt wird, indem in diesem achsparallelen Rechteck für jedes Teilvolumen Kugel, Halbkugel oder Zylinder jeweils separate lokale achsparallele Unterrechtecke gebildet werden, deren Abmessungen auf das jeweilige Teilvolumen beschränkt werden, und jeweils lediglich die innerhalb eines Unterrechtecks liegenden Geraden bei der Ermittlung relevanter Schnittpunkte berücksichtigt werden.
- Für eine Fräsbearbeitung mit einem Kugelkopffräser lässt sich das Laufzeitverhalten noch weiter optimieren, indem im Fall zusammenhängender Fräsbearbeitungsteilabschnitte auf der Fräsbahn für sich überlappende Teilvolumina nur einmal eine Schnittpunktermittlung mit der Geradenschar erfolgt.
- Besonders vorteilhaft ist es weiter, wenn der Abstand zwischen den Geraden der Geradenschar je nach erforderlicher Auflösung der Werkstückkontur interaktiv veränderbar ist.
- Als Vorrichtung zur Durchführung des Verfahrens gemäß der Erfindung eignet sich insbesondere ein geeignet programmierter Simulationsrechner, der über Softwareabschnitte verfügt, die die einzelnen Verfahrensschritte auf dem Rechner durchführen, wenn diese Softwareabschnitte auf dem Rechner ausgeführt werden.
- Analog dazu kann die Erfindung besonders vorteilhaft in Form eines Computerprogrammproduktes realisiert werden, das direkt in den internen Speicher eines digitalen Computers geladen werden kann und Softwareabschnitte umfasst, mit denen die Verfahrensschritte gemäß der voranstehend beschriebenen Ausführungen durchgeführt werden, wenn das Programmprodukt auf einem Computer ausgeführt wird.
- Die vorliegende Erfindung schließt somit einen Kompromiss aus den zunächst diametralen Forderungen einer exakten Nachbildung der Werkstückoberfläche und minimaler Rechenzeit.
- In einem nachfolgenden Schritt kann aus den so berechneten Konturpunkten beispielsweise ein aus Dreiecken bestehendes Flächennetz berechnet werden, welches anschließend einer Visualisierungskomponente, z. B. einem Rechner mit entsprechendem Grafikbildschirm oder -display, zugeführt wird. Eine Möglichkeit zur Generierung eines solchen Flächennetzes aus Konturpunkten ist u. a. aus Maier, K.-H.: Ein auf uniform mäandrisch vorliegenden 3D-Punktdaten basierender Vernetzungsalgorithmus, Technischer Bericht, Siemens AG, Nürnberg, 2001 zu entnehmen.
- Weitere Vorteile und Details der vorliegenden Erfindung ergeben sich anhand von zwei im Folgenden beschriebenen vorteilhaften Ausführungsbeispielen und in Verbindung mit den Figuren. Es zeigen jeweils in Prinzipdarstellung:
- Fig. 1 eine zweidimensionale Darstellung einer uniformen Geradenschar mit umschließendem Rechteck für eine beispielhafte Fräsbahn gemäß der Erfindung (Draufsicht),
- Fig. 2 eine optimierte Schnittberechnung durch lokale Beschränkung der Geradenschar aufbauend auf Fig. 1,
- Fig. 3 ein Ablaufdiagramm der einzelnen Teilschritte beim erfindungsgemäßen Verfahren,
- Fig. 4 ein Ablaufdiagramm der einzelnen Teilschritte zur Bestimmung der Schnittpunkte in z-Richtung,
- Fig. 5 eine Veranschaulichung der geometrischen Gegebenheiten bei einem Schnitt zwischen einer Gerade und einem Zylinder,
- Fig. 6 eine Ergänzung zur Fig. 5,
- Fig. 7 eine schematische Darstellung eines Normalentests auf einen inliegenden Schnittpunkt,
- Fig. 8 und Fig. 9 geometrische Veranschaulichungen der mathematischen Berechnungen zur Schnittpunktermittlung bei einem Kugelfräser,
- Fig. 10 eine geometrische Darstellung der Unterseite eines von einem Zylinderfräser überstrichenen Volumens (sweep-Volumen) bezüglich einer Fräskante
- Fig. 11 eine geometrische Darstellung der Schnittpunktberechnung in verschiedenen Koordinatensystemen für einen Zylinderfräser,
- Fig. 12 eine geometrische Veranschaulichung der mathematischen Berechnung eines kürzeren Ellipsen- Hauptachsenvektors
- Fig. 13 eine geometrische Darstellung des Tests auf Schnittpunkte innerhalb einem beschränkten Zylinder und
- Fig. 14 eine geometrische Veranschaulichung der mathematischen Berechnung von Schnittpunkten für den Fall einer horizontalen Fräskante für einen Zylinderfräser.
- Die folgenden Ausführungen beziehen sich beispielhaft auf eine Implementierung des Verfahrens gemäß der Erfindung für den Fall einer Fräsbearbeitung mit drei Achsen für den Fräsertyp eines Kugelfräsers.
- Die Grundlage des erfindungsgemäßen Verfahrens bilden in x- und y-Richtung gleichabständige, zur vertikalen z-Achse parallele Geraden. Dabei sind vorzugsweise nur solche Geraden zugelassen, deren punktförmige orthogonale Projektionen in die xy-Ebene innerhalb eines (noch näher zu bestimmenden) achsparallelen Rechteckes zu liegen kommt. Die Geradenschar modelliert dabei einen in x- und y-Richtung diskretisierten Werkstückrohling, welcher in positive und negative z-Richtung unendlich verlängert wurde. Die Darstellung gemäß Fig. 1 zeigt eine zweidimensionale Darstellung einer solchen uniformen Geradenschar mit umschließendem Rechteck B in einer Draufsicht parallel zu den Geraden für eine beispielhafte Fräsbahn. Der Betrachter blickt gewissermaßen in z-Richtung. Die Geraden sind durch Kreise oder Kreuze gekennzeichnet. Ein Kugelfräser F ist durch einen großen Kreis angedeutet.
- Zusätzlich zu der Geradenschar befinden sich die Fräspunkte FP, die durch im Vergleich zu den Geraden größere und im Vergleich zum Fräser F kleinere Kreise gekennzeichnet sind, und damit auch eine resultierende Fräsbahn FB als linearinterpolierender Polygonzug im dreidimensionalen Raum. Es sei an dieser Stelle bemerkt, dass grundsätzlich keine räumliche Beziehung zwischen dem die Geradenschar definierenden Rechteck und den Fräspunkten zu existieren braucht. Üblicherweise wird jedoch das Rechteck B unter Verwendung der Fräsdaten bestimmt.
- Beim realen Fräsvorgang bewegt sich der Fräser F gemäß der programmierten Fräsermittelpunktsbahn (Fräsbahn FB) fort. Dabei entfernt der Fräser Material des Rohlings. Als Endergebnis des Bearbeitungsvorgangs bleibt letztendlich das zu fertigende Werkstück als Restmaterial stehen. Die Vorgehensweise des erfindungsgemäßen Verfahrens wurde an diesen Vorgang angelehnt. Auch hier bewegt sich der virtuelle Fräser F gemäß der jeweiligen Fräsbahn FB fort. Dabei schneidet er den Rohling, welcher, wie oben erwähnt, als Geradenschar modelliert vorliegt. Das dabei überstrichene Volumen kann aus zwei Kugeln und einem in Fräsrichtung liegenden Zylinder nachgebildet werden - es gleicht der Form einer Pille.
- Dieses wird anhand der Darstellung in Fig. 2 deutlich, die im wesentlichen an Fig. 1 angelehnt ist. Im Moment soll von der Darstellung gemäß Fig. 2 nur der Bereich entlang der Fräskante FK interessieren. FP1 bezeichnet den Anfangspunkt und FP2 den Endpunkt einer Fräsbahn. Die Fräskante ist die FP1 mit FP2 verbindende Linie. Das durch den Fräser F im Anfangspunkt FP1 abgetragene Volumen ist durch einen Kreis angedeutet, ebenso im Endpunkt FP2. Das dazwischen überstrichene Volumen entlang der Linie von FP1 zu FP2 wird durch zwei Tangenten an die Umfänge beider Kreise um FP1 und FP2 angedeutet. Betrachtet man die von diesen Geometrien gebildete Gesamtfläche im dreidimensionalen Raum, so ergibt sich das überstrichene Volumen in der Form einer Pille, die aus zwei Kugeln und einem in Fräsrichtung liegenden Zylinder gebildet wird.
- Das vom Fräser F bezüglich einer Fräskante FK überstrichene Volumen (Pille) wird von den Geraden der Geradenschar jeweils keinmal, einmal oder zweimal geschnitten. Die Werkstückkontur wird nun im Falle des Dreiachsfräsens durch die unteren Schnittpunkte aller überstrichenen Volumen (Pillen) mit allen Geraden und den Initialisierungspunkten aller nichtgeschnittener Geraden diskret nachgebildet. Bei vom Fräser F bezüglich einer Kante überstrichene Volumen resultieren Schnittpunkte mit den Geraden. In Fig. 1 sind überstrichene Geraden mit Schnittpunkten als Punkte, solche ohne Schnittpunkt als Kreuze dargestellt.
- Solche Schnittpunkte sind Kandidaten für die nachzubildende Werkstückkontur. Die Schnittpunkte gehören im Fall der Bearbeitung mit drei Achsen genau dann zur letztendlichen Werkstückkontur, wenn jeweils keine weiteren Schnittpunkte mit kleinerer z-Koordinate auftreten.
- Für die Bestimmung der Schnittpunkte - dazu im einzelnen an späterer Stelle ausführlich - lässt sich der Durchmesser des verwendeten Werkzeugs (Kugelfräsers) festlegen. Ein weiterer Parameter <maxerror> ermöglicht eine interaktive Steuerung der Diskretisierungsfeinheit innerhalb des die Geradenschar einschränkenden Rechtecks B, d. h. die Auflösung der berechneten Werkstückkontur. Die dabei zu beachtende Einheit ist z. B. Millimeter. Die Anzahl der Quantisierungsschritte mxsize in x- bzw. mysize in y-Richtung werden jeweils gemäß
mxsize = ROUND(Rx/maxerror)
mysize = ROUND(Ry/maxerror)
berechnet, wobei Rx bzw. Ry die Längen der Rechteckseiten des umschließenden Rechtecks R (der sog. Boundingbox) und ROUND den Rundungsoperator darstellen. - Über einen weiteren Parameter <mr/or> kann vorgegeben werden, wie das die Geradenschar einschränkende Rechteck B bestimmt wird. Der Benutzer hat die Wahl zwischen 1 für mr (mit Radius) und 0 für or (ohne Radius). Wird or gewählt, d. h. die Abmessung des Fräsers F vernachlässigt, so bestimmt sich das Rechteck B als Boundingbox (minimale achsparallele quaderförmige Obermenge) der xy-Ebenenprojektion der gelesenen 3D- Daten. Wird mr gewählt, so wird zur Größe der or-Boundingbox in beiden Dimensionen noch der Radius verkleinernd und vergrößernd addiert. Bei in z-Richtung steil liegenden Werkstücken sei die Wahl mr empfohlen, da der Flächeninhalt der Boundingbox durch deren projektionsartige Bestimmung beliebig klein werden, d. h. der zu berechnende Ausschnitt beliebig schrumpfen kann.
- Über einen weiteren Parameter <wholematrix> kann die Anzahl der auszugebenden Datenpunkte definiert werden. Der Benutzer hat hierbei wiederum die Wahlmöglichkeit zwischen 1 und 0. Im ersten Fall werden alle berechneten z-Schnitte innerhalb des angegebenen begrenzenden Rechtecks und zusätzlich die Initialisierungen nichtgeschnittener Geraden ausgegeben. Andernfalls werden nur diejenigen berechneten Daten ausgegeben, welche auf der Werkstückkontur liegen. Dies ist dann tatsächlich nur eine Teilmenge (subset) aller Daten, da die das Werkstück beschreibenden 3D-Daten im allgemeinen nicht achsparallel sind, d. h. deren xy-Ebenenprojektion nicht mit dem umschließenden Boundingbox-Rechteck B übereinstimmt.
- Übertragen auf die Darstellung gemäß Fig. 1 lässt sich dieser Sachverhalt folgendermaßen beschreiben: die Wahl <whole- matrix> = 1 führt zur Ausgabe der Werte für alle Geraden der Geradenschar, also Kreuze und Punkte, während mit <whole- matrix> = 0 die Ausgabe der Kreuze (Geraden ohne Schnitt) unterdrückt wird.
- Die weitere Funktionsweise einer Applikation gemäß dem Verfahren der vorliegenden Erfindung ist schematisch in dem in Fig. 3 gezeigten Ablaufdiagramm anhand der Schritte 1 bis 9 skizziert.
- In Schritt 1 erfolgt lediglich eine Überprüfung des Aufrufs der Simulation im Hinblick auf oben genannte Parameter und Plausibilität. Im folgenden Ablaufschritt 2 werden die Eingangsdaten gelesen, also die Fräsdaten z. B. anhand eines NC- Teileprogramms.
- Der Schritt 3 betrifft nun das Berechnen der BoundingBox B. Wie bereits dargelegt, arbeitet das erfindungsgemäße Verfahren vorzugsweise mit Hilfe einer durch ein Rechteck B eingeschränkten vertikalen Geradenschar, welche eine Diskretisierung des Werkstückrohlings darstellt (vgl. Fig. 1). Dieses Rechteck B, d. h. die zweidimensionale BoundingBox, wird in Abhängigkeit von den 3D-Datenpunkten (Fräskopfpositionen) und dem Radius des (Kugel-)Fräsers F bestimmt.
- Es soll zunächst die Bestimmung der BoundingBox beschrieben werden, wie sie im Falle der Benutzerwahl <mr/or> = 0, d. h. ohne Berücksichtigung des Fräserradiuses, vonstatten geht. Dazu werden die extremalen Koordinaten xmin, xmax, ymin und ymax der Datenpunktmenge bestimmt. Die Kantenlängen des einschränkenden Rechtecks B sind dann bestimmt durch
xmax - xmin bzw. ymax - ymin.
- Zur endgültigen Festlegung des Rechtecks B muss noch dessen räumliche Lage angegeben werden. Da es in der xy-Ebene liegt, genügt dazu die Angabe eines seiner Eckpunkte. Hierfür wird beispielsweise der Rechteck-Eckpunkt mit minimalen x- bzw. y- Koordinaten gewählt.
- Zur späteren Änderung der BoundingBox in z-Richtung, welche beispielsweise zum Anpassung des Werkstückrohlings verwendet werden kann, kann in die Datenstruktur auch eine z-Komponente mit aufgenommen werden. Diese ist genauso wie die x- und y- Komponenten durch die Angabe der minimalen z-Koordinate und der Länge des 3D-Quaders in z-Richtung zmax - zmin festgelegt. Dieser, zusätzlich um die Radius-Abmessung in negative z- Richtung korrigierte Wert, kann ferner mit einem Sicherheitsaufmass versehen werden, um Rundungsfehlereinflüsse bei der Berechnung auszuschließen.
- Insgesamt liegt daher, im Falle der Wahl mr/or = 0, die die Geradenschar einschränkende BoundingBox B durch die Werte
B.x = xmin, B.wx = xmax - xmin
B.y = ymin, B.wy = ymax - ymin
B.z = zmin - 2.radius, B.wz = zmax - zmin + 10.radius
fest, wobei B.x, B.y bzw. B.z die Quaderecke mit minimalen Koordinaten und B.wx, B.wy bzw. B.wz die Längen der jeweiligen Quaderseiten bedeute. - Die BoundingBox B liegt nun tatsächlich in Form eines 3D- Quaders vor. Darüber hinaus ist dieser gemäß Definition parallel zu den Koordinatenachsen. Es sei nochmals erwähnt, dass für die Durchführung des erfindungsgemäßen Verfahrens die z-Koordinate grundsätzlich keine Rolle spielt und nur für die Möglichkeit einer nachträglichen Umdefinition der Boundingbox durch den Benutzer mit aufgenommen zu werden braucht.
- Ist vom Benutzer die Berücksichtigung des Fräserradiusses gewünscht (<mr/or> = 1), so müssen x- bzw. y-Koordinaten der BoundingBox B angepasst werden. Hierfür werden jeweils die Länge der BoundingBox-Kanten in positive und negative Richtung um den Radius vergrößert. Die Angaben der z-Koordinaten bleiben unverändert. Insgesamt wird demgemäß die BoundingBox B im Falle <mr/or> = 1 durch die Werte
B.x = xmin - radius, B.wx = xmax - xmin + 2.radius
B.y = ymin - radius, B.wy = ymax - ymin + 2.radius
B.z = zmin - 2.radius, B.wz = zmax - zmin + 10.radius
festgelegt. - Im Anschluss an die Berechnung der BoundingBox B findet die Bestimmung der zur Berechnung der z-Schnitte herangezogenen Geraden der Geradenschar statt. Dies geschieht mit Hilfe der Variablen mxsize und mysize, welche durch
mxsize = ROUND(B.wx/maxerror)
mysize = ROUND(B.wy/maxerror)
festgelegt werden. Mit anderen Worten werden durch mxsize und mysize die Diskretisierungsfeinheit des Werkstückrohlings in x- bzw. y-Richtung in Abhängigkeit von der berechneten BoundingBox und der vom Benutzer gewählten Auflösung definiert. - Die Ablaufschritte 4 bis 7 sind optional und betreffen eine Möglichkeit zur Interaktion, wodurch eine benutzerspezifische Änderung der BoundingBox ermöglicht wird. In Schritt 4 können die ermittelten Parameter zu Testzwecken ausgegeben werden. Die Schritte 5, 6 und 7 ermöglichen eine Festlegung einer selbstgewählten BoundingBox, indem in Schritt S eine Abfrage eines Änderungswunschs erfolgt. Falls ja (+) erfolgt in Schritt 6 die Eingabe der Dimensionen der neuen BoundingBox B und in Schritt 7 - genau wie in Schritt 4 - die Ausgabe der neuen Parameter. Im Anschluss an die benutzerdefinierte Änderung der BoundingBox werden die Variablen mxsize und mysize aktualisiert. Andernfalls (-) folgt ein Sprung direkt zu Schritt 8.
- Der Schritt 8 betrifft nun die eigentliche Berechnung der z- Schnitte, also der Schnittpunkte mit den Geraden der Geradenschar. Wie bereits voranstehend erläutert, ergibt sich die Werkstückkontur zumindest diskret durch Schneiden der, durch die BoundingBox B eingeschränkten, parallelen vertikalverlaufenden Geraden. Dies geschieht dadurch, dass der Fräser F (im vorliegenden Ausführungsbeispiel eine Kugel) gemäß der programmierten Fräsermittelpunktsbahn FB verfährt und dabei die Geraden schneidet. Betrachtet man eine einzelne Kante FK, d. h. die Verbindung zweier aufeinanderfolgender Fräspunkte FP1 und FP2, so entsteht durch das räumliche Verfahren der Fräskugel ein Volumen. Es wurde bereits erwähnt, dass dieses vorteilhaft durch zwei Kugeln und einen inliegenden Zylinder nachgebildet werden kann. Dabei befinden sich die Kugeln jeweils in den beiden betrachteten Fräspunkten, der Zylinder ist in Richtung der Fräskante orientiert, wodurch das überstrichene Volumen einer Pille ähnelt.
- Alternativ dazu kann das von der Fräskugel überstrichene Volumen auch mittels zweier Halbkugeln und eines inliegenden Zylinders modelliert werden. Da jedoch bei der Schnittberechnung implizit gegebene Funktionen parametrisch gegebenen Funktionen vorzuziehen sind, wird auf Vollkugeln zurückgegriffen. Darüber hinaus würde das Verwenden von Halbkugeln bedeuten, dass diese mit geänderter Orientierung für jede Fräskante erneut berechnet werden müssten, was sich negativ auf die erforderliche Rechenzeit auswirkt.
- Betrachtet man bezüglich dieser Fräskante FK die Schnitte aller zur Berechnung heranzuziehenden Geraden, so können hierbei jeweils die Fälle zwei Schnittpunkte, ein Schnittpunkt oder kein Schnittpunkt auftreten. Als neuer Werkstückkonturpunkt wird dann derjenige Schnittpunkt (sog. z-Schnitt) gewählt, welcher eine kleinere z-Koordinate besitzt als der für diese Gerade derzeit aktuelle z-Schnitt. Im Falle zweier Schnittpunkte kommt nur der Schnittpunkt mit kleinerer z- Koordinate in Betracht.
- Letztendlich ergibt sich die durch das erfindungsgemäße Verfahren diskret nachgebildete Werkstückkontur durch Betrachtung der Schnitte aller Kantenvolumen (Pillen) mit jeweils allen Geraden.
- Formal wird dieser Ablaufschritt 8 beispielhaft mittels der Funktionen InitializeZcoordinates, UpdateZcoordinates und EvalZcoordinates bzw. intcyl und SphereLineIntersection implementiert. Der Ablauf folgt dabei dem in Fig. 4 dargestellten Schema, wobei der grau hinterlegte Bereich sequentiell für alle Fräskanten ausgeführt wird.
- Zunächst wird durch die Funktion InitializeZcoordinates ein zweidimensionales Feld (Matrix) der Dimension (mxsize x mysize) angelegt und mit dem Wert der größten z-Koordinate der berechneten oder gewählten BoundingBox, d. h. mit dem Wert B.z + B.wz, initial belegt. Die Funktion UpdateZcoordinates umfasst die Behandlung aller Geraden bezüglich einer Fräskante, d. h. bezüglich einer einzelnen "Pille". Die Funktion UpdateZcoordinates ruft wiederum die Funktion EvalZcoordinates auf, welche die Berechnung ihrer Schnittpunkte (bzw. einen Schnittpunkttest) mit den beiden Kugeln und dem inliegenden Zylinder mittels der weiteren Funktionen intcyl und SphereLineIntersection übernimmt. Aufgrund der speziell vertikal verlaufenden Geraden kann die Funktion intcyl sehr effizient implementiert werden.
- Ergebnis dieses Teilschrittes (Schnitt aller Geraden mit einer Pille) ist die Werkstückkontur, welche durch die zugehörige Fräskante FK, d. h. durch das Fräsen von einem Punkt FP1 zu seinem Nachfolger FP2, entsteht. Die Koordinaten der jeweils aktuellen Gerade aktLine ergeben sich dabei mittels der Variablen
xstep = B.wx/mxsize
ystep = B.wy/mysize
gemäß der folgenden Berechnungsvorschrift:
aktLine_x = B.x + i.xstep, i = 0, . . ., mxsize,
aktLine_y = B.y + j.ystep, j = 0, . . ., mysize.
- Es ist damit gewährleistet, dass die BoundingBox B in ihrer gesamten Abmessung bzgl. der x- und y-Koordinate berücksichtigt wird. Insgesamt entsteht die diskret berechnete Werkstückkontur durch die Behandlung aller Fräskanten, d. h. durch die Behandlung aller Pillen.
- Die Schnittbildung von Gerade und Kugel wird mittels der Funktion SphereLineIntersection durchgeführt (dazu im einzelnen an späterer Stelle mehr). Es wird dazu zunächst das Residuum
res = radius.radius - (x - m.x).(x - m.x) - (y - m.y).(y - m.y)
auf Vorzeichen getestet, wobei radius den Radius der Fräskugel, x bzw. y die x- bzw. y-Koordinate der betrachteten Gerade und m.x bzw. m.y die Kugelmittelpunkt (Fräspunktkoordinaten) beschreiben. Liegt ein negatives Vorzeichen vor, ist kein Schnittpunkt von Gerade und Kugel vorhanden. Andernfalls wird der z-Schnitt
.zvalue = m.z - sqrt(res)
von der Funktion SphereLineIntersection zurückgeliefert. - Zur Schnittbildung von Gerade und Zylinder, welche sich ungleich schwieriger gestaltet, kann innerhalb der Funktion intcyl beispielsweise auf die Funktion "intersect a ray with a cylinder" aus Heckbert, P. S. (Hrsg.): Graphics Gems IV (The Graphic Gems Series), Harcourt Publishers Ltd, a subsidiary of Harcourt International Ltd., 1994, ISBN 0-12-336156-7. zurückgegriffen werden. Diese Funktion berechnet den potentiellen Schnittpunkt der aktuellen Gerade mit dem in Fräsbahnrichtung gelegenen Zylinder, wobei dieser zunächst als unendlich ausgedehnt zu betrachten ist. Um festzustellen, ob sich ein gefundener Schnittpunkt innerhalb des mittels der beiden Fräspunkte eingeschränkten Zylinderstücks befindet, schließt sich ein Normalentest an. Ist dessen Ergebnis positiv, kommt der gefundene Schnittpunkt als neuer z-Schnitt in Frage, d. h. seine z-Koordinate wird mit der zurzeit aktuellen verglichen eventuell ersetzt.
- Im Folgenden soll das eben kurz beschriebene Vorgehen detaillierter dargestellt werden. Zur Veranschaulichung dienen jeweils Fig. 5 und Fig. 6, wobei die Notation im Folgenden leicht von der vorangehenden abweicht. Es bezeichnen:
d, xg, λ Skalare (z. B. Länge eines Vektors)
a, r Vektoren
Q, Φ Matrizen
BR, BC Punkte, d. h. Elemente eines affinen Vektorraums
g1, h eindimensionale geometrische Gebilde (z. B. Geraden)
E1, K zweidimensionale geometrische Gebilde (z. B. Ebenen, Kugeln)
|d|, |r| (Euklid-)Norm eines Vektors (insbesondere Betrag eines Skalars). - Die Fig. 5 und Fig. 6 zeigen eine Veranschaulichung der geometrischen Gegebenheiten bei einem Schnitt zwischen einer Gerade und einem Zylinder, welche die folgenden mathematischen Zusammenhänge deutlich machen.
- Der gegebene Kreiszylinder ist dabei mittels des Punktes BC und der Richtung r (normiert) definiert, die im Beispiel vertikal verlaufende Gerade mittels des Punktes BR und der Richtung r (normiert).
- Zunächst wird unter Verwendung eines "quick elimination test" geprüft, ob sich die Objekte Zylinder und Gerade schneiden, d. h. ob überhaupt ein Schnittpunkt berechnet werden kann. Dazu wird gemäß
ein zu den Richtungen r und a orthogonaler Vektor d berechnet, wobei x das Kreuzprodukt von Vektoren bezeichne. Ist nun der Abstand der beiden i. a. windschiefen, durch r bzw. a definierten Geraden größer als der Radius des Zylinders, fällt der Eliminationstest negativ aus - Gerade und Zylinder schneiden sich nicht. - Andernfalls existieren zwei (nicht notwendigerweise verschiedene) Schnittpunkte Hin bzw. Hout, die symmetrisch zum Punkt P liegen (vgl. Fig. 6 mit Hin = H1, Hout, = H2). Diese genügen den Formeln
Hin = BR + tinr, Hout = BR + toutr,
wobei die Parameter tin und tout durch
tin = t - s, tout = t + s
gegeben sind. Für die Parameter r und s wiederum lassen sich die Beziehungen
bzw.
herleiten. Die zweite Beziehung folgt gemäß der Pythagoräischen Relation zwischen k, d und r (vgl. Fig. 6) und der Beobachtung
sr.o = ± k.
- Für den Fall, dass die Gerade parallel zum Zylinder verläuft, d. h. d in obiger Form nicht berechnet werden kann, muss eine vom bisher Beschriebenen abweichende Herleitung der "Schnittpunkte" herangezogen werden. Dies ist jedoch für die das erfindungsgemäße Verfahren nicht von Belang und wird daher nicht weiter ausgeführt.
- Schließlich muss nach der Berechnung des Schnittpunkts mit kleinerer z-Koordinate festgestellt werden, ob dieser tatsächlich innerhalb des zu betrachtenden endlichen Zylinders liegt. Das dabei relevante Zylinderstück ist durch die zwei in den Fräspunkten liegenden zur Fräskante orthogonalen Begrenzungsebenen gegeben. Dies wird vom Prinzip in der Darstellung gemäß Fig. 7 verdeutlicht, wo die Vorgehensweise für einen Normalentest auf einen inliegenden Schnittpunkt Hin gezeigt ist.
- Dazu wird zunächst der Vektor Hin-P1 mit dem Fräskantenvektor P2-P1 skalar multipliziert. Ist das Ergebnis negativ, zeigt Hin-P1 nicht in Richtung P2-P1, d. h. der Schnittpunkt Hin liegt nicht im relevanten Zylinderstück. Andernfalls kann etwa der Vektor Hin-P2 mit dem Vektor P1-P2 skalar multipliziert und auf Vorzeichen getestet werden. Ist dieses positiv, so liegt Hin-P2 in Richtung P1-P2 und insgesamt der Schnittpunkt Hin im relevanten Zylinderstück.
- Effizienter vergleicht man jedoch anstelle des letzten Schrittes die Länge der Projektion des Vektors Hin-P1 auf P2-P1 mit der Länge des Fräskantenvektors P2-P1. Ist die Projektion kürzer (oder besitzt die selbe Länge), liegt der Schnittpunkt Hin im relevanten Zylinderstück.
- Im Folgenden soll nun zum Schnitt von Gerade und Kreiszylinder die Richtigkeit der Berechnungsvorschrift
anhand der Darstellung gemäß Fig. 8 bewiesen werden. - Zu diesem Zweck wird die durch BC sowie die Vektoren a und d definierte Ebene mit der Geraden, welche durch BR sowie den Richtungsvektor r definiert ist, geschnitten. Der gesuchte Parameterwert t kann anschließend als Abstand des erhaltenen Schnittpunkts zum Punkt BR angegeben werden.
- Gegeben sei daher die Ebene, welche durch BC sowie den Richtungsvektoren a und d definiert ist. Diese hat die Form
E: X = BC + µa + νd, µ, ν ∈ ≙.
- Weiter sei die Gerade durch BR mit Richtungsvektor r gegeben durch
g: X = BR + λr, λ ∈ ≙.
- Zum Schnitt der beiden geometrischen Gebilde setzt man die sie bestimmenden Formeln gleich und erhält so
BR + λr = BC + µa + νd
oder dazu äquivalent
BR - BC = µa + νd - λr.
- Bildet man auf beiden Seiten der Gleichung das Kreuzprodukt mit a, erhält man
(BR - BC) × a = (µa + νd - λr) × a
bzw.
(BR - BC) × a = (µa) × a + (νd) × a -(λr) × a.
- Aufgrund der Definition des Kreuzproduktes gilt
(µa) × a = µ(a × a) = 0,
so dass
(BR - BC) × a = (νd) × a - (λr) × a
gilt. Werden nun die beiden Gleichungsseiten mit d multipliziert, so folgt
{(BR - BC) × a}.d = {(νd) × a}.d - {(λr) × a}.d.
- Da d zu der mittels d und a aufgespannten Ebene parallel liegt (komplanare Vektoren), gilt weiter
{(νd) × a}.d = ν{d × a}.d = 0
und damit
{(BR - BC) × a}.d = - {(λr) × a}.d = - λ(r × a).d.
- Teilt man beide Gleichungsseiten durch |r × a|, ergibt sich
- Der Schnittpunkt P der angegebenen Ebene mit der Geraden ergibt sich demnach durch Einsetzen des berechneten λ-Wertes in die Geradengleichung
- Letztendlich errechnet sich t als Abstand zwischen P und BR zu
wobei bei der letzten Umformung zu beachten ist, dass BR - BC, a und d ein Linkssystem bilden. - Zur Bestimmung des Abstandes windschiefer Geraden lässt sich folgendes ausführen. Gegeben seien zwei windschiefe Geraden g1 und g2 mit den Aufpunkten BR bzw. BC und den Richtungsvektoren r bzw. a, d. h.
g1: X = BR + λr, g2: X = BC + µa, λ, µ ∈ ≙.
- Es existiert dann genau eine Gerade h, welche die Geraden g1 und g2 orthogonal schneidet. Den Abstand d der beiden Schnittpunkte bezeichnet man als Abstand der windschiefen Geraden g1 und g2.
- Zur Berechnung von d definiert man beispielsweise zwei Ebenen E1 und E2, wobei E1 die Gerade g1, E2 die Gerade g2 beinhaltet. Steht zusätzlich der Richtungsvektor von h normal zu den Ebenen, sind diese eindeutig festgelegt (vgl. die Darstellung in Fig. 8).
- Aufgrund der Definition für eingeschlossene Winkel gilt dann (vgl. die Darstellung in Fig. 9)
- Mittels der Beziehung für rechtwinklige Dreiecke
erhält man (d ist normiert)
und damit insgesamt
d = (BR - BC).d|.
- Analog dazu lässt sich ein Schnitt von Gerade und Kugel vergleichsweise einfach bestimmen. Gegeben seien die Gerade g vermöge
und die Kugel K vermöge
K: (x - xm)2 + (y - ym)2 + (z - zm)2 = r2
gegeben. - Zum Schnitt der beiden geometrischen Gebilde setzt man etwa die Geraden- in die Kugelgleichung ein. Dies ergibt
(xg - xm)2 + (yg - ym)2 + (t - zm)2 = r2
oder dazu äquivalent
- Die bisher beschriebene Vorgehensweise des erfindungsgemäßen Verfahrens, wobei einzelne Fräservolumina (Pillen) bezüglich aller zur Verfügung stehenden Geraden auf Schnittbildung getestet werden, kann im Hinblick auf das Laufzeitverhalten wesentlich verbessert werden. Insbesondere dann, wenn die Abmessung des Fräsers F im Vergleich zur berechneten oder gewählten BoundingBox B klein ausfällt, existieren etliche Geraden, welche beim Schnitttest bezüglich einer derzeit aktuellen Pille ein negatives Resultat liefern. Das Verfahren arbeitet daher wesentlich effizienter, wenn die Menge der zu testenden Geraden deutlich eingeschränkt wird.
- Dies kann mittels lokaler BoundingBoxen Bn und somit mittels lokaler z-Schnitt-Updates realisiert werden. Dieses vorteilhafte Vorgehen soll im Folgenden anhand der bereits vorangehend beschriebenen Fig. 2 näher erläutert werden.
- Zur Berechnung der Schnittpunkte zwischen den Geraden und dem vom Fräser F bzgl. der aktuellen Fräskante FK überstrichenen Volumen (Pille) müssen nicht alle Geraden herangezogen werden. Es genügt die Betrachtung derjenigen Geraden, deren xy- Koordinaten innerhalb der xy-Projektion der Pillen- BoundingBox liegen.
- Diese Geraden, welche in Fig. 2 durch Punkte gekennzeichnet sind, müssen notwendigerweise xy-Koordinaten besitzen, die im Intervall [lx, ux] × [ly, uy] liegen, wobei die angegebenen Variablen durch
lx = MIN(p1.x, p2.x) - radius
ux = MAX(p1.x, p2.x) + radius
ly = MIN(p1.y, p2.y) - radius
uy = MAX(p1.y, p2.y) + radius
definiert seien. Die zur Selektion einzelner Geraden notwendigen Indices berechnen sich dann aus gemäß
li = (int)ROUND((lx - B.x)/B.wx.mxsize)
ui = (int)ROUND((ux - B.x)/B.wx.mxsize)
lj = (int)ROUND((ly - B.y)/B.wy.mysize)
uj = (int)ROUND((uy - B.y)/B.wy.mysize). - Da, wie in der Fig. 2 zu erkennen ist, die BoundingBox des Pillenvolumens die BoundingBox der Geraden überragen kann, greift der Algorithmus lediglich auf x- bzw. y-Werte im Intervall
[MAX(0, li), MIN(mxsize, ui)] bzw.
[MAX (0, lj), MIN (mysize, uj)]
zu. - Eine weitere Optimierungsvariante stellt die Vorgehensweise dar, für die einzelnen Teilvolumina Kugel, Zylinder und Kugel separate BoundingBoxen Bn zu berechnen. Davon kann jedoch abgesehen werden, wenn große Fräserabmessungen kleinen Fräspunktabständen gegenüberstehen.
- Im folgenden wird noch eine veränderte Vorgehensweise bei Zylinderschnittberechnungen angegeben. Der zur Berechnung des Schnittpunktes zwischen Gerade und Zylinder verwendete Algorithmus "intersect a ray with a cylinder" aus Heckbert, P. S. ist für Schnitte von Zylindern in allgemeiner räumlicher Lage mit Geraden in allgemeiner räumlicher Lage formuliert.
- Im Falle des erfindungsgemäßen Verfahrens liegt jedoch eine spezielle Situation in dem Sinne vor, dass zwar die Zylinder beliebig im Raum angeordnet sein können, die Geraden jedoch immer parallel zur z-Achse vorliegen. Diese Tatsache führt insbesondere bei den dort beschriebenen Quellvariablen raybase und raycos der Funktion intcyl zu Vereinfachungen und damit durch schnellere Skalarproduktbildungen zu geringeren Laufzeiten des erfindungsgemäßen Verfahrens.
- Eine weitere Verbesserung der Laufzeit kann erreicht werden, wenn bei vertikal verlaufender Fräskante, eine Schnittberechnung des Zylinders mit den Geraden nicht durchgeführt wird. Dieses ergibt sich aus der Tatsache, dass der minimale z- Schnitt der Geraden entweder unverändert bleibt (wenn die Gerade den Zylinder nicht schneidet) oder dieser sich bereits durch die zunächst getesteten im Fräskantenanfangspunkt und -endpunkt gelegenen Kugeln ergibt. Falls bekannt ist, welche der beiden Kugeln sich in z-Richtung tieferliegend befindet, genügt es, diese zu testen.
- Im Folgenden wird noch eine mögliche veränderte Vorgehensweise bei Schnittbildungsvolumina dargestellt. Wie bereits weiter oben erläutert, werden die z-Schnitte kantenorientiert berechnet. Dabei wird das bezüglich jeder Fräskante überstrichene Volumen auf Schnitte mit den zur Verfügung stehenden Geraden getestet. Dieser Test beinhaltet pro Fräskante, neben der bereits im einzelnen beschriebenen Zylinderschnittprüfung, die Schnittbildung der Geraden mit Kugeln im Anfangs- und Endpunkt FP1, FP2 der Fräskante FK. Ein derartiges Vorgehen impliziert jedoch, dass bei der Behandlung der nachfolgenden Fräskante ein redundanter Kugel-Geraden-Test stattfindet, da die Kugel im Endpunkt der zuvor behandelten Kante mit der Anfangspunktkugel der nachfolgenden Kante übereinstimmt. Stellt man sich das überstrichene Volumen jeweils als Kugel- Zylinder-Paar vor, kann die Schnittpunktberechnung annähernd der Hälfte der Kugeln unterbleiben.
- Neben dem exemplarischen Fall eines Kugelfräsers sind selbstverständlich auch weitere Arten von Fräsern mit dem erfindungsgemäßen Verfahren simulierbar. Bei realen Fräsprozessen sind nämlich weitere Fräsertypen wie beispielsweise Schaftfräser (mit und ohne Eckenverrundung), Winkelkopffräser (mit/ohne Eckenverrundung), Planfräser, Scheibenfräser und Kegelstumpffräser vorstellbar.
- Im Folgenden soll für ein zweites Ausführungsbeispiel auf die Verwendung eines zylindrischen Fräsers eingegangen werden. Dazu wird zunächst das vom Fräser-Zylinder im Verlaufe des Fräsvorgangs überstrichene Volumen (in diesem Fall bezeichnet als sog. sweep-Volumen) analytisch formuliert und mit einer vertikalen Geradenschar geschnitten. Dabei wird nicht die gesamte Fräsbahn, sondern diese satzweise betrachtet (z. B. bei einer durch ein NC-Teileprogramm mit mehreren Datensätzen repräsentierten Fräsbahn). Demnach ist das vom Fräser bezüglich eines Linearsatzes (Fräskante) überstrichene Volumen formal nachzubilden. Da bei der Dreiachsbearbeitung die z- Achse Werkzeugzustellrichtung ist, genügt darüber hinaus die Betrachtung der Volumenunterseite.
- Letztendlich sind somit erstens die Schnittpunkte der Geraden mit den Unterseiten der Fräser-Zylinder in den Punkten P1 und P2 (Kreisscheiben) zu berechnen (vgl. Fig. 10). Durch das im allgemeinen nichthorizontale Verschieben der Unterseite des Fräser-Zylinders in P1 in Richtung P1P2 entsteht ferner ein elliptischer Zylinder (in Fig. 10 dunkel unterlegt dargestellt), welcher gleichwohl mit den Geraden geschnitten werden muss.
- Hierbei sind die jeweils unteren Schnittpunkte Hu zu berechnen, wobei nur diejenigen Schnittpunkte relevant sind, welche räumlich zwischen den zur xy-Ebene parallelen Ebenen durch die Punkte P1 bzw. P2 liegen (durch parallele Ebenen beschränkter (endlicher) elliptischer Zylinder). Der Schnitt der Gerade mit den Kreisscheiben kann nicht vernachlässigt werden. Falls nämlich der elliptische Zylinder sowohl unterhalb als auch oberhalb einer Kreisscheibe geschnitten wird, liegt der untere nicht im Relevanzbereich, der obere besitzt aber eine zu große z-Koordinate. In diesem Fall müsste genau der Schnittpunkt von Gerade und Kreisscheibe weiterverarbeitet werden.
- Die Schnittbildung von Geraden und Kreisscheiben gestaltet sich dabei als unkritisch (vgl. dazu die voranstehenden ausführlichen Informationen). Hierzu ist lediglich zu klären, ob der Aufpunkt der Gerade jeweils innerhalb der in die xy-Ebene projizierten Kreisscheiben liegt. Ist dies der Fall, so ergibt sich die Schnittpunkt-z-Koordinate als z-Koordinate des Punkts P1 bzw. P2, je nachdem, welche Kreisscheibe betrachtet wurde.
- Aufwendiger und numerisch weniger stabil ist die Schnittbildung der Geraden mit dem elliptischen Zylinder. Hierzu genügt es nicht, lediglich Punktlokations-Fragen zu beantworten - die Koordinaten der Schnittpunkte müssen tatsächlich berechnet werden. Zur Lösung dieses Teilproblems werden die Randflächen des elliptischen Zylinders als Nullstellenmenge einer impliziten Funktion, genauer als Quadrik, dargestellt. Unter einer Quadrik (quadratische Form) versteht man eine Vektormenge, deren Elemente x dem funktionalen Zusammenhang
xTAz + 2xTb + c = U
mit einer symmetrischen Matrix A und Vektoren b und c genügen. Die Schnittpunkte ergeben sich dann durch Einsetzen der etwa in Parameterform vorliegenden Geraden sowie durch Lösen des sich ergebenden Gleichungssystems 2. Ordnung. - Prinzipiell können zur Berechnung der Schnittpunkte zwei unterschiedliche Wege eingeschlagen werden: entweder man führt die Berechnungen im Standardkoordinatensystem durch oder man berechnet die Schnittpunkte in einem neuen, vom Standardkoordinatensystem unabhängigen, Koordinatensystem.
- Im ersten Fall (Ansatz 1), d. h. bei einer Berechnung im Standardkoordinatensystem, sind der elliptische Zylinder und die Gerade bezüglich des Standardkoordinatensystems darzustellen (d. h. Standardbasis, Ursprung im Nullpunkt, vgl. Koordinatensystem (O, e1, e2, e3) in Fig. 11, wo in Anlehnung an die Darstellung in Fig. 10 wieder der elliptische Zylinder gezeigt ist mit unterem Schnittpunkt Hu und oberem Schnittpunkt Ho). Die Quadrik des elliptischen Zylinders ist jedoch a priori nicht bekannt und muss vorab berechnet werden.
- Im anderen Fall (Ansatz 2) werden elliptischer Zylinder und Gerade bezüglich des neuen Koordinatensystems dargestellt und in diesem die Schnittpunktberechnung vorgenommen. Das Koordinatensystem wählt man vorzugsweise so aus, dass die Basis des Koordinatensystems mit den normierten Hauptachsen der den elliptischen Zylinder erzeugenden Ellipse sowie einem dazu orthogonalen normierten Vektor (in Richtung P1P2) übereinstimmt. Dann nämlich besitzt der elliptische Zylinder bezüglich dieses Koordinatensystems Normalform, d. h. gemischte Terme fehlen in seiner impliziten Darstellung ("Hauptachsentransformation", vgl. in Fig. 11 das Koordinatensystem [P1, ≙, ≙, ≙], wobei mit ≙, ≙ bzw. ≙ jeweils die normierten Vektoren zu b, a bzw. n bezeichnet seien). Die Reihenfolge der Vektoren wurde beliebig festgelegt. Im Folgenden stellt der kürzere Hauptachsenvektor ≙ den ersten Basisvektor des neuen Koordinatensystems dar. Als Ursprung des Koordinatensystems sei der Punkt P1 gewählt werden. Nach Berechnung der Schnittpunkte sind diese offensichtlich nicht im Standardkoordinatensystem dargestellt und müssen in einem nachfolgenden Schritt in dieses rücktransformiert werden (Wechsel des Koordinatensystems).
- Nachfolgend sind die beiden Vorgehensweisen zur Schnittbildung zwischen Geraden und elliptischem Zylinder nochmals schematisch zusammengestellt. Der Bezug zum jeweiligen Koordinatensystem sei dabei vermöge hochgestellter Klammerausdrücke hergestellt: so bedeute etwa z(S) die z-Koordinate eines im Standardkoordinatensystem dargestellten Vektors.
-
- 1. Berechnung der formal impliziten Darstellung des elliptischen Zylinders im Standardkoordinatensystem;
- 2. Schnitt von Gerade (dargestellt im Standardkoordinatensystem) und elliptischem Zylinder, d. h. Einsetzen der Parameterdarstellung der Geraden in die Quadrikengleichung;
- 3. Auflösen der entstandenen quadratischen Gleichung nach dem Geradenparameter t = z(S);
- 4. Berechnen des Schnittpunkts mit minimaler z(S)-Koordinate durch Einsetzen der in c) berechneten Parameterwerte.
-
- 1. Berechnung der Darstellung der Geraden im Koordinatensystem [P1, ≙, ≙, ≙];
- 2. Schnitt von Gerade und elliptischem Zylinder (jeweils dargestellt im Koordinatensystem [P1, ≙, ≙, ≙]), d. h. Einsetzen der Parameterdarstellung der Geraden in die Quadrikengleichung;
- 3. Auflösen der entstandenen quadratischen Gleichung nach dem Geradenparameter;
- 4. Berechnen der beiden (nicht notwendigerweise verschiedenen) Schnittpunkte durch Einsetzen der in c2 berechneten Parameterwerte in die Geradengleichung;
- 5. Darstellung der in d2) berechneten Schnittpunkte im Standardkoordinatensystem (Rücktransformation) und Auswahl des Punktes mit minimaler z(S)-Koordinate.
- Im Folgenden werden die für die Lösung der oben beschriebenen Aufgabe notwendigen mathematischen Lösungsmöglichkeiten zusammengestellt. Es wird bei der Darstellung davon ausgegangen, dass eine vertikal verlaufende Gerade mit dem unteren sweep-Volumen bezüglich einer Fräskante geschnitten werden soll, d. h. mit Kreisscheiben und elliptischem Zylinder. Bei der beschriebenen Vorgehensweise kann eine Optimierung vorgenommen werden, indem lediglich die Schnittbildung mit dem Fräser-Zylinder in Punkt P1 (Fräskantenanfangspunkt) sowie dem sweep-Volumen, ohne Berücksichtigung des Fräser-Zylinders im Punkt P2 mit der Geraden betrachtet wird. Dies ist möglich, da der Fräser-Zylinder im Fräskantenendpunkt bei der Behandlung der folgenden Fräskante als Fräser-Zylinder im Fräskantenanfangspunkt herangezogen wird.
- Die vertikale Gerade liege dabei in der Form
vor, der Radius des Fräser-Zylinders werde mit r bezeichnet. - Gemäß dem voranstehend beschriebenen Vorgehen ist zunächst zu prüfen, ob die Gerade die durch die Unterseite des Fräser- Zylinders gegebene Kreisscheibe im Punkt P1 schneidet. Anschließend muss der untere Schnittpunkt der Geraden mit dem elliptischen Zylinder wahlweise gemäß Ansatz 1 oder Ansatz 2 berechnet werden. Mit Hilfe des bereits weiter oben beschriebenen "quick-elimination-test" können dabei diejenigen Geraden zuvor ausgeschlossen werden, welche den elliptischen Zylinder keinesfalls schneiden (vgl. weiter oben im Zusammenhang mit dem Kugelfräser).
- Schneidet die Gerade den im Punkt P1 befindlichen Fräser- Zylinder, bedeutet dies aufgrund der vertikal verlaufenden Gerade, dass diese die kreisscheibenförmige Unterseite des Fräser-Zylinders schneidet. Der sich ergebende z-Schnittkoordinate stimmt dann mit der z-Koordinate des Punktes P1 überein. Letztendlich muss daher lediglich geprüft werden, ob der Aufpunkt der Gerade innerhalb der Kreisscheibenprojektion in die xy-Ebene liegt. Formal ergibt sich damit die Test- Bedingung
wobei xm bzw. ym die x- bzw. y-Koordinate des Kreisscheibenmittelpunktes P1 bezeichnen. - Beim Schnitt von Gerade und elliptischem Zylinder sind die Fälle horizontal verlaufende und nichthorizontal verlaufende Fräskante unterschiedlich zu behandeln. Im horizontalen Fall besitzt die kürzere Halbachse b der erzeugenden Ellipse (vgl. Fig. 11) die Länge Null, wodurch die Ellipse zu einer Strecke und der elliptische Zylinder zu einem Rechteck degeneriert. Zunächst soll jedoch auf den Fall nichthorizontal verlaufender Fräskante eingegangen werden.
- Berechnung des neuen Koordinatensystems [P1, ≙, ≙, ≙]:
Das zu berechnende Koordinatensystem habe seinen Ursprung in P1. Darüber hinaus seien die Koordinatensystem-Basisvektoren in Richtung der Hauptachsen der den Zylinder erzeugenden Ellipse bzw. in Richtung der orthogonal dazu verlaufenden Fräskante gelegen. Normiert man den Fräskantenvektor P1P2, ist bereits der Basisvektor ≙ des gesuchten Koordinatensystems gefunden. Wird darüber hinaus der längere Hauptachsenvektor a oder der kürzere Hauptachsenvektor b der Ellipse berechnet und normiert, erhält man einen weiteren Basisvektor des Systems. Der dritte Basisvektor ergibt sich dann durch Kreuzproduktbildung der zuvor berechneten Vektoren. Da die Hauptachsenvektoren der erzeugenden Ellipse a priori jedoch nicht bekannt sind, muss zumindest einer zunächst berechnet werden. Die nachfolgend beschriebene Varianten (i) berechnet den längeren Hauptachsenvektor a und daraus durch Kreuzproduktbildung mit P1P2 den kürzeren. Variante (ii) tut dies in umgekehrter Reihenfolge. - Die Variante (i) zeichnet sich dadurch aus, dass zunächst der längere Hauptachsenvektor a berechnet wird. Dazu wird die Projektion der Fräskante P1P2 in die xy-Ebene um 90 Grad in mathematisch negative Richtung gedreht. Dies ergibt bereits die Richtung aricht des längeren Hauptachsenvektors (der Betrag von a ist gleich dem Radius r des Fräser-Zylinders). Den Koordinatensystem-Basisvektor ≙ erhält man durch Normierung von aricht.
- Mittels der beiden berechneten Vektoren P1P2 und aricht lässt sich anschließend die Richtung der kürzeren Ellipsen- Hauptachse durch Kreuzproduktbildung angeben
bricht = aricht × P1P2,
wobei sich das Verschwinden der z-Koordinate von aricht performant bemerkbar macht. Den Basisvektor ≙ erhält man schließlich durch Normieren von bricht. - Im Gegensatz zu Variante (i) berechnet Variante (ii) zunächst den kürzeren Hauptachsenvektor b. Dabei wird davon ausgegangen, dass P1P2 nicht horizontal verläuft, d. h. der Vektor b nicht der Nullvektor ist. Die nachfolgende Abbildung stellt die Situation veranschaulichend dar.
- Die Berechnung von b erfolgt mittels der beiden Hilfspunkte S und R, welche zunächst berechnet werden müssen. Der Punkt S sei horizontal vom Punkt P1 in Richtung der xy-Ebenen- Projektion von P1P2 gelegen (vgl. Fig. 12). Formal errechnet sich S daher gemäß
wobei p die Projektion von P1P2 in die xy-Ebene bezeichne. Der Punkt R wiederum ergibt sich durch Projektion des Punktes S in diejenige Ebene durch den Punkt P1, zu welcher P1P2 orthogonal verläuft. Die Formel für R lautet daher
- Der Hauptachsenvektor b ergibt sich dann zu
b = R - P1,
der Koordinatensystem-Basisvektor ≙ durch Normieren von b. - Der längere Ellipsen-Hauptachsenvektor a berechnet sich dann durch Kreuzproduktbildung gemäß
a = P1P2 × b,
wodurch sich letztendlich der Koordinatensystem-Basisvektor ≙ durch Normieren von a ergibt. - Aufgrund der deutlich längeren Herleitung ist damit zu rechnen, dass sich die Berechnung des neuen Koordinatensystems gemäß Variante (ii) als weniger performant herausstellt.
- Zur Darstellung der Randpunktmenge des elliptischen Zylinders, d. h. seiner Quadrik, bietet sich die Verwendung von vierdimensionalen Koordinaten (homogenen Koordinaten) an. Allgemein besitzt eine Quadrik die Darstellung
mit einer symmetrischen Matrix A. - Verfolgt man den bereits weiter vorne beschriebenen Ansatz 1, d. h. die Schnittberechnung im Standardkoordinatensystem, ist es zweckmäßig, obige Gleichung zunächst für die Darstellung im Koordinatensystem des elliptischen Zylinders (vgl. Fig. 11) zu formulieren. Sie lautet dann
wobei die hochgestellten Ausdrücke (EZ) dabei die Bindung an das Koordinatensystem des elliptischen Zylinders herstellen. - Nach Konstruktion des Koordinatensystems [P1, ≙, ≙, ≙] besitzt der elliptische Zylinder in diesem System Normalgestalt, d. h. es gilt
- Wie bereits weiter oben erwähnt, muss zur Berechnung der Darstellung der impliziten Darstellung des elliptischen Zylinders, d. h. zur Darstellung der Punkte des elliptischen Zylinders im Standardkoordinatensystem, ein Wechel des Koordinatensystems vorgenommen werden. In diesem Zusammenhang soll im Folgenden kurz dargestellt werden, wie Punkte eines Koordinatensystems in einem zweiten Koordinatensystem dargestellt werden können. In nachfolgendem Beispiel sei der Punkt P bzgl. des Koordinatensystems 2 dargestellt. Zu berechnen ist seine Darstellung im Koordinatensystem 1. Der Bezug zu den jeweiligen Systemen wird durch hochgestellte Ziffern hergestellt. So bedeute etwa P(1) die homogene Darstellung des Punktes P im Koordinatensystem 1.
- Der Punkt P ist im Koordinatensystem 2 mittels homogener Koordinaten gegeben durch
- Ist man an der Darstellung des Punktes im Koordinatensystem 1 interessiert, muss ein Wechsel des Koordinatensystems vollzogen werden. Dies geschieht rechnerisch mittels einer Multiplikation der Transformationsmatrix mit dem Vektor P(2).
- Allgemein gilt
P(i) = Mi←j.P(j)
wobei Mi←j diejenige Transformation bedeute, welche die Darstellung eines Punktes im Koordinatensystem j in seine Darstellung im System i konvertiert. In dem Beispiel lautet obige Gleichung daher
P(1) = M1←2.P(2),
d. h. die Berechnung der Matrix M1←2 ist erforderlich. - Allgemein gilt
F = -1|i←j= Mj←i,
wobei F diejenige Transformation bedeute, welche die Basisvektoren des Koordinatensystems i auf die des Koordinatensystems j abbildet, dargestellt in Koordinaten des Systems i. - Angewandt auf das Beispiel gilt daher
da es sich bei der Transformation F lediglich um die Translation (t1, t2) handelt. Damit ergibt sich insgesamt
- Mittels des Zusammenhangs
X(EZ) = MEZ←S X(S)
ergibt sich dann für den elliptischen Zylinder unmittelbar
mit der symmetrischen Matrix
d. h. die gesuchte Darstellung des elliptischen Zylinders im Standardkoordinatensystem. - Schließlich besteht die noch zu leistende Arbeit in der Bestimmung der Matrix MEZ←S. Hierzu ruft man sich den formalen Zusammenhang
ins Gedächtnis, wobei F diejenige Abbildungsmatrix bedeute, die die Standardbasisvektoren in die Basisvektoren des Koordinatensystems EZ abbildet. Diese Abbildung setzt sich aus einer Rotation R mit nachfolgender Translation T um p1 (vgl. Fig. 11) zusammen. Insgesamt ergibt sich daher
wobei die (3 × 3)-Rotationsmatrix Φ nach Konstruktion die folgende Gestalt besitzt
und damit die Darstellung der Quadrik im Standardkoordinatensystem
- Abschließend sei erwähnt, dass ein Vorgehen gemäß dem Ansatz 2, d. h. der Schnittberechnung im Koordinatensystem des elliptischen Zylinders, mit der bereits in Normalgestalt vorliegenden Quadrik Q vonstatten geht. Da diese bereits vorliegt, ist an dieser Stelle kein Aufwand notwendig.
- Nach den bereits geleisteten Vorarbeiten beläuft sich die eigentliche Schnittpunktberechnung in den jeweiligen Koordinatensystemen lediglich noch auf das Lösen einer quadratischen Gleichung. Gemäß der beiden beschriebenen Ansätze kann zwischen der Schnittpunktberechnung im Standardkoordinatensystem und der im Koordinatensystem des elliptischen Zylinders gewählt werden.
- Der elliptische Zylinder besitzt im Standardkoordinatensystem die Form
die Gerade ist in der Form
gegeben. Setzt man die Geradengleichung in die Darstellung des elliptischen Zylinders ein, erhält man mit x = x (S)|g bzw. y = y (S)|g
- Der untere Schnittpunkt, d. h. derjenige mit kleinerer z(S)- Koordinate, kann dann zu
angegeben werden. - Zur Berechnung der Schnittpunkte im Koordinatensystem des elliptischen Zylinders muss zunächst die Gerade in dessen Koordinatensystem dargestellt werden. Der transformierte Aufpunkt liegt dann in der Gestalt
vor, für den transformierten Richtungsvektor der Geraden ergibt sich
so dass die Gerade insgesamt in der Form
vorliegt. Hierbei ist zu beachten, dass lediglich der Aufpunkt der Geraden und nicht deren Richtungsvektor zu translatiert wird. - Nach Einsetzen der transformierten Geradengleichung in die Darstellung (X(EZ))TQX(EZ) = 0 erhält man
- Mittels der Parameter µ+,-, welche sich (im Falle der Lösbarkeit) durch Lösen der quadratischen Gleichung ergeben, berechnet man die beiden Schnittpunkte
- Die Schnittpunkte liegen zum jetzigen Zeitpunkt lediglich im Koordinatensystem des elliptischen Zylinders vor. Es kann daher noch nicht entschieden werden, welcher der Schnittpunkte aufgrund seiner kleineren z(S)-Koordinate als unterer Schnittpunkt im Standardkoordinatensystem in Frage kommt. Die Rücktransformation von S (EZ)|- und S (EZ)|+ erfolgt wiederum mittels der Abbildungsmatrix F
- Nun kann einer der beiden Punkte aufgrund seiner größeren z(S)-Koordinate vernachlässigt werden.
- Der zuletzt berechnete untere Schnittpunkt liegt gemäß Ansatz 1 bzw. Ansatz 2 auf dem Rand des, aufgrund seiner impliziten Formulierung, unendlich ausgedehnten elliptischen Zylinders. Verfährt der Fräser-Zylinder vom Punkt P1 in Richtung P1P2 zum Punkt P2, sind jedoch nur diejenigen Schnittpunkte relevant, welche zwischen den Ebenen E1 und E2 liegen (vgl. Fig. 13).
- Dies kann nachfolgend allgemein mittels eines Normalentests geprüft werden. Dazu stellt man zunächst fest
wobei α den von P1S und der Projektion p eingeschlossene Winkel bedeute. Damit kann die folgende Relevanz-Bedingung
0 < P1S.P1P2 < |P1P2|2
abgeleitet werden. Die links stehende Ungleichung besagt hierbei, dass der Schnittpunkt oberhalb der unteren Ebene E1 liegt, die rechts stehende besagt, dass die Projektion des Schnittpunkts S auf die Strecke P1P2 kürzer als die Strecke P1P2 ausfällt. Insgesamt sichert dies, dass der Schnittpunkt innerhalb der Ebenen E1 und E2 liegt. - In unserem Fall sind jedoch die Ebenen E1 und E2 parallel zur xy-Ebene gelegen und das oben beschriebene allgemeine Vorgehen zum Normalentest kann wesentlich vereinfacht werden.
- Es ist hier lediglich zu prüfen, ob die z(S)-Koordinate des Schnittpunkts zwischen den z(S)-Koordinate der Punkte P1 und P2 liegt. Formuliert für ein Vorgehen gemäß Ansatz 1, d. h. der Berechnung der Schnittpunkte im Standardkoordinatensystem, bedeutet dies
min(P1 (S)|z, P2 (S)|z) ≤ λ_ ≤ max(P1 (S)|z, P2 (S)|z).
- Bei horizontal verlaufender Fräskante kann die Randfläche des elliptischen Zylinders nicht als Quadrik dargestellt werden. Dies ist begründet durch die Tatsache, dass in diesem Fall die kürzere Hauptachse b zum Nullvektor und somit der elliptische Zylinder zu einem Rechteck degeneriert. Da jedoch in der Darstellung der Quadrik durch die Länge von b geteilt werden muss, führt dieses Vorgehen nicht zum gewünschten Ergebnis. Allerdings stimmt im Falle eines vorliegenden Schnittpunkts dessen z(S)-Koordinate mit der z(S)-Koordinate von P1 überein. Es muss daher lediglich geprüft werden, ob die jeweilige Gerade das sweep-Rechteck schneidet (vgl. Fig. 14).
- Dazu prüft man beispielsweise zunächst, ob der Aufpunkt der Geraden zwischen den begrenzenden Geraden g1 und g2 bzw. h1 und h2 liegt. Da letztere im allgemeinen nicht parallel zur x(S)- bzw. y(S)-Achse verlaufen, muss der oben beschriebene allgemeine Normalentest angewandt werden. Speziell kann dabei die z(S)-Koordinate vernachlässigt werden, da es sich um ein ebenes Problem handelt. Formal ist daher
0 ≤ P1S.P1P2 ≤ |P1P2|2
für das Geradenpaar g1 und g2 bzw.
0 ≤ Z1S.Z1Z2 ≤ |Z1Z2|2 = 4r2
für das Geradenpaar h1 und h2 zu prüfen. - Insgesamt schneidet dann die Gerade den "elliptischen Zylinder" und der Punkt ist für die Weiterverarbeitung relevant.
- Mit Hilfe des bereits im Zusammenhang mit dem Ausführungsbeispiel eines Kugelfräsers beschriebenen schnellen Ausschlusstests kann das Verfahren auch für den Fall eines Zylinderfräsers weiter optimiert werden. Hierbei werden alle vertikalen Geraden vernachlässigt, welche den elliptischen Zylinder keinesfalls schneiden. Dazu bettet man diesen in einen Kreiszylinder mit gleicher Hauptachse P1P2 und Radius r ein. Verfehlt die Gerade diesen Kreiszylinder, so kann kein Schnittpunkt mit dem elliptischen Zylinder vorliegen und weitere Rechenschritte entfallen.
- Dazu wird gemäß
ein zu r (Richtungsvektor der Geraden, vgl. Fig. 11) und P1P2 orthonormaler Vektor d berechnet. Ist nun der Abstand der beiden i. a. windschiefen, durch r bzw. P1P2 definierten Geraden
größer als der Radius r des Kreiszylinders, so schneiden sich Gerade und Zylinder nicht. - Zur Anpassung der beispielhaft für einen Kugelfräser und einen Zylinderfräser beschriebenen Vorgehensweise gemäß der vorliegenden Erfindung auf andere Typen von Fräsern wird jeweils das pro Fräskante überstrichene Fräsvolumen analog zu den beiden voranstehenden Ausführungsbeispielen aus adäquaten Teilvolumina zusammengesetzt und implizit-analytisch formuliert. Zur Schnittbildung mit den vertikal vorliegenden Geraden ist dann im allgemeinen ein Verfahren zur Nullstellenberechnung anzuwenden. Ein für allgemeinere Fräsertypen formuliertes erfindungsgemäßes Verfahren kann damit bezüglich des Laufzeitverhaltens in der Regel nicht mit der Variante Kugelfräser konkurrieren.
- Bei der Verallgemeinerung des Fräsprozesses mit drei auf fünf Achsen kommt zur räumlichen Lage des Fräsers noch dessen Orientierung hinzu. Ein Vorgehen, welches lediglich den Schnittpunkt mit minimaler z-Koordinate speichert, kann dann nicht mehr verfolgt werden. So muss beispielsweise bei einem in positiver z-Richtung orientierten Fräser der obere Schnittpunkt, d. h. der Schnittpunkt maximaler z-Koordinate, aufgezeichnet werden. Insbesondere beim Fräsen von Hinterschnitten oder beim seitlichen Taschenfräsen sind mehrere Schnittpunkte pro vertikal verlaufender Gerade typisch, so dass insgesamt eine allgemeinere Vorgehensweise in Betracht gezogen werden muss.
Claims (19)
1. Verfahren zur Nachbildung einer Werkstückkontur durch
Simulation einer Fräsbearbeitung, wobei ein Werkstückrohling
durch eine Geradenschar in einem dreidimensionalen Raum (x,
y, z) modelliert wird und alle Geraden parallel zu einer
Achse (z) verlaufen, wobei eine Werkstückkontur durch Schneiden
der Geradenschar mit einer virtuellen Fräskante (FK) gemäß
einer vorgegebenen Fräserbahn (FB) im dreidimensionalen Raum
anhand der dabei erhaltenen Schnittpunkte (H1, H2; Hin, Hout)
der Geraden aller überstrichenen Volumen ermittelt wird,
indem aus der so erhaltenen Menge von Schnittpunkten ein
Flächennetz gebildet wird, das die Werkstückkontur beschreibt.
2. Verfahren zur Nachbildung einer Werkstückkontur nach
Anspruch 1, wobei zur Simulation einer Fräsbearbeitung mit drei
Achsen bei solchen Geraden, die mehrere Schnittpunkte (H1,
H2; Hin, Hout) aufweisen, jeweils nur der Schnittpunkt mit der
kleinsten Koordinate in Richtung der Gerade zur Bildung des
Flächennetzes herangezogen wird.
3. Verfahren zur Nachbildung einer Werkstückkontur nach
Anspruch 1 oder 2, wobei bei Geraden ohne Schnittpunkt ein
Initialisierungswert zur Bildung des Flächennetzes herangezogen
wird.
4. Verfahren zur Nachbildung einer Werkstückkontur nach einem
der vorangehenden Ansprüche, wobei ein modellierter
Werkstückrohling in Richtung der übrigen beiden Dimensionen (x,
y)diskretisiert ist, indem die Geraden der Geradenschar in
Richtung der übrigen beiden Dimensionen (x, y) äquidistant
zueinander angeordnet sind.
5. Verfahren zur Nachbildung einer Werkstückkontur nach einem
der vorangehenden Ansprüche, wobei zur Modellierung des
Werkstückrohlings die Geradenschar durch ein dazu achsparalleles
Rechteck (B) begrenzt wird, dessen Kantenlängen und räumliche
Lage insbesondere unter Verwendung der extremalen Koordinaten
der vorgegebenen Fräserbahn im dreidimensionalen Raum
bestimmt wird, wobei alle Berechnungen innerhalb des durch
dieses Rechteck definierten Raums erfolgen.
6. Verfahren zur Nachbildung einer Werkstückkontur nach
Anspruch 5, wobei zur Berücksichtigung eines Fräserradius die
ermittelten Kantenlängen des begrenzenden achsparallelen
Rechtecks in positive und negative Richtung um den Radius des
realen Fräserkopfs (F) vergrößert werden.
7. Verfahren zur Nachbildung einer Werkstückkontur nach einem
der vorangehenden Ansprüche, wobei als Fräsbahn (FB) eine
Fräsermittelpunktsbahn dient, die insbesondere als
linearinterpolierender Polygonzug im dreidimensionalen Raum aus
vorgegeben Fräsdaten, insbesondere aus einem Teileprogramm oder
einem Interpolator, ermittelt wird.
8. Verfahren zur Nachbildung einer Werkstückkontur nach einem
der vorangehenden Ansprüche, wobei zur Simulation einer
Fräsbearbeitung mit einem Fräser ein bei der Bearbeitung
überstrichenes Volumen der Geradenschar aus geometrischen
Teilvolumen nachgebildet wird und Schnittpunkte (H1, H2; Hin, Hout)
mit der Geradenschar separat für jedes dieser Teilvolumen
ermittelt werden.
9. Verfahren zur Nachbildung einer Werkstückkontur nach einem
der vorangehenden Ansprüche, wobei zur Simulation einer
Fräsbearbeitung mit einem Kugelkopffräser ein bei der Bearbeitung
überstrichenes Volumen der Geradenschar aus Teilvolumen in
Form zweier Kugeln oder Halbkugeln nachgebildet wird, die
über ein weiteres Teilvolumen eines in Fräsrichtung liegenden
Zylinders miteinander verbunden sind, wobei die Kugeln oder
Halbkugeln sowie der verbindende Zylinder jeweils den
Fräserradius aufweisen und Schnittpunkte (H1, H2; Hin, Hout) mit der
Geradenschar separat für jedes dieser Teilvolumen ermittelt
werden.
10. Verfahren zur Nachbildung einer Werkstückkontur nach
Anspruch 9, wobei bei einer vertikal verlaufenden Fräsbahn (FB)
keine Ermittlung von Schnittpunkten der Geraden mit dem
Teilvolumen des Zylinders erfolgt.
11. Verfahren zur Nachbildung einer Werkstückkontur nach
Anspruch 8, wobei zur Simulation einer Fräsbearbeitung mit
einem zylindrischen Fräser nur die Volumenunterseite des
überstrichenen Volumens der Geradenschar berücksichtigt wird.
12. Verfahren zur Nachbildung einer Werkstückkontur nach
Anspruch 11, wobei eine Volumenunterseite des Fräser-Zylinders
als Kreisscheibe und ein Verschieben dieser Volumenunterseite
des Fräser-Zylinders durch einen durch zwei senkrecht zur
Geradenschar parallele Ebenen (E1, E2) beschränkten
elliptischen Zylinder nachgebildet wird, wobei Kreisscheiben und
diese verbindende elliptische Zylinder jeweils den
Fräserradius aufweisen und Schnittpunkte (Ho, Hu) mit der
Geradenschar separat für jedes dieser Teilvolumen ermittelt werden.
13. Verfahren zur Nachbildung einer Werkstückkontur nach
einem der vorangehenden Ansprüche, wobei der Abstand zwischen
den Geraden der Geradenschar je nach erforderlicher Auflösung
der Werkstückkontur interaktiv veränderbar ist.
14. Verfahren zur Nachbildung einer Werkstückkontur nach
einem der vorangehenden Ansprüche 5 bis 13, wobei die Menge der
zu berücksichtigenden Geraden innerhalb der durch das dazu
achsparallele Rechteck (B) begrenzten Geradenschar lokal
eingeschränkt wird, indem in diesem achsparallelen Rechteck für
Teilstücke der Fräsbahn jeweils separate lokale achsparallele
Unterrechtecke (Bn) gebildet werden, deren Abmessungen auf
das jeweilige zu überstreichende Fräservolumen beschränkt
werden, und jeweils lediglich die innerhalb eines
Unterrechtecks liegenden Geraden bei der Ermittlung relevanter
Schnittpunkte (H1, H2; Hin, Hout) berücksichtigt werden.
15. Verfahren zur Nachbildung einer Werkstückkontur nach
einem der vorangehenden Ansprüche 9, 10 oder 13, wobei zur
Simulation einer Fräsbearbeitung mit einem Kugelkopffräser die
Menge der zu berücksichtigenden Geraden innerhalb der durch
das dazu achsparallele Rechteck (B) begrenzten Geradenschar
lokal eingeschränkt wird, indem in diesem achsparallelen
Rechteck für jedes Teilvolumen Kugel, Halbkugel oder Zylinder
jeweils separate lokale achsparallele Unterrechtecke (Bn)
gebildet werden, deren Abmessungen auf das jeweilige
Teilvolumen beschränkt werden, und jeweils lediglich die innerhalb
eines Unterrechtecks liegenden Geraden bei der Ermittlung
relevanter Schnittpunkte (H1, H2; Hin, Hout) berücksichtigt
werden.
16. Verfahren zur Nachbildung einer Werkstückkontur nach
einem der vorangehenden Ansprüche 9, 10, 13 oder 15, wobei zur
Simulation einer Fräsbearbeitung mit einem Kugelkopffräser im
Fall zusammenhängender Fräsbearbeitungsteilabschnitte auf der
Fräsbahn für sich überlappende Teilvolumina nur einmal eine
Schnittpunktermittlung mit der Geradenschar erfolgt.
17. Verfahren zur Nachbildung einer Werkstückkontur nach
einem der vorangehenden Ansprüche, wobei das Flächennetz einer
Visualisierungseinrichtung zugeführt wird.
18. Vorrichtung zur Durchführung des Verfahrens nach einem
der vorangehenden Ansprüche, insbesondere geeignet
programmierter Simulationsrechner.
19. Computerprogrammprodukt, das direkt in den internen
Speicher eines digitalen Computers geladen werden kann und
Softwareabschnitte umfasst, mit denen die Verfahrensschritte nach
einem der vorangehenden Ansprüche 1 bis 17 durchgeführt
werden, wenn das Programmprodukt auf einem Computer ausgeführt
wird.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10144932.1A DE10144932B4 (de) | 2001-09-12 | 2001-09-12 | Visualisierung von Werkstücken bei der Simulation von Fräsprozessen |
US10/243,966 US7149668B2 (en) | 2001-09-12 | 2002-09-12 | Visualization of workpieces during simulation of milling processes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10144932.1A DE10144932B4 (de) | 2001-09-12 | 2001-09-12 | Visualisierung von Werkstücken bei der Simulation von Fräsprozessen |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10144932A1 true DE10144932A1 (de) | 2003-04-24 |
DE10144932B4 DE10144932B4 (de) | 2014-07-31 |
Family
ID=7698779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10144932.1A Expired - Fee Related DE10144932B4 (de) | 2001-09-12 | 2001-09-12 | Visualisierung von Werkstücken bei der Simulation von Fräsprozessen |
Country Status (2)
Country | Link |
---|---|
US (1) | US7149668B2 (de) |
DE (1) | DE10144932B4 (de) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7089160B2 (en) * | 2002-01-08 | 2006-08-08 | International Business Machines Corporation | Model for modifying drill data to predict hole locations in a panel structure |
US6985793B2 (en) * | 2003-01-31 | 2006-01-10 | Delphi Technologies, Inc. | Horizontally structured CAD/CAM coordinate system for manufacturing design |
KR101665705B1 (ko) * | 2006-12-07 | 2016-10-12 | 다이이찌 산쿄 가부시키가이샤 | 안정성이 개선된 필름 코팅 제제 |
EP2058717B1 (de) * | 2007-11-12 | 2011-07-20 | Siemens Aktiengesellschaft | Verfahren und Einrichtung zum Betrieb einer Werkzeugmaschine |
US20090132309A1 (en) * | 2007-11-21 | 2009-05-21 | International Business Machines Corporation | Generation of a three-dimensional virtual reality environment from a business process model |
JP4347386B2 (ja) * | 2008-01-23 | 2009-10-21 | ファナック株式会社 | 加工用ロボットプラグラムの作成装置 |
US20100023157A1 (en) * | 2008-07-28 | 2010-01-28 | Steven Michael Burgess | Methods and systems for fabricating a component |
US8677293B2 (en) * | 2008-12-22 | 2014-03-18 | Texas Instruments Incorporated | Feasibility of IC edits |
US8010328B2 (en) | 2009-05-19 | 2011-08-30 | Mitsubishi Electric Research Laboratories, Inc. | Method for simulating numerically controlled milling using adaptively sampled distance fields |
US8265909B2 (en) | 2009-05-19 | 2012-09-11 | Mitsubishi Electric Research Laboratories, Inc. | Method for reconstructing a distance field of a swept volume at a sample point |
US8923999B2 (en) * | 2011-09-07 | 2014-12-30 | Siemens Product Lifecycle Management Software Inc. | Volumetric cut planning |
EP2590143B1 (de) * | 2011-11-03 | 2018-10-24 | Dassault Systèmes | Simulation der Verarbeitung eines Werkstücks |
EP2590144B1 (de) | 2011-11-03 | 2018-10-24 | Dassault Systèmes | Entwurf eines modellierten, von Dexeln dargestellten Volumens |
US9122270B2 (en) | 2012-01-13 | 2015-09-01 | Mitsubishi Electric Research Laboratories, Inc. | Hybrid adaptively sampled distance fields |
US8935138B2 (en) * | 2012-03-28 | 2015-01-13 | Mitsubishi Electric Research Laboratories, Inc. | Analyzing volume removed during machining simulation |
ES2512940B8 (es) * | 2013-02-01 | 2016-12-19 | Universidad De Jaén | Método de validación automatizada de la fabricabilidad de diseños de objetos tridimensionales en base a su geometría |
EP2796954B1 (de) | 2013-04-23 | 2015-11-25 | Siemens Aktiengesellschaft | Numerische Steuerung mit Benachrichtigung eines CAM-Systems bei Änderung des Teileprogramms |
EP2796952B1 (de) | 2013-04-25 | 2016-01-20 | Siemens Aktiengesellschaft | Numerische Steuerung mit Möglichkeit zur Änderung des Teileprogramms |
JP6576354B2 (ja) * | 2014-01-23 | 2019-09-18 | パフォーマンス エスケー8 ホールディング インコーポレイテッド | ボード本体の製造のためのシステムと方法 |
US20150347650A1 (en) * | 2014-05-27 | 2015-12-03 | Livermore Software Technology Corporation | Dynamically-Positioned Search Domain Used In Numerical Simulation Of An Impact Event Between Two Objects |
EP3040797B1 (de) | 2014-12-31 | 2020-10-28 | Dassault Systèmes | Simulierung der Verarbeitung eines Werkstücks |
ES2651196B2 (es) * | 2016-07-22 | 2018-04-18 | Universidad De Jaén | Método de verificación automatizada de modificaciones en el plegado de piezas de chapa estampadas en frío |
US20190235473A1 (en) * | 2016-09-08 | 2019-08-01 | Mitsubishi Electric Corporation | Machining simulation display apparatus and machining simulation display method |
CN106844921B (zh) * | 2017-01-11 | 2020-05-19 | 福州福光水务科技有限公司 | 三维场景实现管线连接中间件模型与两端管线对接的方法 |
CN108829971B (zh) * | 2018-06-13 | 2022-03-15 | 上海爱堃智能***有限公司 | 模仁电加工漏拆电极的自动检测方法 |
TWI673620B (zh) | 2018-11-28 | 2019-10-01 | 財團法人工業技術研究院 | 利用動態位置誤差模擬切削方法 |
CN110096034B (zh) * | 2019-04-26 | 2020-06-09 | 华中科技大学 | 基于投影算法的三轴刀具轨迹曲面横向信息的重构方法 |
CN113297696B (zh) * | 2021-05-26 | 2023-05-26 | 西安理工大学 | 一种基于半解析法的球头铣刀静态铣削力的建模方法 |
CN114237150B (zh) * | 2021-12-17 | 2024-02-09 | 常熟理工学院 | 一种基于焊缝特征的机器人焊缝铣削路径控制方法及装置 |
CN116740317B (zh) * | 2023-08-14 | 2023-11-03 | 济南邦德激光股份有限公司 | 一种用于激光数控的三维仿真可视化展示方法及设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5710709A (en) * | 1993-08-19 | 1998-01-20 | Iowa State University Research Foundation, Inc. | NC milling simulation and dimensional verification via dexel representation |
JP3702496B2 (ja) * | 1995-07-10 | 2005-10-05 | 三菱電機株式会社 | 数値制御装置を用いた加工方法 |
US6120171A (en) * | 1996-06-14 | 2000-09-19 | Mohammad Salim Shaikh | Fully integrated machinable profile based parametric solid modeler |
AUPO206596A0 (en) * | 1996-08-30 | 1996-09-26 | Anca Pty Ltd | Tool grinding simulation system |
JP3687980B2 (ja) * | 1996-11-07 | 2005-08-24 | 株式会社ミツトヨ | Nc加工における測定プログラム作成及びこの測定プログラムを実行した加工管理 |
US20030204286A1 (en) * | 2002-04-26 | 2003-10-30 | Thomas Steven M. | Method for modeling complex, three dimensional tool paths through a workpiece |
-
2001
- 2001-09-12 DE DE10144932.1A patent/DE10144932B4/de not_active Expired - Fee Related
-
2002
- 2002-09-12 US US10/243,966 patent/US7149668B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE10144932B4 (de) | 2014-07-31 |
US7149668B2 (en) | 2006-12-12 |
US20030083773A1 (en) | 2003-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10144932B4 (de) | Visualisierung von Werkstücken bei der Simulation von Fräsprozessen | |
DE3338765C2 (de) | Schaltungsanordnung zur Darstellung von veränderbaren Gebilden | |
DE19781968T9 (de) | Werkzeugschleifsimulationssystem | |
EP0153556B1 (de) | Verfahren zum grafischen Darstellen eines Gebildes | |
EP1315058B1 (de) | Verfahren zur Darstellung, Untersuchung und Optimierung einer Oberflächengüte anhand von CNC-Programmdaten | |
DE3608438A1 (de) | Verfahren zum berechnen von freien gekruemmten flaechen mittels computergestuetztem design cad und computergestuetzter herstellung cam und numerischer steuerung nc | |
DE3825891A1 (de) | Verfahren zum entwurf einer gekruemmten flaeche | |
DE3403677C2 (de) | ||
DE112012005657T5 (de) | Computerprogrammprodukt und Verfahren zum Erzeugen und Simulieren eines Modells eines Objekts | |
DE3831428A1 (de) | Verfahren und vorrichtung zum erzeugen einer tiefenkarte | |
EP0372107A1 (de) | Verfahren zur Simulation der Bearbeitung eines Werkstückes und Darstellung desselben, sowie Vorrichtung zur Durchführung des Verfahrens | |
EP0151274B1 (de) | Verfahren zum Darstellen von Gegenstaenden | |
DE3327117C2 (de) | Verfahren zum zweidimensionalen Darstellen von dreidimensionalen Gebilden | |
DE102020124734A1 (de) | Simulationsgerät | |
DE10145515B4 (de) | Optimierung der Parametrierung einer Werkzeugmaschine | |
DE4208401A1 (de) | Datengenerator fuer dreidimensionale figuren | |
DE19704529B4 (de) | Verfahren zum automatischen Erzeugen und Handhaben einer Schatten-Geometrie und interaktive computergestützte Anzeigeeinrichtung | |
DE112014002120T5 (de) | System und Verfahren zur Durchführung von Operationen zum Rückgängigmachen und Wiederherstellen während der Bearbeitungssimulation | |
DE3709919C2 (de) | ||
EP1820160A1 (de) | Verfahren zur ableitung von technischen zeichnungen aus 3d modellen mit mindestens zwei kollidierenden 3d körpern | |
WO2006094637A1 (de) | Verfahren zum vergleich eines realen gegenstandes mit einem digitalen modell | |
DE10031042A1 (de) | Erzeugen einer 2D-Ansicht eines 3D-Modells | |
DE10242922A1 (de) | Rechnergestütztes Selektionsverfahren für einen Teil eines Volumens | |
DE102014009389B3 (de) | Prüfungsmodul für eine kombinierte Fräs-Dreh-Maschine | |
DE10154794A1 (de) | Synchronisierte Visualisierung von Teilszenen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R020 | Patent grant now final | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |