DE10144932B4 - Visualisierung von Werkstücken bei der Simulation von Fräsprozessen - Google Patents

Visualisierung von Werkstücken bei der Simulation von Fräsprozessen Download PDF

Info

Publication number
DE10144932B4
DE10144932B4 DE10144932.1A DE10144932A DE10144932B4 DE 10144932 B4 DE10144932 B4 DE 10144932B4 DE 10144932 A DE10144932 A DE 10144932A DE 10144932 B4 DE10144932 B4 DE 10144932B4
Authority
DE
Germany
Prior art keywords
milling
workpiece
volume
straight line
cutter
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.)
Expired - Fee Related
Application number
DE10144932.1A
Other languages
English (en)
Other versions
DE10144932A1 (de
Inventor
Dr. Sinn Christof
Dr. Schwanecke Ulrich
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE10144932.1A priority Critical patent/DE10144932B4/de
Priority to US10/243,966 priority patent/US7149668B2/en
Publication of DE10144932A1 publication Critical patent/DE10144932A1/de
Application granted granted Critical
Publication of DE10144932B4 publication Critical patent/DE10144932B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical 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/406Numerical 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/4069Simulating machining process on screen
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35148Geometric modeling for swept volume of moving solids
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37041Digitize, 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

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 und welches einer Visualisierungseinrichtung zugeführt wird, um die Oberflächenqualität des zu fertigenden Werkstücks zum Zwecke der Optimierung der Parametrisierung der die Fräsbearbeitung durchführenden Maschine zu analysieren, 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.

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.
  • Ein gattungsgemäßes Verfahren bzw. eine gattungsgemäße Vorrichtung sind als nächstliegender Stand der Technik aus der Druckschrift Inui, M.; Kakio, R.: Fast Visualization of NC Miling Result Using Graphics Acceleration Hardware; In: Proceedings of the 2000 IEEE International Conference on Robotics & Automation, San Francisco, Ca, April 2000, S. 3089 bis 3094, bekannt. Dort wird der Werkstückrohling durch Quader gebildet, die mit einem Fräservolumen geschnitten werden, welches sich durch die Bewegung eines Kugelkopffräsers auf einer Fräsbahn ergibt. Einzelne Teilstücke der Fräsbearbeitung lassen sich jeweils aus Zylindern oder Kugeln bilden, die den Radius des Kugelkopffräsers besitzen. Um die Genauigkeit der Simulation zu verbessern, kann der Querschnitt der Quader reduziert werden.
  • In dem Artikel Cychosz, J. M.; Waggenspack, Jr. W. N.: V.2 Intersect a Ray with a Cylinder; In: Graphics Gems IV, ACADEMIC PRESS, 1994, ISBN 0-12-336156-7, S. 356 bis 365, ist ein Verfahren beschrieben, mit dem Schnittpunkte eines Strahls mit einem Zylinder berechnet werden können. Ein deartiges Verfahren lässt sich für Computergrafiken nutzen.
  • Des Weiteren offenbart der Artikel Jerard, R. B.; Drysdale, R. L.; u. a.: Methods for Detecting Errors in Numerically Controlled Machining of Sculptured Surfaces. In: IEEE Computer Graphics & Applications, Vol. 9, Issue 1, 1989, S. 26–39, ein Verfahren zum Detektieren von Fehlern bei NC-Maschinenbearbeitungen. Zunächst wird die Oberfläche eines Objekts durch eine Menge von Punkten im dreidimensionalen Raum simuliert. Auf diese Punkte werden dann Vektoren aufgesetzt. Es werden dann Schnittpunkte des simulierten Werkzeugs mit den Vektoren bestimmt.
  • Die Aufgabe der vorliegenden Erfindung besteht somit darin, basierend auf initialen Fräsdaten ein Verfahren zu schaffen, welches eine einfache und 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 nach Anspruch 1 und 9 gelöst.
  • 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 die Simulation einer Fräsbearbeitung mit dem Kugelkopffräser gemäß dem Verfahren der vorliegenden Erfindung wird dazu 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 dem zylindrischen Fräser wird nur die Volumenunterseite des überstrichenen Volumens der Geradenschar berücksichtigt.
  • 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 die Kreisscheibe und der elliptische Zylinder jeweils den Fräserradius aufweisen.
  • 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:
  • 1 eine zweidimensionale Darstellung einer uniformen Geradenschar mit umschließendem Rechteck für eine beispielhafte Fräsbahn gemäß der Erfindung (Draufsicht),
  • 2 eine optimierte Schnittberechnung durch lokale Beschränkung der Geradenschar aufbauend auf 1,
  • 3 ein Ablaufdiagramm der einzelnen Teilschritte beim erfindungsgemäßen Verfahren,
  • 4 ein Ablaufdiagramm der einzelnen Teilschritte zur Bestimmung der Schnittpunkte in z-Richtung,
  • 5 eine Veranschaulichung der geometrischen Gegebenheiten bei einem Schnitt zwischen einer Gerade und einem Zylinder,
  • 6 eine Ergänzung zur 5,
  • 7 eine schematische Darstellung eines Normalentests auf einen inliegenden Schnittpunkt,
  • 8 und 9 geometrische Veranschaulichungen der mathematischen Berechnungen zur Schnittpunktermittlung bei einem Kugelfräser,
  • 10 eine geometrische Darstellung der Unterseite eines von einem Zylinderfräser überstrichenen Volumens (sweep-Volumen) bezüglich einer Fräskante
  • 11 eine geometrische Darstellung der Schnittpunktberechnung in verschiedenen Koordinatensystemen für einen Zylinderfräser,
  • 12 eine geometrische Veranschaulichung der mathematischen Berechnung eines kürzeren Ellipsen-Hauptachsenvektors
  • 13 eine geometrische Darstellung des Tests auf Schnittpunkte innerhalb einem beschränkten Zylinder und
  • 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äß 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 2 deutlich, die im wesentlichen an 1 angelehnt ist. Im Moment soll von der Darstellung gemäß 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 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äß 1 lässt sich dieser Sachverhalt folgendermaßen beschreiben: die Wahl <wholematrix>=1 führt zur Ausgabe der Werte für alle Geraden der Geradenschar, also Kreuze und Punkte, während mit <wholematrix>=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 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. 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-z min+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 5 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 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 5 und 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 5 und 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äß d = r × a / |r × a| ein zu den Richtungen r und a orthogonaler Vektor d berechnet, wobei × 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. 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 t und s wiederum lassen sich die Beziehungen
    Figure DE000010144932B4_0002
    herleiten. Die zweite Beziehung folgt gemäß der Pythagoräischen Relation zwischen k, d und r (vgl. 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äß 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
    Figure DE000010144932B4_0003
    anhand der Darstellung gemäß 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
    Figure DE000010144932B4_0004
  • Weiter sei die Gerade durch BR mit Richtungsvektor r gegeben durch
    Figure DE000010144932B4_0005
  • 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
    Figure DE000010144932B4_0006
  • Der Schnittpunkt P der angegebenen Ebene mit der Geraden ergibt sich demnach durch Einsetzen des berechneten λ-Wertes in die Geradengleichung
    Figure DE000010144932B4_0007
  • Letztendlich errechnet sich t als Abstand zwischen P und BR zu
    Figure DE000010144932B4_0008
    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.
  • Figure DE000010144932B4_0009
  • 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 8).
  • Aufgrund der Definition für eingeschlossene Winkel gilt dann (vgl. die Darstellung in 9)
    Figure DE000010144932B4_0010
  • Mittels der Beziehung für rechtwinklige Dreiecke
    Figure DE000010144932B4_0011
    erhält man (d ist normiert)
    Figure DE000010144932B4_0012
    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
    Figure DE000010144932B4_0013
    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
  • Figure DE000010144932B4_0014
  • 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 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 2 durch Punkte gekennzeichnet sind, müssen notwendigerweise xy-Koordinaten besitzen, die im Intervall [lx,ux] x [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 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. 10). Durch das im allgemeinen nichthorizontale Verschieben der Unterseite des Fräser-Zylinders in P1 in Richtung P1P2 entsteht ferner ein elliptischer Zylinder, 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 Geraden 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 xTAx + 2xTb + c = 0 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 11, wo in Anlehnung an die Darstellung in 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 11 das Koordinatensystem [P1, b ⁔, a ⁔, n ⁔], wobei mit b ⁔, a ⁔, bzw. n ⁔ 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 b ⁔ 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.
    • Ansatz 1 (Schnittberechnung im Standardkoordinatensystem):
    • a1) Berechnung der formal impliziten Darstellung des elliptischen Zylinders im Standardkoordinatensystem;
    • b1) Schnitt von Gerade (dargestellt im Standardkoordinatensystem) und elliptischem Zylinder, d. h. Einsetzen der Parameterdarstellung der Geraden in die Quadrikengleichung;
    • c1) Auflösen der entstandenen quadratischen Gleichung nach dem Geradenparameter t = z(S);
    • d1) Berechnen des Schnittpunkts mit minimaler z(S)-Koordinate durch Einsetzen der in c) berechneten Parameterwerte.
    • Ansatz 2 (Schnittberechnung im Koordinatensystem [P1, b ⁔,a ⁔,n ⁔]):
    • a2) Berechnung der Darstellung der Geraden im Koordinatensystem [P1, b ⁔, a ⁔, n ⁔];
    • b2) Schnitt von Gerade und elliptischem Zylinder (jeweils dargestellt im Koordinatensystem [P1, b ⁔,a ⁔,n ⁔]), d. h. Einsetzen der Parameterdarstellung der Geraden in die Quadrikengleichung;
    • c2) Auflösen der entstandenen quadratischen Gleichung nach dem Geradenparameter;
    • d2) Berechnen der beiden (nicht notwendigerweise verschiedenen) Schnittpunkte durch Einsetzen der in c2 berechneten Parameterwerte in die Geradengleichung;
    • e2) 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
    Figure DE000010144932B4_0015
    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).
  • Schnitt von Gerade und Kreisscheibe
  • 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 Sufpunkt der Gerade innerhalb der Kreisscheibenprojektion in die xy-Ebene liegt. Formal ergibt sich damit die Test-Bedingung
    Figure DE000010144932B4_0016
    wobei xm bzw. ym die x- bzw. y-Koordinate des Kreisscheibenmittelpunktes P1 bezeichne.
  • Schnitt von Gerade und elliptischem Zylinder
  • 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. 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.
  • Vorgehen bei nichthorizontal verlaufender Fräskante
  • Berechnung des neuen Koordinatensystems [P1, b ⁔,a ⁔,n ⁔]: 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 n ⁔ 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 Haupachsenvektoren 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.
  • Berechnung der Hauptachsen des Zylinders – Variante (i)
  • 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 Haupachsenvektors (der Betrag von a ist gleich dem Radius r des Fräser-Zylinders). Den Koordinatensystem-Basisvektor a ⁔ 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 b ⁔ erhält man schließlich durch Normieren von bricht.
  • Berechnung der Hauptachsen des Zylinders – Variante (ii)
  • 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. 12). Formal errechnet sich S daher gemäß S = P1 + r / |p|p, 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 R = S + [(P1 – S)·n ⁔]·n ⁔.
  • Der Hauptachsenvektor b ergibt sich dann zu b = R – P1, der Koordinatensystem-Basisvektor b ⁔ 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 a ⁔ 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.
  • Bestimmung der Quadrikdarstellung des elliptischen Zylinders
  • 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
    Figure DE000010144932B4_0017
    mit einer symmetrischen Matrix A.
  • Verfolgt man den bereits weiter vorne beschriebenen Ansatz 1, d. h. die Schnittberechnung im Standard-koordinatensystem, ist es zweckmäßig, obige Gleichung zunächst für die Darstellung im Koordinatensystem des elliptischen Zylinders (vgl. 11) zu formulieren. Sie lautet dann
    Figure DE000010144932B4_0018
    wobei die hochgestellten Ausdrücke (EZ) dabei die Bindung an das Koordinatensystem des elliptischen Zylinders herstellen.
  • Nach Konstruktion des Koordinatensystems [P1, b ⁔, a ⁔, n ⁔] besitzt der elliptische Zylinder in diesem System Normalgestalt, d. h. es gilt
    Figure DE000010144932B4_0019
  • 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
    Figure DE000010144932B4_0020
  • 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 = M –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
    Figure DE000010144932B4_0021
    da es sich bei der Transformation F lediglich um die Translation (t1, t2) handelt. Damit ergibt sich insgesamt
    Figure DE000010144932B4_0022
  • Mittels des Zusammenhangs X(EZ) = MEZ←SX(S) ergibt sich dann für den elliptischen Zylinder unmittelbar (x(EZ))TQX(EZ) = (MEZ←SX(S))TQMEZ←SX(S) = (X(S))TM T / EZ←SQMEZ←SX(S) = (X(S))TQ ~X(S) = 0 mit der symmetrischen Matrix Q ~ = M T / EZ←SQMEZ←S, 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 F = M –1 / EZ←S ⇔ F–1 = MEZ←S 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. 11) zusammen. Insgesamt ergibt sich daher
    Figure DE000010144932B4_0023
    wobei die (3×3)-Rotationsmatrix Φ nach Konstruktion die folgende Gestalt besitzt
    Figure DE000010144932B4_0024
    und damit die Darstellung der Quadrik im Standardkoordinatensystem
    Figure DE000010144932B4_0025
  • 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.
  • Berechnung des z-Schnittes mit kleinerer z-Koordinate
  • 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.
  • Schnittbildung im Koordinatensystem 1 (Ansatz 1)
  • Der elliptische Zylinder besitzt im Standardkoordinatensystem die Form
    Figure DE000010144932B4_0026
    die Gerade ist in der Form
    Figure DE000010144932B4_0027
    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 q ~33λ2 + 2(q ~13x + q ~23y + q ~34)λ + (q ~11x2 + 2q ~12xy + 2q ~14x + q ~22y2 + 2q ~24y + q ~44) = 0 und somit
    Figure DE000010144932B4_0028
  • Der untere Schnittpunkt, d. h. derjenige mit kleinerer z(S)-Koordinate, kann dann zu
    Figure DE000010144932B4_0029
    angegeben werden.
  • Schnittbildung im Koordinatensystem EZ (Ansatz 2)
  • 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
    Figure DE000010144932B4_0030
    vor, für den transformierten Richtungsvektor der Geraden ergibt sich
    Figure DE000010144932B4_0031
    so dass die Gerade insgesamt in der Form
    Figure DE000010144932B4_0032
    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
    Figure DE000010144932B4_0033
  • Mittels der Parameter μ+–, welche sich (im Falle der Lösbarkeit) durch Lösen der quadratischen Gleichung ergeben, berechnet man die beiden Schnittpunkte
    Figure DE000010144932B4_0034
  • 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
    Figure DE000010144932B4_0035
  • Nun kann einer der beiden Punkte aufgrund seiner größeren z(S)-Koordinate vernachlässigt werden.
  • Test auf Schnittpunktlage innerhalb des endlichen elliptischen Zylinders
  • 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. 13).
  • Dies kann nachfolgend allgemein mittels eines Normalentests geprüft werden. Dazu stellt man zunächst fest cosα = |P1S·P1P2| / |P1S|·|P1P2| = |p| / |P1S| ⇔ |p| = |P1S·P1P2| / |P1P2| ⇔ |P1S·P1P2| = |p|·|P1P2| < |P1P2|2, 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).
  • Vorgehen bei horizontal verlaufender Fräskante
  • 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. 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.
  • Quick-Elimination-Test
  • 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 Zyinder vorliegen und weitere Rechenschritte entfallen.
  • Dazu wird gemäß d = r × P1P2 / |r × P1P2| ein zu r (Richtungsvektor der Geraden, vgl. 11) und P1P2 orthonormaler Vektor d berechnet. Ist nun der Abstand der beiden i. a. windschiefen, durch r bzw. P1P2 definierten Geraden d = |((xg yg 0)T – P1)·d| 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 (15)

  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 und welches einer Visualisierungseinrichtung zugeführt wird, um die Oberflächenqualität des zu fertigenden Werkstücks zum Zwecke der Optimierung der Parametrisierung der die Fräsbearbeitung durchführenden Maschine zu analysieren, 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.
  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 vorhergehenden Ansprüche, wobei bei einer vertikal verlaufenden Fräsbahn (FB) keine Ermittlung von Schnittpunkten der Geraden mit dem Teilvolumen des Zylinders erfolgt.
  9. 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 und welches einer Visualisierungseinrichtung zugeführt wird, um die Oberflächenqualität des zu fertigenden Werkstücks zum Zwecke der Optimierung der Parametrisierung der die Fräsbearbeitung durchführenden Maschine zu analysieren, 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, wobei zur Simulation einer Fräsbearbeitung mit einem zylindrischen Fräser nur die Volumenunterseite des überstrichenen Volumens der Geradenschar berücksichtigt wird, und 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 die Kreisscheibe und der elliptische Zylinder jeweils den Fräserradius aufweisen.
  10. 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.
  11. Verfahren zur Nachbildung einer Werkstückkontur nach einem der vorangehenden Ansprüche 5 bis 10, 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.
  12. Verfahren zur Nachbildung einer Werkstückkontur nach einem der vorangehenden Ansprüche 1 bis 8 oder 10, 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.
  13. Verfahren zur Nachbildung einer Werkstückkontur nach einem der vorangehenden Ansprüche 1 bis 8, 10 oder 12, 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.
  14. Vorrichtung zur Durchführung des Verfahrens nach einem der vorangehenden Ansprüche, insbesondere geeignet programmierter Simulationsrechner.
  15. Computerprogrammprodukt mit einem Computerprogramm, 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 13 durchgeführt werden, wenn die Softwareabschnitte auf dem Computer ausgeführt werden.
DE10144932.1A 2001-09-12 2001-09-12 Visualisierung von Werkstücken bei der Simulation von Fräsprozessen Expired - Fee Related DE10144932B4 (de)

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 DE10144932A1 (de) 2003-04-24
DE10144932B4 true 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)

* Cited by examiner, † Cited by third party
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
US20090291138A1 (en) * 2006-12-07 2009-11-26 Daiichi Sankyo Company, Limited Film-coated preparation having improved stability
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
EP2590144B1 (de) 2011-11-03 2018-10-24 Dassault Systèmes Entwurf eines modellierten, von Dexeln dargestellten Volumens
EP2590143B1 (de) * 2011-11-03 2018-10-24 Dassault Systèmes Simulation der Verarbeitung eines Werkstücks
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
US10139814B2 (en) * 2014-01-23 2018-11-27 Performance Sk8 Holding Inc. System and method for manufacturing a board body
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)

* Cited by examiner, † Cited by third party
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

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
Choi,B.K., Kim,B.H.: Die-cavity pocketing via cut- ting simulation. In: Computer-Aided Design, Vol. 29, No.12, 1997, S.837-846; *
Choi,B.K., Kim,D.H., Jerard,R.B.: C-space approachto tool-path generation for die and mould machi- ning, In: Computer-Aided Design, Vol.29, No.9, 1997, S.657-669; *
Cychosz, J. M.; Waggenspack, Jr. W.N.: V.2 Intersect a Ray with a Cylinder; In : Graphics Gems IV, ACADEMIC PRESS, 1994, ISBN 0-12-336156-7, S.356 bis 365
Cychosz, J. M.; Waggenspack, Jr. W.N.: V.2 Intersect a Ray with a Cylinder; In : Graphics Gems IV, ACADEMIC PRESS, 1994, ISBN 0-12-336156-7, S.356 bis 365 *
Inui, M.; Kakio, R.: Fast Visualization of NC Milling Result Using Graphics Acceleration Hardware; In : Proceedings of the 2000 IEEE International Conference on Robotics & Automation, San Francisco, CA, April 2000, S.3089 bis 3094.
Inui, M.; Kakio, R.: Fast Visualization of NC Milling Result Using Graphics Acceleration Hardware; In : Proceedings of the 2000 IEEE International Conference on Robotics & Automation, San Francisco, CA, April 2000, S.3089 bis 3094. *
Jerard, R.B., Drysdale, R.L., u.a.: Methods for Detecting Erros in Numerically Controlled Mach- ining of Sculptured Surface. In: IEEE Computer Graphics und Applications, Vol.9, Issue 1, 1989, S. 26-39;
Jerard, R.B., Drysdale, R.L., u.a.: Methods for Detecting Erros in Numerically Controlled Mach- ining of Sculptured Surface. In: IEEE Computer Graphics und Applications, Vol.9, Issue 1, 1989, S. 26-39; *

Also Published As

Publication number Publication date
US7149668B2 (en) 2006-12-12
US20030083773A1 (en) 2003-05-01
DE10144932A1 (de) 2003-04-24

Similar Documents

Publication Publication Date Title
DE10144932B4 (de) Visualisierung von Werkstücken bei der Simulation von Fräsprozessen
EP0144585B1 (de) Verfahren zur perspektivischen Darstellung von veränderbaren Gebilden
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
DE112012005657T5 (de) Computerprogrammprodukt und Verfahren zum Erzeugen und Simulieren eines Modells eines Objekts
EP0152772B1 (de) Verfahren zum Erzeugen von Werkstückkonturen
DE112015001435T5 (de) Verfahren und System zum Bestimmen einer Bahn eines Werkzeugs, das eine Taschenform bearbeitet
DE102013008755B4 (de) Offline-Programmiersystem
DE4105314A1 (de) Dreidimensionaler plotter
DE112013001752T5 (de) Verfahren und System zum Simulieren der Bearbeitung von Werkstücken durch Werkzeuge
EP0151274B1 (de) Verfahren zum Darstellen von Gegenstaenden
EP0136404B1 (de) Verfahren zum Darstellen von dreidimensionalen Gebilden
DE112011105499T5 (de) Verfahren und System zum Bestimmen von Defekten einer Oberfläche eines Modells eines Objekts
DE102020124734A1 (de) Simulationsgerät
DE10145515B4 (de) Optimierung der Parametrierung einer Werkzeugmaschine
DE112013003267T5 (de) Verfahren zum Auswerten und Laserschneidmaschine
DE4208401A1 (de) Datengenerator fuer dreidimensionale figuren
WO2020064761A1 (de) Verfahren, computerprogrammprodukt und computervorrichtung zum auswerten volumetrischer subdivisionsmodelle
DE19704529B4 (de) Verfahren zum automatischen Erzeugen und Handhaben einer Schatten-Geometrie und interaktive computergestützte Anzeigeeinrichtung
DE3709919C2 (de)
DE112014002120T5 (de) System und Verfahren zur Durchführung von Operationen zum Rückgängigmachen und Wiederherstellen während der Bearbeitungssimulation
DE4310126A1 (de) Verfahren und Vorrichtung zur numerischen Bahnsteuerung von Werkzeugmaschinen
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