Double-mechanical-arm control method, system and equipment based on IROS and medium
Through IROS -based dual -robotic arm control methods, the problem of not flexible control of dual -robotic arm collaborative motion control has been solved, the collaboration movement and efficient control of dual -robotic arm are realized, and the applicability of the robotic arm is improved.
Patent Information
- Application Number
- CN202411347237.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-26
- Publication Date
- 2025-01-24
AI Technical Summary
The existing technology is difficult to achieve the coordinated movement of the dual robotic arms, resulting in insufficient flexibility and application in complex tasks.
Adopt a dual robot arm control method based on IROS, perform multi-robot arm control and information interaction through the IROS system, establish and convert the coordinate system of the robot arm, calculate the coordinate system transformation relationship, and use IROS to control the robot arm to quickly and accurately reach the specified pose .
The dual -robotic arm collaboration movement has been achieved, and the control flexibility and applicability of the dual -robotic arm can be improved, and the tasks of complex assembly and handling can be more accurately complete.
Smart Images

Figure CN119347748A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robotic arm control technology, and in particular to an IROS-based dual robotic arm control method, system, device and medium. Background Art
[0002] Dual robotic arm collaborative motion is an important research field in robotics, especially in the fields of industry, medical care, and services. The dual robotic arm collaborative system is designed to simulate the flexibility and coordination of human hands and can complete complex assembly, handling, welding and other tasks. The key to this technology lies in the precise coordination and motion control between the robotic arms, which enables the two robotic arms to perform tasks without interfering with each other.
[0003] IROS (Intelligent Robot Operating System) is an intelligent robot operating system. It is comparable to the open source robot operating system ROS (Robot Operating System) widely used in the industry. To address the shortcomings of ROS applications, such as poor real-time performance, instability, lack of security, and other shortcomings that make it difficult to commercialize, it adopts a completely self-developed approach. While improving security and reliability, its performance is more than 100 times that of ROS, and it is a comprehensive domestic alternative to ROS. To meet the higher real-time requirements of some robots, real-time transformation is carried out based on the open source Linux kernel, and the real-time operating system RLinux is developed and integrated with IROS, so that the average real-time performance of IROS can reach 0.1 milliseconds.
[0004] In summary, in order to improve the flexibility and applicability of the robot, it is necessary to design a dual-robotic arm collaborative control scheme based on IROS. Summary of the invention
[0005] The object of the present invention is to provide a dual robotic arm control method, system, device and medium based on IROS, so as to solve all or one of the above-mentioned problems existing in the prior art.
[0006] In order to solve the above technical problems, the specific technical solutions of the present invention are as follows: On the one hand, the present invention provides a dual-manipulator control method based on IROS, comprising the following steps: IROS communication: Based on the IROS environment, run the first node canSendMechanicalArm and the second node AppMechanicalArm; perform multi-robot control and multi-robot information exchange based on the first node and the second node; Coordinate system construction: Establishing a first coordinate system and a second coordinate system about two robotic arms; Dual robotic arm coordinate conversion: Calculating a coordinate system conversion relationship based on the first coordinate system and the second coordinate system; Dual robotic arm motion trajectory planning: The dual robot arm motion trajectory planning is performed according to the coordinate system conversion relationship or the first node and the second node.
[0007] In one embodiment, the multi-robot control and multi-robot information interaction based on the first node and the second node includes: Call the first node canSendMechanicalArm to obtain the robot arm control message from the Topic (canRecvTopic), and send it to the robot arm through the CAN protocol according to the relevant settings to control the operation of the robot arm; Call the second node AppMechanicalArm to send the robotic arm control message to the Topic (canSendTopic), and communicate with the first node canSendMechanicalArm through the libmacp.so dynamic library and shared memory.
[0008] In one embodiment, the multi-robot control and multi-robot information interaction based on the first node and the second node further includes: During the dual-robotics collaboration process, the current joint position and speed of each robotic arm are obtained through canRecvTopic in IROS, the target joint position of the operating device is subtracted from the current joint position, and the target joint position, speed, and current value are sent to the robotic arm through canSendTopic in IROS to perform related operations.
[0009] In one embodiment, the related operations include: Start, stop or set the first node canSendMechanicalArm message sending interval and read the most recent cached message; the first node canSendMechanicalArm is provided by IROS; the second node AppMechanicalArm is developed by application developers.
[0010] In one embodiment, establishing a first coordinate system and a second coordinate system about two robotic arms includes: Taking the fixed point as the base coordinate system T_base, the first coordinate system of the base of the first robotic arm relative to the fixed point is set to T_base1, the second coordinate system of the base of the second robotic arm relative to the fixed point is set to T_base2, the first coordinate system of the end of the first robotic arm relative to the base is set to T_arm1, and the second coordinate system of the end of the second robotic arm relative to the base is set to T_arm2.
[0011] In one embodiment, the calculating the coordinate system conversion relationship based on the first coordinate system and the second coordinate system includes: Set the end position of the first robot arm to T1_end, T1_end = T_base1*T_arm1; Set the end position of the second robot arm to T2_end, T2_end = T_base2*T_arm2; Set the ends of the two robotic arms to point to the same track, and the coordinate system transformation relationship is: T_base1*T_arm1=T_base2*T_arm2; T_arm2 = *T_base1*T_arm1; According to formula (4), the second robot arm can be obtained by the position and posture of the first robot arm and the coordinate system transformation relationship with a fixed point.
[0012] In one embodiment, the dual-manipulator motion trajectory planning according to the coordinate system conversion relationship or the first node and the second node includes: The first method is to control each robot arm to plan the motion trajectory, and use the position, velocity and acceleration sent to each joint by IROS to plan the motion trajectory. Or the second way, based on formula (4), under the premise of knowing the motion of one robotic arm, the motion trajectory of the other robotic arm can be calculated through the coordinate system conversion formula of the coordinate system conversion relationship, and then realized by the position, velocity and acceleration sent to each joint by IROS.
[0013] On the other hand, the present invention also provides a dual-manipulator control system based on IROS, comprising: The IROS communication module is used to: run the first node canSendMechanicalArm and the second node AppMechanicalArm based on the IROS environment; perform multi-robot control and multi-robot information exchange based on the first node and the second node; A coordinate system building module, used to: establish a first coordinate system and a second coordinate system about two robotic arms; A dual-manipulator coordinate conversion module is used to calculate a coordinate system conversion relationship based on a first coordinate system and a second coordinate system; The dual-robotic-arm motion trajectory planning module is used to: perform dual-robotic-arm motion trajectory planning according to the coordinate system conversion relationship or the first node and the second node.
[0014] On the other hand, the present invention also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the IROS-based dual-robotic arm control method are implemented.
[0015] On the other hand, the present invention further provides a computer device, comprising a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; wherein: The memory is used to store computer programs; The processor is used to execute the steps of the IROS-based dual-robotic-arm control method by running the program stored in the memory.
[0016] The beneficial effects of the technical solution of the present invention are: 1. The IROS-based dual-robotic arm control method described in the present invention can utilize the IROS system to realize the collaborative movement of dual robotic arms; first, the transformation formula of the corresponding robotic arm is obtained by utilizing the transformation relationship of each coordinate system, and secondly, IROS is utilized to control the robotic arm to quickly and accurately reach the specified position, thereby realizing the dual-robotic arm collaboration and improving the control flexibility and applicability of the dual robotic arms.
[0017] 2. The IROS-based dual-robotic-arm control system described in the present invention can realize the IROS-based dual-robotic-arm control method described in the present invention through the mutual cooperation of system modules.
[0018] 3. The computer-readable storage medium described in the present invention can realize the cooperation of the guidance system module, thereby realizing the IROS-based dual robotic arm control method described in the present invention, and the computer-readable storage medium described in the present invention also effectively improves the operability of the IROS-based dual robotic arm control method.
[0019] 4. The computer device described in the present invention can store and execute the computer-readable storage medium, thereby realizing the IROS-based dual-robotic arm control method described in the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0021] Figure 1 is a flow chart of the dual-manipulator control method based on IROS described in Example 1 of the present invention; Figure 2 Schematic diagram of the communication architecture of IROS in the dual-manipulator control method based on IROS described in Example 1 of the present invention; Figure 3 Schematic diagram of the coordinate system of the Shuang robot arm system in the dual robot arm control method based on IROS described in Example 1 of the present invention; Figure 4 Schematic diagram of the architecture of the dual-manipulator control system based on IROS described in Example 2 of the present invention; Figure 5 is a schematic diagram of the structure of the computer device described in Example 4 of the present invention; The symbols in the accompanying drawings are explained as follows: 1501, processor; 1502, communication interface; 1503, memory; 1504, communication bus. DETAILED DESCRIPTION
[0022] The preferred embodiments of the present invention are described in detail below in conjunction with the accompanying drawings so that the advantages and features of the present invention can be more easily understood by those skilled in the art, thereby making a clearer and more definite definition of the protection scope of the present invention.
[0023] In the description of the present invention, it should be noted that the embodiments described in the present invention are only part of the embodiments of the present invention, rather than all of the embodiments; based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of the present invention.
[0024] The terms "first", "second", etc. in the specification and claims of this article and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of this article described here can be implemented in an order other than those illustrated or described here. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, device, product or equipment that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or equipment. Example 1
[0025] This embodiment provides a dual-manipulator control method based on IROS, such as Figure 1~Figure 3 As shown, the following steps are included: S1, IROS communication: S100, based on the IROS environment, run the first node canSendMechanicalArm and the second node AppMechanicalArm; perform multi-robotic arm control and multi-robotic arm information exchange based on the first node and the second node; S2. Coordinate system construction: S200, establishing a first coordinate system and a second coordinate system about two robotic arms; S3, dual robot arm coordinate conversion: S300, calculating a coordinate system conversion relationship based on the first coordinate system and the second coordinate system; S4. Dual robotic arm motion trajectory planning: S400: planning a dual-manipulator motion trajectory according to the coordinate system conversion relationship or the first node and the second node.
[0026] In one embodiment, the multi-robot control and multi-robot information interaction based on the first node and the second node includes: Call the first node canSendMechanicalArm to obtain the robot arm control message from the Topic (canRecvTopic), and send it to the robot arm through the CAN protocol according to the relevant settings to control the operation of the robot arm; Call the second node AppMechanicalArm to send the robotic arm control message to the Topic (canSendTopic), and communicate with the first node canSendMechanicalArm through the libmacp.so dynamic library and shared memory.
[0027] In one embodiment, the multi-robot control and multi-robot information interaction based on the first node and the second node further includes: During the dual-robotics collaboration process, the current joint position and speed of each robotic arm are obtained through canRecvTopic in IROS, the target joint position of the operating device is subtracted from the current joint position, and the target joint position, speed, and current value are sent to the robotic arm through canSendTopic in IROS to perform related operations.
[0028] In one embodiment, the related operations include: Start, stop or set the message sending interval of the first node canSendMechanicalArm node and read the most recent cached message; the first node canSendMechanicalArm node is provided by IROS; the second node AppMechanicalArm node is developed by application developers.
[0029] In one embodiment, establishing a first coordinate system and a second coordinate system about two robotic arms includes: Taking the fixed point as the base coordinate system T_base, the first coordinate system of the base of the first robotic arm relative to the fixed point is set to T_base1, the second coordinate system of the base of the second robotic arm relative to the fixed point is set to T_base2, the first coordinate system of the end of the first robotic arm relative to the base is set to T_arm1, and the second coordinate system of the end of the second robotic arm relative to the base is set to T_arm2.
[0030] In one embodiment, the calculating the coordinate system conversion relationship based on the first coordinate system and the second coordinate system includes: Set the end position of the first robot arm to T1_end, T1_end = T_base1*T_arm1 (1); Set the end position of the second robot arm to T2_end, T2_end = T_base2*T_arm2 (2); Set the ends of the two robotic arms to point to the same track, and obtain the coordinate system transformation relationship: T_base1*T_arm1=T_base2*T_arm2 (3); T_arm2 = *T_base1*T_arm1(4); According to formula (4), the second robot arm can be obtained by the position and posture of the first robot arm and the coordinate system transformation relationship with a fixed point.
[0031] In one embodiment, the dual-manipulator motion trajectory planning according to the coordinate system conversion relationship or the first node and the second node includes: The first method is to control each robot arm to plan the motion trajectory, and use the position, velocity and acceleration sent to each joint by IROS to plan the motion trajectory. Or the second way, based on formula (4), under the premise of knowing the motion of one robotic arm, the motion trajectory of the other robotic arm can be calculated through the coordinate system conversion formula of the coordinate system conversion relationship, and then realized by the position, velocity and acceleration sent to each joint by IROS.
[0032] It should be noted that the above examples are only for explaining the present invention and cannot limit the protection scope of the present invention. Example 2
[0033] This embodiment is based on the same inventive concept as the IROS-based dual-manipulator control method described in Embodiment 1, and provides an IROS-based dual-manipulator control system, such as Figure 4 As shown, including: The IROS communication module is used to: run the first node canSendMechanicalArm and the second node AppMechanicalArm based on the IROS environment; perform multi-robot control and multi-robot information exchange based on the first node and the second node; A coordinate system building module, used to: establish a first coordinate system and a second coordinate system about two robotic arms; A dual-manipulator coordinate conversion module is used to calculate a coordinate system conversion relationship based on a first coordinate system and a second coordinate system; The dual-robotic-arm motion trajectory planning module is used to: perform dual-robotic-arm motion trajectory planning according to the coordinate system conversion relationship or the first node and the second node. Example 3
[0034] This embodiment provides a computer-readable storage medium, including: The storage medium is used to store computer software instructions used to implement the IROS-based dual robotic arm control method described in the above-mentioned Example 1, which includes instructions for executing the above-mentioned program set for the IROS-based dual robotic arm control method; specifically, the executable program can be built into the IROS-based dual robotic arm control system described in Example 2, so that the IROS-based dual robotic arm control system can implement the IROS-based dual robotic arm control method described in Example 1 by executing the built-in executable program.
[0035] In addition, the computer-readable storage medium of this embodiment may adopt any combination of one or more computer-readable storage media, wherein the computer-readable storage medium includes electrical, optical, electromagnetic, infrared or semiconductor systems, devices or components, or any combination thereof. Example 4
[0036] This embodiment provides an electronic device, such as Figure 5 As shown, the electronic device may include: a processor 1501 , a communication interface 1502 , a memory 1503 and a communication bus 1504 , wherein the processor 1501 , the communication interface 1502 , and the memory 1503 communicate with each other via the communication bus 1504 .
[0037] Memory 1503, used for storing computer programs; The processor 1501 is used to implement the steps of the dual-robotic-arm control method based on IROS described in the above-mentioned embodiment 1 when executing the computer program stored in the memory 1503.
[0038] As an embodiment of the present invention, the communication bus mentioned in the above terminal can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 5 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0039] As an implementation mode of the present invention, the communication interface is used for communication between the above-mentioned terminal and other devices.
[0040] As an embodiment of the present invention, the memory may include a random access memory (RAM) or a non-volatile memory, such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0041] As an embodiment of the present invention, the above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
[0042] Different from the prior art, the present application adopts a dual robotic arm control method, system, device and medium based on IROS, which can use the IROS system to realize the collaborative movement of dual robotic arms; first, the transformation formula of the corresponding robotic arm is obtained by using the transformation relationship of each coordinate system, and then IROS is used to control the robotic arm to quickly and accurately reach the specified position, thereby realizing the collaboration of dual robotic arms and improving the control flexibility and applicability of the dual robotic arms.
[0043] It should be understood that in the various embodiments of this document, the size of the serial numbers of the above-mentioned processes does not mean 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 document.
[0044] It should also be understood that in the embodiments of this document, the term "and / or" is only a description of the association relationship of the associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this document generally indicates that the associated objects before and after are in an "or" relationship.
[0045] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this article.
[0046] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0047] In the several embodiments provided herein, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of the units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, or can be electrical, mechanical or other forms of connection.
[0048] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the embodiments of this article.
[0049] In addition, each functional unit in each embodiment of this invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit may be implemented in the form of hardware or in the form of software functional unit.
[0050] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this article is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of this article. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes.
[0051] The above descriptions are merely embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.
Claims
1. A dual-manipulator control method based on IROS, characterized in that: The following steps are involved: IROS communication: Based on the IROS environment, the first node and the second node are operated; based on the first node and the second node, multi-manipulator control and multi-manipulator information interaction are performed; Coordinate system construction: Establishing a first coordinate system and a second coordinate system about two robotic arms; Dual robotic arm coordinate conversion: Calculating a coordinate system conversion relationship based on the first coordinate system and the second coordinate system; Dual robotic arm motion trajectory planning: The dual robot arm motion trajectory planning is performed according to the coordinate system conversion relationship or the first node and the second node.
2. The dual-manipulator control method based on IROS according to claim 1, characterized in that: The multi-manipulator control and multi-manipulator information interaction based on the first node and the second node include: Call the first node to obtain the robot arm control message from the Topic, and send it to the robot arm through the CAN protocol according to the relevant settings to control the operation of the robot arm; Call the second node to send the robot arm control message to the Topic, and communicate with the first node through the libmacp.so dynamic library and shared memory.
3. The dual-manipulator control method based on IROS according to claim 2, characterized in that: The multi-manipulator control and multi-manipulator information interaction based on the first node and the second node also includes: During the dual-robotics collaboration process, the current joint position and speed of each robotic arm are obtained through canRecvTopic in IROS, the target joint position of the operating device is subtracted from the current joint position, and the target joint position, speed, and current value are sent to the robotic arm through canSendTopic in IROS to perform related operations.
4. The dual-manipulator control method based on IROS according to claim 1, characterized in that: The related operations include: Start, stop or set the first node message sending interval, and read the most recent cached message; the first node is provided by IROS; the second node is developed by application developers.
5. The dual-manipulator control method based on IROS according to claim 1, characterized in that: The establishing of the first coordinate system and the second coordinate system about the two robotic arms comprises: Taking the fixed point as the base coordinate system T_base, the first coordinate system of the base of the first robotic arm relative to the fixed point is set to T_base1, the second coordinate system of the base of the second robotic arm relative to the fixed point is set to T_base2, the first coordinate system of the end of the first robotic arm relative to the base is set to T_arm1, and the second coordinate system of the end of the second robotic arm relative to the base is set to T_arm2.
6. The dual-manipulator control method based on IROS according to claim 1, characterized in that: The calculating the coordinate system conversion relationship based on the first coordinate system and the second coordinate system includes: Set the end position of the first robot arm to T1_end, T1_end = T_base1*T_arm1; Set the end position of the second robot arm to T2_end, T2_end = T_base2*T_arm2; Set the ends of the two robotic arms to point to the same track, and the coordinate system transformation relationship is: T_base1*T_arm1=T_base2*T_arm2; T_arm2 = *T_base1*T_arm1.
7. The dual-manipulator control method based on IROS according to claim 1, characterized in that: The dual-manipulator motion trajectory planning according to the coordinate system conversion relationship or the first node and the second node includes: The motion trajectory is planned by sending the position, velocity and acceleration of each joint through IROS. or, When the movement of one robotic arm is known, the motion trajectory of the other robotic arm is calculated through the coordinate system conversion formula of the coordinate system conversion relationship, and the position, velocity and acceleration of each joint are sent to iros.
8. A dual-manipulator control system based on IROS, characterized in that: include: The IROS communication module is used to: operate the first node and the second node based on the IROS environment; and perform multi-manipulator control and multi-manipulator information exchange based on the first node and the second node; A coordinate system building module, used to: establish a first coordinate system and a second coordinate system about two robotic arms; A dual-manipulator coordinate conversion module is used to calculate a coordinate system conversion relationship based on a first coordinate system and a second coordinate system; The dual-robotic-arm motion trajectory planning module is used to: perform dual-robotic-arm motion trajectory planning according to the coordinate system conversion relationship or the first node and the second node.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the IROS-based dual-robotic-arm control method described in any one of claims 1 to 7 are implemented.
10. A computer device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; wherein: The memory is used to store computer programs; The processor is used to execute the steps of the IROS-based dual-robotic-arm control method according to any one of claims 1 to 7 by running the program stored in the memory.
Citation Information
Cited By
Control method and device of surgical robot system and surgical robot system
CN121041043A