Method, system, device and medium for determining the operating status of a robot

By analyzing the robot running data set, judging the operating status of the axis and outputting alarm information, the maintenance cost and production efficiency problems caused by abnormal operation of industrial robots are solved, and timely monitoring and early warning are achieved.

CN113673072BActive Publication Date: 2024-12-10BMW BRILLIANCE AUTOMOTIVE
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202010410632.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-05-15
Publication Date
2024-12-10
Estimated Expiration
2040-05-15

AI Technical Summary

Technical Problem

Industrial robots may have abnormal operation during use, resulting in reduced positioning accuracy, increased maintenance costs and impact on production efficiency, and it is difficult for existing technology to monitor and early warning in a timely manner.

Method used

By obtaining the robot's running data set, analyzing the running data values ​​in the data set, calculating the mean and standard deviations, setting thresholds and judgment rules, judging the operating status of the axis, and outputting alarm information to remind you of potential faults or aging.

Benefits of technology

It realizes timely monitoring of the operating conditions of the robot shaft, reducing potential risks, saving maintenance costs, and reducing the impact on production efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113673072B_ABST
    Figure CN113673072B_ABST
Patent Text Reader

Abstract

A method, a system storage medium and a device for determining the operating status of a robot are disclosed. The method for determining the operating status of a robot comprises: obtaining an operating data set of the robot, wherein the operating data set comprises a first operating data subset {X1, X2, ..., X n}, where X i representing an i-th first operating data value associated with a first axis, i=1, 2, . . . n, where n is an integer greater than or equal to 1; and analyzing the operating data set to determine an operating status of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to robot management, and more particularly to methods, systems, devices, and media for determining the operating status of a robot. Background Art

[0002] With the development of society, industrial robots are widely used in various fields such as electronics, logistics, chemical industry, automobile manufacturing, food, and medical treatment. There are many types of robots in various production environments. According to the different number of axes of the robot, the robot can be divided into single-axis robot, two-axis robot, three-axis robot, four-axis robot, five-axis robot, six-axis robot, and seven-axis robot. The axis here refers to the joint and degree of freedom. Taking the most widely used six-axis robot as an example, the six axes can include rotation (S axis), lower arm (L axis), upper arm (U axis), wrist rotation (R axis), wrist swing (B axis), and wrist rotation (T axis). Having multiple axes can make the robot more flexible, with a larger load and higher positioning accuracy.

[0003] In actual operation, the robot may experience various abnormalities, including failure, aging, and damage, due to wear and tear, excessive load, or other unexpected situations. This will cause the positioning accuracy of each joint of the robot to deteriorate, affect the overall motion accuracy of the robot, and even have a serious impact on production quality. In addition, a large number of robots are usually used in production environments. If the operation status of the robot cannot be controlled in time, when potential risks occur, it will lead to increased maintenance costs and affect production efficiency. Summary of the invention

[0004] According to a first aspect of the present disclosure, a method for determining an operating status of a robot is provided, comprising obtaining an operating data set of the robot, wherein the operating data set comprises a first operating data subset {X1, X2, ..., X n}, where X i Representing an i-th first operating data value associated with a first axis, i=1, 2, . . . n, where n is an integer greater than or equal to 1; and analyzing the operating data set to determine an operating status of the robot.

[0005] According to some embodiments of the present disclosure, the step of analyzing the operation data set to determine the operation status of the robot further comprises: according to the first operation data subset {X1, X2, ..., X n}, calculate the average value of the first running data value and standard deviation s, where the standard deviation s is calculated according to formula (1):

[0006]

[0007] According to formula (2) and formula (3), the upper limit judgment value C is calculated mku and the lower limit judgment value C mkl :

[0008]

[0009]

[0010] Where USL is the upper specification limit, LSL is the lower specification limit; the first judgment value C is calculated according to formula (4) and formula (5): mk and the second judgment value C m :

[0011] C mk =min{C mku ,C mkl} (4)

[0012]

[0013] The first judgment value C mk and the second judgment value C m The first threshold value D1 and the second threshold value D2 are compared, and the first determination value C mk and the second judgment value C m At the same time, C mk ≥D1 and C m ≥D2, confirm that the primary axis is in good condition.

[0014] According to some embodiments of the present disclosure, the first threshold D1 and the second threshold D2 are respectively based on a first determination value C calculated based on a historical first operating data value associated with the first axis in a good condition. mk and the second judgment value C m To be pre-set.

[0015] According to some embodiments of the present disclosure, the method further includes responding to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m ≥D2, determine whether the first operating data subset has one of the following situations: there are a first number of consecutive first operating data values ​​greater than the target value, and there are a second number of consecutive first operating data values ​​less than the target value; if so, determine that the operating status of the first axis is abnormal; in response to determining that the operating status of the first axis is abnormal, output an alarm message.

[0016] According to some embodiments of the present disclosure, the target value is predetermined based on an average value of historical first operating data values ​​associated with the first axis in a good condition.

[0017] According to some embodiments of the present disclosure, the method further includes responding to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m ≥D2, determine whether the first operating data subset has one of the following situations: there is a third number of consecutive first operating data values ​​that increase continuously, there is a fourth number of consecutive first operating data values ​​that decrease continuously, there is a fifth number of consecutive group average values ​​that increase continuously, and there is a sixth number of consecutive group average values ​​that decrease continuously, wherein each consecutive predetermined number of first operating data values ​​is a group, and the average value of the first operating data values ​​in each group is the group average value of the group; if so, determine that the operating condition of the first axis is abnormal; and in response to determining that the operating condition of the first axis is abnormal, output an alarm message, wherein the alarm message indicates aging of the first axis.

[0018] According to some embodiments of the present disclosure, the method further includes responding to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m ≥D2, determine whether the following situation exists in the first operating data subset: the ratio of the difference between the group average values ​​of two consecutive groups of first operating data values ​​to the target value is greater than a predetermined ratio of the predetermined deviation value, wherein each consecutive predetermined number of first operating data values ​​is a group, and the average value of the first operating data values ​​in each group is the group average value of the group; if so, determine that the operating condition of the first axis is abnormal; and in response to determining that the operating condition of the first axis is abnormal, output an alarm message, wherein the alarm message indicates that a fault has occurred in the first axis.

[0019] According to some embodiments of the present disclosure, the target value is predetermined based on an average value of historical first operating data values ​​associated with the first axis in a good condition.

[0020] According to some embodiments of the present disclosure, the predetermined deviation value is predetermined according to quality control requirements.

[0021] According to some embodiments of the present disclosure, the method further includes responding to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m≥D2, determine whether one of the following situations exists in the first operating data subset: there exists a group of first operating data values ​​whose group average value is greater than USL-3s, and there exists a group of first operating data values ​​whose group average value is less than LSL+3s, wherein each consecutive predetermined number of first operating data values ​​is a group, and the average value of the first operating data values ​​in each group is the group average value of the group; if so, determine that the operating condition of the first axis is abnormal; and in response to determining that the operating condition of the first axis is abnormal, output alarm information, wherein the alarm information indicates that a fault has occurred in the first axis.

[0022] According to some embodiments of the present disclosure, the first operating data subset is an angular velocity data set or a torque data set; wherein the angular velocity data set includes angular velocity values ​​associated with the first axis; wherein the torque data set includes torque values ​​associated with the first axis.

[0023] According to some embodiments of the present disclosure, the first operating data value is collected at predetermined time intervals within a predetermined time period.

[0024] According to another aspect of the present disclosure, a computer system is provided, including: a processor, and a memory coupled to the processor, wherein the memory stores computer-readable program instructions, and when the instructions are executed by the processor, the method described above is performed.

[0025] According to yet another aspect of the present disclosure, a computer-readable storage medium is provided, on which computer-readable program instructions are stored. When the instructions are executed by the processor, the method described above is performed.

[0026] According to yet another aspect of the present disclosure, there is provided an apparatus for determining an operating status of a robot, comprising means for implementing the operations of the method described above.

[0027] Other features and advantages of the present disclosure will become apparent from the following description with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the present disclosure and, together with the description, serve to explain the principles of the present disclosure without limitation. In the various figures, like reference numerals are used to represent like items.

[0029] Figure 1 FIG. 2 is a diagram showing a system environment for implementing an embodiment of the present disclosure.

[0030] Figure 2 is a flowchart illustrating a method for determining an operating status of a robot according to an embodiment of the present disclosure.

[0031] Figure 3 is a flowchart illustrating a method for determining an operating status of a robot according to another embodiment of the present disclosure.

[0032] Figure 4 FIG. 1 is a schematic diagram showing a general hardware environment in which a system according to an embodiment of the present disclosure may be implemented. DETAILED DESCRIPTION

[0033] In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the described exemplary embodiments. However, it is clear to those skilled in the art that the described embodiments may be practiced without some or all of these specific details. In the described exemplary embodiments, well-known structures or processing steps are not described in detail in order to avoid unnecessarily obscuring the concepts of the present disclosure.

[0034] The blocks in each block diagram shown below can be implemented by hardware, software, firmware or any combination thereof to implement the principles of the present disclosure. It should be understood by those skilled in the art that the blocks described in each block diagram can be combined or divided into sub-blocks to implement the principles of the present disclosure.

[0035] The steps of the method presented in this disclosure are intended to be illustrative. In certain embodiments, the method can be completed with one or more additional steps not described and / or completed without the one or more steps discussed. In addition, the order in which the steps of the method are illustrated and described is not intended to be restrictive.

[0036] Embodiments of the present disclosure relate to methods, systems, devices and media for determining the operating status of a robot. The method of the present disclosure includes obtaining an operating data set (e.g., an angular velocity data set or a torque data set) of the robot, wherein the operating data set includes a first operating data subset associated with a first axis of the robot (e.g., a set of angular velocity values ​​of the first axis), and the value in the first operating data subset represents a first operating data value associated with the first axis (e.g., the angular velocity value of the first axis); and analyzing the operating data set to determine the operating status of the robot. The method of the present disclosure analyzes the first operating data value contained in the first operating data subset according to one or more determination rules and one or more pre-set thresholds to determine whether there is an abnormality (e.g., aging, failure, etc.) in the operating status of the first axis. The method of the present disclosure outputs an alarm message in response to determining that the operating status of the first axis is abnormal. In some embodiments, the alarm message indicates that the first axis is aged or indicates that the first axis has failed, so that the user can be reminded of the potential risk of failure in a timely manner.

[0037] The embodiments of the present disclosure are capable of timely monitoring the operating data of the robot, determining the operating status of the robot based on the characteristics of the operating data set of the robot, and determining whether there are any abnormalities in the operating status of the robot's axes (for example, aging, failure, etc.), thereby reducing potential risks, saving maintenance costs and reducing the impact on production efficiency.

[0038] Figure 1 1 is a diagram showing a system environment 100 for implementing the embodiments of the present disclosure. The system environment 100 may involve three parts: a production network part 110 , a cloud service platform part 120 , and a user part 130 .

[0039] The production network part may include at least one robot 101 (shown in the figure as robots 101a, 101b, and 101c, collectively referred to as robot 101 for convenience below) and at least one Internet of Things (IoT) edge device 102 (shown in the figure as IoT edge devices 102a and 102b, collectively referred to as IoT edge device 102 for convenience below). The robot 101 is, for example, an ABB robot having at least a first axis. In the disclosed embodiment, the robot 101 is equipped with sensors, such as angular velocity sensors, torque sensors, etc., which can be used to collect corresponding operating data of each axis of the robot. In the disclosed embodiment, the robot 101 is also configured with a network service to transmit data through the network. In the disclosed embodiment, the IoT edge device 102 is deployed close to the robot 101, making it easier to obtain and transmit data from the robot 101. The IoT edge device 102 can receive data from the robot 101 through a Hypertext Transfer Protocol (HTTP) interface. The IoT edge device 102 can also perform preliminary calculations and logical processing on the data. The IoT edge device 102 can also transmit data to the cloud service platform part 120, such as the Azure cloud, via the Message Queuing Telemetry Transport (MQTT) protocol.

[0040] The cloud service platform part 120 may include an IoT Hub 103, a cloud service 104 (such as Azure cloud service, etc.), and an application 108. The cloud service 104 may include a virtual machine 105 (Virtual Machine, VM) and a database 106 (such as a Structured Query Language (SQL) database) running on the cloud service 104, and may also include a chart generation tool 107 (such as Power BI Embeded). The data from the IoT edge device 102 is first sent to the IoT Hub 103, and then transmitted to the database 106 and stored in the database 106. The application 108 runs on the VM 105 and obtains data from the database 106 for presentation, wherein the chart generation tool 107 can generate a chart based on the data in the database 106 and present the chart to the interface of the application 108. In the embodiment of the present disclosure, the application 108 can also analyze and process the acquired data to determine the operating status of the robot 101 and present it to the user 130.

[0041] The user 130 can learn and monitor the operating status of the robot 101 through the application 108. The user 130 may include, but is not limited to, the owner and maintenance personnel of the robot 101.

[0042] Figure 2 is a flow chart illustrating a method 200 for determining an operating condition of a robot according to an embodiment of the present disclosure.

[0043] like Figure 2 As shown, the method 200 comprises step S201, in which a running data set of a robot is obtained, the running data set comprising a first running data subset {X1, X2, ..., X n}, where X i represents the i-th first operating data value associated with the first axis, i=1, 2, ..., n, and n is an integer greater than or equal to 1.

[0044] In some embodiments, the first running data subset {X1, X2, ..., X n} is an angular velocity data set, the angular velocity data set including angular velocity values ​​associated with the first axis. In some embodiments, the first operating data subset {X1, X2, ..., X n} is a torque data set, which includes torque values ​​associated with the first axis. Angular velocity and torque are typical physical quantities that are easy to obtain and can be used to better reflect the status of the robot's axis. In some embodiments, other operating data values ​​can also be selected as needed.

[0045] In some embodiments, the first operation data value is collected at predetermined time intervals within a predetermined time period. In some embodiments, the first operation data value is collected by a corresponding sensor. Typically, hundreds to thousands of discrete data points can be collected. It will be appreciated by those skilled in the art that the number of the collected first operation data values ​​is not limited.

[0046] In some embodiments, for example, the first subset of operating data may be a set of angular velocity values ​​of the first axis, the set of angular velocity values ​​may include 500 angular velocity values ​​acquired by an angular velocity sensor associated with the first axis every second within a time period of 500 seconds, and the unit of the angular velocity value is radians per second. In some other embodiments, for example, the first subset of operating data may be a set of torque values ​​of the first axis, the set of torque values ​​may include 1000 torque values ​​acquired by a torque sensor associated with the first axis every second within a time period of 1000 seconds, and the unit of the torque value is Newton meter.

[0047] The method 200 further comprises step S202 , in which the operation data set is analyzed to determine the operation status of the robot.

[0048] In some embodiments, the operating data set can be analyzed based on one or more determination rules and one or more pre-set thresholds. More specifically, the first operating data value contained in the first operating data subset can be analyzed to determine whether there is any abnormality in the operating condition of the first axis, such as whether there is aging, failure, etc.

[0049] Figure 3 is a flow chart illustrating a method 300 for determining an operating status of a robot according to another embodiment of the present disclosure.

[0050] like Figure 3 As shown, the method 300 comprises step S301, in which a running data set of a robot is obtained, the running data set comprising a first running data subset {X1, X2, ..., X n}, where X i represents the i-th first operation data value associated with the first axis, i=1, 2, ...n, and n is an integer greater than or equal to 1. This step is the same as step S201 and will not be described in detail herein.

[0051] The method 300 further comprises step S302, in which, according to the first operation data subset {X1, X2, ..., X n}, calculate the average value of the first running data value and standard deviation s, where the standard deviation s is calculated according to formula (1):

[0052]

[0053] According to formula (2) and formula (3), the upper limit judgment value C is calculated mku and the lower limit judgment value C mkl :

[0054]

[0055]

[0056] Where USL is the upper specification limit, LSL is the lower specification limit; the first judgment value C is calculated according to formula (4) and formula (5): mk and the second judgment value C m :

[0057] C mk =min{C mku ,C mkl} (4)

[0058]

[0059] In some embodiments, when the first operating data value is the angular velocity value of the first axis, USL is the upper limit of the specification of the angular velocity of the first axis specified when the robot is developed, and LSL is the lower limit of the specification of the angular velocity of the first axis specified when the robot is developed. mk and the second judgment value C m Characterizes the extent to which the first running data value tends to the upper specification limit USL and the lower specification limit LSL.

[0060] The method 300 further comprises step S303, in which the first determination value C mk and the second judgment value C m The first threshold value D1 and the second threshold value D2 are compared to determine the first judgment value C mk and the second judgment value C m Does it satisfy C? mk ≥D1 and C m ≥D2.

[0061] If yes, the first judgment value C mk and the second judgment value C m At the same time, C mk ≥D1 and C m ≥D2, then proceed to step S304. In step S304, it is determined that the first axis is in a good condition.

[0062] If not, the first judgment value C mk and the second judgment value C m Not satisfying C at the same time mk≥D1 and C m ≥D2, then proceed to step S305. Step S305 will be described in detail later.

[0063] The first running data value under good conditions can be normally distributed and tend to the mean value, the standard deviation may be small, and it is much different from the upper specification limit USL and the lower specification limit LSL, so the first judgment value C mk and the second judgment value C m Relatively large. Using the first judgment value C mk and the second judgment value C m Reasonable setting of the first threshold value D1 and the second threshold value D2 can effectively determine whether the first axis is in a good condition.

[0064] In some embodiments, the first threshold D1 and the second threshold D2 are respectively based on a first determination value C calculated according to a historical first operating data value associated with a first shaft in a good condition. mk and the second judgment value C m To be pre-set.

[0065] For example, taking the first operation data value as the angular velocity value of the first axis as an example, for a predetermined period in the past (e.g., within the past year), the angular velocity values ​​associated with the first axis when the first axis is in a good condition can be obtained, and based on these angular velocity values, the first determination value C is calculated according to formula (4) and formula (5). mk and the second judgment value C m , as the first threshold and the second threshold. Theoretically, the more data collected, the more accurate the first judgment value C mk and the second judgment value C m The more conducive it is to make the judgment result in step S303 accurately reflect the operating status of the first axis of the robot.

[0066] In other embodiments, for multiple predetermined time periods in the past (e.g., each month in the past year), multiple groups of historical angular velocity values ​​associated with the first axis in a good condition may be collected respectively, and for each group of historical angular velocity values, the corresponding first determination value C may be calculated respectively according to formula (4) and formula (5). mk and the second judgment value C m , and obtain multiple first judgment values ​​C mk and a plurality of second determination values ​​C m Based on these multiple first judgment values ​​C mk and a plurality of second determination values ​​C m For example, the first judgment value C is selected to determine the first threshold and the second threshold. mk The minimum value among them is D1, and the multiple second judgment values ​​C mThe minimum value among them is D2. Or, for example, select a value greater than the first judgment value C mk The value that is lower by a certain percentage (for example, 5%) than the minimum value in is set as D1, and the value of D2 is set similarly.

[0067] In some embodiments, the first threshold D1 may be 1.5, and the second threshold D2 may be 2.

[0068] The method 300 further includes step S305, in which, in response to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m ≥D2, determine whether the first running data subset has one of the following situations I)-V).

[0069] If none of the situations in I)-V) exists, then proceed to step S304. In step S304, it is determined that the first axis is in a good condition.

[0070] If one of the situations in I)-V) exists, then proceed to step S306 and step S307. In step S306, it is determined that the operating condition of the first axis is abnormal. In step S307, an alarm message is output. The following will describe steps S305-S307 in detail according to each situation in I)-V).

[0071] I) There are a first number of consecutive first operation data values ​​greater than the target value, and there are a second number of consecutive first operation data values ​​less than the target value. That is, there are m1 consecutive first operation data values ​​(m1 is a positive integer less than n) Each value is greater than the target value; or there are m2 (m2 is a positive integer less than n) consecutive first running data values Each value is less than the target value.

[0072] In some embodiments, the target value is predetermined based on an average of historical first operating data values ​​associated with the first axis in good condition. In some embodiments, the first quantity is predetermined based on experience or demand. In some embodiments, the second quantity is predetermined based on experience or demand.

[0073] If one of the situations in 1) exists, then proceed to steps S306-S307. In step S306, it is determined that the operating condition of the first axis is abnormal. In step S307, in response to determining that the operating condition of the first axis is abnormal, an alarm message is output.

[0074] In some embodiments, for example, if there are 50 consecutive first axis angular velocity values ​​greater than the target value, the operation of the first axis is determined to be abnormal. Or, for example, if there are 50 consecutive first axis angular velocity values ​​less than the target value, the operation of the first axis is determined to be abnormal.

[0075] The target value may be an average value obtained based on the historical angular velocity values ​​of the first axis in good condition (e.g., the angular velocity values ​​of the first axis in the past few months). The inventors have observed that, ideally, the angular velocity value of the first axis should fluctuate within a certain range of the target value (ideal value). If it is continuously greater than the average value or continuously less than the average value, it indicates that there may be a certain deviation in the degree of freedom achieved by the first axis. Therefore, the average value of the historical angular velocity values ​​of the first axis in good condition is used as the target value as a reference for judgment, which can accurately reflect whether the operating condition of the first axis is ideal.

[0076] By using the characteristics of a certain number of first operating data values ​​within a certain period of time, it is possible to effectively determine whether the first operating data value deviates from a predetermined target value within a certain period of time, thereby determining the operating status of the first axis.

[0077] II) There are a third number of consecutive first operation data values ​​that increase continuously, and there are a fourth number of consecutive first operation data values ​​that decrease continuously. That is, there are m3 consecutive first operation data values ​​(m3 is a positive integer less than n). Or there are m4 (m4 is a positive integer less than n) consecutive first running data values

[0078] In some embodiments, the third number is predetermined based on experience or demand. In some embodiments, the fourth number is predetermined based on experience or demand.

[0079] If one of the situations in II) exists, then proceed to steps S306-S307. In step S306, it is determined that the operating condition of the first axis is abnormal. In step S307, in response to determining that the operating condition of the first axis is abnormal, an alarm message is output. In this case, the alarm message may indicate that the first axis is aged.

[0080] In some embodiments, for example, if there are 50 consecutive first axis angular velocity values ​​that continue to decrease, it may indicate that the first axis is at risk of aging. Alternatively, if there are 50 consecutive first axis angular velocity values ​​that continue to increase, it may indicate that the first axis is at risk of aging.

[0081] III) There are a fifth number of consecutive group average values ​​that increase continuously, and there are a sixth number of consecutive group average values ​​that decrease continuously, wherein each consecutive predetermined number of first operation data values ​​is a group, and the average value of the first operation data values ​​in each group is the group average value of the group. That is, each consecutive number of l (l is a positive integer less than n) of first operation data values ​​is a group, recorded as Y j , Y j ={X jl-l+1 ,X jl-l+2 ,...,X jl}; Y j The group mean is X jl-l+1 ,X jl-l+2 ,...,X jl The average value of There are m5 (m5 is a positive integer less than n) consecutive group averages Or there are m6 (m6 is a positive integer less than n) consecutive group averages

[0082] In some embodiments, the fifth number is predetermined based on experience or demand. In some embodiments, the sixth number is predetermined based on experience or demand.

[0083] If one of the situations in III) exists, then proceed to steps S306-S307. In step S306, it is determined that the operating condition of the first axis is abnormal. In step S307, in response to determining that the operating condition of the first axis is abnormal, an alarm message is output. In this case, the alarm message may indicate that the first axis is aged.

[0084] In some embodiments, for example, when the first operation data subset is 500 angular velocity values ​​of the first axis, the first operation data subset is a group of samples according to each of 5 consecutive angular velocity values, and the first operation data subset includes a total of 100 groups of samples (each group of samples has 5 consecutive angular velocity values). If the average value of the angular velocity in 50 consecutive groups of samples continues to increase, it may indicate that the first axis is at risk of aging. Alternatively, if the average value of the angular velocity in 60 consecutive groups of samples continues to decrease, it may indicate that the first axis is at risk of aging.

[0085] Case III) is similar to case II), and a group of first operation data values ​​or a single first operation data value is used as a unit to determine whether the operation status of the first axis is abnormal by determining whether the first operation data value continues to increase or decrease. The operation status of the first axis can be effectively determined by the change characteristics of a certain number of first operation data values ​​within a certain period of time, wherein case III) can further filter out the influence of singular point values ​​on the determination result.

[0086] IV) The ratio of the difference between the group average values ​​of two consecutive groups of first operation data values ​​to the target value is greater than a predetermined ratio of the predetermined deviation value, wherein each consecutive predetermined number of first operation data values ​​is a group, and the average value of the first operation data values ​​in each group is the group average value of the group. That is, there is

[0087]

[0088] Wherein, each consecutive number of l (l is a positive integer less than n) of first running data values ​​is a group, denoted as Y j , Y j ={X jl-l+1 ,X jl-l+2 ,...,X jl}; Y j The group mean is X jl-l+1 ,X jl-l+2 ,...,X jl The average value of Y j and Y j+1 are any two consecutive groups in the first run data subset, i.e., Y j ={X jl-l+1 ,X jl-l+2 ,...,X jl},Y j+1 ={X jl+1 ,X jl+2 ,...,X jl+l}; wherein T represents the target value, Class represents the predetermined deviation value, and p represents the predetermined ratio.

[0089] In some embodiments, as described above, the target value may be an average of historical first operating data values ​​associated with the first axis in good condition. In some embodiments, the predetermined deviation value is predetermined based on quality control requirements. In some embodiments, the predetermined ratio is predetermined based on experience or requirements.

[0090] If the situation in IV) exists, then proceed to steps S306-S307. In step S306, it is determined that the operating condition of the first axis is abnormal. In step S307, in response to determining that the operating condition of the first axis is abnormal, an alarm message is output. In this case, the alarm message indicates that the first axis has a fault.

[0091] In some embodiments, for example, when the first operating data subset is 500 angular velocity values ​​of the first axis, the first operating data subset is divided into a group of samples according to every 10 consecutive angular velocity values, and the first operating data subset includes a total of 50 groups of samples (each group of samples has 10 consecutive angular velocity values). If the average value of the angular velocity in two consecutive groups of samples satisfies inequality (6), it is determined that the operating condition of the first axis is abnormal. The target value can be predetermined based on the average value of the historical angular velocity values ​​of the first axis under good conditions (for example, the angular velocity values ​​of the first axis in the past few months). The predetermined deviation value is related to the quality control requirements. For example, the predetermined deviation value can be determined to be 7%, 15% and 20% according to the quality control requirements (level 1, level 2 and level 3). When it is the first level quality control requirement, the Class is determined to be 7%. The predetermined ratio p is a percentage value, for example, it can be 40%. For example, when the quality control requirement is level 1, if there is It is determined that the operation status of the first axis is abnormal. Those skilled in the art can understand that the deviation value and the value of p are not limited thereto and can be set as required.

[0092] By using the increase ratio or decrease ratio of a certain number of first operation data values ​​in two consecutive time periods and reasonable quality control requirements, it is possible to effectively determine whether the operation status of the first axis meets the current quality control requirements.

[0093] V) There exists a group of first operation data values ​​whose group average value is greater than USL-3s, and there exists a group of first operation data values ​​whose group average value is less than LSL+3s, wherein each consecutive predetermined number of first operation data values ​​is a group, and the average value of the first operation data values ​​in each group is the group average value of the group. That is, each consecutive number of l (l is a positive integer less than n) of first operation data values ​​is a group, which is recorded as Y j , Y j ={X jl-l+1 ,X jl-l+2 ,...,X jl}; Y j The group mean is X jl-l+1 ,X jl-l+2 ,...,X jl The average value of There exists any set of Y j The average Or there exists any set of Y j The average

[0094] If the situation in V) exists, then proceed to steps S306-S307. In step S306, it is determined that the operating condition of the first axis is abnormal. In step S307, in response to determining that the operating condition of the first axis is abnormal, an alarm message is output. In this case, the alarm message may indicate that the first axis has a fault.

[0095] In some embodiments, for example, when the first operation data subset is 500 angular velocity values ​​of the first axis, the first operation data subset is a group of samples according to each of 10 consecutive angular velocity values, and the first operation data subset includes 50 groups of samples (each group of samples has 10 consecutive angular velocity values). If the average value of the angular velocity in any group of samples is greater than USL-3s, or if the average value of the angular velocity in any group of samples is less than LSL+3s, it is determined that the operation status of the first axis is abnormal.

[0096] By determining whether an average value of a certain number of first operating data values ​​within a certain period of time is far away from an upper specification limit or a lower specification limit, the operating condition of the first axis can be effectively determined.

[0097] Figure 4 FIG. 1 is a schematic diagram showing a general hardware environment in which a system according to an embodiment of the present disclosure may be implemented.

[0098] Reference now Figure 4 , a schematic diagram of an example of a computing node 400 is shown. Computing node 400 is only one example of a suitable computing node and is not intended to imply any limitation on the scope of use or functionality of the embodiments described herein. Regardless, computing node 400 is capable of implementing and / or performing any of the functions set forth above.

[0099] In computing node 400, there is a computer system / server 4012, which can operate with numerous other general or special computing system environments or configurations. Examples of well-known computing systems, environments, and / or configurations that can be suitable for use with computer system / server 4012 include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, small computer systems, large computer systems, and distributed cloud computing technology environments including any of the above systems or devices, etc.

[0100] Computer system / server 4012 can be described in the general context of computer system executable instructions (such as program modules) executed by a computer system. Generally speaking, program modules can include routines, programs, objects, components, logic, data structures, etc. that perform specific tasks or implement specific abstract data types. Computer system / server 4012 can be practiced in a distributed cloud computing environment, where tasks are performed by remote processing devices linked through a communication network. In a distributed cloud computing environment, program modules can be located on both local or remote computer system storage media including memory storage devices.

[0101] like Figure 4 As shown, the computer system / server 4012 in the computing node 400 is shown in the form of a general computing device. The components of the computer system / server 4012 may include, but are not limited to: one or more processors or processing units 4016, a system memory 4028, and a bus 4018 that couples different system components including the system memory 4028 to the processing unit 4016.

[0102] Bus 4018 represents any one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, or a local bus using any of a variety of bus architectures. By way of example and not limitation, these architectures include, but are not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MAC) bus, an Enhanced ISA bus, a Video Electronics Standards Association (VESA) local bus, a Peripheral Component Interconnect (PCI) bus, a Peripheral Component Interconnect Express (PCIe), and an Advanced Microcontroller Bus Architecture (AMBA).

[0103] Computer system / server 4012 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by computer system / server 4012, including volatile and nonvolatile media, removable and non-removable media.

[0104] System memory 4028 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 4030 and / or cache memory 4032. Computer system / server 4012 may also include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, a storage system 4034 may be provided for reading from a non-removable non-volatile magnetic medium (not shown, and commonly referred to as a "hard drive") and writing to a non-removable non-volatile magnetic medium. Although not shown, a disk drive for reading from a removable non-volatile disk (e.g., a "floppy disk") and writing to a removable non-volatile disk, and an optical drive for reading from a removable non-volatile optical disk (such as a CD-ROM, DVD-ROM, or other optical medium) and writing to a removable non-volatile optical disk may be provided. In these cases, each may be connected to bus 4018 via one or more data medium interfaces. As will be further depicted and described below, memory 4028 may include at least one program product having a set (eg, at least one) of program modules configured to perform the functions of embodiments of the present disclosure.

[0105] By way of example and not limitation, a program / utility 4040 having a set (at least one) of program modules 4042 and an operating system, one or more application programs, other program modules, and program data may be stored in memory 4028. Each of the operating system, one or more application programs, other program modules, and program data, or some combination thereof, may include an implementation of a network environment. Program modules 4042 generally perform functions and / or methods as described herein in the embodiments.

[0106] The computer system / server 4012 may also communicate with one or more external devices 4014 (such as a keyboard, pointing device, display 4024, etc.), one or more devices that enable a user to interact with the computer system / server 4012, and / or any device that enables the computer system / server 4012 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may occur via an input / output (I / O) interface 4022. Also, the computer system / server 4012 may communicate with one or more networks (such as a local area network (LAN), a general wide area network (WAN), and / or a public network (e.g., the Internet)) via a network adapter 4020. As depicted, the network adapter 4020 communicates with other components of the computer system / server 4012 via a bus 4018. It should be understood that, although not shown, other hardware and / or software components may be used in conjunction with the computer system / server 4012. Examples include, but are not limited to, microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.

[0107] The present disclosure may be implemented as a system, method, and / or computer program product. The computer program product may include (one or more) computer-readable storage media having computer-readable program instructions thereon for causing a processor to execute aspects of the present disclosure.

[0108] Computer readable storage medium can be a tangible device that can keep and store instructions for being used by instruction execution device.Computer readable storage medium can be, for example, (but not limited to) electronic storage device, magnetic storage device, optical storage device, electromagnetic storage device, semiconductor storage device or any suitable combination of the above.The non-exhaustive list of more specific examples of computer readable storage medium includes the following: portable computer disk, hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanical encoding device (such as punch card or convex structure in groove with instruction stored thereon) and any suitable combination of the above.Computer readable storage medium as used herein is not interpreted as instantaneous signal itself, such as radio wave or other free propagating electromagnetic wave, electromagnetic wave propagated by waveguide or other transmission medium (for example, light pulse by optical fiber cable) or electrical signal transmitted by wire.

[0109] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network (e.g., the Internet, a local area network, a wide area network, and / or a wireless network). The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards these computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.

[0110] The computer-readable program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​(such as Smalltalk, C++, etc.) and conventional procedural programming languages ​​(such as "C" programming languages ​​or similar programming languages). The computer-readable program instructions may be executed completely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network (including a local area network (LAN) or a wide area network (WAN)), or may be connected to an external computer (such as using an Internet service provider via the Internet). In some embodiments, an electronic circuit may be customized by utilizing the state information of a computer-readable program instruction, including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), and the electronic circuit may execute a computer-readable program instruction to perform aspects of the present disclosure.

[0111] Aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, devices (systems) and computer program products according to embodiments of the present disclosure. It will be understood that each box in the flowchart and / or block diagram and the combination of boxes in the flowchart and / or block diagram can be implemented by computer-readable program instructions.

[0112] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device that implements the functions / behaviors specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these computer-readable program instructions can guide the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium in which the instructions are stored includes a manufactured product, which includes instructions for implementing aspects of the functions / behaviors specified in one or more boxes in the flowchart and / or block diagram.

[0113] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, so that a series of operating steps are performed on the computer, other programmable apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable apparatus, or other device implement the functions / behaviors specified in one or more boxes in the flowchart and / or block diagram.

[0114] The flow chart and block diagram in the figure show the possible architecture, function and operation of the system, method and computer program product according to each embodiment of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a part of a module, segment or instruction, and a part of the module, segment or instruction contains one or more executable instructions for realizing the specified (one or more) logical functions. In some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the figure. For example, depending on the functions involved, two continuous boxes can actually be executed substantially in parallel, or these boxes can sometimes be executed in the opposite order. It will also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be implemented by a system based on special hardware that performs a specified function or behavior or performs a combination of special hardware and computer instructions.

[0115] It should also be understood by those skilled in the art that the various operations illustrated in order in the embodiments of the present disclosure are not necessarily performed in the illustrated order. Those skilled in the art may adjust the order of the operations as needed. Those skilled in the art may also add more operations or omit some of the operations as needed.

[0116] The description of various embodiments of the present disclosure has been given for the purpose of illustration, but is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terms used herein are selected to best explain the principles of the embodiments, practical applications, or technical improvements over technologies found in the marketplace, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.

Claims

1. A method for determining the operating status of a robot, comprising: Obtain an operation data set of the robot, the operation data set comprising a first operation data subset {X1, X2, . . . , X n }, where X i represents the i-th first operation data value associated with the first axis, i=1, 2, ... n, and n is an integer greater than or equal to 1; and analyzing the operating data set to determine the operating status of the robot, The step of analyzing the operating data set to determine the operating status of the robot further comprises: According to the first operation data subset {X1, X2, . . . , X n }, calculate the average value of the first running data value and standard deviation s, where the standard deviation s is calculated according to formula (1): According to formula (2) and formula (3), the upper limit judgment value C is calculated mku and the lower limit judgment value C mkl : Where USL is the upper specification limit and LSL is the lower specification limit; The first determination value C is calculated according to formula (4) and formula (5): mk and the second judgment value C m : C mk =min{C mku ,C mkl } (4) The first judgment value C mk and the second judgment value C m Compare with a first threshold value D1 and a second threshold value D2; In response to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m ≥D2, determine whether the first operation data subset has the following conditions: There is a ratio of a difference between the group average values ​​of two consecutive groups of first operation data values ​​to the target value that is greater than a predetermined ratio of a predetermined deviation value, wherein each consecutive predetermined number of first operation data values ​​is a group, and the average value of the first operation data values ​​in each group is the group average value of the group, wherein the predetermined deviation value is predetermined according to quality control requirements, different quality control requirements are associated with different predetermined deviation values, and a higher level of quality control requirements has a lower associated predetermined deviation value; If present, determining that the operating condition of the first axis is abnormal; and In response to determining that the operating condition of the first shaft is abnormal, alarm information is output, the alarm information indicating that a failure has occurred in the first shaft.

2. The method of claim 1, further comprising: In response to the first determination value C mk and the second judgment value C m At the same time, C mk ≥D1 and C m ≥D2, confirm that the primary axis is in good condition.

3. The method of claim 1, wherein: The first threshold value D1 and the second threshold value D2 are respectively based on a first determination value C calculated based on a historical first operation data value associated with the first axis in a good condition. mk and the second judgment value C m To be pre-set.

4. The method of claim 1, further comprising: In response to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m ≥D2, determine whether the first running data subset has one of the following conditions: There are a first number of consecutive first running data values ​​greater than the target value, and There is a second number of consecutive first operating data values ​​that are less than the target value; If so, determining that the operating condition of the first axis is abnormal; In response to determining that the operating condition of the first axis is abnormal, an alarm message is output.

5. The method of claim 4, wherein: The target value is predetermined based on an average of historical first operating data values ​​associated with the first shaft under good conditions.

6. The method of claim 1, further comprising: In response to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m ≥D2, determine whether the first running data subset has one of the following conditions: There are a third number of consecutive first running data values ​​that increase consecutively, there are a fourth number of consecutive first running data values ​​that decrease successively, There is a fifth consecutive number of group means that increase continuously, and There are a sixth number of consecutive group average values ​​that decrease successively, wherein each consecutive predetermined number of first operating data values ​​is a group, and the average value of the first operating data values ​​in each group is the group average value of the group; If so, determining that the operating condition of the first axis is abnormal; and In response to determining that the operating condition of the first shaft is abnormal, alarm information is output, the alarm information indicating that the first shaft is aged.

7. The method of claim 1, wherein: The target value is predetermined based on an average of historical first operating data values ​​associated with the first shaft under good conditions.

8. The method of claim 1, further comprising: In response to the first determination value C mk and the second judgment value C m Not satisfying C at the same time mk ≥D1 and C m ≥D2, determine whether the first running data subset has one of the following conditions: There exists a group mean of a set of first run data values ​​that is greater than USL-3s, and There is a group average value of a group of first operating data values ​​that is less than LSL+3s, wherein each predetermined number of consecutive first operating data values ​​is a group, and the average value of the first operating data values ​​in each group is the group average value of the group; If so, determining that the operating condition of the first axis is abnormal; and In response to determining that the operating condition of the first shaft is abnormal, alarm information is output, the alarm information indicating that a failure has occurred in the first shaft.

9. The method of any one of claims 1 to 8, wherein the first subset of operating data is an angular velocity data set or a torque data set; wherein the angular velocity data set includes angular velocity values ​​associated with a first axis; The torque data set includes torque values ​​associated with a first axis.

10. The method according to any one of claims 1 to 8, wherein: The first operating data values ​​are collected at predetermined time intervals within a predetermined period of time.

11. A computer system comprising: processor, and A memory coupled to a processor, the memory storing computer-readable program instructions, the instructions when executed by the processor, performing the method according to any one of claims 1-10.

12. A computer-readable storage medium storing computer-readable program instructions, wherein the instructions, when executed by a processor, perform the method according to any one of claims 1 to 10.

13. An apparatus for determining the operating status of a robot, comprising means for implementing the operations of the method as claimed in any one of claims 1 to 10.