CONTROL APPARATUS AND METHOD FOR INDUSTRIAL ROBOT

Abstract: A control apparatus and a method for operating the control apparatus for an industrial robot in which the robot is capable of performing numerous different tasks without requiring reprogramming, and in which pro­ grams can easily be corrected to compensate for changes in the workpiece being handled. The control apparatus includes a programming unit and a robot control unit. Each industrial robot is provided with its own robot control unit, while a single programming unit is shared among plural robot control units. The pro­ gramming unit is detachably coupled to the robot control unit through a communication cable. The programming unit includes an arithmetic processor, one or more me­ mories, an inputting device and a display, and the robot control unit includes plural program memories for storing plural programs communicated to the robot con­ trol unit from the programming unit, an operation control unit for carrying out operations of the robot in accord­ ance with a selected program read from a selected program memory and a mode setting circuit for selecting between a mode of receiving and storing programs and continuous operation mode. Data contained in the operat­ ing programs can easily be changed to compensate for a change in the workpiece being handled by an editing process carried out in the programming unit.

Description: CONTROL APPARATUS AND METHOD FOR INDUSTRIAL ROBOT B CKGROUND OF TEE INVENTION The present invention relates to an apparatus for controlling an industrial robot. Japanese Laid-Open Patent Publication No. 52-143661 describes a "Method of Controlling an Industrial Robot". According to the disclosed method, positional errors in an operating pattern are stored as positional difference values, the stored data is compared with basic position data, and an operational position is corrected on the basis of the difference. With such a control method, a teaching unit and a driver unit are integrally incorporated in a control apparatus, which makes the apparatus unavoidably large in size. Since corrective arithmetic operations must be effected for each operational stroke, the correcting program is necessarily lengthy and complex. If a large number of corrections need to be made, the resulting large number of corrective arithmetic operations causes the industrial robot to have a low speed of movement. Also, this arrangement is disadvantageous in that each robot must be provided with a dedicated control apparatus, and the control apparatus must have all of functions necessary to operate the industrial robot. In an improvement on that method, control of an industrial robot has been effected by a robot control unit and a separate programming unit. Each industrial robot is provided with a dedicated robot control unit, while a single programming unit, used as an external teaching device, is shared by a plurality of industrial robots. The use of the single programming unit as an external teaching device is effective in practice as it allows the control unit to be small in size, effectively utilized, and less costly. The programming unit is used to store in the robot control unit an operating program, and the robot control unit operates the industrial robot - using the stored program. An example of such an improved system is shown and described in United Kingdom Published Patent Application 2,027,938 A. Therein is described a teach-assist apparatus for a programmable industrial robot in which input data representing the positions of the arm of the robot relative to a stationary workpiece is inputted during a teaching operation. An off-line teach-assist computer (reference numeral 34 in Fig. 1 of the Application) computes path data, which is stored in a control memory of an on-line control apparatus which directly operates the manipulator arm. The stored data, which is computed so that the manipulator arm undergoes the most efficient movement, also includes projected workpiece positions in terms of basic linear displacement units, corresponding to possible positions of the workpiece as it moves down an assembly line. During work operations, the position of the workpiece is continuously determined, and data is selected for operating the manipulator arm in accordance with the detected position of the workpiece. A somewhat similar system is described in Reissue United States Patent 30,016 to Hohn. In that system, which is shown in block diagram form in Fig. 1 of the Reissue Patent, the data stored in an on-line memory does not include projected workpiece positions in terms of basic linear displacement units as in the case the above-discussed United Kingdom Published Patent Application. Instead, in response to the position of the workpiece, feedback signals are generated which specify the direction and magnitude of a change in position of the workpiece from its expected position. The feedback signals are utilized to modify command signals which are in turn used to operate the manipulator arm servo mechanism circuit. Industrial robots in use today have multiple functions and are capable df performing not only a single motion but a variety of different motions. However, with a conventional external teaching system, it has been necessary to store a new program in the robot control unit each time a different robot operation is to be performed. For example, if an industrial robot is being used to supply parts to a predetermined location and the location to be supplied with parts is displaced from a reference position beyond an acceptable range, the industrial robot can ino longer accurately perform the desired parts supplying operation. The industrial robot thus needs to be taught again, a procedure which is tedious and time-consuming Because the programming unit can store only a single program in the robot control unit, the robot cannot perform, without reprogramming, all the many functions of industrial robots. There has therefore been a need for a robot control unit capable of storing a plurality of programs and selecting among them freely. In practice, it is desirable that the programming unit be capable of preparing and storing several dozen or more programs, and that the robot control unit be capable of storing several different programs semipermanently. It is thus an object of the present invention to provide a robot control apparatus which will meet the foregoing requirements and which has a construction optimum for practical use. It is a further object of the present invention to provide a method of easily correcting the operational positions of an industrial robot without correcting the content of a program. SUMMARY OF THE INVENTION According to the present invention, the above and other objects are achieved by utilizing an external \robot teaching system with a multiplicity of fundamental programs stored in a programming unit. A plurality of necessary programs are inputted from the programming unit, subjected to predetermined arithmetic operations, and then transferred to a robot control unit. In the robot control unit, a desired program is selected and read out of the corresponding memory for controlling the industrial robot to perform desired motions. Yet further, the invention provides a method for correcting or offsetting a program in a programming unit and storing the corrected program in a robot control unit for separately controlling the programming unit and the robot control unit. The programming unit includes an arithmetic processor for transforming offset inputs supplied in a Cartesian coordinate system to a polar coordinate system for use in a program stored in the robot control unit. Accordingly, data input operations for industrial-robots of a polar-coordinate type can easily be performed. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram of a first embodiment of control apparatus for an industrial robot according to the present invention; Fig. 2 is a flowchart for a program preparing procedure; Fig. 3 is a flowchart for program calling in the program preparing procedure; Fig. 4 is a flowchart for a storage procedure at the time of transferring a program; Fig. 5 is a block diagram of a second embodiment of a control apparatus for an industrial robot according to the present invention used to perform a method for program correction of the invention; and Fig. 6 is a flowchart ¯for a program correcting method of the invention. DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will now be described with reference to the drawings which illustrate a preferred embodiment of the invention. Fig. 1 shows a control apparatus 1 for an industrial robot according to the present invention. The control apparatus 1 is composed of an independent programming unit 2 and a robot control unit 3 which are interconnected by a detachable communication cable 4. The programming unit 2 serves to prepare and store a number of desired operating programs and deliver a requested one of the stored operating programs to the robot control unit 3. The programming unit 2 includes an input device 5 such as a keyboard for inputting program data, mode instructions, offset (positional correction) data, and other inputs; a program editing arithmetic processor 6 in the form of a CPU (Central Processing Unit) including a control unit, an arithmetic unit and a register for storing processing programs (which include editing programs, coordinate transformation formulas, offset processing programs, and a compiling program for converting programs to machine language), editing the operating programs based on input data from the keyboard 5, and performing operations such as coordinate transformation and conversion into machine language; a memory 7 in the form of a RAM (Random Access Memory) for temporarily storing data related to the operating programs, coordinate transformation formulas, and a compiling program; an external memory¯8 having a large storage capacity such as a magnetic tape or a magnetic disk for storing a multiplicity of edited operating programs; a display unit 9 for displaying input and stored data; and a communication circuit 10 for delivering processed (completed) operating programs through the program editing arithmetic processor 6 to the robot control unit 3. The robot control unit 3 is specifically adapted to control the operation of an industrial robot 20 of the polar-coordinate type. The operation control apparatus 2 is composed of a communication circuit 11 for receiving processed operating programs transferred fro.s the programming apparatus 3; a plurality of operating program memories 12, 13, ...16 (five memories in the illustrated embodiment) for storing a plurality of computed operating programs delivered from the communication circuit 11-; a selector unit 17 for connecting data buses as needed to select writing or reading of the operating programs; a robot operation control unit 18 for generating the signals which cause the industrial robot 20 to perform the required motions; and a mode setting circuit 19 for setting a desired operation mode for the selector unit 17 and the robot operation control unit 18. Each of the operating program memories 12, 13, ...16 is composed of a RAM and an auxiliary power supply or battery which will automatically be connected to the RAM upon failure of the commercial power source so that the stored content of the RAM will be protected at all times against accidental erasure The selector unit 17 can be controlled by the mode setting circuit 19 and also by a detector circuit 21. The detector circuit 21 receives a signal from an external sensor 22 and operates the selector unit 17 in accordance with received signal. The sensor 22 may be composed, for example, of a group of limit switches engagable with dogs attached to an object handled by the industrial robot 20 for determining the type of object. The robot operation control unit 18 has a control circuit 23, an external input and output control circuit 24, and a robot drive circuit 25. When the operator selects a continuous operation mode using the mode setting circuit 19, the control circuit 23 enables the selector circuit 17 to deliver the stored content of a designated one the operating program memories 12, 13, ...16 that is, a desired operating program is inputted to the robot drive circuit 25. The external input and output control circuit 24 is responsive to motions of the robot 20 for detecting its operations and positions with limit switches, encoders or the like and for delivering data representative of the operations and positions to the control circuit 23. The robot drive circuit 25 receives signals from the external input and output control circuit 24 based on the content of the selected operating program and, in response thereto, confirms such signals and successively sends command signals to the industrial robot 1 for causing the desired motions. Operation of the control apparatus thus constructed will now be described. The programmer operates the input device 5 to supply input data such as operational positions of the industrial robot 20 (in Cartesian coordinates and an angular displacement for a chuck) and external input conditions according to a predetermined program preparation procedure, based on a PTP -(Point-To-Point) control system, for example, in which continuous path control is carried out. The inputted data is temporarily stored in the memory 7 through operation of the program editing arithmetic processer 6 and then stored in completed form in the external memory 8 at specified addresses. During this time, the display unit 9 displays the stored content or selected portions thereof. Since the storage capacity of the external memory 8 is large enough to store a number of programs, it can store as many programs as are expected to be needed. When the programming unit 2 is to deliver an operating program stored in the external memory 8 to the robot control unit 3, the programming unit 2 and the robot control unit 3 are interconnected as an on-line system, and thereafter a required operating program is read temporarily from the external memory 8 into the memory 7 utilizing an input program transfer operation. Then, the program editing arithmetic processer 6 converts the content of the memory 8 into polar coordinates and then into machine language through predetermined arithmetic operations. The data expressed in machine language is fed through the communication circuit 10 and the communication cable 4 to the communication circuit ll in the robot control unit 3. At this time, the robot control unit is set in an operating program storing mode by the mode setting circuit 19, with the selector unit 17 operated to designate addresses for data storage. A completed operating program is stored through the selector unit 17 into -the first operating program memory 12, for example. In this manner, the robot control unit 3 can store ¯five operating programs. Since the program memories 12, 13, ...16 are composed of RAMs as described above, they can store rewritten data as desired. Subsequently, the programming unit 2 is disconnected from the robot control unit 3, whereupon the robot control unit 3 can operate independently of the programming unit 2. The operator can then control the mode setting means 19 to cause the selector unit 17 to read a desired operating program out of the stored content of the operation program memory 16, for example. Such a program reading instruction can also be automatically effected by the detector circuit 21 in response to a signal from the sensor 22. The control circuit 23 reads the designated operating program and, in response thereto, enables the robot drive circuit 25 to energize a source of drive for driving the arm of the industrial robot 1. At the same time, the control circuit 23 receives signals from the external input and output control circuit 24 indicative of the movement of the industrial robot 20. The control circuit 23 then continuously operates the industrial robot 20 under the control of the selected operating program. Figs. 2 through 4 illustrate, respectively, procedures for preparing, calling and transferring a program. These procedures will now be described. After a Start Step 1, it is determined in a Step 2 if a program is to be prepared. If a program is to be prepared, then the keyboard of the input device 5 is operated to instruct a program preparation at a Step 3. The programmer feeds various inputs at a Step 4 while in conversation with the memory 7 according to a predetermined program preparation procedure. The inputs include the title of the program, the type of the robot, designation of points on a plane coordinate system, data - related to an external operation, data indicative of arm movements, and others. These inputs are edited and temporarily stored in the memory 7. When the programmer calls up an error check in Step 6 after completion of the data input operation has been indicated, it is determined at a Step 7 whether there is an error or not. If there is any error, then such an error is located at a Step 8 and corrected at a Step 9. Then, it is determined at a Step 10 whether the program data is to be transferred, and at a Step 11 whether the program data is to be stored in the external memory. If the program data is to be stored, then the programs goes to a connector 3. If the program data is to be stored in the external memory 8, then it is determined at a Step 12 whether the storage medium is a raw (unrecorded) tape. If it is a raw tape, then a recording address is designated at a Step 13 and thereafter a confirmation message is displayed at a Step 14. By performing a confirmation instruction at a Step 15, initialization or recording of an address zone is performed at a Step 16. If the storage medium is not found to be a raw tape in the Step 12, then a recording position is directly indicated at a Step 17. The program preparation is finished at a Step 19 after the title of the program has been displayed at a Step 18. The programmer repeats the foregoing operations as many times as there are programs to be prepared. If no program is to be prepared at the Step 2, then the program goes to a connector A. It is then determined at a Step 20 whether the program is to be transferred, at a Step 21 whether there is a magnetic tape, and at a Step 23 whether a file is to be checked. If there is no magnetic tape, then the program goes to the Step 23 after a cartridge has been inserted in place at a Step 22. Then, when the programmer designates a file at a Step 24, the file can be confirmed by an index display 25. When the title of the program is indicated at a Step 26, the stored content of the external memory 8 is temporarily read into the memory 7, and the title of the program is displayed at a Step 27. After it has been determined at a Step 28 whether the program is to be transferred, the program goes to the connector B. When the program reaches the connector B, that is, when the program is to be transferred, it is determined at a Step 30 whether the robot is ready after the units 2 and 3 have been connected into an on-line system. If the robot is not ready, then the power supply status, mode setting and other relevant parameters in the robot control unit 3 are confirmed in a Step 31, and the operator effects required operations at a Step 32. Thereafter, a memory number in the robot control unit 3 is designated at a Step 33. The program as called is processed and transferred in a Step 34, and delivered to a designated one of the program memories 12, 13, ...16 in the robot control unit 3. The program memory 12, for example, stores the content of the program at a Step 35. Finally, it is determined at a Step 36 whether there is any error. The procedure is ended at a Step 37. Since, according to the present invention, the programming unit and the robot control unit are independent of each other, the robot control unit is simple in construction and small in size. The programming unit can be combined with the robot control unit in an on-line system for storing a program in an arrangement known as an external robot teaching system for allowing the programming unit to be. shared by many robot control units. While a program is being stored, there is no need to stop the operation of the industrial robot. Therefore, the availability of the robot is not reduced. Since the storage capacity of the robot control unit -- is large and there are a plurality of program memories in the robot control unit, a plurality of programs can be stored, with the results that the industrial robot has wider range of use and can perform a sufficient number of functions. Since the stored data can always be supplied from the externalmemory, the industrial robot can readily perform every required motion. Moreover, with the contents of the programs selected by the operation of the mode setting means and the selector unit in the robot control unit, the content of a required program can be prepared independently of the programming unit A second embodiment of a control apparatus 1 for an industrial robot of the invention is shown in Fig. 5, in which like reference numbers designate similar elements in Fig. 1. As in the first described embodiment, the control apparatus 1 is composed of a programming unit 30 and a robot control unit 3 which are constructed as separate units but which can be connected to each other by a communication cable 4. The programming unit 30 has a control input device 35 such as a keyboard having ten numeric keys and function keys; a temporary memory 6 such as a RAM; a memory 7 such as a magnetic disk or a magnetic tape; an arithmetic processor 8 for storing a processing program and effecting various arithmetic operations for correction, coordinate transformation, and conversion into machine language; a communication circuit 10 serving as a transmitter and receiver for transmitting and receiving programs and data to and from the robot control unit 37; and a display unit 40 for displaying various data. The robot control unit 3 is constructed in the same manner as in the embodiment of Fig. 1. Here is is assumed that the robot control unit 3 is of the polar coordinate type; that is, - it operates using control data specified in polar coordinate form for controlling the movements of the industrial robot 3. In operation, the programmer operates the control input device 35 while watching the image displayed by the display unit 40 to store a desired program in the temporary memory 36: The stored content in the temporary memory 36 is stored at addresses in the memory 37 specific for each completed program. A plurality of programs can thus be stored in the memory 37 for required operating patterns of movement. When the program of a particular operating pattern is to be transferred to the robot control unit 3, the desired program is transferred into the temporary memory 6 and delivered to the- arithmetic processor 8, in which this program is subjected to coordinate transformation and conversion into machine language under the control of the processing program. The resulting program data is supplied through the communication circuit 10 to the communication circuit 11. The coordinate transformation is required to transform the data inputted in Cartesian coordinate form to polar-coordinate form. Such an arithmetic operation function for coordinate transformation permits operational position inputs to be supplied easily through-the input device without the programmer having to manually or separately convert the data. Prior to program transfer, the robot control unit 3 is set in a transfer mode by the mode setting circuit 19. The selector 17 may select the memory 13, for example, for receiving the transferred program. The content of the program received through the communication circuit 12 is delivered into the memory 13 in which the program is stored. A plurality of operating pattern programs are similarly stored in the other memories 12, 15, ...16. When it is desired to make a positional correction or offset due to a change of a rod part, for example, without changing the operating pattern, the mode setting circuit 19 in the robot control unit 3 is operated to set the latter for a programming mode. Then, program correction process according to the present invention is carried out as illustrated in Fig. 6. After a Start Step 41 the programmer inserts a magnetic tape cartridge at a Step 42 and designates the title of a program at a Step 43. Upon such input operation, the designated program is read out of the memory 37 into the temporary memory 36 in which the program data is temporarily stored. Simultaneously, the title of the program is displayed on the display unit at a Step 44. Then, it is determined at a Step 45 whether a positional correction or an offset is to be made. The programmer supplies an offsetindicating input at a Step 46 and a correction input for a corrected position at a Step 47. As described above, the correction input can be fed as data expressed in Cartesian coordinates. X and Y data which requires correction of the operational positions in the operating pattern is provided in the form of difference (delta) inputs. The data indication of the corrected positions is temporarily stored in the temporary memory 36 and displayed on the display unit 40 at the same time. Since the operating pattern remains unchanged, the program itself is not changed and only numerical values used by the program are varied. Subsequently, it is determined at a Step 48 whether the program is to be transferred. If the program is to be transferred, then the operator connects the programming unit 30 and the robot control unit 3 through the communication cable 4 to unite the units 2 and 30 as an on-line system at a Step 49. It is then determined at a Step 50 whether the robot is ready or not, and thereafter the operator operates the control input device 35 to designate a storage address in the robot control unit 3 at a Step 51. 't.en the storage address is designated at the Step 5i, the arithmetic processor 38 corrects the content or data of the given program, and the corrected data is subjected to coordinate transformation and converted into machine language. The corrected program is then transferred through the communication circuits 10 and 11. The robot control unit 3 accepts the corrected program and stores it in the designated memory, for instance, the memory 13. At this time, it is determined at a Step 52 whether there is an error. The corrective action is finished at a final Step 53. When the corrected program is read while in an-operation mode, the industrial robot 20 repeats its motions in a desired operating pattern at the corrected position based on the data of the corrected program. While in the foregoing embodiment corrected data is described as being manually supplied through the control input device 35, such corrected input data can also automatically be fed by an automatic measuring device. The automatic measurement can be carried out by providing a photoelectric sensor at a reference position, detecting the position of an object to be worked upon with the photoelectric sensor, and converting the detected signal into a digital- signal which is supplied to the temporary memory 36. The reference position may be selected- outside of the industrial robot 20 or may it be on the arm of the industrial robot 20. With the method of program correction according to the present invention, no basic operating program is required to be corrected in the program unit, and only data related to operational positions used in the operating program need be corrected. Thus, the basic program remains unaltered. Any positional correction can easily be carried out by only partial correction. The program and data subsequent eo correction are transferred to the robot control unit and stored therein, so that no arithmetic operation is required in the robot control unit for correction or offset each time a robot movement is effected. Accordingly, the control sequence can be simplified and the robot operation can be performed at a high speed.

Claims: CLAIMS 1. A control apparatus for an industrial robot, comprising: a programming unit and a robot control unit; said programming unit comprising a program editing arithmetic processor, data inputting means for inputting data to said program editing arithmetic processor, a random-access memory coupled to said program editing arithmetic processor for storing a program prior to processing, an external memory communicated with said random-access memory and said program editing arithmetic processor for storing a plurality of programs, and first communicating circuit means for transmitting programs outputted through said program editing arithmetic processor to said robot control unit; and said robot control unit comprising second communication circuit means for receiving processed programs from said first communicating circuit means of said programming unit, a plurality of program memories each of which is capable of storing a single program for operating said industrial robot, selecting means for routing programs communicated through said second communicating circuit to a designated one of said program memories and for selectively reading programs out of a designated one of said program memories, a robot operation control unit for controlling operations of said industrial robot in accordance with a program read out by said selecting means from a selected one of said program memories, - and mode setting means for operating said serecting means and said robot operation control means, wherein said mode setting means can selectively set said selecting means and said control means in a mode for receiving and storing programs to receive processed programs from said programming unit for storing process programs in said program memories and in a continuous operation mode for reading out a selected program from a designated one of said program memories for causing said robot control units to control operations of said industrial robot in accordance with said selected program 2. The control apparatus of claim 1, further comprising a detachable cable for detachably connecting said first communicating circuit means and said second communicating means. 3. The control apparatus of claim 1, further comprising an external sensor for sensing a predetermined parameter of a workpiece; and detecting means coupling an output of said sensing means to said selecting means for causing said selecting means to select an operating program for said industrial robot in accordance with an output of said external sensor. 4. The control apparatus of claim 3, wherein said sensing means comprises a group of limit switches engagable with dogs attached to a workpiece handled by said industrial robot for determining a type of said workpiece. 5. A method for controlling the operation of an industrial robot through an industrial robot control apparatus including a programming unit and a robot control unit detachably coupled to said programming unit; the programming unit comprising an arithmetic processor, data inputting means for inputting data to said arithmetic processor, a temporary memory coupled to said arithmetic processor, and a second memory coupled to said arithmetic processor through said temporary memory for storing a plurality of operating programs; and said robot control unit comprising a program memory for receiving and storing programs transferred from said programming unit, and means for controlling the movement of said industrial robot in accordance with a selected program read out from said memory means, comprising the steps of: transferring position control data from a selected program from said second memory to said temporary member; inputting data representative of corrective values through said data inputting means; processing said data from said selected program and said data inputted through said data inputting means in said arithmetic processor to provide corrected program data; transmitting said corrected program data from said arithmetic processor to said program memory of said robot control unit; receiving said and storing corrected program data in said program memory of said robot control unit; and operating said industrial robot in accordance with the corrected program data 6. The method of claim 5, wherein said data inputted through said data inputing means is in Cartesian coordinates, and wherein said step of processing comprises converting said data inputted through said inputting device in Cartesian coordinates into polar coordinates so that said corrected program data communicated to said robot control unit is in polar coordinates. 7. The method of claim 6, wherein said programming unit comprises displaying means coupled to said inputting device and said temporary memory, and further comprising the step of displaying data on said displaying means inputted through said inputting device and data stored in said temporary memory. 8. A method for controlling an industrial robot through an industrial robot control apparatus including a programming unit and a robot control unit detachable connected to said programming unit; the programming unit comprising an arithmetic processor, a temporary memory coupled said arithmetic processor, a second memory capable of storing a plurality of operating programs coupled to said temporary memory, and display means for displaying data inputted through said inputting device and stored in said tempcrary memory; and said robot control unit comprising a program memory for storing completed programs communicated to said robot control unit from- said arithmetic processor,, and means for controlling movements of said industrial robot in accordance with a selected program read out from said program memory comprising the steps of: inputting data through said data inputting means for selecting a program stored in said second memory for causing said selected program to be read from said second memory into said temporary memory; displaying data identifying said selected program on said displaying means; determining whether a positional direction or an offset is to be effected in said selected program; supplying one of an offsetindicating input and a correction input in accordance with the result of the step of determining whether a positional correct or an offset is to be made in Cartesian coordinate form and in the form of differences; changing numerical values in said selected program representing an operating pattern of said industrial robot in accordance with said data inputted into said temporary memory using said arithmetic processor; simultaneously, displaying data indicative of corrected positions on said display means; transferring a corrected program from said arithmetic processor to said robot control unit; and operating said industrial robot in accordance with said corrected program. 9. The method of claim 8, wherein said arithmetic processor converts data inputted thereto through said inputting device and temporary memory into polar coordinates for use by said robot control unit.

Inventors: FUJIMURA, YUKIO, OGUCHI, YUKIO, YASUKAWA, KAZUYOSHI
Applicants: KABUSHIKI KAISHA SANKYO SEIKI SEISAKUSHO
Application year: 1982
Main classification: G05B19
IPC codes: B25J9, G05B19