Winding identification method and device applied to mechanical arm and mechanical arm
By acquiring motion data of the robotic arm joints, identifying and untangling the entangled joints, the accuracy problem of robotic arm entanglement identification in the prior art is solved, improving the continuous operation stability and maintenance efficiency of the robotic arm.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- 上海云骥智行智能科技有限公司
- Filing Date
- 2026-05-20
- Publication Date
- 2026-06-16
AI Technical Summary
Existing technologies struggle to accurately identify entangled joints in robotic arm entanglement detection, especially when flexible pipes are installed in random locations and undergo complex deformations. This leads to misjudgments and missed judgments, affecting the stability of continuous robotic arm operations and maintenance efficiency.
By acquiring motion data of each joint of the robotic arm, including torque offset and cumulative unidirectional rotation angle, the joints causing entanglement are identified using this data. Combined with timing information and correlation indicators, the entangled joints are accurately identified and their reverse rotation is controlled to untangle them.
It improves the accuracy of entanglement recognition of robotic arms under complex working conditions, reduces the probability of misjudgment and missed judgment, and enhances the stability of continuous operation and maintenance efficiency. It is suitable for scenarios such as car washing, handling, and assembly.
Smart Images

Figure CN122210657A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotic arm control, and more particularly to a method, apparatus and robotic arm for identifying entanglement in a robotic arm. Background Technology
[0002] Robotic arms are often used in scenarios such as car washing, handling, and assembly to connect to or hold target objects such as soft water pipes or cables. The relevant technologies usually employ manual handling, mechanical limiting, or entanglement recognition methods based on models and sensors.
[0003] However, the above methods are prone to entanglement identification errors when flexible pipelines are installed in random locations and undergo complex deformations; while untangling control based on fixed rules is difficult to accurately determine entanglement joints, and may even lead to misjudgments in multi-joint coupling conditions. Therefore, how to accurately identify entanglement has become a technical problem that needs to be solved. Summary of the Invention
[0004] This application provides a method, apparatus, and robotic arm for identifying entanglement, used to accurately identify entanglement.
[0005] In a first aspect, embodiments of this application provide a method for identifying entanglement in a robotic arm, comprising: during the process of performing a task by gripping a target object at the end of the robotic arm, acquiring motion data of each joint of the robotic arm, the motion data including torque offset and cumulative unidirectional rotation angle, wherein the torque offset indicates the degree to which the force on the joint shifts in a first rotation direction or a second rotation direction, and the cumulative unidirectional rotation angle indicates the total angle of continuous rotation of the joint in the same rotation direction; and determining the target joint as the joint that causes the target object to entangle in the robotic arm if the motion data of only one target joint satisfies the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range.
[0006] In one possible embodiment, the torque offset has timing information, and the motion data also includes torques with timing information; the method further includes: in each joint, if the motion data of multiple first candidate joints all satisfy the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range, based on the timing information of the torque offsets of the multiple first candidate joints, determining the second candidate joint that first satisfies the condition that the torque offset is greater than the first preset range; by multiplying the torques of the second candidate joint with each of the other first candidate joints within a preset timing difference range, accumulating the correlation index between the two; based on the correlation indexes of the second candidate joint with each of the other first candidate joints, determining the second candidate joint corresponding to the correlation index with the maximum value as the target joint.
[0007] In one possible embodiment, after determining the target joint, the method further includes: determining the initial rotation direction of the target joint based on the rotation direction corresponding to the cumulative unidirectional rotation angle of the target joint; if the initial rotation direction is consistent with the rotation direction corresponding to the force offset of the target joint represented by the torque offset of the target joint, determining the initial rotation direction as the rotation direction of the target joint; if the initial rotation direction is inconsistent with the rotation direction corresponding to the force offset of the target joint, determining the rotation direction corresponding to the force offset of the target joint as the rotation direction of the target joint.
[0008] In one possible embodiment, the motion data also includes the current rotation angle; after determining the rotation direction of the target joint, the method further includes: controlling the target joint to rotate a target angle in a reverse rotation direction, the reverse rotation direction being opposite to the rotation direction of the target joint, the target angle being determined based on the current rotation angle of the target joint, the cumulative unidirectional rotation angle, and the rotation direction.
[0009] In one possible embodiment, the motion data further includes rotational angular velocity; controlling the target joint to rotate a target angle in the opposite rotation direction includes: controlling the target joint to rotate a target angle in the opposite rotation direction with a target angular velocity, the target angular velocity being determined based on the average of the rotational angular velocities of the target joint within a third preset range.
[0010] In one possible embodiment, during the process of controlling the target joint to rotate the target angle in the opposite rotation direction, the method further includes: using the pose change of the end effector of the robotic arm being less than a fourth preset range as a constraint, and calculating the rotation angle of the joints other than the target joint by solving the inverse kinematic equation.
[0011] In one possible embodiment, the method further includes: when the value of the entanglement release index is less than a fifth preset range, controlling the target joint to stop rotating in the reverse rotation direction, wherein the value of the entanglement release index is represented by a torque ratio, the torque ratio being the ratio between the torque of the target joint at the current moment and the torque of the target joint at the initial moment, and the initial moment being the initial moment when the target joint is controlled to rotate the target angle in the reverse rotation direction.
[0012] In one possible embodiment, after controlling the target joint to rotate the target angle in the opposite rotation direction, the method further includes: using a preset learning rate and a first preset range and a second preset range that satisfy the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range, updating the first preset range and the second preset range.
[0013] Secondly, embodiments of this application provide an entanglement recognition device for a robotic arm. The device includes: an acquisition module, used to acquire motion data of each joint of the robotic arm during the process of performing a task by gripping a target object at the end of the robotic arm; the motion data includes torque offset and cumulative unidirectional rotation angle; the torque offset indicates the degree to which the force on the joint shifts in a first rotation direction or a second rotation direction; and the cumulative unidirectional rotation angle indicates the total angle of continuous rotation of the joint in the same rotation direction. A determination module, used to determine that the target joint is the joint that causes the target object to entangle the robotic arm if, among the joints, only the motion data of one target joint satisfies the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range.
[0014] Thirdly, embodiments of this application provide a robotic arm, comprising: a joint and an end effector, the joint being used to drive the robotic arm to generate pose changes, and the end effector being used to grip an object to perform a task; a processor and a memory communicatively connected to the processor, wherein the memory stores computer execution instructions; the processor executes the computer execution instructions stored in the memory to implement the method of any one of the first aspects.
[0015] Fourthly, this application provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any of the first aspects.
[0016] Fifthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements the method of any one of the first aspects.
[0017] In this embodiment, by jointly analyzing the continuous unidirectional rotational behavior and directional force offset state of each joint, the torsional accumulation characteristics during the entanglement formation process are correlated with the abnormal force characteristics of the joints. This allows the entanglement recognition process to be based on motion data directly obtainable by the robotic arm itself, without relying on the geometric modeling of the target object or external sensors. This approach can adapt to actual working conditions such as car washing, handling, assembly, and spraying, where there is moisture, obstruction, or complex posture changes. It can also improve the accuracy of joint recognition that causes entanglement in a multi-joint continuous linkage environment, reduce the probability of false and missed entanglement recognition, and provide reliable input for subsequent targeted untangling control, thereby improving the stability of continuous operation and the maintenance efficiency of the robotic arm. Attached Figure Description
[0018] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0019] Figure 1 This is a schematic diagram of a robotic arm according to an embodiment of this application;
[0020] Figure 2 This is a flowchart of an embodiment of the entanglement recognition method applied to a robotic arm;
[0021] Figure 3 This is a schematic diagram of an entanglement recognition device applied to a robotic arm according to an embodiment of this application.
[0022] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0023] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0024] Figure 1 This is a schematic diagram of a robotic arm according to an embodiment of this application.
[0025] like Figure 1 As shown, the robotic arm includes: joints, end effector 2, processor, and memory that is communicatively connected to the processor.
[0026] Joints are used to drive the robotic arm to produce pose changes. Figure 1 In the example, the joints include at least two or all of the following: joint 11 of the robotic arm base, joint 12 of the shoulder, joint 13 of the elbow, and joint 14 of the wrist.
[0027] End 2 is used to grip the target object 3 to perform the target task. For example... Figure 1 As shown, the robotic arm also includes a robotic arm base 4 and a link 5, with joints arranged between any number of adjacent links.
[0028] The memory stores code, and the processor executes the code stored in the memory to perform the method of any embodiment of this application.
[0029] The processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. A general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly manifested as execution by a hardware processor, or execution by a combination of hardware and software modules within the processor.
[0030] The memory may include high-speed RAM, and may also include non-volatile storage (NVM), such as at least one disk storage.
[0031] Robotic arm entanglement recognition is applicable to scenarios where the end effector of a robotic arm connects to flexible pipes or cables while performing a continuous motion target task. For example, when the target task is a car wash, the end effector of the robotic arm often holds a water spray device, nozzle assembly, or other working parts and connects to the water supply system through a flexible water pipe; when the target task is handling, assembly, grinding, or painting, the end effector of the robotic arm may also hold other target objects and connect to air pipes, cables, hydraulic hoses, or signal harnesses.
[0032] Because robotic arms typically have multiple rotatable joints, these joints undergo frequent rotations, continuous unidirectional rotations, and complex posture changes during task execution. Flexible pipes or cables will experience positional changes, cumulative torsion, and localized stress variations as the robotic arm moves. When the robotic arm performs a target task, target objects such as flexible pipes or cables may gradually become entangled around one or more joints. This not only affects the flexibility of the end effector in holding the target object but may also cause abnormal loads, sluggish movements, and structural wear. Therefore, entanglement detection during robotic arm operations has become an important technological direction for improving the continuous operation capability, automation level, and maintenance efficiency of robotic arms.
[0033] Related technologies for dealing with the problem of entanglement of target objects typically employ methods such as manual observation and intervention, mechanical limit constraints, and entanglement state detection schemes that combine geometric models or external sensors.
[0034] The manual handling method usually involves the operator observing the twisting, stretching and entanglement of the target object while the robotic arm is running. If an abnormality is found, the robotic arm is paused and manually adjusted. Although this method is simple to implement, it is highly dependent on human experience and cannot meet the needs of continuous automated operation.
[0035] Mechanical limiting solutions typically attempt to reduce the probability of entanglement at its source by restricting the maximum rotation angle of certain joints. However, this approach often comes at the cost of sacrificing the range of motion and operational flexibility of the robotic arm, making it difficult to adapt to complex trajectory tasks. In actual working conditions, the installation position, natural drooping shape, length, elasticity, and relative relationship with the robotic arm of the target object may all vary significantly. Consequently, the same joint rotation behavior will result in inconsistent entanglement on different robotic arms.
[0036] Furthermore, relying on methods such as geometric modeling requires pre-establishing the ideal shape and motion relationship of the target object. However, the bending, dragging, rebounding, and random swaying of target objects such as flexible pipelines during operation can easily cause the model to deviate from the real state. While introducing visual, force, or dedicated entanglement detection sensors can enhance perception capabilities, it increases hardware costs, deployment complexity, and environmental sensitivity. Under conditions such as moisture, stains, obstruction, and vibration, entanglement recognition may also become unstable.
[0037] In view of this, how to accurately identify which joint caused the target object to become entangled in the robotic arm during the process of gripping the target object at the end of the robotic arm and performing the task, based on the existing information of the robotic arm itself, has become an urgent technical problem to be solved.
[0038] This application provides a method for identifying entanglement in robotic arms. This method addresses applications where the end effector of the robotic arm grips a target object, causing the object to entangle the arm. During robotic arm operation, motion data of each joint is acquired. This data includes torque offset and cumulative unidirectional rotation angle. The torque offset characterizes the degree to which the force on the joint shifts in a first or second rotation direction, and the cumulative unidirectional rotation angle characterizes the total angle of continuous rotation in the same direction. The motion data of each joint is then analyzed. If only one target joint satisfies both a torque offset greater than a first preset range and a cumulative unidirectional rotation angle greater than a second preset range, that target joint is identified as the joint causing the target object to entangle the robotic arm. This application utilizes the motion data of joints obtainable during robotic arm control to achieve entanglement identification. It does not rely on geometric modeling of the target object or additional external sensors, and can be directly applied to existing robotic arm architectures. This provides a reliable basis for subsequent targeted entanglement processing and improves the accuracy, operational stability, and adaptability of entanglement identification in continuous operation scenarios such as car washing, handling, and assembly.
[0039] Figure 2 This is a flowchart illustrating an entanglement recognition method applied to a robotic arm, according to an embodiment of this application. The method can be executed by the robotic arm, specifically by its processor.
[0040] like Figure 2As shown, the entanglement identification method includes steps S201 to S202.
[0041] S201. During the process of performing a task by gripping a target object at the end of the robotic arm, acquire motion data of each joint of the robotic arm.
[0042] The term "end-effector gripping the target object" refers to the robotic arm's end effector gripping the nozzle assembly, cleaning components, workpiece, tool head, fixture, etc., during operation. These components are connected to an external supply system via flexible connectors, which can be flexible water pipes, air pipes, cables, hydraulic hoses, or signal harnesses. In essence, the target object includes the nozzle assembly, cleaning components, workpiece, tool head, fixture, and the flexible connectors attached to them. The target object wrapping around the robotic arm can be understood as the flexible connectors wrapping around the robotic arm. It is understandable that the target object undergoes positional migration, torsional accumulation, and force changes as the end effector's posture changes during the robotic arm's movement.
[0043] Motion data includes torque offset and cumulative unidirectional rotation angle.
[0044] Torque offset indicates the degree to which the force on a joint shifts towards the first or second rotational direction. Torque offset can be understood as the directional shift of the actual force on the joint relative to the reference force under normal operating conditions. It is used to characterize the degree of additional resistance or additional load on the joint in the first or second rotational direction.
[0045] In one possible embodiment, the robotic arm obtains the torque offset using a reference torque comparison method. Specifically, the robotic arm can pre-collect joint reference force data under different stages, posture ranges, and end-effector load conditions of the target task while in a non-entangled or normal operating state, establishing reference torque ranges for the corresponding joints in the first and second rotational directions. During the execution of the target task, the actual torque of the currently sampled joint is compared with the corresponding reference torque to obtain the deviation amount and its deviation direction sign, thereby obtaining the torque offset. The first and second rotational directions can be defined as two opposite rotational directions in the joint coordinate system, such as clockwise and counterclockwise, or as positive and negative, as long as the direction definition remains consistent throughout the entire entanglement recognition process. Here, the first and second rotational directions can correspond to the positive and negative values of the deviation direction.
[0046] It should be noted that if the force on a joint deviates significantly in one direction, it indicates that the joint may be subjected to additional torsional loads due to the pull of the target object. To improve the stability of the torque offset, the acquired actual torque can be filtered. For example, moving average, median filtering, low-pass filtering, or exponential smoothing can be used to remove short-term impacts and high-frequency noise before calculating the torque offset. Additionally, the current acceleration of the robotic arm can be used to eliminate instantaneous torque fluctuations caused by inertia, avoiding misinterpreting load changes caused by normal acceleration and deceleration as forces from the target object wrapping around the robotic arm.
[0047] The cumulative unidirectional rotation angle represents the total angle of continuous rotation of a joint in the same direction. The cumulative unidirectional rotation angle can be understood as the total angle accumulated from continuous rotation in the same direction since the most recent change or return to zero in rotation direction; it reflects whether rotation in a single direction has been continuously accumulated.
[0048] In one possible embodiment, the robotic arm can continuously read the encoder position value of each joint at a fixed sampling period, and calculate the current rotation direction and incremental angle based on the position difference between adjacent sampling times. When the current rotation angle of a joint continuously changes in the same direction relative to the previous moment, the incremental angle is accumulated into the cumulative unidirectional rotation angle corresponding to the current direction. When a change in rotation direction is detected, or the speed drops below a preset static threshold and remains below it for a preset duration, the cumulative unidirectional rotation angle is cleared or recalculated. This ensures that the cumulative unidirectional rotation angle reflects the accumulation of rotation angles caused by continuous rotation in the same direction, rather than the superposition of angles formed by reciprocating oscillations.
[0049] In one possible embodiment, the motion data can also be associated with auxiliary information such as sampling time, joint number, angular velocity, current rotation angle, drive current, and joint command direction, so as to complete timing alignment, direction determination, etc. in the future.
[0050] In one possible embodiment, the robotic arm can maintain an independent data buffer for each joint to store motion data over multiple consecutive sampling periods. Additionally, for joints where the target object is more likely to become entangled, the robotic arm can increase the sampling frequency of its motion data to enhance entanglement detection sensitivity.
[0051] In this embodiment, the existing motion data of the robotic arm is used to establish the basis for entanglement recognition, without relying on vision sensors, contact entanglement sensors, or geometric modeling of the target object. By continuously acquiring the torque offset and cumulative unidirectional rotation angle of each joint during the execution of the target task, it can reflect whether there is a rotational accumulation trend caused by continuous unidirectional rotation of the joint, and whether the joint has already exhibited directional additional load due to the pulling of the target object. Therefore, it provides directly usable data for subsequent accurate identification of the joint causing entanglement. In addition, it can reduce dependence on environmental conditions and sensors, and is particularly suitable for complex working scenarios with moisture, stains, obstructions, or large vibrations.
[0052] S202. If, among all joints, only one target joint's motion data satisfies the condition that the torque offset is greater than the first preset range and the cumulative unidirectional rotation angle is greater than the second preset range, then the target joint is determined to be the joint that causes the target object to wrap around the robotic arm.
[0053] In this embodiment of the application, under the condition that multiple joints participate in the movement at the same time, a unique joint that simultaneously meets the two conditions of abnormal force and continuous unidirectional rotation is selected from the motion data of each joint, and this unique joint is used as the target joint that causes the target object to wrap around the robotic arm.
[0054] The first preset range is used to constrain the degree of abnormality in torque offset, reflecting whether the force offset of the joint has reached a level that can characterize the pulling effect of the target object; the second preset range is used to constrain the cumulative degree of cumulative unidirectional rotation angle, reflecting whether the joint has experienced continuous rotation in the same direction sufficient to cause the target object to accumulate rotation. The first and second preset ranges can be in the form of scalar thresholds or interval lower limits. That is, "torque offset greater than the first preset range" can mean that the absolute value of the torque offset exceeds the preset threshold, or it can mean that the offset component corresponding to the current rotation direction exceeds the threshold; "cumulative unidirectional rotation angle greater than the second preset range" can mean that the value of the cumulative unidirectional rotation angle exceeds the preset threshold, such as the angle value of more than one or two revolutions.
[0055] In one possible embodiment, the robotic arm can compare the motion data of all joints one by one through a preset discrimination cycle to determine a unique target joint. Alternatively, the robotic arm can adopt a streaming real-time discrimination method, that is, after acquiring the motion data of a joint each time, it immediately determines a unique target joint based on the motion data of that joint.
[0056] In this embodiment, the first and second preset ranges can be pre-written into the parameter table of the robotic arm and calibrated based on the robotic arm model, joint rated torque, end-effector load, target object size, installation start angle, material, etc. For example, the first preset range can be determined based on the upper boundary of the statistical distribution of joint torque offset under normal operating conditions, ensuring that normal load changes do not trigger entanglement detection, while the significant directional force caused by the pull of the flexible connector can be effectively captured. The second preset range can be determined based on the allowable unidirectional rotation accumulation of the flexible connector without causing significant entanglement, ensuring that daily posture adjustments are not misjudged, while the torsional accumulation caused by continuous rotation can be identified. If different joints have different sensitivities to entanglement, different threshold parameters can be set for different joints. For example, the base rotation joint, which is more likely to rotate the entire flexible hose around the body, can be configured with a higher precision angle threshold and a stricter torque offset threshold; the wrist joint, due to its smaller local inertia and greater influence from end-effector posture changes, can have speed or posture compensation terms added to the threshold.
[0057] In this embodiment, the entanglement identification method of "only one target joint simultaneously satisfying two conditions" is adopted because in actual multi-joint linkage, multiple joints may experience accompanying torque changes due to changes in the overall posture of the robotic arm, or experience varying degrees of rotational accumulation due to the trajectory of the target task. If judgment is based solely on a single angle exceeding the limit, joints that have rotated for a long time but have not actually caused traction may be mistakenly identified as target joints; if judgment is based solely on a single torque anomaly, joints affected by entanglement caused by other joints may be mistakenly identified as target joints. Combining continuous unidirectional rotation with directional torque offset can couple the "behavioral characteristics causing torsional accumulation" and the "result characteristics of existing traction load," thereby more accurately distinguishing the target joint that truly causes entanglement accumulation from other joints that are only affected by linkage, and also distinguishing the accompanying torque fluctuations caused by changes in the overall posture of the robotic arm from the continuous force anomalies caused by entanglement of the target object. For example, if only one joint simultaneously satisfies that the torque offset exceeds the preset range and the cumulative unidirectional rotation angle exceeds the preset range, it indicates that the rotation behavior of that joint is directly related to the entanglement of the target object, thereby avoiding misjudgment caused by multi-joint linkage.
[0058] In this embodiment, by jointly analyzing the continuous unidirectional rotational behavior and directional force offset state of each joint, the torsional accumulation characteristics during the entanglement formation process are correlated with the abnormal force characteristics of the joints. This allows the entanglement recognition process to be based on motion data directly obtainable by the robotic arm itself, without relying on the geometric modeling of the target object or external sensors. This approach can adapt to actual working conditions such as car washing, handling, assembly, and spraying, where there is moisture, obstruction, or complex posture changes. It can also improve the accuracy of joint recognition that causes entanglement in a multi-joint continuous linkage environment, reduce the probability of false and missed entanglement recognition, and provide reliable input for subsequent targeted untangling control, thereby improving the stability of continuous operation and the maintenance efficiency of the robotic arm.
[0059] It should be understood that the above examples are merely illustrative and not limiting. In one possible embodiment, the method of acquiring motion data, the method of setting thresholds, the method of calculating torque offset, and the rule for zeroing the cumulative unidirectional rotation angle can all be adjusted according to the specific robotic arm structure and actual working conditions. As long as joint-based motion data identification can be achieved, causing the target object to wrap around the robotic arm, it can fall within the technical concept scope of the embodiments of this application.
[0060] To illustrate with a specific embodiment, the robotic arm has n joints.
[0061] Motion data includes the current rotation angle, change in rotation angle, rotation angular velocity, rotation direction, torque, torque offset, and cumulative unidirectional rotation angle. This motion data can be multiple sequences of data differentiated by multiple sampling times, where the time interval between any two adjacent sampling times, i.e., the period, is... Each sampling time is associated with a sampling sequence number. . The value of is from 1 to K, where K is an integer greater than or equal to 2. The following explanation will take the sampling sequence number k corresponding to the sampling time t as an example.
[0062] At any sampling time t, the current rotation angle of the i-th joint out of n joints is: .
[0063] For the i-th joint, the sampling sequence number Corresponding change in rotation angle It can be expressed by the following formula (1):
[0064] (1)
[0065] For the i-th joint, the sampling sequence number Corresponding rotational angular velocity It can be expressed by the following formula (2):
[0066] (2)
[0067] For the i-th joint, the sampling sequence number The corresponding rotation direction can be expressed by the following formula (3):
[0068] (3)
[0069] in, A value of +1 indicates that the rotation direction is clockwise. A value of -1 indicates that the rotation direction is counterclockwise. A value of 0 indicates that the element is stationary.
[0070] For the i-th joint, the sampling sequence number Relative to sampling number The corresponding cumulative unidirectional rotation angle It can be expressed by the following formula (4):
[0071] (4)
[0072] Formula (4) can be understood as the cumulative unidirectional rotation angle of two consecutive sampling numbers, applied to the time window [ The robotic arm can be obtained by comparing the maximum value among multiple cumulative unidirectional rotation angles with a second preset range, where M is an integer greater than or equal to 2.
[0073] Specifically, the target joint satisfies the following formula (5):
[0074] (5)
[0075] in, Indicates the second preset range. Indicates the time window [ The maximum value of the cumulative unidirectional rotation angle within [].
[0076] For the i-th joint, during the continuous unidirectional rotation time period [ , Within ], the sequence of its torques is expressed as The corresponding torque offset is expressed by the following formula (6):
[0077] (6)
[0078] Formula (6) can be expressed as formula (7) in the discrete domain:
[0079] (7)
[0080] The directionality of torque offset can be represented by the positive or negative value of torque offset. If the torque offset is positive, it means that the force is offset in the first rotational direction; if the torque offset is negative, it means that the force is offset in the second rotational direction.
[0081] The target joint also meets the following requirements Greater than , Indicates the first preset range.
[0082] In one possible embodiment, the torque bias has timing information, and the motion data also includes torques with timing information. Torques with timing information can be understood as a sequence of joint torques continuously recorded at multiple sampling times, reflecting the load changes of the joint at different sampling times, i.e., different points in time.
[0083] like Figure 2 As shown, the entanglement identification method further includes steps S203 to S205.
[0084] Steps S203 to S205 can be executed after step S201. Step S202 can be understood as an example where only one joint among all joints satisfies the condition that its torque offset is greater than a first preset range and its cumulative unidirectional rotation angle is greater than a second preset range. In contrast, steps S203 to S205 can be understood as an example where multiple joints among all joints satisfy the condition that their torque offset is greater than a first preset range and their cumulative unidirectional rotation angle is greater than a second preset range, and a target joint is determined from among the multiple joints that satisfy the above conditions.
[0085] S203. In each joint, if the motion data of multiple first candidate joints all satisfy the condition that the torque offset is greater than the first preset range and the cumulative unidirectional rotation angle is greater than the second preset range, then based on the timing information of the torque offset of multiple first candidate joints, determine the second candidate joint that first satisfies the condition that the torque offset is greater than the first preset range.
[0086] The first candidate joint refers to the joint that, at the current moment, simultaneously satisfies both a torque offset greater than a first preset range and a cumulative unidirectional rotation angle greater than a second preset range. The second candidate joint is the joint that, from among multiple first candidate joints, is the earliest to satisfy the condition that the torque offset is greater than the first preset range.
[0087] S204. The correlation index between the two is obtained by multiplying the torques of the second candidate joint and any other first candidate joint within a preset time difference range.
[0088] The preset timing difference range is used to limit the allowed time offset interval when the second candidate joint is time-aligned with any other first candidate joint, so as to calculate the correlation of torque within similar time windows.
[0089] For example, following the example above, the correlation index of any two different first candidate joints can be expressed by the following formula (8):
[0090] (8)
[0091] in, This indicates the preset time difference range, where t represents any one of the multiple time sequences.
[0092] S205. Based on the correlation indices of the second candidate joint with each of the other first candidate joints, the second candidate joint corresponding to the correlation index with the maximum value is determined as the target joint.
[0093] For multiple first candidate joints, the robotic arm can sort them according to the time (i.e., the time stamp) when their torque offset first crosses a first preset range, and select the joint that earliest satisfies the condition of having a torque offset greater than the first preset range as the second candidate joint. Then, the robotic arm performs time alignment on the torque sequences of the second candidate joint and other first candidate joints within a preset time difference range, and calculates and sums the products of the stress torques at each time step to obtain a correlation index reflecting the common fluctuation characteristics of the two. If the correlation index between the second candidate joint and a certain first candidate joint is the largest, it indicates that the two may have torque anomalies due to the same entanglement behavior. Therefore, the joint corresponding to the maximum correlation index is determined as the target joint, thereby improving the accuracy of entanglement recognition in multi-joint coupling scenarios.
[0094] This embodiment of the application can further accurately identify the target joint that is entangled when multiple joints meet the conditions that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range. Specifically, by using the entanglement sequence, the second candidate joint that first meets the torque offset condition and the cumulative unidirectional rotation angle condition is selected from multiple first candidate joints. Then, based on the above-mentioned correlation index between the second candidate joint and other second candidate joints, the correlation index obtained by the sum of torque multiplication after time alignment can effectively reflect the joint torque characteristics of the target joint and other joints during the entanglement formation process, reducing the misidentification of the target joint. In addition, through this embodiment, the robotic arm can identify the target joint that is closer to the actual cause of entanglement without the need for external sensors, thereby providing a reliable basis for subsequent untangling control, improving the stability of continuous operation of the robotic arm and reducing maintenance costs.
[0095] like Figure 2 As shown, in one possible embodiment, after the target joint is determined, the entanglement identification method further includes steps S206 to S208.
[0096] S206. Determine the initial rotation direction of the target joint based on the rotation direction corresponding to the cumulative unidirectional rotation angle of the target joint.
[0097] S207. If the initial rotation direction is consistent with the rotation direction corresponding to the force offset of the target joint as indicated by the torque offset of the target joint, the initial rotation direction shall be determined as the rotation direction of the target joint.
[0098] The initial rotation direction characterizes the main rotational tendency of the target joint during continuous unidirectional rotation. The rotation direction corresponding to the force offset is the direction of force tendency indicated by the torque offset.
[0099] S208. If the initial rotation direction is inconsistent with the rotation direction corresponding to the force offset of the target joint as indicated by the torque offset of the target joint, the rotation direction corresponding to the force offset of the target joint shall be determined as the rotation direction of the target joint.
[0100] In addition to the embodiment of step S208, in one possible embodiment, if the initial rotation direction is inconsistent with the rotation direction corresponding to the force offset of the target joint represented by the torque offset of the target joint, the robotic arm can also make a rotation direction confidence judgment based on the identification results of multiple rotation directions.
[0101] For example, execute For S206 and S207, the confidence level of the rotation direction is expressed by the following formula (9):
[0102] (9)
[0103] express The number of times the rotation direction is correctly determined in each rotation direction determination. If the initial rotation direction is greater than or equal to a preset threshold, it can be considered reliable, and thus the initial rotation direction can be determined as the rotation direction of the target joint. If the initial rotation direction is less than the preset threshold, it can be considered unreliable. Therefore, the rotation direction corresponding to the force offset of the target joint can be determined as the rotation direction of the target joint.
[0104] In one possible embodiment, after identifying the target joint, the robotic arm acquires the cumulative unidirectional rotation angle of the target joint and determines its initial rotation direction based on the directional changes during the formation of the cumulative unidirectional rotation angle. Subsequently, the consistency between the initial rotation direction and the rotation direction corresponding to the torque offset is judged. When the two are in the same direction, it indicates that the continuous rotation trend of the target joint is consistent with the force offset trend, so the initial rotation direction is directly taken as the rotation direction of the target joint; when the two are opposite, it indicates that the rotation trend of the target joint may deviate from the force offset trend due to external disturbances (such as inertia or load fluctuations). In this case, taking the rotation direction corresponding to the torque offset as the rotation direction of the target joint can ensure that the subsequent reverse rotation action is consistent with the physical characteristics of the winding, thereby avoiding failure to wind or unwind furniture due to incorrect rotation direction.
[0105] In this embodiment, the rotation direction of the target joint does not depend on the cumulative result of a single angle, but is checked in combination with the force offset, thereby avoiding misjudgment of the rotation direction when the target joint swings back for a short time, experiences inertial disturbance or load fluctuation. This can improve the accuracy of judging the rotation direction formed by entanglement and provide a reliable basis for subsequent entanglement removal, thereby reducing the risk of the target object continuing to entangle and the robot arm's movement being blocked.
[0106] like Figure 2 As shown, in one possible implementation, the motion data also includes the current rotation angle; after determining the rotation direction of the target joint, the entanglement recognition method further includes step S209.
[0107] S209, Control the target joint to rotate the target angle in the opposite rotation direction.
[0108] The reverse rotation direction is opposite to the rotation direction of the target joint, and the target angle is determined based on the current rotation angle, cumulative unidirectional rotation angle, and rotation direction of the target joint.
[0109] For example, following the example above, the following formula (10) can represent the target angle. :
[0110] (10)
[0111] in, Let be the current rotation angle of the target joint i at sampling time t. The coefficient indicating the degree of unwinding can be set to 0.5. Indicates the time window [ The maximum cumulative unidirectional rotation angle within [ ] Indicates the rotation direction of the target joint. The current rotation angle is used to characterize the real-time rotation angle of the target joint relative to its zero position, return to zero position, or preset reference position when the entanglement unwinding process is triggered.
[0112] For the target joint, after determining the rotation direction through the above embodiments, the target angle can be calculated based on the relative relationship between the current rotation angle and the cumulative unidirectional rotation angle, and a control command opposite to the original rotation direction can be generated to make the target joint return to the expected untangling position.
[0113] For example, the robotic arm compares the current angle value of the target joint with the cumulative unidirectional rotation angle to determine the angular margin that needs to be retracted, i.e., the target angle.
[0114] For example, when the sum of the current rotation angle and the cumulative unidirectional rotation angle of the target joint indicates that the target joint has exceeded a preset threshold range, the target angle can be set to the retraction angle corresponding to that excess. When the current rotation angle of the target joint has partially offset the cumulative unidirectional rotation angle, the target angle can be set to the angle value that restores the target joint to a preset safe angle range.
[0115] In this embodiment, the target angle suitable for retraction is calculated by utilizing the correspondence between the current rotation angle, cumulative unidirectional rotation angle, and rotation direction of the target joint. The target joint is then subjected to controlled rotation in the opposite rotation direction, thereby reducing the cumulative rotation of the target object at the target joint. Since the target angle is not a fixed preset value but is dynamically determined based on the real-time angle state, the matching between the untangling action and the actual degree of tangling can be improved. This avoids residual tangling due to insufficient reverse rotation and also avoids new tangling caused by excessive reverse rotation.
[0116] Through the embodiments of this application, the robotic arm can perform targeted reverse rotation to untangle itself based on the joint's own motion data without relying on external sensors and geometric models, thereby improving the accuracy and timeliness of untangling, reducing the risk of damage to the target object, and enhancing the robotic arm's stable operation capability in continuous operation scenarios.
[0117] In one possible embodiment, the motion data further includes rotational angular velocity. Step S209, controlling the target joint to rotate the target angle in the opposite rotation direction, includes: controlling the target joint to rotate the target angle in the opposite rotation direction at a target angular velocity, wherein the target angular velocity is determined based on the average value of the target joint's rotational angular velocity within a third preset range.
[0118] Rotational angular velocity is used to characterize how fast a target joint rotates per unit time.
[0119] For example, the following formula (11) represents the target angular velocity:
[0120] (11)
[0121] in, This indicates the speed adjustment coefficient for unwinding. This represents the average rotational angular velocity within the third preset range. The third preset range can be understood as the desired unwinding time range. The third preset range can be set based on the safe rotational speed of the target joint during the unwinding process, the load-bearing capacity of the mechanical structure, and the force characteristics of the target object.
[0122] In this embodiment, the target joint can complete the rotation at an angular velocity coordinated with the current motion state during reverse rotation, ensuring that the angular velocity of the reverse rotation matches the normal motion inertia of the robotic arm. This avoids secondary pulling of the target object due to excessively fast rotation, and also prevents a decrease in the efficiency of untangling due to excessively low speed. Since the target angular velocity is determined by the average value of the rotational angular velocity within a third preset range, controlling the rotation of the target joint to untangle has good smoothness and robustness, reduces the impact load on the robotic arm during untangling, and improves the stability, reliability, and continuous operation capability of untangling.
[0123] like Figure 2 As shown, in one possible embodiment, during the process of the robotic arm performing step S209, controlling the target joint to rotate the target angle in the opposite rotation direction, the entanglement identification method further includes step S210.
[0124] S210. With the pose change of the end effector of the robotic arm being less than the fourth preset range as a constraint, the rotation angles of the joints other than the target joint are calculated by solving the inverse kinematics equations.
[0125] For example, the pose of the end effector of the robotic arm refers to the spatial position and orientation of the end effector relative to a reference coordinate system (which may be the coordinate system of the base of the robotic arm). The spatial position includes the displacement of the end effector in the three coordinate axes of the reference coordinate system, and the orientation includes the rotation angle of the end effector around each coordinate axis. The fourth preset range is used to limit the pose offset threshold of the end effector during the unwinding process, and can be preset according to the operation accuracy of the target task, the gripping stability of the end effector, and the force requirements of the target object.
[0126] In one possible embodiment, when the target joint rotates by a target angle in the opposite direction, the robotic arm maintains an approximately unchanged end-effector pose. The reverse target angle of the target joint is used as a known input, and an inverse kinematics constraint model is established by combining the current joint angles, link parameters, and Jacobian matrix. The robotic arm calculates the compensation rotation angles of the remaining joints linked to the target joint using analytical or iterative methods, ensuring that the combined motion of each joint satisfies the requirement that the end-effector pose change does not exceed a fourth preset range. The inverse kinematics equations can be constructed based on the robotic arm's Denavit-Hartenberg (DH) parameters, the current rotation angles of each joint, and the desired end-effector pose.
[0127] For example, the following formula (12) represents the inverse kinematic equation:
[0128] (12)
[0129] The vectors of velocities of all joints of the robotic arm are obtained through... express, This is the pseudo-inverse of the Jacobian matrix under the current joint pose. To constrain the desired end-effector velocity to a range where the end-effector pose change is less than a fourth preset range, Let be a vector representing the rotation angles of all joints of the robotic arm. In practice, it is necessary to consider the link lengths, joint coordinate system definitions, and end-effector poses of the robotic arm to ensure that the numerical solution of the inverse kinematics equations converges within the kinematic range of the robotic arm.
[0130] In this embodiment, the pose change of the robotic arm's end effector is constrained to be less than a fourth preset range. By solving the inverse kinematics equations, the rotation angles of all joints except the target joint are calculated. These rotation angles allow the robotic arm to maintain the end effector's gripping position and working posture on the target object while untangling the entanglement, thereby preventing significant end effector displacement. By limiting the end effector pose change to the fourth preset range, the disturbance to the target object gripped by the end effector during entanglement untangling can be reduced, and the continuity and stability of the robotic arm's movement can be improved.
[0131] In other words, in this embodiment, the end-effector attitude disturbance caused by the reverse rotation of the target joint at the target angle can be offset by the linkage compensation of other joints. This avoids deviation of the target object held by the end-effector due to single-joint movements and ensures that the entanglement release action is completed without significantly affecting the work trajectory, thereby maintaining the continuity and stability of the target task execution. This reduces the collision risk and trajectory distortion caused by end-effector offset, improves the controllability of entanglement release, and enhances the adaptability and operational reliability of the robotic arm in continuous operation scenarios.
[0132] like Figure 2As shown, in one possible embodiment, the entanglement identification method further includes step S211. Step S211 may be performed after step S209 or step S210.
[0133] S211. If the value of the untangling index is less than the fifth preset range, control the target joint to stop rotating in the opposite direction.
[0134] The value of the entanglement release index is represented by the torque ratio, which is the ratio between the torque of the target joint at the current moment and the torque of the target joint at the initial moment. The initial moment is the initial moment when the target joint is rotated by the target angle in the opposite rotation direction.
[0135] For example, the following formula (13) represents the entanglement unwinding index:
[0136] (13)
[0137] in, Indicates the start time. This represents the torque of the target joint at the current moment. This represents the torque of the target joint at the initial moment.
[0138] The untangling index characterizes the degree of untangling of the target object during the reverse rotation of the target joint. The torque ratio reflects the change in force on the target joint relative to the force at the start of the reverse rotation. The fifth preset range can be pre-set based on the robot arm model, target object size, end-effector load, and historical untangling data to limit the range where the torque ratio decreases to the point where the tangling can be considered essentially untangled.
[0139] The torque at the initial moment is used as the reference torque. It is collected and cached when the target joint starts to rotate the target angle in the opposite direction of rotation. The torque at the current moment is updated periodically during the reverse rotation. The robotic arm can calculate the ratio between the current torque and the reference torque to obtain the real-time value of the entanglement release index.
[0140] In this embodiment, the torque ratio is used as an indicator of entanglement release. When the torque ratio drops to a fifth preset range, it indicates that the load on the target joint has returned to normal, and the entanglement is essentially released. The torque ratio is normalized based on the torque at the initial moment, ensuring the robotic arm maintains a consistent judgment criterion under different loads, joint specifications, and object clamping conditions. This allows for timely stopping of reverse rotation when entanglement release reaches a predetermined level, reduces the risk of misjudgment due to relying solely on absolute torque thresholds, makes entanglement release more stable and reliable, and helps reduce ineffective robotic arm movement, joint impact, and improve the safety and consistency of continuous operation.
[0141] In one possible embodiment, after controlling the target joint to rotate the target angle in the opposite rotation direction in step S209, the entanglement recognition method further includes: using a preset learning rate and a first preset range and a second preset range that satisfy the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range, updating the first preset range and the second preset range.
[0142] The first preset range is used to define the boundary for determining abnormal offset when the torque bias reaches an abnormal deviation, and the second preset range is used to define the boundary for determining abnormal rotation when the cumulative unidirectional rotation reaches an abnormal rotation. The learning rate is used to control the threshold adjustment magnitude to ensure that the threshold update process is smooth and convergent.
[0143] For example, the following formula (14) represents the updated second preset range, and the updated first preset range is similar, and will not be described again here.
[0144] (14)
[0145] in, This indicates the updated second preset range. This indicates the range of the second threshold before the update. This represents the cumulative unidirectional rotation angle that triggers the entanglement recognition in this embodiment of the application. This represents the learning rate.
[0146] In one possible embodiment, in addition to updating the first preset range and the second preset range, the robotic arm can also update the confidence level of the rotation direction.
[0147] In one possible embodiment, after the robotic arm completes the reverse rotation of the target joint, it can read the torque offset value and cumulative unidirectional rotation angle value corresponding to the current determination that the entanglement condition is met, and compare them with the original first preset range and second preset range as the current sample data. If the current sample indicates that the actual boundary corresponding to the entanglement release (the actual boundary includes the first preset range and the second preset range) is higher than the original first preset range and second preset range, the robotic arm can adjust the first preset range and second preset range upward according to the learning rate to adapt to more relaxed entanglement conditions; otherwise, it can adjust them downward accordingly to enhance sensitivity, thereby avoiding distortion in subsequent entanglement recognition.
[0148] In summary, the entanglement recognition method for robotic arms according to the embodiments of this application has at least one of the following technical effects:
[0149] No geometric modeling of the target object or additional sensors are required: entanglement can be identified using the existing motion data of the robotic arm, reducing the complexity and cost of the robotic arm.
[0150] By using torque offset, cumulative unidirectional rotation angle, and multi-joint coupling processing, the target joint causing entanglement and its rotation direction are accurately identified, thus improving the accuracy of entanglement identification.
[0151] Based on the entanglement recognition results, control parameters for reverse rotation are generated, and the movement of other joints is compensated through inverse kinematics to ensure end-effector stability and prevent further entanglement. This also reduces the need for manual intervention, lowers the maintenance cost of the robotic arm, and extends its service life.
[0152] The first and second preset ranges for entanglement recognition are dynamically adjusted to adapt to differences in different target objects, thereby improving the versatility and robustness of entanglement recognition.
[0153] Figure 3 This is a schematic diagram of an entanglement recognition device applied to a robotic arm, according to an embodiment of this application. Figure 3 As shown, the device includes an acquisition module 310 and a determination module 320.
[0154] The acquisition module 310 is used to acquire motion data of each joint of the robotic arm during the process of performing a task by gripping a target object at the end of the robotic arm. The motion data includes torque offset and cumulative unidirectional rotation angle. Torque offset indicates the degree to which the force on the joint is offset in the first rotation direction or the second rotation direction, and cumulative unidirectional rotation angle indicates the total angle of continuous rotation of the joint in the same rotation direction.
[0155] The determination module 320 is used to determine the target joint as the joint that causes the target object to wrap around the robotic arm when only one target joint's motion data satisfies the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range.
[0156] In one possible embodiment, the torque offset has timing information, and the motion data also includes torque with timing information; the determining module 320 is further configured to: in each joint, if the motion data of multiple first candidate joints all satisfy the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range, determine the second candidate joint that first satisfies the condition that the torque offset is greater than the first preset range based on the timing information of the torque offset of the multiple first candidate joints; accumulate the correlation index between the second candidate joint and any other first candidate joint with respect to multiple timings within a preset timing difference range by multiplying the torques of the second candidate joint and any other first candidate joint; and determine the second candidate joint corresponding to the correlation index with the maximum value as the target joint based on the correlation index of the second candidate joint and each other first candidate joint.
[0157] In one possible embodiment, the determining module 320 is further configured to: determine the initial rotation direction of the target joint based on the rotation direction corresponding to the cumulative unidirectional rotation angle of the target joint; determine the initial rotation direction as the rotation direction of the target joint if the initial rotation direction is consistent with the rotation direction corresponding to the force offset of the target joint represented by the torque offset of the target joint; and determine the rotation direction corresponding to the force offset of the target joint as the rotation direction of the target joint if the initial rotation direction is inconsistent with the rotation direction corresponding to the force offset of the target joint.
[0158] In one possible embodiment, the device further includes a control module for controlling the target joint to rotate a target angle along a reverse rotation direction, the reverse rotation direction being opposite to the rotation direction of the target joint, the target angle being determined based on the current rotation angle of the target joint, the cumulative unidirectional rotation angle, and the rotation direction.
[0159] In one possible embodiment, the control module is specifically used to: control the target joint to rotate a target angle along the reverse rotation direction at a target angular velocity, wherein the target angular velocity is determined based on the average value of the rotational angular velocity of the target joint within a third preset range.
[0160] In one possible embodiment, the determining module 320 is further configured to: during the process of controlling the target joint to rotate the target angle in the opposite rotation direction, with the pose change of the end of the robotic arm being less than a fourth preset range as a constraint, calculate the rotation angle of each joint other than the target joint by solving the inverse kinematic equation.
[0161] In one possible embodiment, the control module is further configured to: control the target joint to stop rotating in the reverse rotation direction when the value of the untangling index is less than a fifth preset range, wherein the value of the untangling index is represented by a torque ratio, the torque ratio being the ratio between the torque of the target joint at the current moment and the torque of the target joint at the initial moment, and the initial moment being the initial moment when the target joint is controlled to rotate the target angle in the reverse rotation direction.
[0162] In one possible embodiment, the device further includes an update module, configured to update the first preset range and the second preset range using a preset learning rate and a first preset range and a second preset range that satisfy the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range.
[0163] This application provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the methods described in the above-described method embodiments.
[0164] The aforementioned computer-readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0165] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0166] This application provides a computer program product, including a computer program that, when executed by a processor, implements the methods provided in any of the embodiments described above.
[0167] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily essential to this application.
[0168] It should be further noted that although the steps in the flowchart are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowchart may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.
[0169] It should be understood that the above-described device embodiments are merely illustrative, and the device of this application can also be implemented in other ways. For example, the division of units / modules in the above embodiments is only a logical functional division, and there may be other division methods in actual implementation. For example, multiple units, modules, or components may be combined, or integrated into another system, or some features may be ignored or not executed.
[0170] Furthermore, unless otherwise specified, the functional units / modules in the various embodiments of this application can be integrated into one unit / module, or each unit / module can exist physically separately, or two or more units / modules can be integrated together. The integrated units / modules described above can be implemented in hardware or as software program modules.
[0171] When integrated units / modules are implemented in hardware, the hardware can be digital circuits, analog circuits, etc. The physical implementation of the hardware structure includes, but is not limited to, transistors, memristors, etc. Unless otherwise specified, the processor can be any suitable hardware processor, such as a CPU, GPU, FPGA, DSP, and ASIC, etc. Unless otherwise specified, the storage unit can be any suitable magnetic or magneto-optical storage medium, such as Resistive Random Access Memory (RRAM), Dynamic Random Access Memory (DRAM), Static Random Access Memory (SRAM), Enhanced Dynamic Random Access Memory (EDRAM), High-Bandwidth Memory (HBM), Hybrid Memory Cube (HMC), etc.
[0172] If the integrated unit / module is implemented as a software program module and sold or used as an independent financial product, it can be stored in a computer-readable storage device (CMD). Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software financial product. This computer software financial product is stored in a memory and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned memory includes various media capable of storing program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard drive, magnetic disk, or optical disk.
[0173] In the above embodiments, the descriptions of each embodiment have their own emphasis. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments. The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as the combination of these technical features does not contradict each other, it should be considered within the scope of this specification.
[0174] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the following claims.
[0175] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.
Claims
1. A method for identifying entanglement in a robotic arm, characterized in that, include: During the process of performing a task by gripping a target object at the end of a robotic arm, motion data of each joint of the robotic arm is acquired. The motion data includes torque offset and cumulative unidirectional rotation angle. The torque offset indicates the degree to which the force on the joint is offset in the first rotation direction or the second rotation direction. The cumulative unidirectional rotation angle indicates the total angle of continuous rotation of the joint in the same rotation direction. If, among all the joints, only one target joint's motion data satisfies the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range, then the target joint is determined to be the joint that causes the target object to wrap around the robotic arm.
2. The method according to claim 1, characterized in that, The torque bias has timing information, and the motion data further includes a torque with timing information; the method further includes: In each of the joints, if the motion data of multiple first candidate joints all satisfy the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range, then based on the timing information of the torque offset of the multiple first candidate joints, the second candidate joint that first satisfies the condition that the torque offset is greater than the first preset range is determined. The correlation index between the two is obtained by accumulating the torque products of the second candidate joint and any other first candidate joint within multiple time series with respect to a preset time series difference range. Based on the correlation indices of the second candidate joint with each of the other first candidate joints, the second candidate joint corresponding to the correlation index with the highest value is determined as the target joint.
3. The method according to claim 1 or 2, characterized in that, After determining the target joint, the method further includes: The initial rotation direction of the target joint is determined based on the rotation direction corresponding to the cumulative unidirectional rotation angle of the target joint. If the initial rotation direction is consistent with the rotation direction corresponding to the force offset of the target joint as represented by the torque offset of the target joint, the initial rotation direction is determined as the rotation direction of the target joint. If the initial rotation direction is inconsistent with the rotation direction corresponding to the force offset of the target joint, the rotation direction corresponding to the force offset of the target joint shall be determined as the rotation direction of the target joint.
4. The method according to claim 3, characterized in that, The motion data also includes the current rotation angle; after determining the rotation direction of the target joint, the method further includes: The target joint is controlled to rotate by a target angle in a reverse rotation direction, the reverse rotation direction being opposite to the rotation direction of the target joint, and the target angle being determined based on the current rotation angle, the cumulative unidirectional rotation angle, and the rotation direction of the target joint.
5. The method according to claim 4, characterized in that, The motion data also includes rotational angular velocity; controlling the target joint to rotate the target angle along the opposite rotation direction includes: The target joint is controlled to rotate by a target angle along the opposite rotation direction at a target angular velocity, wherein the target angular velocity is determined based on the average value of the rotational angular velocity of the target joint within a third preset range.
6. The method according to claim 4, characterized in that, During the process of controlling the target joint to rotate the target angle in the opposite rotation direction, the method further includes: With the pose change of the end effector of the robotic arm being less than a fourth preset range as a constraint, the rotation angles of the joints other than the target joint are calculated by solving the inverse kinematics equations.
7. The method according to claim 4, characterized in that, The method further includes: If the value of the untangling index is less than the fifth preset range, the target joint is controlled to stop rotating in the reverse rotation direction. The value of the untangling index is represented by a torque ratio, which is the ratio between the torque of the target joint at the current moment and the torque of the target joint at the initial moment. The initial moment is the initial moment when the target joint is controlled to rotate the target angle in the reverse rotation direction.
8. The method according to claim 4, characterized in that, After controlling the target joint to rotate the target angle in the opposite rotation direction, the method further includes: The first preset range and the second preset range are updated using a preset learning rate and a first preset range and a second preset range that satisfy the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range.
9. A winding recognition device for use in robotic arms, characterized in that, The device includes: The acquisition module is used to acquire motion data of each joint of the robotic arm during the process of performing a task by gripping a target object at the end of the robotic arm. The motion data includes torque offset and cumulative unidirectional rotation angle. The torque offset indicates the degree to which the force on the joint is offset in the first rotation direction or the second rotation direction. The cumulative unidirectional rotation angle indicates the total angle of continuous rotation of the joint in the same rotation direction. The determination module is used to determine that the target joint is the joint that causes the target object to wrap around the robotic arm when only one target joint's motion data satisfies the condition that the torque offset is greater than a first preset range and the cumulative unidirectional rotation angle is greater than a second preset range.
10. A robotic arm, characterized in that, include: Joints and an end effector, wherein the joints are used to drive the robotic arm to produce pose changes, and the end effector is used to grip an object to perform a task; A processor and a memory communicatively connected to the processor, wherein the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory to implement the method as described in any one of claims 1 to 8.