Robot maintenance support device and robot maintenance support method
By acquiring time-series data of robot servo motor current values and using evaluation value calculation and judgment models, early warning of robot faults can be achieved, solving the problem of difficulty in accurately detecting fault precursors in existing technologies, and enabling timely maintenance and resource optimization.
Patent Information
- Application Number
- CN202610009698.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2021-03-29
- Filing Date
- 2022-03-22
- Publication Date
- 2026-03-27
AI Technical Summary
Existing technologies are insufficient to accurately detect early signs of industrial robot malfunctions, leading to untimely or excessive maintenance, resulting in economic losses or waste of resources.
By employing a robot fault early warning detection device, and acquiring time series data of servo motor current values of robot joints, the device utilizes evaluation value calculation, representative evaluation value generation, sequence processing, and a judgment model to achieve early warning of robot faults.
It can detect robot malfunctions in advance, enabling timely maintenance, reducing economic losses, and optimizing the allocation of maintenance resources.
Smart Images

Figure CN121733628A_ABST
Abstract
Description
[0001] This application is a divisional application of the parent application, which is patent application number 202280026060.3 (filed on March 22, 2022, entitled "Robot Fault Prediction Detection Device and Robot Fault Prediction Detection Method"). Technical Field
[0002] This application relates to the state monitoring of a robot. Background Technology
[0003] If industrial robots are repeatedly operated in factories or similar environments, deterioration of each part of the robot (e.g., mechanical parts) is inevitable. If this deterioration progresses, it will eventually lead to robot malfunction. Prolonged shutdowns of production lines due to robot failure can result in significant losses, making it crucial to perform maintenance (upkeep) before malfunctions occur. However, from the perspective of maintenance costs, frequent maintenance is also difficult.
[0004] To enable maintenance at appropriate times, a device for predicting the remaining lifespan of components such as reducers in robots has been proposed. Patent Document 1 discloses such a robot maintenance support device.
[0005] The robot maintenance support device of Patent Document 1 is configured to: diagnose the future trend of the current command value based on the data of the current command value of the servo motor constituting the robot drive system, and determine the period before the current command value reaches a preset value based on the diagnosed trend.
[0006] [Existing Technical Documents]
[0007] [Patent Literature]
[0008] Patent Document 1: Japanese Patent Application Publication No. 2016-117148 Summary of the Invention
[0009] The technical problem that the invention aims to solve
[0010] In the structure of Patent Document 1, diagnostic items for current command values include an I2 monitor, operating status, and peak current. However, simply using these items may not always be effective in detecting early signs of robot malfunctions. Therefore, a novel structure is needed that can accurately detect when a robot is approaching a malfunction.
[0011] This application was developed in view of the above-mentioned situation, and its purpose is to be able to effectively detect early signs of robot malfunctions.
[0012] Technical means used to solve the problem
[0013] The problem that this application seeks to solve has been described above. The means used to solve this problem and their effectiveness are described below.
[0014] According to the first aspect of this application, a robot fault precursor detection device with the following structure is provided. That is, the robot fault precursor detection device includes: a behavior time-series data acquisition unit, an evaluation value calculation unit, a representative evaluation value generation unit, a sequence processing unit, and a determination unit. The behavior time-series data acquisition unit performs the following processing during each data collection unit: this processing is used to acquire behavior time-series data related to the motors of the robot's joints based on robot movements. The evaluation value calculation unit calculates an evaluation value based on the behavior time-series data acquired by the behavior time-series data acquisition unit. The representative evaluation value generation unit generates a representative evaluation value representing the evaluation value based on the evaluation value obtained by the evaluation value calculation unit during each data collection unit. The sequence processing unit generates a sequence of the representative evaluation values. At the initial stage of robot operation, the determination unit creates a determination model based on the sequence generated by the sequence processing unit, i.e., an initial sequence. After the initial stage of operation, the determination unit inputs determination data into the created determination model and obtains the specificity of the determination data, the determination data including data based on robot movements after the initial stage of operation.
[0015] According to the second aspect of this application, a method for detecting robot malfunction precursors is provided. Specifically, this method includes: a behavior time-series data acquisition step, an evaluation value calculation step, a representative evaluation value generation step, a sequence processing step, a model making step, and a judgment step. In the behavior time-series data acquisition step, during each data collection unit, the following processing is performed to acquire behavior time-series data related to the motors of the robot's joints based on robot movements. In the evaluation value calculation step, an evaluation value is calculated on the behavior time-series data acquired through the behavior time-series data acquisition step. In the representative evaluation value generation step, during each data collection unit, a representative evaluation value representing the evaluation value is generated based on the evaluation value obtained in the evaluation value calculation step. In the sequence processing step, a sequence of the representative evaluation values is generated. In the model making step, at the initial stage of the robot's operation, a judgment model is made based on the sequence generated in the sequence processing step, i.e., the initial sequence. In the determination process, after the initial stage of operation, the determination data is input into the completed determination model to obtain the specificity of the determination data. The determination data includes data based on robot actions that occur after the initial stage of operation.
[0016] Therefore, it is possible to easily detect early signs of robot malfunction. Consequently, robot maintenance can be performed before a malfunction occurs. The benefit of this invention, according to this application, is the ability to effectively detect early signs of robot malfunction. Attached Figure Description
[0017] Figure 1 This is a perspective view showing the structure of the robot of this application;
[0018] Figure 2 This is a block diagram illustrating the electrical structure of the robot fault precursor detection device according to the first embodiment;
[0019] Figure 3 It is a graph illustrating the timing of trigger signals related to the acquisition of time series data;
[0020] Figure 4 This is a schematic diagram showing a Hidden Markov Model;
[0021] Figure 5 This is a schematic diagram of an Ergodic Hidden Markov Model with two displayed states;
[0022] Figure 6 This is a diagram illustrating the initial sequence and the sequence used for judgment;
[0023] Figure 7 It is a graph showing the root mean square of the current value;
[0024] Figure 8 It is a graph showing the log-likelihood of the sequence in relation to the root mean square of the current values;
[0025] Figure 9 This is a block diagram illustrating the electrical structure of the robot fault precursor detection device according to the second embodiment;
[0026] Figure 10 This is a schematic diagram showing the DTW algorithm used in the third embodiment;
[0027] Figure 11 It is a graph showing the log-likelihood of data processed by DTW being input into a hidden Markov model for evaluation;
[0028] Figure 12 This is a block diagram illustrating the electrical structure of the robot fault precursor detection device according to the fourth embodiment;
[0029] Figure 13 This is a schematic diagram illustrating the initial sequence and determination data in the fourth embodiment;
[0030] Figure 14 This is a block diagram illustrating the electrical structure of the robot fault precursor detection device according to the fifth embodiment;
[0031] Figure 15 This is a block diagram illustrating the electrical structure of the robot fault precursor detection device according to the sixth embodiment;
[0032] Figure 16 This is an example of a trend management screen displayed in a display unit that predicts the failure period without using a decision-making model.
[0033] Figure 17 It is a graph showing the change of the prediction line when the reference number of days is changed in the example of predicting the failure period without using the decision model.
[0034] Figure 18 It is a graph showing the frequency band used to calculate the cumulative values in the frequency analysis section; and
[0035] Figure 19 This is an example of a trend management screen displayed in the display section of an example where the cumulative value of the frequency analysis section can be set. Detailed Implementation
[0036] The embodiments of this application will now be described with reference to the accompanying drawings. Figure 1 This is a perspective view showing the structure of robot 1 according to one embodiment of this application. Figure 2 This is a block diagram illustrating the electrical structure of robot 1 and robot fault prediction detection device 5.
[0037] The robot malfunction early warning detection device 5 of this application is used to monitor the state of an industrial robot capable of reproducing pre-set actions. The robot malfunction early warning detection device 5 is applied, for example, to... Figure 1 The robot 1 shown is used to perform operations such as coating, cleaning, welding, and handling on workpieces. Robot 1 is, for example, implemented using a vertical articulated robot.
[0038] Below, for reference Figure 1 as well as Figure 2 The structure of robot 1 will be briefly explained.
[0039] Robot 1 includes a base component 10, a multi-joint arm 11, and a wrist 12. The base component 10 is fixed to the ground (e.g., a factory floor). The multi-joint arm 11 has multiple joints. The wrist 12 is mounted on the front end of the multi-joint arm 11. An end effector 13 for performing operations on a workpiece is mounted on the wrist 12.
[0040] like Figure 2 As shown, robot 1 has an arm drive device 21.
[0041] These drive units consist of actuators and reducers, etc. The actuator is, for example, a servo motor. However, the structure of the drive unit is not limited to this structure. Each actuator is electrically connected to the controller 90. The actuator operates in response to command values input from the controller 90.
[0042] The driving force from each servo motor constituting the arm drive unit 21 is transmitted via a reducer to each joint of the multi-joint arm 11, the base component 10, and the wrist 12. An encoder (not shown) is mounted on each servo motor to detect its rotational position.
[0043] Robot 1 performs tasks by reproducing actions recorded by the teach pendant. Controller 90 controls the actuator in a manner that robot 1 reproduces a series of actions pre-taught by the teacher. Teaching robot 1 can be performed by the teacher operating the teach boxes (omitted in the figure). Through teaching robot 1, a program for moving robot 1 is generated.
[0044] The controller 90 is, for example, a known computer, which has a CPU, ROM, RAM, auxiliary storage devices, etc. The auxiliary storage devices are, for example, HDDs, SSDs, etc. Programs for moving the robot 1 are stored in the auxiliary storage devices.
[0045] like Figure 1 As shown, the robot fault prediction detection device 5 is connected to the controller 90. The robot fault prediction detection device 5 obtains the current value and other shifts of the current flowing through the actuator (servo motor) through the controller 90.
[0046] It can be assumed that if the servo motor and its connected reducer malfunction, the current value of the servo motor will fluctuate accordingly. Therefore, it can be said that this current value reflects the state of robot 1. The shift in the current value can be represented by repeatedly acquiring the current value at short time intervals and arranging multiple current values in a time series. Hereinafter, the data of current values arranged in a time series is sometimes referred to as current value time series data (behavioral time series data).
[0047] The robot fault precursor detection device 5 can determine whether the robot 1 has any abnormalities by monitoring the time series data of the acquired current values. In this embodiment, the robot fault precursor detection device 5 mainly targets the servo motors and reducers of each joint to determine whether there are any abnormalities. Here, "abnormality" refers to a situation that, although it has not reached the level of malfunction / inability to move, has produced a certain condition that serves as a precursor in the servo motor, reducer, or bearing.
[0048] like Figure 2As shown, the robot fault precursor detection device 5 includes a storage unit 50, a current value time series data acquisition unit (behavior time series data acquisition unit) 51, an evaluation value calculation unit 52, a representative evaluation value generation unit 53, a sequence processing unit 54, a judgment unit 55, an alarm generation unit 62, and a display unit 63.
[0049] The robot fault precursor detection device 5 is a known computer, which includes a CPU, ROM, RAM, and auxiliary storage devices. The auxiliary storage devices may be, for example, HDDs or SSDs. Programs for evaluating the state of the robot 1 are stored in the auxiliary storage devices. Through the coordinated operation of this hardware and software, the computer can function as a storage unit 50, a current value time-series data acquisition unit 51, an evaluation value calculation unit 52, a representative evaluation value generation unit 53, a sequence processing unit 54, a judgment unit 55, an alarm generation unit 62, and a display unit 63.
[0050] The current value time series data acquisition unit 51 acquires the current value time series data. The current value time series data acquisition unit 51 acquires current value time series data for all servo motors included in the arm drive device 21 of the robot 1. For each of the multiple servo motors (in other words, multiple reducers) arranged in various parts of the robot 1, current value time series data is acquired separately.
[0051] Here, the current value refers to the measured value obtained by measuring the current flowing through the servo motor using a sensor. The signal from the sensor is digitized via an A / D converter (not shown). The sensor is mounted on the servo driver (not shown) that controls the servo motor. However, the sensor can also be installed separately from the servo driver for monitoring. Alternatively, a current command value supplied to the servo motor by the servo driver can be used. The servo driver feeds back control of the servo motor with the current value close to the current command value. Therefore, for the purpose of detecting abnormalities in the servo motor or reducer, the difference between the current value and the current command value is almost negligible.
[0052] The torque of a servo motor is directly proportional to the current. Therefore, a torque value or torque command value can be used instead of a current value. Alternatively, the deviation between a target value related to the servo motor's rotational position and the actual rotational position obtained through the encoder (rotational position deviation) can be used. Typically, the servo driver multiplies this deviation by a gain and provides the current command value to the servo motor. Thus, the shift in rotational position deviation shows a similar trend to the shift in the current command value.
[0053] In this embodiment, time series data of current values are used for fault precursor detection. However, time series data of current command values, torque values, torque command values, or rotational position deviations can also be used instead of current values.
[0054] While the robot 1 is performing the taught action, the current value time series data acquisition unit 51 acquires the current value time series data for each servo motor.
[0055] For example, consider a scenario where robot 1 is taught a movement and then runs daily in a factory from 9:00 AM to 5:00 PM. The current value time-series data acquisition unit 51 acquires current value time-series data for each servo motor each time robot 1 performs the taught movement. Since robot 1 repeatedly performs the same movement, multiple current value time-series data can be acquired daily.
[0056] The period from the start of using the robot fault precursor detection device 5 can be divided into days 1 to N and days N+1 and onwards. Hereinafter, the period from day 1 to N may be referred to as the initial operation period, and days N+1 and onwards as the monitoring period. N can be appropriately specified, for example, assuming N=30. Regardless of whether it is the initial operation period or the monitoring period, the time series data of the current value is acquired daily.
[0057] The initial operation period can also begin simultaneously with setting up and using the robot, for example, a one-month break-in period can be considered, followed by the initial operation period. Monitoring can also begin after an appropriate interval (e.g., two months) following the initial operation period.
[0058] Each time robot 1 performs an action, it can acquire a current value time series data equal to the number of servo motors. The timing of when the current value time series data acquisition unit 51 starts acquiring the current value time series data and the timing of when it ends can be appropriately determined based on the signal output by the controller 90.
[0059] Figure 3 The curve shows an example of the current value flowing in the servo motor of a certain joint when robot 1 is performing a reproduced action. For example... Figure 3 As shown, before the program for reproducing the action is executed, the current value of the servo motor is zero. At this time, since the electromagnetic brakes (not shown) move in each joint, the posture of the multi-joint arm 11, etc., can be maintained.
[0060] Next, the program for reproducing the actions of robot 1 begins. Simultaneously, the brake is activated, and current begins flowing through the servo motor almost simultaneously. At this moment, the output shaft of the servo motor is controlled to stop. After a certain period of time required to stabilize the angle of the servo motor's output shaft, the servo motor begins to rotate. Thus, the action of robot 1 essentially begins.
[0061] After the brake is engaged, and shortly before the servo motor begins to rotate, the controller 90 outputs an acquisition start signal to the robot fault prediction detection device 5 (and, the current value time series data acquisition unit 51).
[0062] If all the actions taught to robot 1 are completed, the servo motor is controlled to stop rotating. After the servo motor stops rotating and before the program ends, the controller 90 outputs an acquisition end signal to the current value time sequence data acquisition unit 51.
[0063] The storage unit 50 is, for example, configured by the aforementioned auxiliary storage device. The storage unit 50 stores the robot fault prediction detection program, current value time series data acquired by the current value time series data acquisition unit 51, and the like. The robot fault prediction detection program enables the robot fault prediction detection method of this embodiment.
[0064] In this embodiment, the time-series data is data obtained by repeatedly detecting multiple current values at short, constant time intervals, arranged in chronological order. The time interval for detecting the current values (sampling interval) is, for example, a few milliseconds. The time-series data... Figure 3 The curve corresponds to the shift in current value from the timing of obtaining the start signal to the timing of obtaining the end signal.
[0065] In the storage unit 50, period information of the period in which the display data was acquired is stored in association with the time series data.
[0066] As described above, the current value time series data acquired by the current value time series data acquisition unit 51 can be divided into data collected during the initial operation of the robot 1 and data collected during the monitoring period. The current value time series data acquired during the initial operation period is used to create learning data, which is used to construct the decision model described later. The current value time series data collected during the monitoring period is used to create decision data, which is input into the decision model.
[0067] To remove noise and other contaminants, appropriate filtering can be applied to the time series data of current values. Since data filtering is a well-known technique, detailed explanations are omitted.
[0068] The evaluation value calculation unit 52 inputs the current value time series data obtained by the current value time series data acquisition unit 51 into a predetermined function to calculate the evaluation value. This function extracts certain characteristics of the current value time series data. The original current value time series data consists of multiple scalars (current values), while the evaluation value is a single scalar. Therefore, the processing performed by the evaluation value calculation unit 52 corresponds to information compression.
[0069] The function used by the evaluation value calculation unit 52 can be arbitrary, such as root mean square, maximum value, difference (maximum value - minimum value), or cumulative value of frequency analysis.
[0070] As is well known, the root mean square (RMS) of the current value changes when efficiency decreases due to wear of the gear reducer teeth, or when the torque constant decreases due to demagnetization of the servo motor's magnets. Therefore, the RMS can be preferred for determining whether there are signs of a fault.
[0071] Furthermore, in cases of damage to bearings or other components, the current value may exhibit a trend towards whisker-like peaks. Therefore, it is preferable to use the maximum value or the difference to determine whether there are signs of a potential fault.
[0072] As a method of frequency analysis, a cumulative value for frequency analysis is proposed. By performing frequency analysis, amplitude spectrum, power spectrum, or power spectral density can be obtained. In the following description, amplitude spectrum, power spectrum, or power spectral density will also be referred to as the spectrum or simply the spectrum. The cumulative value for frequency analysis is, for example, the sum of amplitude spectrum, power spectrum, or power spectral density values reaching tens of Hz obtained through frequency analysis. The cumulative value for frequency analysis can also be obtained by using an average value instead of the sum. Amplitude spectrum and power spectrum are obtained using known methods described later. Sometimes, the cumulative value for frequency analysis is preferred for determining whether a fault precursor, such as a vibration trend, is occurring in a robot. Various factors can be considered as causes of vibration trends, such as increased wear of the reducer or increased stall motion.
[0073] If we assume the natural vibration frequency of robot 1's system is 8Hz, the 8Hz component will increase due to resonance. However, in the example of the cumulative value of the frequency analysis described above, it is not limited to detecting the 8Hz peak. The sum of the amplitude spectrum, power spectrum, or power spectral density up to tens of Hz is evaluated. Over time, in addition to the original main mode vibration, vibrations accompanying the deterioration of various components will often be added. By observing frequencies over a wide range, the detection range of fault precursors can be expanded.
[0074] The frequency analysis cumulative value will be explained in more detail below. The evaluation value calculation unit 52 calculates the Fourier spectrum (complex form) by performing an FFT (Fast Fourier Transform) on the current value time series data. The square of the Fourier spectrum is the power spectrum. Converting to a power spectrum results in the loss of phase information. In addition, the square root of the power spectrum is the amplitude spectrum. The amplitude spectrum includes the effective value and the peak value, but any value can be used to determine whether there are signs of a fault. In addition, the power spectral density function is also called the PSD function (Power Spectral Density Function). The power spectral density function is a spectral function that represents the power value per unit frequency width (1 Hz width) in a way that is independent of the frequency resolution of the FFT.
[0075] The frequency at which the upper limit of FFT detection is achieved is half the sampling frequency. This half-sampling frequency is called the Nyquist frequency. In this embodiment, the reciprocal of the longer of the control cycle of robot 1 and robot fault precursor detection device 5 is equivalent to the sampling frequency. For example, if the longer control cycle is 4ms, the Nyquist frequency is 125Hz since 1 / 0.004 / 2 = 125. In the FFT performed in this embodiment, values equal to or less than the Nyquist frequency are considered. However, depending on the hardware architecture of the machine performing the FFT or the algorithm of the software, it is preferable to use a value multiplied by a margin factor as the upper limit to reduce or eliminate folding distortion. That is, when the Nyquist frequency is denoted as f9 and the margin factor as k, the upper limit of the FFT can also be expressed as k × f9. k is, for example, a value in the range of 75% to 100%.
[0076] In this embodiment, when performing an FFT to measure the behavior of robot 1 based on the actuator's current value or current command value, there is an upper limit based on the Nyquist frequency, etc. Furthermore, the software performing the FFT can also be limited in a way that does not exceed the Nyquist frequency.
[0077] On the other hand, robot 1 typically has a natural vibration frequency of around 10Hz. Generally, if the natural vibration frequency of the first order is 10Hz, then signals of some intensity can be detected up to the third or fourth order. Therefore, if the natural vibration frequency is set to f0, for example, and the signal is used up to the fourth order, then 4.5 × f0 = 45Hz can be set as the upper limit. Thus, by acquiring the fourth order signal instead of the fifth order signal, the vibration components can be determined more accurately.
[0078] In addition to the natural vibration frequency, there is also vibration caused by malfunctions. For example, damage to the motor bearings, the teeth of the input shaft gear and the planetary gear, and the bearings of the eccentric shaft may produce vibrations different from the natural vibration frequency. Among these, damage to the motor bearings has a relatively high frequency, which, for example, may produce vibrations of around 25Hz. Furthermore, the vibration frequency varies depending on whether the damage occurs in the inner ring, outer ring, or rolling elements of the bearing, or the motor speed. Taking all the above into account, it is preferable to set an upper limit of, for example, around 50Hz. The Nyquist frequency can also be set as the upper limit.
[0079] Furthermore, when focusing on the primary natural vibrations, the spectrum can be searched sequentially starting from 0 Hz, with the initial peak value taken as the first natural vibration frequency f0, until it reaches 4.5 times f0 (4.5 × f0). In this case, the frequency used as the search reference can be pre-registered as the initial frequency, and the search can proceed from, for example, 0.5 times to 1.5 times the initial frequency. If the frequency-related characteristics are stable, a search from 0.2 times to 1.8 times is also possible. With the margins denoted as Δf1 and Δf2, and the initial frequency of the searched natural vibration frequency denoted as f01, the search proceeds from f01 - Δf1 to f01 + Δf2.
[0080] As in this embodiment, the multi-joint robot 1 can rotate the entire multi-joint arm 11 relative to the base member 10, for example, with the vertical direction as the center of rotation. This axis of rotation is referred to as the rotation axis JT1. In the rotation axis JT1, the inertia around the axis changes significantly with the posture of the multi-joint arm 11. As a result, the natural vibration frequency f0 may vary between 10Hz and 20Hz. In the case of such an axis, it is sometimes impossible to perform a single search for the natural vibration frequency f0 as described above. In this case, the "apparent" natural vibration frequency f02 can be pre-registered as, for example, 12Hz, and counted up to 4.5 times that value. Thus, the upper and lower limits of the accumulated frequency can be summarized as follows. Furthermore, the upper and lower limits described below can also be used in any combination.
[0081] As an upper limit, for example, the following values can be used.
[0082] (1) Fixed value
[0083] (2) (n+0.5) times the first natural vibration frequency
[0084] (3) (n+0.5) times the apparent frequency
[0085] The fixed value can be, for example, 50Hz. However, the fixed value must be less than or equal to the Nyquist frequency. Alternatively, the fixed value can be the Nyquist frequency itself, or a value obtained by multiplying the Nyquist frequency by a margin factor. n is, for example, 4, but any value, such as 1, 2, or 3, can also be used. Furthermore, other values greater than 0 and less than 1 can be used instead of 0.5.
[0086] As a lower limit value, for example, the following values can be used.
[0087] (1) Fixed value (2)0
[0089] (3) α times the natural vibration frequency
[0090] The fixed value could be, for example, 6Hz. Additionally, 0, also known as the DC component, is a quantity without vibration and corresponds to the load torque of each axis of robot 1. Therefore, when evaluating including the load torque, 0 can be used as the lower limit value; when evaluating only the vibration component, α times the natural vibration frequency can be used as the lower limit value. α is, for example, 0.5, but α can also be any value from 0.2 to 0.8. Furthermore, when evaluating only the area near the natural vibration frequency, the lower limit α could be 0.5, and the upper limit could be 1.5 times the natural vibration frequency, etc.
[0091] As mentioned above, different functions will result in different easily detectable fault signs. Since the decision model described later essentially uses the output value of the input function for machine learning, the decision model also inherits the properties of the function. Therefore, it is possible to learn and evaluate the decision model for each evaluation value obtained through multiple different functions.
[0092] In the example described above, the cumulative frequency analysis value is used as a function as the evaluation value. In contrast, in the example shown below, the cumulative frequency analysis value is divided into multiple frequency bands, and a total value is calculated for each band. To distinguish it from the cumulative frequency analysis value, the cumulative value of the spectrum for each frequency band is referred to as the "partial cumulative frequency analysis value." It can also be simply called the "partial cumulative value." Alternatively, an average value can be used instead of the total value to calculate the partial cumulative frequency analysis value.
[0093] refer to Figure 18 Explanation of cumulative values. Figure 18 The vertical axis represents the amplitude of the frequency spectrum, and the horizontal axis represents the frequency. In this example, the lower limit of the frequency is set to 0Hz, and the upper limit is set to 50Hz. Additionally, 10, 20, 30, and 40 are set as values for dividing the frequency spectrum from 0Hz to 50Hz. By using these values to divide the spectrum, the following frequency bands can be obtained.
[0094] Frequency bands: 0-10, 10-20, 20-30, 30-40, 40-50
[0095] Each frequency band may or may not include the two end frequencies (the frequencies used to determine the lower and upper limits of the band), or it may include the two end frequencies. Additionally, the two end frequencies may be included in two adjacent frequency bands.
[0096] Here, with Figure 18 The vibrations generated in robot 1 are illustrated using the 10-20 frequency band (shown in thick outlines) and the smaller 0-10 frequency band as examples. For instance, the 0-10 frequency band includes the natural vibration frequency of the robot arm system, approximately 8 Hz. In addition, there are larger amplitudes at 4, 2, and 1 Hz, but these frequencies are essentially the frequency components of the robot's motion trajectory. These trajectory frequency components remain almost unchanged when the robot program determining the motion is the same. The 10-20 frequency band includes the second harmonic of the natural vibration frequency, approximately 16 Hz. The 10-20 frequency band also includes components other than the harmonics of the natural vibration frequency.
[0097] The natural vibration frequency or its harmonic spectrum may increase due to changes in the spring constant of the reducer that determines the natural vibration frequency, or due to an increase in idling. Conversely, the spectrum other than the natural vibration frequency or its harmonics may also increase due to the deterioration of other components (such as bearings mounted on the motor shaft). Furthermore, in either case, not only are there frequent changes in amplitude (usually an increase), but also in frequency. Deterioration results in a decrease in the natural vibration frequency, and if this frequency is near a segmented frequency band, there is also a shift to a lower frequency band. Although harmonics of the natural vibration frequency also exist in frequency bands above 20 Hz, their intensity gradually decreases, while the proportion of other vibrational components increases.
[0098] As explained above, the partial cumulative values obtained by dividing the data into multiple parts can be used in the decision-making model described later. Additionally, the partial cumulative values can be used in lifespan prediction or fault prediction systems that allow multiple trend management devices to operate simultaneously.
[0099] Furthermore, such as Figure 18 As shown, segmentation can also be achieved by spacing frequency bands apart rather than dividing them continuously, such as 0-10, 20-30, 40-50. Alternatively, frequency bands can overlap, such as 0-10, 0-20, 0-30. Since partial cumulative values are used for trend management, the partial cumulative values themselves are meaningless, but are used to evaluate changes in partial cumulative values. Therefore, it is not necessary to include all frequencies without omission or overlap; it is sufficient to select frequency bands that are easy to trend manage. Of course, as... Figure 18As shown, it can also include all frequencies without omission or overlap.
[0100] The representative evaluation value generation unit 53 calculates a representative evaluation value from the multiple evaluation values obtained by the evaluation value calculation unit 52. As described above, although one evaluation value corresponds to the value after compressing the information of the current value time series data, the representative evaluation value can be considered as information after further compressing the multiple evaluation values.
[0101] For example, consider the scenario where robot 1 operates between 9:00 AM and 5:00 PM on a certain day. During this period, robot 1 repeats the same actions multiple times. As a result, multiple time-series current value data are obtained in the current value time-series data acquisition unit 51, and an evaluation value for each time-series current value data is obtained in the evaluation value calculation unit 52. The representative evaluation value generation unit 53 generates one evaluation value representing that day from the multiple evaluation values as a representative evaluation value.
[0102] For example, during the period from 9:00 to 17:00, the room temperature inside the factory may vary due to the influence of the outdoor temperature. Alternatively, the grease supplied to the joints of robot 1 may be cold at the start of operation, but its viscosity decreases as the temperature rises over time. To mitigate these effects, the representative evaluation value generation unit 53 may select an intermediate value from multiple evaluation values obtained during the period from 9:00 to 17:00 and use this as the representative evaluation value. The representative evaluation value generated by the representative evaluation value generation unit 53 is stored in the storage unit 50.
[0103] The representative evaluation value is not limited to the median value; for example, it can also be the average value.
[0104] The time range to which multiple evaluation values represented by a single representative evaluation value belong is referred to as the data collection unit period. In the example described, since a single representative evaluation value represents a 1-day time series of current values, the data collection unit period is 1 day.
[0105] For example, in a factory, there may be multiple shifts scheduled daily (e.g., two-shift system). A shift can also be considered a work cycle or a robot 1's operating cycle. In this case, the data collection unit period can also be considered as one shift, but it is preferable to include one day encompassing two shifts. By using one day, including day and night, as the data collection unit period, it is possible to prevent the decrease in the detection accuracy of fault precursors due to the influence of outdoor temperature fluctuations. The data collection unit period can also be multiple days (e.g., two days, three days, or one week).
[0106] The sequence processing unit 54 generates a sequence by arranging multiple representative evaluation values stored in the storage unit 50. The sequence of representative evaluation values generated by the sequence processing unit 54 is input to the determination unit 55.
[0107] The determination unit 55 uses the representative evaluation value generated by the representative evaluation value generation unit 53 to determine whether there are any signs of malfunction in robot 1. The determination unit 55 includes a learning unit 57, a probability output unit 58, and a conversion unit 61.
[0108] As mentioned above, by using representative evaluation values instead of evaluation values, the influence of, for example, daily temperature variations can be eliminated. This may result in a compression effect on the evaluation values. On the other hand, when the evaluation method is trend management or when the evaluation values have been temperature-compensated in some way, it is also possible to evaluate all the obtained evaluation values without using representative evaluation values.
[0109] During the initial operation of robot 1, the learning unit 57 learns from N representative evaluation values generated during N data units and creates a judgment model as a machine learning model.
[0110] In the determination unit 55 of this embodiment, a hidden Markov model is used as the determination model.
[0111] Here, we will briefly explain Hidden Markov Models (HMMs). HMMs are one type of probabilistic model used for statistical modeling of sequential data. Given sequential data, an HMM can calculate the probability of the sequence occurring.
[0112] In Hidden Markov Models, if sequential data is observed, it is assumed that there are underlying states of the sequence. Since states cannot be observed, only data can be observed.
[0113] The Hidden Markov Model (HMM) is explained below. The parameters of the HMM are defined as three types: transition probability A, output probability B, and initial probability Π. The number of assumed states is R. The initial probability Π uses the same notation as the Π multiplied in equation (1) discussed later, but with a different meaning.
[0114] The migration probability A is a ij The set (A={a ij}). a ij Let represent the probability that a state is i at time (t-1) but changes to state j at time t. Here, i and j are integers greater than 1 and less than R.
[0115] The output probability B is b jk The set (B={b jk}). b jk Let vk represent the probability distribution of outputting the k-th observed signal vk in state j. In this embodiment, the output is assumed to be a continuous value, and the probability of outputting the observed signal vk is represented by a Gaussian distribution. A single Gaussian distribution is used in this embodiment, but a mixture of Gaussian distributions can also be used instead of a single Gaussian distribution.
[0116] The initial probability Π is π j The set (Π={π) j}). Π j This represents the probability of state j at time t=0. In a Hidden Markov Model, although the state is hidden, the initial value is arbitrarily and temporarily determined.
[0117] Hidden Markov models are broadly classified into Ergodic Hidden Markov models and Left-to-Right Hidden Markov models.
[0118] Ergodic Hidden Markov Models, such as Figure 4 As shown in (a), the Ergodic Hidden Markov Model includes multiple states. Figure 4 In (a), an example with 3 states is shown. Each state can transition to any state, including itself.
[0119] In Ergodic Hidden Markov Models (HMMs), ergodicity holds. Ergodicity means that [A] a model can be reached from any state, [B] it is not periodic, and [C] the number of states is finite. When an HMM is ergodic, the ensemble average is consistent with the time average.
[0120] Left-to-Right Hidden Markov Models, such as Figure 4 As shown in (b), the Left-to-Right Hidden Markov Model includes multiple states. Figure 4 In (b), an example with four states is shown. In a Left-to-Right Hidden Markov Model, state transitions are always unidirectional, so once a state is transitioned to another state, it is impossible to return to the previous state.
[0121] In Left-to-Right Hidden Markov Models (HMMs), ergodicity does not hold. Left-to-Right HMMs are subject to the constraint of irreversible state transitions. Because of this constraint on state transitions, Left-to-Right HMMs have the advantage of reducing computational cost, making them suitable for evaluating time series data.
[0122] In this embodiment, either an Ergodic Hidden Markov Model or a Left-to-Right Hidden Markov Model can be used as the decision model. The number of states in the Hidden Markov Model can be arbitrarily and appropriately determined as long as it is two or more.
[0123] The learning unit 57 inputs the N sequences representing evaluation values into the decision model, and updates the parameters of the transition probability, output probability, and initial probability in such a way that the probability of the decision model generating the sequence representing the evaluation value increases. At this time, the well-known EM (Expectation Maximization) method and the Baum-Welch algorithm are used.
[0124] When using an Ergodic Hidden Markov Model, the order in which multiple representative evaluation values are input into the learning model can be fixed or not. When using a Left-to-Right Hidden Markov Model, it is preferable to fix the input order of multiple representative evaluation values in chronological order. The sequence processing unit 54 generates a sequence of N representative evaluation values based on the conditions and outputs it to the decision unit 55.
[0125] The probability output unit 58 inputs a sequence of representative evaluation values obtained during monitoring into the decision model to obtain the probability of the sequence occurring.
[0126] Hidden Markov Models (HMMs) can estimate the probability of a sequence occurring by inputting a sequence representing the evaluation value. The calculated probability can also be considered a quantification of the similarity (likelihood) of the sequences input into the model. In other words, the lower the probability output by the model, the higher the probability that the sequence representing the evaluation value input into the model is different from the norm. Thus, this probability reflects specificity, which can also be described as anomaly. The more similar the input sequence to the learned sequence, the higher the output probability. Therefore, obtaining the probability is essentially the same as obtaining the similarity between two sequences. The probability output unit 58 outputs the obtained probability to the conversion unit 61.
[0127] The conversion unit 61 performs a logarithmic conversion on the probability obtained from the probability output unit 58. The obtained value (log-likelihood) is output to the alarm generation unit 62 and the display unit 63.
[0128] If the log-likelihood input from the conversion unit 61 deviates from a predetermined range, the alarm generation unit 62 issues a fault warning alarm. In this embodiment, the alarm is activated by the alarm generation unit 62 controlling the display of the display unit 63.
[0129] The display unit 63 is capable of displaying and Figure 8 The corresponding curves are displayed. The display unit 63 is, for example, a display device such as a liquid crystal display. The operator monitors whether the log-likelihood of the sequence representing the evaluation value deviates from the usual trend. The operator can use this information to appropriately formulate future maintenance plans. In addition, the display unit 63 can switch the display axis or output an alarm, for example, in the form of a message, based on the signal from the alarm generation unit 62.
[0130] Next, along Figure 2 The flow of data, indicated by the thin lines, illustrates the robot fault precursor detection method used in the robot fault precursor detection device 5 of this embodiment. Hereinafter, the data collection period will be set to 1 day, and N will be set to 30 for explanation.
[0131] The current value time series data acquisition unit 51 of the robot fault prediction detection device 5 acquires current value time series data for each of the multiple robot actions that are reproduced within a certain day (behavior time series data acquisition process).
[0132] Then, the evaluation value calculation unit 52 calculates an evaluation value (evaluation value calculation process) based on each data point of the current value time series data obtained by the current value time series data acquisition unit 51 using functions such as root mean square. A number of evaluation values equal to the number of current value time series data points are obtained.
[0133] Next, the representative evaluation value generation unit 53 generates a representative evaluation value representing the multiple evaluation values obtained in one day (representative evaluation value generation process). The representative evaluation value can serve as the median value among the multiple evaluation values obtained in one day.
[0134] The aforementioned process was repeated daily. As a result, at the end of the initial operation period, i.e., the Nth data collection unit period (30 days), 30 representative evaluation values were obtained.
[0135] If 30 representative evaluation values are obtained, the sequence processing unit 54 generates a sequence (sequence processing step) by arranging the representative evaluation values from day 1 to day 30 in chronological order. The sequence processing unit 54 outputs the generated sequence of representative evaluation values to the determination unit 55. Hereinafter, this sequence will also be referred to as the initial sequence. The initial sequence is as follows: Figure 6 As shown in (a). In Figure 6 In this context, a quadrilateral represents a representative evaluation value. The number within the quadrilateral indicates the day on which that representative evaluation value was obtained.
[0136] The learning unit 57 of the decision unit 55 inputs the initial sequence into the machine learning model for learning (model building process). The parameters of the decision model are corrected by inputting a sequence representing the evaluation value into the decision model, increasing the probability of that sequence appearing. Specifically, the parameters of the decision model refer to the transfer probability A, output probability B, and initial probability Π. This process corresponds to one learning iteration, and the learning is repeated multiple times. This repetition corresponds to the training phase of machine learning.
[0137] The number of learning iterations can be set to, for example, 100. However, even before the learning reaches 100 iterations, the learning can be terminated when the convergence of the parameters of the decision model can be confirmed. After learning is completed, the parameters of the decision model are stored in the decision model storage unit 59 of the decision unit 55.
[0138] The monitoring period begins from day N+1. During the monitoring period, the sequence processing unit 54 generates a sequence of representative evaluation values for the objects whose specificity is evaluated by the determination unit 55 (sequence processing step). The sequence processing unit 54 outputs the generated sequence of representative evaluation values to the determination unit 55. Hereinafter, this sequence may also be referred to as the determination sequence. In this embodiment, the determination sequence corresponds to the determination data. The determination sequence generated by the sequence processing unit 54 changes daily whenever the representative evaluation value generation unit 53 generates a new representative evaluation value. The determination sequence includes at least one representative evaluation value from day N+1 onwards.
[0139] The processing of the decision sequence will now be explained in detail. When the representative evaluation value for the (N+1)th data collection period (day 31) is obtained, the sequence processing unit 54 initializes the decision sequence using the initial sequence. This initialization process is performed only on the first (day 31). Next, the sequence processing unit 54 appends the latest obtained representative evaluation value to the end of the decision sequence. Since this appending brings the number of representative evaluation values constituting the decision sequence to 31, the sequence processing unit 54 deletes the oldest representative evaluation value located at the beginning of the sequence. Figure 6 (b) shows the sequence used for the determination of day 31.
[0140] This update process is performed again after day 32. The sequence processing unit 54 creates a daily sequence of representative evaluation values by deleting the oldest representative evaluation value from the previous determination sequence, moving the second and subsequent representative evaluation values one position to the front of the sequence, and appending the latest representative evaluation value to the end. Figure 6 (c) shows the sequence used for the determination on day 32. Figure 6 (d) shows the decision sequence for day 33. The representative evaluation values of the decision sequence are replaced one by one in each update process.
[0141] The probability output unit 58 inputs the decision sequence generated by the sequence processing unit 54 into the decision model stored in the decision model storage unit 59, and calculates the probability of the sequence occurring. This processing corresponds to the evaluation stage of machine learning. The probability output unit 58 outputs the obtained probability to the conversion unit 61.
[0142] The conversion unit 61 converts the probability output from the probability output unit 58 into a logarithm and calculates the log-likelihood. The logarithmic conversion simplifies the processing of numerical values.
[0143] The alarm generation unit 62 determines whether there is a fault indication by investigating whether the obtained log-likelihood is within a specified range (fault indication determination process). Specifically, the alarm generation unit 62 compares the log-likelihood with a specified threshold. If the log-likelihood is lower than the specified threshold, the alarm generation unit 62 issues an alarm, for example, by displaying a message indicating that a fault indication has been detected on the display unit 63 (alarm generation process).
[0144] Next, the effects of this implementation using a Hidden Markov Model will be explained.
[0145] Figure 7 The curve shows the root mean square (RMS) current value (also known as I²) of a servo motor as the robot begins operation. The horizontal axis represents time, and the vertical axis represents the RMS. In this example curve, the RMS begins to rise slightly near the triangle markings. However, because this rise is small, it is difficult to determine whether there are any signs of a malfunction. Figure 7 The thick line represents the value obtained by calculating the average of the first 30 days and multiplying the result by 1.1. When this thick line is used as the anomaly threshold, only one point is identified as an anomaly.
[0146] Figure 8 The curve shows the results of evaluating the root mean square using a hidden Markov model. The horizontal axis represents time, and the vertical axis represents the log-likelihood. Figure 8 In the example, it used Figure 5 The model shown is an Ergodic Hidden Markov Model with 2 states.
[0147] like Figure 8 As shown, the log-likelihood begins to change around December 16th. A clear anomaly is observed in the sloping shift at multiple points (rather than...). Figure 7 That way, it only appears at a single deviation value. This is believed to be because the proportion of outlier data in the decision sequence tends to increase cumulatively whenever the decision sequence is updated.
[0148] Based on this property, operators can intuitively and easily grasp the signs of abnormality.
[0149] As explained above, the robot fault precursor detection device 5 of this embodiment includes a current value time series data acquisition unit 51, an evaluation value calculation unit 52, a representative evaluation value generation unit 53, a sequence processing unit 54, and a determination unit 55. The current value time series data acquisition unit 51 processes current value time series data of the drive current of the joints of the robot 1 based on robot actions during each data collection unit. The evaluation value calculation unit 52 calculates an evaluation value based on the current value time series data acquired by the current value time series data acquisition unit 51. The representative evaluation value generation unit 53 generates a representative evaluation value based on the evaluation value obtained by the evaluation value calculation unit 52 during each data collection unit. The sequence processing unit 54 generates a sequence of representative evaluation values. At the initial stage of robot 1 operation, the determination unit 55 creates a determination model based on the sequence generated by the sequence processing unit 54, i.e., the initial sequence. After the initial stage of operation, the determination unit 55 inputs the determination sequence into the created determination model and obtains the specificity of the determination sequence, which includes representative evaluation values based on robot actions that occur after the initial stage of operation.
[0150] Therefore, it is possible to effectively detect early signs of malfunction in robot 1. Consequently, maintenance of robot 1 can be performed before a malfunction occurs.
[0151] Furthermore, in this embodiment, after the initial stage of operation, the determination unit 55 inputs a determination sequence consisting of multiple representative evaluation values as determination data into the determination model during each data collection unit, and obtains specificity based on the output of the determination model. To generate the determination sequence, the sequence processing unit 54 initializes the determination sequence using the initial sequence, and then performs an update process on the determination sequence each time a representative evaluation value is generated. The update process includes adding the representative evaluation values from the data collection unit to the determination sequence before the update.
[0152] Therefore, it is easy to detect early signs of failure in robot 1 based on the shift in specificity.
[0153] Furthermore, in the robot fault precursor detection device 5 of this embodiment, the determination model is a hidden Markov model that has learned the initial sequence.
[0154] Therefore, by using a model that can easily process sequential data, it is possible to detect early signs of failure in robot 1 with high precision.
[0155] Furthermore, in the robot fault precursor detection device 5 of this embodiment, the hidden Markov model is an Ergodic hidden Markov model. The Ergodic hidden Markov model has two states.
[0156] This simplifies the model's structure.
[0157] Furthermore, in the robot fault prediction detection device 5 of this embodiment, the hidden Markov model can also be a Left-to-Right hidden Markov model that has learned the initial sequence. In this case, the initial sequence and the decision sequence are configured as a sequence of N representative evaluation values arranged in chronological order.
[0158] Therefore, models adept at handling time-series data can be used to detect early signs of failure in robot 1 with high accuracy. Furthermore, the computational cost, equivalent to the constraints of state transitions in the model, can be reduced.
[0159] Furthermore, in the robot fault precursor detection device 5 of this embodiment, the root mean square is calculated as the evaluation value. However, the maximum value, the difference, or the cumulative value of frequency analysis can also be calculated as the evaluation value.
[0160] Therefore, it is possible to effectively assess changes in current value time series data.
[0161] Furthermore, in the robot fault precursor detection device 5 of this embodiment, the evaluation value calculation unit 52 performs frequency analysis on each behavior time series data acquired by the current value time series data acquisition unit 51 to obtain the spectrum, and calculates the partial sum of multiple spectra for multiple preset frequency bands as a representative evaluation value. The representative evaluation value generation unit 53 generates multiple representative evaluation values during each data collection unit. The judgment model is a model that can take a multi-dimensional sequence as the initial sequence input.
[0162] Therefore, it is possible to determine the potential fault signs of robot 1 based on the spectrum obtained from frequency analysis.
[0163] Furthermore, in the robot fault precursor detection device 5 of this embodiment, the data collection unit period is determined in a manner that is an integer multiple of the ambient temperature change cycle, such as an integer multiple of 1 day.
[0164] Therefore, the influence of periodic changes in ambient temperature can be largely eliminated. Consequently, the detection accuracy of fault precursors is good.
[0165] Furthermore, in the robot fault precursor detection device 5 of this embodiment, the data collection unit period is determined in a manner that is an integer multiple of the work cycle or the operating period of the robot 1.
[0166] Therefore, the effects of high grease viscosity can be largely eliminated at the beginning of the work cycle or the operating cycle of robot 1. Consequently, the detection accuracy of fault precursors is good.
[0167] In addition, the robot fault precursor detection device 5 of this embodiment has a display unit 63, which displays the specificity output by the determination unit 55.
[0168] Therefore, it is possible to notify others of any signs of malfunction in robot 1 in a manner that is easily understood by those around them.
[0169] In addition, in this embodiment, the determination unit 55 outputs the specificity in the form of logarithmic transformation.
[0170] Therefore, the output of the decision unit 55 can be easily processed in numerical form. For example, it can prevent... Figure 8 The output of the curve is overly sensitive to changes.
[0171] Furthermore, the robot malfunction precursor detection device 5 of this embodiment includes an alarm generation unit 62. When the specificity output by the determination unit 55 deviates from a predetermined range, the alarm generation unit 62 issues an alarm indicating a malfunction precursor.
[0172] This allows for clear notification of signs of impending malfunctions in the surrounding area.
[0173] Next, the second embodiment will be described. Furthermore, in the descriptions following the second embodiment, components that are the same or similar to those in the embodiments will be labeled with the same symbols in the drawings, and their descriptions will be omitted.
[0174] In this embodiment, a Gaussian distribution-based model is used instead of a Hidden Markov Model as the decision-making model.
[0175] Figure 9 This is a block diagram of this embodiment. The determination unit 55 of this embodiment has a determination model making unit 67 instead of the learning unit 57 of the first embodiment. Other parts are basically the same as in the first embodiment.
[0176] The decision model used in this embodiment will now be explained. Consider inputting an initial sequence C consisting of N representative evaluation values into the decision model creation unit 67. 1(1) C 1(2) ,…,C 1(N) The determination is made by using the model-making unit 67 to calculate the mean μ and standard deviation σ of the N representative evaluation values that constitute these initial sequences.
[0177] In the decision unit 55, a decision model f is constructed. The decision model f is represented by the following equation (1).
[0178] [Formula 1]
[0179]
[0180] Among them, C 2(1) C 2(2) ,…,C 2(Q) It is a decision sequence consisting of Q representative evaluation values.
[0181] The formula (1) includes the formula for the well-known Gaussian distribution. That is, the decision model f in this embodiment corresponds to the product of the Gaussian distribution with the number Q of representative evaluation values in the decision sequence, where the Gaussian distribution is based on the average μ and standard deviation σ of the N representative evaluation values of the initial sequence.
[0182] Through the inventor's experiments, it was confirmed that the output when using the determination model f also showed the same result as in the first embodiment. Figure 8 The curves follow essentially the same trend. In other words, the output of model f can be treated in the same way as the probability of a sequence consisting of Q representative evaluation values (in other words, specificity).
[0183] In this embodiment, a model can be obtained by calculating the mean μ and standard deviation σ of the initial sequence. The mean μ and standard deviation σ calculated by the decision model creation unit 67 are stored in the decision model storage unit 59 as parameters for defining the decision model.
[0184] The decision model f shown in equation (1) uses a Gaussian distribution multiplication, but it can also be a logarithmic multiplication or summation of Gaussian distributions. A summation of Gaussian distributions can also be used. According to the inventors' experiments, when using a summation (however, without logarithmic transformation), the output of the decision model f tends to fluctuate more coarsely than the multiplication, but it is sufficient to capture the signs of faults.
[0185] As explained above, in the robot fault precursor detection device 5 of this embodiment, the judgment model is constructed by multiplying or summing a Gaussian distribution Q times, where the Gaussian distribution is based on the standard deviation σ and the average value obtained from N representative evaluation values constituting the initial sequence. Furthermore, logarithmic transformation can be performed either during the process or at the final value.
[0186] Therefore, it is possible to create decision-making models with less computation.
[0187] Next, the third embodiment will be described. Figure 10 This is a schematic diagram showing the DTW algorithm.
[0188] In the robot fault precursor detection device 5 of this embodiment, there is a characteristic in the calculation of the evaluation value performed by the evaluation value calculation unit 52. The evaluation value calculation unit 52 calculates the DTW distance, etc., based on the current value time series data obtained by the current value time series data acquisition unit 51, and uses it as the evaluation value. DTW is an abbreviation for Dynamic Time Warping. In this embodiment, the part other than the processing performed by the evaluation value calculation unit 52 is basically the same as that in the first embodiment.
[0189] Here, we briefly explain the DTW algorithm. The DTW algorithm is used to calculate the similarity between two time series data. A key feature of the DTW algorithm is that it allows for non-linear scaling of the time series data along the time axis when calculating similarity. Therefore, the DTW algorithm can obtain results close to human intuition regarding the similarity of time series data.
[0190] The evaluation value calculation unit 52 outputs the DTW distance (dissimilarity) as the evaluation value of the current value time series data of the processing object. The DTW distance (dissimilarity) shows the magnitude of the difference between the reference current value time series data (reference behavior time series data) and the comparison current value time series data (comparison behavior time series data).
[0191] For example, when the robot 1 is experimentally operated at the start of use of the robot fault prediction detection device 5, the current value time series data acquired by the current value time series data acquisition unit 51 is used as the reference current value time series data. For comparison, the current value time series data acquired by the current value time series data acquisition unit 51 after the first day of use of the robot fault prediction detection device 5 is used. The reference data can also be acquired, for example, on the first day.
[0192] use Figure 10 Explain the principle of the DTW algorithm. Multiple (s) current values, included in the reference data, are configured sequentially along the first horizontal axis in time series. Multiple (p) current values, included in the comparison data, are configured sequentially along the second vertical axis in time series.
[0193] Next, in a plane defined by the horizontal and vertical axes, s×p elements are defined in a matrix configuration. Each element (l, m) represents the correspondence between the l-th current value in the reference data and the m-th current value in the comparison data. Wherein, 1≤l≤s, 1≤m≤p.
[0194] Each cell (l, m) is associated with a value representing the difference between the l-th current value in the reference data and the m-th current value in the comparison data. In this embodiment, the absolute value of the difference between the l-th current value and the m-th current value is stored in each cell in an associated manner.
[0195] The evaluation value calculation unit 52 calculates the value from the value located at Figure 10 The regularized path from the starting cell at the bottom left corner of the matrix to the ending cell at the top right corner is called the "warping path".
[0196] The starting unit (1,1) is equivalent to establishing a correspondence between the earliest timing (i.e., the first) current value among the s current values in the reference data and the earliest timing (i.e., the first) current value among the p current values in the comparison data.
[0197] The endpoint cell (s,p) is equivalent to establishing a correspondence between the current value at the last timing (i.e., the sth) of the s current values in the reference data and the current value at the last timing (i.e., the pth) of the p current values in the comparison data.
[0198] In the s×p matrices constructed as described above, consider the path from the starting cell to the ending cell according to the rules below [1] and [2]. [1] You can only move along adjacent cells in the vertical, horizontal, or diagonal direction. [2] You cannot move in the direction of the time of returning the reference data, nor in the direction of the time of returning the comparison data.
[0199] The route formed by connecting these units is called a path or regularized path. A regularized path shows how to establish a correspondence between s current values in the reference data and p current values in the comparison data. From another perspective, a regularized path indicates how to stretch two time series data along the time axis.
[0200] Multiple regularization paths can be considered from the starting cell to the ending cell. The evaluation value calculation unit 52 calculates the regularization path with the smallest sum of the values showing the difference in association with the cells passed (in this embodiment, the absolute value of the difference between the l-th current value and the m-th current value) among the considered regularization paths. In the following description, this regularization path may also be referred to as the optimal regularization path. Furthermore, the sum of the values in each cell of this optimal regularization path may also be referred to as the DTW distance.
[0201] The average DTW distance can be calculated by dividing the DTW distance by the number of squares passed. The average DTW distance can also be calculated by dividing the DTW distance by the number of features s or p in any time series data. Alternatively, the average DTW distance can be used as an evaluation value instead of the actual DTW distance.
[0202] If s and p are large, there may be a huge number of regularized paths. Therefore, assuming all possible regularized paths are considered, the computational cost of finding the optimal regularized path increases exponentially. To address this issue, the evaluation value calculation unit 52 of this embodiment uses the DP matching method (dynamic programming) to find the optimal regularized path. DP is an abbreviation for Dynamic Programming. The DP matching method is well known, so its explanation is omitted.
[0203] For each current value time series data acquired by the current value time series data acquisition unit 51, the DTW distance or DTW distance average is calculated by the evaluation value calculation unit 52. The representative evaluation value generated by the representative evaluation value generation unit 53 is, for example, the median value of multiple DTW distances or DTW distance averages acquired throughout the day. The sequence of representative evaluation values is generated by the sequence processing unit 54 and input to the determination unit 55 as an initial sequence or a determination sequence.
[0204] Figure 11 The curve shows the shift in the log-likelihood obtained in this embodiment. As the curve shows, in this embodiment, similar to the first embodiment, obvious signs of failure begin to appear around December 16th.
[0205] As described above, in the robot fault precursor detection device 5 of this embodiment, the evaluation value calculation unit 52 calculates, for each current value time series data obtained by the current value time series data acquisition unit 51, either the DTW distance between the current value and the predetermined reference current value time series data or the average value of the DTW distance as an evaluation value.
[0206] Therefore, it is easy to capture the changing trend of time series data of current values.
[0207] Next, the fourth embodiment will be described. Figure 12 This is a block diagram illustrating the electrical structure of the robot fault precursor detection device 5 according to the fourth embodiment.
[0208] The robot fault prediction detection device 5 in this embodiment is related to the... Figure 2 The first embodiment shown corresponds to a modified device.
[0209] The determination unit 55 in this embodiment is the same as that in the first embodiment, including a learning unit 57, a probability output unit 58, a determination model storage unit 59, and a conversion unit 61. The determination unit 55 also includes a probability storage unit 68 and a total multiplication output unit 69.
[0210] The learning unit 57 in this embodiment is the same as in the first embodiment, enabling the Hidden Markov Model to learn the initial sequence. The parameters of the obtained Hidden Markov Model are stored in the decision model storage unit 59.
[0211] As mentioned above, in Figure 2 In the first embodiment shown, during the monitoring period (i.e., after day N+1), a sequence consisting of Q representative evaluation values is input daily from the sequence processing unit 54 to the decision-making unit 55 using a model. On the other hand, in Figure 12In the embodiment shown, each day, only one representative evaluation value obtained that day is input from the storage unit 50 to the determination unit 55 as the determination data. In this embodiment, this one representative evaluation value corresponds to the determination data.
[0212] Hidden Markov Models (HMMs) are typically used for evaluating sequential data. However, Ergodic HMMs, which have been learned on the initial sequence, can output values that can be treated as probabilistics, even when the evaluation phase inputs the evaluation values separately rather than as a sequence.
[0213] The probability output unit 58 outputs the output result (i.e., probability) of the decision model when a representative evaluation value is input to the decision model. The probability output by the probability output unit 58 is stored in the probability storage unit 68.
[0214] The probability storage unit 68 is capable of storing the probability output by the model for determining the most recent U-day quantity after N+1 days.
[0215] Figure 13 This embodiment displays the initial sequence and decision data when N=30 and U=15. On the 30th day, the learning unit 57 enables the Hidden Markov Model to learn. Figure 13 The sequence of 30 representative evaluation values is shown in (a). Based on this, a decision model is created.
[0216] like Figure 13 As shown in (b), on day 31, a representative evaluation value for day 31 is input into the decision model, and the probability output by the decision model is stored. Figure 13 As shown in (c), on day 32, a representative evaluation value for day 32 is input into the decision model, and the probability output by the decision model is stored. Figure 13 In the diagram, a single circle represents a probability output by the model. The number within the circle indicates the day on which the probability corresponds to a representative evaluation value. If the circle is a dashed line, it indicates that the probability has been stored in the past.
[0217] The decision unit 55 inputs one representative evaluation value obtained that day into the decision model daily and processes the probability output by the decision model. As a result, on the 45th day, as... Figure 13 As shown in (d), the probability of 15 days is stored in the probability storage unit 68.
[0218] On the 45th day, the total value output unit 69 will be as follows: Figure 13The probabilities for days 31 to 45, stored in the probability storage unit 68 as shown in (d), are multiplied together. In this embodiment, the total multiplication value obtained in this way corresponds to the specificity. The total multiplication value output by the total multiplication value output unit 69 is logarithmically transformed in the conversion unit 61 and then output from the determination unit 55.
[0219] On the 46th day, the oldest probability from the 31st day is deleted from the probability storage unit 68, and the probability for the 46th day is stored. The total multiplication output unit 69 will then output the probability as follows: Figure 13 The probabilities of days 32 to 46 stored in the probability storage unit 68, as shown in (e), are multiplied together. The resulting total multiplication value is then logarithmically transformed in the conversion unit 61 and output from the determination unit 55.
[0220] In this embodiment, the output from the determination unit 55 essentially starts from the 45th day. Based on the structure of this embodiment, similar to the first and second embodiments, it is also possible to effectively detect signs of malfunctions.
[0221] In this embodiment, the determination unit 55 outputs the total product value after logarithmic transformation, but it can also output the specificity as the sum of the probabilities of the most recent 15 days. In this case, the logarithmic transformation can be omitted.
[0222] The probability storage unit 68 can also be omitted. In this case, the model output values from day 31 to day 45 only need to be calculated once on day 45.
[0223] As explained above, in this embodiment, after the initial stage of operation, the determination unit 55 inputs only one representative evaluation value as determination data into the determination model during each data collection unit period and obtains the output of the determination model. The determination unit 55 obtains the specificity based on the product or sum of the outputs of the determination model during the most recent multiple data collection units.
[0224] This structure also enables the effective detection of early signs of malfunction in robot 1.
[0225] Next, the fifth embodiment will be described. Figure 14 This is a block diagram illustrating the electrical structure of the robot fault precursor detection device 5 according to the fifth embodiment.
[0226] The robot fault precursor detection device 5 of this embodiment also includes a normalization unit 71. The normalization unit 71 is used to normalize the representative evaluation values of the input Hidden Markov Model (decision model).
[0227] Here we will explain normalization. Simply put, normalization refers to transforming the values in a dataset by setting the minimum value to 0, the maximum value to 1, and distributing the intermediate values proportionally between 0 and 1.
[0228] In this embodiment, the normalization unit 71 calculates the minimum and maximum values based on 30 representative evaluation values during the initial operation period, and normalizes each representative evaluation value accordingly. The normalized values are stored in the storage unit 50 and used by the sequence processing unit 54 to create an initial sequence and a determination sequence.
[0229] Other methods of normalization can also transform data sets into a Gaussian distribution with a mean of 0 and a dispersion of 1.
[0230] As described above, time-series data of the current values of the motors on each axis of robot 1 were obtained. In the actual robot example, the average current value of the wrist axis motor was about 3A, while the average current value of the main axis motor was about 20A. The magnitude of the current value will naturally affect the representative evaluation value. Thus, although there are cases where the representative evaluation value varies greatly across axes, determining the threshold for alarm generation conditions for each axis is quite complicated. Furthermore, depending on the type of robot—whether it is large or small—the weight it can handle, its speed, etc., will differ, resulting in various current values.
[0231] In this embodiment, these differences can be eliminated through normalization, allowing for a unified judgment. The inventors of this application discovered that, when the representative evaluation value is normalized, the log-likelihood falls within the range of -50 to 10, but if an anomaly occurs, the log-likelihood usually decreases to around -500. Therefore, regarding log-likelihood, setting a uniform threshold of around -100 is generally appropriate for detecting fault precursors. In other words, not every anomaly judgment threshold is necessary.
[0232] As explained above, in the robot fault precursor detection device 5 of this embodiment, the representative evaluation value in the input judgment model is normalized.
[0233] Therefore, it is possible to make a unified judgment on the time series data of current values obtained from various motors.
[0234] Next, the sixth embodiment will be described. Figure 15 This is a block diagram illustrating the electrical structure of the robot fault precursor detection device 5 according to the sixth embodiment.
[0235] In the robot fault precursor detection device 5 of this embodiment, such as Figure 15As shown, it has two evaluation value calculation units 52, a representative evaluation value generation unit 53, and a normalization unit 71. Apart from this, this embodiment is basically the same as the first embodiment described above.
[0236] The two evaluation value calculation units 52 each use different functions to calculate the evaluation values of the current value time series data. For example, one evaluation value calculation unit 52 can calculate the root mean square, while the remaining evaluation value calculation units 52 calculate the maximum value.
[0237] Correspondingly, the Hidden Markov Model used in the decision unit 55 is constructed by calculating the probability of a sequence of two-dimensional vectors composed of two evaluation values as input. Therefore, it is possible to comprehensively consider multiple evaluation values to detect signs of a fault.
[0238] The representative evaluation value for each evaluation value is normalized by the normalization section 71. This allows the influence of each of the multiple evaluation values to be equalized. Each normalized representative evaluation value can also be multiplied by a factor determined for weighting. Therefore, compared to the maximum value, factors such as the root mean square can be emphasized to determine fault precursors. The normalization section 71 can also be omitted.
[0239] exist Figure 15 The example shown illustrates the calculation of two evaluation values from time-series data of current values. However, the robot fault precursor detection device 5 can also be configured to obtain three or more evaluation values. In this case, a vector sequence of three or more dimensions is input into the hidden Markov model.
[0240] In the case of the Gaussian distribution model, although the model f, i.e., Equation (1), is a one-dimensional model, in order to correspond to the multidimensional model, multiple models f, i.e., Equation (1), can be prepared and multiplied or added to each evaluation value, just like the Hidden Markov Model, to correspond to the multidimensional input.
[0241] As explained above, in the robot fault precursor detection device 5 of this embodiment, the evaluation value calculation unit 52 calculates multiple evaluation values for each type of current value time series data acquired by the current value time series data acquisition unit 51 using different methods. The representative evaluation value generation unit 53 generates multiple representative evaluation values during each data collection unit. The judgment model is a model that can input multidimensional sequences.
[0242] Therefore, it is possible to detect early signs of failure by comprehensively considering multiple evaluation values.
[0243] Furthermore, in the robot fault precursor detection device 5 of this embodiment, the evaluation value calculation unit 52 calculates the root mean square and maximum value of the current value time series data. However, it is also possible to calculate any one of the difference, frequency analysis cumulative value, DTW distance, and DTW distance average value instead of one or both of the root mean square and maximum value.
[0244] Furthermore, in the robot fault precursor detection device 5 of this embodiment, the evaluation value calculation unit 52 calculates the root mean square and maximum value of the current value time series data. However, it is also possible to calculate the cumulative value of two frequency analysis components instead of both the root mean square and the maximum value. It is also possible to configure it to obtain more than three evaluation values. In this case, a sequence of vectors with more than three dimensions is input into the hidden Markov model. In addition, as Figure 18 As shown, it can also calculate the cumulative value of 5 parts.
[0245] Therefore, it is possible to effectively assess changes in current value time series data.
[0246] Next, an example of predicting the failure period of robot 1 without using a decision model will be explained. The processing described in this example is achieved through... Figure 16 The robot maintenance support device 5a shown is used. The basic structure of the robot maintenance support device 5a is the same as that of the robot fault prediction detection device 5. The robot maintenance support device 5a predicts the future changes of the evaluation value based on past trends derived from time-series data of the current value and displays this prediction on the display 80. It also calculates the fault prediction date for robot 1 based on the future changes of the evaluation value. In the following description, refer to... Figure 16 as well as Figure 17 Please provide a detailed explanation. Figure 16 This is an example of a trend management screen displayed on monitor 80. Figure 17 It is a graph showing the change of the forecast line as the reference number of days changes.
[0247] exist Figure 16 The trend management screen displays a curve display unit 81, an evaluation value selection unit 82, a diagnostic site selection unit 83, and a prediction day display unit 84.
[0248] The curve displayed on the curve display unit 81 has time on the horizontal axis and the evaluation value on the vertical axis. The method for calculating the evaluation value is the same as in the described embodiment. Furthermore, the time series data of the current value used to calculate the evaluation value can be obtained during actual operations such as coating with the robot 1, or during diagnostic actions performed by the robot 1. Diagnostic actions are actions performed for the purpose of diagnosing the state of the robot 1. Moreover, the baseline and prediction line will be discussed later.
[0249] The evaluation value selection unit 82 is a selection box used to select the evaluation value of the curve displayed on the curve display unit 81. The evaluation value selection unit 82 displays I2 monitor, DUTY, PTP, and frequency analysis cumulative value, and the operator can select any one of them.
[0250] I2 is the root mean square (RMS) of the current value. The RMS is also known as the effective value. The RMS of the current value shows the actual effect of the AC component. Therefore, I2 is a value that suppresses fine whisker components. This allows for stable detection of factors such as increased reducer losses (i.e., decreased efficiency) and decreased torque constant associated with motor demagnetization. Additionally, DUTY is the ratio of the motor stall current to I2. PTP is an abbreviation for Peak to Peak, representing the "difference." That is, PTP is the value obtained by subtracting the low-peak current value from the high-peak current value of the current waveform. PTP is frequently used because it is easy to calculate and allows for high-precision state estimation. The cumulative value for frequency analysis is the value described above. Figure 16 as well as Figure 17 In the curve, select and display the cumulative value of frequency analysis as the evaluation value.
[0251] The diagnostic location selection unit 83 is a selection box for selecting the movable axis of the robot 1 that is being diagnosed. The diagnostic location selection unit 83 displays multiple movable axes of the robot 1.
[0252] The prediction date display unit 84 displays the predicted failure date for robot 1. The predicted failure date is obtained based on the baseline and prediction line below.
[0253] The baseline displays the threshold for the evaluation value. The threshold can be set, for example, as the effective value at the initial stage of robot 1's operation, or as 120% of the initial value after robot 1's break-in period. 120% of the initial value after break-in period is one example; it can also be a value other than 120%. The threshold can be determined and registered empirically. Furthermore, the threshold can be changed. Additionally, any initial value can be set based on a single data point, or the threshold can be set as the average of multiple data points.
[0254] The prediction line is calculated by applying the least squares method to previously obtained evaluation values. Furthermore, the date when the prediction line intersects the baseline is the fault prediction date. Operators can visually understand the state of robot 1 by observing the prediction line. By observing the fault prediction date, operators can determine the specific timeframe related to the fault prediction of robot 1.
[0255] If the number of days until the predicted failure date is closer than the preset number of days (e.g., 30 days), a warning can also be displayed on display 80. In addition, in this example, a prediction line is displayed for the selected evaluation value and the movable axis, but it is also possible to calculate the predicted failure date for an unselected combination of evaluation value and the movable axis, and display a warning on display 80 if the conditions are met.
[0256] Next, refer to Figure 17 This explains the change in how the curve is displayed. For example... Figure 17As shown, one end of the horizontal axis of the curve display unit 81 represents the start date of the drawing, and the other end represents the end date. The period from the start date to the end date corresponds to the display period of the evaluation value and the prediction line, etc. In this example, the start date and end date of the drawing can be changed. For example, if the start date is set to the first day based on the current day, and the end date is set to the second day based on the current day, these first and second day numbers can be changed independently. Therefore, the operator can control the evaluation value within their desired range.
[0257] Additionally, in this example, the reference number of days can be changed. The reference number of days refers to the number of days that define the range of assessment values used to calculate the forecast line. For example, with a reference number of 10 days, the forecast line is calculated based on assessment values obtained from 10 days ago to the present. The reference number of days can be changed independently of the first and second days.
[0258] The following explains the case where the reference number of days is changed to a shorter one, becoming reference number 'a'. The slope of the prediction line changes when the reference number of days decreases. Furthermore, as a general trend, the slope of the prediction line becomes steeper when the reference number of days decreases. Figure 17 In the example, the slope of prediction line a is steeper than that of the baseline. As a result of this change in the slope of the prediction line, the fault prediction date varies due to the change in the time it takes for the prediction line to intersect the baseline. By having the function of changing the reference number of days, the fault prediction date can be determined from various perspectives.
[0259] Additionally, multiple partial cumulative values can be used instead of frequency analysis cumulative values. Multiple trend management functions are provided to accommodate multiple evaluation values. Figure 19 The trend management screen is shown in the example corresponding to a portion of the cumulative values. Furthermore, Figure 19 In the text, the part with the same meaning can also be omitted. Figure 16 Explanation of parts with the same function.
[0260] exist Figure 19 The evaluation value selection unit 82A displays I2 monitor, DUTY, PTP, and partial cumulative values. Next to the partial cumulative values, a drop-down menu for selecting a frequency band is displayed. The frequency bands that can be selected using the evaluation value selection unit 82A are 0-10, 10-20, 20-30, 30-40, 40-50, and ALL. ALL represents the sum of all partial cumulative values and is displayed as the same result as the frequency analysis cumulative values. Figure 19 The display method is one example, but it can also be different. For example, a frequency analysis cumulative value can be added to the evaluation value selection unit 82A, and ALL can be omitted from the menu for selecting the frequency band.
[0261] The baseline displays the threshold value for the evaluation. When using... Figure 16The example shown illustrates the case where 120% of the initial value after robot 1's break-in operation is used as the threshold. When using... Figure 19 In the example shown, the threshold can also be changed according to the frequency band. For example, the threshold for the frequency band ALL or 0-10 can be set to 120% of the initial value, and the threshold for the frequency bands 20-30, 30-40, and 40-50 can be set to 200% of the initial value, etc. Furthermore, the prediction line is calculated by applying the least squares method to the reference period portion of the previously obtained evaluation values.
[0262] Furthermore, when calculating the number of days until the fault prediction date, in addition to the assessed value and the movable axis, the fault prediction date is also calculated for any combination including frequency bands. Additionally, in Figure 19 In the example shown, the prediction date display unit 84A displays not only the predicted date but also the comprehensive prediction date. The comprehensive prediction date can be the earliest combination of multiple prediction dates calculated based on cumulative values from multiple components, or it can be the earliest prediction date including other types of evaluation values and the movable axis. Furthermore, if a warning is displayed when the number of days remaining until the comprehensive prediction date is closer than a preset number, the screen can automatically switch to a combination of evaluation values, frequency bands, and movable axes corresponding to the date recorded in the comprehensive prediction date. In this case, by adding a display such as "Conditions for switching to displaying warnings," the operator can easily understand the reason for the screen change.
[0263] Thus, the robot maintenance support device 5a processes time-series data of the drive current values for each movable axis of the robot 1 based on the robot's movements during each data collection unit. The robot maintenance support device 5a performs frequency analysis on each current time-series data to obtain the spectrum, and calculates the sum of portions of the spectrum, i.e., the partial cumulative value, for multiple predetermined frequency bands. Based on multiple partial cumulative values within a predetermined reference period, the robot maintenance support device 5a estimates the future trend of each movable axis. Furthermore, the robot maintenance support device 5a estimates the predicted lifespan of each movable axis based on the predicted time before the partial cumulative value reaches a predetermined threshold. The robot maintenance support device 5a can also issue a warning based on the time (in days) before the predicted lifespan is reached. The warning function is not a necessary component and can be omitted.
[0264] The preferred embodiments of this application have been described above, but the structure can be modified, for example, as follows.
[0265] When using an Ergodic Hidden Markov Model, the number of representative evaluation values in the initial sequence and the decision sequence can differ. For example, the initial sequence may have 30 representative evaluation values, while the decision sequence may have 50. In this case, from day 31 to day 50, during the daily update processing of the decision sequence performed by the sequence processing unit 54, only the latest representative evaluation values are added. After day 51, with the addition of the latest representative evaluation values, the oldest representative evaluation values are deleted. Input to the decision model for the decision sequence can then begin from day 50. If the decision sequence is allowed to be shorter than usual, input to the decision model for the decision sequence can also begin from day 31.
[0266] The decision model based on Gaussian distribution in the second embodiment can also be combined with the fifth and sixth embodiments.
[0267] The DTW algorithm of the third embodiment can also be combined with the fourth, fifth and sixth embodiments.
[0268] The log-likelihood curve displayed on the display unit 63 can also be displayed upside down. For example, by multiplying the log-likelihood output from the conversion unit 61 by -1 and outputting the value with the sign reversed on the display unit 63, it is possible to essentially achieve an upside-down display. This value increases as the similarity between the two sequences decreases, and therefore it is easily and intuitively understood as a value of anomaly.
[0269] The conversion unit 61 can be omitted. That is, the probability output by the decision unit 55 can be compared with the threshold or displayed on the display unit 63 in a form that does not involve logarithmic transformation.
[0270] The robot fault precursor detection device 5 can also be implemented using the same hardware as the controller 90.
[0271] The functions of the components disclosed in this specification can be executed using circuits or processing circuits including general-purpose processors, special-purpose processors, integrated circuits, application-specific integrated circuits (ASICs), conventional circuits, and / or combinations thereof, configured or programmed to perform the disclosed functions. A processor is considered a processing circuit or circuit because it includes transistors or other circuitry. In this disclosure, a circuit, unit, or device is hardware that performs the listed functions, or hardware programmed to perform the listed functions. The hardware can be the hardware disclosed in this specification, or it can be other known hardware programmed or configured to perform the listed functions. In the case of a processor where the hardware is considered a type of circuit, the circuit, device, or unit is a combination of hardware and software, and the software is used in the configuration of the hardware and / or the processor.
Claims
1. A robot maintenance support device for supporting maintenance of a robot, characterized by comprising: a data acquisition section that acquires, for each movable shaft of the robot, current value time series data of a drive current of a motor; an evaluation value calculation section that calculates, for each of the movable shafts, a plurality of types of evaluation values based on the current value time series data acquired by the data acquisition section; a trend prediction section that predicts a future change trend of each of the evaluation values based on the plurality of types of evaluation values calculated by the evaluation value calculation section; a life estimation section that estimates, for each of the movable shafts, a predicted life based on the change trend predicted by the trend prediction section, the predicted life being a predicted time until the evaluation value reaches a predetermined threshold value; and a display processing section that displays, on a display, the predicted life estimated by the life estimation section, and displays, on the display, as a comprehensive predicted life, the predicted life that comes earliest among the plurality of predicted lives.
2. The robot maintenance support device according to claim 1, characterized by comprising a representative evaluation value generation section that generates, based on the current value time series data, a plurality of types of representative evaluation values during each data collection unit, wherein the prediction of the change trend and the estimation of the predicted life are performed using the representative evaluation values as the evaluation values.
3. The robot maintenance support device according to claim 1, characterized in that the evaluation value calculation section calculates the evaluation values of the current value time series data using any two or more of a root mean square, a maximum value, a difference value, a frequency analysis cumulative value, a DTW distance, and a DTW distance average value.
4. The robot maintenance support device according to claim 1, characterized in that the evaluation value calculation section performs frequency analysis on each of the current value time series data to obtain a frequency spectrum, and generates, as the evaluation values, a partial cumulative value that is a partial sum of the frequency spectrum for each of a plurality of predetermined frequency bands.
5. The robot maintenance support device according to claim 1, characterized in that at least any one of the plurality of types of evaluation values is normalized.
6. The robot maintenance support device according to claim 2, characterized in that the data collection unit period is determined so as to be an integral multiple of a change period of an ambient temperature, a work period, or a running period of the robot.
7. The robot maintenance support device according to claim 1, characterized in that the display processing section displays a warning on the display in a case where a number of days from the comprehensive predicted life is closer than a predetermined number of days.
8. The robot maintenance support device according to claim 1, characterized in that the display processing section automatically displays, on the display, a screen that indicates a combination of the evaluation value and the movable shaft of the predicted life that comes earliest among the plurality of predicted lives.
9. The robot maintenance support device according to any one of claims 1 to 8, characterized in that a value of the threshold value is different according to the evaluation value.
10. A robot maintenance support method for supporting maintenance of a robot, characterized by comprising: acquiring, for each movable shaft of the robot, time-series data of current values of drive currents of motors, calculating, for each movable shaft, a plurality of types of evaluation values based on the acquired time-series data of current values, predicting, for each evaluation value, a future change trend based on the calculated plurality of types of evaluation values, estimating, for each movable shaft, a predicted lifetime, which is a predicted time until the evaluation value reaches a predetermined threshold, based on the predicted change trend, displaying the estimated predicted lifetime on a display, and displaying, as a comprehensive predicted lifetime, the predicted lifetime that comes earliest among the plurality of predicted lifetimes on the display.
Citation Information
Patent Citations
Robot maintenance assist device and method
JP2016117148A