-
Technisches Gebiet
-
Die vorliegende Erfindung bezieht sich auf ein Steuerungssystem.
-
Stand der Technik
-
Es ist bekannt, dass Roboter, wie etwa Industrieroboter, Laserbearbeitungen, Versiegelungen, Lichtbogenschweißen usw. durchführen können, indem sie die Position eines Armendes (positionsgeregeltes Teil) ihres Robotermechanismus steuern. Eine Erhöhung der Bewegungsgeschwindigkeit eines Roboters dieser Art verkürzt die Taktzeit, wodurch die Produktionseffizienz verbessert werden kann. Wenn jedoch die Bewegungsgeschwindigkeit des Roboters erhöht wird, können am Armende des Robotermechanismus, aufgrund von Faktoren wie einem Untersetzungsgetriebe und einem Robotermechanismus mit unzureichender Steifigkeit, Vibrationen entstehen, die zu einer Verschlechterung der Qualität eines Bearbeitungsziels führen können.
-
Die Patentschriften 1 und 2 offenbaren Roboter, die diese Probleme lösen können. Diese Roboter sind mit einem Sensor am Armende des Robotermechanismus ausgestattet, und der Sensor misst Vibrationen, die am Armende des Robotermechanismus erzeugt werden, der sich gemäß einem Bewegungsprogramm bewegt. Die Roboter führen wiederholt eine Lernsteuerung durch, um einen Lernkompensationswert zur Reduzierung der gemessenen Schwingungen zu berechnen. Die Roboter verwenden den Lernkompensationswert, um die Positionssteuerung am Armende (positionsgeregeltes Teil) des Robotermechanismus zu kompensieren, um die Vibration des Armendes des Robotermechanismus zu reduzieren.
- Patentschrift 1: Japanische ungeprüfte Patentanmeldung, Veröffentlichungsnummer 2011-167817
- Patentschrift 2: Japanische ungeprüfte Patentanmeldung, Veröffentlichungsnummer 2012-240142
-
Offenbarung der Erfindung
-
Durch die Erfindung zu lösende Probleme
-
Um die oben beschriebene Lernsteuerung durchzuführen, ist es notwendig, an einem Armende eines Robotermechanismus einen Sensor zur Erfassung von am Armende erzeugten Vibrationen zu installieren. Wenn ein Endgerät mit einem solchen Sensor am Armende angebracht wird, um Vibrationen zu erfassen, besteht das Problem, dass eine unzureichende Erfassungsgenauigkeit erreicht wird, da der in dem Endgerät vorgesehene Sensor typischerweise spärliche Abtastintervalle aufweist. Unter den vorstehenden Umständen besteht ein Bedarf an einem Steuerungssystem, das die Bewegung eines Roboters mit hoher Genauigkeit steuern kann.
-
Mittel zur Lösung der Probleme
-
Ein Aspekt der vorliegenden Offenbarung betrifft ein Steuerungssystem, das Folgendes umfasst: einen Sensor, der eine Beschleunigung auf der Grundlage von Vibrationen eines Roboters erfasst; einen Interpolator, der eine Vielzahl von Sensordatensätze interpoliert, die von dem Sensor erfasst werden; und einen Datengenerator, der zusammengesetzte Daten mit feinen Abtastintervallen basierend auf einer Vielzahl von Interpolationsdatensätzen erzeugt, die von dem Interpolator interpoliert werden.
-
Effekte der Erfindung
-
Die vorliegende Erfindung ermöglicht eine hochgenaue Steuerung der Bewegung eines Roboters.
-
Figurenliste
-
- 1 ist ein Diagramm, das einen Überblick über ein Steuerungssystem gemäß einer Ausführungsform darstellt;
- 2 ist ein Blockdiagramm, das eine Konfiguration einer Robotersteuerungsvorrichtung und eine Konfiguration eines Endgeräts darstellt;
- 3 stellt die Verarbeitung zur Kombination von Sensordaten dar; und
- 4 ist ein Flussdiagramm, das die von der Robotersteuerungsvorrichtung durchgeführte Verarbeitung darstellt.
-
Bevorzugte Art der Ausführung der Erfindung
-
Im Folgenden wird ein Beispiel für Ausführungsformen der vorliegenden Erfindung beschrieben. 1 ist ein Diagramm, das einen Überblick über ein Steuerungssystem 1 gemäß der vorliegenden Ausführungsform darstellt. Wie in 1 dargestellt, umfasst das Steuerungssystem 1 eine Robotersteuerungsvorrichtung 2, einen Roboter 3 und Endgeräte 4a und 4b.
-
Die Robotersteuerungsvorrichtung 2 gibt gemäß einem Roboterprogramm einen Bewegungsbefehl an den Roboter 3 aus und steuert dadurch die Bewegung des Roboters 3. Der Roboter 3 ist beispielsweise ein sechsachsiger vertikaler Gelenkroboter und hat einen über Gelenkachsen verbundenen Arm 31, wie in 1 dargestellt.
-
Als Reaktion auf einen Bewegungsbefehl der Robotersteuerungsvorrichtung 2 treibt der Roboter 3 seine beweglichen Teile, wie den Arm 31, durch den Antrieb von Servomotoren 30a bis 30f an, die jeweils an einer der zugehörigen Gelenkachsen angebracht sind. Die Servomotoren 30a bis 30f werden zusammenfassend auch als Servomotoren 30 bezeichnet.
-
Der Roboter 3 hat einen Flansch 32, an dem ein Endeffektor 33, wie z. B. eine Schweißpistole, eine Greifhand oder eine Laserbestrahlungsvorrichtung, befestigt ist. Obwohl es sich bei dem Roboter 3 um einen sechsachsigen vertikalen Gelenkroboter handelt, kann er auch als vertikaler Gelenkroboter mit einer anderen Anzahl von Achsen, als horizontaler Gelenkroboter, als Delta-Roboter oder Ähnliches konfiguriert sein.
-
Die Endgeräte 4a und 4b sind an dem Endeffektor 33 des Roboters 3 befestigt. Die Endgeräte 4a und 4b detektieren eine Beschleunigung, die auf der Vibration des Roboters 3 basiert, und übermitteln die detektierten Sensordaten an die Robotersteuerungsvorrichtung 2. Die Endgeräte 4a und 4b werden zusammenfassend auch als Endgeräte 4 bezeichnet.
-
2 ist ein Blockdiagramm, das die Konfiguration der Robotersteuerungsvorrichtung 2 und der Endgeräte 4 darstellt. Die Robotersteuerungsvorrichtung 2 umfasst eine Kommunikationseinheit 21, eine Steuerungseinheit 22 und eine Speichereinheit 23.
-
Die Kommunikationseinheit 21 ist eine Kommunikationsschnittstelle zur Kommunikation mit den Endgeräten 4 über ein Netzwerk. Die Kommunikationseinheit 21 umfasst z. B. einen Prozessor, einen Anschluss und eine elektrische Schaltung, mit der die Kommunikation implementiert wird. Die Kommunikationseinheit 21 erfasst Daten, indem sie eine vorbestimmte Verarbeitung eines von den Endgeräten 4 empfangenen Kommunikationssignals durchführt, und gibt die erfassten Daten in die Steuerungseinheit 22 ein. Darüber hinaus erzeugt die Kommunikationseinheit 21 ein Kommunikationssignal, indem sie eine vorgegebene Verarbeitung an Daten durchführt, die von der Steuerungseinheit 22 eingegeben werden, und sendet das erzeugte Kommunikationssignal an die Endgeräte 4. Zum Beispiel empfängt die Kommunikationseinheit 21 Sensordaten von den Endgeräten 4.
-
Die Steuerungseinheit 22 ist ein Prozessor, wie z.B. eine zentrale Verarbeitungseinheit (CPU: central processing unit), und fungiert als Koordinatentransformator 221, Interpolator 222, Datengenerator 223, Bewegungssteuerung 224, Kompensationswertberechner 225 und Lernsteuerung 226, indem sie in der Speichereinheit 23 gespeicherte Programme ausführt.
-
Bei der Speichereinheit 23 handelt es sich um eine Speichervorrichtung, z. B. einen Festwertspeicher (ROM: read only memory), in dem ein Betriebssystem (OS: operating system) und Anwendungsprogramme gespeichert sind, einen Direktzugriffsspeicher (RAM: random access memory), ein Festplattenlaufwerk oder einen Festkörperspeicher (SSD: solid state drive), in dem verschiedene andere Informationen gespeichert sind, usw. Die Speichereinheit 23 speichert zum Beispiel ein Roboterprogramm zum Betrieb des Roboters 3.
-
Die Endgeräte 4 (Endgeräte 4a und 4b) umfassen eine Kommunikationseinheit 41, eine Steuerungseinheit 42, eine Speichereinheit 43 und einen Sensor 44.
-
Die Kommunikationseinheit 41 ist eine Kommunikationsschnittstelle zur Kommunikation mit der Robotersteuerungsvorrichtung 2 über ein Netzwerk. Die Kommunikationseinheit 41 umfasst z. B. einen Prozessor, einen Anschluss und eine elektrische Schaltung, mit der die Kommunikation implementiert wird. Die Kommunikationseinheit 41 erfasst Daten, indem sie eine vorbestimmte Verarbeitung eines von der Robotersteuerungsvorrichtung 2 empfangenen Kommunikationssignals durchführt, und gibt die erfassten Daten in die Steuerungseinheit 42 ein. Darüber hinaus erzeugt die Kommunikationseinheit 41 ein Kommunikationssignal, indem sie eine vorgegebene Verarbeitung an Daten durchführt, die von der Steuerungseinheit 42 eingegeben werden, und sendet das erzeugte Kommunikationssignal an die Robotersteuerungsvorrichtung 2.
-
Die Steuerungseinheit 42 ist ein Prozessor, wie z.B. eine zentrale Verarbeitungseinheit (CPU: central processing unit). Bei der Speichereinheit 43 handelt es sich um eine Speichervorrichtung, wie z. B. einen Festwertspeicher (ROM: read only memory), in dem ein Betriebssystem (OS: operating system) und Anwendungsprogramme gespeichert sind, einen Direktzugriffsspeicher (RAM: random access memory), ein Festplattenlaufwerk oder einen Festkörperspeicher (SSD: solid state drive), in dem verschiedene andere Informationen gespeichert sind, usw.
-
Der Sensor 44 ist ein Beschleunigungssensor, der zyklisch in vorgegebenen Abtastintervallen eine Beschleunigung detektiert, mit der sich der Endeffektor 33 aufgrund der Bewegung des Roboters 3 bewegt. Der Sensor 44 ist nicht auf den Beschleunigungssensor beschränkt, sondern kann z. B. ein Bildverarbeitungssensor, ein Gyrosensor, ein Trägheitssensor oder ein Dehnungsmessstreifen sein.
-
Das Steuerungseinheit 42 verfügt über eine Uhr (nicht dargestellt). Jedes Mal, wenn die Steuerungseinheit 42 eine Beschleunigung detektiert, erfasst sie die von der Uhr ausgegebene Zeitinformation als die Uhrzeit, zu der die Beschleunigung detektiert wurde. Die Kommunikationseinheit 41 überträgt ein Sensorsignal, das die detektierte Beschleunigung und die Zeitinformation umfasst und die Sensordaten bildet, an die Robotersteuerungsvorrichtung 2.
-
Als nächstes wird die von der Steuerungseinheit 22 durchgeführte Steuerung unter Bezugnahme auf die 2 und 3 beschreiben. 3 stellt die Verarbeitung zur Kombination von Sensordaten dar. Wie in 3 dargestellt, detektiert der Sensor 44 des Endgeräts 4a und der Sensor 44 des Endgeräts 4b N Sensordatensätze. Die vorliegende Ausführungsform wird basierend auf einem Beispiel beschrieben, bei dem die Endgeräte 4 die Sensordaten mit Hilfe der beiden Endgeräte 4a und 4b erfassen. Die Endgeräte 4 können jedoch auch mit drei oder mehr Endgeräten Sensordaten erfassen. Alternativ kann ein Endgerät 4 die Sensordaten auch mehrfach erfassen.
-
Der Koordinatentransformator 221 transformiert die von der Kommunikationseinheit 21 empfangenen Sensordatensätze von einem Sensorkoordinatensystem, das auf einer Oberfläche des Flansches 32 des Roboters 3 als Koordinatenreferenz basiert, in ein Werkzeugkoordinatensystem, das auf einem distalen Ende des Roboters 3 als Koordinatenreferenz basiert. Das Sensorkoordinatensystem wird bestimmt, indem die Position und die Ausrichtung des Sensors 44 jedes der Endgeräte 4a und 4b beispielsweise basierend auf der Oberfläche des Flansches 32 des Roboters 3, die als die Referenz dient, voreingestellt wird. Das distale Ende des Roboters 3 ist z. B. der Endeffektor 33.
-
Daher kann die Robotersteuerungsvorrichtung 2 die Position des distalen Endes des Roboters 3, an dem der Endeffektor 33 angebracht ist, anhand einer im Werkzeugkoordinatensystem definierten Position steuern, selbst wenn die Robotersteuerungsvorrichtung 2 die von den Sensoren 44 der Vielzahl von Endgeräten 4a und 4b detektierten Sensordaten an unterschiedlichen Positionen erfasst. Der Koordinatentransformator 221 kann auch ein Flanschkoordinatensystem verwenden, falls das Werkzeugkoordinatensystem nicht definiert ist.
-
Der Interpolator 222 interpoliert die Vielzahl von Sensordatensätzen, die der Koordinatentransformation unterliegen. Insbesondere interpoliert der Interpolator 222, wie in 3 dargestellt, die Vielzahl von Sensordatensätzen, die diskret sind, und erzeugt dadurch kontinuierliche Interpolationsdaten. Beispielsweise erzeugt der Interpolator 222 die Interpolationsdaten durch lineare Interpolation oder Spline-Interpolation.
-
Der Datengenerator 223 erzeugt zusammengesetzte Daten, die feine Abtastintervalle aufweisen, basierend auf der Vielzahl von Interpolationsdatensätzen, die durch den Interpolator interpoliert wurden. Insbesondere kombiniert der Datengenerator 223 die Vielzahl von Interpolationsdatensätzen und erzeugt dadurch einen Satz zusammengesetzter Daten. Genauer gesagt überlagert der Datengenerator 223 die Wellenformen der Vielzahl von Interpolationsdatensätze und erzeugt so den einen Satz zusammengesetzter Daten. Außerdem mittelt der Datengenerator 223 die zusammengesetzten Daten, die sich aus der Kombination der Vielzahl von Interpolationsdatensätzen ergeben.
-
Der Datengenerator 223 kann einen Korrelationskoeffizienten basierend auf der Vielzahl von Interpolationsdatensätzen berechnen, die Vielzahl von Interpolationsdatensätzen basierend auf dem Korrelationskoeffizienten kombinieren und die zusammengesetzten Daten mitteln, die sich aus der Kombination der Vielzahl von Interpolationsdatensätzen ergeben. Durch Kombinieren der Vielzahl von Interpolationsdatensätzen auf diese Weise kann der Datengenerator 223 die zusammengesetzten Daten mit feinen Abtastintervallen erzeugen.
-
Da keiner der Vielzahl von Interpolationsdatensätzen zeitsynchronisiert ist, synchronisiert der Datengenerator 223 die Vielzahl von Interpolationsdatensätze miteinander und erzeugt zusammengesetzte Daten, basierend die auf der Vielzahl von zeitsynchronisierten Interpolationsdatensätzen.
-
Beispielsweise berechnet der Datengenerator 223 einen Korrelationswert C, der eine numerische Form der Korrelation ist zwischen ersten Interpolationsdaten f(t), die aus der Interpolation eines ersten Satzes von Sensordaten resultieren, und zweiten Interpolationsdaten g(t), die aus der Interpolation eines zweiten Satzes von Sensordaten resultieren. Der Datengenerator 223 berechnet dann eine Verzögerungszeit ta der ersten Interpolationsdaten f(t) in Bezug auf die zweiten Interpolationsdaten g(t), gemäß dem Korrelationswert C.
-
Der Korrelationswert C kann beispielsweise durch Anwendung der Methode der kleinsten Quadrate auf eine stetige Funktion bestimmt werden. Insbesondere wird die Differenz zwischen den ersten Interpolationsdaten f(t) und den zweiten Interpolationsdaten g(t) zu einem identischen Zeitpunkt quadriert, und dieser quadrierte Wert wird dann über einen bestimmten Zeitbereich integriert. Die auf diese Weise berechnete Summe der Quadrate wird als Korrelationswert C definiert. Genauer gesagt kann der Korrelationswert C durch die folgende Formel angegeben werden.
-
In diesem Fall wird der nach der Methode der kleinsten Quadrate berechnete Wert, d. h. der Korrelationswert C, kleiner, je höher die Korrelation zwischen den ersten Interpolationsdaten f(t) und den zweiten Interpolationsdaten g(t) ist. Eine optimale Verzögerungszeit t
a ergibt sich aus der folgenden Formel.
-
Wenn die Sensordaten beispielsweise Spline-interpoliert sind, sind f(t) und g(t) jeweils durch ein Polynom in t gegeben.
-
Dementsprechend kann diese Formel als ein Polynom der Verzögerungszeit ta betrachtet werden. Daher kann die optimale Verzögerungszeit ta z. B. mit der Newton-Methode berechnet werden.
-
Der Korrelationswert C, der den Grad der Korrelation zwischen den ersten Interpolationsdaten f(t) und den zweiten Interpolationsdaten g(t) angibt, kann auch wie folgt berechnet werden, anstatt die Methode der kleinsten Quadrate anzuwenden.
-
Je höher die Korrelation zwischen den ersten Interpolationsdaten f(t) und den zweiten Interpolationsdaten g(t) ist, desto größer wird der Korrelationskoeffizient. In diesem Fall wird die Verzögerungszeit ta nach demselben Verfahren wie bei der Methode der kleinsten Quadrate bestimmt. Das heißt, wenn f(t) und g(t) durch ein Polynom mit t gegeben sind, kann eine optimale Verzögerungszeit ta z. B. mit der Newton-Methode berechnet werden.
-
Beispielsweise berechnet der Datengenerator 223 eine Verzögerungszeit ta von jedem der Vielzahl von Interpolationsdatensätzen in Bezug auf die Referenzinterpolationsdaten. Der Datengenerator 223 synchronisiert dann jeden der Vielzahl von Interpolationsdatensätzen zeitlich, durch Subtraktion oder Addition der Verzögerungszeit ta von oder zu dem Zeitwert der Referenzinterpolationsdaten.
-
Die Bewegungssteuerung 224 steuert die Bewegung des Roboters 3 gemäß einem Bewegungsbefehlswert, der auf einem Roboterprogramm basiert. Der Kompensationswertberechner 225 berechnet eine Bewegungstrajektorie des Roboters 3 basierend auf den zusammengesetzten Daten die vom Datengenerator 223 kombiniert werden. Der Kompensationswertberechner 225 berechnet dann einen Bewegungskompensationswert, so dass die Vibrationen des Roboters 3 reduziert werden. Die Bewegungstrajektorie des Roboters 3 wird mittels einer bekannten Technik berechnet. Beispielsweise wird eine Bewegungstrajektorie des Sensors 44 bestimmt, indem die in den zusammengesetzten Daten enthaltenen Beschleunigungsdaten zweimal integriert werden. Die Bewegungstrajektorie des Sensors 44 wird dann vom Sensorkoordinatensystem in das Werkzeugkoordinatensystem transformiert, wodurch die Bewegungstrajektorie von Roboter 3 berechnet werden kann.
-
Die Lernsteuerung 226 führt Lernsteuerung durch, so dass der berechnete Bewegungskompensationswert auf die nächste Bewegungssteuerung angewendet wird, die für den Roboter 3 gemäß demselben Bewegungsbefehlswert durchgeführt wird. Durch Wiederholung dieser Lernsteuerung reduziert die Lernsteuerung 226 die am Endeffektor 33 des Roboters 3 erzeugten Vibrationen.
-
4 ist ein Flussdiagramm, das die Verarbeitung darstellt, die von der Robotersteuerungsvorrichtung 2 durchgeführt wird. In Schritt S1 steuert die Bewegungssteuerung 224 die Bewegung des Roboters 3 gemäß eines Bewegungsbefehlswertes, der auf einem Roboterprogramm basiert, und die Sensoren 44 der Endgeräte 4 detektieren jeweils eine Beschleunigung, die auf der Vibration des Roboters 3 basiert. Die Endgeräte 4 übermitteln die von den Sensoren 44 detektierten Sensordaten über die Kommunikationseinheiten 41 an die Robotersteuerungsvorrichtung 2.
-
In Schritt S2 transformiert der Koordinatentransformator 221 die von der Kommunikationseinheit 21 empfangenen Sensordaten von dem Sensorkoordinatensystem, das auf der Oberfläche des Flansches 32 des Roboters 3 als Koordinatenreferenz basiert, in das Werkzeugkoordinatensystem, das auf dem distalen Ende des Roboters 3 als Koordinatenreferenz basiert.
-
In Schritt S3 interpoliert der Interpolator 222 die Vielzahl von Sensordatensätzen, die der Koordinatentransformation unterworfen wurden, durch lineare Interpolation, Spline-Interpolation oder ähnliches. In Schritt S4 erzeugt der Datengenerator 223 zusammengesetzte Daten mit feinen Abtastintervallen basierend auf der Vielzahl von Interpolationsdatensätzen, die durch den Interpolator 222 interpoliert wurden.
-
In Schritt S5 berechnet der Kompensationswertberechner 225 eine Bewegungstrajektorie des Roboters 3 basierend auf den zusammengesetzten Daten, die vom Datengenerator 223 kombinierten werden. Der Kompensationswertberechner 225 berechnet einen Bewegungskompensationswert, so dass die Vibration des Roboters 3 reduziert wird. In Schritt S6 führt die Lernsteuerung 226 eine Lernsteuerung durch, so dass der berechnete Bewegungskompensationswert auf die nächste Bewegungssteuerung angewendet wird, die für den Roboter 3 gemäß demselben Bewegungsbefehlswert durchgeführt werden soll.
-
Gemäß der vorliegenden Ausführungsform umfasst das Steuerungssystem 1 die Sensoren 44, die jeweils eine Beschleunigung detektieren, die auf der Vibration des Roboters 3 basiert, den Interpolator 222, der die Vielzahl von Sensordatensätzen interpoliert, die von den Sensoren 44 detektiert werden, und den Datengenerator 223, der zusammengesetzte Daten mit feinen Abtastintervallen erzeugt, die auf der Vielzahl von Interpolationsdatensätzen basieren, die vom Interpolator 222 interpoliert werden.
-
Dieses Merkmal ermöglicht es dem Steuerungssystem 1, mit Hilfe der Sensoren 44 der Endgeräte 4 zusammengesetzte Daten mit feinen Abtastintervallen zu erzeugen, obwohl die Sensoren 44 typischerweise Daten mit spärlichen Abtastintervallen ausgeben. Somit kann das Steuerungssystem 1 die Bewegung des Roboters 3 mit hoher Genauigkeit steuern, indem es die zusammengesetzten Daten mit feinen Abtastintervallen verwendet.
-
Das Steuerungssystem 1 enthält ferner den Kompensationswertberechner 225, der eine Bewegungstrajektorie des Roboters 3 aus den zusammengesetzten Daten berechnet und einen Bewegungskompensationswert für den Roboter 3 berechnet, so dass die Vibrationen des Roboters 3 reduziert werden. Dieses Merkmal ermöglicht es dem Steuerungssystem 1, den Bewegungskompensationswert für den Roboter 3 in geeigneter Weise zu berechnen.
-
Das Steuerungssystem 1 umfasst ferner die Lernsteuerung 226, die Lernsteuerung durchführt, so dass der vom Kompensationswertberechner 225 berechnete Bewegungskompensationswert auf die am Roboter 3 durchzuführende Bewegungssteuerung angewendet wird. Dieses Merkmal ermöglicht es dem Steuerungssystem 1, in geeigneter Weise Lernsteuerung für den Roboter 3 durchzuführen.
-
Der Datengenerator 223 kombiniert die Vielzahl von Interpolationsdatensätzen und mittelt die zusammengesetzten Daten, die sich aus der Kombination der Vielzahl von Interpolationsdatensätzen ergeben. Dieses Merkmal ermöglicht es dem Steuerungssystem 1 die zusammengesetzten Daten zu erfassen, die zur Berechnung des Bewegungskompensationswerts geeignet sind.
-
Darüber hinaus berechnet der Datengenerator 223 einen Korrelationskoeffizienten basierend auf der Vielzahl von Interpolationsdatensätzen, kombiniert die Vielzahl von Interpolationsdatensätze basierend auf dem Korrelationskoeffizienten und mittelt die zusammengesetzten Daten, die sich aus der Kombination der Vielzahl von Interpolationsdatensätzen ergeben. Dieses Merkmal ermöglicht es dem Steuerungssystem 1, die zusammengesetzten Daten zu erfassen, die zur Berechnung des Bewegungskompensationswertes geeignet sind.
-
Außerdem synchronisiert der Datengenerator 223 die Vielzahl von Interpolationsdatensätzen zeitlich und erzeugt die zusammengesetzten Daten basierend auf der Grundlage der Vielzahl von zeitsynchronisierten Interpolationsdatensätze. Dieses Merkmal ermöglicht es dem Steuerungssystem 1 die zusammengesetzten Daten zu erfassen, die zur Berechnung des Bewegungskompensationswertes geeignet sind.
-
Das Steuerungssystem 1 umfasst ferner die Endgeräte 4, die die Sensoren 44 aufweisen und am Roboter 3 angebracht sind, und den Koordinatentransformator 221, der die Sensordaten vom Sensorkoordinatensystem, das auf der Flanschfläche des Roboters 3 als Koordinatenreferenz basiert, in das Werkzeugkoordinatensystem transformiert, das auf dem distalen Ende des Roboters 3 als Koordinatenreferenz basiert. Dieses Merkmal ermöglicht es dem Steuerungssystem 1, mit Hilfe der Sensoren 44 der Vielzahl von Endgeräten 4 (Endgeräte 4a und 4b) zusammengesetzte Daten mit feinen Abtastintervallen zu erzeugen.
-
Es sei darauf hingewiesen, dass die oben beschriebene Ausführungsform nicht dazu gedacht ist die vorliegende Erfindung einzuschränken. In der oben beschriebenen Ausführungsform sind die meisten vorteilhaften Wirkungen die von der vorliegenden Erfindung ausgeübt werden lediglich offengelegt, und die Wirkungen der vorliegenden Erfindung sind nicht auf die oben beschriebenen eingeschränkt.
-
Bezugszeichenliste
-
- 1
- Steuerungssystem
- 2
- Robotersteuerungsvorrichtung
- 3
- Roboter
- 4
- Endgerät
- 21
- Kommunikationseinheit
- 22
- Steuerungseinheit
- 23
- Speichereinheit
- 41
- Kommunikationseinheit
- 42
- Steuerungseinheit
- 43
- Speichereinheit
- 44
- Sensor
- 221
- Koordinatentransformator
- 222
- Interpolator
- 223
- Datengenerator
- 224
- Bewegungssteuerung
- 225
- Kompensationswertberechner
- 226
- Lernsteuerung
-
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
-
- JP 2011167817 [0003]
- JP 2012240142 [0003]