DE2709335A1 - Programmierbarer manipulator - Google Patents

Programmierbarer manipulator

Info

Publication number
DE2709335A1
DE2709335A1 DE19772709335 DE2709335A DE2709335A1 DE 2709335 A1 DE2709335 A1 DE 2709335A1 DE 19772709335 DE19772709335 DE 19772709335 DE 2709335 A DE2709335 A DE 2709335A DE 2709335 A1 DE2709335 A1 DE 2709335A1
Authority
DE
Germany
Prior art keywords
data
modification
position data
manipulator
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19772709335
Other languages
English (en)
Other versions
DE2709335C2 (de
Inventor
Maurice J Dunne
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.)
Unimation Inc
Original Assignee
Unimation Inc
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 Unimation Inc filed Critical Unimation Inc
Publication of DE2709335A1 publication Critical patent/DE2709335A1/de
Application granted granted Critical
Publication of DE2709335C2 publication Critical patent/DE2709335C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/425Teaching successive positions by numerical control, i.e. commands being entered to control the positioning servo of the tool head or end effector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/409Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using manual input [MDI] or by using control panel, e.g. controlling functions with the panel; characterised by control panel details, by setting parameters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • G05B19/40931Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine concerning programming of geometry
    • 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/34Director, elements to supervisory
    • G05B2219/34236Multiplex for servos, actuators
    • 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/34Director, elements to supervisory
    • G05B2219/34244Multiplex for control only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35426Prepare, enter next program during execution of actual program, machining
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36056Modify program, machining order in real time, during operation, dynamically
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36078Insert, read in new command instruction to modify fixed program
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36088Machining parameters, overide
    • 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/45083Manipulators, robot
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Description

270933S AO
2632
Uniaation, Inc., Danbury, Connecticut 06810 (V.St.A.) Programmierbarer Manipulator
Die Erfindung bezieht sich auf einen programmierbaren
Manipulator, wie er beispielsweise in der US-PS 3 661 051
und in der alteren deutschen Patentanmeldung P 26 49 123.6 der gleichen Anmelderin beschrieben ist. Ein solcher Manipulator kann durch Instruktion derart programmiert werden, daß er in aufeinanderfolgenden Arbeitsspielen Jeweils eine gewünschte Folge von Operationen vollführt.
Programmierbare Manipulatoren finden Verwendung in den
verschiedensten Industriezweigen, sei es zum Transport von Gegenständen von einer bestimmten Stelle zu einer anderen,
709837/0769
_t_ 270933b
/M
sei es zur Durchführung von Arbeltsoperationen, wie z.B. Schweiß- oder ParbsprItzoperationen. Entsprechende Manipulatoren gehen neben der vorgenannten US-PS 3 661 051 und deutschen Patentanmeldung P 26 49 123.6 beispielsweise auch noch aus der US-PS 3 306 471, der US-PS 3 543 947, der US-PS 3 744 032, der US-PS 3 885 295, der US-PS 3 890 552 und der GB-PS 781 465 hervor.
Bei solchen Manipulatoren kann es von Fall zu Fall erwünscht sein, das gespeicherte Programm ohne großen Aufwand und ggf. nur bezüglich einzelner Programmschritte zu modifizieren.
In einigen Fällen sieht das Programm vor, daß der Manipulator ein z.B. auf einem Förderband bewegliches Werkstück begleitet und dabei eine bestimmte Folge von Arbeitsoperationen, wie z.B. Schweißoperationen, ausfuhrt. In anderen Fällen kann der Manipulator ähnliche Operationen an einem feststehenden Werkstück ausführen. In jedem Fall wird der Manipulator dabei so programmiert, daß Positionsdaten für aufeinanderfolgende Programmschritte eingegeben werden, die im Arbeitsbetrieb des Manipulators als Steuerdaten für die Bewegungen des Manipulatorarmes bzw. -greifers dienen. Dabei kann die Dateneingabe durch Instruktion in der Weise erfolgen, daß der Manipulatorarm bzw. -greifer physisch in die betreffenden Positionen gefahren und dann die dazugehörigen Positionsdaten in dem Programmspeicher aufgezeichnet werden. Die Instruktion in Verbindung mit einem beweglichen Förderband.kann erfolgen, indem das Förderband mit einem in Betracht kommenden Werkstück an einzelnen dicht aufeinanderfolgenden Stellen angehalten und sodann der Manipulatorarm bzw. -greifer nachgeführt wird, wie im einzelnen in der US-PS 3 744 032 beschrieben. Die betreffenden Positionen des Werkstücks oder des Förderbandes werden zusammen mit den Positionen des Armes bzw. Greifers aufgezeichnet. Im anschließenden Arbeitsbetrieb läuft dann die Arbeitsweise des Manipulators naturgemäß phasenrichtig mit dem Vorschub des Werkstücks ab.
709837/0769 ./.
.>/- 270933b
Bel der Beobachtung dieses Arbeitsablaufes, sei es in Verbindung mit einem beweglichen oder einem feststehenden Werkstück, wird die Bedienungsperson zuweilen feststellen, daß bestimmte Operationen nicht oder nicht mehr ganz in der gewünschten Weise ablaufen, beispielsweise daß eine Schweißstelle verschoben erscheint oder ein zu montierendes Teil nicht tief genug eingeführt wird. Bei der Arbeitsweise in Verbindung mit einem beweglichen Förderband kann sich zeigen, daß der Manipulator der Bewegung des Bandes geringfügig voraus- oder nacheilt. Die Gründe hierfür können verschiedenartige sein, wie beispielsweise eine von vorneherein unkorrekte Programmierung, leichte Abänderungen des Werkstücks oder in der Position des Werkstücks gegenüber dem Manipulator, Abnutzungserscheinungen an dem Manipulatorarm oder -greifer, Änderungen der zu montierenden Teile oder Ersatz der verwendeten Werkzeuge durch neue.
Die dabei auftretenden Unstimmigkeiten bzw. gewünschten Änderungen werden gewöhnlich recht gering sein, etwa in der Größenordnung weniger Millimeter, auch werden sie häufig nur einzelne Bewegungskoordinaten und/oder Programmschritte betreffen. Dessen ungeachtet müssen herkömmliche Manipulatoren zu diesem Zweck stillgelegt und entsprechend neu programmiert werden, was verhältnismäßig aufwendig und mit einem vorübergehenden Ausfall ggf. einer gesamten Fertigungsstraße verbunden ist.
Der Erfindung liegt die Aufgabe zugrunde, hier Abhilfe zu schaffen, d.h. einen Weg anzugeben, um eine gewünschte Programmmodifikation ohne Betriebsunterbrechung auf verhältnismäßig einfache Weise rasch und korrekt vornehmen zu können.
Diese Aufgabe ist durch die im Patentanspruch 1 angegebenen Merkmale gelöst. Die Unteransprüche bezeichnen vorteilhafte Weiterbildungen der im Anspruch 1 angegebenen Erfindung.
709837/0769 J'
_,- 270933S
/13
Die Erfindung ermöglicht es, die erwähnten Programmodifikationen während des Arbeitsbetriebes und ohne Unterbrechung der Arbeitsweise des Manipulators vorzunehmen und dabei sogleich den Erfolg der jeweils vorgenommenen Modifikationen zu überprüfen. Dabei kann die erfindungsgemäße Modifikationseinrichtung von dem Manipulator abtrennbar und für mehrere in Betracht könnende Manipulatoren verwendbar sein.
Nachfolgend sind bevorzugte Ausführungsbeispiele der Erfindung anhand der Figuren im einzelnen beschrieben. Von diesen zeigt
Fig. 1 eine perspektivische Ansicht eines für die Erfindung in Betracht komaenden Manipulators, wie er in der US-PS 3 661 051 im einzelnen beschrieben ist,
Fig. 2 eine Ansicht der betreffenden erfindungsgem&ßen Programmmodifikationseinrichtung in Gestalt eines selbständigen, tragbaren Geräts,
Fig. 3 ein Blockschaltbild des Steuerungssystems des Manipulators in Verbindung mit der erfindungsgemäßen Programmodifikationseinrichtung,
Fig. 4 ein z.T. schematisches Schaltbild der erfindungsgemäßen Modifikationseinrichtung in einer ersten Ausführungsform,
Fig. 5 ein Diagramm einiger darin verwendeter Signale, Fig. 6 ein schematisches Schaltbild einer erfindungsgemäßen
Programmodifikationseinrichtung in einer anderen Ausführungsform,
Fig. 7 ein Schaltbild eines darin verwendeten ersten Codeumsetzers und
Fig. 8 ein solches eines zweiten bei dem Ausführungsbeispiel nach Fig. 6 verwendeten Codeumsetzers.
709837/0769
Der in Fig. 1 gezeigte Manipulator entspricht in seinem generellen Aufbau demjenigen aus der US-PS 3 661 051, worauf hinsichtlich der betreffenden Einzelheiten Bezug genommen wird. Des weiteren entspricht die Manipulatorsteuerung nach Fig. 3 derjenigen nach der älteren deutschen Patentanmeldung P 26 49 123.6, auf die gleichfalls Bezug genommen wird.
Der gezeigte Manipulator besitzt eine rechteckige Grundplatte 40, auf welcher der eigentliche Manipulator zusammen mit allen seinen hydraulischen, elektrischen und elektronischen Bauteilen angeordnet ist, die dafür erforderlich sind, um programmierte Bewegungen des Manipulatorarmes bzw. -greifers oder dergl. in fünf Koordinaten oder Freiheitsgraden zu bewirken.
Im einzelnen trägt die Grundplatte 40 einen Steuerungsschrank 42, in dem sich das elektronische Steuerungssystem des Manipulators befindet und der auf seiner Oberseite eine Bedienungstafel 44 aufweist. Auf dieser Bedienungstafel befinden sich die verschiedenen Armaturen der Steuerung, die dazu erforderlich sind, die Bewegungen des Manipulatorarmes- bzw. -greifers in einem anfänglichen sogenannten Instruktionsbetrieb als auch in dem späteren Arbeitsbetrieb zu steuern, wobei der Manipulatorarm bzw. -greifer immer wieder die gleichen, im Instruktionsbetrieb einprogrammierten Bewegungsabläufe in den fünf Koordinaten vollführt.
Der Manipulatorarm 50 ist mit Hilfe zweier Lageransätze 52 und 54 außerhalb zweier ebensolcher Lageransätze 56 und 58 auf einem aufrechtstehenden Hohlzylinder 60 um eine horizontale Querachse schwenkbar angeordnet. Der Hohlzylinder 60 selbst ist drehbar auf einer fest mit der Grundplatte 40 verbundenen hohlen Säule (nicht sichtbar) gelagert. Die Lageransätze 52 und 54 umschließen Achsstummel 62, die sich von den Lageransätzen 56 und 58 nach außen erstrecken, um eine möglichst stabile, präzise Lagerung zu ergeben.
709837/0769 ./.
-<r- 7709335
Zum Aufwärts- und Abwärtsschwenken des Manipulatorarmes 50 um die genannte Querachse ("Hebe-Senk-Bewegung") dient ein Hydraulikzylinder 64, dessen unteres Ende an dem Hohlzylinder 60 angelenkt ist, während seine Kolbenstange vor dem Hohlzylinder an dem Arm 50 angreift.
Der Arm 50 enthält zwei parallele, durch einen dazwischenliegenden Hydraulikzylinder gemeinsam aus- und einfahrbare Rohre 70 ("Ausfahrbewegung"), die an ihrem freien, äußeren Ende durch ein Querhaupt 74 verbunden sind. Dieses Querhaupt trägt einen nach vorne weisenden Handteil 78, mit dem der pneumatisch betätigbare Greifer 80 mit einander gegenüberliegenden Greiffingern und 84 verbunden ist. Statt dessen kann der Handteil 78 jedoch auch irgend ein Werkzeug oder dergl., wie z.B. eine Schweißzange oder eine Spritzpistole, tragen.
Der Greifer 80 ist gegenüber dem Querhaupt 74 unabhängig von den Bewegungen des Armes 50 um zwei verschiedene Achsen dreh- bzw. schwenkbar. Zum einen kann der Handteil 78 um eine Querachse geschwenkt werden (Handbeugebewegung), zum anderen kann er um seine Längsachse gedreht werden (Handdrehbewegung).
Zur Erzielung der erstgenannten dieser beiden Bewegungen, d.h. der Handbeugebewegung, befindet sich auf der linken Seite des Armes 50 (in der Figur unsichtbar) ein Hydraulikzylinder mit einer an beiden Enden hervortretenden Kolbenstange. Die Enden dieser Kolbenstange sind durch eine Rollenkette miteinander verbunden, die über zwei Kettenräder läuft. Hierdurch wird die lineare Bewegung der Kolbenstange in eine Drehbewegung umgewandelt, die sich über Kegelräder einem in der Nähe des vorderen Armendes eine Kugelmutter enthaltenden Torsionsrohr mitteilt. Die Kugelmutter steht gleitfähig in Eingriff mit einer Keilwelle innerhalb eines der Rohre 70, das sich beim Aus- bzw. Einfahren des Armes frei gegenüber dem Torsionsrohr verschieben lässt. Die Drehbewegung der Keilwelle teilt sich einem Kegelradgetriebe innerhalb des Querhauptes 74 mit, woraus die Handbeugebewegung resultiert.
709837/0769
/ft
In ähnlicher Weise befindet sich ein Hydraulikzylinder 100 auf der rechten Seite der Armanordnung 50, dessen Kolben eine mit beiden Enden einer Rollenkette 104 verbundene Kolbenstange 102 aufweist. Die Kette 104 läuft über zwei Kettenräder 106, wovon das hintere wiederum über Kegelräder ein Torsionsrohr in Drehung versetzt, das nahe dem vorderen Armende eine Kugelmutter enthält. Diese Kugelmutter steht in Eingriff mit einer Keilwelle, deren Drehung über ein weiteres Kegelradgetriebe in dem Querhaupt 74 die Handdrehbewegung hervorruft.
Der fünfte Freiheitsgrad besteht in einer Schwenkbewegung der Armanordnung 50 um die vertikale Mittelachse des Hohlzylinders 60 ("Armschwenkbewegung"). Zur Ausführung dieser Bewegung trägt der Hohlzylinder 60 an seinem unteren Ende einen Zahnkranz, der mit einer Zahnstange in Verbindung mit den Kolben zweier entsprechender, gegenüberliegender Hydraulikzylinder 124 und 126 kämmt. Zur Ausschaltung eines Spiels in diesem Eingriff und damit eines toten Ganges in der Armschwenkbewegung kann, wie in der US-PS 3 661 051 angegeben, ein beständig unter dem Hydraulikdruck des Systems stehender Zylinder dienen, dessen Kolben über einen gleitfähigen Knopf auf die Rückseite der Zahnstange drückt.
Die hydraulische Energie für die Betätigung der vorausgehend beschriebenen Hydraulikzylinder entstammt einem autonomen Hydrauliksystem mit einer durch einen Elektromotor 142 angetriebenen Hydraulikpumpe auf der Grundplatte 40. Der Systemdruck beträgt beispielsweise ca. 60 at. Zu seiner Vergleichmäßigung ist ein Windkessel 160 vorgesehen. Fünf Servoventile dienen dazu, die Beaufschlagung der vorausgehend erwähnten Hydraulikzylinder für die Bewegungen in den fünf Koordinaten bzw. Freiheitsgraden zu steuern. Diese Servoventile werden ihrerseits gesteuert durch elektrische Signale, die auf noch näher beschriebene Weise in dem elektronischen Steuerungssystem des Manipulators erzeugt werden.
709B37/0769
-<β- 770933b
Al
Im einzelnen ist auf der Grundplatte 40 ein Servoventil mit zwei Ausgängen für die wechselweise Beaufschlagung der Zylinder 124 und 126 vorgesehen. Die unter dem Systendruck stehende Hydraulikflüssigkeit gelangt weiterhin über eine Leitung durch die den Hohlzylinder 60 tragende hohle Säule hindurch zu einer Hydraulikverbindung für die Versorgung der mit dem Arm 50 um die vertikale Achse mitschwenkbaren Hydraulikzylinder einschließlich Rücklauf. Dazu ist auf dem Hohlzylinder 60 ein Servoventil für die Hebe-Senk-Bewegung vorgesehen, über welches beide Enden des Zylinders 64 beaufschlagbar sind. Des weiteren gelangt die Hydraulikflüssigkeit Über einen Verteiler 180 auf dem Arm 50 zu einem Servoventil für die Ausfahrbewegung an dem rückwärtigen Ende der Armanordnung, einem Servoventil für die Handbeugebewegung auf der linken Seite der Armanordnung und zu einem ähnlichen Servoventil 186 für die Handdrehbewegung auf der rechten Seite der Armanordnung, jeweils unter dem betreffenden Hydraulikzylinder.
Das Servoventil für die Ausfahrbewegung steuert die Beaufschlagung des rückwärtigen Endes des Ausfahrzylinders, dessen Kolben als Differentialkolben ausgebildet ist. Die Servoventile für die Handbeuge- und die Handdrehbewegung steuern die Beaufschlagung der betreffenden Zylinder auf der linken bzw. rechten Seite der Armanordnung. Dabei wird jeweils das eine Ende des Zylinders «it dem Zufluß verbunden, während das andere Zylinderende mit dem Rücklauf in Verbindung tritt. Die beiden Zylinder 124 und 126 sind jeweils einfachwirkende Zylinder, deren Kolben über die dazwischenliegende Zahnstange derart miteinander verbunden sind, als ob es sich um einen einzigen Kolben in einem doppeltwirkenden Zylinder handeln würde. Ein überdruckventil an dem Rücklauf des betreffenden Servoventils für die Armschwenkbewegung verhindert das Auftreten von Überlastungen und verbessert die Verzögerungscharakteristik für die Armschwenkbewegung .
709837/0769
a 270933b
Al
Über einen Schlauch 232 wird dem Arm 50 über eine Schmiervorrichtung 234 und ein Dreiweg-Hagnetventil 236 Druckluft zur Betätigung des Greifers 80 zugeführt. Von dem Magnetventil 236 gelangt die Druckluft über eine teleskopartige Luftleitung und eine die Handbeugebewegung gestattende Verbindung zu einem Pneumatikzylinder innerhalb des Handteils 78. Wird das Magnetventil 236 stromlos, so beaufschlagt die Druckluft den Pneumatikzylinder, um den Greifer 80 zu schließen. Wird das Magnetventil 236 erregt, so wird der Pneumatikzylinder entlüftet und der Greifer durch Federkraft geöffnet.
Jedes der zuvor erwähnten Servoventile ist ein Vierwegeventil mit kontinuierlich verstellbarem Ventilglied, welches sowohl für die Polarität als auch für die Amplitude des anliegenden Gleichstrom-Steuersignals aus dem elektronischen Steuerungssystem empfindlich ist. Die Polarität des Signals bestimmt die Richtung, in welcher das Ventilglied verschoben wird, während die Amplitude des Signals für die Größe der Auslenkung des Ventilgliedes und damit für die Stellgeschwindigkeit des betreffenden Hydraulikzylinders maßgeblich ist. Als Antrieb dieser Servoventile dient vorzugsweise ein gleichachsig mit dem Ventilglied angeordnetes, langhubiges Magnetsystem, um ein rasches und präzises Ansprechen unter Verwendung einer hydraulischen Rückkoppelung zu ermöglichen, ohne daß dazu mechanische übertragungsmittel erforderlich wären.
Fig. 2 zeigt das Xußere der erfindungsgemäßen Modifikationseinrichtung 250, die innerhalb des Schaltschemas der Fig. 3 als Block dargestellt ist. Sie ist zweckmäßigerweise in einem tragbaren Koffer angeordnet, der über ein flexibles Kabel mit dem Steuerungsschrank 42 (Fig. 1), genauer gesagt mit einem Prüfstecksockel auf der Bedienungstafel 44, verbunden werden kann. Damit kann die Modifikationseinrichtung 250 nach Belieben an einen Manipulator angeschlossen werden, wo gerade eine Modifikation des Programms wünschenswert erscheint. Sie erlaubt es, den Programmablauf zu beobachten und anhand dieser Beobachtung, ggf.
70S 3 37/0769
770933b
schrittweise, Modifikationen bestimmter Programmschritte vorzunehmen. Sodann kann die Modifikationseinrichtung 250 wieder ausgesteckt und verstaut werden, sofern sie nicht gleich anschließend an einem anderen Manipulator benötigt wird.
Das eigentliche Steuerungssystem des Manipulators ist von der gleichen Art, wie in der US-PS 3 661 051 beschrieben. Hierbei weist der Manipulator für eine jede seiner fünf Bewegungskoordinaten (Freiheitsgrade) einen Codierer auf, der den augenblicklichen Koordinatenwert der jeweiligen Position des Manipulatorarmes bzw. -greifers als digitales Signal angibt. Die Codierer können aus einem geeigneten SynchroUbertrager mit nachgeschaltetem Analog-Digital-Umsetzer bestehen, der das sinusförmige Ausgangssignal des SynchroUbertragers in das betreffende digitale Signal umwandelt. Im übrigen aber kann eine entsprechend ausgebildete Modifikationseinrichtung etwa auch in Verbindung mit dem Manipulator nach der deutschen Patentanmeldung P 26 49 123.6 Verwendung finden, der sechs Freiheitsgrade bzw. Bewegungskoordinaten besitzt.
Jedenfalls werden während des Instruktionsbetriebes die verschiedenen Hydraulikzylinder, gewöhnlich mit verhältnismäßig niedriger Geschwindigkeit, genügend lange beaufschlagt, um den Manipulatorarm bzw. -greifer in eine jede für das Programm erforderliche Position zu bringen. Dabei werden die Codierer über geeignete Getriebe entsprechend angetrieben. Ist die jeweilige Position in allen Koordinaten erreicht, so werden die betreffenden Positionsdaten in dem Programmspeicher aufgezeichnet, von wo sie später die Steuersignale für die Steuerung des Manipulators im Arbeitsbetrieb bilden.
In diesem Arbeitsbetrieb werden die betreffenden Steuersignale mit den dann gleichzeitig anfallenden Positionssignalen aus den Codierern verglichen, um ein Abweichungssignal zu gewinnen, welches dazu dient, die Servoventile für die einzelnen Hydraulikzylinder entsprechend anzusteuern, um den Manipulatorarm bzw. -greifer in die durch das jeweilige Steuersignal vorgegebene
Position zu bringen.
709 8 37/0769
-ir- 770933b
In Fig. 3 ist ein entsprechender geschlossener Instruktionskreis zu erkennen. Das digitale Ausgangssignal der verschiedenen Codierer 1000 wird über die Leitung 1002 auf eine Austastschaltung 1010 gegeben, durch welche die Positionssignale En der einzelnen Koordinaten über die Leitung 1004 zyklisch einem Vergleicher 1006 wie auch einer Instruktionsschaltung 1032 zugeführt werden. Diese Instruktionsschaltung liefert im Instruktionsbetrieb zyklisch die Codiererausgangssignale als Dateneingangssignale Dn an den Vergleicher 1006, worauf der Vergleicher über die Leitung 1012 die allgemein mit 1014 bezeichneten Ansteuermittel für die insgesamt mit 1016 bezeichneten Servoventile der einzelnen Bewegungskoordinaten steuert. Damit wird im Instruktionsbetrieb vermieden, daß der Manipulatorarm bzw. -greifer im Laufe der Zeit abirrt, um die richtigen Positionsdaten als Steuersignale aufzuzeichnen. Der Vergleicher 1006, die Ansteuermittel 1014 und die Servoventile 1016 seien alle von derjenigen Art, wie in der US-PS 3 661 051 beschrieben.
Die auf der Leitung 1004 zyklisch auftretenden Positionssignale En gelangen ferner an einen Eingang einer Dateneingangs- und -auswahlschaltung 1018, die im Instruktionsbetrieb so angesteuert wird, daß sie diese Signale als Multiplexsignale MEn über die Leitung 1022 dem Programmspeicher 1020 zuführt, sobald der Programmierer einen entsprechenden Aufzeichnungsknopf auf einer Instruktionssteuereinrichtung drückt, wie sie gleichfalls in der US-PS 3 661 051 beschrieben ist. Die am Eingang 1026 der Austastschaltung 1010 auftretenden Ansteuersignale bestehen aus Multipleximpulsen auf den Ausgangsleitern Gl - G8 eines Decodierers 1028.
Während des Arbeitsbetriebes wird das Steuerungssystem überwiegend im Punktsteuerungsbetrieb arbeiten, wobei die mit einem jeden Programmschritt aufgezeichneten Positionssignale von dem Programmspeicher als Steuersignale dem Vergleicher 1006 zugeführt werden, der sie mit den gleichzeitig aus den Codierern 1000 eintreffenden gegenwärtigen Positionssignalen vergleicht. Auf
70! :· ? 7 / 0 7 6 9
? 7 o ?n ί b
diese Weise wird der Manipulatorarm bzw. -greifer in allen fünf Koordinaten bewegt, bis das Ausgangssignal des Vergleichers auf der Leitung 1012 für jede Koordinate einen bestimmten Wert unterschreitet. Der Vergleicher 1006 enthält einen Digital-Analog-Umsetzer, der wiederum auf Multiplex-Basis arbeitet, sowie eine Abtast- und Halteschaltung für jede Koordinate, wie in der US-PS 3 661 051 sowie auch der deutschen Patentanmeldung P 26 49 123.6 beschrieben.
Außer im Punktsteuerungsbetrieb kann das Steuerungssystem auch über eine sog. lineare Interpolationsschaltung 1030 gesteuert werden, womit kurze gradlinige Bahnabschnitt mit konstanter Geschwindigkeit durchfahren werden können, ähnlich wie dies mit einer kontinuierlichen Bahnsteuerung der Fall ist. Einzelheiten einer solchen linearen Interpolationsschaltung gehen gleichfalls aus der deutschen Patentanmeldung P 26 49 123.6 hervor. Die Steuersignale aus dem Programmspeicher 1020 werden als Ilultiplex-Signal MDn über eine Leitung 1034 einem Pufferregister 1036 und von dort über die lineare Interpolationsschaltung 1030 und die Instruktionsschaltung 1032 dem Vergleicher 1006 zugeführt. Im Punktsteuerungsbetrieb bleiben diese Steuersignale von der linearen Interpolationsschaltung 1030 wie auch von der Instruktionsschaltung 1032 unbeeinflusst. Sämtliche der Signale En, Dn, MSn und MDn bestehen aus 15-Bit-Datenwortevn, und entsprechend enthält jede der betreffenden Signalleitungen 15 Leiter. Eine Schreib- und Leseschaltung 1038 steuert den Programmspeicher 1020 so, daß er im Instruktionsbetrieb die Positionsdaten zusammen mit Daten für eine Programmodifikation und zusätzliche Betriebsdaten aufzeichnet, bzw. die so gespeicherten Datenwörter im Arbeitsbetrieb stets aufs neue liest. Im die Datenwörter auf geeignete Speicherplätze zu bringen bzw. von dort zu lesen, ist in Verbindung mit dem Programmspeicher 1020 ein Adressenregister mit einer Folgesteuerschaltung 1040 vorgesehen, welche dem Speicher ein Adressensignal An zuleitet. Das Adressensignal An enthält digitale
709 ·ί 37/0769
Informationsbits und fließt über entsprechend viele Leiter, um die gewünschte Anzahl von Adressen für die in Betracht kommenden Programmschritte des jeweiligen Manipulators zu liefern. So treten in einem typischen Fall zwölf Informationsbits entsprechend 4096 Speicherplätzen auf 12 Leitern auf.
Mit der bereits erwähnten Modifikationseinrichtung 250 können die in dem Programmspeicher 1020 als Steuersignale gespeicherten Positionssignale modifiziert werden, während der Manipulator im Arbeitsbetrieb arbeitet. Wie aus den Figuren 2 bis 5 ersichtlich, verwendet die Modifikationseinrichtung 250 das Adressensignal An, ein Signal WSP von der Leitung 1042, welches aus einer. Impuls bei jedem Programmschrittwechsel besteht, auf den Ausgangsleitern Gl - G8 des Docodierers 1028 auftretende Multipleximpulse sowie das Speicherausgangssignal MDn. Sie liefert über die Leitung 1044 ein Schreibsteuer-Ausgangssignal ZRX sowie über die Leitung 1046 ein modifiziertes Datensignal ZEn, welches aus dem durch die Modifikationseinrichtung 250 modifizierten Speicherausgangssignal MDn besteht. Das modifizierte
an
Datensignal ZEn gelangt/eine Hilfseinangsauswahlschaltung 1050, die auch noch andere Eingangssignale empfangen kann, wie z.B. von einem Bandspeicher 1052. Die Hilfseingangsauswahlschaltung 1050 wird entsprechend gesteuert, um eines der Hilfseingangssignale, wie z.B. das Signal ZEn oder das Ausgangssignal des Bandspeichers, dem Dateneingangs- und -auswahlschaltkreis 1018 zuzuführen, der wiederum so gesteuert ist, daß er dem Programmspeicher entweder das Signal MEn von der Hilfseingangsauswahlschaltung 1050 oder das Signal En von der Austastschaltung 1010 zuführt.
Wie in Fig. 2 erkennbar, weist die Modifikationseinrichtung 250 zwei Stellrad-Wählschalter 1060 und 1062 auf, mit denen der erste und der letzte Programmschritt des zu modifizierenden Programmabschnittes eingestellt werden können. Stattdessen können selbstverständlich auch andere hierfür geeignete Schalter Verwendung finden. Ein Hauptschalter 1064 dient dazu, die Stromversorgung der Modifikationseinrichtung 250 ein- bzw. auszuschalten,
7 0 <? · 37/0769
7709335 23
während ein Startdruckknopf 1066 zu betätigen ist, wenn der Programmierer eine Programmodifikation vornehmen möchte. Eine Anzeigelampe 1067 leuchtet auf, wenn gerade eine Programmmodifikation stattfindet, und eine weitere Anzeigelampe, 1068, zeigt an, wann die Hodifikationseinrichtung die gewünschte Modifikation beendet hat. Schiebe- oder Drehschalter mit N Positionen, wie die Schalter 1070, 1072, 1074, 1076 und 1078, dienen dazu, die Größe der gewünschten Änderung in einer jeden Koordinate einzustellen, während ein Umschalter für jede Koordinate, wie die Umschalter 1080, 1082, 1084, 1086 und 1088, die Einstellung der Richtung der gewünschten Änderung erlaubt. An den Schaltern 1070 - 1078 können Inkremente einer passenden Größe, wie z.B. 2,5 mm, eingestellt werden, deren jedes sich in einer Anzahl Bits äußert, so daß das Schalterausgangssignal ohne weiteres binärcodiert werden kann.
Nachdem er ein Arbeitsspiel des Manipulators beobachtet hat, bestimmt der Programmierer, welche Programmschritte zu modifizieren sind, um z.B. die Position einer Schweißstelle oder die Orientierung eines Teiles bei einem Montagevorgang zu korrigieren. Darauf schätzt er die erforderlichen Positionsänderungen in den verschiedenen Koordinaten und gibt diese über die Schalter 1070 - 1088 ein. Ebenso werden auch der Start- und Stopprogrammschritt des zu modifizierenden Programmabschnittes vermittels der Schalter 1060 und 1062 eingegeben. Sofern die Modifikationseinrichtung angeschlossen und mittels des Hauptschalters 1064 auch die Stromversorgung eingeschaltet ist, kann sodann der Startdruckknopf 1066 betätigt werden.
Nun arbeitet die Modifikationseinrichtung automatisch in der Weise, daß sie die in dem Programmspeicher 1020 für die einzelnen Bewegungskoordinaten gespeicherten Daten für alle mittels der Schalter 1060 und 1062 eingestellten Programmschritte in der durch die Schalter 1070 - 1088 vorgegebenen Weise modifiziert, während der Manipulator das nächste Arbeitsspiel vollführt.
70^37/0769
Während diese Modifikation stattfindet, leuchtet die Anzeigelampe 1067 auf. Ist die Modifikation für alle eingestellten Programmschritte durchgeführt, so hört die Modifikationseinrichtung automatisch auf zu arbeiten und bringt gleichzeitig die Anzeigelampe 1068 zum Aufleuchten, um dem Programmierer oder der sonstigen Bedienungsperson anzuzeigen, daß die eingestellte Programmmodifikation beendet ist. Der gesamte Vorgang vom Zeitpunkt der Dateneingabe bis zum Aufleuchten der Anzeigelampe 1068 dauert normalerweise nur einige Sekunden. Nun kann der Programmierer während des nächsten Arbeitsspiels bei noch mit dem Manipulator verbundener Modifikationseinrichtung beobachten, ob die durchgeführte Programmänderung den Erwartungen genügt, um sodann die Modifikationseinrichtung auszustecken. Anderenfalls, wenn sich zeigt, daß in den gleichen oder auch anderen Programmschritten des betreffenden Programms eine zusätzliche Korrektur erforderlich sein sollte, kann der vorausgehend beschriebene Vorgang mit entsprechenden Einstellungen wiederholt werden, so lange, bis das gesamte Programm allen Wünschen genügt.
Die Figuren 4 und 5 zeigen den Schaltungsaufbau bzw. die Arbeitsweise der Modifikationseinrichtung 250 im einzelnen. Der Schalter 1060 für den Start-Prοgrammschritt liefert über die Leitung 300 ein BCD-Signal an einen BCD-Binär-Umsetzer 302, der dieses Signal in Binärform einem Größenvergleicher 306 zuführt. Als zweites empfängt dieser Vergleicher das Adressensignal An, welches mit dem erstgenannten Signal aus dem Schalter 1060 verglichen wird. Das Ausgangssignal des Vergleichers gelangt über die Leitung 308 an ein UND-Gatter 310 mit zwei Eingängen, dessen Ausgangssignal einen hohen Pegel hat, wenn der an dem Schalter 1060 eingestellte Programmschritt dem gerade durch das Adressensignal An angegebenen Programmschritt entspricht, und einen niedrigen Pegel, solange das Adressensignal An einen geringeren Programmschritt angibt.
Ebenso gelangt das Ausgangssignal des Schalters 1062 über eine Leitung 312 zu einem Umsetzer 314, dessen binäres Ausgangssignal über die Leitung 316 einem Größenvergleicher 318 zufließt,
7OP^37/ 076 9
-ie
7709335
dessen zweites Eingangssignal ebenfalls das Adressensignal An bildet. Das Ausgangssignal des Vergleichers 318 gelangt über die Leitung 320 an den einen Eingang eines UND-Gatters 322, dessen anderer Eingang wiederum das Adressensignal An empfängt. Das Ausgangssignal des UND-Gatters 322 hat einen hohen Pegel, wenn das Stopprogrammschritt-Signal aus dem Schalter 1062 dem Adressensignal An entspricht. Der zweite Eingang, 324, des UND-Gatters 310 empfängt ein Triggersignal dann, wenn der Startdruckknopf 1066 betätigt wird, und das Ausgangssignal dieses UND-Gatters gelangt an den Setzeingang einer bistabilen Kippschaltung 326, womit diese gesetzt wird. Der Q-Ausgang dieser Kippschaltung ist verbunden mit dem einen Eingang eines UND-Gatters 328 mit zwei Eingängen, dessen zweiter Eingang an dem Q-Ausgang einer zweiten Kippschaltung, 330, liegt. Die Kippschaltung 330 wird gesetzt durch das Signal WSP von der Leitung 1042. 1st der durch das Adressensignal An angegebene gegenwärtige Programmschritt gleich dem an dem Schalter 1060 eingestellten Startprogrammschritt, so wird die Kippschaltung 330 gesetzt, wodurch das UND-Gatter 328 ein Ausgangssignal hervorbringt und die Programmmodifikation in Gang setzt. Das Ausgangssignal des UND-Gatters 328 gelangt über die Leitung 332 an einen Sechsstufenzähler 334, der einen Decodierer 336 steuert.
Der Zähler 334 wird getriggert durch die rückwärtige Flanke der Multipleximpulse G8, deren Form aus Fig. 5 hervorgeht. Fig. gibt ebenso die Multipleximpulse G6 und G7 wieder. Die dazwischen auftretenden Multiplex-Impulse Gl - G5 sind jeweils nur durch Unterbrechungen in der Zeitachse angegeben. Das Schaltbild der Fig. 4 beschränkt sich der Übersichtlichkeit halber auf drei Bewegungskoordinaten, obgleich die Modifikationseinrichtung 250, wie gesagt, für jede beliebige Zahl von Bewegungskoordinaten ausgelegt werden kann.
Der Decodierer 336 erzeugt sechs Zeitsignale gl - g6 (Fig.5) in Form von aneinander anschließenden Impulsen, die von dem Zähler 334 jeweils im Anschluß an die Multipleximpulse G8 hervorgerufen werden.
709837/0769
- ** - 7709335
Um die Schaltmittel bestmöglich auszunutzen, erfolgt die Programmodifikation für die einzelnen Koordinaten nacheinander, so daß jeweils zwei Hultiplex-Austastzyklen erforderlich sind, um die Programmodifikation für eine Koordinate durchzuführen, nämlich einer zum Lesen der Daten aus dem Programmspeicher 1020 (Signal MDn) und der andere zum Aufzeichnen der Daten entsprechend dem modifizierten Datensignal ZEn in dem Speicher. Von den MuItipleximpulsen Gl - G8 finden die ersten drei Impulse, Gl - G3, für irgendwelche Hilfsfunktionen und die letzten fünf Impulse, G4 - G8, für die Steuerung in den fünf Bewegungskoordinaten Verwendung. In dem betrachteten Beispiel soll der Impuls G6 der Armschwenkbewegung, der Impuls G7 der Hebe-Senk-Bewegung und der Imnuls G8 der Ausfahrbewegung des Manipulatorarmes entsprechen. Die Zeitsignale gl, g3 und g5 entsprechen dem Lesevorgang für die genannten Koordinatenbewegungen, während die Zeitsignale g2, g4 und g6 dem Schreibvorgang in Zusammenhang mit diesen drei Bewegungen vorbehalten sind.
Der gewünschte Betrag der Positionsänderung in einer jeden der betrachteten drei Koordinaten wird, wie gesagt, mit den Schaltern 1070, 1072 und 1074 eingestellt. Diese Schalter, die ein binärcodiertes Ausgangssignal hervorbringen sollen, sind in Fig. als sog. Größenmodifikationsstufe 340 dargestellt. Das betreffende Größensignal für die Armschwenkbewegung gelangt über die Leitung 342 zu einem Eingang einer Reihe von Austastgattern dieser Koordinate, die in ihrer Gesamtheit mit 344 bezeichnet sind und des weiteren die Hultipleximpulse G6 als Eingangssignal empfangen. Die Gatter 344 liefern während des Auftretens des Multipleximpulses G6 über die Leitung 346 ein Ausgangssignal, welches dem Betrag der eingestellten Änderung für die Armschwenkbewegung entspricht. Ebenso gelangt ein Ausgangssignal der Größenmodifikationsstufe 340 entsprechend der Hebe-Senk-Bewegung über die Leitung 348 zu einer Reihe von Austastgattern 351, die als weiteres Eingangssignal die Multipleximpulse G7 empfangen und während deren Dauer über die Leitung 352 ein Ausgangssignal
709837/0769
entsprechend den Betrag der gewünschten Xnderung in dieser Koordinate liefern. Schließlich gelangt ein Ausgangssignal der Größenaodifikationsstufe 340 entsprechend dem Betrag der vorzunehmenden Veränderung in der Ausfahrkoordinate über die Leitung 350 zu einer Reihe von Austastgattern 354, die des weiteren die Multipleximpulse G8 empfangen und unterdessen ein entsprechendes Ausgangssignal über die Leitung 356 liefern. Die Signale auf den Leitungen 346, 352 und 356 entsprechend den Beträgen der gewünschten Änderungen in den Armschwenk-, Hebe-Senk- und Ausfahrkoordinaten bilden jeweils ein Eingangssignal für eine Reihe von ODER-Gattern 358. Jede der Leitungen 342, 346, 348, 350, 352 und 356 besteht naturgemäß aus einer Sammelleitung, um eine entsprechende Anzahl Informationsbits übertragen zu können, die sich bestimmt durch die maximale Größe der mit einem Male vorzunehmenden Änderungen sowie der Genauigkeit, ait der diese änderungen vorzunehmen sind. In einem typischen Beispiel finden jeweils sechs Einzelleitungen entsprechend sechs Informationsbits für jede Koordinate Verwendung, womit die 64 niedrigwertigsten Bits der für eine jede Koordinate mit einem Programmschritt vorgegebenen Programmdaten modifiziert werden können.
Das Ausgangssignal der ODER-Gatter 358 gelangt über eine Leitung 360 an den einen Eingang eines Volladdierers 362, der entsprechend addiert oder subtrahiert. Während des Auftretens des Multipleximpulses G6 tritt auf der Leitung 360 eine Information entsprechend dem Betrag der gewünschten Xnderung in der Armschwenkkoordinate auf. Ebenso gelangen an den Volladdierer 362 während der Dauer der Multipleximpulse G7 und G8 über die Leitung 360 Informationen entsprechend der Größe der gewünschten Xnderung in der Hebe-Senk- bzw. der Ausfahrkoordinate.
Die sog. Modifikationsrichtungsstufe 364 symbolisiert die Umschalter 1080, 1082 und 1084 für die Bestimmung der Richtung der vorzunehmenden Xnderungen in der Armschwenk- der Hebe-Senk- und der Ausfahrkoordinate. Die Modifikationsrichtungsstufe 364
7 09 Ό 7/0769 'Λ
liefert über die Leitung 366 ein Ausgangssignal für die Armschwenkbewegung, über die Leitung 368 ein solches für die Hebe-Senk-Bewegung und über die Leitung 370 ein solches für die Ausfahrbewegung. Diese Signale bezeichnen jeweils die Richtung, in welcher die Veränderung vorzunehmen ist, beispielsweise für die Armschwenkbewegung, ob sie im Uhrzeiger- oder im Gegenuhrzeigersinn erfolgen soll. Die Leitung 366 führt an den einen Eingang eines UND-Gatters 372 mit zwei Eingängen, dessen zweiter Eingang wiederum die Multipleximpulse G6 empfängt. Die Leitung 368 führt zu dem einen Eingang eines UND-Gatters 374, an dessen zweiten Eingang die Multipleximpulse G7 gelangen, und die Leitung 370 ist mit dem einen Eingang eines UND-Gatters 376 verbunden, an dessen anderem Eingang die Multipleximpulse G8 eintreffen. Die Ausgänge der UND-Gatter 372, 374 und 376 sind mit den drei Eingängen eines ODER-Gatters 378 verbunden, dessen Ausgangssignal über die Leitung 368 an den Volladdierer 362 gelangt, um zu bestimmen, ob dieser addieren oder subtrahieren soll.
Während des jeweiligen Multipleximpulses G6, G7 oder G8 bestimmt somit das Ausgangssignal des ODER-Gatters 378, ob der Volladdierer 362 die durch das Ausgangssignal des ODER-Gatters 358 angegebene Änderung zu den jeweiligen Positionsdaten aus dem Programmspeicher (Signal MDn) hinzuaddieren oder ob er sie hiervon subtrahieren soll. Das Signal MDn trifft über die Leitung 382 an einem zweiten Dateneingang des Volladdierers 362 ein, nachdem es einen Codeumsetzer 384 passiert hat. Der Codeumsetzer 384 dient dazu, das Speicherausgangssignal MDn für den betreffenden Programmschritt vom Gray-Code in den Binärcode zu überführen, da der Programmspeicher die Daten im Graycode speichert.
Während des Auftretens des Multipleximpulses G6 addiert bzw. subtrahiert der Volladdierer 362 die Daten aus der Größenmodifikationsstufe 340 (Schalter 1070) zu bzw. von denjenigen aus dem Programmspeicher, je nach der Richtung der gewünschten Änderung, die durch die Modifikationsrichtungsstufe 364
709 9 37/07P9
(Schalter 1080) vorgegeben wird, um auf der Leitung 386 modifizierte Daten für die Armschwenkbewegung zu erhalten. Das gleiche geschieht während des Auftretens der Multipleximpulse G7 und G8 für die Hebe-Senk-Bewegung bzw. die Ausfahrbewegung. Über die Leitung 386 gelangt das Ausgangssignal des Volladdierers 362 zu einem weiteren Codeumsetzer, 388, der den Binärcode wiederum in einen Gray-Code verwandelt, worauf die modifizierten Daten in einem geeigneten Register 390 gespeichert werden, an dessen Ausgang 392 das modifizierte Datensignal ZEn auftritt. Dieses ist dasjenige, welches über die Leitung 1046 (Fig. 3) der Hilfseingangsauswahlschaltung 1050 zufließt, um über die Dateneingangs- und Auswahlschaltung 1018 zur korrekten Zeit in den Programmspeicher 1020 übergeben zu werden.
Das Register 390 speichert während des Multipleximpulses G6 die modifizierten Positionsdaten für die Armschwenkbewegung, während des Multipleximpulses G7 diejenigen für die Hebe-Senk-Bewegung und während des Multipleximpulses G8 diejenigen für die Ausfahrbewegungen. Es wird gesteuert über die Leitung 394 durch eine monostabile Kippschaltung 396 und ist dazu erforderlich, die modifizierten Positionsdaten während eines Austastzyklusses zu speichern, da ja die Positionsdaten einer jeden Koordinate während eines jeden Austastzyklusses nur entweder gelesen oder aufgezeichnet werden können.
So also verden die Daten für eine bestimmte Koordinate während eines Austastzyklusses, beispielsweise während des Auftretens des Multipleximpulses G6 entsprechend dem Zeitsignal gl gelesen und während des nächsten Austastzyklusses beim Zeitsignal g2 aufgezeichnet. Dementsprechend ist das auf der Leitung 394 auftretende Signal gegenüber der Forderflanke des betreffenden Multipleximpulses, im Beispiel G6, um die Dauer eines Austastzyklusses verzögert, um sicherzustellen, daß die Datenübertragung in das Register erst zu dem entsprechenden Zeitpunkt des nächsten Austastzyklusses erfolgt.
709837/07R9
ίο
Die Lese-Zeitsignale gl, g3 und g5 steuern das Register 390 in Verbindung mit den Multipleximpulsen G6, G7 und G8 über eine Reihe von Gattern derart, daß während des Zeitsignals gl die modifizierten Positionsdaten der Armschwenkbewegung, während des Zeitsignals g3 diejenigen der Hebe-Senk-Bewegung und während des Zeitsignals g5 diejenigen der Ausfahrbewegung gespeichert werden. Dies geschieht dadurch, daß das Zeitsignal gl auf einen Eingang eines UND-Gatters 400 mit zwei Eingängen gegeben wird, dessen zweiter Eingang den Multipleximpuls G6 entsprechend der Armschwenkbewegung empfängt, daß das Zeitsignal g3 auf den einen Eingang eines UND-Gatters 402 gegeben wird, dessen zweiter Eingang den Multipleximpuls G7 entsprechend der Hebe-Senk-Bewegung empfängt und daß das Zeitsignal g5 auf den einen Eingang eines UND-Gatters 404 gelangt, dessen anderer Eingang den Multipleximpuls G8 entsprechend der Ausfahrbewegung empfängt. Die Ausgangssignale der UND-Gatter 400, 402 und 404 gelangen in ein ODER-Gatter 406, dessen Ausgangssignal eine Verzögerungsstufe 408 passiert. Auf die Verzögerungsstnfe 408 folgt die monostabile Kippschaltung 396, deren Ausgangssignal das Register 390 steuert. Infolge der Zeitgabe durch die verschiedenen Gatter erscheinen die modifizierten Daten für die Armschwenkbewegung in dem Signal ZEn aus dem Register 390 während der gesamten Zeitdauer des Schreib-Zeitsignals g2, ebenso wie die modifizierten Daten für die Hebe-Senk-Bewegung während der gesamten Zeitdauer des Zeitsignals g4 und diejenigen für die Ausfahrbewegung während der gesamten Dauer des Zeitsignals g6 auftreten. Das auf der Leitung 1044 erscheinende Schreibsteuersignal ZRX steuert die Schreibund Leseschaltung 1038 derart, daß die modifizierten Positionsdaten für die Armschwenkbewegung, die Hebe-Senk-Bewegung und die Ausfahrbewegung während des Zeitsignals g2 bzw. g4 bzw. g6 in dem Programmspeicher 1020 aufgezeichnet werden, sofern am Ausgang des ODER-Gatters 358 modifizierte Positionsdaten erscheinen. Ein Detektorgatter 410 erzeugt aus diesem Ausgangssignal auf der Leitung 412 ein Ausgangssignal mit hohem Pegel, wenn während eines der Multipleximpulse G6, G7 und G8 solche modifizierten Positionsdaten auftreten. Das auf der Leitung 412
709 8 3 7/0769 .
• /»
erscheinende Ausgangssignal gelangt an jeweils einen Eingang dreier Gruppen von UND-Gattern 414, 416 und 418 mit jeweils drei Eingängen, welche die Schreibsteuergatter für die Armschwenkbewegung, die Hebe-Senk-Bewegung und die Ausfahrbewegung bilden. Die UND-Gatter 414 für die Armschwenkbewegung empfangen an ihren weiteren Eingängen das Schreib-Zeitsignal g2 und den Multipleximpuls G6, die UND-Gatter 416 das Zeitsignal g4 und den Multipleximpuls G7 und die UND-Gatter 418 das Zeitsignal g6 und den Multipleximpuls G8. Die Ausgänge der UND-Gatter 414, 416 und 418 bilden die Eingänge eines ODER-Gatters 420, an dessen Ausgang das Schreibsteuersignal ZRX erscheint.
Die vorgenannten Gatter wirken in der Weise, daß durch das Schreibsteuersignal ZRX in den Programmspeicher 1020 die modifizierten Positionsdaten für die Armschwenkbewegung während des Zeitsignals g2, die modifizierten Daten für die Hebe-Senk-Bewegung während des Zeitsignals g4 und diejenigen für die Ausfahrbewegung während es Zeitsignals g6 eingespeichert werden. Diese Einspeicherung während des Arbeitsbetriebes kann verschiedene Auswirkungen in dem Steuerungssystem haben, je nach den Eigenschaften des Programmspeichers und des Vergleichers 1006. Der Vergleicher 1006, dessen Einzelheiten in der US-PS 3 661 und der älteren deutschen Patentanmeldung P 26 49 123.6 beschrieben sind, enthält einen im Multiplexbetrieb arbeitenden Digital-Analog-Umsetzer sowie einen Prüf- und Haltestromkreis mit einem Speicherkondensator für jede Koordinate. Der Prüf- und Haltestromkreis speichert ein aus dem Digital-Analog-Umsetzer hervorgehendes analoges Abweichungssignal in Gestalt einer Spannung, welche während eines jeden Multiplexzyklus auf den letzten Stand gebracht wird. Werden Daten in dem Programmspeicher 1020 aufgezeichnet, so richtet sich das Speicherausgangssignal nach dem jeweiligen Speichertyp. So kann der Speicher bei der Aufzeichnung kein Ausgangssignal erzeugen, oder es treten an seinem Ausgang die gerade eingespeicherten neuen Daten auf, oder an seinem Ausgang erscheinen diejenigen Daten, die durch die neuen Daten ersetzt werden. Die beiden letzten Möglichkeiten werfen keine Probleme auf fti - die Arbeitsweise und Steuerung ^es Manipulators im P. beitsbetrieb, da ja entweder die ursprünglich aufge-
709837/0769
zeichneten, d.h. unmodifizierten Daten oder die daraus gewonnenen modifizierten Daten für den Vergleicher verwertbare Steuerdaten bilden. Wenn der Programmspeicher jedoch bei der Einspeicherung kein Ausgangssignal liefert, so erhält der Vergleicher an allen Eingängen für das Dn-Signal kein Eingangssignal, wodurch am Ausgang des Vergleichers auf der Leitung 1012 ein unverwertbares Abweichungssignal entsteht. Um dies zu vermeiden, sofern ein Programmspeicher dieses Typs Verwendung findet, kann das aus dem Digital-Analog-Umsetzer hervorgehende analoge Abweichungssignal während des Auftretens des Schreibsteuersignals ZRX unterdrückt werden, so daß es während dieser Zeit nicht in die Prüf- und Haltestromkreise der betroffenen Koordinaten gelangt. In diesem Fall also halten die Prüf- und Haltastromkreise während des Einschreibens modifizierter Daten in den Programmspeicher die vorausgegangenen Werte des analogen Abweichungssignals der betreffenden Koordinaten fest bis zum nächsten Abtastintervall, in welchem keine erneute Datenaufzeichnung in dem Programmspeicher erfolgt. Die Beibehaltung des vorausgegangenen Abweichungssignals über zwei Abtastzyklen hinweg entspricht in etwa dem Fall, in welchem bei der Einspeicherung der modifizierten Positionsdaten am Speicherausgang die betreffenden alten Positionsdaten erscheinen, mit der Ausnahme, daß nun freilich auch nicht die Änderungen der Positionsdaten aus den Codierern erfasst werden, solange das analoge Abweichungssignal unterdrückt wird.
Diese Unterdrückung des analogen Abweichungssignals kann auf verschiedene Weise erfolgen. Beispielsweise können bei der Schaltung nach der US-PS 3 661 051 die UND-Gatter 533, 535, 537, 539 und 541 (Fig. 11) mit zwei Eingängen durch solche mit drei Eingängen ersetzt werden, wobei der dritte Eingang den invertierten Wert des Schreibsteuersignals ZRX empfängt. Im Falle der älteren Patentanmeldung P 26 49 123.6 können die UND-Gatter der Prüf- und Haltestromkreise, wie z.B. das UND-Gatter 762 (Fig.25) für die Armschwenkbewegung, durch solche mit drei Eingängen ersetzt werden, eieren dritter Eingang den inversen Wert des
7OiH 37/076*9 ·/.
33 270933R
Schreibsteuersignale ZRX empfängt. Solche Abwandlungen sind jedoch, wie gesagt, nur dann erforderlich, wenn der Programmspeicher kein Ausgangssignal beim Einschreiben neuer Daten liefert,
Die modifizierten Positionsdaten, welche während der Zeitsignale g2, g4 und g6 in den Programmspeicher eingespeichert werden, werden sodann während der nachfolgenden Arbeitsspiele in Verbindung mit den betreffenden Programmschritten als neue Steuersignale gelesen. Beispielsweise werden die während des Zeitsignals g2 bei dem Impuls 500 (Fig. 5) der Multipleximpulse G6 eingespeicherten neuen Positionsdaten für die Armschwenkbewegung während des nächsten der Multipleximpulse G6, 502, gelesen und als Steuersignal verwendet. Infolgedessen bewegt sich der Manipulatorarm nun an entsprechender Stelle der weiteren Arbeitsspiele zu den geänderten Positionen, gleich im Anschluß an dasjenige Arbeitsspiel, bei welchen die Modifizierung erfolgt ist, d.h. die modifizierten Positionsdaten aufgezeichnet werden.
Wurden in die Modifikationseinrichtung 250 für eine bestimmte Koordinate keine Positionsänderungen eingegeben, so tritt an entsprechender Stelle des Abtastzyklus auch kein Schreibsteuersignal ZRX auf, und infolgedessen werden die ursprünglich gespeicherten Positionsdaten als Steuersignale gelesen.
Im Anschluß an die rückwärtige Flanke des Multipleximpulses G8 während des Schreib-Zeitsignals g6 werden alle für den betreffenden Programmschritt in die Modifikationseinrichtung 250 eingegebenen Änderungen aufgezeichnet sein. Infolgedessen stellt ein UND-Gatter 422, an dessen drei Eingängen die Multipleximpulse G8, die Zeitsignale g6 und das Q-Ausgangssignal der Kippschaltung 326 eintreffen, über eine monostabile Kippschaltung 424 die Kippschaltung 330 zurück. Das Q-Ausgangssignal der Kippschaltung 330 setzt über das UND-Gatter 328 den Zähler 334 außer Betrieb. Infolgedessen werden die Zeitsignale gl - g6 unterbrochen, womit die Programmodifikation für den in dem Schalter 1060 festgelegten ersten Programmschritt beendet ist. Falls sich die gewünschte
7 0 S 3 3 7 / 0 7 6 9
- 270933S
Änderung auf diesen Programmschritt beschränkt, wird in den Schalter 1062 der gleiche Programmschritt eingegeben. Infolgedessen liefert der Größenvergleicher 318 ein Ausgangssignal, mit welchem über das Gatter 322 die Kippschaltung 326 rückgestellt wird, womit dann die Modifikationseinrichtung desaktiviert ist bis zur Eingabe einer neuen Serie von Programmschritt-Modifikationen durch den Programmierer oder dergl.
Wurde an dem Wählschalter 1062 ein anderer Programmschritt als der auf dem Schalter 1060 eingestellt, so bleibt der Größenvergleicher 318 noch inaktiv, und somit wird mit dem Ende des Zeitsignals g6, was die Beendigung der Modifikation in Verbindung mit dem Startprogrammschritt bedeutet, die Kippschaltung 326 nicht rückgestellt. Die Kippschaltung 330 bleibt rückgesetzt bis zum Auftreten des Signals WSP auf der Leitung 1042, womit der Programmspeicher 1020 zum nächsten Programmschritt, d.h. einem Programmschritt nach dem aa Schalter 1060 eingestellten Programmschritt, weiterschreitet. Dann wird mit dem Signal WSP die Kippschaltung 330 wiederum gesetzt, und der gesamte Zyklus mit der Erzeugung der Zeitsignale gl - g6 nach Aktivierung des Zählers 334 läuft von neuem ab, um nun die Positionsdaten dieses Programmschrittes zu modifizieren und die modifizierten Positionsdaten aufzuzeichnen.
So werden für jeden nachfolgenden Programmschritt die gleichen Positionsänderungen programmiert, bis die durch das Adressensignal An angezeigte Adresse der letzten in Verbindung mit dem am Schalter 1062 eingestellten Stopprogrammschritt entspricht Danach wird die Kippschaltung 326 rückgesetzt und die Modifikationseinrichtung 250 desaktiviert, bis der Programmierer neue Modifikationsdaten eingibt und daraufhin den Startdruckknopf 1066 betätigt.
Das Schreibsteuersignal ZRX dient auch dazu, die Hilfseingangsauswahlsehaltung 1050 und die Dateneingangs- und -auswahlschaltung 1018 zu steuern, so daß die modifizierten Positionsdaten (Signal ZEn) während des betreffenden Austastzyklusses in
709337/0769 ./.
den Programmspeicher 1020 gelangen. Die Anzeigelampe 1068 wird durch das Q-Ausgangssignal einer Kippschaltung 430 betätigt, die durch Drücken des Startdruckknopfes 1066 gesetzt wird und deren Q-Ausgangssignal am Eingang 324 des UND-Gatters 310 erscheint. Die Rückstellung der Kippschaltung 430 erfolgt über ein UND-Gatter 432, an dessen einem Eingang das Signal WSP von der Leitung 1042 und am anderen Eingang das Ausgangssignal des Größenvergleichers 318 erscheint.
Fig. 6 zeigt eine z.T. etwas andere Ausfuhrungsform der Modifikationseinrichtung 250, mit welcher die gleiche Positionsdatenmodifikation, jedoch das Lesen und Aufzeichnen der modifizierten Daten sämtlicher Bewegungskoordinaten in nur zwei Abtastzyklen unabhängig von der Zahl der betroffenen Koordinaten erfolgt. Hierdurch unterscheidet sich diese Modifikationseinrichtung von derjenigen nach Fig. 4, die jeweils zwei Abtastzyklen für jede betroffene Koordinate, also beispielsweise sechs Abtastzyklen für lrei betroffene Koordinaten, benötigt. Ein Unterschied gegenüber der Ausführungsform nach Fig. 4 besteht lediglich in den mit Zahlen von 504 aufwärts bezeichneten Teilen. Alle übrigen Teile sind die gleichen und vollführen auch die gleichen Funktionen. Die Abwandlungen betreffen die Zählerund Zeitsignaldecodierstufen mit den zugehörigen Gatteranordnungen und Zeitgabestufen, den Volladdierer 362, das Register 390 und die Schreibsteuergatteranordnung.
Das Ausgangssignal MDn des Programmspeichers 1020 erscheint in Multiplexform während des ersten Austastzyklusses nach Auftreten der Startadresse, wie vorausgehend beschrieben. Hieraus werden die Daten für eine jede Koordinate mittels eines Codeumsetzers 504 vom Gray-Code in den Binärcode überführt, um nacheinander in einen Speicher für wahlfreien Zugriff (RAM) 506 eingegeben zu werden. Der Codeumsetzer 504 liefert darüberhinaus über eine Reihe von Exklusiv-ODER-Gattern unter Steuerung des gleichfalls in Multiplexform von der Leitung 380 eintreffenden Signals aus der Modifikationsrichtungsstufe 364 (Fig. 4) eine logische Komplementärfunktion.
7 1 9 ■ Ί 7 / 0 7 B 9
Während des ersten Austastzyklusses werden die Daten in den Speicher 506 eingegeben und für eine jede Koordinate an einem eigenen Speicherplatz gespeichert. Die dazu erforderlichen Datenadressen entstammen einem Codierer 508, der durch die auf der Leitung 1026 auftretenden Multipleximpulse Gl - G8 betrieben wird. Dieser Codierer ordnet jedem dieser Multipleximpulse einen bestimmten 3-Bit-Code zu, um die Daten einer jeden Koordinate entsprechend ihrem Auftreten in dem Abtastzyklus zu speichern. Diese Multiplex-Daten gelangen in den Speicher 506 über Datensammelleitungen 510, 512, 514 und 516, deren jede vier Datenleitungen umfasst. Die Arbeitsweise des Speichers bei der Dateneingabe wie auch beim Lesen der Daten wird gesteuert durch das auf der Leitung 518 auftretende Ausgangssignal eines Zustandszählers 520, der prinzipiell aus einer durch die Multipleximpulse Gl angesteuerten bistabilen Kippschaltung besteht. Das Ausgangssignal des ersten Schaltzustandes des Zählers 520 gibt den betreffenden Austastzyklus als Lesezyklus zu erkennen, während welchem Daten für sämtliche Koordinaten in den Speicher 506 eingegeben werden. Das Ausgangssignal des zweiten Schaltzustandes des Zustandszählers 520 bezeichnet den nachfolgenden Austastzyklus als Schreibzyklus, in welchem die gespeicherten Daten über Sammelleitungen 522, 524, 526 und 528 aus dem Speicher 506 herausgelesen werden.
Wie vorausgehend im einzelnen beschrieben, erscheinen die über die Schalter 1070 - 1078 eingegebenen Positionsänderungen in Multiplexform auf einer Sammelleitung 360 (Fig. 4) an einem Binäraddierer 530, der ebenso arbeitet wie der Volladdierer 362 aus Fig. 4. Der Binäraddierer 530 liefert die daraus resultierenden modifizierten Daten über eine Sammelleitung 532, wiederum in Multiplexform, an einen mit einer Additions- bzw. Subtraktionsstufe verbundenen Codeumsetzer 534, von dessen Ausgang 392 sie, vom Binärcode in den Gray-Code umgesetzt, als modifiziertes Datensignal ZEn in den Programmspeicher 1020 gelangen.
709837/0789
Das über die Leitung 1044 eintreffende Schreibsteuersignal ZRX, womit die Schreib-Austastzyklen bestimmt werden, wird gewonnen aus einem UND-Gatter 536 mit drei Eingängen, deren erster mit der Leitung 518 vom Zustandszähler 520, deren zweiter über eine Leitung 538 mit dem Ausgang eines NOR-Gatters 540 und deren dritter mit der Leitung 332 (Fig. 4) verbunden ist. Das NOR-Gatter 540, das in diesem Beispiel drei Eingänge aufweist, an denen die Multipleximpulse Gl, G2 und G3 eintreffen, liefert ein Sperrsignal, welches eine Aufzeichnung in dem betreffenden Abschnitt des Abtastzyklusses verhindert.
Eine Fehlerekennungsschaltung 550 betätigt eine Fdieranzeigestufe 552, wenn immer eine unbrauchbare binäre Operation erfolgt ist. Dies ist beispielsweise dann der Fall, wenn in die Modifikationseinrichtung 250 Modifikationsdaten eingegeben wurden, die entweder zu einer negativen Zahl seitens des Codierers oder zu einer Zahl außerhalb der Codiererkapazität (a negative number relative to the encoder programming reference or a number in excess of encoder capacity) führen würden. Die Fehlererkennungsschaltung 550 wird, ebenso wie auch der Codeumsetzer 534, mit dem auf der Leitung 380 auftretenden Richtungssignal gespeist, dessen invertierter Wert über eine Leitung 554 eintrifft. Des weiteren erhält die Fehlerekennungsschaltung 550 über die Leitung 1026 die Multipleximpulse Gl - G8. Sie ist damit in der Lage festzustellen, ob eine Addition oder Subtraktion (komplementäre Addition) verlangt wurde und welche Koordinate von der Modifikation betroffen ist, d.h. bei welcher ein Fehler auftreten kann. Um ungültige binäre Resultate unter den modifizierten Positionsdaten zu ermitteln, erhält die Fehlererkennungsschaltung 550 von der Sammelleitung 532 die höchstwertigen Daten- und Übertragsbits. Dies wird erreicht durch Feststellung des letzten Übertrags im Falle der Eingabe einer Modifikation mit komplementärer Addition (Subtraktion), womit ein negatives Ergebnis angezeigt wird, bzw. durch Ermittlung eines Datensignals, welches um ein Bit größer ist als die maximale eingebbare Zahl im Falle einer Addition. Um eine Addition handelt
709837/0769 J%
7709335
es sich, wenn eine mit einem der Schalter 1080 - 1088 eine Modifikationseinrichtung eingegeben wurde, die zu einer Vergrößerung des Betrages des jeweiligen Positionswertes führt.
Das gesamte System aus Fig. 6 wirkt während eines ersten vollständigen Austastzyklusses in der Weise, daß es aufeinanderfolgend die für sämtliche Koordinaten gespeicherten Positionsdaten liest und vorübergehend in dem Speicher 506 speichert. Während des nächsten Austastzyklusses werden diese Daten dann der Reihe nach aus dem Speicher 506 herausgelesen und nach Vereinigung mit den entsprechend der Reihe nach angebotenen Modifikationsdaten für eine jede Koordinate in den Programmspeicher 1020 eingeschrieben. Dies geschieht für einen jeden der durch die Wählschalter 1060 und 1062 festgelegten Programmschritte, d.h. so lange, bis die letzte Adresse in Verbindung mit dem Stopprogrammschritt erreicht ist. Daraufhin hört die Modifikationseinrichtung 250 automatisch zu arbeiten auf.
Die in Fig. 6 gezeigten Stufen bestehen aus herkömmlichen, z.B. von der Firma Texas Instruments erhältlichen Bauteilen, wobei der Speicher 506 aus der Verbindung von vier integrierten Schaltkreisen mit der Typenbezeichnung SN 7489, der Binäraddierer 530 aus vier Schaltkreisen mit der Typenbezeichnung SN 7483 und der Codierer 508 aus einem Schaltkreis mit der Typenbezeichnung SN 74148 bestehen kann. Die Codeumsetzer 504 und 534 können in herkömmlicher Weise aus Exklusiv-ODER-Gattern mit jeweils zwei Eingängen aufgebaut sein, wie sie unter der Typenbezeichnung SN 7486 erhältlich sind.
Schaltungsbeispiele für die beiden Codeumsetzer mit Additionsbzw. Subtraktionsstufe 504 und 534 zeigen die Figuren 7 und 8. Der Binäraddierer 530 arbeitet lediglich in herkömmlicher Weise als Volladdierer, in dem die Subtraktion durch komplementäre Addition erfolgt, wozu logische Schaltkreise dienen, die das Komplement des Minuenden (MDn) verwenden, den Subtrahenden (die modifizierten Daten) hinzuaddieren und das Komplement der resultierenden Differenz darbieten. Hierbei wird zunächst das logische Komplement des den Codeumsetzer 504 passierenden Dateneingangssignals für den Speicher 506 und dann auch das logische Komplement des binären Ausgangssignals des Binäraddierers 530
709 3 37/0769 .
7709335
genommen, wenn eine Subtraktion verlangt wird.
Der Codeumsetzer 504 enthält für jede Datenleitung der das Signal MDn führenden Sammelleitung ein Exklusiv-ODER-Gatter, dessen einer Eingang mit der Datenleitung verbunden ist, während der zweite Eingang am Ausgang des ODER-Gatters der nächsthöherwertigen Datenleitung liegt. Beispielsweise liegt vor dem ODER-Gatter 560 ein Eingang an der Leitung 380 für das Modifikationsrichtungssignal und der zweite Eingang an der Datenleitung für das höchstwertige Bit des Signals MDn. Der Ausgang des ODER-Gatters 560 ist verbunden mit einem Eingang des ODER-Gatters 562, dessen zweiter Eingang an der Datenleitung des nächstniedrigeren Bits des Signals MDn liegt. Das Ausgangssignal des ODER-Gatters 560 bildet das höchstwertige binäre Bit am Eingang des Speichers 506, während das Ausgangssignal des ODER-Gatters 562 das nächstniedrigere Bit darstellt. Die übrigen Gatter sind in gleicher Weise geschaltet, wobei der eine Eingang, 554, des ODER-Gatters 564 für das niedrigstwertige Bit über die Leitung 554 und einen Inverter 566 mit der Leitung verbunden ist. Der zweite Eingang des ODER-Gatters 564 liegt am Ausgang eines Exklusiv-ODER-Gatters 568, von dem ein Eingang mit der Datenleitung für das niedrigstwertige Bit und der zweite Eingang mit dem Ausgang des ODER-Gatters in Verbindung mit der Datenleitung des nächsthöherwertigen Bits verbunden ist. Der so weit beschriebene Codeumsetzer 504 wirkt in der Weise, daß er das Signal MDn vom Gray-Code in den Binärcode überführt und außerdem für die Subtraktion durch komplementäre Addition das logische Komplement der Eingangsdaten bildet. Codeumsetzer dieser Art zur Umsetzung eines Binärcodes in einen Gray-Code oder umgekehrt sind allgemein beschrieben in "Designing with TTL-Integrated Circuits, herausgegeben von R. L. Morris und J. R. Miller, erschienen bei McGraw-Hill Book Company, Seiten 133 - 138 sowie Figuren 6.37 und 6.39.
Ebenso bildet der Codeumsetzer 534 (Fig. 8) zunächst das Komplement der am Ausgang des Binäraddierers 530 erscheinenden
7 0 ' ci 3 7 / 0 7 B 9
Ho
Daten für die Subtraktion durch komplementäre Addition und wandelt dann diese Daten vom Binärcode in den Gray-Code um, wodurch an seinem Ausgang (Sammelleitung 532) das modifizierte Datensignal ZEn entsteht. Der Codeumsetzer 534 enthält eine erste Reihe von Exklusiv-ODER-Gattern mit zwei Eingängen, um während der Subtraktion die komplementäre Funktion zu erfüllen, je ein Gatter für jede Datenleitung der Sammelleitung 532. Je ein Eingang dieser Gatter ist verbunden mit der Leitung 554, während der andere Eingang eines jeden dieser Gatter an einer der Datenleitungen der Sammelleitung 532 liegt. Beispielsweise ist von den Gattern 580 und 582 jeweils ein Eingang mit der Leitung 554 verbunden, während der zweite Eingang des Gatters 580 an der Datenleitung für das höchstwertige Bit und der · zweite Eingang des Gatters 582 an der Datenleitung für das nächstniedrigere Bit der Sammelleitung 532 liegt. Eine zweite Reihe von Exklusiv-ODER-Gattern dient .dazu, die Codeumsetzung vom Binär- in den Gray-Code zu bewirken, wobei ein Eingang des ersten dieser Gatter, 584, mit dem Ausgang des Gatters 580 und der zweite Eingang mit Masse oder einem sonstigen niedrigen Pegel verbunden ist. Des weiteren steht der Ausgang des Gatters 580 mit einem Eingang des folgenden Gatters, 586, in Verbindung, dessen zweiter Eingang an dem Ausgang des Gatters 582 liegt. An dem Ausgang des Gatters 584 erscheint das höchstwertige Bit des modifizierten Datensignals ZEn im Gray-Code, während am Ausgang des Gatters 586 das nächstniedrigere Bit auftritt. Die restlichen Gatter der zweiten Reihe sind in gleicher Weise verbunden.
Während nach den Ausführungsbeispielen der Figuren 4-8 für alle Koordinaten die gleiche Anzahl von Datenbits auftritt, können für einige der in Betracht kommenden Koordinaten auch weniger Datenbits vorgesehen sein. In diesem Falle ist in den Codeumsetzern 504 und 534 wie auch in der Fehlererkennungsschaltung 550 eine geeignete logische Anpassung der Daten mit herkömmlichen Methoden erforderlich, um die Daten in geeigneter Weise übertragen und miteinander kombinieren zu können.
70c· 3 7/076 9 J'
Alternativ kann die Modifikationseinrichtung nach den Figuren 4 und 6 in den Größenvergleichern 306 und 318 auch Zählstufen enthalten, um die WSP-Signale abzuzählen und hieraus das Adressensignal zu gewinnen, anstatt das Signal An unmittelbar zu verwenden.
709 3 37/0769
Le U r s e
i te

Claims (29)

Patentansprüche
1. Programmierbarer Manipulator mit einem in verschiedenen Koordinaten beweglichen Manipulatorarm bzw. daran befindlichem Greifer oder dergl., einem Programmspeicher, Instruktionssteuermitteln zum Anfahren bestimmter zu programmierender Arm- bzw. Greiferpositionen während eines sog. Instruktionsbetriebes und Aufzeichnen entsprechender Positionsdaten in dem Programmspeicher, Adressiermitteln zum Herauslesen dieser Positionsdaten aus dem Programmspeicher als zu entsprechenden aufeinanderfolgenden Programmschritten gehörige Steuerdaten im nachfolgenden Arbeitsbetrieb des Manipulators und Steuermitteln zur Bewegung des Manipulatorarmes bzw. -greifers in die durch die Steuerdaten bezeichneten Positionen, gekennzeichnet durch eine Einrichtung (250) zur Modifizierung der als Steuerdaten gespeicherten Positionsdaten zumindest eines vorbestimmbaren Programmschritts auf Grund damit eingebbarer Modifikationsdaten in Form von Daten für eine gewünschte Positionsänderung des Manipulatorarmes (50) bzw. -greifers (80) nach Größe und Richtung.
2. Manipulator nach Anspruch 1, gekennzeichnet durch Schaltmittel (1060, 1062) zur Vorgabe einer Anzahl aufeinanderfolgender Programmschritte, in denen die gleichen Modifikationen vorzunehmen sind.
3. Manipulator nach Anspruch 2, gekennzeichnet durch Vergleichsmittel (306, 318) zur Erkennung des ersten und des letzten der zu modifizierenden Programmschritte im Programmablauf.
70S337/0769
ORIGINAL INSPECTED
- 2 - 27 09 3 3 fS
4. Manipulator nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Modifikationseinrichtung (250) während des normalen Programmablaufes beim Arbeitsbetrieb des Manipulators wirksam ist.
5. Manipulator nach einem der vorhergehenden Ansprüche bei dem das Lesen der für die einzelnen Bewegungskoordinaten gespeicherten Positionsdaten in Multiplexform zyklisch hintereinander geschieht, dadurch gekennzeichnet, daß die Modifikationseinrichtung (250) allen in Betracht kommenden Bewegungskoordinaten gemeinsam ist und die Modifikation für die einzelnen Koordinaten der Reihe nach in entsprechenden Multiplex-Austastintervallen vornimmt.
6. Manipulator nach Anspruch 5, dadurch gekennzeichnet, daß die Modifikationseinrichtung (250) Schaltmittel (Fig. 4) aufweist zur Vereinigung der Modifikationsdaten mit den hintereinander aus dem Programmspeicher (1020) gelesenen Positionsdaten einer jeden Koordinate in verschiedenen aufeinanderfolgenden Multiplex-Austastzyklen.
7. Manipulator nach Anspruch 5, dadurch gekennzeichnet, daß die Modifikationseinrichtung (250) Schaltmittel (Fig. 6) aufweist zur Vereinigung der Modifikationsdaten mit den hintereinander aus dem Programmspeicher (1020) gelesenen Positionsdaten einer jeden Koordinate in den betreffenden Austastintervallen eines einzigen Multiplex-Austastzyklusses.
8. Manipulator nach einem der Ansprüche 5-7, dadurch gekennzeichnet, daß das Lesen der gespeicherten Positionsdaten und das Aufzeichnen der modifizierten Positionsdaten in aufeinanderfolgenden Multiplex-Austastzyklen erfolgen.
70S 337/0769
270933b
9. Manipulator nach Anspruch 7, dadurch gekennzeichnet, daß die Schaltmittel zur Vereinigung der Modifikationsdaten mit den aus dem Programmspeicher (1020) gelesenen Positionsdaten
erste digitale Schaltmittel (504) zur Bildung des Komplements der Positionsdaten für die einzelnen Bewegungskoordinaten, sofern die Modifikationsdaten gegenüber diesen Positionsdaten für die betreffende Koordinate eine erste bestimmte Modifikationsrichtung beinhalten bzw. zur unbeeinflussten Hindurchleitung der Positionsdaten, wenn die Modifikationsdaten die entgegengesetzte Modifikationsrichtung beinhalten, einen Zwischenspeicher (506) zur Speicherung der Positionsdaten bzw. des daraus gewonnenen Komplements während eines ersten Multiplex-Austastzyklusses und Weitergabe während des folgenden Austastzyklusses des betreffenden zu modifizierenden Programmschritts,
Schaltmittel (358) zur phasengerechten Austastung der Modifikationsdaten entsprechend den hintereinander gelesenen Positionsdaten für die einzelnen Koordinaten, einen Addierer (530) zum Addieren der zwischengespeicherten Positionsdaten bzw. ihres zwischengespeicherten Komplements und der Modifikationsdaten während der betreffenden Austastintervall in dem zweiten Austastzyklus und zweite digitale Schaltmittel (534) zur Bildung des Komplements der so erhaltenen modifizierten Daten aufweisen, sofern die Modifikationsdaten für die betreffende Koordinate die erste Modifikationsrichtung beinhalten bzw. zur unbeeinflussten Hindurchleitung der modifizierten Daten, sofern die Modifikationsdaten die entgegengesetzte Modifikationsrichtung beinhalten, wobei das Komplement bzw. die modifizierten Daten selbst die als modifizierte Positionsdaten in den Programmspeicher (1020) eingegebenen Daten bilden.
701-5 37/0769
10. Manipulator nach Anspruch 9, dadurch gekennzeichnet, daß die Modifikationseinrichtung (250) eine Fehlererkennungsschaltung (550) zur Erkennung einer fehlerhaften Modifikationsvorgabe aufweist, die an Hand der Daten aus dem Addierer (530) feststellt, ob die modifizierten Positionsdaten für eine jede Koordinate einen zulässigen Wert unter- bzw. überschreiten.
11. Manipulator nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Modifikationseinrichtung Schaltmittel (520, 536, 540 etc.) aufweist zur Einspeicherung der modifizierten Positionsdaten an den gleichen Speicherplätzen des Programmspeichers (1020), an denen sich vorausgehend die ursprünglichen, unmodifizierten Positionsdaten befanden.
12. Manipulator nach Anspruch 1, dadurch gekennzeichnet, daß die Modifikationseinrichtung (250) eine Einrichtung (306, 318) zur Erkennung des jeweiligen zu modifizierenden Programmschritts, Eingabemittel (1060, 1062) zur Eingabe eines für diesen Programmschritt kennzeichnenden Signals, Eingabemittel (1070 - 1078 bzw. 340; 1080 - 1088 bzw. 364) zur Eingabe der betreffenden Modifikationsdaten und einen Addierer (362, 530) zum vorzeichengerechten Addieren der betreffenden Positionsdaten und zugehörigen Modifikationsdaten aufweist.
13. Manipulator nach Anspruch 12, dadurch gekennzeich net, daß der Addierer (362, 530) einen Eingang (380) zur Steuerung seiner Arbeitsweise derart aufweist, daß die Modifikationsdaten zu den aus dem Programmspeicher (1020) gelesenen Positionsdaten hinzuaddiert werden, wenn an diesem Eingang ein erstes logisches Signal anliegt, während die Modifikationsdaten von den gelesenen Positionsdaten abgezogen werden, wenn an dem Eingang ein anderes logisches Signal anliegt.
7 0 9^37/0769
770933b
14. Manipulator nach Anspruch 12 oder 13 mit einem für alle Koordinaten gemeinsamen Vergleicher zum Vergleichen der aus dem Programmspeicher gelesenen digitalen Positionsdaten und der jeweiligen gegenwärtigen Positionssignale und Erzeugen eines ihrer jeweiligen Differenz entsprechenden Abweichungssignals sowie Decodiermitteln oder dergl. zum zyklisch aufeinanderfolgenden Anlegen des Vergleichers an die gelesenen und die gegenwärtigen Positionssignale der einzelnen Koordinaten in aufeinanderfolgenden Multiplex-AustastIntervallen innerhalb eines Multiplex-Austastzyklus, dadurch gekennze ic hnet, daß die Modifikationseinrichtung (250) von den Decodiermitteln (1028) oder dergl. abhängige Schaltmittel (336; 508, 520) zur Erzeugung von Zeitsignalen (gl - g6) für die aufeinanderfolgenden Modifikationen aufweist, mit deren Hilfe während der einzelnen Austastintervallen des betreffenden Multiplex-Austastzyklusses aufeinanderfolgend jeweils die aus dem Programmspeicher (1020) gelesenen Positionsdaten und die dazugehörigen Modifikationsdaten für die einzelnen Koordinaten in dem Addierer (362, 530) miteinander vereinigt und die daraus resultierenden modifizierten Positionsdaten in den Programmspeicher eingeschrieben werden.
15. Manipulator nach Anspruch 14, dadurch gekennzeichnet, daß das Lesen der Positionsdaten aus dem Programmspeicher (1020) und das Einschreiben der modifizierten Positionsdaten in den Programmspeicher während der betreffenden Austastintervalle aufeinanderfolgender Multiplex-Austastzyklen erfolgen.
16. Manipulator nach Anspruch 15, dadurch gekennzeichn et, daß die Vereinigung der aus dem Programmspeicher (1020) gelesenen Positionsdaten und der zugehörigen Modifikationsdaten sowie das Einschreiben der modifizierten Positionsdaten einer jeden Koordinate in je zwei eigenen aufeinanderfolgenden Multiplex-Austastintervallen erfolgen.
7083 3 7/0769 ./.
17. Manipulator nach Anspruch 15, dadurch gekennzeichnet, daß die Vereinigung der aus dem Programmspeicher (1020) gelesenen Positionsdaten und der zugehörigen Modifikationsdaten sowie das Einschreiben der modifizierten Positionsdaten für alle Koordinaten in den betreffenden Austastintervallen eines einzigen Multiplex-Austastzyklusses erfolgt.
18. Manipulator nach einem der Ansprüche 13 - 17, dadurch gekennzeichnet, daß die Modifikationsdaten der einzelnen Koordinaten dem Addierer (362, 530) in den betreffenden I.Iultiplex-Austastintervallen über ein von entsprechenden Multipleximpulsen (G4 - G8) gesteuertes Multiplexgattersystem (344, 351, 354, 358) zugeführt werden.
19. Manipulator nach Anspruch 1, dadurch gekennzeichnet, daß das Lesen und Einschreiben der Daten aus dem Programmspeicher (1020) bzw. in den Programmspeicher in Adressenschritten geschieht und daß die Modifikationseinrichtung (250) Adresseneingabemittel (1060) für eine Startadresse sowie einen Größenvergleicher (306) aufweist, durch den die Adressen der aus dem Speicher gelesenen Positionsdaten mit der eingegebenen Startadresse verglichen werden, um aufgrund dieses Vergleiches die Modifikation auszulösen.
20. Manipulator nach Anspruch 19, dadurch gekennzeichnet, daß die Modifikationseinrichtung (250) des weiteren Adresseneingabemittel (1062) für die Eingabe einer Stoppadresse sowie einen Größenvergleicher (318) aufweist, durch den die Adressen der aus dem Programmspeicher (1020) gelesenen Positionsdaten mit der eingegebenen Stoppadresse verglichen werden, um aufgrund dieses Vergleiches die Modifikation zu beenden.
709837/0769
7709335
21. Manipulator nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Modifikationseinrichtung (250) als selbständige Baueinheit ausgebildet und von dem eigentlichen Steuerungssystem des Manipulators abkuppelbar ist.
22. Verfahren zur Modifizierung des Programms eines programmierbaren Manipulators mit einem in mehreren Koordinaten beweglichen Manipulatorarm bzw. daran befindlichem Greifer oder dergl. und Codierern für eine jede Koordinate, die der jeweiligen gegenwärtigen Position des Armes bzw. Greifers in den betreffenden Koordinaten entsprechende Positionsdaten erzeugen, wobei solche Positionsdaten entsprechend einer Anzahl bestimmter im Programmablauf aufeinanderfolgender Positionen des Armes bzw. Greifers in einer vorbestimmten Folge unter bestimmten Speicheradressen gespeichert und diese gespeicherten Positionsdaten im Arbeitsbetrieb des Manipulators in der gleichen Reihenfolge als Steuerdaten gelesen werden, um den Manipulatorarm bzw. -greifer automatisch in die betreffenden Positionen zu führen, dadurch gekennzeichnet, daß zumindest einer der betreffenden Programmschritte, welcher zu modifizieren ist, mittels seiner Adresse identifiziert wird und daß die Modifizierung während des Arbeitsbetriebes mit Hilfe von vorgebbaren Modifikationsdaten entsprechend Größe und Richtung der vorzunehmenden Modifikation stattfindet.
23. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß die Positionsdaten des identifizierten Programmschritts mit den eingegebenen Modifikationsdaten vereinigt werden und daß die so erhaltenen modifizierten Positionsdaten unter der gleichen Speicheradresse aufgezeichnet werden, unter der die betreffenden unmodifizierten Positionsdaten gespeichert waren.
709 337/0769
24. Verfahren nach Anspruch 23, dadurch gekennzeichnet, daß die Vereinigung in dem Fall, daß die Modifizierung auf einer Verminderung des Betrages des zu modifizierenden Positionssignals hinausläuft, als komplementäre Addition erfolgt.
25. Modifikationseinrichtung zur Modifizierung eines oder mehrerer vorbestimmter Programmschritte eines programmierbaren Manipulators mit einem in mehreren Koordinaten beweglichen Manipulatorarm bzw. daran befindlichem Greifer oder dergl., einem Positionsdaten für die einzelnen anzufahrenden Positionen des Armes bzw. Greifers in Form von Programmschritten enthaltenden Programmspeicher, Adressiermitteln zum Herauslesen dieser Positionsdaten aus dem Programmspeicher in einer vorbestimmten Folge als Steuerdaten für den Manipulator und Steuermitteln zur Bewegung des Manipulatorarmes bzw. -greifers in die durch die Steuerdaten bezeichneten Positionen, gekennzeichnet durch Identifikationsmittel (306, 318) zur Identifizierung des jeweils zu modifizierenden Programmschritts, Eingabemittel (506) zur Vorgabe dieses Programmschritts, einen Addierer (530) zur Vereinigung der Positionsdaten dieses Programmschritts mit den betreffenden Modifikationsdaten und Schreibsteuermitteln (520, 536, 540) zur Aufzeichnung der daraus resultierenden modifizierten Daten in dem Programmspeicher (1020) unter der gleichen Adresse, unter welcher zuvor die zu modifizierenden Positionsdaten gespeichert waren.
26. Modifikationseinrichtung nach Anspruch 25, dadurch gekennzeichnet, daß sie allen Bewegungskoordinaten gemeinsam ist und die gespeicherten Positionsdaten für die einzelnen Koordinaten während verschiedenen Multiplex-Austastintervallen gelesen werden, daß sie Schaltmittel (344, 351, 354, 358) aufweist, um dem Addierer (362, 530) die Modifikationsdaten für die einzelnen Koordinaten zusammen mit den gelesenen Positionsdaten in den betreffenden Austastintervallen zuzuführen, und Schaltmittel (372, 374, 376, 378)
709837/0769
zur Steuerung des Addierers derart, daß die Vereinigung der Positionsdaten mit den zugehörigen Modifikationsdaten jeweils in dem der betreffenden Koordinate zugeordneten Austastintervall erfolgt.
27. Modifikationseinrichtung nach Anspruch 26, dadurch gekennzeichnet, daß die Schreibsteuermittel (520, 536, 540) die Aufzeichnung der modifizierten Positionsdaten in dem betreffenden Austastintervall des nächstfolgenden HuItiplex-Austastzyklus bewirken.
28. Modifikationseinrichtung nach Anspruch 27, dadurch gekennzeichnet, daß die Modifikations- und die Aufzeichenvorgänge für jede Koordinate in zwei anderen aufeinanderfolgenden Multiplex-Austastzyklen stattfinden.
29. Modifikationseinrichtung nach Anspruch 26, dadurch gekennzeichnet, daß die Modifikations- und AufaAchenvorgänge für alle Koordinaten in dem gleichen Multiplex-Austastzyklus stattfinden, wobei die Modifikationsund Aufzeichenvorgänge für jede Koordinate in einem einzigen Austastintervall erfolgen.
709837/0769
DE19772709335 1976-03-03 1977-03-03 Programmierbarer manipulator Granted DE2709335A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/663,481 US4140953A (en) 1976-03-03 1976-03-03 Real time program modification apparatus

Publications (2)

Publication Number Publication Date
DE2709335A1 true DE2709335A1 (de) 1977-09-15
DE2709335C2 DE2709335C2 (de) 1988-01-28

Family

ID=24662002

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772709335 Granted DE2709335A1 (de) 1976-03-03 1977-03-03 Programmierbarer manipulator

Country Status (8)

Country Link
US (1) US4140953A (de)
JP (2) JPS52106563A (de)
CA (1) CA1071316A (de)
DE (1) DE2709335A1 (de)
FR (1) FR2342826A1 (de)
GB (1) GB1575418A (de)
IT (1) IT1080007B (de)
SE (2) SE444782B (de)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3039094A1 (de) * 1979-10-19 1981-04-30 Tokico Ltd., Kawasaki, Kanagawa Roboter
DE3210675A1 (de) * 1981-04-03 1982-10-28 Cincinnati Milacron Inc., 45209 Cincinnati, Ohio Vorrichtung zum dynamischen steuern des werkzeugmittelpunkts eines roboterarms abseits einer vorbestimmten bahn
DE3406255A1 (de) * 1983-02-21 1984-09-27 Mitsubishi Denki K.K., Tokio/Tokyo Robotersteuerapparat
DE3422107A1 (de) * 1983-06-14 1984-12-20 Mitsubishi Denki K.K., Tokio/Tokyo Roboter-steuereinrichtung
DE3532213A1 (de) * 1985-09-10 1987-05-07 Leifeld & Co Verfahren zum betreiben einer numerisch gesteuerten drueckmaschine sowie drueckmaschine zur durchfuehrung dieses verfahrens
DE102015016255A1 (de) * 2015-12-15 2017-06-22 Kuka Roboter Gmbh Iteratives Programmieren eines Prozesses einer beweglichen Maschine, insbesondere eines Roboters
DE202018003442U1 (de) * 2018-07-25 2019-10-28 Ipr Gmbh Kabelkonfektionierungswerkzeuganordnung

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE31208E (en) * 1974-12-26 1983-04-12 Unimation, Inc. Signal modification device for memory controlled manipulator apparatus
US4447697A (en) * 1978-03-28 1984-05-08 Unimation, Inc. Weld gun repositioning system for programmable manipulator
JPS5858682B2 (ja) * 1978-04-26 1983-12-27 ファナック株式会社 産業用ロボツトの制御方式
JPS5524881A (en) * 1978-08-24 1980-02-22 Toyoda Mach Works Ltd Numerical control device
DE2851063A1 (de) * 1978-11-25 1980-06-04 Cloos Gmbh Carl Vorrichtung zur automatischen fuehrung einer schweisspistole laengs einer vorprogrammierten schweissnaht
NO810726L (no) * 1980-03-05 1981-09-07 Thermwood Corp Industrirobot.
US4362977A (en) * 1980-06-30 1982-12-07 International Business Machines Corporation Method and apparatus for calibrating a robot to compensate for inaccuracy of the robot
JPS5750279A (en) * 1980-09-10 1982-03-24 Komatsu Ltd Robot for welding having multilayer welding function
JPS5769312A (en) * 1980-10-13 1982-04-28 Fanuc Ltd Numerical controller incorporating optional block skipping function
US4379335A (en) * 1980-10-28 1983-04-05 Auto-Place, Inc. Electronic controller and portable programmer system for a pneumatically-powered point-to-point robot
JPS5785674A (en) * 1980-11-17 1982-05-28 Komatsu Ltd Copying corrector for welding robot
US4456863A (en) * 1980-12-23 1984-06-26 Cleveland Machine Controls, Inc. Apparatus for automatic calibration of servo response
JPS57113115A (en) * 1980-12-30 1982-07-14 Fanuc Ltd Robot control system
JPS57113116A (en) * 1980-12-30 1982-07-14 Fanuc Ltd Robot control system
JPS57113107A (en) * 1980-12-30 1982-07-14 Fanuc Ltd Robot control system
US4368412A (en) * 1981-02-04 1983-01-11 Inoue-Japax Research Incorporated Microprocessor-controlled motor drive control system
DE3280207D1 (de) * 1981-03-23 1990-08-16 Fanuc Ltd Numerische steuereinheit.
JPS58161828A (ja) * 1982-03-22 1983-09-26 Nippon Steel Corp 金属位置検出方法
JPS584382A (ja) * 1981-06-26 1983-01-11 ファナック株式会社 工業用ロボツトの制御方式
US4433382A (en) * 1981-07-20 1984-02-21 Cincinnati Milacron Inc. Apparatus for automatically adjusting the programmed location of a robot arm
US4458321A (en) * 1981-08-19 1984-07-03 The Charles Stark Draper Laboratory, Inc. Self-teaching robot feedback system
JPS5858607A (ja) * 1981-10-05 1983-04-07 Sankyo Seiki Mfg Co Ltd プリセツト式ロボツトにおけるポイント測定方式
US4432063A (en) * 1981-10-06 1984-02-14 Cincinnati Milacron Inc. Apparatus for automatically moving a robot arm along a nonprogrammed path
JPS58132439A (ja) * 1982-02-02 1983-08-06 Yamazaki Mazak Corp 数値制御工作機械における加工プログラムの修正制御方法
US4486843A (en) * 1982-03-03 1984-12-04 Nordson Corporation Transitional command position modification for a controller
US4484294A (en) * 1982-03-03 1984-11-20 Nordson Corporation Method and apparatus for modification of a prerecorded programmed sequence of motions during execution thereof by a robot
US4481591A (en) * 1982-03-03 1984-11-06 Nordson Corporation Method and apparatus for modifying a prerecorded sequence of ON/OFF commands for controlling a bistable device operating in conjunction with a moving robot under program control
JPS58171243A (ja) * 1982-03-29 1983-10-07 Fanuc Ltd 数値制御装置
US4581893A (en) * 1982-04-19 1986-04-15 Unimation, Inc. Manipulator apparatus with energy efficient control
US4453221A (en) * 1982-05-13 1984-06-05 Cincinnati Milacron Inc. Manipulator with adaptive velocity controlled path motion
JPS58206389A (ja) * 1982-05-28 1983-12-01 日産自動車株式会社 ロボツトの制御装置
SE452719B (sv) * 1982-06-29 1987-12-14 Asea Ab Industrirobot
CA1184273A (en) * 1982-09-23 1985-03-19 Kazuyoshi Yasukawa Robot control apparatus
JPS5960506A (ja) * 1982-09-29 1984-04-06 Fanuc Ltd 数値制御システム
JPS5985513A (ja) * 1982-11-06 1984-05-17 Ricoh Co Ltd サ−ボ系の動作時間調整装置
JPS59114609A (ja) * 1982-12-22 1984-07-02 Hitachi Ltd ロボットの制御装置
US4494060A (en) * 1983-03-02 1985-01-15 Anorad Corporation Axis controller for robotic actuator
US4510428A (en) * 1983-03-25 1985-04-09 Unimation, Inc. Control system for manipulator apparatus with initializing stabilization and inertia scaling
JPS59188704A (ja) * 1983-04-12 1984-10-26 Amada Co Ltd Nc機器の作動デ−タ修正方法
SE8304100L (sv) * 1983-07-22 1985-01-23 Ibm Svenska Ab System for automatisk kalibrering av rymdkoordinaterna hos en robotgripper i sex frihetsgrader
JPS60175105A (ja) * 1984-02-20 1985-09-09 Fanuc Ltd 通路生成方法
JPH0631527B2 (ja) * 1985-04-30 1994-04-27 マツダ株式会社 さく岩機のブ−ム位置決め装置
JP2568171B2 (ja) * 1985-06-19 1996-12-25 豊田工機株式会社 数値制御デ−タ修正機能を備えた数値制御装置
JPS6222107A (ja) * 1985-07-22 1987-01-30 Fanuc Ltd Ncデ−タ作成方法
JPS62131306A (ja) * 1985-12-04 1987-06-13 Shin Meiwa Ind Co Ltd 産業用ロボツトにおける制御方法
US4748552A (en) * 1986-05-28 1988-05-31 Goro Kikuchi Sequence control system
JP2681630B2 (ja) * 1986-08-16 1997-11-26 ファナック 株式会社 オーバライドプレイバック方式
US4986724A (en) * 1987-11-10 1991-01-22 Cincinnati Milacron Inc. System for compensated motion of coupled robot axes
BG48961A1 (en) * 1988-08-16 1991-07-15 Instit T Za Kompleksna Avtom N Periphery control device
JPH02160487A (ja) * 1988-12-12 1990-06-20 Fanuc Ltd ロボット手動送り補正方式
JPH02250782A (ja) * 1989-03-20 1990-10-08 Fanuc Ltd 産業用ロボットの手動介入方式
JPH02277102A (ja) * 1989-04-18 1990-11-13 Toshiba Mach Co Ltd 数値制御工作機械における加工プログラムティーチング方式
JP2862036B2 (ja) * 1991-09-17 1999-02-24 三菱電機株式会社 数値制御装置
US5255571A (en) * 1992-06-25 1993-10-26 United Parcel Service Of America, Inc. Three degree of freedom actuator system
JP3053501B2 (ja) * 1992-10-20 2000-06-19 ファナック株式会社 ロボットの位置教示方法
JPH0592805U (ja) * 1993-02-10 1993-12-17 日野自動車工業株式会社 工作機械の制御装置
US5375066A (en) * 1993-03-01 1994-12-20 The United States Of America As Represented By The Secretary Of Commerce Apparatus and methods for implementing error correction in real time for machine tools with encoder-type position feedback
EP0774175B1 (de) * 1995-06-06 2004-09-08 The Chamberlain Group, Inc. Bewegliche barrierenbedienvorrichtung mit lernfähigkeit für kraft und position
IT1296576B1 (it) * 1997-11-27 1999-07-14 Promau Srl Apparecchiatura automatica per la curvatura di lamiere, con controllo selettivo digitale
JP4203696B2 (ja) * 1999-10-20 2009-01-07 株式会社安川電機 産業用機械の動作確認方法および装置
US7908652B1 (en) 2001-12-21 2011-03-15 Trapware Corporation Detection of observers and countermeasures against observers
US8176551B1 (en) * 2000-01-27 2012-05-08 Trapware Corporation Detection of observer programs and countermeasures against observer programs
DE102005047204A1 (de) * 2005-10-01 2007-04-05 Daimlerchrysler Ag Verfahren zur Programmierung eines Industrieroboters
US8612886B2 (en) 2007-09-28 2013-12-17 Rockwell Automation Technologies, Inc. Sequential function chart (SFC) online editing without reset
US9841749B2 (en) * 2014-04-01 2017-12-12 Bot & Dolly, Llc Runtime controller for robotic manufacturing system
US9555545B2 (en) 2014-05-21 2017-01-31 Bot & Dolly, Llc Systems and methods for time-based parallel robotic operation
US9278449B1 (en) 2014-05-21 2016-03-08 Bot & Dolly, Llc Closed-loop control system for robotic operation
US9435446B1 (en) 2014-07-24 2016-09-06 Google Inc. Rotary valve with brake mode
US9611946B1 (en) 2015-08-17 2017-04-04 Google Inc. Rotary hydraulic valve
US9665099B1 (en) 2015-12-31 2017-05-30 Google Inc. Integrated valve for a legged robot

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US28437A (en) * 1860-05-22 Improvement in revolving fire-arms
DE1138848B (de) * 1958-10-15 1962-10-31 Nat Res Dev Servosystem zur Steuerung von Antrieben zur Bewegung eines Koerpers relativ zu einem anderen Koerper
DE1942914A1 (de) * 1968-08-22 1970-02-26 American Mach & Foundry Programmsteuerung fuer Servoantriebe

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3551656A (en) * 1965-04-12 1970-12-29 Giddings & Lewis Numerical control system
US3555254A (en) * 1967-04-17 1971-01-12 Gerber Scientific Instr Co Error correcting system and method for use with plotters, machine tools and the like
US3701888A (en) * 1970-08-05 1972-10-31 Bendix Corp Time shared position feedback system for numerical control
US3725654A (en) * 1971-02-22 1973-04-03 Inductosyn Corp Machine tool contour control system
US3770947A (en) * 1971-08-20 1973-11-06 City Nat Bank Of Detroit Tool control
US3766460A (en) * 1972-05-03 1973-10-16 Blond Inc Le Manual control system for numerically controlled machine
US4021651A (en) * 1972-06-20 1977-05-03 Kawasaki Jukogyo Kabushiki Kaisha Programmed manipulator
JPS4920856A (de) * 1972-06-20 1974-02-23
US3885207A (en) * 1973-01-17 1975-05-20 Amf Inc Optimized editing system for a servo controlled program recording system
JPS5425300B2 (de) * 1973-01-25 1979-08-27
US3878983A (en) * 1973-10-29 1975-04-22 Iii Samuel M Hamill System for numerical control of a machine tool
US3969723A (en) * 1974-07-03 1976-07-13 General Electric Company On-line modification of computer programs
US4025838A (en) * 1974-12-26 1977-05-24 Kawasaki Heavy Industries, Ltd. Signal modification device for memory controlled manipulator apparatus
DE2461842C3 (de) * 1974-12-30 1980-12-04 Kawasaki Heavy Industries, Ltd., Kobe, Hyogo (Japan) Einrichtung zur Änderung von Positionssignalen für einen programmgesteuerten Manipulator
JPS5223274A (en) * 1975-08-15 1977-02-22 Hitachi Ltd Self-matching type semiconductor device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US28437A (en) * 1860-05-22 Improvement in revolving fire-arms
DE1138848B (de) * 1958-10-15 1962-10-31 Nat Res Dev Servosystem zur Steuerung von Antrieben zur Bewegung eines Koerpers relativ zu einem anderen Koerper
DE1942914A1 (de) * 1968-08-22 1970-02-26 American Mach & Foundry Programmsteuerung fuer Servoantriebe

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
In Betracht gezogene ältere Anmeldung: DE-OS 26 39 774 *
In Betracht gezogenes älteres Patent: DE-PS 24 61 842 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3039094A1 (de) * 1979-10-19 1981-04-30 Tokico Ltd., Kawasaki, Kanagawa Roboter
DE3210675A1 (de) * 1981-04-03 1982-10-28 Cincinnati Milacron Inc., 45209 Cincinnati, Ohio Vorrichtung zum dynamischen steuern des werkzeugmittelpunkts eines roboterarms abseits einer vorbestimmten bahn
DE3406255A1 (de) * 1983-02-21 1984-09-27 Mitsubishi Denki K.K., Tokio/Tokyo Robotersteuerapparat
US4594670A (en) * 1983-02-21 1986-06-10 Mitsubishi Denki Kabushiki Kaisha Robot control apparatus
DE3422107A1 (de) * 1983-06-14 1984-12-20 Mitsubishi Denki K.K., Tokio/Tokyo Roboter-steuereinrichtung
DE3532213A1 (de) * 1985-09-10 1987-05-07 Leifeld & Co Verfahren zum betreiben einer numerisch gesteuerten drueckmaschine sowie drueckmaschine zur durchfuehrung dieses verfahrens
DE102015016255A1 (de) * 2015-12-15 2017-06-22 Kuka Roboter Gmbh Iteratives Programmieren eines Prozesses einer beweglichen Maschine, insbesondere eines Roboters
DE202018003442U1 (de) * 2018-07-25 2019-10-28 Ipr Gmbh Kabelkonfektionierungswerkzeuganordnung

Also Published As

Publication number Publication date
GB1575418A (en) 1980-09-24
IT1080007B (it) 1985-05-16
FR2342826B1 (de) 1983-11-10
DE2709335C2 (de) 1988-01-28
SE8505935L (sv) 1985-12-16
JPS60105008A (ja) 1985-06-10
JPS6130284B2 (de) 1986-07-12
SE461118B (sv) 1990-01-08
JPS6129004B2 (de) 1986-07-03
CA1071316A (en) 1980-02-05
SE8505935D0 (sv) 1985-12-16
FR2342826A1 (fr) 1977-09-30
US4140953A (en) 1979-02-20
SE444782B (sv) 1986-05-12
SE7702297L (sv) 1977-09-04
JPS52106563A (en) 1977-09-07

Similar Documents

Publication Publication Date Title
DE2709335C2 (de)
DE2234759C3 (de) Programmsteuerung für einen in einer Fließbandfertigung anwendbaren ortsfesten Manipulator
DE2660912C2 (de) Programmsteuerung für einen Manipulator
DE3103166C2 (de) Verfahren zum Bearbeiten einer Oberfläche eines Werkstücks und numerisch gesteuerte Werkzeugmaschine
DE3842254C2 (de) Einrichtung zum Steuern eines Manipulators für eine Blechbearbeitungsmaschine, insbesondere Blechbiegemaschine
DE2712169C2 (de) Verfahren zur Ausführung einer komplexen Bewegung durch einen Industrieroboter
DE3034244A1 (de) Lernfaehiger roboter
DE2012858C3 (de) Mit einer numerisch arbeitenden Programmsteuerung ausgerüsteter Manipulator
DE2433003A1 (de) Programmsteuersystem
DE2530261A1 (de) Komplex von elementen zum eingeben von arbeitsablaeufen in eine elektronische vorrichtung, welche eine arbeitsmaschine die gleichen arbeitsablaeufe wiederholt ausfuehren laesst
DE3317263A1 (de) Manipulator mit adaptiver geschwindigkeitsgesteuerter bahnbewegung
DE2730335A1 (de) Steuergeraet fuer maschinen und verfahren zur automatischen steuerung von maschinen
DE3131823A1 (de) Numerisch gesteuerte werkzeugmaschine
CH658616A5 (de) Zubringevorrichtung.
WO2019101908A1 (de) Modularer endeffektor
DE3017613A1 (de) Werkzeugwechselvorrichtung fuer eine werkzeugmaschine
DE1920275B2 (de) Vielspindelwerkzeugmaschine mit werkzeugwechseleinrichtung
EP0321699A1 (de) Zusatzmagazin für programmgesteuerte Werkzeugmaschinen
DE1908757B2 (de) Steuersystem fuer eine werkzeugmaschine mit einer werkzeugmaschinensteuerung zum auswerten von teilbefehlen zur steuerung der betriebsweise der werkzeugmaschine
DE3744294A1 (de) Drehbank
DE2916115A1 (de) Regelsystem fuer einen abtaster
DE102009049985B3 (de) Industrieroboter und Verfahren zum Betreiben eines Industrieroboters
DE2112850A1 (de) Verfahren zur Auswahl eines Werkzeuges und Werkzeugauswaehlanordnung
DE19724635A1 (de) Werkzeugmaschine mit Werkzeugauswechselvorrichtung
DE3329619A1 (de) Verfahren zum werkstueckwechsel sowie beschickungsvorrichtung zu seiner durchfuehrung

Legal Events

Date Code Title Description
8125 Change of the main classification

Ipc: G05B 19/02

8126 Change of the secondary classification

Ipc: ENTFAELLT

D2 Grant after examination
8378 Instruction for suspension has been quashed
8363 Opposition against the patent
8339 Ceased/non-payment of the annual fee