Verfahren zum Programmieren einer Verfahrbewegung eines Handhabungsgeräts Method for programming a movement of a handling device
Vorliegende Erfindung betrifft ein Verfahren zum Programmieren einer Verfahrbewegung eines Handhabungsgeräts. Das Handhabungsgerät führt ein Bearbeitungsaggregat abhängig von der programmierten Verfahrbewegung entlang einer Kontur eines Werkstücks. Die Befehle für die Verfahrbewegung werden anhand von Soll-Abmessungen des Werkstücks zumindest im Bereich der Kontur automatisch generiert. Das Handhabungsgerät wird mit den generierten Befehlen programmiert.The present invention relates to a method for programming a movement of a handling device. The handling device guides a processing unit depending on the programmed traversing movement along a contour of a workpiece. The commands for the traversing movement are generated automatically based on the desired dimensions of the workpiece, at least in the area of the contour. The handling device is programmed with the generated commands.
Das Handhabungsgerät kann als ein beliebiger Roboter (z.B. Gelenkarmroboter, Portalroboter oder Scara-Roboter), als eine parallele kinematische Maschine (z.B. Tripod, Quadrapod oder Hexapod) oder als ein frei im Raum beweglicher Roboter ausgebildet sein. Das Bearbeitungsaggregat kann für jegliche Form der berührenden oder nicht berührenden Bearbeitung eines Werkstücks ausgelegt sein. Insbesondere ist jedoch daran gedacht, dass das Bearbeitungsaggregat als ein Entgratungswerkzeug zum Entgraten des Werkstücks entlang der Kontur ausgebildet ist. Entsprechende Entgratungswerkzeuge sind als sogenannte Fadenfräser aus der EP 0 925 163 B1 und als sogenannter Messerkopf aus der EP 1 075 364 B . bekannt. Die Kontur, entlang der das Bearbeitungsaggregat von dem Handhabungsgerät geführt wird, ist auf keine besondere Form oder Erstreckung im dreidimensionalen Raum beschränkt.The handling device can be designed as any robot (e.g. articulated arm robot, portal robot or Scara robot), as a parallel kinematic machine (e.g. tripod, quadrapod or hexapod) or as a robot that can move freely in space. The processing unit can be designed for any form of contact or non-contact processing of a workpiece. In particular, however, it is contemplated that the machining unit is designed as a deburring tool for deburring the workpiece along the contour. Corresponding deburring tools are known as thread milling cutters from EP 0 925 163 B1 and as so-called knife heads from EP 1 075 364 B. known. The contour along which the processing unit is guided by the handling device is not restricted to any particular shape or extension in three-dimensional space.
Um die Programmierung eines Handhabungsgeräts zu erleichtern und zu beschleunigen, ist es aus dem Stand der Technik bekannt, die der Verfahrbewegung entsprechenden Programmierbefehle automatisch generieren zu lassen. Dabei bedient man sich in der Regel CAD (Computer Aided Design.-Daten des zu bearbeitenden Werkstücks bzw. zumindest der Kontur des Werkstücks, entlang der das Bearbeitungsaggregat von dem Handhabungsgerät geführt wird. Die CAD-Daten
beinhalten Informationen über die Soll-Abmessungen des Werkstücks. Die tatsächlichen Ist-Abmessungen des Werkstücks sind jedoch von Parametern abhängig, die nicht Bestandteil der CAD-Daten sind und deshalb keine Berücksichtigung bei der Generierung der Programmierbefehle finden. Solche Parameter sind beispielsweise die Temperatur oder die Härte des Materials des Werkstücks und werden nachfolgend als Zustandsdaten bezeichnet.In order to simplify and accelerate the programming of a handling device, it is known from the prior art to have the programming commands corresponding to the travel movement generated automatically. As a rule, CAD (computer aided design.) Data of the workpiece to be machined or at least the contour of the workpiece along which the processing unit is guided by the handling device are used. The CAD data contain information about the target dimensions of the workpiece. However, the actual actual dimensions of the workpiece depend on parameters that are not part of the CAD data and are therefore not taken into account when generating the programming commands. Such parameters are, for example, the temperature or the hardness of the material of the workpiece and are referred to below as status data.
Eine Veränderung dieser Zustandsdaten kann unter bestimmten Umständen zu einer starken Abweichung der Ist-Abmessungen von den Soll-Abmessungen führen. Dies ist beispielsweise bei Kunststoffteilen der Fall, die unter hohen Temperaturen geformt werden und nach dem Entformen langsam abkühlen. Während des Abkühlvorgangs schrumpft das Teil deutlich. Um Bearbeitungszeit und damit Herstellungskosten zu sparen, werden solche Teile jedoch noch während des Abkühlvorgangs weiter bearbeitet. Die Weiterbearbeitung umfasst beispielsweise das Entgraten bzw. Entfernen von Verschlusskanten von Formen, die zur Herstellung des Kunststoffteils verwendet werden. Zum Entgraten muss ein Entgratungswerkzeug mit hoher Genauigkeit entlang der Kontur der Verschlusskanten geführt werden. Das bedeutet, dass die Verfahrbahn den schrumpfenden Abmessungen und damit der abnehmenden Temperatur des Werkstücks angepasst werden muss.Under certain circumstances, changing these status data can lead to a large deviation of the actual dimensions from the target dimensions. This is the case, for example, with plastic parts that are molded at high temperatures and slowly cool down after removal from the mold. The part shrinks significantly during the cooling process. In order to save processing time and thus manufacturing costs, such parts are still processed during the cooling process. The further processing includes, for example, deburring or removing the closing edges of molds which are used to produce the plastic part. For deburring, a deburring tool must be guided with high accuracy along the contour of the sealing edges. This means that the trajectory has to be adapted to the shrinking dimensions and thus the decreasing temperature of the workpiece.
Da beim Stand der Technik bei der Generierung der Verfahrbefehle für das Handhabungsgerät lediglich die Soll-Abmessungen des Werkstücks in Form der CAD- Daten berücksichtigt werden, kann dies zu einer fehlerhaften Prorammierung der Verfahrbewegung des Handhabungsgeräts und damit zu einem ungenauen Abfahren der tatsächlichen Kontur des Werkstücks führen. Dies wirkt sich in der Praxis in einem nur unzureichend bearbeiteten Werkstück, beispielsweise einem nur unzureichend entgrateten Kunststoffteil aus.
Der vorliegenden Erfindung liegt deshalb die Aufgabe zugrunde, ein Handhabungsgerät einerseits zwar schnell und auf einfache Weise, andererseits aber auch mit einer möglichst hohen Genauigkeit zu programmieren.Since only the target dimensions of the workpiece in the form of the CAD data are taken into account in the generation of the movement commands for the handling device in the prior art, this can lead to incorrect programming of the movement of the handling device and thus to an inaccurate tracing of the actual contour of the workpiece to lead. In practice, this has an effect on an inadequately machined workpiece, for example an inadequately deburred plastic part. The present invention is therefore based on the object, on the one hand, to program a handling device quickly and easily, on the other hand, but also with the greatest possible accuracy.
Zur Lösung dieser Aufgabe wird ausgehend von dem Verfahren zum Programmieren einer Verfahrbewegung eines Handhabungsgeräts der eingangs genannten Art vorgeschlagen, dass die Befehle für die Verfahrbewegung zusätzlich anhand von Zustandsdaten des Werkstücks, welche Informationen über den Zustand des Werkstücks zumindest im Bereich der Kontur beinhalten, automatisch generiert werden.To solve this problem, starting from the method for programming a movement of a handling device of the type mentioned at the beginning, it is proposed that the commands for the movement additionally be generated automatically on the basis of status data of the workpiece, which contain information about the status of the workpiece at least in the area of the contour become.
Erfindungsgemäß wird also vorgeschlagen, die Programmierbefehle außer in Abhängigkeit von den Soll-Abmessungen des Werkstücks auch in Abhängigkeit von bestimmten Zustandsdaten des Werkstücks automatisch zu generieren. Die Zustandsdaten beinhalten Informationen über den Zustand des Werkstücks, wie beispielsweise Temperatur oder Material des Werkstücks, sowie Zug- oder Druckspannungen, die in dem Werkstück wirken. Anhand dieser Zustandsdaten können die Soll-Abmessungen korrigiert werden, im Idealfall können sogar die Ist- Abmessungen des Werkstücks ermittelt werden. Durch die Berücksichtigung der Zustandsdaten ist somit - unter Beibehaltung des vollautomatischen Ablaufs - eine derartige Programmierung des Handhabungsgeräts möglich, dass das Handhabungsgerät das Bearbeitungsaggregat auf einer wesentlich genaueren Verfahrbahn entlang der Kontur des Werkstücks führen kann.According to the invention, it is therefore proposed to generate the programming commands automatically, as a function of the desired dimensions of the workpiece and also as a function of certain status data of the workpiece. The status data contain information about the status of the workpiece, such as the temperature or material of the workpiece, as well as tensile or compressive stresses that act in the workpiece. The target dimensions can be corrected on the basis of these status data; in the ideal case, the actual dimensions of the workpiece can even be determined. By taking the status data into account, the handling device can be programmed, while maintaining the fully automatic sequence, such that the handling device can guide the processing unit along a much more precise trajectory along the contour of the workpiece.
Die Zustandsdaten sind beispielsweise in einem Datenspeicher in Form eines Kennfeldes abgelegt. Es ist aber auch denkbar, dass die Zustandsdaten mittels geeigneter Sensoren gemessen werden. Alternativ können die Zustandsdaten auch anhand anderer erfasster Größen modelliert werden.
Gemäß einer vorteilhaften Weiterbildung der vorliegenden Erfindung wird vorgeschlagen, dass die Zustandsdaten Informationen über die Temperatur des Werkstücks zumindest im Bereich der Kontur beinhalten.The status data are stored, for example, in a data memory in the form of a map. However, it is also conceivable for the state data to be measured using suitable sensors. Alternatively, the status data can also be modeled using other recorded variables. According to an advantageous development of the present invention, it is proposed that the status data contain information about the temperature of the workpiece, at least in the area of the contour.
Alternativ oder zusätzlich wird vorgeschlagen, dass die Zustandsdaten Informationen über das Material des Werkstücks zumindest im Bereich der Kontur beinhalten.Alternatively or additionally, it is proposed that the status data contain information about the material of the workpiece, at least in the area of the contour.
Besonders vorteilhaft für eine hochgenaue Programmierung der Verfahrbahn des Handhabungsgeräts ist es, wenn die Zustandsdaten Informationen über die Ist- Abmessungen des Werkstücks zumindest im Bereich der Kontur beinhalten. Die Ist- Abmessungen können beispielsweise mittels einer optischen Bilderfassungs- und Bildverarbeitungseinrichtung erfasst werden.It is particularly advantageous for high-precision programming of the trajectory of the handling device if the status data contain information about the actual dimensions of the workpiece, at least in the area of the contour. The actual dimensions can be captured, for example, by means of an optical image capturing and image processing device.
Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass die Zustandsdaten zeitabhängig sind. Zum Beispiel ein geformtes Kunststoffteil wird unmittelbar nach dem Entformen eine kontinuierlich sinkende Temperatur aufweisen. Für gleiche Teile und unter gleichen Umgebungsbedingungen wird der zeitliche Temperaturverlauf der einzelnen Teile nahezu identisch sein. Es ist also denkbar, für bestimmte Werkstücke und unter bestimmten Umgebungsbedingungen einen typischen Zustandsverlauf über der Zeit aufzunehmen. Im Rahmen der Programmierung des Handhabungsgeräts können die aktuellen Größen der Zustandsdaten dann anhand des aufgenommenen Zustandsverlaufs in Abhängigkeit von der Zeit ermittelt und bei der Generierung der Programmierbefehle berücksichtigt werden. Auf diese Weise kann auf ein ständiges Messen oder Modellieren der Zustandsdaten während der Programmierung verzichtet werden.According to a preferred embodiment of the present invention, it is proposed that the status data are time-dependent. For example, a molded plastic part will have a continuously decreasing temperature immediately after removal from the mold. For the same parts and under the same environmental conditions, the temperature profile of the individual parts over time will be almost identical. It is therefore conceivable to record a typical state curve over time for certain workpieces and under certain environmental conditions. In the course of programming the handling device, the current sizes of the state data can then be determined on the basis of the recorded state course as a function of time and can be taken into account when generating the programming commands. In this way, there is no need to constantly measure or model the status data during programming.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass die Zustandsdaten ortsabhängig sind. Auch in diesem Fall wird beispielsweise der örtliche Temperaturverlauf frisch geformter Kunststoffteile für
gleiche Teile nahezu identisch sein. Es ist also denkbar, für bestimmte Werkstücke einen typischen örtlichen Zustandsverlauf aufzunehmen. Im Rahmen der Programmierung des Handhabungsgeräts können die aktuellen Größen der Zustandsdaten dann anhand des aufgenommenen Zustandsverlaufs in Abhängigkeit von der Position des Bearbeitungsaggregats ermittelt und bei der Generierung der Programmierbefehle berücksichtigt werden. Auf diese Weise kann auf ein ortsabhängiges Messen oder Modellieren der Zustandsdaten während der Programmierung verzichtet werden.According to a further preferred embodiment of the present invention, it is proposed that the status data are location-dependent. In this case too, the local temperature profile for freshly molded plastic parts is used for same parts are almost identical. It is therefore conceivable to record a typical local state course for certain workpieces. As part of the programming of the handling device, the current sizes of the status data can then be determined on the basis of the recorded status profile as a function of the position of the processing unit and can be taken into account when generating the programming commands. In this way, location-dependent measurement or modeling of the status data during programming can be dispensed with.
Alternativ wird vorgeschlagen, dass die Zustandsdaten gemessen oder modelliert werden. Dazu werden geeignete Messvorrichtungen zum Erfassen der Zustandsdaten in Abhängigkeit von der Zeit und/oder dem Ort des Bearbeitungsaggregats eingesetzt. Die Art der verwendeten Messvorrichtungen hängt ab von der Art der zu erfassenden Zustandsdaten.Alternatively, it is proposed that the state data be measured or modeled. For this purpose, suitable measuring devices are used to record the status data as a function of the time and / or the location of the processing unit. The type of measuring devices used depends on the type of condition data to be recorded.
Gemäß einer anderen vorteilhaften Weiterbildung der vorliegenden Erfindung wird vorgeschlagen, dass die Zustandsdaten für eine zukünftige Programmierung korrigiert werden, während das Bearbeitungsaggregat von dem Handhabungsgerät abhängig von den programmierten Verfahrbewegungen entlang der Kontur des Werkstücks geführt wird. So ist es denkbar, dass beispielsweise die Kraft, die zum Bewegen des Bearbeitungsaggregats auf der programmierten Verfahrbahn aufgewandt werden muss, während der Verfahrbewegung aufgenommen wird. Bei einem Bearbeitungsaggregat, das eine schneidende Bearbeitung des Werkstücks ausührt, kann ein Anstieg dieser Kraft ein Hinweis darauf sein, dass das Bearbeitungsaggregat zu dicht an dem Werkstück angeordnet ist und sich zu tief in das Werkstück hineinschneidet. Falls die Kraft oder die Steigung des Kraftanstiegs einen vorgebbaren Wert übersteigt, kann die progammierte Verfahrbewegung bzw. können die Befehle korrigiert werden. Die Korrektur kann entweder automatisch oder nach Rückfrtage bei einem Bediener des Bearbeitungsaggregats erfolgen. Beim nächsten zu bearbeitenden Werkstück greift das
Handhabungsgerät dann auf die korrigierten Befehle zurück und führt das Bearbeitungsaggregat entlang der korrigierten Verfahrbahn.According to another advantageous development of the present invention, it is proposed that the status data be corrected for future programming, while the processing unit is guided along the contour of the workpiece by the handling device depending on the programmed traversing movements. It is thus conceivable that, for example, the force that must be used to move the processing unit on the programmed trajectory is absorbed during the traversing movement. In the case of a machining unit that carries out a cutting machining of the workpiece, an increase in this force can be an indication that the machining unit is arranged too close to the workpiece and cuts too deep into the workpiece. If the force or the gradient of the force increase exceeds a predeterminable value, the programmed traversing movement or the commands can be corrected. The correction can be done either automatically or after an inquiry with an operator of the processing unit. This applies to the next workpiece to be machined The handling device then returns to the corrected commands and guides the processing unit along the corrected trajectory.
Gemäß einer weiteren bevorzugten Ausführungsform wird vorgeschlagen, dass das Bearbeitungsaggregat von dem Handhabungsgerät abhängig von den programmierten Verfahrbewegungen entlang der Kontur des Werkstücks zunächst im virtuellen Raum geführt wird. Die Verfahrbewegung im virtuellen, vorzugsweise 3-dimensionalen Raum kann auf einem Bildschirm eines Computers dargestellt werden. Diese Ausführungsform hat den Vorteil, dass die programmierte Verfahrbahn überprüft werden kann, ohne tatsächlich Werkstücke zu bearbeiten. Die virtuelle Simulation geht schneller als das reelle Abfahren der Verfahrbahn, und es wird kein Ausschuss produziert. Mit den Befehlen für die automatisch programmierte und simulativ korrigierte Verfahrbahn können die Handhabungsgeräte dann programmiert werden. Bei dezentral angeordneten Handhabungsgeräten können die Befehle beispielsweise über das Internet an die Handhabungsgeräte übermittelt werden.According to a further preferred embodiment, it is proposed that the processing unit is initially guided in the virtual space by the handling device depending on the programmed movement movements along the contour of the workpiece. The movement in virtual, preferably 3-dimensional space can be displayed on a screen of a computer. This embodiment has the advantage that the programmed trajectory can be checked without actually machining workpieces. The virtual simulation is faster than the real traversing of the track, and no rejects are produced. The handling devices can then be programmed with the commands for the automatically programmed and simulatively corrected trajectory. In the case of decentralized handling devices, the commands can be transmitted to the handling devices via the Internet, for example.
Es wird vorgeschlagen, dass die Verfahrbewegung des Handhabungsgeräts im virtuellen Raum ein virtuelles Bearbeitungsaggregat und ein virtuelles Werkstück auf einem Bildschirm dargestellt wird, wobei bei der Berechnung und Darstellung der Verfahrbewegung des Handhabungsgeräts, des Bearbeitungsaggregats und des Werkstücks die Zustandsdaten berücksichtigt werden.It is proposed that the movement of the handling device in virtual space, a virtual processing unit and a virtual workpiece is shown on a screen, the state data being taken into account in the calculation and display of the movement of the handling device, the processing unit and the workpiece.
Als besonders vorteilhalft hat es sich erwiesen, das erfindungsgemäße Verfahren zur Programmierung eines Handhabungsgeräts zu verwenden, welches abhängig von den programmierten Verfahrbewegungen ein Entgratungswerkzeug entlang einer zu entgratenden Kontur eines Werkstücks führt.It has proven to be particularly advantageous to use the method according to the invention for programming a handling device which, depending on the programmed traversing movements, guides a deburring tool along a contour of a workpiece to be deburred.
Von besonderer Bedeutung ist die Realisierung des erfindungsgemäßen Verfahrens in der Form eines Computerprogramms, das auf einem Rechengerät, insbesondere auf
einem Mikroprozessor, ablauffähig ist. Das Computerprogramm ist zur Ausführung des erfindungsgemäßen Verfahrens geeignet, wenn es auf dem Rechengerät abläuft. In diesem Fall wird also die Erfindung durch ein Computerprogramm realisiert, so dass dieses Computerprogramm in gleicher Weise die Erfindung darstellt wie das Verfahren, zu dessen Ausführung es geeignet ist. Das Computerprogramm ist vorzugsweise auf einem Speicherelement, insbesondere auf einem elektrischen Speichermedium, abgespeichert. Als Speicherelement kann beispielsweise ein Random-Access-Memory, ein Read-Only-Memory oder ein Flash-Memory zur Anwendung kommen.Of particular importance is the implementation of the method according to the invention in the form of a computer program, which is based on a computing device, in particular a microprocessor that is executable. The computer program is suitable for executing the method according to the invention if it runs on the computing device. In this case, the invention is therefore implemented by a computer program, so that this computer program represents the invention in the same way as the method, for the execution of which it is suitable. The computer program is preferably stored on a storage element, in particular on an electrical storage medium. Random access memory, read-only memory or flash memory can be used as the storage element, for example.
Weitere Merkmale, Anwendungsmöglichkeiten und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung von Ausführungsbeispielen der Erfindung, die in der Zeichnung dargestellt sind. Dabei bilden alle beschriebenen oder dargestellten Merkmale für sich oder in beliebiger Kombination den Gegenstand der Erfindung, unabhängig von ihrer Zusammenfassung in den Patentansprüchen oder deren Rückbeziehung sowie unabhängig von ihrer Formulierung bzw. Darstellung in der Beschreibung bzw. in der Zeichnung, Es zeigen:Further features, possible applications and advantages of the invention result from the following description of exemplary embodiments of the invention, which are shown in the drawing. All of the described or illustrated features, alone or in any combination, form the subject matter of the invention, regardless of their summary in the patent claims or their dependency, and regardless of their formulation or representation in the description or in the drawing,
Fig. 1 ein Handhabungsgerät, welches ein Bearbeitungsaggregat auf einer programmierbaren Verfahrbahn entlang einer Kontur eines Werkstücks führt, wobei die Verfahrbahn nach einem erfindungsgemäßen Verfahren programmiert wird; und1 shows a handling device which guides a processing unit on a programmable trajectory along a contour of a workpiece, the trajectory being programmed according to a method according to the invention; and
Fig. 2 ein Struktogramm des erfindungsgemäßen Verfahrens zur Programmierung der Verfahrbahn des Handhabungsgeräts aus Fig. 1.FIG. 2 shows a structure diagram of the method according to the invention for programming the path of the handling device from FIG. 1.
In Fig. 1 ist ein als Gelenkarmroboter ausgebildetes Handhabungsgerät in seiner Gesamtheit mit dem Bezugszeichen 1 bezeichnet. Das Handhabungsgerät 1 umfasst einen Gelenkarm 2, an dessen distalem Ende ein Bearbeitungsaggregat 3 in Form eines
Entgratungswerkzeugs, insbesondere eines Entgratungsmessers, angeordnet ist. Das Bearbeitungsaggregat 3 wird durch das Handhabungsgerät 1 auf einer programmierbaren Verfahrfahrbahn entlang einer Kontur eines als ein Kunststoffschlitten ausgebildeten Werkstücks 4 geführt.In Fig. 1, a handling device designed as an articulated arm robot is designated in its entirety with reference number 1. The handling device 1 comprises an articulated arm 2, at the distal end of which a processing unit 3 in the form of a Deburring tool, in particular a deburring knife, is arranged. The processing unit 3 is guided by the handling device 1 on a programmable travel path along a contour of a workpiece 4 designed as a plastic slide.
Zur Herstellung des Kunststoffschlittens 4 wird dieser bei hohen Temperaturen geformt und noch bei relativ hohen Temperaturen aus den Formen entnommen. Um Bearbeitungszeit und damit Herstellungskosten zu sparen, wird er unmittelbar nach dem Entformen weiter verarbeitet. Die Weiterverarbeitung umfasst beispielsweise das Entgraten bzw. Entfernen von Verschlusskanten der Formen, die zur Herstellung des Kunststoffteils verwendet wurden. Zum Entgraten wird das Entgratungswerkzeug 3 mit hoher Genauigkeit entlang der Kontur der Verschlusskanten geführt. Während der Weiterverarbeitung kühlt der Kunststoffschlitten 4 langsam ab, was schrumpfende Abmessungen mit sich bringt.To produce the plastic slide 4, it is molded at high temperatures and removed from the molds at relatively high temperatures. In order to save processing time and thus manufacturing costs, it is processed further immediately after demolding. The further processing includes, for example, deburring or removing the closing edges of the molds that were used to produce the plastic part. For deburring, the deburring tool 3 is guided along the contour of the closure edges with high accuracy. During further processing, the plastic slide 4 slowly cools down, which results in shrinking dimensions.
Die Verfahrbahn, entlang der das Bearbeitungsaggregat 3 von dem Handhabungsgerät 1 geführt wird, wird erfindungsgemäß vollautomatisch und unter Berücksichtigung von Zustandsdaten des Werkstücks 4, beispielsweise der Temperatur bzw. der Abmessungen, programmiert. Durch die Berücksichtigung der Zustandsdaten ist - unter Beibehaltung eines vollautomatischen Ablaufs - eine derartige Programmierung des Handhabungsgeräts 1 möglich, dass das Handhabungsgerät 1 das Bearbeitungsaggregat 3 auf einer wesentlich genaueren Verfahrbahn entlang einer Kontur des Werkstücks 4 führen kann.The trajectory along which the processing unit 3 is guided by the handling device 1 is programmed fully automatically according to the invention and taking into account state data of the workpiece 4, for example the temperature or the dimensions. By taking the state data into account, programming the handling device 1 is possible, while maintaining a fully automatic process, such that the handling device 1 can guide the processing unit 3 along a contour of the workpiece 4 along a much more precise trajectory.
Die Programmierung der Verfahrbahn erfolgt in einem Computer 5, der über eine Daten Übertragungsleitung 6 mit dem Handhabungsgerät 1 in Verbindung steht. Der Computer 5 umfasst ein als Flash-Memory ausgebildetes Speicherelement 7, auf dem ein Computerprogramm abgespeichert ist. Das Computerprogramm ist auf einem als Mikroprozessor ausgebildeten Rechengerät 8 des Computers 5 ablauffähig und zur
Ausführung des erfindungsgemäßen Verfahrens geeignet, wenn es auf dem Rechengerät 8 abläuft. Zur Ausführung des Computerprogramms wird es entweder als ganzes oder befehlsweise über eine Datenleitung 9 aus dem Speicherelement 7 an das Rechengerät 8 übertragen. Das Rechengerät 8 steht über eine Ausgabeleitung 10 mit einem Bildschirm 1 1 in Verbindung, der eine Schnittstelle zu einer Bedienperson des Computers 5 zur Ausgabe von Informationen darstellt.The trajectory is programmed in a computer 5, which is connected to the handling device 1 via a data transmission line 6. The computer 5 comprises a memory element 7 in the form of a flash memory, on which a computer program is stored. The computer program is executable on a computing device 8 of the computer 5 designed as a microprocessor and for Execution of the method according to the invention is suitable if it runs on the computing device 8. To execute the computer program, it is either transferred as a whole or by command from the memory element 7 to the computing device 8 via a data line 9. The computing device 8 is connected via an output line 10 to a screen 11, which represents an interface to an operator of the computer 5 for outputting information.
Die Struktur des erfindungsgemäßen Verfahrens zum Programmieren der Verfahrbahn des Handhabungsgeräts 1 ist in Fig. 2 dargestellt. Ausgehend von einer Idee eines von dem Bearbeitungsaggregat 3 zu bearbeitenden Werkstücks 4 bei einem Kunden 20, werden Befehle 21 für die abzufahrende Verfahrbahn in einem unten näher erläuterten Verfahren ermittelt und ein Handhabungsgerät 1 beim Kunden 20 mit den ermittelten Befehlen 21 progammiert. Die Idee des Werkstücks 4 kann beispielsweise in Form einer abstrakten Aufgabenstellung 22, als CAD (Computer Aided Design) - Daten 23 und/oder als ein Prototyp 24 vorhanden sein.The structure of the method according to the invention for programming the trajectory of the handling device 1 is shown in FIG. 2. Based on an idea of a workpiece 4 to be machined by the machining unit 3 at a customer 20, commands 21 for the travel path to be traversed are determined in a method explained in more detail below and a handling device 1 is programmed at the customer 20 with the determined commands 21. The idea of the workpiece 4 can be present, for example, in the form of an abstract task 22, as CAD (Computer Aided Design) data 23 and / or as a prototype 24.
Zu Beginn des erfindungsgemäßen Verfahrens wird diesem die Idee 22, 23, 24 des zu bearbeitenden Werkstücks 4 über eine entsprechende Schnittstelle zur Verfügung gestellt. In der Praxis wird die Idee 22, 23, 24 in Form einer konkreten Lösung 25 oder von CAD-Daten 26 in den Computer 5 eingegeben. Dort werden sie dem Computerprogramm, das zur Realisierung des erfindungsgemäßen Verfahrens auf dem Rechengerät 8 abläuft, zur Verfügung gestellt. Die konkrete Lösung 25 und die CAD- Daten 26 enthalten Informationen über die Soll-Abmessungen des Werkstücks 4 zumindest im Bereich der Kontur. Anhand dieser Soll-Abmessungen 25, 26 werden die Verfahrbefehle für das Handhabungsgerät 1 in einem Entwurfsbereich 27 automatisch generiert.At the beginning of the method according to the invention, the idea 22, 23, 24 of the workpiece 4 to be machined is made available to it via a corresponding interface. In practice, the idea 22, 23, 24 is entered into the computer 5 in the form of a concrete solution 25 or CAD data 26. There they are made available to the computer program that runs on the computing device 8 to implement the method according to the invention. The concrete solution 25 and the CAD data 26 contain information about the target dimensions of the workpiece 4 at least in the area of the contour. The travel commands for the handling device 1 are generated automatically in a design area 27 on the basis of these target dimensions 25, 26.
Erfindungsgemäß werden die Soll-Abmessungen 25, 26 um Zustandsdaten 28 des Werkstücks 4 ergänzt. Die Zustandsdaten 28 beinhalten Informationen über den
Zustand des Werkstücks 4 zumindest im Bereich der Kontur. Der Zustand betrifft beispielsweise die Temperatur oder Materialeigenschaften des Werkstücks 4, sowie Zug- oder Druckspannungen, die in dem Werkstück 4 wirken. Anhand der Zustandsdaten 28 können die Soll-Abmessungen 25, 26 korrigiert werden, im Idealfall können sogar die Ist-Abmessungen des Werkstücks 4 ermittelt werden.According to the invention, the nominal dimensions 25, 26 are supplemented by status data 28 of the workpiece 4. The status data 28 contain information about the State of the workpiece 4 at least in the area of the contour. The state relates, for example, to the temperature or material properties of the workpiece 4, as well as tensile or compressive stresses which act in the workpiece 4. The target dimensions 25, 26 can be corrected on the basis of the status data 28; in the ideal case, the actual dimensions of the workpiece 4 can even be determined.
Zur Ermittlung der Zustandsdaten 28 werden geeignete Messvorrichtungen eingesetzt, wie Temperaturmessvorrichtungen (z.B. Thermometer) bzw. Spannungsmessvorrichtungen (z.B. Dehnmessstreifen). Zur Ermittlung der Ist- Abmessungen kann eine beliebige Abtastvorrichtung 29 zum Abtasten des Prototyps 24 eingesetzt werden. Die Abtastvorrichtung 29 ist beispielsweise als eine optische Abtastvorrichtung (sogenannte Scanner) oder als ein Messtaster, der mit einer Vorrichtung zum Bestimmen der räumlichen Koordinaten des Messtasters (sogenannte Faro-Arm) in Verbindung steht, ausgebildet sein.Suitable measuring devices, such as temperature measuring devices (e.g. thermometers) or voltage measuring devices (e.g. strain gauges) are used to determine the state data 28. Any scanning device 29 for scanning the prototype 24 can be used to determine the actual dimensions. The scanning device 29 is designed, for example, as an optical scanning device (so-called scanner) or as a measuring probe, which is connected to a device for determining the spatial coordinates of the measuring probe (so-called Faro arm).
Anhand der Soll-Abmessungen 25, 26 und der Zustandsdaten 28 wird ein virtuelles Werkstück 30, ein virtuelles Werkstück 31 zur Herstellung des Werkstücks 4 (z.B. ein Formwerkzeug zur Herstellung des Kunststoffschlittens) und eine virtuelle Aufnahme 32 (z.B. Formaufnahme) für das Werkstück 4 während der Bearbeitung durch das Bearbeitungsaggregat 3 (z.B. während des Entgratens entlang der Kontur der Verschlusskanten der Formen) ermittelt. Die Daten des ermittelten virtuellen Werkzeugs 31 und der Aufnahme 32 werden ausgegeben und zur Herstellung eines realen Werkzeugs 33 (z.B. eines Formwerkzeugs) zur Herstellung des Werkstücks 4 und einer realen Aufnahme 34 in einem Werkzeugbau 35 herangezogen. Das auf diese Weise hergestellte Werkzeug 33 ist zusammen mit weiteren Elementen 36 (z.B. Spritz-Gieß-Extrusionselemente) Bestandteil einer Anlage 37 zur Herstellung des Werkstücks 4 (z.B. einer Spritz-Gieß-Extrusionsanlage zur Herstellung des Kunststoffschlittens).
Anhand des virtuellen Werkstücks 30 aus dem Entwurfsbereich 27 erfolgt in einem virtuellen Bereich 39 eine virtuelle Programmierung 38 einer virtuellen Bearbeitungszelle 40 (z.B. einer virtuellen Entgratungszelle), die Teil eines virtuellen Raums ist. Die Programmierung 38 erfolgt außer in Abhängigkeit von dem Werkstück 30 auch in Abhängigkeit von dem Aufbau und der Konstruktion der virtuellen Bearbeitungszelle 40 sowie in Abhängigkeit eines virtuellen Bearbeitungsaggregats 41 (z.B. eines virtuellen Entgratungsmessers). Im Rahmen der virtuellen Programmierung 38 erfolgt eine (quasi)-automatische Programmierung der virtuellen Bearbeitungszelle 40. Die virtuelle Aufnahme 32 aus dem Entwurfsbereich 27 ist Bestandteil der virtuellen Bearbeitungszelle 40. Weitere Bestandteile der virtuellen Bearbeitungszelle 40 sind virtuelle Zellenelemente 42 (z.B. Streben oder Träger einer Bearbeitungszelle 40) und ein virtuelles Handhabungsgerät 43 (z.B. Gelenkarmroboter).Using the desired dimensions 25, 26 and the status data 28, a virtual workpiece 30, a virtual workpiece 31 for producing the workpiece 4 (for example a molding tool for producing the plastic slide) and a virtual holder 32 (for example mold holder) for the workpiece 4 during the processing by the processing unit 3 (eg during deburring along the contour of the closing edges of the molds). The data of the determined virtual tool 31 and the holder 32 are output and used to produce a real tool 33 (for example a molding tool) for producing the workpiece 4 and a real holder 34 in a tool shop 35. The tool 33 produced in this way is, together with further elements 36 (eg injection molding extrusion elements), part of a system 37 for producing the workpiece 4 (eg an injection molding extrusion system for producing the plastic slide). On the basis of the virtual workpiece 30 from the design area 27, virtual programming 38 of a virtual processing cell 40 (for example a virtual deburring cell) takes place in a virtual area 39, which is part of a virtual space. In addition to the workpiece 30, the programming 38 is also carried out as a function of the construction and construction of the virtual machining cell 40 and as a function of a virtual machining unit 41 (for example a virtual deburring knife). (Virtual) programming of the virtual processing cell 40 takes place within the framework of the virtual programming 38. The virtual recording 32 from the design area 27 is part of the virtual processing cell 40. Further components of the virtual processing cell 40 are virtual cell elements 42 (for example struts or supports of a Processing cell 40) and a virtual handling device 43 (eg articulated arm robot).
Die lediglich im virtuellen Raum existierenden Elemente 40, 41 , 42, 43 können auf dem Bildschirm 1 1 des Computers 5 ausgegeben werden. Es kann gewählt werden zwischen einer statischen Ausgabe der Elemente 40, 41 , 42, 43, die mit dem Bezugszeichen 44 bezeichnet ist und einer dynamischen Betriebsdemonstration 45.The elements 40, 41, 42, 43 that only exist in virtual space can be output on the screen 11 of the computer 5. You can choose between a static output of the elements 40, 41, 42, 43, which is designated by the reference symbol 44, and a dynamic operating demonstration 45.
Ein wichtiges Merkmal der vorliegenden Erfindung ist darin zu sehen, dass Informationen und Erkenntnisse, die anhand der virtuellen Programmierung 38 der Bearbeitungszelle 40 gewonnen wurden, in den Entwurfsbereich 27 rückgeführt werden (Pfeil 46). Dort werden sie zur Korrektur der Soll-Abmessungen 25, 26 und/oder der Zustandsgrößen 28 des Werkstücks 4 und letztlich zur Korrektur der automatisch generierten Verfahrbefehle herangezogen. Dadurch kann die Genauigkeit der generierten Verfahrbefehle noch einmal deutlich erhöht werden.An important feature of the present invention is to be seen in that information and insights that have been obtained using the virtual programming 38 of the processing cell 40 are returned to the design area 27 (arrow 46). There they are used to correct the nominal dimensions 25, 26 and / or the state variables 28 of the workpiece 4 and ultimately to correct the automatically generated travel commands. As a result, the accuracy of the generated travel commands can be significantly increased again.
Die im Rahmen der virtuellen Programmierung 38 generierten virtuellen Verfahrbefehle werden zum virtuellen Betrieb 47 einer virtuellen Bearbeitungszelle 40 herangezogen. Anhand des virtuellen Betriebs 47 können Erkenntnisse und
Informationen für den Praxisbetrieb gewonnen werden. Dazu kann beispielsweise eine virtuelle Kraft ermittelt werden, die zum Führen des virtuellen Bearbeitungsaggregats 41 entlang der virtuellen Kontur des virtuellen Werkstücks 30 benötigt wird. Übersteigt die Kraft oder der Gradient dieser Kraft einen vorgebbaren Grenzwert, kann beispielsweise davon ausgegangen werden, dass das Bearbeitungsaggregat 41 zu dicht an das Werkstück 30 herangeführt wurde. Diese Information wird an die virtuelle Programmierung 38 rückgeführt und die virtuellen Verfahrbefehle werden dort korrigiert. Der weitere virtuelle Betrieb 47 der virtuellen Bearbeitungszelle 40 erfolgt dann unter Berücksichtigung der korrigierten Verfahrbefehle. Die Korrektur der virtuellen Verfahrbefehle kann entweder automatisch oder nach Rückfrage bei der Bedienperson des Computers 5 erfolgen.The virtual travel commands generated as part of the virtual programming 38 are used for the virtual operation 47 of a virtual processing cell 40. On the basis of virtual operation 47, knowledge and Information for practical use can be obtained. For this purpose, a virtual force can be determined, for example, which is required to guide the virtual machining unit 41 along the virtual contour of the virtual workpiece 30. If the force or the gradient of this force exceeds a predefinable limit value, it can be assumed, for example, that the processing unit 41 has been brought too close to the workpiece 30. This information is fed back to the virtual programming 38 and the virtual travel commands are corrected there. The further virtual operation 47 of the virtual processing cell 40 then takes place taking into account the corrected travel commands. The virtual travel commands can be corrected either automatically or on request from the operator of the computer 5.
Die reale Aufnahme 34 und das reale Bearbeitungsaggregat 3 wird zur Konfektionierung 48 einer realen Bearbeitungszelle 49 herangezogen. Außerdem werden zur Konfektionierung 48 reale Zellenelemente 50 (z.B. Träger, Streben) und das reale Handhabungsgerät 1 berücksichtigt. Die Zelle 49 wird nach den Vorgaben aus dem Funktionsblock 38 montiert (Funktionsblock 51 ) und beim Kunden 20 aufgestellt.The real receptacle 34 and the real processing unit 3 are used for the assembly 48 of a real processing cell 49. In addition, 48 real cell elements 50 (e.g. carriers, struts) and the real handling device 1 are taken into account for the assembly. The cell 49 is assembled according to the specifications from the function block 38 (function block 51) and set up at the customer 20.
Das hergestlelte Werkstück 4 wird beim Kunden 20 an die Bearbeitungszelle 49 weitergereicht und dort bearbeitet (z.B. entgratet). Der Vorgang der eigentlichen Programmierung 21 der Bearbeitungszelle 49 bzw. des Handhabungsgeräts 1 als Teil der Bearbeitungszelle 49 erfolgt ganz zum Schluss des erfindungsgemäßen Verfahrens, nach der automatischen Generierung und Verifikation und ggf. Korrektur der Verfahrbefehle im virtuellen Raum. Die Programmierung 21 erfolgt durch Übertragen der virtuellen Verfahrbefehle, anhand derer die virtuelle Bearbeitungszelle 40 im Funktionsblock 47 betrieben wird, von dem virtuellen Bereich 39 über die Datenübertragungsleitung 6 an die reale Bearbeitungszelle 49 bzw. das Handhabungsgerät 1 . Die Datenübertragungsleitung 6 ist in Fig. 1 unterbrochen
dargestellt, um zu verdeutlichen, dass die Datenübertragung nicht durch räumliche Entfernungen zwischen dem Computer 5 und dem Handhabungsgerät 1 beschränkt wird. Vielmehr ist es auch denkbar, dass weite Entfernungen, beispielsweise über das Internet, überbrückt werden.The workpiece 4 produced is passed on to the processing cell 49 at the customer 20 and processed there (for example deburred). The actual programming 21 of the processing cell 49 or of the handling device 1 as part of the processing cell 49 takes place at the very end of the method according to the invention, after the automatic generation and verification and, if necessary, correction of the travel commands in virtual space. The programming 21 is carried out by transmitting the virtual travel commands, on the basis of which the virtual processing cell 40 is operated in the function block 47, from the virtual area 39 via the data transmission line 6 to the real processing cell 49 or the handling device 1. The data transmission line 6 is interrupted in FIG. 1 shown to clarify that the data transmission is not limited by spatial distances between the computer 5 and the handling device 1. Rather, it is also conceivable for long distances to be bridged, for example via the Internet.
Die Funktionen aus den verschiedenen Bereichen 27, 35 und 39 können von Dienstleistern, ggf. auch von unterschiedlichen Dienstleistern, ausgeführt werden. Diese bieten an und erbringen Ihre Dienstleistungen gegenüber dem Kunden 20. Der Entwurfsbereich 27 betrifft die Auslegung und Konstruktion des virtuellen Werkzeugs 31 zur Herstellung des virtuellen Werkstücks 30 sowie der virtuellen Aufnahme 32 für das virtuelle Werkstück 30 während der Bearbeitung. Der Entwurfsbereich 27 liefert also Daten für das virtuelle Werkzeug 31 und/oder die virtuelle Aufnahme 34. Der Werkzeugbau 35 betrifft die Herstellung des realen Werkzeugs 33 für die Herstellung des realen Werkstücks 4 und der realen Aufnahme 34 für das Werkstück 4 anhand der Daten des virtuellen Werkzeugs 31 und der virtuellen Aufnahme 32. Der Werkzeugbau 35 liefert also ein fertiges reales Werkzeug 33 und/oder eine fertige reale Aufnahme 34. Der virtuelle Bereich 39 betrifft die automatische Generierung, Verifikation und ggf. Korrektur der Verfahrbefehle für die Bearbeitungszelle 40 bzw. das Handhabungsgerät 43 im virtuellen Raum. Der virtuelle Bereich 39 liefert also die Programmierbefehle für das Handhabungsgerät 1 , damit dieses das Bearbeitungsaggregat 3 auf der Verfahrbahn entlang der vorgegebenen Kontur verfährt.The functions from the different areas 27, 35 and 39 can be carried out by service providers, possibly also by different service providers. These offer and provide your services to the customer 20. The design area 27 relates to the design and construction of the virtual tool 31 for producing the virtual workpiece 30 and the virtual receptacle 32 for the virtual workpiece 30 during processing. The design area 27 thus supplies data for the virtual tool 31 and / or the virtual holder 34. The tool shop 35 relates to the manufacture of the real tool 33 for the manufacture of the real workpiece 4 and the real holder 34 for the workpiece 4 using the data of the virtual one Tool 31 and the virtual receptacle 32. The tool shop 35 thus delivers a finished real tool 33 and / or a finished real receptacle 34. The virtual area 39 relates to the automatic generation, verification and, if necessary, correction of the travel commands for the processing cell 40 or that Handling device 43 in virtual space. The virtual area 39 thus supplies the programming commands for the handling device 1 so that the handling device 3 travels the processing unit 3 on the trajectory along the predetermined contour.
Es ist außerdem denkbar, dass die Bearbeitungszelle 49 nicht beim Kunden 20, sondern bei einem Dienstleister steht, der an Fremdfirmen die Dienstleistung der (Weiter-) Bearbeitung von an einem anderen Ort gefertigten Werkstücken 4 verkauft.
It is also conceivable that the processing cell 49 is not with the customer 20, but with a service provider who sells the service of the (further) processing of workpieces 4 produced at another location to external companies.