DE102021102619A1 - Steuereinheit und steuerungsverfahren - Google Patents

Steuereinheit und steuerungsverfahren Download PDF

Info

Publication number
DE102021102619A1
DE102021102619A1 DE102021102619.9A DE102021102619A DE102021102619A1 DE 102021102619 A1 DE102021102619 A1 DE 102021102619A1 DE 102021102619 A DE102021102619 A DE 102021102619A DE 102021102619 A1 DE102021102619 A1 DE 102021102619A1
Authority
DE
Germany
Prior art keywords
point
time
curve
parameter
path parameter
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.)
Withdrawn
Application number
DE102021102619.9A
Other languages
English (en)
Inventor
Markus Schuster
Jonas Hoppe
Udo Gruber
Günter Grupp
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.)
Carl Zeiss Industrielle Messtechnik GmbH
Original Assignee
Carl Zeiss Industrielle Messtechnik GmbH
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 Carl Zeiss Industrielle Messtechnik GmbH filed Critical Carl Zeiss Industrielle Messtechnik GmbH
Priority to DE102021102619.9A priority Critical patent/DE102021102619A1/de
Publication of DE102021102619A1 publication Critical patent/DE102021102619A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B5/00Measuring arrangements characterised by the use of mechanical techniques
    • G01B5/004Measuring arrangements characterised by the use of mechanical techniques for measuring coordinates of points
    • G01B5/008Measuring arrangements characterised by the use of mechanical techniques for measuring coordinates of points using coordinate measuring machines
    • 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/45Nc applications
    • G05B2219/45066Inspection robot

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)

Abstract

Die vorliegende Erfindung betrifft eine Steuereinheit und ein Steuerungsverfahren zur Steuerung einer Bewegung einer Maschine unter Beachtung variabler Dynamikgrenzen der Maschine. Die Steuereinheit wie auch das Steuerungsverfahren lassen sich insbesondere zur Berechnung der Bahnkurve der Bewegung eines Koordinatenmessgeräts einsetzen, sind auf diesen Zweck jedoch nicht beschränkt.

Description

  • Die vorliegende Erfindung betrifft eine Steuereinheit zur Steuerung einer Bewegung einer Maschine mit mindestens einer beweglichen Achse. Die vorliegende Erfindung betrifft des Weiteren ein Steuerungsverfahren zur Steuerung der Bewegung der Maschine. Ferner betrifft die vorliegende Erfindung auch ein Computerprogrammprodukt und die Maschine selbst, die eine solche Steuereinheit aufweist.
  • Bevorzugt wird die Steuereinheit gemäß der vorliegenden Erfindung in einer Vorrichtung zum dimensionellen Messen eingesetzt. Bei einer derartigen Vorrichtung kann es sich beispielsweise um ein Koordinatenmessgerät, einen Roboter, der zum dimensionellen Messen eingesetzt wird, oder um ein sonstiges Messgerät handeln. Es sei jedoch angemerkt, dass die Steuereinheit und das Steuerungsverfahren gemäß der vorliegenden Erfindung nicht auf diesen Anwendungszweck beschränkt sind. Sie können auch in beliebigen anderen Maschinen mit mindestens einer beweglichen Achse eingesetzt werden, bei deren Bewegungsplanung es zu ähnlichen Problemstellungen wie in Koordinatenmessgeräten oder Robotern zur dimensionellen Messung kommt.
  • Dimensionelle Messgeräte im vorliegenden Sinn sind beispielsweise Koordinatenmessgeräte oder Mikroskope. Rauhigkeitsmessgeräte oder andere Geräte zum Messen von Abständen und/oder Oberflächeneigenschaften eines Objektes werden ebenso als dimensionelle Messgeräte im vorliegenden Sinne verstanden.
  • Koordinatenmessgeräte mit taktilen und/oder optischen Messsensoren werden in der dimensionellen Messtechnik verwendet, um die Form einer Werkstückoberfläche beispielsweise durch Abtastung zu bestimmen. Da die dimensionelle Messtechnik im Regelfall in Industriezweigen Anwendung findet, in denen sehr hohe Genauigkeiten, beispielsweise für nachfolgende Bearbeitungsschritte oder zur Qualitätssicherung, erforderlich sind, ist eine fehlerfreie Messdurchführung von großer Wichtigkeit.
  • Um einen reproduzierbaren, fehlerfreien Messablauf eines Koordinatenmessgeräts zu gewährleisten, ist eine möglichst detaillierte Planung und Steuerung des Messablaufs notwendig. Hierzu ist es insbesondere notwendig, diverse Messparameter und maschinenbezogene Steuerparameter in Form von Einstellparametern festzulegen. Diese Einstellparameter können beispielsweise eine Anzahl von anzufahrenden Messpunkten, die Art der an den Messpunkten vorzunehmenden Messungen und/oder eine Messrichtung beinhalten.
  • Sobald diese sogenannten Messaufgaben festgelegt sind, muss zur vollständigen Planung des Messablaufs der Messpfad bestimmt bzw. berechnet werden und im Zuge dessen auch das Geschwindigkeits- und Beschleunigungsprofil der Mess- bzw. Abtastbewegung berechnet werden.
  • Letzteres geschieht typischerweise in der Steuereinheit des Koordinatenmessgeräts. Diese berechnet den Messpfad inklusive Geschwindigkeits- und Beschleunigungsprofil, nachdem die Messaufgabe, z.B. die einzelnen Messpunkte, durch den Benutzer und/oder CAD-Daten des zu vermessenden Objekts vorgegeben wurden. Wichtig bei der Berechnung des Geschwindigkeits- und Beschleunigungsprofils ist die Einhaltung der Dynamikgrenzen der zu steuernden Maschine. Dies ist keineswegs trivial.
  • Ein beispielhaftes Steuerungsverfahren, das aus Geometriedaten des Messobjekts Steuerdaten in Form von Punktewolken generiert und aus den Abständen der einzelnen Punkte zueinander ein Geschwindigkeits- und Beschleunigungsprofil berechnet, mit dem das Koordinatenmessgerät seinen Tastkopf verfährt, ist aus der EP 0 762 250 A1 bekannt.
  • Wenngleich sich das aus der EP 0 762 250 A1 bekannte Steuerungsverfahren in der Praxis etabliert hat, besteht dennoch Anlass für Verbesserung.
  • Das bereits bekannte Steuerungsverfahren nimmt sehr starke Vereinfachungen vor, die u.a. damit zusammenhängen, dass das bereits bekannte Steuerungsverfahren aus einer Zeit stammt, in der die Rechenleistung derartiger Steuereinheiten geringer war und insbesondere Echtzeitrechenleistung nur begrenzt verfügbar war.
  • In dem aus der EP 0 762 250 A1 bekannten Steuerungsverfahren wird aus den einzelnen Messpunkten eine als Spline erzeugte Bahnkurve bestimmt und festgelegt, dass die einzelnen Stützpunkte für diese Splines zeitlich äquidistant durchfahren werden müssen. Mit anderen Worten muss gemäß diesem Verfahren eine feste Anzahl Stützpunkte pro Zeiteinheit durchfahren werden. Geschwindigkeit und Beschleunigung sind hierdurch bereits festgelegt. Dynamikgrenzen, also achsweise festgelegte betragsmäßig maximal erlaubte Werte für Geschwindigkeit und Beschleunigung der einzelnen Maschinenachsen lassen sich somit nicht oder zumindest nicht zuverlässig berücksichtigen. Es obliegt dem Bediener, also der überlagerten Softwareschicht, dies zu berücksichtigen.
  • Die überlagerte Softwareschicht handhabt das zum Beispiel wie in der EP 0 762 250 A1 beschrieben und liefert Stützpunkte an die Steuerung, die dann in einem festen Zeittakt abgefahren werden. Um die Stützpunktfolge zu generieren, wird an definierten Stellen zunächst die maximale (konstante skalare) Geschwindigkeit ermittelt, so dass die aus der Krümmung der Bahnkurve resultierende Zentrifugalbeschleunigung gerade so groß ist wie die erlaubte Beschleunigung. Die Geschwindigkeit entlang der Bahn wird über den geometrischen Abstand zweier Punkte definiert, die (tangentiale skalare) Beschleunigung als deren Ableitung, also analog als Differenz zweier Geschwindigkeitswerte. Tangential- und Zentripetalbeschleunigung werden als skalare Größen unabhängig voneinander betrachtet und begrenzt.
  • Zudem geht das aus der EP 0 762 250 A1 bekannte Verfahren nicht darauf ein, inwiefern die Grenzwerte einzelnen Achsen der Maschine zugewiesen sind. Es handelt sich also um einen globalen Grenzwert. Örtlich oder zeitlich variable Dynamikgrenzen werden ebenfalls nicht berücksichtigt. Das Verfahren ist in dieser Form deshalb nur praktikabel für kartesische Koordinaten mit drei gleichartigen Achsen.
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine Steuereinheit und ein entsprechendes Steuerungsverfahren bereitzustellen, das eine verbesserte bzw. zuverlässigere Einhaltung der Dynamikgrenzen der Maschine ermöglicht, auf einer Echtzeitsteuerung implementierbar ist und damit auch zu weiteren Anwendungszwecken, beispielsweise für die Steuerung von Maschinen mit rotatorischen Achsen oder Maschinen, deren Achsen unterschiedliche Dynamikgrenzen aufweisen, geeignet ist.
  • Diese Aufgabe wird gemäß einem ersten Aspekt der vorliegenden Erfindung durch eine Steuereinheit gemäß Anspruch 1 gelöst, wobei die Steuerung dazu eingerichtet ist, ein Maschinenteil entlang einer vorgegebenen Kurve zu bewegen, die als eine von einem skalaren Bahnparameter abhängige mathematische Funktion beschrieben ist, wobei der Bahnparameter an einem Startpunkt der Kurve einen Startwert hat, an einem Endpunkt der Kurve einen Endwert hat und dazwischen monoton ansteigt, wobei die Steuereinheit ferner dazu eingerichtet ist, die folgenden Schritte auszuführen:
    • (i) Definieren einer ersten vorläufigen Bahnparametergeschwindigkeit in einem ersten Punkt auf der Kurve, dem ein erster Bahnparameterwert zugewiesen ist;
    • (ii) Bestimmen einer zweiten vorläufigen Bahnparametergeschwindigkeit für einen zweiten Punkt auf der Kurve, dem ein zweiter Bahnparameterwert zugewiesen ist, der kleiner als der erste Bahnparameterwert ist, in Abhängigkeit von der ersten vorläufigen Bahnparametergeschwindigkeit;
    • (iii) Wiederholen von Schritt (ii) bis zum Erreichen des Startpunkts, wobei für weitere Punkte auf der Kurve, denen jeweils ein Bahnparameterwert zugewiesen ist, der kleiner als der Bahnparameterwert des jeweils vorhergehenden Punkts ist, eine in dem jeweiligen weiteren Punkt vorläufige Bahnparametergeschwindigkeit in Abhängigkeit von der vorläufigen Bahnparametergeschwindigkeit in dem jeweils vorhergehenden Punkt bestimmt wird;
    • (iv) Abschätzen eines Maximalwerts des Bahnparameters zu einem zweiten Zeitpunkt, der sich durch Addition eines Zeitinkrements zu einem ersten Zeitpunkt, der dem Startpunkt der Kurve zugewiesen ist, ergibt, um einen ersten Kurvenabschnitt zu definieren, der durch Bahnparameterwerte zwischen dem Startwert und dem abgeschätzten Maximalwert des Bahnparameters zu dem zweiten Zeitpunkt beschrieben wird;
    • (v) Bestimmen einer maximal zulässigen Bahnparameterbeschleunigung in dem ersten Kurvenabschnitt in Abhängigkeit von der vorläufigen Bahnparametergeschwindigkeit mindestens eines Punktes in dem ersten Kurvenabschnitt;
    • (vi) Bestimmen des Bahnparameterwerts und der Bahnparametergeschwindigkeit zu dem zweiten Zeitpunkt in Abhängigkeit von a) der maximal zulässigen Bahnparameterbeschleunigung in dem ersten Kurvenabschnitt, b) dem Zeitinkrement und c) einer Bahnparametergeschwindigkeit zu dem ersten Zeitpunkt;
    • (vii) Wiederholen der Schritte (iv)-(vi) für weitere, zeitlich nach dem zweiten Zeitpunkt liegende Zeitpunkte, wobei der Maximalwert des Bahnparameters zu jedem weiteren Zeitpunkt, der sich jeweils durch Addition eines weiteren Zeitinkrements zu dem jeweils vorhergehenden Zeitpunkt ergibt, abgeschätzt wird, um jeweils einen weiteren Kurvenabschnitt zu definieren, der durch Bahnparameterwerte zwischen dem Bahnparameterwert, der bezüglich des jeweils vorhergehenden Zeitpunkt bestimmt wurde, und dem Maximalwert des Bahnparameters zu dem jeweiligen weiteren Zeitpunkt beschrieben wird, wobei ferner eine maximal zulässige Bahnparameterbeschleunigung in jedem weiteren Kurvenabschnitt bestimmt wird, und wobei der Bahnparameterwert und die Bahnparametergeschwindigkeit zu jedem weiteren Zeitpunkt in Abhängigkeit von a) der maximal zulässigen Bahnparameterbeschleunigung in dem jeweiligen Kurvenabschnitt, b) dem Zeitinkrement und c) einer Bahnparametergeschwindigkeit zu dem jeweils vorhergehenden Zeitpunkt bestimmt wird; und
    • (viii) Bestimmen des Kurvenverlaufs anhand der im Schritt (vii) für die verschiedenen Zeitpunkte bestimmten Bahnparameterwerte.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird eine Maschine mit einer Steuereinheit der oben genannten Art bereitgestellt.
  • Die oben genannte Aufgabe wird des Weiteren durch ein Steuerungsverfahren gemäß Anspruch 14 gelöst, das die folgenden Schritte aufweist:
    • (i) Definieren einer ersten vorläufigen Bahnparametergeschwindigkeit in einem ersten Punkt auf der Kurve, dem ein erster Bahnparameterwert zugewiesen ist;
    • (ii) Bestimmen einer zweiten vorläufigen Bahnparametergeschwindigkeit für einen zweiten Punkt auf der Kurve, dem ein zweiter Bahnparameterwert zugewiesen ist, der kleiner als der erste Bahnparameterwert ist, in Abhängigkeit von der ersten vorläufigen Bahnparametergeschwindigkeit;
    • (iii) Wiederholen von Schritt (ii) bis zum Erreichen des Startpunkts, wobei für weitere Punkte auf der Kurve, denen jeweils ein Bahnparameterwert zugewiesen ist, der kleiner als der Bahnparameterwert des jeweils vorhergehenden Punkts ist, eine in dem jeweiligen weiteren Punkt vorläufige Bahnparametergeschwindigkeit in Abhängigkeit von der vorläufigen Bahnparametergeschwindigkeit in dem jeweils vorhergehenden Punkt bestimmt wird;
    • (iv) Abschätzen eines Maximalwerts des Bahnparameters zu einem zweiten Zeitpunkt, der sich durch Addition eines Zeitinkrements zu einem ersten Zeitpunkt, der dem Startpunkt der Kurve zugewiesen ist, ergibt, um einen ersten Kurvenabschnitt zu definieren, der durch Bahnparameterwerte zwischen dem Startwert und dem abgeschätzten Maximalwert des Bahnparameters zu dem zweiten Zeitpunkt beschrieben wird;
    • (v) Bestimmen einer maximal zulässigen Bahnparameterbeschleunigung in dem ersten Kurvenabschnitt in Abhängigkeit von der vorläufigen Bahnparametergeschwindigkeit mindestens eines Punktes in dem ersten Kurvenabschnitt;
    • (vi) Bestimmen des Bahnparameterwerts und der Bahnparametergeschwindigkeit zu dem zweiten Zeitpunkt in Abhängigkeit von a) der maximal zulässigen Bahnparameterbeschleunigung in dem ersten Kurvenabschnitt, b) dem Zeitinkrement und c) einer Bahnparametergeschwindigkeit zu dem ersten Zeitpunkt;
    • (vii) Wiederholen der Schritte (iv)-(vi) für weitere, zeitlich nach dem zweiten Zeitpunkt liegende Zeitpunkte, wobei der Maximalwert des Bahnparameters zu jedem weiteren Zeitpunkt, der sich jeweils durch Addition eines weiteren Zeitinkrements zu dem jeweils vorhergehenden Zeitpunkt ergibt, abgeschätzt wird, um jeweils einen weiteren Kurvenabschnitt zu definieren, der durch Bahnparameterwerte zwischen dem Bahnparameterwert, der bezüglich des jeweils vorhergehenden Zeitpunkt bestimmt wurde, und dem Maximalwert des Bahnparameters zu dem jeweiligen weiteren Zeitpunkt beschrieben wird, wobei ferner eine maximal zulässige Bahnparameterbeschleunigung in jedem weiteren Kurvenabschnitt bestimmt wird, und wobei der Bahnparameterwert und die Bahnparametergeschwindigkeit zu jedem weiteren Zeitpunkt in Abhängigkeit von a) der maximal zulässigen Bahnparameterbeschleunigung in dem jeweiligen Kurvenabschnitt, b) dem Zeitinkrement und c) einer Bahnparametergeschwindigkeit zu dem jeweils vorhergehenden Zeitpunkt bestimmt wird; und
    • (viii) Bestimmen des Kurvenverlaufs anhand der im Schritt (vii) für die verschiedenen Zeitpunkte bestimmten Bahnparameterwerte.
  • Ferner wird ein Computerprogrammprodukt gemäß der vorliegenden Erfindung bereitgestellt, das Software aufweist, die dazu eingerichtet ist, bei Ausführung auf einem Computer das oben genannte Verfahren auszuführen.
  • Im Folgenden wird im Wesentlichen die Steuereinheit gemäß dem ersten Aspekt der vorliegenden Erfindung erläutert. Es versteht sich jedoch, dass die nachfolgenden Erläuterungen und die in den abhängigen Ansprüchen 2-11 definierten Merkmale sich nicht nur auf die erfindungsgemäße Steuereinheit beziehen, sondern in äquivalenter Weise auch auf das erfindungsgemäße Steuerungsverfahren.
  • Ein Merkmal der erfindungsgemäßen Steuerung ist die besondere Art der Bestimmung des Kurvenverlaufs, womit als Endergebnis der Verlauf der Bahnkurve in Abhängigkeit von der Zeit gemeint ist.
  • Hierzu wird in den Schritten (i)-(iii) zunächst eine Art „Rückwärtsrechnen“ durchgeführt, bei dem die Kurve in Abhängigkeit des Bahnparameters von hinten nach vorne durchlaufen wird. Dies lässt sich in den Schritten (i)-(iii) daran erkennen, dass der erste Bahnparameterwert, der einem ersten Punkt auf der Kurve zugeordnet ist, für den zunächst eine erste vorläufige Bahnparametergeschwindigkeit bestimmt wird, größer als der zweite Bahnparameterwert ist, für dessen zweiten Punkt erst danach die zweite vorläufige Bahnparametergeschwindigkeit bestimmt wird.
  • Die in Schritt (iii) bestimmten vorläufigen Bahnparametergeschwindigkeiten werden jeweils in Abhängigkeit von der zuvor für einen vorhergehenden Punkt bestimmten vorläufigen Bahnparametergeschwindigkeit bestimmt, wobei den Punkten gegenüber ihren vorhergehenden Punkten jeweils ein kleinerer Bahnparameterwert zugewiesen ist, so dass sich die Punkte jeweils näher an dem Startpunkt der Kurve befinden als ihre während des Rückwärtsrechnens betrachteten vorhergehenden Punkte.
  • Diesbezüglich sei angemerkt, dass der für das Rückwärtsrechnen zunächst ausgewählte erste Punkt auf der Kurve ein beliebiger Punkt zwischen dem Startpunkt und dem Endpunkt der Kurve sein kann. Grundsätzlich kann der Endpunkt als erster Punkt ausgewählt werden. Es kann jedoch auch sein, dass das tatsächliche Ende der Kurve zum Zeitpunkt der Berechnung noch gar nicht feststeht, da dieses zum jeweiligen Rechenzeitpunkt noch gar nicht festgelegt ist bzw. erst in der Zukunft festgelegt wird.
  • Ebenso ist es wichtig zu beachten, dass unter dem Startpunkt und dem Endpunkt der Kurve nicht zwangsläufig die geometrischen Start- und Endpunkte der Kurve gemeint sein müssen. Bei der Kurve kann es sich beispielsweise auch um eine Kurve entlang einer geschlossenen Kontur handeln, so dass sie geometrisch betrachtet gar keinen Anfang und kein Ende aufweist.
  • Start- und Endpunkt können somit beliebige Punkte auf der Kurve sein, die zum jeweiligen Zeitpunkt der Bahnkurven-Berechnung als Anfang und Ende der Betrachtung herangezogen werden. Für einen nächsten Rechenschritt können diese Punkte daher bereits andere sein.
  • Bei den für die während des Rückwärtsrechnens für die einzelnen Punkte bestimmten vorläufigen Parametergeschwindigkeiten handelt es sich jeweils um zeitliche Ableitungen des Bahnparameters in dem jeweiligen Punkt. Sie werden als vorläufige Bahnparametergeschwindigkeiten bezeichnet, da es sich hierbei um Werte handelt, die während des Rückwärtsrechnens in den Schritten (i)-(iii) vorläufig bestimmt werden, wobei die letztendlich tatsächlich berechneten Bahnparametergeschwindigkeiten in Abhängigkeit dieser vorläufigen Werte in den Schritten (iv)-(vii) während eines nachfolgenden sogenannten „Vorwärtsrechnens“ bestimmt werden.
  • In dem nachfolgenden Vorwärtsrechnen werden die Ergebnisse aus dem Rückwärtsrechnen verwendet und die Kurve dann nicht mehr ortsabhängig von hinten nach vorne, sondern zeitabhängig von vorne nach hinten durchlaufen. Anders ausgedrückt wird die Kurve in den Schritten (iv)-(vii) angefangen von einem ersten Zeitpunkt von einem Zeitpunkt zum nächsten durchlaufen, wobei sich zwei aufeinanderfolgende Zeitpunkte immer durch Addition eines Zeitinkrements ergeben. Dieses Zeitinkrement kann, muss jedoch nicht, konstant sein zwischen den einzelnen Zeitpunkten. Das Zeitinkrement kann zwischen verschiedenen Zeitpunkten durchaus auch variieren.
  • Anders als in dem in der EP 0 762 250 A1 vorgeschlagenen Verfahren werden im hier vorgeschlagenen Verfahren keine Vereinfachungen getätigt, die eine über die numerische Genauigkeit hinausgehende Verletzung der Dynamikgrenzen zur Folge haben könnten. Die erfindungsgemäße Steuereinheit beruht nicht auf der Idee, einzelne Bedingungen für die Geschwindigkeit und Beschleunigung zu jeder Zeit für sich zu betrachten, sondern durch das beschriebene Zusammenspiel aus Rückwärtsrechnen und anschließendem Vorwärtsrechnen eine Art Vorausschau zu erzeugen.
  • Dass dies sinnvoll ist, ist anschaulich sofort klar. Man muss unter Umständen schon auf einer Geraden bremsen, um nicht aus der Kurve zu fliegen. Ein Vorausschauen ist also notwendig. Für eine Linearbewegung ließe sich anhand des Restwegs abschätzen, wann mit dem Bremsvorgang begonnen werden muss. Genauer gesagt, ließe sich so lange mit Maximalbeschleunigung beschleunigen (oder nach Erreichen der Maximalgeschwindigkeit mit dieser verfahren), bis die Geschwindigkeit größer werden würde, als die, die man noch zur Verfügung hat, um rechtzeitig zum Stillstand zu kommen.
  • Bezogen auf das erfindungsgemäße Steuerungsverfahren bedeutet dies: Es wird zunächst örtlich von hinten nach vorne die Kurve rückwärts durchfahren und für die einzelnen Punkte jeweils die „erlaubten“ bzw. vorläufigen Bahnparametergeschwindigkeiten berechnet. Anschließend werden diese vorläufigen Werte verwendet, um während des Vorwärtsrechnens zeitabhängig die maximal zulässigen Bahnparametergeschwindigkeiten und Bahnparameterbeschleunigungen durch Abschätzen zu bestimmen.
  • Es versteht sich, dass die oben bezüglich der Steuereinheit und des Steuerungsverfahrens definierten Schritte nicht nur für eine Achse definiert sind, sondern problemlos auch für mehrere Achsen der Maschine durchführbar sind. Die Dynamikgrenzen der Maschine können achsabhängig berücksichtigt werden. Der resultierende zeitliche Verlauf des Bahnparameters, einschließlich Bahnparametergeschwindigkeit und Bahnparameterbeschleunigung, erfüllt die geforderten Bedingungen anschließend für jede berücksichtigte Achse.
  • Das erfindungsgemäße Steuerverfahren ist hierbei nicht auf physikalisch direkt ansteuerbare Achsen beschränkt. Es können auch Dynamikgrenzen für virtuelle Achsen eingehalten werden, beispielsweise für die Position des Tool Center Point oder für einen Normalvektor zu einer Fläche oder einer physikalischen Achse.
  • Ein weiterer Vorteil der erfindungsgemäßen Steuereinheit bzw. des erfindungsgemäßen Steuerungsverfahrens ist die Tatsache, dass sich dies prinzipiell unabhängig für alle möglichen Arten von Bahnkurven realisieren lässt. Zwar ist es zur Vereinfachung der mathematischen Auswertbarkeit von Vorteil, wenn es sich bei der Kurve um eine Spline-Kurve handelt oder zumindest um eine Kurve, die in jedem Punkt zwischen dem Startpunkt und dem Endpunkt jeweils zweimal stetig differenzierbar ist. Dies muss jedoch nicht zwangsläufig der Fall sein, da das erfindungsgemäße Verfahren darauf nicht angewiesen ist.
  • Falls die vorgegebene Kurve Unstetigkeiten aufweist, müssten diese Unstetigkeitspunkte lediglich gesondert betrachtet werden, z.B. als Start- und Endpunkte des jeweiligen Berechnungsschritts.
  • Das Verfahren ist darüber hinaus prinzipiell geeignet, um nicht nur mit zeitlich variablen Dynamikgrenzen, sondern auch mit örtlich variablen Dynamikgrenzen der Maschine umzugehen. Daher können beispielsweise zustandsabhängig unterschiedliche Grenzen für die maximal zulässigen Achsgeschwindigkeiten und/oder Achsbeschleunigungen vorgegeben werden, z.B. abhängig von einer ausgelösten Bedienerschutzeinrichtung oder einer Bedienereingabe. Die maximal zulässigen Achsgeschwindigkeiten und/oder Achsbeschleunigungen können auch bedingt durch die Mechanik von Achse zu Achse unterschiedlich, oder sogar von Position zu Position auf einer Achse unterschiedlich sein. Beispielsweise können geringere Achsgeschwindigkeiten zulässig sein bei ausgefahrener als bei eingefahrener Achse. Dies kann aber auch abhängig von der Winkelstellung oder abhängig von mehreren, miteinander kombinierten Achsen sein.
  • Ferner ist die erfindungsgemäße Steuereinheit vorteilhaft, da sie prinzipiell geeignet ist, um auf einer nummerischen Echtzeitsteuerung implementiert zu werden. Dies liegt u.a. daran, da das Vorwärtsrechnen immer und mit konstantem Rechenaufwand zu einer Lösung führt.
  • Das erfindungsgemäße Verfahren ist des Weiteren prinzipiell geeignet, um auf Teilstücken einer Bahnkurve zu operieren, ohne die gesamte Bahnkurve bereits im Voraus kennen zu müssen. So ist es prinzipiell möglich, das erfindungsgemäße Steuerungsverfahren auf einen Punktestream anzuwenden, bei dem Punkte kontinuierlich in einen FIFO-Buffer geladen werden. Damit kann eine beliebig lange Bahnkurve abgefahren werden, ohne dass diese der Steuerung zuvor komplett bekannt sein muss.
  • Die oben genannte Aufgabe ist daher vollständig gelöst.
  • Wie bereits erwähnt, handelt es sich gemäß einer Ausgestaltung der vorliegenden Erfindung bei der Kurve um eine Spline-Kurve.
  • Eine solche Spline-Kurve ist effizient auswertbar, hat konstruktionsbedingt einen sanften Verlauf und lässt sich mathematisch relativ einfach in die oben genannte Auswertung während des Rückwärts- und Vorwärtsrechnens einbinden.
  • Gemäß einer Ausgestaltung ist die Steuereinheit dazu eingerichtet, im Schritt (i) den Endwert als ersten Parameterwert zu verwenden, und die erste vorläufige Bahnparametergeschwindigkeit auf Null zu setzen.
  • Wie bereits erwähnt, muss es sich bei dem zugehörigen Endpunkt nicht zwangsläufig um einen geometrischen Endpunkt der Kurve handeln. Gleichzeitig muss der Endpunkt auch nicht der „letzte“ Punkt der Kurve sein, der der Steuereinheit zu dem jeweiligen Zeitpunkt bekannt ist.
  • Dem Setzen der ersten vorläufigen Bahnparametergeschwindigkeit auf Null liegt der Gedanke zugrunde, dass für den Beginn des Rückwärtsrechnens aus Sicherheitsgründen ein Stillstand der jeweiligen Achse der Maschine vorausgesetzt wird.
  • Gemäß einer weiteren Ausgestaltung ist die Steuereinheit dazu eingerichtet, die zweite vorläufige Bahnparametergeschwindigkeit im Schritt (ii) durch nummerische Näherung zu bestimmen. Es versteht sich, dass dies auch für die Wiederholung dieses Schritts in Schritt (iii) entsprechend gilt. Genauer gesagt, handelt es sich vorzugsweise um eine zeitdiskrete nummerische Näherung.
  • Bevorzugt ist die Steuereinheit dazu eingerichtet, die zweite vorläufige Bahnparametergeschwindigkeit im Schritt (ii) auch in Abhängigkeit von in einem ersten Intervall zwischen dem ersten und dem zweiten Punkt definierten Dynamikgrenzen und geometrischen Eigenschaften der Kurve in dem ersten Intervall zu bestimmen. Auch dies gilt entsprechend für die Wiederholungen des Rechenschritts in Schritt (iii).
  • Während des Rückwärtsrechnens wird die vorläufige Bahnparametergeschwindigkeit für jeden Punkt auf der Kurve, vorzugsweise in Abhängigkeit von der bereits für den vorherigen Punkt bestimmten Bahnparametergeschwindigkeit, den in dem jeweiligen Intervall für die Maschine bzw. die jeweils betrachtete Maschinenachse definierten Dynamikgrenzen und den geometrischen Eigenschaften der Bahnkurve in dem jeweiligen Intervall (örtliches Intervall in Abhängigkeit des Bahnparameters) bestimmt. Hierdurch lässt sich die oben bereits erwähnte zeitliche und örtliche Variabilität der Dynamikgrenzen der Maschine berücksichtigen.
  • Die in dem jeweiligen Intervall definierten Dynamikgrenzen weisen vorzugsweise eine maximal zulässige Achsgeschwindigkeit und/oder Achsbeschleunigung der mindestens einen Achse der Maschine auf. Ebenso können die jeweiligen Dynamikgrenzen auch minimal zulässige Achsgeschwindigkeiten und/oder Achsbeschleunigungen aufweisen. Diese Achsgeschwindigkeiten und Achsbeschleunigungen können orts- und/oder zeitabhängig sein. Die minimalen und maximalen Achsgeschwindigkeiten bzw. Achsbeschleunigungen können an der jeweiligen Stelle betragsmäßig die gleichen sein. Genauso gut ist es aber auch möglich, dass sich diese beiden Werte in ein und demselben Punkt betragsmäßig voneinander unterscheiden.
  • Die in den Rückwärtsrechnen-Schritten (ii) und (iii) berücksichtigbaren geometrischen Eigenschaften der Kurve in dem jeweiligen Intervall beinhalten vorzugsweise eine erste und/oder zweite Ableitung der mathematischen Funktion der Kurve in dem jeweiligen Fall.
  • Gemäß einer weiteren Ausgestaltung ist die Steuereinheit dazu eingerichtet, den Maximalwert des Bahnparameters wegen des Vorwärtsrechnens in den Schritten (iv) und (vii) für jeden der Zeitpunkte in Abhängigkeit von zumindest einem der folgenden Parameter zu bestimmen: der vorläufigen Bahnparametergeschwindigkeit mindestens eines Kurvenpunktes, einer maximal zulässigen Achsgeschwindigkeit der mindestens einen Achse, einer maximal zulässigen Achsbeschleunigung der mindestens einen Achse, einer ersten Ableitung der mathematischen Funktion der Kurve zu den jeweils vorhergehenden Zeitpunkten und einer zweiten Ableitung der mathematischen Funktion der Kurve zu den jeweils vorhergehenden Zeitpunkten.
  • Somit lässt sich während des Vorwärtsrechnens der Maximalwert des Bahnparameters relativ gut abschätzen. Anders ausgedrückt, handelt es dabei um die Schätzung der maximalen Positionsdifferenz entlang der Kurve für jedes Zeitinkrement zwischen zwei Zeitpunkten.
  • Ferner ist die Steuereinheit gemäß einer Ausgestaltung dazu eingerichtet, den Bahnparameterwert und die Bahnparametergeschwindigkeit im Schritt (vi) bzw. dessen Wiederholung im Schritt (vii) für jeden Zeitpunkt durch Integration der maximal zulässigen Bahnparameterbeschleunigung in dem jeweiligen Kurvenabschnitt über das jeweilige Zeitinkrement zu bestimmen. Als Startwert bzw. untere Grenze für die Integration wird die Bahnparametergeschwindigkeit beziehungsweise der Bahnparameter zu dem jeweils vorhergehenden Zeitpunkt verwendet.
  • Es versteht sich, dass die vorstehend genannten und die nachstehend noch zu erläuternden Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.
  • Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird in der nachfolgenden Beschreibung näher erläutert: Es zeigen:
    • 1 ein Koordinatenmessgerät als Beispiel für eine Maschine, in der die erfindungsgemäße Steuereinheit zum Einsatz kommen kann;
    • 2 ein Ablaufdiagramm eines Ausführungsbeispiels des erfindungsgemäßen Steuerungsverfahrens;
    • 3 ein erstes Diagramm zur Veranschaulichung eines Ergebnisses des erfindungsgemäßen Steuerungsverfahrens gemäß einem Ausführungsbeispiel;
    • 4 ein zweites Diagramm zur Veranschaulichung eines weiteren Ergebnisses des erfindungsgemäßen Steuerungsverfahrens;
    • 5 ein drittes Diagramm zur Veranschaulichung eines weiteren Ergebnisses des erfindungsgemäßen Steuerungsverfahrens; und
    • 6 weitere Diagramme zur Veranschaulichung eines weiteren Ergebnisses des erfindungsgemäßen Steuerungsverfahrens.
  • 1 zeigt ein Ausführungsbeispiel eines beispielhaften Messgeräts, in dem das erfindungsgemäße Steuerungsverfahren bzw. die erfindungsgemäße Steuereinheit zum Einsatz kommen können. Das Messgerät ist in seiner Gesamtheit mit der Bezugsziffer 100 gekennzeichnet. Die dazugehörige Steuereinheit ist in 1 in ihrer Gesamtheit mit der Bezugsziffer 40 gekennzeichnet.
  • Bei dem Messgerät 100 handelt es sich im vorliegenden Beispiel um ein Koordinatenmessgerät in sogenannter Portalbauweise. In anderen Ausführungsbeispielen kann es sich bei dem Messgerät 100 auch um einen Roboter, beispielsweise einen Knickarmroboter, handeln, der zum Vermessen eines beliebigen Messobjekts eingesetzt wird.
  • Das in 1 gezeigte Koordinatenmessgerät 100 weist eine Basis 10 auf. Bei der Basis 10 handelt es sich vorzugsweise um eine stabile Platte, welche beispielsweise aus Granit gefertigt ist. Auf der Basis 10 ist eine Werkstückaufnahme 12 angeordnet, die dazu ausgebildet ist, ein Messobjekt 14 zu halten.
  • Auf der Basis 10 ist ein Portal 16 in Längsrichtung verschiebbar angeordnet. Das Portal 16 dient als bewegliche Trägerstruktur. Das Portal 16 weist zwei von der Basis 10 nach oben abragende Säulen auf, die durch einen Querträger miteinander verbunden sind und gesamthaft eine umgekehrte U-Form aufweisen.
  • Die Bewegungsrichtung des Portals 16 relativ zu der Basis 10 wird üblicherweise als Y-Richtung bezeichnet. An dem oberen Querträger des Portals 16 ist ein Schlitten 18 angeordnet, der in Querrichtung verfahrbar ist. Diese Querrichtung wird üblicherweise als X-Richtung bezeichnet. Der Schlitten 18 trägt eine Pinole 20, die in Z-Richtung, also senkrecht zu der Basis 10, verfahrbar ist.
  • Die Bezugszeichen 22, 24, 26 bezeichnen Messeinrichtungen, anhand derer die X-, Y- und Z-Positionen des Portals 16, des Schlittens 18 und der Pinole 20 bestimmt werden können. Typischerweise handelt es sich bei den Messeinrichtungen 22, 24, 26 um Glasmaßstäbe, welche als Messskalen dienen. Diese Messskalen sind in Verbindung mit entsprechenden Leseköpfen (hier nicht dargestellt) dazu ausgebildet, die jeweils aktuelle Position des Portals 16 relativ zu der Basis 10, die Position des Schlittens 18 relativ zu dem oberen Querbalken des Portals 16 und die Position der Pinole 20 relativ zu dem Schlitten 18 zu bestimmen.
  • An einem unteren, freien Ende der Pinole 20 ist ein Messkopf 28 angeordnet. Der Messkopf 28 ist dazu eingerichtet, Messpunkte an dem Messobjekt 14 zu erfassen. Der Messkopf 28 ist Teil eines Messsensors, dessen Messsensorik von dem Messkopf 28 separat angeordnet oder in diesen integriert und über ein oder mehrere Kabel oder kabellos mit diesen verbunden sein kann. Der Messkopf 28 weist einen in Z-Richtung in Richtung der Basis abragenden, taktilen Taststift 30 auf.
  • Der Taststift 30 ist dazu eingerichtet, mittels eines Tastkopfes 32 eine Oberfläche des Messobjektes 14 abzutasten. Der Tastkopf 32 ist beispielsweise eine Rubinkugel. Anstelle eines taktilen Taststiftes 30 kann jedoch auch ein optischer Messtaster, der das Messobjekt 14 optisch abtastet, eingesetzt werden.
  • Bei der Abtastung der Oberfläche des Messobjektes 14 erzeugt der Tastkopf 32 in dem Messkopf 28 ein elektrisches Messsignal, auf Basis dessen die dimensionellen Eigenschaften des zu vermessenden Messobjekts 14 ermittelt werden können. Zum Anfahren des Messpunktes an dem Messobjekt 14 wird der Messkopf 28 relativ zu der Werkstückaufnahme 12 bzw. zu dem Messobjekt 14 verfahren. Hierzu werden die Bewegungen des Portals 16 relativ zu der Basis 10, des Schlittens 18 relativ zu dem Portal 16 und der Pinole 20 relativ zu dem Schlitten 18 von einer Steuereinheit 40 durch eine Vielzahl von vordefinierten Steuerbefehlen beispielsweise über eine CNC-Ansteuerung gesteuert. Die Steuereinheit 40 ist in 1 beabstandet von dem Koordinatenmessgerät 100 als separate Einheit angeordnet und mit der Basis 10 des Koordinatenmessgeräts 100 über ein oder mehrere Kabel verbunden. Selbstverständlich kann diese Verbindung auch kabellos ausgestaltet sein.
  • Die Steuereinheit 40 weist eine Recheneinheit 34 sowie eine Anzeigevorrichtung 36 auf. Bei der Recheneinheit 34 handelt es sich typischerweise um einen Computer, der als PC bzw. physischer Server oder auch als Cloud-Server ausgestaltet sein kann. Bei der Anzeigevorrichtung 36 handelt es sich vorzugsweise um einen Bildschirm bzw. ein Display.
  • Typischerweise wird die Steuereinheit 40 nicht nur zur reinen Steuerung des Koordinatenmessgeräts 100, sondern auch im Vorfeld der Messung zur Unterstützung eines Benutzers bei der Erstellung eines Messplans verwendet.
  • Bevor eine Messung des Messobjekts 14 beginnt, wird der Messablauf typischerweise in einem Messplan festgelegt. Hierbei wird insbesondere festgelegt, welche geometrischen Elemente (Messelemente) des Messobjektes 14 gemessen werden sollen und welche dimensionellen Messgrößen (Prüfmerkmale) dieser Messelemente durch das Koordinatenmessgerät 100 quantitativ erfasst werden sollen. Diese Messelemente und Prüfmerkmale werden typischerweise von einem Nutzer manuell festgelegt. Sie können jedoch auch aus einem CAD-Datensatz automatisiert oder zumindest teilautomatisiert festgelegt werden.
  • Sobald die Messelemente und die Prüfmerkmale vorliegen, wird in der Steuereinheit der Messablauf berechnet. Hierbei wird insbesondere eine Kurve festgelegt, entlang derer der Tastkopf 32 verfahren werden soll. Diese Kurve wird typischerweise als mathematische Funktion festgelegt, besonders bevorzugt als eine Spline-Kurve. Ebenso wird dann in der Steuereinheit 40 der Geschwindigkeits- und oder Beschleunigungsverlauf entlang dieser Kurve berechnet. Dabei müssen u.a. die Dynamikgrenzen der einzelnen Bauteile und Achsen des Koordinatenmessgeräts 100 berücksichtigt werden. Für diese Berechnung wird im vorliegenden Fall das erfindungsgemäße Steuerungsverfahren eingesetzt, welches nachfolgend beispielhaft beschrieben wird.
  • Die vom Tastkopf 32 abzufahrende Kurve wird als mathematische Kurve x(τ) beschrieben, wobei τ ein skalarer Bahnparameter ist, der an einen Startpunkt der Kurve einen Startwert und einen Endpunkt der Kurve einen Endwert hat und dazwischen monoton ansteigt. Die Achsen i = 1 bis d beinhalten die bewegten Achsen. xi ist die Position der jeweiligen Achse. Das Verfahren ist jedoch nicht von der physikalischen Bedeutung des Werts abhängig. x ( τ ) = ( x 1 ( τ ) x d ( τ ) ) = ( x i ( τ ) )
    Figure DE102021102619A1_0001
  • Die örtlichen Ableitungen (Ableitungen nach τ) sind folglich x ' ( τ ) = x ( 1 ) ( τ ) = ( x i ' ( τ ) ) = ( d d τ x i ( τ ) )
    Figure DE102021102619A1_0002
    x ' ' ( τ ) = x ( 2 ) ( τ ) = ( x i ' ' ( τ ) ) = ( d 2 d τ 2 x i ( τ ) )
    Figure DE102021102619A1_0003
  • Was nun eigentlich berechnet werden soll, ist eine Reparametrisierung nach der Zeit t, also der Bahnparameter beschrieben als zeitabhängige Funktion ϕ(t) und letztendlich der Kurvenverlauf x ( t )
    Figure DE102021102619A1_0004
    in Abhängigkeit von der Zeit. τ = ϕ ( t )
    Figure DE102021102619A1_0005
    x ( t ) = x ( τ ) = x ( ϕ ( t ) )
    Figure DE102021102619A1_0006
  • Es versteht sich, dass der Kurvenverlauf x ( t )
    Figure DE102021102619A1_0007
    vektoriell und damit für jede Achse beschrieben wird. Nachfolgend wird der Einfachheit halber die Auswertung nur beispielhaft für eine Achse erläutert.
  • Aus den zeitlichen Ableitungen des zeitabhängigen Kurvenverlaufs x ( t )
    Figure DE102021102619A1_0008
    ergeben sich die Geschwindigkeit und die Beschleunigung beispielsweise des Tastkopfes 32 in Abhängigkeit von der Zeit. v ( t ) = x ˙ ( t ) = x ' ( ϕ ( t ) ) ϕ ˙ ( t )
    Figure DE102021102619A1_0009
    a ( t ) = x ¨ ( t ) = x ' ' ( ϕ ( t ) ) ϕ ˙ ( t ) 2 + x ' ( ϕ ( t ) ) ϕ ¨ ( t )
    Figure DE102021102619A1_0010
  • Hierbei beschreibt ϕ̇(t) die Bahnparametergeschwindigkeit als zeitliche Ableitung des Bahnparameters τ bzw. ϕ(t). ϕ̈(t) beschreibt die Bahnparameterbeschleunigung.
  • Die Dynamikgrenzen, also beispielsweise die maximal zulässige Achsgeschwindigkeit Vi der einzelnen Achsen i des Koordinatenmessgerätes 100 und die maximal zulässige Achsbeschleunigung Ai der einzelnen Achsen i lassen sich damit wie folgt formulieren: | v i | = | x i ' ( ϕ ( t ) ) ϕ ˙ ( t ) | V i
    Figure DE102021102619A1_0011
    | a i | = | x i ' ' ( ϕ ( t ) ) ϕ ˙ ( t ) 2 + x i ' ( ϕ ( t ) ) ϕ ¨ ( t ) | A i
    Figure DE102021102619A1_0012
  • Es ist zu beachten, dass die Grenzen der maximal zulässigen Geschwindigkeiten und Beschleunigungen Vi, Ai von Achse zu Achse unterschiedlich sein können. Sie können aber auch ortsabhängig und/oder zeitabhängig sein, was der Einfachheit halber in obigen Gleichungen (8) und (9) nicht angenommen wurde. Ferner können die oberen und unteren Grenzen der maximal zulässigen Achsgeschwindigkeit Vi,min und Vi,max und die oberen und unteren Grenzen der maximal zulässigen Achsbeschleunigung Ai,min und Ai,max sich je nach Charakteristik des Koordinatenmessgerätes 100 betragsmäßig voneinander unterscheiden. V i , m i n ( ) v i = x i ' ( ϕ ( t ) ) ϕ ˙ ( t ) V i , m a x ( )
    Figure DE102021102619A1_0013
    A i , m i n ( ) a i = x i ' ' ( ϕ ( t ) ) ϕ ˙ ( t ) 2 + x i ' ( ϕ ( t ) ) ϕ ¨ ( t ) A i , m a x ( )
    Figure DE102021102619A1_0014
  • Das Auflösen der Ungleichung (9) nach ϕ̈ führt zu folgender Forderung: s g n ( x i ' ) A i x i ' ' ϕ ˙ 2 x i ' ϕ ¨ s g n ( x i ' ) A i x i ' ' ϕ ˙ 2 x i ' i , x i ' 0
    Figure DE102021102619A1_0015
  • Da sich das zugrundeliegende mathematische Problem kaum analytisch lösen lassen wird, kann dieses mithilfe der Taylorentwicklung wie folgt vereinfacht werden: ϕ ( t + Δ t ) ϕ ( t ) + ϕ ˙ ( t ) Δ t + ϕ ¨ ( t ) 2 ( Δ t ) 2 +
    Figure DE102021102619A1_0016
  • Δt beschreibt hierbei ein Zeitinkrement zwischen den einzelnen betrachteten Zeitpunkten. Gesucht werden damit für ein Zeitinkrement Δt approximierte Werte für die Bahnparametergeschwindigkeit ϕ̇(t) und die Bahnparameterbeschleunigung ϕ̈(t). Δ τ ϕ ˙ ( t ) Δ t + ϕ ¨ ( t ) 2 ( Δ t ) 2
    Figure DE102021102619A1_0017
  • Die einzelnen Schritte für das erfindungsgemäße Steuerungsverfahren S101-S108 sind in dem in 2 gezeigten Ablaufdiagramm schematisch dargestellt. Als Ergebnis liefert dieses Verfahren letztendlich den zeitabhängigen Bahnparameterverlauf ϕ(t) sowie Kurvenverlauf x ( t ) ,
    Figure DE102021102619A1_0018
    der zu jedem Zeitpunkt mindestens die in den obigen Gleichungen (8) und (9) aufgestellten Kriterien erfüllt. Selbstverständlich können weitere Kriterien hinzukommen.
  • Ließe sich aus diesen Gleichungen auf ϕ̈(t) schließen, wäre das Problem über Integration mit Startwerten für ϕ(tstart) und ϕ̇(tstart) lösbar. Schon für diese Minimalanforderung ergibt sich jedoch ein Differenzial(un)gleichungssystem, von dem eine analytische Lösbarkeit nicht vorausgesetzt werden kann. Das erfindungsgemäße Steuerungsverfahren setzt deshalb auf eine zeitdiskrete nummerische Näherung.
  • Hierzu erfolgt zunächst in den Schritten S101-S103 ein Rückwärtsrechnen, bei dem für diverse Punkte entlang der Kurve von hinten nach vorne jeweils vorläufige Werte für die Bahnparametergeschwindigkeit bestimmt werden, wobei diese vorläufigen Bahnparametergeschwindigkeitswerte ϕ̇max(τ) jeweils ortsabhängig in Abhängigkeit von dem Bahnparameter τ bestimmt werden. Anschließend werden in den Schritten S104-107 zeitabhängige Werte für den Bahnparameter τ = ϕ(tnow) und die Bahnparametergeschwindigkeit ϕ̇(tnow) verwendet, um die maximale Bahnparameterbeschleunigung ϕ̈(tnow) abzuschätzen, das ϕ̇maxnow(+1)) nicht verletzt.
  • Im ersten Schritt des Rückwärtsrechnens S101 wird zunächst ein erster Punkt auf der Bahnkurve selektiert und zu diesem eine erste vorläufige Bahnparametergeschwindigkeit festgelegt. Als ersten Punkt, der den Startpunkt für das Rückwärtsrechnen bildet, kann der Endpunkt der Kurve selektiert werden. Dies muss jedoch nicht sein. Stattdessen kann auch ein anderer Zwischenpunkt, der weit genug von dem Startpunkt der Kurve entfernt ist, selektiert werden. Dies ist insbesondere dann sinnvoll oder gar nötig, wenn das tatsächliche Ende der Bahnkurve zum aktuellen Zeitpunkt noch gar nicht bekannt ist.
  • Ändert sich der Startpunkt des Rückwärtsrechnens, wird das Rückwärtsrechnen (Schritte S101-S103) einfach von neuem begonnen und ein neuer Punkt auf der Bahnkurve als „erster Punkt“ selektiert.
  • Die erste vorläufige Bahnparametergeschwindigkeit ϕ̇0 kann wie auch die erste vorläufige Bahnparameterbeschleunigung ϕ̈0 gleich Null gesetzt werden, also: ϕ 0 = ϕ ˙ 0 = ϕ ¨ 0 = 0
    Figure DE102021102619A1_0019
  • Im nächsten Schritt S102 des Rückwärtsrechnens wird dann über den Bahnparameter τ rückwärts mit einem fixen Bahnparameter-Inkrement Δτ < 0 iteriert. Dazu wird zunächst eine zweite vorläufige Bahnparametergeschwindigkeit ϕ̇max für einen zweiten Punkt, der näher an dem Startpunkt der Kurve liegt als der erste Punkt, in Abhängigkeit von der ersten vorläufigen Bahnparametergeschwindigkeit ϕ̇0 bestimmt. Die Bestimmung der zweiten vorläufigen Bahnparametergeschwindigkeit ̇ϕ̇max in diesem zweiten Punkt erfolgt vorzugsweise durch nummerische Näherung nicht nur in Abhängigkeit von der ersten vorläufigen Bahnparametergeschwindigkeit ϕ̇0, sondern auch in Abhängigkeit von den in dem betrachteten ersten Intervall zwischen dem ersten und dem zweiten Punkt definierten Dynamikgrenzen der Maschine und den geometrischen Eigenschaften der Bahnkurve in diesem ersten Intervall. Die in dem ersten Intervall definierten Dynamikgrenzen der Maschine umfassen vorzugsweise eine maximal zulässige Achsgeschwindigkeit Vi und eine maximal zulässige Achsbeschleunigung Ai der mindestens einen Achse der Maschine. Die geometrischen Eigenschaften der Kurve in dem ersten Intervall umfassen vorzugsweise die erste und die zweite Ableitung der mathematischen Funktion x i ' und x i ' ' .
    Figure DE102021102619A1_0020
  • Selbiger Schritt wird für alle weiteren Punkte k in Schritt S103 bis zum Erreichen des gewählten Startpunkts der Bahnkurve wiederholt.
  • Mathematisch betrachtet werden an die vorläufigen Bahnparametergeschwindigkeiten für alle Punkte k in den Schritten S102 und S103 zunächst Bedingungen mithilfe der folgenden (Un-)Gleichungen formuliert: ϕ ˙ V i | x i ' | i , x i ' 0
    Figure DE102021102619A1_0021
    ϕ ˙ 2 A i | x i ' ' | i , x i ' ' 0
    Figure DE102021102619A1_0022
    ϕ ˙ ϕ ¨ m x i ' + s g n ( x i ' ) A i x i ' ' i , x i ' 0, x i ' ' 0, s g n ( x i ' ) s g n ( x i ' ' ) , ϕ ¨ m = 0
    Figure DE102021102619A1_0023
  • Formel (16) ergibt sich durch Umstellung der oben erwähnten Formel (8) nach ϕ̇ und Weglassen der unteren Abschätzung. Formel (17) ergibt sich durch das Fordern von widerspruchsfreien Bedingungen für ϕ̈ nach Formel (12). Anders formuliert darf die Abschätzung nach oben niemals kleiner sein als die Abschätzung nach unten, woraus sich letztlich durch Umformen die Bedingung für ϕ.̇ ergibt. Formel (18) ergibt sich ebenfalls aus obiger Formel (12), und zwar durch das Fordern eines endlichen Höchstwerts für die untere Abschätzung von ϕ̈, woraus sich umgeformt eine weitere Einschränkung für ϕ̇ ergibt, sofern die Wurzel reell lösbar ist.
  • Letztendlich wird während des Rückwärtsrechnens jeweils der größte Wert von ϕ̇ bestimmt, der alle Bedingungen der obigen Formeln (16)-(18) erfüllt, das heißt der kleinste Wert der jeweils rechts des Ungleichheitszeichens stehenden Terme, ausgewertet für je alle Achsen, sofern zutreffend. Der Wert wird im Folgenden ϕ̇max,geo genannt.
  • Ferner wird jeweils der kleinste Wert von ϕ̈ bestimmt, der für alle ϕ̇ im Wertebereich von 0 bis zum oben ermittelten Maximalwert, die Bedingung (12) erfüllt, also anders gesagt das Maximum der unteren Schranke ± A i x i ' ' ϕ ˙ 2 x i '
    Figure DE102021102619A1_0024
    in dem jeweils betrachteten Intervall für alle Achsen, sofern zutreffend. Der Wert wird im Folgenden ϕ̈min genannt.
  • 3 veranschaulicht ein Zwischenergebnis des Rückwärtsrechnens in grafischer Form für eine beispielhafte Bahnkurve x(τ), dessen Ableitungen und die zugehörigen Bereiche der vorläufigen Bahnparametergeschwindigkeiten ϕ̇ und Bahnparameterbeschleunigung ϕ̈. Die beiden in 3 in dem vierten Diagramm von oben (ϕ̇ über τ) dargestellten Kurven 42 ergeben sich für das gezeigte Beispiel aus Formel (16). Die weitere darin eingezeichnete Einschränkung durch die Kurven 44 ergeben sich aus obiger Formel (17). Die vorläufigen Bahnparametergeschwindigkeiten entsprechen für die einzelnen Punkte bzw. Bahnparameterwerte τ jeweils dem kleinsten Wert, der sich aus beiden Kurven 42, 44 ergibt, also anders gesagt, jeweils der oberen Grenze des unter beiden Kurven 42, 44 schraffierten Bereichs.
  • Da die vorläufige Bahnparametergeschwindigkeit ϕ̇ selbst abgeschätzt werden muss, ergeben sich in dem unteren Diagramm in 3, das die Bahnparameterbeschleunigung ϕ̈ über τ anzeigt, verschiedene Bereiche für die obere Grenze der Bahnparameterbeschleunigung (Bereich 46) und die untere Grenze der Bahnparameterbeschleunigung (Bereich 48). Die genaue Lage von ϕ̈ ist letztendlich abhängig von ϕ̇. Durch die rechnerisch geforderten Einschränkungen wird jedoch erreicht, dass die untere Schranke (Bereich 48) nie größer als die obere Schranke (Bereich 46) ist.
  • Im Folgenden relevant ist vor allem die mindestens erlaubte Stärke des Bremsens, ausgedrückt durch ϕ̈min, welche in 3-5 durch die obere Begrenzungslinie 47 des Bereichs 48 ausgedrückt ist.
  • Unter zusätzlicher Einschränkung der Bedingungen aus obiger Formel (18) ergeben sich für die obere Grenze des schraffierten Bereichs in dem Diagramm ϕ̇ über τ des Weiteren die in 4 gezeigte zusätzliche Einschränkung, welche sich durch die Kurven 50 ergeben. In dem vorliegend gezeigten Beispiel haben diese weiteren Beschränkungen insbesondere Einfluss in den Wertebereichen 7-7,5 und 10-11 des Bahnparameters τ. Entsprechend verkleinern sich die Bereiche 46, 48 für die obere und untere Grenze von ϕ̈ für diese Bahnparameterbereiche in dem in 4 ganz unten dargestellten Diagramm (Φ̈ über T) und insbesondere ändert sich wie gefordert Φ̈min (Begrenzungslinie 47).
  • Mithilfe der mindestens erlaubten Stärke des Bremsens, ausgedrückt durch Φ̈min, und der vorläufigen Bahnparametergeschwindigkeit an der aktuellen Stelle, kann eine weitere Bedingung an die jeweils nächste vorläufige Bahnparametergeschwindigkeit formuliert werden. Anschaulich wird also bestimmt, welche Bahnparametergeschwindigkeit nach dem Durchlaufen des Intervalls Δτ mit der Bahnparameterbeschleunigung Φ̈min, maximal erreichbar ist. Hierzu wird Φ̈min als im Intervall konstant angenommen, wodurch Formel (14) als Zwischenschritt nach Δt. auflösbar ist und sich im Allgemeinen die gesuchten Werte dann über Integration über das Zeitintervall Δt ergeben. Der so ermittelte Wert wird im Folgenden Φ̇max,bremsen genannt.
  • Die vorläufige Bahnparametergeschwindigkeit Φ̇max ergibt sich dann aus dem kleineren der beiden Grenzwerte Φ̇max,geo und Φ̇max,bremsen .
  • So ergeben sich weitere Einschränkungen für die vorläufige Bahnparametergeschwindigkeit Φ̇max,k dadurch, dass die sich aus obigen Formeln (16)-(18) ergebenden Einschränkungen nicht nur für jeden einzelnen Punkt auf der Kurve betrachtet werden, sondern auch in jedem Punkt, also für jeden Bahnparameterwert τ der vorhergehende Verlauf der vorläufigen Bahnparametergeschwindigkeit Φ̇max,k-1 mit berücksichtigt wird. Im vorliegenden Ausführungsbeispiel hat dies insbesondere Auswirkungen in den Bereichen der Bahnparameterwerte T zwischen 5,5-7 bzw. 9-10, wie durch Vergleich der 4 und 5 deutlich wird. Die obere Grenze 45 des im Diagramm Φ̇ über τ dargestellten schraffierten Bereichs 43 in 5 zeigt somit das Endergebnis des Rückwärtsrechnens aus den Schritten S101-S103, also die vorläufigen Bahnparametergeschwindigkeiten Φ̇max für alle bisher ausgewerteten Bahnparameterwerte τ. Diese vorläufigen Bahnparametergeschwindigkeiten Φ̇max,k- werden gespeichert und in dem anschließenden Vorwärtsrechnen (Schritte S104-S107) wieder verwendet. Die Auswertung der so entstehenden Kurve erfolgt vorzugsweise linear interpolierend.
  • In den Schritten des Vorwärtsrechnens S104-S107 wird die Bahnkurve nun nicht mehr rückwärts entlang des Bahnparameters τ, sondern vorwärts in Abhängigkeit von der Zeit t „durchfahren“. Hierzu wird zunächst ausgehend von einem ersten Zeitpunkt t0 durch Addition eines Zeitinkrements Δt ein zweiter Zeitpunkt t1 bestimmt und für diesen zweiten Zeitpunkt ein Maximalwert des Bahnparameters T̂1 zu dem zweiten Zeitpunkt bestimmt. Hierbei ergibt sich T̂1durch Addition einer maximalen Positionsdifferenz Δτmax zu dem Bahnparameterwert für den ersten Zeitpunkt τ0, welcher üblicherweise dem Startwert, also dem Bahnparameterwert am Startpunkt der Kurve entspricht.
  • Diese maximale Positionsdifferenz Δτmax wird abgeschätzt, und zwar in Abhängigkeit der vorläufigen Bahnparametergeschwindigkeit Φ̇max,l , welche aus den Schritten des Rückwärtsrechnens S101-S103 erhalten wurde, der maximal zulässigen Achsgeschwindigkeit Vi der mindestens einen Achse, der maximal zulässigen Achsbeschleunigung Ai der mindestens einen Achse, der ersten Ableitung der mathematischen Funktion der Kurve zu den jeweils vorhergehenden Zeitpunkten x i '
    Figure DE102021102619A1_0025
    i und der zweiten Ableitung der Kurvenfunktion x i ' '
    Figure DE102021102619A1_0026
    zu den jeweils vorhergehenden Zeitpunkten. Als Zwischenschritt kann hierbei zunächst die Bahnparameterbeschleunigung nach oben abgeschätzt werden. Dies kann mithilfe der obigen Formel (12) sowie folgender Formel (19) geschehen ϕ ¨ ϕ ˙ B ϕ ˙ A Δ t
    Figure DE102021102619A1_0027
    wobei Φ̇B vorzugsweise die vorläufige Bahnparametergeschwindigkeit an der aktuellen Stelle und Φ̇A die aktuelle Bahnparametergeschwindigkeit ist. Die maximale Positionsdifferenz Δτmax ergibt sich dann durch Integration dieser vorläufigen maximalen Bahnparameterbeschleunigung über das bekannte Zeitintervall Δt.
  • Auf diese Weise lässt sich in den Schritten S105 die maximal zulässige Bahnparametergeschwindigkeit Φ̇max,l sowie die maximal zulässige Bahnparameterbeschleunigung Φ̈max,l für den ersten Kurvenabschnitt und durch Wiederholen im Schritt S107 für alle weiteren Kurvenabschnitte bestimmen. In Schritt S106 wird der Bahnparameterwert τ1 und die Bahnparametergeschwindigkeit Φ̇ zu dem zweiten Zeitpunkt in Abhängigkeit von der vorher bestimmten, maximal zulässigen Bahnparameterbeschleunigung Φ̈̇max in dem ersten Kurvenabschnitt, dem Zeitinkrement Δt und der Bahnparametergeschwindigkeit Φ zu dem ersten Zeitpunkt bestimmt. Dies geschieht durch Integration der maximal zulässigen Bahnparameterbeschleunigung 1Ymax in dem jeweiligen Kurvenabschnitt über das jeweilige Zeitinkrement Δt (mit obiger Formel (14)).
  • Durch Wiederholen der Schritte S104-S106 im Schritt S107 für alle weiteren Zeitpunkte tl lassen sich letztendlich die Bahnparameterwerte und Bahnparametergeschwindigkeiten Φ(t) und Φ̂(t) für alle Zeitpunkte abschätzen, so dass sich aus diesen im letzten Schritt S108 der Kurvenverlauf in Abhängigkeit von der Zeit bestimmen lässt. Der ermittelte Pfad nach dem Vorwärtsrechnen ist in 6 für das vorliegende Beispiel anhand der Linien 52 und 54 für Φ̇(t) und Φ̇(t) gezeigt.
  • Es versteht sich, dass die oben genannten Rechenschritte weiter vereinfacht werden können, oder durch weitere Einschränkungen beschränkt werden können.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • EP 0762250 A1 [0008, 0009, 0011, 0012, 0013, 0028]

Claims (14)

  1. Steuereinheit (40) zur Steuerung einer Bewegung einer Maschine (100) mit mindestens einer beweglichen Achse, wobei die Steuerung (40) dazu eingerichtet ist, ein Maschinenteil (32) entlang einer vorgegebenen Kurve zu bewegen, die als eine von einem skalaren Bahnparameter (τ) abhängige mathematische Funktion beschrieben ist, wobei der Bahnparameter an einem Startpunkt der Kurve einen Startwert hat, an einem Endpunkt der Kurve einen Endwert hat und dazwischen monoton ansteigt, wobei die Steuereinheit (40) ferner dazu eingerichtet ist, die folgenden Schritte auszuführen: (i) Definieren einer ersten vorläufigen Bahnparametergeschwindigkeit in einem ersten Punkt auf der Kurve, dem ein erster Bahnparameterwert zugewiesen ist; (ii) Bestimmen einer zweiten vorläufigen Bahnparametergeschwindigkeit für einen zweiten Punkt auf der Kurve, dem ein zweiter Bahnparameterwert zugewiesen ist, der kleiner als der erste Bahnparameterwert ist, in Abhängigkeit von der ersten vorläufigen Bahnparametergeschwindigkeit; (iii) Wiederholen von Schritt (ii) bis zum Erreichen des Startpunkts, wobei für weitere Punkte auf der Kurve, denen jeweils ein Bahnparameterwert zugewiesen ist, der kleiner als der Bahnparameterwert des jeweils vorhergehenden Punkts ist, eine in dem jeweiligen weiteren Punkt vorläufige Bahnparametergeschwindigkeit in Abhängigkeit von der vorläufigen Bahnparametergeschwindigkeit in dem jeweils vorhergehenden Punkt bestimmt wird; (iv) Abschätzen eines Maximalwerts des Bahnparameters zu einem zweiten Zeitpunkt, der sich durch Addition eines Zeitinkrements zu einem ersten Zeitpunkt, der dem Startpunkt der Kurve zugewiesen ist, ergibt, um einen ersten Kurvenabschnitt zu definieren, der durch Bahnparameterwerte zwischen dem Startwert und dem abgeschätzten Maximalwert des Bahnparameters zu dem zweiten Zeitpunkt beschrieben wird; (v) Bestimmen einer maximal zulässigen Bahnparameterbeschleunigung in dem ersten Kurvenabschnitt in Abhängigkeit von der vorläufigen Bahnparametergeschwindigkeit mindestens eines Punktes in dem ersten Kurvenabschnitt; (vi) Bestimmen des Bahnparameterwerts und der Bahnparametergeschwindigkeit zu dem zweiten Zeitpunkt in Abhängigkeit von a) der maximal zulässigen Bahnparameterbeschleunigung in dem ersten Kurvenabschnitt, b) dem Zeitinkrement und c) einer Bahnparametergeschwindigkeit zu dem ersten Zeitpunkt; (vii) Wiederholen der Schritte (iv)-(vi) für weitere, zeitlich nach dem zweiten Zeitpunkt liegende Zeitpunkte, wobei der Maximalwert des Bahnparameters zu jedem weiteren Zeitpunkt, der sich jeweils durch Addition eines weiteren Zeitinkrements zu dem jeweils vorhergehenden Zeitpunkt ergibt, abgeschätzt wird, um jeweils einen weiteren Kurvenabschnitt zu definieren, der durch Bahnparameterwerte zwischen dem Bahnparameterwert, der bezüglich des jeweils vorhergehenden Zeitpunkt bestimmt wurde, und dem Maximalwert des Bahnparameters zu dem jeweiligen weiteren Zeitpunkt beschrieben wird, wobei ferner eine maximal zulässige Bahnparameterbeschleunigung in jedem weiteren Kurvenabschnitt bestimmt wird, und wobei der Bahnparameterwert und die Bahnparametergeschwindigkeit zu jedem weiteren Zeitpunkt in Abhängigkeit von a) der maximal zulässigen Bahnparameterbeschleunigung in dem jeweiligen Kurvenabschnitt, b) dem Zeitinkrement und c) einer Bahnparametergeschwindigkeit zu dem jeweils vorhergehenden Zeitpunkt bestimmt wird; und (viii) Bestimmen des Kurvenverlaufs anhand der im Schritt (vii) für die verschiedenen Zeitpunkte bestimmten Bahnparameterwerte.
  2. Steuereinheit gemäß Anspruch 1, wobei die Kurve in jedem Punkt zwischen dem Startpunkt und dem Endpunkt jeweils zweimal stetig differenzierbar ist.
  3. Steuereinheit gemäß Anspruch 1 oder 2, wobei die Kurve eine Spline-Kurve ist.
  4. Steuereinheit gemäß einem der vorstehenden Ansprüche, wobei die Steuereinheit (40) ferner dazu eingerichtet ist, in Schritt (i) den Endwert als ersten Bahnparameterwert zu verwenden und die erste vorläufige Bahnparametergeschwindigkeit auf null zu setzen.
  5. Steuereinheit gemäß einem der vorstehenden Ansprüche, wobei die Steuereinheit (40) ferner dazu eingerichtet ist, die zweite vorläufige Bahnparametergeschwindigkeit in Schritt (ii) durch numerische Näherung zu bestimmen.
  6. Steuereinheit gemäß einem der vorstehenden Ansprüche, wobei die Steuereinheit (40) ferner dazu eingerichtet ist, die zweite vorläufige Bahnparametergeschwindigkeit in Schritt (ii) auch in Abhängigkeit von in einem ersten Intervall zwischen dem ersten und dem zweiten Punkt definierten Dynamikgrenzen und geometrischen Eigenschaften der Kurve in dem ersten Intervall zu bestimmen.
  7. Steuereinheit gemäß Anspruch 6, wobei die in dem ersten Intervall definierten Dynamikgrenzen eine maximal zulässige Achsgeschwindigkeit und/oder Achsbeschleunigung der mindestens einen Achse der Maschine aufweist.
  8. Steuereinheit gemäß Anspruch 6 oder7, wobei die geometrischen Eigenschaften der Kurve in dem ersten Intervall eine erste und/oder zweite Ableitung der mathematischen Funktion der Kurve in dem ersten Intervall aufweist.
  9. Steuereinheit gemäß einem der vorstehenden Ansprüche, wobei die Steuereinheit (40) ferner dazu eingerichtet ist, den Maximalwert des Bahnparameters zu jedem der Zeitpunkte in Abhängigkeit von zumindest einem der folgenden Parameter zu bestimmen: der vorläufigen Bahnparametergeschwindigkeit mindestens eines Kurvenpunktes, einer maximal zulässige Achsgeschwindigkeit der mindestens einen Achse, einer maximal zulässige Achsbeschleunigung der mindestens einen Achse, einer ersten Ableitung der mathematischen Funktion der Kurve zu den jeweils vorhergehenden Zeitpunkten und einer zweiten Ableitung der mathematischen Funktion der Kurve zu den jeweils vorhergehenden Zeitpunkten.
  10. Steuereinheit gemäß einem der vorstehenden Ansprüche, wobei die Steuereinheit (40) ferner dazu eingerichtet ist, den Bahnparameterwert und die Bahnparametergeschwindigkeit zu jedem Zeitpunkt durch Integration der maximal zulässigen Bahnparameterbeschleunigung in dem jeweiligen Kurvenabschnitt über das jeweilige Zeitinkrement zu bestimmen.
  11. Maschine (100) mit einer Steuereinheit (40) gemäß einem der vorstehenden Ansprüche.
  12. Maschine gemäß Anspruch 11, wobei die Maschine (100) eine Vorrichtung zum dimensionellen Messen umfasst.
  13. Steuerungsverfahren zur Steuerung einer Bewegung einer Maschine (100) mit mindestens einer beweglichen Achse, wobei ein Maschinenteil (32) entlang einer vorgegebenen Kurve bewegt wird, die als eine von einem skalaren Bahnparameter (τ) abhängige mathematische Funktion beschrieben ist, wobei der Bahnparameter an einem Startpunkt der Kurve einen Startwert hat, an einem Endpunkt der Kurve einen Endwert hat und dazwischen monoton ansteigt, und wobei das Verfahren folgende Schritte aufweist: (i) Definieren einer ersten vorläufigen Bahnparametergeschwindigkeit in einem ersten Punkt auf der Kurve, dem ein erster Bahnparameterwert zugewiesen ist; (ii) Bestimmen einer zweiten vorläufigen Bahnparametergeschwindigkeit für einen zweiten Punkt auf der Kurve, dem ein zweiter Bahnparameterwert zugewiesen ist, der kleiner als der erste Bahnparameterwert ist, in Abhängigkeit von der ersten vorläufigen Bahnparametergeschwindigkeit; (iii) Wiederholen von Schritt (ii) bis zum Erreichen des Startpunkts, wobei für weitere Punkte auf der Kurve, denen jeweils ein Bahnparameterwert zugewiesen ist, der kleiner als der Bahnparameterwert des jeweils vorhergehenden Punkts ist, eine in dem jeweiligen weiteren Punkt vorläufige Bahnparametergeschwindigkeit in Abhängigkeit von der vorläufigen Bahnparametergeschwindigkeit in dem jeweils vorhergehenden Punkt bestimmt wird; (iv) Abschätzen eines Maximalwerts des Bahnparameters zu einem zweiten Zeitpunkt, der sich durch Addition eines Zeitinkrements zu einem ersten Zeitpunkt, der dem Startpunkt der Kurve zugewiesen ist, ergibt, um einen ersten Kurvenabschnitt zu definieren, der durch Bahnparameterwerte zwischen dem Startwert und dem abgeschätzten Maximalwert des Bahnparameters zu dem zweiten Zeitpunkt beschrieben wird; (v) Bestimmen einer maximal zulässigen Bahnparameterbeschleunigung in dem ersten Kurvenabschnitt in Abhängigkeit von der vorläufigen Bahnparametergeschwindigkeit mindestens eines Punktes in dem ersten Kurvenabschnitt; (vi) Bestimmen des Bahnparameterwerts und der Bahnparametergeschwindigkeit zu dem zweiten Zeitpunkt in Abhängigkeit von a) der maximal zulässigen Bahnparameterbeschleunigung in dem ersten Kurvenabschnitt, b) dem Zeitinkrement und c) einer Bahnparametergeschwindigkeit zu dem ersten Zeitpunkt; (vii) Wiederholen der Schritte (iv)-(vi) für weitere, zeitlich nach dem zweiten Zeitpunkt liegende Zeitpunkte, wobei der Maximalwert des Bahnparameters zu jedem weiteren Zeitpunkt, der sich jeweils durch Addition eines weiteren Zeitinkrements zu dem jeweils vorhergehenden Zeitpunkt ergibt, abgeschätzt wird, um jeweils einen weiteren Kurvenabschnitt zu definieren, der durch Bahnparameterwerte zwischen dem Bahnparameterwert, der bezüglich des jeweils vorhergehenden Zeitpunkt bestimmt wurde, und dem Maximalwert des Bahnparameters zu dem jeweiligen weiteren Zeitpunkt beschrieben wird, wobei ferner eine maximal zulässige Bahnparameterbeschleunigung in jedem weiteren Kurvenabschnitt bestimmt wird, und wobei der Bahnparameterwert und die Bahnparametergeschwindigkeit zu jedem weiteren Zeitpunkt in Abhängigkeit von a) der maximal zulässigen Bahnparameterbeschleunigung in dem jeweiligen Kurvenabschnitt, b) dem Zeitinkrement und c) einer Bahnparametergeschwindigkeit zu dem jeweils vorhergehenden Zeitpunkt bestimmt wird; und (viii) Bestimmen des Kurvenverlaufs anhand der im Schritt (vii) für die verschiedenen Zeitpunkte bestimmten Bahnparameterwerte.
  14. Computerprogrammprodukt, das Software aufweist, die dazu eingerichtet ist, bei Ausführung auf einem Computer das Verfahren gemäß Anspruch 13 auszuführen.
DE102021102619.9A 2021-02-04 2021-02-04 Steuereinheit und steuerungsverfahren Withdrawn DE102021102619A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102021102619.9A DE102021102619A1 (de) 2021-02-04 2021-02-04 Steuereinheit und steuerungsverfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021102619.9A DE102021102619A1 (de) 2021-02-04 2021-02-04 Steuereinheit und steuerungsverfahren

Publications (1)

Publication Number Publication Date
DE102021102619A1 true DE102021102619A1 (de) 2022-08-04

Family

ID=82402945

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021102619.9A Withdrawn DE102021102619A1 (de) 2021-02-04 2021-02-04 Steuereinheit und steuerungsverfahren

Country Status (1)

Country Link
DE (1) DE102021102619A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022110546A1 (de) 2022-04-29 2023-11-02 Carl Zeiss Industrielle Messtechnik Gmbh Steuereinheit und Steuerungsverfahren

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0762250A1 (de) 1995-08-11 1997-03-12 Carl Zeiss Verfahren zur Steuerung von Koordinatenmessgeräten
DE102009024130A1 (de) 2009-05-29 2010-12-02 Technische Universität Ilmenau Verfahren zur echtzeitfähigen Bahnplanung kontinuierlicher, rucksprungfreier Sollwerttrajektorien
DE102014103370A1 (de) 2014-03-12 2015-09-17 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren und Vorrichtung zur zeitdiskreten Steuerung eines Manipulators
DE102015103451A1 (de) 2015-03-10 2016-09-15 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum zeitdiskreten Kontrollieren antreibbarer Achsen, Computerprogrammprodukt und Vorrichtung zur Durchführung eines derartigen Verfahrens

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0762250A1 (de) 1995-08-11 1997-03-12 Carl Zeiss Verfahren zur Steuerung von Koordinatenmessgeräten
DE102009024130A1 (de) 2009-05-29 2010-12-02 Technische Universität Ilmenau Verfahren zur echtzeitfähigen Bahnplanung kontinuierlicher, rucksprungfreier Sollwerttrajektorien
DE102014103370A1 (de) 2014-03-12 2015-09-17 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren und Vorrichtung zur zeitdiskreten Steuerung eines Manipulators
DE102015103451A1 (de) 2015-03-10 2016-09-15 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum zeitdiskreten Kontrollieren antreibbarer Achsen, Computerprogrammprodukt und Vorrichtung zur Durchführung eines derartigen Verfahrens

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022110546A1 (de) 2022-04-29 2023-11-02 Carl Zeiss Industrielle Messtechnik Gmbh Steuereinheit und Steuerungsverfahren

Similar Documents

Publication Publication Date Title
EP0211202B1 (de) Steuerung für Koordinatenmessgeräte
EP1498691B1 (de) Korrekturverfahren für Koordinatenmessgeräte
DE112016002797T5 (de) Kalibriervorrichtung und robotersystem, das eine solche verwendet
DE102007057093A1 (de) Verfahren zum Kalibrieren eines Koordinatenmessgerätes
EP1658471B1 (de) Verfahren zur ermittlung systematischer geometrischer abweichungen in technischen mehrkörpersystemen
DE102007004934B4 (de) Prüfverfahren für positionierende Maschinen
DE4001433A1 (de) Korrekturverfahren fuer koordinatenmessgeraete
DE102016220097A1 (de) Bestimmung einer Position eines beweglichen Teils eines Koordinatenmessgerätes
DE102014220313A1 (de) Erfassung von geometrischen Abweichungen einer Bewegungsführung bei einemKoordinatenmessgerät oder einer Werkzeugmaschine
EP1277028B1 (de) Koordinatenmessgerät oder werkzeugmaschine
EP2561311B1 (de) Betrieb einer koordinatenmessmaschine oder einer werkzeugmaschine
DE102016116523A1 (de) Vibrationsanalysevorrichtung, die einen Zyklus der Werkzeugvibration in Bezug zum Werkstück berechnet
DE102019110508A1 (de) Verfahren zum Steuern eines Koordinatenmessgerätes und Koordinatenmessgerät
EP1316777B1 (de) Verfahren und Vorrichtung zum räumlichen Vermessen von Werkstücken an einer Werkzeugmaschine
DE102021102619A1 (de) Steuereinheit und steuerungsverfahren
EP1244895B1 (de) Verfahren und vorrichtung zur festlegung von messpositionen für die vermessung eines objektes oder eines teiles davon
EP3835900B1 (de) Verfahren und vorrichtung zur prüfung von werkstücken
DE102005060980B4 (de) Verfahren und System zur Bestimmung eines kollisionsfreien dreidimensionalen Raumvolumens entlang eines Bewegungspfades gegenüber einer realen Umgebung
DE4006949C5 (de) Verfahren zum punktweisen Abtasten der Oberfläche eines Werkstücks
DE102020006496A1 (de) Anzeigeeinheit
DE102017009751A1 (de) Numerische Steuervorrichtung
DE102018208189B4 (de) Verfahren und Vorrichtung zum Ermitteln der Torsionsfehler einer Maschinenachse
DE3634688A1 (de) Verfahren und einrichtung zur messung von verzahnungen mit hilfe eines koordinatenmessgeraetes
EP2118618B1 (de) Verfahren zum ermitteln von messstellen
DE3123801A1 (de) Verfahren und vorrichtung zur messung der koordinaten vorgegebener messpunkte an einem werkstueck

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R083 Amendment of/additions to inventor(s)
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee