Collaborative robot dual-channel collision prediction method, device and computer equipment
By acquiring the initial envelope radius of the collaborative robot and the protocol information of the camera components, and using constraint protocols for code parsing, the object envelope is determined and the estimated sliding distance is superimposed. This solves the risk caused by code errors in traditional collaborative robot collision prediction, and achieves accurate collision prediction and expands the safety module development capabilities under the PLD safety level.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN HANS ROBOT CO LTD
- Filing Date
- 2024-08-01
- Publication Date
- 2026-07-24
AI Technical Summary
In traditional collaborative robot dual-channel collision prediction methods, the risk of collision prediction is relatively high due to errors in the upper computer software code, and existing technologies are difficult to expand the development capability of safety modules while ensuring the safety level of the PLD.
By acquiring the initial envelope radius of the collaborative robot and the protocol information determined by the camera components, the code is parsed using the constraint protocol to determine the object envelope information. The estimated sliding distance under the control of the controller is then superimposed on the initial envelope radius to update the envelope, thereby determining the collision prediction result and ensuring that collision prediction is not affected even if the camera components are abnormal.
It reduces the risk of collision prediction process, expands the development capabilities of safety modules, and ensures the accuracy and reliability of collision prediction based on the PLD safety level.
Smart Images

Figure CN118927248B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics technology, and in particular to a method, apparatus, computer device, computer-readable storage medium, and computer program product for predicting collisions in a collaborative robot with dual channels. Background Technology
[0002] With the development of robot research and development technology, collaborative robot dual-channel collision prediction technology has emerged. It can predict collisions between the robot and objects in the environment that may collide, and then take emergency stop operations to avoid collisions.
[0003] In traditional collaborative robot dual-channel collision prediction methods, the collision process is usually predicted by host computer software, which then issues commands. However, the process of issuing prediction commands by the host computer software is carried out by manually writing the entire set of code. If there is a programming error in the code designed by the technicians, the collision prediction process cannot be carried out, which poses a significant risk. Summary of the Invention
[0004] Therefore, it is necessary to provide a method, apparatus, computer equipment, computer-readable storage medium, and computer program product for predicting collisions in a collaborative robot with dual channels that can reduce the risk of the above-mentioned technical problems.
[0005] Firstly, this application provides a dual-channel collision prediction method for collaborative robots, including:
[0006] The initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot are obtained; the protocol information is used to characterize the object envelope of the object to be avoided.
[0007] Using a constraint protocol that matches the protocol information, the protocol information is parsed to determine the object envelope information of the object envelope;
[0008] Determine the estimated sliding distance of the collaborative robot under the control of the controller, and add the estimated sliding distance to the initial envelope radius to obtain the updated envelope of the collaborative robot;
[0009] Based on the positional relationship between the updated envelope and the object envelope, the collision prediction result of the collaborative robot under the control of the controller is determined.
[0010] In one embodiment, a constraint protocol matching the protocol information is used to parse the protocol information to determine the object envelope information of the object envelope, including:
[0011] Obtain the camera identification information of the camera component;
[0012] Search the protocol database for the protocol corresponding to the camera identification information, and use it as the constraint protocol that matches the protocol information;
[0013] The constraint protocol is used to parse the protocol information to determine the object envelope information of the object envelope.
[0014] In one embodiment, the constraint protocol is used to parse the protocol information to determine the object envelope information of the object envelope, including:
[0015] Obtain the data format corresponding to the constraint protocol;
[0016] Based on the data format, the protocol information is parsed to determine the object envelope information of the object envelope.
[0017] In one embodiment, determining the estimated sliding distance of the collaborative robot under the control of the controller, and superimposing the estimated sliding distance onto the initial envelope radius to obtain the updated envelope of the collaborative robot includes:
[0018] Obtain the maximum deceleration speed and current movement speed of the collaborative robot;
[0019] Based on the maximum deceleration rate and the current movement speed, the estimated sliding distance of the collaborative robot is determined;
[0020] The estimated sliding distance is superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot.
[0021] In one embodiment, determining the collision prediction result of the collaborative robot under the control of the controller based on the positional relationship between the updated envelope and the object envelope includes:
[0022] The coordinate difference set between the updated envelope and the object envelope is obtained by calculating the difference between the coordinates of each point in the updated envelope and the object envelope.
[0023] If the origin of the coordinate system is located within the geometric convex hull represented by the coordinate difference set, it is determined that the cooperative robot will collide with the object to be avoided under the control of the controller.
[0024] Secondly, this application also provides a collaborative robot dual-channel collision prediction system, characterized in that the system includes: a camera component and a safety module connected to the camera component;
[0025] The camera component is used to determine protocol information for the object to be avoided by the collaborative robot; the protocol information is used to characterize the object envelope of the object to be avoided;
[0026] The security module is used to implement the methods described in the above embodiments.
[0027] Thirdly, this application also provides a dual-channel collision prediction device for collaborative robots, comprising:
[0028] The protocol information acquisition module is used to acquire the initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot; the protocol information is used to characterize the object envelope of the object to be avoided;
[0029] The code parsing module is used to parse the protocol information using a constraint protocol that matches the protocol information, and to determine the object envelope information of the object envelope;
[0030] An updated envelope determination module is used to determine the estimated sliding distance of the collaborative robot under the control of the controller, and to add the estimated sliding distance to the initial envelope radius to obtain the updated envelope of the collaborative robot.
[0031] The collision prediction result determination module is used to determine the collision prediction result of the collaborative robot under the control of the controller based on the positional relationship between the updated envelope and the object envelope.
[0032] Fourthly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps of the method described above.
[0033] Fifthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps of the method described above.
[0034] Sixthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of the method described above.
[0035] The aforementioned collaborative robot dual-channel collision prediction method, apparatus, computer equipment, computer-readable storage medium, and computer program product acquire the initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot. This allows for the determination of the specific situation of the collaborative robot and the object to be avoided. The protocol information characterizes the object envelope of the object to be avoided. Using a constraint protocol matching the protocol information, the protocol information is parsed to determine the object envelope information of the object envelope. The estimated sliding distance of the collaborative robot under the control of the controller is determined, and the estimated sliding distance is superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot. The initial envelope of the collaborative robot can be updated according to the deceleration process of the collaborative robot under the control of the controller. Based on the positional relationship between the updated envelope and the object envelope, the collision prediction result of the collaborative robot under the control of the controller is determined. This allows for the determination of whether the collaborative robot will collide with the object to be avoided when it decelerates to a standstill under the control of the controller. The above method for predicting collisions in collaborative robots enables dual-channel collision prediction, where the controller controls the motion and the safety module predicts collisions during the motion process. While ensuring the safety level of the PLD, it expands the integrator's development capabilities for the safety board where the safety module is located. Furthermore, collision prediction can be performed as long as the protocol information determined by the camera component is obtained. Even if there is an anomaly in the camera component, it will not affect the collision prediction process, thereby reducing the risk of collision prediction. Attached Figure Description
[0036] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0037] Figure 1 This is a diagram illustrating the application environment of a dual-channel collision prediction method for collaborative robots in one embodiment.
[0038] Figure 2 This is a flowchart illustrating a dual-channel collision prediction method for a collaborative robot in one embodiment.
[0039] Figure 3 This is a system framework diagram of a collaborative robot device including a dual-channel collision prediction system in one embodiment.
[0040] Figure 4 An analytical diagram of a human arm in one embodiment;
[0041] Figure 5This is a schematic diagram of a robotic arm using a linkage collision model for combined protection in one embodiment;
[0042] Figure 6 This is a flowchart illustrating a collaborative robot dual-channel collision prediction method in another embodiment;
[0043] Figure 7 This is a structural block diagram of a dual-channel collision prediction device for a collaborative robot in one embodiment.
[0044] Figure 8 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0045] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0046] The collaborative robot dual-channel collision prediction method provided in this application embodiment can be applied to, for example... Figure 1In the application environment shown, the safety module 102 can interact with the camera component 104 to obtain the protocol information determined by the camera component 104 for the collaborative robot to avoid objects. The controller 106 can control the collaborative robot 108 to move. The connection between the safety module 102 and the camera component 104 can be wired or wireless. The wireless connection can be, for example, Bluetooth, WIFI, etc., which are not limited here. The safety module 102 is a control board specifically designed to ensure the safety of the collaborative robot's movement. It mainly monitors the collaborative robot's movement position, movement speed, joint torque, overall power, and following error. The controller 106 is a real-time hardware layer below the control system and above the driver. The main task of this layer is to receive script instructions from the user, convert them into constrained target position instructions that can be executed by the robot hardware, and send them to the driver layer in real-time to drive the collaborative robot to move. The specific implementation method is through a planner. In this application, the constraint protocol enables the safety module 102 to support more functions, such as collision prediction for the collaborative robot involved in this application. The safety module 102 can also interact with the collaborative robot 108 to obtain the initial envelope radius of the collaborative robot 108, update the initial envelope of the collaborative robot 108, and determine the collision prediction result of the collaborative robot 108. Specifically, during the dual-channel collision prediction process of the collaborative robot, the safety module 102 obtains the initial envelope radius of the collaborative robot 108 and the protocol information determined by the camera component 104 for the object to be avoided by the collaborative robot 108; the protocol information is used to characterize the object envelope of the object to be avoided; using a constraint protocol that matches the protocol information, the protocol information is parsed to determine the object envelope information of the object envelope; the estimated sliding distance of the collaborative robot 108 under the control of the controller 106 is determined, and the estimated sliding distance is superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot 108; based on the positional relationship between the updated envelope and the object envelope, the collision prediction result of the collaborative robot 108 under the control of the controller 106 is determined.
[0047] In one exemplary embodiment, such as Figure 2 As shown, a dual-channel collision prediction method for collaborative robots is provided, which is then applied to... Figure 1 Taking the security module in the example, the explanation includes:
[0048] Step S202: Obtain the initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot.
[0049] Collaborative robots are robots designed to interact and collaborate directly with human workers in the same work environment. Unlike traditional industrial robots, collaborative robots are specifically designed for enhanced safety, allowing them to work closely with humans without physical barriers. The initial envelope radius refers to the radius of the initial envelope of the collaborative robot. Specifically, if a set of curves share a common boundary or surrounding area, this boundary or surrounding area can be called the envelope, and the envelope radius is the radius from this boundary curve to a reference point (such as the center of the curve). The camera component refers to the peripheral camera equipment used to acquire and encode data about the object to be avoided by the collaborative robot. The object to be avoided refers to a person, object, or obstacle that needs to be identified and avoided in a specific context. Protocol information is used to characterize the object envelope of the object to be avoided.
[0050] Specifically, the same constraint protocol can be configured for the safety module and the camera component. The camera collects data on the object to be avoided by the collaborative robot, and then encodes the data according to the constraint protocol to obtain the protocol information of the object to be avoided. The safety module can then obtain the protocol information determined by the camera component for the collaborative robot's object to be avoided. Similarly, the safety module also needs to obtain the initial envelope radius of the collaborative robot to determine its size. The initial envelope of the collaborative robot can be preset, and may include, for example, a capsule, a rounded frame, or a sphere. Furthermore, the process of obtaining the initial envelope radius and protocol information can be either active acquisition or passive reception.
[0051] For example, protocol information can be represented in the following format, where radius represents the radius of the object.
[0052] {
[0053] "ballCollision1":{
[0054] "offset":[0,-0.025,0.05],
[0055] "radius":0.11
[0056] }
[0057] "capsuleCollision1":{
[0058] "start":[0, 0, -0.09],
[0059] "end":[0, 0.23, -0.09],
[0060] "radius":0.045
[0061] }, ...
[0063] }
[0064] It's important to note that after the camera component detects an object to be avoided in the environment, it needs to transform that object into a combination of multiple envelopes. For example, when the object to be avoided is a human body, the human body can be roughly divided into arms, torso, and head; the arms can be divided into upper arms and lower arms. Human obstacle avoidance can be achieved by real-time skeletal recognition to determine the approximate positions of the human body's skeletal control points in space. Then, corresponding envelopes are generated based on the recognized skeletal control points: for example, the upper and lower arms can be represented as capsules, the torso as a rounded frame, and the head as a sphere, etc. Taking a desktop as another example, the table and walls are obstacles that the robotic arm needs to avoid. After the camera component recognizes these obstacles, it can mark the table and walls as spatial planes preset by the constraint protocol and transmit the parameter information of these spatial planes to the safety module externally through a safe channel.
[0065] Step S204: Using a constraint protocol that matches the protocol information, perform code parsing on the protocol information to determine the object envelope information of the object envelope.
[0066] In network communication, a constraint protocol refers to a set of rules used to ensure that the format, size, and transmission rate of data packets meet the requirements of network devices and protocols. Object envelope information refers to the specific information of an object's envelope; for example, in the case of an object envelope being a capsule, the object envelope information could be the capsule's center, radius, highest point, and lowest point.
[0067] Specifically, after obtaining the protocol information of the camera component for the collaborative robot to avoid the target object, since the protocol information is edited in a specific form through constraint protocols, it is necessary to use a constraint protocol that matches the protocol information to parse the code of the protocol information and obtain the object envelope information of the object envelope. It is understood that the number and type of object envelopes can be more than one. In one specific embodiment, the safety module can obtain the camera identification information of the camera component, search for the protocol corresponding to the camera identification information in the protocol database, use it as the constraint protocol that matches the protocol information, and use the constraint protocol to parse the code of the protocol information to determine the object envelope information of the object envelope. In another specific embodiment, a constraint protocol matching model can also be established. The constraint protocol matching model can be used to obtain the constraint protocol that matches the protocol information, and the code of the protocol information can be parsed to determine the object envelope information of the object envelope.
[0068] Step S206: Determine the estimated sliding distance of the collaborative robot under the control of the controller, and add the estimated sliding distance to the initial envelope radius to obtain the updated envelope of the collaborative robot.
[0069] The controller is a real-time hardware layer below the control system and above the actuators. Its main task is to receive script instructions from the user, convert them into constrained target position instructions executable by the robot hardware, and then send them to the actuator layer in real-time to drive the collaborative robot's movement. This is specifically implemented through a planner. The estimated sliding distance refers to the distance the collaborative robot will slide when its speed reaches zero after decelerating at its maximum deceleration rate. It is used to predict whether the collaborative robot will collide with the object to be avoided when its speed becomes zero. The updated envelope refers to the envelope updated from the initial envelope.
[0070] Specifically, to predict collisions between the collaborative robot and the object to be avoided, it is necessary to determine the estimated sliding distance of the collaborative robot under the control of the controller. That is, it is necessary to determine the distance the collaborative robot will slide when its speed becomes zero after decelerating at its maximum deceleration rate. Adding the estimated sliding distance to the initial envelope radius yields the updated envelope radius, which is the updated envelope itself. In one specific embodiment, the safety module can obtain the collaborative robot's maximum deceleration rate and current speed. Based on these two speeds, the estimated sliding distance is determined, and then added to the initial envelope radius to obtain the updated envelope. In another specific embodiment, an estimated sliding distance model can be established, using the collaborative robot's parameters as input and the estimated sliding distance as the output. This estimated sliding distance is then added to the initial envelope radius to obtain the updated envelope.
[0071] Step S208: Based on the positional relationship between the updated envelope and the object envelope, determine the collision prediction result of the collaborative robot under the control of the controller.
[0072] Positional relationship refers to the positional intersection relationship between the updated envelope and the object envelope. Collision prediction results include "collision" and "no collision".
[0073] Specifically, after determining the updated envelope of the collaborative robot, the collision prediction result of the collaborative robot can be obtained by determining whether a collision will occur between the collaborative robot and the object to be avoided, based on the positional relationship between the updated envelope and the object envelope. It can be understood that the number of updated envelopes and object envelopes can be one or more. In one specific embodiment, when there is one updated envelope and multiple object envelopes, the positional relationship between the updated envelope and each object envelope is determined. If there is an intersection between the updated envelope and at least one object envelope, the collision prediction result of the collaborative robot is considered a "collision". In another specific embodiment, when there are multiple updated envelopes and one object envelope, the positional relationship between each updated envelope and the object envelope is determined. If there is an intersection between at least one updated envelope and the object envelope, the collision prediction result of the collaborative robot under the control of the controller is considered a "collision". In another specific embodiment, when there are multiple update envelopes and multiple object envelopes, the positional relationship between each update envelope and each object envelope is determined. As long as there is at least one intersection between the positions of an update envelope and at least one object envelope, the collision prediction result of the collaborative robot under the control of the controller is considered to be "collision".
[0074] In the aforementioned dual-channel collision prediction method for collaborative robots, the initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot are obtained. This allows for the determination of the specific situation of the collaborative robot and the object to be avoided. The protocol information is used to characterize the object envelope of the object to be avoided. Using a constraint protocol that matches the protocol information, the protocol information is parsed to determine the object envelope information of the object envelope. The estimated sliding distance of the collaborative robot under the control of the controller is determined. The estimated sliding distance is superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot. The initial envelope of the collaborative robot can be updated according to the deceleration process of the collaborative robot under the control of the controller. Based on the positional relationship between the updated envelope and the object envelope, the collision prediction result of the collaborative robot under the control of the controller is determined. This allows for the determination of whether the collaborative robot will collide with the object to be avoided when it decelerates to a standstill under the control of the controller. The above method for predicting collisions in collaborative robots enables dual-channel collision prediction, where the controller controls the motion and the safety module predicts collisions during the motion process. While ensuring the safety level of the PLD, it expands the integrator's development capabilities for the safety board where the safety module is located. Furthermore, collision prediction can be performed as long as the protocol information determined by the camera component is obtained. Even if there is an anomaly in the camera component, it will not affect the collision prediction process, thereby reducing the risk of collision prediction.
[0075] In one exemplary embodiment, the object envelope information of the object envelope is determined by parsing the protocol information using a constraint protocol that matches the protocol information. This includes: obtaining camera identification information of the camera component; searching for a protocol in the protocol database that corresponds to the camera identification information as a constraint protocol that matches the protocol information; and parsing the protocol information using the constraint protocol to determine the object envelope information of the object envelope.
[0076] Among these, camera identification information refers to the identification information of camera components; that is, different camera components correspond to different camera identification information. The protocol database refers to a pre-established database containing multiple protocols.
[0077] Specifically, to ensure that the same constraint protocol is used with the camera component so that the code parsing is successful, the camera identification information of the camera component can be obtained first. Based on the camera identification information, the protocol corresponding to the camera identification information is searched in the protocol database as the constraint protocol that matches the protocol information. Then, the constraint protocol is used to parse the protocol information to determine the object envelope information of the object envelope.
[0078] In this embodiment, the corresponding constraint protocol is determined based on the camera identification information of the camera component, which can ensure that the safety module and the camera component use the same constraint protocol, thereby ensuring the accuracy of collision prediction.
[0079] In one exemplary embodiment, using a constraint protocol to parse protocol information to determine the object envelope information of the object envelope includes: obtaining the data format corresponding to the constraint protocol; and parsing the protocol information based on the data format to determine the object envelope information of the object envelope.
[0080] In this context, the data format of a constraint protocol typically refers to the format standard used in network communication, data exchange, or software interfaces to ensure that data meets specific constraints. These constraints can include data type, size, range, precision, etc. The specific data format of a constraint protocol depends on the specific protocol or domain in which it is applied.
[0081] Specifically, each constraint protocol corresponds to a different data format. When parsing the protocol information, it is necessary to first determine the data format corresponding to the constraint protocol, and then parse the protocol information based on the data format to determine the object envelope information of the object envelope. For example, the corresponding data in the protocol information can be extracted according to the data format to determine the object envelope information of the object envelope.
[0082] In this embodiment, the protocol information is parsed according to the data format corresponding to the constraint protocol, which ensures the normal progress of the code parsing process and thus the normal progress of the collision prediction process.
[0083] In an exemplary embodiment, determining the estimated sliding distance of the collaborative robot under the control of the controller, and superimposing the estimated sliding distance onto the initial envelope radius to obtain the updated envelope of the collaborative robot includes: obtaining the maximum deceleration speed and the current motion speed of the collaborative robot; determining the estimated sliding distance of the collaborative robot based on the maximum deceleration speed and the current motion speed; and superimposing the estimated sliding distance onto the initial envelope radius to obtain the updated envelope of the collaborative robot.
[0084] The maximum deceleration rate refers to the maximum deceleration rate during the collaborative robot's deceleration process, which characterizes how fast the collaborative robot decelerates. The current motion speed refers to the collaborative robot's motion speed at the current moment.
[0085] Specifically, the safety module can first obtain the maximum deceleration speed and current motion speed of the collaborative robot. The estimated sliding distance of the collaborative robot can be calculated from the final velocity (which is zero), the maximum deceleration speed, and the current motion speed. Then, the estimated sliding distance is superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot. In other words, the initial envelope of the collaborative robot needs to be expanded according to the estimated sliding distance to obtain the updated envelope.
[0086] In this embodiment, the estimated sliding distance of the collaborative robot is determined by the maximum deceleration speed and the current movement speed of the collaborative robot. The estimated sliding distance is then superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot, which can ensure the accuracy of collision prediction.
[0087] In an exemplary embodiment, the collision prediction result of the collaborative robot under the control of the controller is determined based on the positional relationship between the updated envelope and the object envelope. This includes: calculating the difference between the coordinates of each point in the updated envelope and the coordinates of each point in the object envelope to obtain the coordinate difference set between the updated envelope and the object envelope; and determining that the collaborative robot will collide with the object to be avoided under the control of the controller if the origin of the coordinates is located in the geometric convex hull represented by the coordinate difference set.
[0088] In this context, the coordinate difference set refers to the set of coordinate differences between the coordinates of each point in the update envelope and the coordinates of each point in the object envelope. These coordinate differences can be combined to form a geometric convex hull. The geometric convex hull is a concept in convex geometry, referring to the smallest convex polygon or polyhedron containing all points of a point set. In other words, if any line segments extending outward from the point set are completely contained within this smallest convex polygon or polyhedron, then this polygon or polyhedron is the convex hull of the point set.
[0089] Specifically, after determining the update envelope and the object envelope, the coordinates of each point in the update envelope and the coordinates of each point in the object envelope can be subtracted to obtain the coordinate difference set of the update envelope and the object envelope. If the origin of the coordinates is located in the geometric convex hull represented by the coordinate difference set, it is determined that the collaborative robot and the object to be avoided will collide. If the origin of the coordinates is not located in the geometric convex hull represented by the coordinate difference set, the collaborative robot and the object to be avoided will not collide.
[0090] In this embodiment, by determining whether the origin is included in the geometric convex hull represented by the coordinate difference set of the updated envelope and the object envelope, it is possible to determine whether the collaborative robot will collide with the object to be avoided under the control of the controller, which can improve the accuracy of collision prediction.
[0091] In an exemplary embodiment, a collaborative robot dual-channel collision prediction system is also provided, characterized in that the system includes: a camera component and a safety module connected to the camera component; the camera component is used to determine protocol information for the collaborative robot to avoid an object; the protocol information is used to characterize the object envelope of the object to be avoided; and the safety module is used to implement the method in any of the above embodiments.
[0092] The aforementioned dual-channel collision prediction system for collaborative robots acquires the initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided. This allows for the determination of the specific situation of both the collaborative robot and the object to be avoided. The protocol information characterizes the object envelope of the object to be avoided. Using a constraint protocol that matches the protocol information, the system parses the protocol information to determine the object envelope information and the estimated sliding distance of the collaborative robot under the controller's control. The estimated sliding distance is then superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot. The initial envelope of the collaborative robot can be updated based on the deceleration process under the controller's control. Based on the positional relationship between the updated envelope and the object envelope, the collision prediction result of the collaborative robot under the controller's control is determined. This system can determine whether the collaborative robot will collide with the object to be avoided when it decelerates to a standstill under the controller's control. The above method for predicting collisions in collaborative robots enables dual-channel collision prediction, where the controller controls the motion and the safety module predicts collisions during the motion process. While ensuring the safety level of the PLD, it expands the integrator's development capabilities for the safety board where the safety module is located. Furthermore, collision prediction can be performed as long as the protocol information determined by the camera component is obtained. Even if there is an anomaly in the camera component, it will not affect the collision prediction process, thereby reducing the risk of collision prediction.
[0093] In one specific embodiment, a collaborative robot device including a dual-channel collision prediction system is also provided, such as... Figure 3The diagram shows the overall system framework of the collaborative robot device, which comprises three main components: a controller primarily for processing user programs, a robot consisting of actuators and a robot body, and a safety controller for collision prediction. The safety controller is equivalent to the aforementioned safety module and is mounted on the robot's safety plate.
[0094] Specifically, the input module includes two safety channels: Safety Channel 1 and Safety Channel 2. This means that independent safety channels can be used to receive the driver's position and speed information, and independent industrial bus protocols can be used to receive constraint protocols provided by the camera components. The constraint protocols include the following types: spatial plane, sphere, capsule, and rounded frame.
[0095] The protocol information can be represented in one of the following formats, where radius represents the radius of the object.
[0096] {
[0097] "ballCollision1":{
[0098] "offset":[0,-0.025,0.05],
[0099] "radius":0.11
[0100] }
[0101] "capsuleCollision1":{
[0102] "start":[0, 0, -0.09],
[0103] "end":[0, 0.23, -0.09],
[0104] "radius":0.045
[0105] }, ...
[0107] }
[0108] After the camera component detects an object to be avoided in the environment, it needs to transform the object into a combination of multiple envelopes. For example, when the object to be avoided is a human body, the human body can be roughly divided into arms, torso, and head, such as... Figure 4As shown, an arm can be divided into the upper arm, forearm, and hand. For obstacle avoidance in the human body, the approximate location of the human's skeletal control points in space can be determined through real-time skeletal recognition. Then, corresponding envelopes are generated based on the recognized skeletal control points: for example, the upper and lower arms can be represented as capsules, the torso as a rounded frame, and the head as a sphere, etc. Taking a desktop as another example, the table and walls are obstacles that the robotic arm needs to avoid. After recognition by the camera component, the table and walls can be marked as spatial planes preset by the constraint protocol, and the parameter information of these spatial planes can be transmitted to the safety module externally through a safe channel.
[0109] Collision Prediction Module: The collision prediction process considers the specific deceleration and braking distance and deceleration time of the collaborative robot's arm. By obtaining the current motion speed of the collaborative robot in safety channel 1 and combining it with the robot's maximum deceleration speed, the estimated maximum sliding distance can be obtained. The safety module parses the protocol information, converting its content into object envelope information for internal judgment and negotiation. The actual radius of the robot's updated envelope will be superimposed on the estimated sliding distance given by the user to ensure user safety. Finally, the updated envelope is represented in the base coordinate system of the robotic arm body. Collision prediction is then performed. The robotic arm body is also labeled as a combination of a sphere, a capsule, and a rounded frame. Simultaneously, the joint positions of the robotic arm are obtained from safety channel 1, and a spatial sweep model of the links is generated. The updated envelope and object envelope are then used for negotiation; this step is called collision prediction. Specifically, we use the GJK (Gilbert-Johnson-Keerthi) algorithm for fast collision detection. For example... Figure 5 As shown, the robotic arm uses a linkage collision model for combined protection, where x-axis refers to the x-axis, y-axis to the y-axis, and z-axis to the z-axis.
[0110] Output Module: The output module includes safety I / O and virtual I / O. When an anomaly occurs, the safety I / O will change the level of the external I / O of the collaborative robot's electrical box, triggering a Cat1 emergency stop. If the collaborative robot fails to stop moving within the maximum deceleration time, the robotic arm will trigger a Cat0 emergency stop. The virtual I / O will be displayed on the user software and is not a real-time module.
[0111] In this embodiment, the integrator's development capabilities for the safety board can be expanded while ensuring the safety level of the performance level (PLd) defined in the ISO 13849-1 standard. Furthermore, this architecture meets the safety requirements of the PLd level, and malfunctions of the main controller will not affect the normal operation of the safety protection functions. Even if the host computer malfunctions in processing environmental data or in the control program, the protection function directly connected to the camera component and the collaborative robot can still function normally (provided that the constraints output by the camera component can be stably issued; however, the correctness and stability of the constraints need to be guaranteed by the vision algorithm).
[0112] Increased safety monitoring frequency: This method increases the monitoring frequency. Compared with traditional host computer software, which may encounter problems such as communication frame loss when handling safety functions externally, the safety module monitors the safety of robot constraints at fixed intervals. This is undoubtedly more reasonable in terms of architecture for high-speed moving robots.
[0113] Better scalability: This communication protocol is expected to be compatible with more sensors, such as ultrasonic sensors and infrared imaging.
[0114] In a specific embodiment, such as Figure 6 As shown, a dual-channel collision prediction method for collaborative robots is also provided, including:
[0115] Step S601: Obtain the initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot.
[0116] Among them, the protocol information is used to characterize the object envelope of the object to be evaded;
[0117] Step S602: Obtain the camera identification information of the camera component, and search for the protocol corresponding to the camera identification information in the protocol database as the constraint protocol that matches the protocol information.
[0118] Step S603: Obtain the data format corresponding to the constraint protocol, parse the protocol information based on the data format, and determine the object envelope information of the object envelope;
[0119] Step S604: Obtain the maximum deceleration speed and current movement speed of the collaborative robot; based on the maximum deceleration speed and current movement speed, determine the estimated sliding distance of the collaborative robot.
[0120] Step S605: The estimated sliding distance is superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot;
[0121] Step S606: Calculate the difference between the coordinates of each point in the update envelope and the coordinates of each point in the object envelope to obtain the coordinate difference set between the update envelope and the object envelope.
[0122] Step S607: If the origin of the coordinate system is located in the geometric convex hull represented by the coordinate difference set, it is determined that the collaborative robot will collide with the object to be avoided under the control of the controller.
[0123] It should be understood that although the steps in the flowcharts of the embodiments described above 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 flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0124] Based on the same inventive concept, this application also provides a collaborative robot dual-channel collision prediction device for implementing the aforementioned collaborative robot dual-channel collision prediction method. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in one or more embodiments of the collaborative robot dual-channel collision prediction device provided below can be found in the limitations of the collaborative robot dual-channel collision prediction method described above, and will not be repeated here.
[0125] In one exemplary embodiment, such as Figure 7 As shown, a collaborative robot dual-channel collision prediction device 700 is provided, including: a protocol information acquisition module 702, a code parsing module 704, an update envelope determination module 706, and a collision prediction result determination module 708, wherein:
[0126] The protocol information acquisition module 702 is used to acquire the initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot; the protocol information is used to characterize the object envelope of the object to be avoided.
[0127] The code parsing module 704 is used to parse the protocol information using a constraint protocol that matches the protocol information, and to determine the object envelope information of the object envelope.
[0128] The updated envelope determination module 706 is used to determine the estimated sliding distance of the collaborative robot under the control of the controller, and to add the estimated sliding distance to the initial envelope radius to obtain the updated envelope of the collaborative robot.
[0129] The collision prediction result determination module 708 is used to determine the collision prediction result of the collaborative robot under the control of the controller based on the positional relationship between the updated envelope and the object envelope.
[0130] In an exemplary embodiment, the code parsing module 704 includes: a camera identification information acquisition component, used to acquire camera identification information of a camera component; a database lookup component, used to search for a protocol corresponding to the camera identification information in a protocol database as a constraint protocol matching the protocol information; and a code parsing component, used to use the constraint protocol to perform code parsing on the protocol information to determine the object envelope information of the object envelope.
[0131] In an exemplary embodiment, the code parsing component is specifically used to: obtain the data format corresponding to the constraint protocol; and perform code parsing on the protocol information based on the data format to determine the object envelope information of the object envelope.
[0132] In an exemplary embodiment, the updated envelope determination module 706 is specifically used to: obtain the maximum deceleration speed and current motion speed of the collaborative robot; determine the estimated sliding distance of the collaborative robot based on the maximum deceleration speed and current motion speed; and superimpose the estimated sliding distance onto the initial envelope radius to obtain the updated envelope of the collaborative robot.
[0133] In an exemplary embodiment, the collision prediction result determination module 708 is specifically used to: calculate the difference between the coordinates of each point in the updated envelope and the coordinates of each point in the object envelope to obtain the coordinate difference set of the updated envelope and the object envelope; and determine that the collaborative robot will collide with the object to be avoided under the control of the controller when the origin of the coordinates is located in the geometric convex hull represented by the coordinate difference set.
[0134] Each module in the aforementioned collaborative robot dual-channel collision prediction device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the computer device's memory as software, so that the processor can call and execute the corresponding operations of each module.
[0135] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 8As shown, the computer device includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When executed by the processor, the computer program implements a dual-channel collision prediction method for collaborative robots. The display unit is used to form a visually visible image and can be a display screen, projection device, or virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0136] Those skilled in the art will understand that Figure 8 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0137] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method described above.
[0138] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the above-described method.
[0139] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the method described above.
[0140] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.
[0141] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.
[0142] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0143] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A method for predicting collisions in a collaborative robot using two channels, characterized in that, The method includes: The initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot are obtained; the protocol information is used to characterize the object envelope of the object to be avoided. Using a constraint protocol that matches the protocol information, the protocol information is parsed to determine the object envelope information of the object envelope; Obtain the maximum deceleration speed and current movement speed of the collaborative robot; Based on the maximum deceleration rate and the current movement speed, the estimated sliding distance of the collaborative robot is determined; The estimated sliding distance is superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot; The coordinate difference set between the updated envelope and the object envelope is obtained by calculating the difference between the coordinates of each point in the updated envelope and the object envelope. If the origin of the coordinate system is located within the geometric convex hull represented by the coordinate difference set, it is determined that the cooperative robot will collide with the object to be avoided under the control of the controller.
2. The method according to claim 1, characterized in that, The step of using a constraint protocol that matches the protocol information to parse the protocol information and determine the object envelope information of the object envelope includes: Obtain the camera identification information of the camera component; Search the protocol database for the protocol corresponding to the camera identification information, and use it as the constraint protocol that matches the protocol information; The constraint protocol is used to parse the protocol information to determine the object envelope information of the object envelope.
3. The method according to claim 2, characterized in that, The step of using the constraint protocol to parse the protocol information and determine the object envelope information of the object envelope includes: Obtain the data format corresponding to the constraint protocol; Based on the data format, the protocol information is parsed to determine the object envelope information of the object envelope.
4. A dual-channel collision prediction system for collaborative robots, characterized in that, The system includes: a camera assembly, and a security module connected to the camera assembly; The camera component is used to determine protocol information for the object to be avoided by the collaborative robot; the protocol information is used to characterize the object envelope of the object to be avoided; The security module is used to implement the method as described in any one of claims 1 to 3.
5. A dual-channel collision prediction device for collaborative robots, characterized in that, The device includes: The protocol information acquisition module is used to acquire the initial envelope radius of the collaborative robot and the protocol information determined by the camera component for the object to be avoided by the collaborative robot; the protocol information is used to characterize the object envelope of the object to be avoided; The code parsing module is used to parse the protocol information using a constraint protocol that matches the protocol information, and to determine the object envelope information of the object envelope; The envelope determination module is updated to obtain the maximum deceleration speed and current movement speed of the collaborative robot. Based on the maximum deceleration rate and the current movement speed, the estimated sliding distance of the collaborative robot is determined; The estimated sliding distance is superimposed on the initial envelope radius to obtain the updated envelope of the collaborative robot; The collision prediction result determination module is used to calculate the difference between the coordinates of each point in the updated envelope and the coordinates of each point in the object envelope, respectively, to obtain the coordinate difference set between the updated envelope and the object envelope; If the origin of the coordinate system is located within the geometric convex hull represented by the coordinate difference set, it is determined that the cooperative robot will collide with the object to be avoided under the control of the controller.
6. The apparatus according to claim 5, characterized in that, The code parsing module includes: A camera identification information acquisition component is used to acquire camera identification information of the camera component; A database lookup component is used to search for the protocol corresponding to the camera identification information in the protocol database, as a constraint protocol that matches the protocol information; A code parsing component is used to parse the protocol information using the constraint protocol to determine the object envelope information of the object envelope.
7. The apparatus according to claim 6, characterized in that, The code parsing component is specifically used for: Obtain the data format corresponding to the constraint protocol; Based on the data format, the protocol information is parsed to determine the object envelope information of the object envelope.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 3.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 3.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 3.