Teaching control method and system based on dual-arm robot
Patent Information
- Application Number
- CN202611223845.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-13
- Publication Date
- 2026-09-15
AI Technical Summary
[0004]基于此,本申请实施例提供了一种基于双臂机器人的示教控制方法及其系统,以解决现有技术中安全性较低的问题
[0006]Compared with existing technologies, the beneficial effects are as follows: The teaching control method based on a dual-arm robot provided in this application embodiment allows the terminal device to respond to the teaching start command information, effectively acquire the first real-time teaching trajectory information of the first end effector joint and the second real-time teaching trajectory information of the second end effector joint, then quickly generate the first envelope region information based on the first end effector position information, and generate the second envelope region information based on the second end effector position information, then accurately generate the first motion trend information based on the midpoint position information of two consecutive first end effector joints, and quickly generate the second motion trend information based on the midpoint position information of two consecutive second end effector joints, and finally reliably generate and execute motion speed control commands based on the first motion trend information, the second motion trend information, the first envelope region information and the second envelope region information, thereby effectively predicting and avoiding potential collision risks, significantly reducing the probability of collision, effectively improving safety, and to a certain extent solving the problem of low safety in the current system.
Smart Images

Figure CN122746983A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of intelligent control, and more specifically, to a teaching control method and system based on a dual-arm robot. Background Technology
[0002] The core function of dual-arm robots is to work in tandem, like humans, to complete complex tasks that are difficult to perform with a single arm, such as precision assembly and handling of flexible objects. They can also flexibly switch between collaborative and independent working modes to adapt to flexible manufacturing or high-risk, specialized operations. Because the kinematic model of a dual-arm robot is more complex, it is necessary to record and optimize the pose and timing of the two arms during collaborative movements point by point through teaching to avoid collisions and ensure the accuracy and repeatability of complex trajectories.
[0003] Currently, the teaching process of dual-arm robots relies heavily on the subjective experience of operators. Due to the varying skill levels of operators, it is difficult to completely avoid collision risks during the teaching phase. In actual production, a post-correction strategy is often adopted, which results in low safety and requires further improvement. Summary of the Invention
[0004] Based on this, embodiments of this application provide a teaching control method and system based on a dual-arm robot to solve the problem of low safety in the prior art.
[0005] In a first aspect, embodiments of this application provide a teaching control method based on a dual-arm robot, applied to a dual-arm robot, the dual-arm robot including a first end effector joint and a second end effector joint, the method comprising: In response to the teaching start command information, the first real-time teaching trajectory information of the first end effector and the second real-time teaching trajectory information of the second end effector are acquired. The first real-time teaching trajectory information includes multiple consecutive first end effector position information and multiple consecutive first end effector midpoint position information. The second real-time teaching trajectory information includes multiple consecutive second end effector position information and multiple consecutive second end effector midpoint position information. Based on the first end effector position information, a first envelope region information is generated, and based on the second end effector position information, a second envelope region information is generated; Based on the midpoint position information of two consecutive first distal joints, first motion trend information is generated, and based on the midpoint position information of two consecutive second distal joints, second motion trend information is generated. Based on the first motion trend information, the second motion trend information, the first envelope region information, and the second envelope region information, a motion speed control command is generated and executed.
[0006] Compared with existing technologies, the beneficial effects are as follows: The teaching control method based on a dual-arm robot provided in this application embodiment allows the terminal device to respond to the teaching start command information, effectively acquire the first real-time teaching trajectory information of the first end effector joint and the second real-time teaching trajectory information of the second end effector joint, then quickly generate the first envelope region information based on the first end effector position information, and generate the second envelope region information based on the second end effector position information, then accurately generate the first motion trend information based on the midpoint position information of two consecutive first end effector joints, and quickly generate the second motion trend information based on the midpoint position information of two consecutive second end effector joints, and finally reliably generate and execute motion speed control commands based on the first motion trend information, the second motion trend information, the first envelope region information and the second envelope region information, thereby effectively predicting and avoiding potential collision risks, significantly reducing the probability of collision, effectively improving safety, and to a certain extent solving the problem of low safety in the current system.
[0007] Secondly, embodiments of this application provide a teaching control system based on a dual-arm robot, applied to a dual-arm robot, the dual-arm robot including a first end effector joint and a second end effector joint, the system including: Real-time teaching trajectory information acquisition module: used to respond to the teaching start command information to acquire the first real-time teaching trajectory information of the first end effector and the second real-time teaching trajectory information of the second end effector, wherein the first real-time teaching trajectory information includes multiple consecutive first end effector position information and multiple consecutive first end effector midpoint position information, and the second real-time teaching trajectory information includes multiple consecutive second end effector position information and multiple consecutive second end effector midpoint position information; Envelope region information generation module: used to generate first envelope region information based on the first end effector position information, and to generate second envelope region information based on the second end effector position information; Motion trend information generation module: used to generate first motion trend information based on the midpoint position information of two consecutive first distal joints, and to generate second motion trend information based on the midpoint position information of two consecutive second distal joints; Motion speed control command generation module: used to generate and execute motion speed control commands based on the first motion trend information, the second motion trend information, the first envelope region information, and the second envelope region information.
[0008] Thirdly, embodiments of this application provide a terminal device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the method described in the first aspect above.
[0009] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the method described in the first aspect above.
[0010] It is understood that the beneficial effects of the second to fourth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here. Attached Figure Description
[0011] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments or the prior art will be briefly introduced below.
[0012] Figure 1 This is a flowchart illustrating a teaching control method provided in an embodiment of this application; Figure 2 This is a flowchart illustrating step S300 in a teaching control method provided in an embodiment of this application; Figure 3 This is a flowchart illustrating step S400 in a teaching control method provided in an embodiment of this application; Figure 4 This is a flowchart illustrating step S440 in a teaching control method provided in an embodiment of this application; Figure 5 This is a flowchart illustrating the process after step S400 in a teaching control method provided in an embodiment of this application; Figure 6 This is a block diagram of a teaching control system based on a dual-arm robot provided in one embodiment of this application; Figure 7 This is a schematic diagram of a terminal device provided in an embodiment of this application. Detailed Implementation
[0013] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.
[0014] In the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0015] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0016] To illustrate the technical solution described in this application, specific embodiments are provided below.
[0017] Please see Figure 1 , Figure 1 This is a flowchart illustrating the teaching control method based on a dual-arm robot provided in this embodiment. In this embodiment, the executing entity of the teaching control method is a terminal device. It is understood that the types of terminal devices include, but are not limited to, tablet computers, laptops, Ultra-Mobile Personal Computers (UMPCs), netbooks, Personal Digital Assistants (PDAs), etc. This embodiment does not impose any restrictions on the specific type of terminal device.
[0018] Please see Figure 1 The teaching control method provided in this application includes, but is not limited to, the following steps: In S100, in response to the teaching start command information, the first real-time teaching trajectory information of the first distal joint and the second real-time teaching trajectory information of the second distal joint are acquired.
[0019] Without loss of generality, this teaching control method can be applied to a dual-arm robot, which includes a first end effector joint and a second end effector joint, wherein the first end effector joint is used to describe the end effector joint corresponding to one of the arms of the dual-arm robot; and the second end effector joint is used to describe the end effector joint corresponding to the other arm of the dual-arm robot.
[0020] Specifically, the terminal device can first respond to the teaching start command information to effectively acquire the first real-time teaching trajectory information of the first end joint and the second real-time teaching trajectory information of the second end joint. The teaching start command information is used to instruct the start of teaching operations on the dual-arm robot; the first real-time teaching trajectory information is used to describe the real-time spatial motion trajectory of the first end joint during the teaching process; and the second real-time teaching trajectory information is used to describe the real-time spatial motion trajectory of the second end joint during the teaching process.
[0021] Without loss of generality, the first real-time teaching trajectory information includes multiple consecutive first end effector position information and multiple consecutive first end joint midpoint position information, wherein the first end effector position information is used to describe the position of the end effector mounted on the first end joint, and the first end joint midpoint position information is used to describe the position of the midpoint of the first end joint.
[0022] Specifically, the second real-time teaching trajectory information includes multiple consecutive second end effector position information and multiple consecutive second end joint midpoint position information. The second end effector position information is used to describe the position of the end effector installed on the second end joint, and the second end joint midpoint position information is used to describe the position of the midpoint of the second end joint.
[0023] In S200, a first envelope region information is generated based on the first end effector position information, and a second envelope region information is generated based on the second end effector position information.
[0024] Specifically, after the terminal device acquires the first real-time teaching trajectory information and the second real-time teaching trajectory information, the terminal device can accurately generate the first envelope region information based on the first end effector position information, and stably generate the second envelope region information based on the second end effector position information. The first envelope region information describes a spherical region centered on the first end effector position information and with a preset radius value; the second envelope region information describes a spherical region centered on the second end effector position information and with a radius value valued at the same radius. It should be noted that the specific radius value can be customized by the operator, and therefore will not be elaborated upon.
[0025] In S300, first motion trend information is generated based on the midpoint position information of two consecutive first end joints, and second motion trend information is generated based on the midpoint position information of two consecutive second end joints.
[0026] Specifically, after the terminal device generates the first envelope region information and the second envelope region information, the terminal device can quickly generate the first motion trend information based on the midpoint position information of two consecutive first end joints, and then quickly generate the second motion trend information based on the midpoint position information of two consecutive second end joints.
[0027] In some possible implementations, to achieve rapid generation of first and second motion trend information, please refer to [link to relevant documentation]. Figure 2 Step S300 includes, but is not limited to, the following steps: In S310, first motion trend information is generated based on the midpoint position information of any two consecutive first end joints.
[0028] Specifically, the terminal device can effectively generate first motion trend information based on the midpoint position information of any two consecutive first end joints, wherein the first motion trend information is used to describe the displacement vector of the first end joint between two adjacent frames in time sequence.
[0029] In S320, the motion time information of the first motion trend information is obtained.
[0030] Specifically, after the terminal device generates the first motion trend information, the terminal device can accurately obtain the motion time information of the first motion trend information, wherein the motion time information is used to describe the time corresponding to the first motion trend information.
[0031] In S330, second motion trend information is generated based on motion moment information and the midpoint position information of two consecutive second end joints.
[0032] Specifically, after the terminal device acquires motion timing information, it can effectively generate second motion trend information based on the motion timing information and the midpoint position information of two consecutive second end joints. The second motion trend information is used to describe the displacement vector of the second end joint between two adjacent frames in time sequence.
[0033] In S400, motion speed control commands are generated and executed based on the first motion trend information, the second motion trend information, the first envelope region information, and the second envelope region information.
[0034] Specifically, after the terminal device generates the second motion trend information, it can generate and execute motion speed control commands in real time based on the first motion trend information, the second motion trend information, the first envelope region information, and the second envelope region information. In this way, combined with the specific working conditions of the dual-arm robot, the terminal device can intelligently adjust the first and second end joints, so that the end joints can maintain the optimal cooperative state in complex movements, effectively predict and avoid potential collision risks, and significantly reduce the probability of collision.
[0035] For a more efficient implementation of generating and executing motion speed control commands, please refer to [link to relevant documentation]. Figure 3 Step S400 includes, but is not limited to, the following steps: In S410, the first motion velocity information of the first distal joint is obtained, and the second motion velocity information of the second distal joint is obtained.
[0036] Specifically, the terminal device can first obtain the first motion speed information of the first distal joint, and at the same time obtain the second motion speed information of the second distal joint. The first motion speed information is used to describe the motion speed of the first distal joint, and the second motion speed information is used to describe the motion speed of the second distal joint.
[0037] In S420, based on the first motion trend information, and according to the preset simulation duration information and the first motion speed information, the first motion region information is generated.
[0038] Specifically, after the terminal device acquires the first motion speed information and the second motion speed information, the terminal device can effectively generate the first motion region information based on the first motion trend information and the preset simulation duration information and the first motion speed information. The first motion region information is used to describe the spatial coverage area swept by the first end joint from its current position, moving along the direction indicated by the first motion trend information and at the rate corresponding to the first motion speed information within the time window corresponding to the simulation duration information.
[0039] In S430, based on the second motion trend information, the second motion region information is generated according to the simulation duration information and the second motion speed information.
[0040] Specifically, after the terminal device generates the first motion region information, the terminal device can accurately generate the second motion region information based on the second motion trend information, the simulation duration information, and the second motion speed information, thereby predicting the potential motion regions of the first and second distal joints. The second motion region information is used to describe the spatial coverage area swept by the second distal joint from its current position, moving along the direction indicated by the second motion trend information and at the rate corresponding to the second motion speed information within the time window corresponding to the simulation duration information.
[0041] In S440, motion speed control commands are generated and executed based on the first motion region information, the second motion region information, the first envelope region information, and the second envelope region information.
[0042] Specifically, after the terminal device generates the second motion region information, the terminal device can stably generate and execute motion speed control commands based on the first motion region information, the second motion region information, the first envelope region information, and the second envelope region information. The motion speed control commands include motion speed maintenance commands or motion speed reduction commands. The motion speed maintenance command is used to instruct the first and second distal joints to maintain their current motion speed, and the motion speed reduction command is used to instruct the first and second distal joints to reduce their current motion speed.
[0043] In some possible implementations, for the stable generation and execution of motion speed control commands, please refer to [link to relevant documentation]. Figure 4 Step S440 includes, but is not limited to, the following steps: In S441, first evaluation region information is generated based on first motion region information and first envelope region information, and second evaluation region information is generated based on second motion region information and second envelope region information.
[0044] Specifically, the terminal device can reliably generate first evaluation area information based on the first motion area information and the first envelope area information, and stably generate second evaluation area information based on the second motion area information and the second envelope area information. The first evaluation area information is used to describe the spatial coverage area swept by the first envelope area information when it moves according to the first motion area information, and the second evaluation area information is used to describe the spatial coverage area swept by the second envelope area information when it moves according to the second motion area information.
[0045] In S442, it is determined whether there is an overlapping area between the first evaluation area information and the second evaluation area information.
[0046] Specifically, after the terminal device generates the first evaluation area information and the second evaluation area information, the terminal device can determine whether there is an overlapping area between the first evaluation area information and the second evaluation area information.
[0047] In S443, if there is an overlapping area between the first evaluation area information and the second evaluation area information, a motion speed reduction command is generated and executed; otherwise, a motion speed maintenance command is generated and executed.
[0048] Specifically, if there is an overlapping area between the first evaluation area information and the second evaluation area information, it indicates that there may be a collision risk between the first end effector and the second end effector in the overlapping area. Therefore, the terminal device can generate and execute a motion speed reduction command to effectively reduce the impact load on the end effector under possible collision conditions. Otherwise, the terminal device can generate and execute a motion speed maintenance command to continue to perform the current task efficiently.
[0049] For further security enhancements in some possible implementations, please refer to [link / reference]. Figure 5 If there is an overlapping area between the first evaluation area information and the second evaluation area information, then after step S400, the method further includes, but is not limited to, the following steps: In S500, target location set information is determined based on overlapping regions.
[0050] Specifically, the terminal device can determine target location set information based on the overlapping area. This target location set information includes the midpoint position information of the first end effector and the midpoint position information of the second end effector when the first and second evaluation area information overlap. It should be noted that when the first and second evaluation area information overlap, it indicates a collision between the first and second end effectors.
[0051] In S510, new information on the midpoint position of the first and second distal joints is obtained again.
[0052] Specifically, after the terminal device determines the target location set information, the terminal device can obtain new first end joint midpoint location information and new second end joint midpoint location information again.
[0053] In S520, it is determined whether the new midpoint position information of the first distal joint is the same as the midpoint position information of the first distal joint in the target position set information, and whether the new midpoint position information of the second distal joint is the same as the midpoint position information of the second distal joint in the target position set information.
[0054] Specifically, after the terminal device acquires the new midpoint position information of the first end joint and the new midpoint position information of the second end joint, the terminal device can determine whether the new midpoint position information of the first end joint is the same as the midpoint position information of the first end joint in the target position set information, and at the same time determine whether the new midpoint position information of the second end joint is the same as the midpoint position information of the second end joint in the target position set information.
[0055] In S530, if the new midpoint position information of the first end joint is the same as the midpoint position information of the first end joint in the target position set information, and the new midpoint position information of the second end joint is the same as the midpoint position information of the second end joint in the target position set information, then a stop operation command is generated and a pre-collision alarm message is generated.
[0056] Specifically, if the new midpoint position information of the first end joint is the same as the midpoint position information of the first end joint in the target position set, and the new midpoint position information of the second end joint is the same as the midpoint position information of the second end joint in the target position set, then the terminal device can generate a stop operation command and a pre-collision alarm message. This allows the device to abort the movement of both joints before the first and second end actuators collide, preventing a collision accident. The stop operation command instructs the execution of emergency braking, and the pre-collision alarm message alerts the operator that the current movement trajectory poses a collision risk.
[0057] The implementation principle of the teaching control method for a dual-arm robot in this application embodiment is as follows: The terminal device can respond to the teaching start command information, effectively acquire the first real-time teaching trajectory information of the first end joint and the second real-time teaching trajectory information of the second end joint, and then quickly generate the first envelope region information based on the position information of the first end actuator, and generate the second envelope region information based on the position information of the second end actuator. Then, based on the midpoint position information of two consecutive first end joints, accurately generate the first motion trend information, and quickly generate the second motion trend information based on the midpoint position information of two consecutive second end joints. Finally, based on the first motion trend information, the second motion trend information, the first envelope region information and the second envelope region information, reliably generate and execute the motion speed control command, thereby effectively predicting and avoiding potential collision risks, significantly reducing the probability of collision and greatly improving safety.
[0058] It should be noted that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0059] Embodiments of this application also provide a teaching control system based on a dual-arm robot, applied to a dual-arm robot. The dual-arm robot includes a first end effector joint and a second end effector joint. For ease of explanation, only the parts relevant to this application are shown, such as... Figure 6 As shown, the system 60 includes: Real-time teaching trajectory information acquisition module 61: In response to the teaching start command information, it acquires the first real-time teaching trajectory information of the first end effector and the second real-time teaching trajectory information of the second end effector. The first real-time teaching trajectory information includes multiple consecutive first end effector position information and multiple consecutive first end effector midpoint position information, and the second real-time teaching trajectory information includes multiple consecutive second end effector position information and multiple consecutive second end effector midpoint position information. Envelope region information generation module 62: used to generate first envelope region information based on first end effector position information, and generate second envelope region information based on second end effector position information; Motion trend information generation module 63: used to generate first motion trend information based on the midpoint position information of two consecutive first distal joints, and to generate second motion trend information based on the midpoint position information of two consecutive second distal joints; Motion speed control command generation module 64: used to generate and execute motion speed control commands based on first motion trend information, second motion trend information, first envelope region information and second envelope region information.
[0060] Optionally, the first envelope region information is used to describe a spherical region centered on the first end effector position information and with a preset radius value as the sphere radius; the second envelope region information is used to describe a spherical region centered on the second end effector position information and with a radius value as the sphere radius; the aforementioned motion trend information generation module 63 includes: First motion trend information generation submodule: used to generate first motion trend information based on the midpoint position information of any two consecutive first end joints, wherein the first motion trend information is used to describe the displacement vector of the first end joint between two adjacent frames in time sequence; The motion moment information acquisition submodule is used to acquire motion moment information of the first motion trend information; The second motion trend information generation submodule is used to generate second motion trend information based on motion time information and the midpoint position information of two consecutive second end joints. The second motion trend information is used to describe the displacement vector of the second end joint between two adjacent frames in time sequence.
[0061] Optionally, the motion speed control command generation module 64 includes: Motion speed information acquisition submodule: used to acquire the first motion speed information of the first distal joint and the second motion speed information of the second distal joint; First motion region information generation submodule: Based on first motion trend information, according to preset simulation duration information and first motion speed information, generate first motion region information, wherein the first motion region information is used to describe the spatial coverage area swept by the first end joint from the current position, moving along the direction indicated by the first motion trend information and at the speed corresponding to the first motion speed information within the time window corresponding to the simulation duration information. The second motion region information generation submodule is used to generate second motion region information based on the second motion trend information, simulation duration information, and second motion speed information. The second motion region information describes the spatial coverage area swept by the second end joint from its current position, moving along the direction indicated by the second motion trend information and at the speed corresponding to the second motion speed information within the time window corresponding to the simulation duration information. Motion speed control command generation submodule: used to generate and execute motion speed control commands based on the first motion region information, the second motion region information, the first envelope region information, and the second envelope region information.
[0062] Optionally, the motion speed control command includes a motion speed maintain command or a motion speed decrease command; the above-mentioned motion speed control command generation submodule includes: First evaluation region information generation unit: used to generate first evaluation region information based on first motion region information and first envelope region information, and to generate second evaluation region information based on second motion region information and second envelope region information, wherein the first evaluation region information is used to describe the spatial coverage area swept by the first envelope region information when it moves according to the first motion region information, and the second evaluation region information is used to describe the spatial coverage area swept by the second envelope region information when it moves according to the second motion region information; Overlapping region determination unit: used to determine whether there is an overlapping region between the first evaluation region information and the second evaluation region information; Motion speed decrease instruction generation unit: If there is an overlapping area between the first evaluation area information and the second evaluation area information, generate and execute a motion speed decrease instruction; otherwise, generate and execute a motion speed maintain instruction.
[0063] Optionally, if there is an overlapping area between the first evaluation area information and the second evaluation area information, then the system 60 further includes: Target location set information determination module: used to determine target location set information based on overlapping regions, wherein the target location set information includes the midpoint location information of the first distal joint and the midpoint location information of the second distal joint when the first evaluation region information and the second evaluation region information overlap; The module for re-acquiring midpoint position information of the distal joint is used to re-acquire new midpoint position information of the first and second distal joints. End-joint midpoint position information determination module: used to determine whether the new first end-joint midpoint position information is the same as the first end-joint midpoint position information in the target position set information, and whether the new second end-joint midpoint position information is the same as the second end-joint midpoint position information in the target position set information; Stop running command generation module: If the new first end joint midpoint position information is the same as the first end joint midpoint position information in the target position set information, and the new second end joint midpoint position information is the same as the second end joint midpoint position information in the target position set information, then a stop running command is generated, and a pre-collision alarm information is generated.
[0064] It should be noted that the information interaction and execution process between the above modules are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, which will not be repeated here.
[0065] This application also provides a terminal device, such as... Figure 7 As shown, the terminal device 70 of this embodiment includes: a processor 71, a memory 72, and a computer program 73 stored in the memory 72 and executable on the processor 71. When the processor 71 executes the computer program 73, it implements the steps described in the above-described teaching control method embodiment, for example... Figure 1 Steps S100 to S400 are shown; or, when processor 71 executes computer program 73, it implements the functions of each module in the above-described device, for example... Figure 6 The functions of the real-time teaching trajectory information acquisition module 61 to the motion speed control command generation module 64 are shown.
[0066] The terminal device 70 can be a desktop computer, laptop, handheld computer, cloud server, or other computing device, and includes, but is not limited to, a processor 71 and a memory 72. Those skilled in the art will understand that... Figure 7 This is merely an example of terminal device 70 and does not constitute a limitation on terminal device 70. It may include more or fewer components than shown, or combine certain components, or different components. For example, terminal device 70 may also include input / output devices, network access devices, buses, etc.
[0067] The processor 71 can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.; the general-purpose processor can be a microprocessor or any conventional processor, etc.
[0068] The memory 72 can be an internal storage unit of the terminal device 70, such as the hard disk or memory of the terminal device 70. The memory 72 can also be an external storage device of the terminal device 70, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the terminal device 70. Furthermore, the memory 72 can include both internal storage units and external storage devices of the terminal device 70. The memory 72 can also store computer program 73 and other programs and data required by the terminal device 70. The memory 72 can also be used to temporarily store data that has been output or will be output.
[0069] One embodiment of this application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium can include any entity or device capable of carrying computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium, etc.
[0070] The above are all preferred embodiments of this application, and are not intended to limit the scope of protection of this application. Therefore, all equivalent changes made in accordance with the methods, principles and structures of this application should be covered within the scope of protection of this application.
Claims
1. A teaching control method for a dual-arm robot, applied to a dual-arm robot, the dual-arm robot comprising a first end effector joint and a second end effector joint, characterized in that, The method includes: In response to the teaching start command information, the first real-time teaching trajectory information of the first end effector and the second real-time teaching trajectory information of the second end effector are acquired. The first real-time teaching trajectory information includes multiple consecutive first end effector position information and multiple consecutive first end effector midpoint position information. The second real-time teaching trajectory information includes multiple consecutive second end effector position information and multiple consecutive second end effector midpoint position information. Based on the first end effector position information, a first envelope region information is generated, and based on the second end effector position information, a second envelope region information is generated; Based on the midpoint position information of two consecutive first distal joints, first motion trend information is generated, and based on the midpoint position information of two consecutive second distal joints, second motion trend information is generated. Based on the first motion trend information, the second motion trend information, the first envelope region information, and the second envelope region information, a motion speed control command is generated and executed.
2. The method according to claim 1, characterized in that, The first envelope region information is used to describe a spherical region formed by taking the first end effector position information as the center and a preset radius value as the radius of the sphere. The second envelope region information is used to describe a spherical region formed by taking the second end effector position information as the center and the radius value as the radius of the sphere. The step of generating first motion trend information based on the midpoint position information of two consecutive first distal joints, and generating second motion trend information based on the midpoint position information of two consecutive second distal joints, includes: Based on the midpoint position information of any two consecutive first end joints, first motion trend information is generated, wherein the first motion trend information is used to describe the displacement vector of the first end joint between two adjacent frames in time sequence. Obtain the motion time information of the first motion trend information; Based on the motion time information, second motion trend information is generated according to the midpoint position information of two consecutive second end joints, wherein the second motion trend information is used to describe the displacement vector of the second end joint between two adjacent frames in time sequence.
3. The method according to claim 2, characterized in that, The step of generating and executing motion speed control commands based on the first motion trend information, the second motion trend information, the first envelope region information, and the second envelope region information includes: Obtain the first motion velocity information of the first distal joint, and obtain the second motion velocity information of the second distal joint; Based on the first motion trend information, according to the preset simulation duration information and the first motion speed information, the first motion region information is generated. The first motion region information is used to describe the spatial coverage area swept by the first end joint from its current position, moving along the direction indicated by the first motion trend information and at the speed corresponding to the first motion speed information within the time window corresponding to the simulation duration information. Based on the second motion trend information, and according to the simulation duration information and the second motion speed information, the second motion region information is generated. The second motion region information is used to describe the spatial coverage area swept by the second end joint from its current position, moving along the direction indicated by the second motion trend information and at the speed corresponding to the second motion speed information within the time window corresponding to the simulation duration information. Based on the first motion region information, the second motion region information, the first envelope region information, and the second envelope region information, a motion speed control command is generated and executed.
4. The method according to claim 3, characterized in that, The motion speed control command includes a motion speed maintenance command or a motion speed reduction command; the step of generating and executing the motion speed control command based on the first motion region information, the second motion region information, the first envelope region information, and the second envelope region information includes: Based on the first motion region information and the first envelope region information, a first evaluation region information is generated, and based on the second motion region information and the second envelope region information, a second evaluation region information is generated. The first evaluation region information is used to describe the spatial coverage area swept by the first envelope region information when it moves according to the first motion region information, and the second evaluation region information is used to describe the spatial coverage area swept by the second envelope region information when it moves according to the second motion region information. Determine whether there is an overlapping area between the first evaluation area information and the second evaluation area information; If there is an overlapping area between the first evaluation area information and the second evaluation area information, a motion speed reduction command is generated and executed; otherwise, a motion speed maintenance command is generated and executed.
5. The method according to claim 4, characterized in that, If there is an overlapping area between the first evaluation region information and the second evaluation region information, then after generating and executing the motion speed control command based on the first motion trend information, the second motion trend information, the first envelope region information, and the second envelope region information, the method further includes: Based on the overlapping region, target location set information is determined, wherein the target location set information includes the midpoint location information of the first end joint and the midpoint location information of the second end joint when the first evaluation region information and the second evaluation region information overlap. Obtain new midpoint position information of the first and second distal joints again; Determine whether the new midpoint position information of the first distal joint is the same as the midpoint position information of the first distal joint in the target position set information, and whether the new midpoint position information of the second distal joint is the same as the midpoint position information of the second distal joint in the target position set information; If the new midpoint position information of the first end joint is the same as the midpoint position information of the first end joint in the target position set, and the new midpoint position information of the second end joint is the same as the midpoint position information of the second end joint in the target position set, then a stop operation command is generated, and a pre-collision alarm is generated.
6. A teaching control system based on a dual-arm robot, characterized in that, Applied to a dual-arm robot, the dual-arm robot including a first end-effector and a second end-effector, the system includes: Real-time teaching trajectory information acquisition module: used to respond to the teaching start command information to acquire the first real-time teaching trajectory information of the first end effector and the second real-time teaching trajectory information of the second end effector, wherein the first real-time teaching trajectory information includes multiple consecutive first end effector position information and multiple consecutive first end effector midpoint position information, and the second real-time teaching trajectory information includes multiple consecutive second end effector position information and multiple consecutive second end effector midpoint position information; Envelope region information generation module: used to generate first envelope region information based on the first end effector position information, and to generate second envelope region information based on the second end effector position information; Motion trend information generation module: used to generate first motion trend information based on the midpoint position information of two consecutive first distal joints, and to generate second motion trend information based on the midpoint position information of two consecutive second distal joints; Motion speed control command generation module: used to generate and execute motion speed control commands based on the first motion trend information, the second motion trend information, the first envelope region information, and the second envelope region information.
7. The system according to claim 6, characterized in that, The first envelope region information is used to describe a spherical region formed by taking the first end effector position information as the center and a preset radius value as the radius of the sphere. The second envelope region information is used to describe a spherical region formed by taking the second end effector position information as the center and the radius value as the radius of the sphere. The motion trend information generation module includes: First motion trend information generation submodule: used to generate first motion trend information based on the midpoint position information of any two consecutive first end joints, wherein the first motion trend information is used to describe the displacement vector of the first end joint between two adjacent frames in time sequence. The motion time information acquisition submodule is used to acquire the motion time information of the first motion trend information; The second motion trend information generation submodule is used to generate second motion trend information based on the motion time information and the midpoint position information of two consecutive second end joints. The second motion trend information is used to describe the displacement vector of the second end joint between two adjacent frames in time sequence.
8. A terminal device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 5.
9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 5.