ROBOT CONTROL METHOD

Abstract: Method for controlling a robot according to this invention lies in that, in controlling a robot that comprises shafts having one degree of freedom or a plurality of degrees of freedom, and where a dynamic load is applied to at least one of the above shafts, the shafts being driven by a servo motor via a speed reducer, the improvement is characterized in that the shaft to which the load is applied is moved in a load acting direction and thereafter is stopped. This invention is enabled by the discovery that the efficiency (normal efficiency) from the servo motor to the arm (shaft) forms an almost the same value relative to the efficiency (reverse efficiency) from the arm to the servo motor. A condition of transmitting the load from the arm is intentionally made and the load is made to establish equilibrium with the torque generated by the servo motor, thus reducing the consumption of electricity and the generation of heat.

Description: This invention relates to a method for controlling a robot wherein the torque of a servo motor is transmitted to a robot arm by way of a speed reducer, and more particularly, to the holding of a load while the robot is in a stopped condition. See for example H. Keinrichfreise "The control of an elastic manipulation device using DSP" Proceedings of the 1988 American Control Conference 17 June 88. [BACKGROUND OF THE INVENTION] Particularly among industrial robots, there are some which utilize hydraulics as drive means thereof. However, the robots generally employ servo motors and the torque of the servo motors is usually transmitted to a robot arm by way of a speed reducer. Meanwhile, in the teaching playback robot, the plurality of points on a path along which the robot arm passes are preliminarily taught and, at the time of playback, the robot is controlled by an interpolation of teaching points so that the robot arm moves along the path from one teaching point to another teaching point. Conventionally, when the robot moves from one teaching point to another teaching point, once the robot reaches a target point, the robot is stopped without considering the conditions of the loads applied to the respective shafts of the robot. Therefore, it is often the case with any one of the robots shafts that when the movement of the arm from one teaching point to another teaching point is in a direction to lift a load, the robot shaft is stopped in the load lifting condition even after the completion of the movement. Fig. 1 exemplifies such a movement, wherein numeral 1 indicates a first shaft, numeral 2 indicates a second shaft, numeral 3 indicates a third shaft and capital letter W indicates a load. In Fig. 1, when the respective shafts move from positions shown with a solid line to positions shown with a hyphenated line which represents subsequent teaching points, the second shaft 2 moves in a direction to lift the load W and is stopped in the load lifting condition. Here, no brake means is provided for maintaining the stopped condition. If the drive system of the above shafts comprises a servo motor 4, a speed reducer 5 and an arm 6 comprised of any desired shafts, the transmission of the torque from the servo motor 4 to the arm 6 is expressed as follows. T L = T M0 × η × i ∴T M0 = T L / (η × i) wherein, T M0 : required motor torque η : normal efficiency of the speed reducer (η < 1) 1/i : speed reduction ratio T L : torque on arms by loads Meanwhile, the torque transmission from the load W to the servo motor 4 is expressed as follows. T M1 = T L × η' × (1/i) wherein, T M1 : required motor torque η' : reverse efficiency of the speed reducer (η' < 1) As described previously, since the normal efficiency η (< 1) is the inverse of the reverse efficiency η'(< 1), the load applied to the servo motor 4 for driving the shaft greatly differs between a case (a) in which the arm is moved in a load lifting direction and then is stopped while maintaining the load lifting condition and a case (b) in which the arm is moved while holding the load and then is stopped. Therefore, in the case (a), the servo motor consumes a considerable amount of electricity and eventually increases the generation of heat which will adversely affect the accurate operation of the motor. Accordingly, the task to be achieved by this invention lies in stopping the robot under the condition (b), thus reducing the required torque of the servo motor and the generation of heat. [DISCLOSURE OF THE INVENTION] The above task is solved by the features of claim 1. This invention is enabled by the discovery that the efficiency (normal efficiency) of transmission from the servo motor to the arm (shaft) forms an inverse number relative to the efficiency (reverse efficiency) of transmission from the arm to the servo motor. The invention intentionally creates a condition in which the load is transmitted from the arm so as to make the load establish the equilibrium with the torque generated by the servo motor, thus reducing the consumption of electricity and the generation of heat. To be more specific, when the robot is stopped at a point, the directions of the dynamic loads which are applied to the respective shafts in a stopped condition are judged and, if the robot's stopped condition continues for a predetermined time, the shafts to which loads are applied are moved a minute distance in a direction opposite to the load acting direction and thereafter returned to the stopped position to obtain the condition (b). With this invention, the load of the servo motor at the stopped condition can be reduced, the consumption of electricity is reduced and the generation of heat is reduced. In addition, the capacity of the servo motor can also be reduced. [BRIEF DESCRIPTION OF DRAWINGS] Fig. 1 is a schematic view of a robot having three shafts lifting a load. Fig. 2 is an explanatory view explaining the torque transmission from the servo motor to the arm. Fig. 3 is a block diagram showing by way of example a construction of a robot controlling apparatus. Fig. 4 is a flow chart showing one example of the method according to this invention. [DESCRIPTION OF THE PREFERRED EMBODIMENT] Hereinafter, this invention is by way of example physically explained in view of an embodiment. Fig. 3 is a block diagram showing the construction of a robot controlling apparatus. Motor control parameters are stored in a ROM 6 which is connected to an arithmetic CPU. When the system is initialized, the motor control parameters are transferred to a shared RAM by the a following path. ROM 6 → bus 24 → arithmetic CPU 5 → bus 23 → shared RAM 4 → bus 22 → shared RAM 3 The control parameters which are transferred to the shared RAM 3 can be altered by an operator operating an I/O device 13 which is connected to a peripheral CPU 12. The control parameters which are stored in the shared RAM 3 are transferred to the shared RAM by the following path so that a servo CPU can have access to the control parameters. shared RAM 3 → main CPU 1 → bus 22 → shared RAM 4 In an ordinary or routine robot control, the program execution commands are transferred to the servo CPU by way of the bus 22, the shared RAM 4 and the bus 23 and the servo CPU 7 transfers control signals to a D/A converter 9 by way of a bus 25. The D/A converts digital signals to analog signals and provides speed commands to a servo amplifier 10. The servo amplifier 10 includes, for example, an inverter and provides torque commands to a servo motor 11 to drive a robot arm. Fig. 4 is a flow chart showing one embodiment of this invention which is executed by the servo CPU 7. In the drawing, at step 100, whether the robot is stopped or not is judged in view of the deviation between a position feedback signal from the servo motor in Fig. 3 and a position command signal. If the robot is stopped, a timer is reset at step 110 and the load acting direction shafts are selected at step 120. To be more specific, the shafts which make the servo motor 11 generate torque to drive the robot arm in a direction opposite to gravity while the robot arm is stationary are selected as load acting direction shafts. When the timer is up at step 130 which executes the decision processing, a movement command of a minute distance, for example, several pulses, are provided to the servo motor at step 140 to move the load acting direction shafts in a direction opposite to the load acting direction. Subsequently, at step 150, the load acting direction shafts are moved. Then, the movement command to return the load acting direction shafts to the original position is generated at step 160 and the load acting direction shafts are returned to the original position at step 170. If there exists a movement command in decision processing at step 180, the load acting direction shafts are moved at step 190 and are returned to the original position. To prevent the transfer of execution commands of an operation program from the main CPU to the servo CPU 7 during the execution from step 140 to step 170, a wait command is provided to the main CPU 1 from the servo CPU 7 and, after the completion of the processing at step 170, a reset signal for the wait command is generated so that interference to the operation of this invention by another program can be avoided. The torque reduction rate according to this invention is expressed as follows using the above-mentioned equations 1 and 2. torque reduction rate = motor torque for lowering load motor torque for lifting up load × 100% = T M1 T M0 × 100 = T L × η' × (1/i) T L /(η × i) × 100 = η × η' × 100 (%) For example, assuming that the normal efficiency η from the servo motor to the arm in a robot is 0.7 and the reverse efficiency η' is 0.7, while the motor torque T M0 for lifting the load is 100%, the motor torque T M1 for lowering the load is expressed as follows. T M1 = T M0 × torque reduction rate = 100 × 0.7 × 0.7 = 49% In effect, a remarkable torque reducing effect can be achieved. [INDUSTRIAL FEASIBILITY] This invention can be utilized to control various industrial robots.

Claims: Method for controlling a robot wherein the robot comprises shafts having one degree of freedom or plural degrees of freedom and a dynamic load is applied to at least one of above shafts, said shafts being driven by a servo motor via a speed reducer, characterized in that the shaft to which the load is applied is moved while holding the load in a load acting direction and then is stopped by judging the direction of dynamic load being applied to the respective shaft in a stopped condition, when the robot is stopped at a point, by moving the shaft to which load is applied a minute distance in a direction opposite to the load acting direction, if the robot's stopped condition continues for a predetermined time, and by, thereafter, returning to the stopped position. Method according to claim 1, characterized in that said judging whether the robot is stopped or not, is achieved by detecting the servo deviation, being the deviation between a position feedback signal from the servo motor and a position command signal. Method according to claim 1 or 2, characterized by resetting a timer, when the robot is stopped. Method according to one of the preceding claims, characterized by selecting the shaft making the servo motor generate torque to drive the robot arm in a direction opposite to gravity, while the robot arm is stationary, as load acting direction shaft to be moved in a load acting direction. Method according to one of the preceding claims, characterized by providing a command of minute movement to the selected shaft in a direction opposite to the load acting direction, when the timer at the above judgement processing is up, provided that the robot is stopped. Method according to one of the preceding claims, characterized by providing a command of movement to the selected shaft to move and return the selected shaft to the original position.

Inventors: NISHI MASANORI, OKAMURA KUNIHIRO, TOUNAI SHUICHI, NISHI, MASANORI, OKAMURA, KUNIHIRO, TOUNAI, SHUICHI, NISHI, MASANORI, C/O K.K. YASKAWA DENKI, OKAMURA, Kunihiro, c/o K.K. Yaskawa Denki, TOUNAI, Shuichi, c/o K. K. Yaskawa Denki
Applicants: YASKAWA DENKI SEISAKUSHO KK, KABUSHIKI KAISHA YASKAWA DENKI
Application year: 1992
Main classification: B25J13
IPC codes: B25J13, B25J9, G05B19, G05D3