Rotation driving apparatus, robot apparatus, control program, and article manufacturing method

A joint of a robot comprises a servo motor, a speed reducer driven by the servo motor, and an output-side encoder for measuring a rotation angle of the output-side rotation shaft of the speed reducer, and the position/orientation of the robot is controlled by the joint. The present invention, which aims to be able to detect certainly and at a high speed the state of the speed reducer, is characterized by driving the joint via the speed reducer by rotating the servo motor, obtaining a resonance amplitude of the joint from the rotation angle obtained from the output-side encoder, and thus diagnosing the lifetime of the speed reducer according to the obtained resonance amplitude of the joint.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to a rotation driving apparatus which comprises a transmission driven by a rotation driving source, and an output-side sensor for obtaining a rotation angle of the output-side rotation shaft of the transmission, a robot apparatus which uses the rotation driving apparatus, a control program which is used for the rotation driving apparatus, and an article manufacturing method which is performed by the robot apparatus.

Description of the Related Art

In recent years, a producing (manufacturing) apparatus in which a multi-joint robot (simply called a robot hereinafter) is used becomes widespread in the field of industrial manufacturing. Here, the robot comprises, for example, a plurality of joints each driven by a rotation driving apparatus and thus enables to achieve complicated and high-speed article manufacturing work as with human hands. In the robot like this which can perform such complicated operations, since a degree of freedom of the operation by a robot arm is high, there is a possibility that the robot arm comes into contact with another object such as a workpiece, a tool or the like in a surrounding environment while the manufacturing work is being performed. Thus, for example, if the robot arm comes into contact with a peripheral object or the like and thus a transmission (speed reducer) disposed in the joint of the arm is subject to impact, there is a fear that a breakdown (trouble) such as tooth skipping (tripping) or the like occurs in the speed reducer.

Here, an actuator which is used to drive the rotation driving apparatus being the joint of the robot arm of this type is constituted by, for example, a servo motor and a transmission. In general, the transmission of this type is often constituted as a speed reducer because of relation of a rotation speed region of a rotation driving source such as the servo motor and a rotation speed region for rotating a link of the arm. For this reason, in the following, the speed reducer might exemplarily be described as a representative of the transmission to be used in the robot of this type.

As the relevant transmission, a transmission which uses a strain wave gearing mechanism by which a large speed reduction ratio can be obtained as compared with size and shape is widely used. In the transmission (speed reducer) which uses the relevant strain wave gearing mechanism, since angle transmission accuracy of the joint deteriorates due to a breakdown such as tripping or the like, there is a possibility that operation accuracy of the robot arm resultingly deteriorates.

In consideration of such circumstances as above, various techniques related to an interference and a collision of the robot arm are recently proposed. For example, the technique of providing an angle detector at each of the input and output sides of the actuator (motor and transmission) of each joint (each rotation driving apparatus) of the robot arm is proposed (Japanese Patent Application Laid-Open No. 2010-228028). More specifically, in the relevant technique, it is decided based on a detected angle difference between the input and output sides of the actuator whether or not a collision occurs, and, when it is decided that the collision occurs, the robot arm is driven in the reverse direction. Besides, the technique of detecting the state of the actuator (motor and transmission) of the joint after an interference or a collision of the arm occurred is widely known. For example, the technique of detecting a vibration of the arm at the time of driving the actuator of each joint by using a torque variation value calculated based on the motor torque value, comparing such a variation width with a threshold, and, based on the comparison result, deciding whether or not to exchange the necessary part is proposed (Japanese Patent Application Laid-Open No. 2006-281421).

In the technique disclosed in Japanese Patent Application Laid-Open No. 2010-228028, it is possible to detect that contact occurs at the robot arm. However, since it is difficult to visually confirm the transmission externally, it is substantially impossible to know the degree of damage of the transmission occurred by the contact. For this reason, to know or grasp the damage of the transmission, it is necessary to confirm the tooth plane of the gear by dismantling the transmission itself, and then decide whether or not exchange of the part(s) is necessary. Here, when knowing the damage by dismantling the transmission, it is necessary to remove the transmission from the robot arm, and thus there is a problem that it takes a lot of time to do so. On the other hand, in the technique disclosed in Japanese Patent Application Laid-Open No. 2006-281421, since the value to be used for abnormality detection is obtained from the motor torque value, there is a problem that it is impossible to sufficiently obtain high detection accuracy because of the influence of the servo responsiveness of the arm itself.

SUMMARY OF THE INVENTION

The present invention aims to be able to detect accurately and at high speed the state of a transmission which is disposed in, e.g., a joint (rotation driving apparatus) of a robot.

In order to solve such problems as described above, a rotation driving apparatus according to the present invention is characterized by comprising a rotation driving source, a transmission configured to change a rotation speed of an input-side rotation shaft driven by the rotation driving source and drive an output-side rotation shaft, an output-side sensor provided to obtain a rotation angle of the output-side rotation shaft, and a controlling device configured to control the rotation driving source, wherein the controlling device comprises a unit configured to obtain a resonance amplitude of a joint from a value of the output-side sensor.

According to such a constitution as described above, it is possible to detect the state of the transmission disposed in the joint of the robot accurately and swiftly, in accordance with the resonance amplitude of the joint measured via the output-side sensor of measuring the rotation angle of the output-side rotation shaft of the transmission. For this reason, there is a significant effect that it is possible to swiftly perform part exchange decision of the robot, and it is thus possible to maintain the joint (transmission) of the robot in an appropriate state.

DESCRIPTION OF THE EMBODIMENTS

Preferred embodiments of the present invention will now be described in detail in accordance with the accompanying drawings. Incidentally, the embodiment described below is merely an example. Therefore, for example, a person skilled in the art can appropriately change or modify the detailed constitution within the range not departing from the scope of the present invention. Besides, since the numerical values used in the embodiment of the present invention are merely reference numerical values, it is apparent that these values do not limit or restrict the present invention.

A robot apparatus according to the present embodiment is an industrial robot apparatus which performs assembling operation and work, and comprises a function for detecting a deterioration state, particularly a trouble (failure), of a transmission of the robot apparatus and preventing the trouble of the transmission. In other words, the robot apparatus comprises the function capable of diagnosing the state thereof. The trouble in the present embodiment includes a state that the transmission cannot be used, and also includes a normal-use disabled state that the transmission cannot be used for normal use. For example, the normal-use disabled state includes a state which exceeds an acceptable range (i.e., a normally usable state) to a use condition required for a predetermined use.

As described above, for example, the transmission of a rotation driving apparatus which is equivalent to the joint of the robot apparatus is often constituted generally as a speed reducer because of relation between a rotation speed region of a rotation driving source such as a servo motor and a rotation speed region for rotating a link of an arm. For this reason, in the following, the speed reducer will be described exemplarily as the representative of the transmission to be used in the robot apparatus of this type.

In the present embodiment, the (deterioration) state of the transmission which particularly uses a strain wave gearing mechanism is diagnosed via a resonance phenomenon which occurs in the rotation driving apparatus which is the joint unit of the robot apparatus. Here, the operation of detecting the deterioration state of the transmission of the joint unit via the resonance phenomenon of the joint unit (rotation driving apparatus) of the robot apparatus is based on a principle as described below. Incidentally, in the specification of this application, the rotation driving apparatus might be called the joint.

When a damage occurs in the speed reducer due to such buffer action, collision or the like as above, an angle transmission error occurs due to tooth skipping, catching of a fragment caused by the damage, or the like. For example, the relevant angle transmission error is equivalent to an error which occurs between an input angle on the primary side of the speed reducer and an output angle obtained on the secondary side of the speed reducer via a change speed ratio.

On the other hand, a resonance frequency f (Hz: character frequency) as indicated by the following expression (1) exists in the joint of the robot in which the speed reducer using the strain wave gearing mechanism is used.

Here, “f” indicates the resonance frequency (Hz: character frequency) of the vibration system which includes the speed reducer, “K” indicates a spring constant of the speed reducer, and “J” indicates a load inertia (Kgm2) of the load which is driven by the joint in which the speed reducer is provided. The spring constant K is a constant term, and this constant is inherent for each type of the speed reducer. Further, the load inertia J corresponds to an inertia moment which is applied to the target joint shaft, and the magnitude thereof changes according to the orientation of a robot arm.

Besides, the speed reducer is equivalent to a rotation driving system, and corresponds to the number of rotations R (rmp: the number of rotations per one minute) as indicated by the following expression (2).

Accordingly, when the rotation speed of the input side of the speed reducer reaches the number of rotations R which satisfies the expression (2), a resonance phenomenon occurs in the joint. That is, when the relevant joint is driven, speed unevenness which coincides with the above resonance frequency f occurs in the vicinity of the number of driving rotations indicated by the expression (2).

It should be noted that the magnitude of the angle transmission error of the speed reducer and the magnitude of the resonance are related to each other. For example, it is assumed that a tooth fragment of the speed reducer gear which was chipped due to an abrupt overload such as collision or the like is periodically caught by another tooth. In such a case, if the angle transmission error which occurs due to the above accidental catching of the tooth fragment coincides with the resonance frequency, the arm largely resonates as compared with the normal state. Besides, even in a case where there is no damage in the gear, if (the whole of) the speed reducer has been distorted elliptically, a wave generator which is one of the parts constituting the strain wave gearing mechanism of the speed reducer is periodically deformed, whereby the arm largely resonates likewise.

As described above, in the resonance phenomenon which occurs in the joint of the robot, it is conceivable that the angle transmission error of the speed reducer appears in a form of vibration of the joint which can be detected by an output-side encoder. For this reason, it is possible to diagnose the speed reducer by measuring the intensity, e.g., the amplitude, of the resonance which occurs in (the speed reducer of) the joint of the robot arm, and comparing the relevant resonance amplitude with a reference value previously determined as an index (rough indication) value according to the angle transmission error.

Hereinafter, the measurement and the diagnosis which are performed to the joint of the robot apparatus based on the above principles will concretely be described with reference to the embodiment described withFIGS. 1 to 10B.

Embodiment

FIGS. 1 to 3are the diagrams for illustrating an example of the constitution of a robot apparatus500to which the present invention can be carried out. More specifically,FIG. 1is the diagram for schematically illustrating the entire constitution of the robot apparatus500,FIG. 2is the diagram for illustrating the section diagram of the constitution in the vicinity of one joint of the robot apparatus500ofFIG. 1, andFIG. 3is the diagram for illustrating the constitution of a controlling device200of the robot apparatus500ofFIG. 1.

As illustrated inFIG. 1, the robot apparatus500comprises a robot100which assembles a workpiece W, the controlling device200which controls the robot100, and a teaching pendant300which is connected to the controlling device200. Besides, the controlling device200comprises a displaying unit (not illustrated) such as a monitor or the like.

The robot100comprises a six-shaft multi-joint robot arm101, a hand (end effector)102which is connected to the tip of the robot arm101, and a force sensor (not illustrated) which can detect force or the like acting on the hand102.

The robot arm101comprises a base unit (base)103which is fixed to a working table, a plurality of links121to126which are used to transmit displacement and force, and a plurality of joints111to116which are used to connect together the respective links121to126revolvably or rotatably. In the present embodiment, the constitution of each of the plurality of joints111to116is basically identical to others. For this reason, in the following, the constitution of the joint112between the link121and the link122will be described as a representative of the constitution which is common to the joints111to116, whereby the concrete descriptions for the joints111and113to116will be omitted. Incidentally, on the condition that the joint of which the constitution is the same as that of the joint112is provided for at least one of the plurality of joints111to116of the robot arm101, the present embodiment can be carried out.

A rotation driving apparatus comprises a rotation driving source, a transmission configured to change a rotation speed of an input-side rotation shaft driven by the rotation driving source and drive an output-side rotation shaft, an output-side sensor provided to obtain a rotation angle of the output-side rotation shaft, and a controlling device configured to control the rotation driving source.

As illustrated inFIG. 2, the joint112(rotation driving apparatus) comprises a servo motor (motor)1which acts as the rotation driving source, and a speed reducer11(transmission) which reduces (changes) the rotation speed of the input-side rotation shaft driven by the servo motor1. The rotation angle (output-side rotation angle) of the output side of the speed reducer11of the joint112is detected by an output-side encoder16(rotary encoder). Each of the output-side encoder16and a later-described input-side encoder10has the constitution same as that of a general rotary encoder, and is constituted by an optical or magnetic rotary encoder device.

For example, the servo motor1can be constituted by an electromagnetic motor such as a brushless DC (direct current) motor, an AC (alternating current) servo motor or the like. The servo motor1comprises a rotation unit4which is constituted by a rotation shaft2and a rotor magnet3, a motor housing5, bearings6and7which rotatably support the rotation shaft2, and a stator coil8which rotates the rotation unit4. The bearings6and7are provided in the motor housing5, and the stator coil8is attached to the motor housing5. The servo motor1is surrounded by a motor cover9. Incidentally, in the servo motor1, it may be possible to provide a brake unit which is used to hold the orientation of the robot arm101at the time when the power supply thereof is OFF, according to necessity.

The speed reducer11comprises a wave generator which serves as an input unit, a circular spline13which serves as an output unit, and a flex spline14which is disposed between the wave generator12and the circular spline13. The wave generator12is connected to the other end side of the rotation shaft2of the servo motor1. The circular spline13is connected to the link122, and the flex spline14is connected to the link121. That is, the connection portion of the rotation shaft2of the servo motor1and the wave generator12is equivalent to the input side of the speed reducer11, and the connection portion of the flex spline14and the link121is equivalent to the output side of the speed reducer11. The rotation speed of the rotation shaft2of the servo motor1is reduced to 1/N via the speed reducer11(that is, the speed is reduced at a speed reduction ratio N), whereby the link121and the link122are relatively rotated. The rotation angle of the output side of the speed reducer11at this time is equivalent to the actual output angle, i.e., the angle of the joint112.

The output-side encoder (output-side angle sensor)16is provided on the output side of the speed reducer11, and detects the relative angle between the link121and the link122. More specifically, the output-side encoder16generates an output-side pulse signal in accordance with driving of the joint112(that is, the relative movement of the link121and the link122), and outputs the generated output-side pulse signal to the controlling device200. A cross roller bearing15is provided between the link121and the link122, whereby the link121and the link122are rotatably connected to each other via the cross roller bearing15. Incidentally, in the specification of this application, the output-side angle sensor might be simply called an output-side sensor.

The input-side encoder (input-side angle sensor)10can be disposed on the input side of the rotation shaft of the servo motor1, i.e., the speed reducer11. Incidentally, in the specification of this application, the input-side angle sensor might be simply called an input-side sensor.

The hand102comprises a plurality of fingers which can grasp the workpiece W, and a not-illustrated actuator which drives each of the plurality of fingers. That is, the hand can grasp or hold the workpiece by driving the plurality of fingers. The force sensor detects the force and the moment acting on the hand102when the hand102grasps the workpiece W by the plurality of fingers.

As illustrated inFIG. 3, the controlling device200comprises a CPU (central processing unit)201, a ROM (read only memory)202, a RAM (random access memory)203, an HDD (hard disk drive) (storing unit)204, a recording disk drive205, and various interfaces211to215.

The ROM202, the RAM203, the HDD204, the recording disk drive205and the various interfaces211to215are connected to the CPU201via a bus216. The ROM202has stored therein basic programs such as a BIOS (basic input/output system) and the like. The RAM203constitutes a storing area which temporarily stores therein results of arithmetic operations and calculations by the CPU201.

The HDD204serves as a storing unit which stores therein various data and the like being the results of the arithmetic operations and calculations by the CPU201. Also, the HDD records therein a control program330(including, e.g., later-described diagnosis program) to be used for causing the CPU201to perform the various arithmetic operations and calculations. The CPU201performs the various arithmetic operations and calculations based on the control program recorded (stored) in the HDD204. The recording disk drive205can read various data, various programs and the like recorded in a storing disk331.

In particular, the control program330which corresponds to a later-described control procedure to be executed by the computer (CPU201) is stored in, e.g., the HDD204(or ROM202) illustrated inFIG. 3. The storing unit such as the ROM202or the HDD204constitutes a computer-readable recording medium. Besides, (a part of) the computer-readable recording medium such as the ROM202or the HDD204may be constituted by a detachable flash memory device, a magnetic/optical disk or the like. Besides, the program which corresponds to the later-described control procedure to be executed by the computer (CPU201) may be downloaded via a network or the like, and introduced and stored in, e.g., the HDD204or the like. Alternatively, the software which has been stored in the HDD or the like may be updated by the newly downloaded program.

The teaching pendant300which is operated by a user is connected to the interface211. The teaching pendant300comprises a user interface which consists of a displaying device such as an LCD (liquid crystal display) panel or the like, a keyboard and the like. The user can perform a teaching operation for the robot100by using the relevant user interface. Thus, for example, it is possible to designate the position orientation (teaching point) of the reference point set at the hand tip or the like of the robot arm101, and designate the joint angle of each of the joints111to116. The teaching pendant300outputs a target joint angle of each of the joints111to116input like this to the CPU201via the interface211and the bus216.

The output-side encoder16of each of the joints111to116of the robot arm101is connected to the interface212. As described above, the output-side encoder outputs the pulse signal corresponding to the joint angle to the CPU201via the interface212and the bus216. Further, a monitor311and an external storing device312(rewritable non-volatile memory, external HDD, etc.) can be connected respectively to the interfaces213and214. The monitor311is, e.g., a displaying device such as an LCD panel or the like. The monitor can be used to perform monitor display of the control state of the robot100, and also used to display information related to a later-described diagnosing process, a warning message and the like.

A servo controlling device313is connected to the interface215. The CPU201outputs data of a driving instruction which indicates a control amount of the rotation angle of the rotation shaft2of the servo motor1to the servo controlling device313at a predetermined interval via the bus216and the interface215.

The servo controlling device313calculates an output amount of the current to be supplied to the servo motor1of each of the joints111to116of the robot arm101, based on the driving instruction input from the CPU201. The servo controlling device313supplies the current corresponding to an obtained current value to the servo motor1, thereby controlling the joint angles of the joints111to116of the robot arm101. That is, the CPU201can control the driving of the joints111to116by the servo motor1such that each of the angles of the joints111to116becomes the target joint angle via the servo controlling device313.

Here, the function to be performed by the controlling device200when executing a diagnosis program according to the present embodiment (e.g.,FIG. 5later described) will be described with reference toFIG. 4. Each function block illustrated inFIG. 4is implemented by the hardware of a computer (CPU201) and the software thereof. In particular, the software portion thereof is stored in a computer-readable recording medium such as the ROM202, the HDD204or the like.

The function constitution illustrated inFIG. 4includes an actual output angle calculating unit402, a resonance amplitude calculating unit404which calculates the angle transmission error caused by the resonance from the rotation angle, and a joint state deciding unit406. Moreover, the function constitution illustrated inFIG. 4includes a reference value storing unit405which stores therein the amplitude to be used for diagnosing the speed reducer11of the joint, an angle information storing unit403which stores and accumulates therein the output-side rotation angle detected by the output-side encoder16, and an inspection operation storing unit407which stores therein operations for inspection.

The inspection operation information s407is used to define the inspection operation at the time of diagnosing the joint. Since the characteristics indicated by the expressions (1) and (2) are different for each of the joints (111to116), the content of the inspection operation information s407is different for each of the joints (111to116) to be diagnosed. In particular, the inspection operation information s407corresponds to the character frequency of joint in the specific orientation of the target joint in a resonance amplitude obtaining step, and is used to define the inspection operation to drive the joint within the speed range including the rotation speed at which the highest resonance of the joint occurs.

Besides, as later described in a control example (FIG. 5), it is possible to constitute the inspection operation information s407so as to be able to obtain the resonance amplitudes by stepwise changing the rotation speed of the joint within the above speed range. Namely, the maximum resonance amplitude is obtained from the resonance amplitudes respectively obtained from the plurality of rotation speeds. For example, it is possible to obtain, as the resonance amplitude, the maximum value of the oscillation of the frequency component centering on the resonance frequency corresponding to the character frequency of joint in the specific orientation of the joint. Then, it is possible to set the obtained maximum value as the resonance frequency, compare the relevant resonance frequency with a reference value, and, based on the comparison result, perform diagnosis of the joint.

The angle information storing unit403accumulates the the actual output angle information (s402) output from the actual output angle calculating unit402. The reference value storing unit405stores a decision reference value s405which is necessary for decision, and outputs the stored decision reference value to the joint state deciding unit406. The resonance amplitude calculating unit404reads out angle information s403accumulated in the angle information storing unit403, calculates a decision value A (s404) which is necessary for inspection, and outputs the calculated decision value A to the joint state deciding unit406. The joint state deciding unit406compares the decision reference value s405output from the reference value storing unit405with the decision value A (s404) calculated by the resonance amplitude calculating unit404, and decides the angle state of the robot based on the comparison result.

Subsequently, the diagnosing process for the joints (111to116) to be performed by means of the above-described constitution will be described with reference toFIG. 5. Namely,FIG. 5indicates the flow of the diagnosing process (diagnosis mode) for the joints (111to116) to be performed under the control of the controlling device200, particularly the CPU201, in the above-described constitution according to the present embodiment.

In the present embodiment, as described above, the state of the target joint is diagnosed by using the resonance phenomenon which occurs at the frequency centering on the resonance frequency corresponding to the character frequency of joint in the specific orientation of the relevant joint.

Here, it is possible to perform the diagnosing process (diagnosis mode) described with reference toFIG. 5at a time of periodic inspection of the robot, and after events such as unintended interference, collision and the like occurred. As an opportunity to perform the diagnosing process (diagnosis mode) ofFIG. 5, for example, an operation that an operator selects the diagnosis mode by using the user interface such as the teaching pendant300or the like is conceivable.

The diagnosing process (diagnosis mode) ofFIG. 5is performed for each of the shafts of the joints (111to116). When the diagnosing process (diagnosis mode) is selected by the operator (user), the shaft to be inspected is determined in S501ofFIG. 5. Although the diagnosing process (diagnosis mode) ofFIG. 5is configured to perform from a specific shaft (joint) to all shafts (all joints), it may be controlled to perform the diagnosing process only to a single shaft, or perform the diagnosing process only to a single or a plurality of shafts designated by the operator (user). Usually, it is desirable to perform the inspection (diagnosing process) for all the shafts (all the joints). It may be possible to inspect the joints in order closer to the base unit103, or in arbitrary order designated by the user.

Next, in S502, the decision reference value s405and the inspection operation information s407for the inspection-target shaft are read respectively from the reference value storing unit405and the inspection operation storing unit407. The reference value storing unit405and the inspection operation storing unit407can be previously disposed in the form of data files or the like in, e.g., the HDD204or the like. The decision reference value s405and the inspection operation information s407are different for each of the joints (111to116) to be inspected, because, for example, the characteristics indicated by the expressions (1) and (2) are different for each of the joints (111to116). Therefore, the decision reference value s405and the inspection operation information s407are prepared respectively in the reference value storing unit405and the inspection operation storing unit407for each shaft (inertia), and then the information corresponding to the joint to be inspected is individually read and supplied into the working area such as the RAM203or the like when the inspection is actually performed. Alternatively, the reference values and the inspection operations for all the shafts may be read and supplied in a lump into the working area such as the RAM203or the like when the diagnosis mode is selected.

In S503, the inspection operation for the relevant joint (shaft) is performed. That is, the servo controlling device303drives the shaft to be inspected, in accordance with the inspection operation information s407read in S502. At this time, the pulse signals (values) (s401) obtained from the output-side encoder16are counted by the actual output angle calculating unit402for a certain period, and the values (s402) obtained by converting the pulse values into the actual output angle information are stored and accumulated in the angle information storing unit403.

The process for the inspection operation in S503is indicated in detail in the right column ofFIG. 5as S5031to S5040. Hereinafter, the process in S5031to S5040which constitute the process of S503will be described in detail.

When the inspection operation is started in S5031, then in S5032, the servo controlling device303moves the robot arm101to the start orientation based on the inspection operation information s407read in S502.

Next, in S5033, the angle information storing unit403is enabled to store and accumulate the actual output angle information (s402), and the storing buffer is enabled to store the actual output angle information (s402) output from the actual output angle calculating unit402.

Subsequently, in S5034, the servo controlling device303drives the target joint in a specific operation pattern according to the inspection operation information s407read in S502. During such driving, the pulse values (s401) obtained from the output-side encoder are sequentially converted into the actual output angle information (s402) by the actual output angle calculating unit402(S5035), and then stored and accumulated in the angle information storing unit403(S5036).

When the inspection operation ends, then in S5037, the storing buffer of the angle information storing unit403is closed (disabled), and the actual output angle information (s402) is stored.

As described above, the inspection operation information s407corresponds to the character frequency of joint in the specific orientation of the target joint, and is driven by changing the rotation speed stepwise within the speed range including the rotation speed at which the strongest resonance of the joint occurs.

Thus, in S5038, it is decided whether or not the inspection has been performed for all the inspection speeds defined by the inspection operation information s407. When it is decided in S5038that the speed for which the inspection is not performed yet exists, the speed is changed to the relevant speed for which the inspection is not performed yet in S5039, and then the process is returned to S5032to repeatedly perform the above processes. On the other hand, when it is decided that the inspection ended for all the inspection speeds defined by the inspection operation information s407, the inspection of the relevant joint ends in S5040, and then the process is advanced to S504(left column ofFIG. 5). Incidentally, it is desirable to set the interval, for which the pulse value (s401) is read from the output-side encoder16, to the obtained period which coincides with the control period of the servo controlling device303, whereby it is possible to reduce the operation load in S504.

The processes in S505to S507correspond to the diagnosing step of diagnosing the state of the speed reducer11. Initially, in S505, the decision value A (s404) calculated in S504is compared with a reference value Alim(s405) read in S502. When the decision value A (s404) exceeds the reference value Alim(s405), it is decided that the the speed reducer11of the inspected shaft has been damaged. In accordance with the judged result, “no damage in speed reducer” is output in S506or “damage in speed reducer” (warning message) is output in S507. Such diagnosis messages are output by using the display of, e.g., the monitor311or the teaching pendant300. In addition, it may be possible to output the message by means of audio output or the like with use of an audio outputting unit (not illustrated).

When the process in S505ends, it is confirmed in S506whether or not the joint (shaft) which is not inspected yet remains. In S508, when the joint (shaft) which is not inspected yet remains, the process is returned to S501to repeatedly perform the above processes. Thus, the inspection is performed for all the inspection-target joints (shafts).

As just described, it is possible to perform the diagnosing process (diagnosis mode) as inFIG. 5for each joint. In the diagnosing process (diagnosis mode) as inFIG. 5, the resonance amplitude obtaining step is performed for each specific inspection-target joint. At that time, the inspection operation information s407to be used corresponds to the character frequency of joint in the specific orientation of the target joint, and is used to define the inspection operation of driving the joint within the speed range including the rotation speed at which the strongest resonance of the joint occurs. The character frequency of joint can previously be calculated by the expression (1). Moreover, the speed range which includes the rotation speed at which the strongest resonance of the joint occurs can previously be determined by the expression (2).

Therefore, by performing the diagnosing process (diagnosis mode) as indicated with reference toFIG. 5for each joint, it is possible to obtain the decision value A of the resonance frequency of the relevant joint. For example, the decision value A of the resonance amplitude can be calculated as the maximum value of the oscillation of the frequency component centering on the resonance frequency. Thus, by comparing the decision value A with the reference value Alim(s405) set for each joint as well as the inspection operation information s407, it is possible to diagnose the relevant joint, for example, it is possible to diagnose whether or not the joint has been damaged (or whether or not the joint has exceeded its lifetime). Then, it is possible to notify the user of the diagnosis result by outputting a display message (or voice message). For example, it is possible to output such a diagnosis result message by means of display output with use of the monitor311, the display of the teaching pendant300or the like, or voice output with use of an audio output unit (not illustrated).

The outline of the diagnosing process (diagnosis mode) according to the present embodiment has been described with reference toFIG. 5. Incidentally, the detail of robot control to be performed in the above diagnosing process (diagnosis mode) will be further argued in the following.

As apparent from the expressions (1) and (2), the aspect of resonance of the robot joint portion which is occurred in the inspection is influenced by two factors, i.e., the orientation of the robot arm and the operation (driving) speed of the joint. That is, when the orientation of the robot arm101in the inspection differs, the magnitude of the load inertia in the expression (1) changes. Besides, when it intends to perform the diagnosis via the resonance phenomenon, it is of course necessary to select, as the driving speed of the joint, a speed (range) which is defined by the expression (2).

Here, a desirable orientation of the robot arm101in the inspection operation which is performed in S503ofFIG. 5by using the resonance of the joint will be considered with reference toFIG. 6.FIG. 6is the diagram for describing an example of the predetermined orientation of the robot arm at the time when the inspection operation is performed in the present embodiment.

The inspection operation according to the present embodiment, that is, the inspection operation which is defined for each joint based on the inspection operation information s407, is characterized by performing the predetermined operation of intentionally causing the resonance in the predetermined orientation. As such the inspection operation, it is possible to set one operation or a plurality of different operations to a one joint. Here, when the plurality of different operations are set, for example, a same inspection (initial) orientation and a same operation mode are used. Also, an inspection operation of making only the driving speed of the relevant joint different (making the plurality of different driving speeds) and then measuring these driving speeds is conceivable.

Here, such the predetermined inspection (initial) orientation can arbitrarily be set. However, ideally, it is desirable to set the orientation (maximum moment orientation) by which the maximum inertia moment acts on the inspection-target joint. That is, if the orientation which corresponds to the large inertia moment is used, the resonance frequency becomes small, whereby it becomes possible to easily obtain the resonance phenomenon of the joint.

FIG. 6is the diagram for illustrating an example of the maximum moment orientation of the joint112which drives the link122. In the example ofFIG. 6, the center of gravity of the frame at the portion which precedes the joint112is farthest from the joint112in the orientation (alternate long and two short dash line) that the robot100maximally extends the arm thereof in the horizontal direction. For this reason, in the orientation (alternate long and two short dash line) that the robot maximally extends the arm thereof in the horizontal direction, the inertia moment (load inertia J in the expression (1)) which acts on the joint112becomes maximum. Then, for example, the orientation (alternate long and two short dash line) that the robot maximally extends the arm in the horizontal direction is set as the inspection initial orientation, and the joint112is driven at different speeds within the speed range centering on the resonance frequency corresponding to the character frequency, until the orientation becomes the orientation that the portion which precedes the link122stands upright as indicated by the arrow. By the inspection operation like this, the resonance frequency f is lowered from the expression (1), whereby it becomes possible to easily seize the resonance phenomenon via the output-side encoder16. Likewise, it is possible to previously obtain the maximum moment orientation independently for each of the remaining joints, and determine the inspection (initial) orientation and the driving mode (inspection operation information s407) of the relevant joint.

Besides, it is desirable for the predetermined inspection operation to satisfy the following condition. For example, an interval during which the target joint operates at a constant inspection speed exists, and the relevant interval corresponds to one or more rotations of the input side of the speed reducer. Here, it is assumed that the inspection speed is equivalent to a settable (controllable) joint driving speed which is closest to the number R of motor rotations satisfying the conditions of the expressions (1) and (2) in a predetermined orientation. Besides, it is desirable to perform the measurement including the plurality of different speeds, within the speed range W centering on the motor rotation speed (R).

This is because there is a case where the actually occurred resonance frequency is slightly deviated from the resonance frequency previously calculated using the expression (1), due to a slight difference (control error) of the orientations, a secular change, and other various factors. Although the speed step at this time can arbitrarily be set, it is desirable to set the width thereof to the minimum width capable of being set by the controlling device200. As just described, by performing the measurement for the joint by using the different inspection speeds within the speed range W including the driving speed corresponding to the resonance frequency corresponding to the previously calculated character frequency, it is possible to surely or certainly diagnose the state of the relevant joint via the resonance phenomenon even if the control error, the secular change or the like occurs.

FIGS. 7A and 7Bare graphs for describing an example of how to obtain a plurality of inspection speeds. In the example ofFIG. 7A, the inspection speed (joint driving speed) is constituted by speed points (black dots) which are obtained by equally dividing the speed range W including the driving speed (motor rotation speed (R)) corresponding to the resonance frequency corresponding to the previously calculated character frequency by about 10 (or another division number). Besides, a waveform701corresponds to the resonance amplitude (above decision value A) obtained by each inspection speed, and a waveform702corresponds to the reference value Alim(above s405) to be compared with the resonance amplitude (decision value A).

As illustrated inFIG. 7B, in order to further improve detection accuracy of the resonance amplitude, it may be possible to change the driving speed setting with fine steps in the vicinity of the driving speed (motor rotation speed (R)) corresponding to the resonance frequency corresponding to the previously calculated character frequency. More specifically, inFIG. 7B, in the certain speed range W which includes the driving speed (motor rotation speed (R)) corresponding to the resonance frequency, the step width for changing the inspection speed (joint driving speed) is made smaller in the vicinity of the driving speed (motor rotation speed (R)) corresponding to the relevant resonance frequency, as compared with the surroundings. Moreover, it is useful for speed-up of the inspection to make the speed step rough at the speed far from the motor rotation speed (rotation number R) like this. Incidentally, inFIG. 7B, a waveform703corresponds to the resonance amplitude (above decision value A) obtained at each inspection speed, and a waveform704corresponds to the reference value Alim(above s405) to be compared with the resonance amplitude (decision value A).

The inspection orientation exemplarily shown inFIG. 6and the inspection sequences (inspection operations) described with reference toFIGS. 7A and 7Bcan be described by the inspection operation information s407, and are stored in the inspection operation storing unit407.

Subsequently, an example of the process of calculating the angle transmission error by the resonance from the actual output angle information (s402) accumulated in the angle information storing unit403in S504ofFIG. 5will be described in detail with reference toFIG. 8. Here,FIG. 8shows the concrete process example in S504and the following steps in the left column ofFIG. 5, and S504is constituted by S5041to S5046.

Initially, in S5041, the reference value Alim(s405) is read from the reference value storing unit405, and then the inspection data are processed one by one in the loop of S5042to S5046.

In S5042, the data are read one by one from the actual output angle information (s402) accumulated in the angle information storing unit403. Subsequently, in S5043and S5044, an unnecessary component is eliminated from the read actual output angle information (s402).

That is, since the oscillation component by the resonance is superposed on the movement of the inspection operation itself in the actual output angle information (s402), it is necessary to extract only the resonance component therefrom.

Initially, in S5043, the inspection operation itself is eliminated from the output-side rotation angle of the joint which has been recorded as the actual output angle information (s402). To do so, for example, it is possible to use a method of decreasing a position instruction value of the inspection operation from the output-side rotation angle. Moreover, when the input-side encoder10(FIG. 2) is provided in the joint, the output value of the input-side encoder10and the angle information obtained from the output-side encoder16are synchronously recorded as the actual output angle information (s402). Here, it may be possible to perform a process of subtracting the output value of the input-side encoder10from the synchronously recorded angle information of the output-side encoder16. Incidentally, in this subtracting process, it is needless to say that of course the value converted with the speed reduction ratio N is subtracted.

FIGS. 10A and 10Bare diagrams for describing the process of eliminating the inspection operation itself from the output-side rotation angle of the joint. InFIG. 10A, the solid line (1001) indicates the output-side rotation angle (in unit of pulse number) of the joint which is recorded as the actual output angle information (s402). The output-side rotation angle (1001) of the joint corresponds to the actual trajectory (actual output angle information s402) accumulated in the inspection operation performed based on the instruction trajectory of the broken line (1002) instructed by the inspection operation information s407. The information related to the inspection operation itself is eliminated by subtracting the instruction trajectory (1002) from the actual trajectory (1001: output-side rotation angle), thereby obtaining the deviation (1003) illustrated inFIG. 10B. Incidentally, in order to eliminate the inspection operation itself from the output-side rotation angle of the joint, it may be possible to use a method of converting the rotation angle obtained from the output-side encoder16into acceleration information by second order differential.

Moreover, in S5044, the frequency component which is equal to or higher than the resonance frequency f [Hz] assumed in the inspection operation is eliminated. Such a process is to eliminate a noise other than the resonance. More specifically, there is a method of eliminating the noise by using a mathematical filter (Butterworth filter, or the like). In this case, it is necessary to select a cutoff frequency and a filter degree to the extent that the component of the resonance frequency f [Hz] is not attenuated or amplified according to the magnitude of the noise. For example, if 2f [Hz] or so is set as the cutoff frequency by using the Butterworth filter having a maximum flat characteristic, it is possible to minimize an influence to the vicinity of the resonance frequency f [Hz]. Moreover, it may be possible to perform a movement averaging process to the output-side rotation angle which has been recorded as the actual output angle information (s402). Also in this case, it is necessary to select an averaging interval to the extent that the component of the frequency f [Hz] is not attenuated or amplified.

In S5045, the maximum value of a peak-to-peak (p-p) corresponding to one period is obtained from the waveform of the calculation results in S5043and S5044, and the obtained value is calculated as the decision value A of the resonance amplitude.

FIGS. 9A and 9Bare waveform diagrams for describing an example of the calculation of the decision value A of the resonance amplitude in S5045. In case of the speed reducer11to be used for the joint of this type, in the obtained waveform of the resonance amplitude after S5044, the peak values in a rising interval901of the waveform and a falling interval902of the waveform appear asymmetrically as shown inFIG. 9B. For this reason, while paying attention to one period of the waveform of the resonance amplitude, larger one of p-p in the waveform rising interval901and p-p in the waveform falling interval902is selected as p-p of the relevant one period (maximum value calculation) as illustrated inFIG. 9A, and the selected value is extracted as the decision value A.

Then, in the above loop of S5042to S5046, the amplitudes of the rising p-p and the falling p-p in all the periods are obtained, and the maximum value of the obtained amplitudes is calculated as the decision value A of the resonance amplitude.

The processes in S505and the following steps ofFIG. 8are the same as those described with reference toFIG. 5. Thus, the decision value A of the resonance amplitude calculated as above and the reference value Alim(s405) are compared, and a notification or a warning message is output according to the comparison result.

With respect to the reference value Alim(s405) to be used in the decision (S505), since the value detected by the output-side encoder16is the angle information, it is conceivable to use, for example, an allowed angle error as the relevant reference value (allowable value). More specifically, it is conceivable to use the specification value of the angle transmission error of the speed reducer11, as the reference value. There is a case where the value which has been published as the catalogue specification or the like of the speed reducer11can be used as the specification value of the angle transmission error like this. In this case, such a catalogue-published value or the like is used. Alternatively, it is possible to determine the reference value Alim(s405) to be actually used for the relevant joint, by adding and/or subtracting an appropriate margin.

Incidentally, since there is a case where a different type of the speed reducer11is used for each joint, it is necessary to prepare the reference value Alim(s405) for each joint. Of course, in above S5041ofFIG. 8, the reference value Alim(s405) which is prepared for the inspection-target joint is read from the reference value storing unit405. Moreover, in addition to the specification value of the above angle transmission error, it may be possible to calculate a position deviation required for the target joint from the required position accuracy of the hand tip of the robot arm101and then use the calculated position deviation as the reference value Alim(s405).

As just described, according to the present embodiment, it is possible to accurately and swiftly detect the state of the transmission which is disposed in the joint of the robot, in accordance with the resonance amplitude of the joint which was measured via the output-side angle sensor of measuring the rotation angle of the output-side rotation shaft of the transmission (speed reducer). For this reason, it is possible to quickly and swiftly decide whether or not to exchange the part of the robot. As a result, there is a significant effect that it is possible to maintain the joint (transmission) of the robot in an appropriate state.

In the above description, the state of the transmission (speed reducer) is diagnosed in each present (this time) diagnosing process (diagnosis mode) by comparing the resonance amplitude measured in the relevant present diagnosing process (diagnosis mode) with the reference value. However, it is conceivable to diagnose the state of the transmission (speed reducer) by using the aspect of change (e.g., change rate) between the resonance amplitude obtained in the past diagnosing process and the resonance amplitude obtained in the present diagnosing process. To do so, for example, the resonance amplitude which is measured in the diagnosing process (diagnosis mode) is stored and accumulated in the database disposed in the HDD204or the like. Then, the change rate of the resonance amplitude is calculated from the resonance amplitude of the joint which is obtained in the present diagnosing process (diagnosis mode) and the resonance amplitude which was obtained in the past diagnosing process, and the state of the transmission is diagnosed based on the calculated change rate. For example, a threshold of the change rate is determined in advance. Then, when a change rate (e.g., abrupt change rate) of the resonance amplitude which exceeds the relevant threshold is detected, it is possible to diagnose that the transmission has been damaged or that it is necessary to exchange the transmission because of the lifetime thereof.

The diagnosing method for the robot as described in the above embodiment can be applied to various kinds of robot apparatuses (robots) to be used for manufacturing, e.g., various kinds of articles (industrial products). Here, the robot apparatus (robot) such as a robot arm can arbitrarily be constituted. Namely, the diagnosing method according to the present invention can be carried out for the robot apparatus (robot) if this robot has the joint which connects two or more links. By diagnosing the joint of the robot apparatus with the diagnosing method according to the present invention, it is possible to certainly diagnose and confirm the state (presence/absence of trouble, failure, or damage) of the transmission of the relevant joint, whereby it is possible to maintain the joint (transmission) in the appropriate state. Thus, by using the relevant robot apparatus, it is possible to accurately manufacture target articles in high yield.

Besides, it is conceivable that the diagnosing method for the robot described in the above embodiment is more generally a diagnosing method for a rotation driving apparatus which is constituted by a rotation driving source (motor) and a transmission. In that case, the rotation driving apparatus diagnosing method of the present invention exemplarily described in the above embodiment can be carried out in various kinds of devices and apparatuses as the method of diagnosing the rotation driving apparatuses constituted by the various rotation driving sources (motors) and the transmission.

The present invention can be achieved also in a process that a program for achieving one or more functions of the above embodiment is supplied to a system or an apparatus via a network or a recording medium and then one or more processors in the computer of the system or the apparatus reads out and executes the supplied program. Moreover, the present invention can be achieved also by a circuit (e.g., ASIC) which achieves one or more functions of the above embodiment.

Other Embodiments

This application claims the benefit of Japanese Patent Application No. 2015-186265, filed Sep. 24, 2015, which is hereby incorporated by reference herein in its entirety.