Human-machine cooperation method and system based on network physical production system and MQTT

By decomposing basic functional blocks in the network physical production system and publishing and subscribing using the MQTT protocol, and combining the KUKA robot arm kinematic model for trajectory teaching control, the problems of human-computer collaboration delay and slow response time in the existing technology are solved. Improves operability and system feasibility.

CN119484600APending Publication Date: 2025-02-18NAT IND INFORMATION SECURITY DEV RES CENT
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411423478.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-12
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

The human-computer collaboration realized in the prior art faces problems such as long delay and slow response time, resulting in inefficient use.

Method used

Using a human-machine collaboration method based on the network physical production system and MQTT, the network physical production system of industrial robots is decomposed into basic functional blocks, and the MQTT protocol is used for publishing and subscribing, and combining the KUKA robot arm kinematic model for trajectory teaching control. Realize human-computer collaboration.

Benefits of technology

It greatly improves the user's operability and system feasibility, reduces delay, improves response time, and improves the efficiency of human-computer collaboration.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119484600A_ABST
    Figure CN119484600A_ABST
Patent Text Reader

Abstract

The invention discloses a human-machine cooperation method and system based on a network physical production system and MQTT, and relates to the computer application technology, and the method comprises the steps that the network physical production system CPPS based on an industrial robot is used for human-robot cooperation HRC to be decomposed into basic function blocks FBs, the welding task is completed based on the FBs, each FB is executed through an algorithm, and the algorithm is executed through the algorithm; any FB communicates with a robot controller using an MQTT protocol and is compiled to send commands to a robot operating system (ROS) to control arm motion; the MQTT protocol is utilized to publish and subscribe FBs, and track teaching control is performed based on a KUKA robot arm kinematics model, so that man-machine cooperation is realized. According to the application, the collaborative robot platform which is safe to use and easy to program is developed to execute repeated welding tasks, track teaching is realized, the operability of a user and the feasibility of the system are greatly improved, the time delay is reduced, and the response time is shortened.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer application technology, and in particular to a human-machine collaboration method and system based on a network physical production system and MQTT. Background Art

[0002] The existing technical solutions separate humans from robots, and humans cannot operate welding robots completely independently, which reduces the efficiency of use and does not produce collaborative behavior. To address this problem, human-robot collaboration (HRC) integrates human behavior with robot assistance. Machines do not replace humans, but complement their capabilities and relieve their heavy tasks. This is a trend in the manufacturing industry. In the factory of the future, there is no separation between automated and manual workstations. Humans and robots collaborate in an optimal way, without separation and without safety fences. Industrial robots are complex machines that combine three specific elements: operating elements that perform actions, central processing units (CPUs) that store and execute control programming, and power supplies. With the advancement of new technologies and the industry's demand for flexibility, current robot control systems tend to incorporate manufacturing paradigms into cyber-physical production systems (CPPS).

[0003] The human-machine collaboration implemented in the existing technology faces problems such as long delay and slow response time. Summary of the invention

[0004] The embodiment of the present application provides a human-machine collaboration method and system based on a network physical production system and MQTT, which will be developed for using a safe and easy-to-program collaborative robot platform to perform repetitive welding tasks, realize trajectory teaching, greatly improve user operability and system feasibility, reduce latency, and improve response time.

[0005] The embodiment of the present application provides a human-machine collaboration method based on a network physical production system and MQTT, including:

[0006] The cyber-physical production system CPPS based on industrial robots for human-robot collaboration HRC is decomposed into basic function blocks FBs to complete the welding task based on FBs, where each FB is executed by an algorithm, and any FB communicates with the robot controller using the MQTT protocol and is compiled to send commands to the Robot Operating System (ROS) to control the arm movement;

[0007] The MQTT protocol is used to publish and subscribe to FBs, and the trajectory teaching control is performed based on the kinematic model of the KUKA robot arm to achieve human-robot collaboration.

[0008] Optional, MQTT-based publishing and subscription FBs include:

[0009] Integrate the MQTT protocol in each FB under IEC 61499.

[0010] Optional, MQTT-based publishing and subscription FBs include:

[0011] MQTT Arm Subscribe implements the subscription mechanism, and MQTT Arm Publish based on the MQTT protocol publishes messages after connecting to the broker.

[0012] Optional, MQTT-based publishing and subscription FBs include:

[0013] MQTT uses topic-based messages to filter agents, and each message contains a topic.

[0014] Optional trajectory teaching control based on the KUKA robot arm kinematic model includes:

[0015] The control model is established based on a robot manipulator consisting of n links:

[0016]

[0017] in, represents the Lagrangian, represents the kinetic energy of the robot, represents the potential energy of the robot, q = [q1, q2, ..., qn]^T;

[0018] The torque of each joint satisfies:

[0019]

[0020] Among them, t usually represents time. In the kinematic and dynamic analysis of robots, t can be used to indicate the specific time point when a certain action or state occurs.

[0021] i indicates that this index is often used to refer to a specific component or joint in a robotic system. For example, in a multi-joint robot, i might be used to refer to the i-th joint. In programming and mathematical expressions, i is also often used as a loop variable.

[0022] n usually represents the number of joints or degrees of freedom in a robot system. For example, a robot with n joints would have n as the total number of degrees of freedom.

[0023] τ i Indicates the torque or moment of the i-th joint. In the robot's dynamic equation, τ_i is the torque acting on the i-th joint, which is generated by the motor or actuator to drive the robot's joint motion;

[0024] In the case of the arm robot with torque, the gravity vector is determined as:

[0025]

[0026] Among them, K p Represents proportional gain. In control theory, especially in PID controllers, K_p is the part of proportional control, which is proportional to the current value of the error signal.

[0027] K d Indicates the derivative gain. In a PID controller, K_d is the part of the differential control, which is proportional to the rate of change of the error signal (i.e., the derivative of the error).

[0028] g usually represents the gravity vector or gravitational acceleration. For example, in the dynamics equations of a robot, g represents the acceleration due to gravity.

[0029] Denote that M(q) is the inertia matrix of the robot, which depends on the joint angles q of the robot. represents the joint acceleration, which is the second-order derivative of the position. Therefore, Represents the inertial forces and torques in the robot's dynamics equations.

[0030] represents the Coriolis and centrifugal force matrices, which depend on the joint angle q and the joint angular velocity This matrix describes the forces and torques due to joint motion.

[0031] g(q) represents the gravity vector, which depends on the joint angle q. This vector represents the force and torque due to gravity at each joint.

[0032] represents the friction force, which may depend on the joint angular velocity q·. Friction forces usually include viscous friction and Coulomb friction, which hinder the movement of the joint.

[0033] An embodiment of the present application also proposes a human-machine collaboration system based on a network-physical production system and MQTT, including a processor and a memory, wherein a computer program is stored on the memory, and when the computer program is executed by the processor, the steps of the human-machine collaboration method based on a network-physical production system and MQTT as described above are implemented.

[0034] The embodiments of the present application will be developed for using a safe and easy-to-program collaborative robot platform to perform repetitive welding tasks, realize trajectory teaching, greatly improve user operability and system feasibility, reduce latency, and improve response time.

[0035] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] Various other advantages and benefits will become apparent to those of ordinary skill in the art by reading the detailed description of the preferred embodiments below. The accompanying drawings are only for the purpose of illustrating the preferred embodiments and are not to be considered as limiting the present application. Also, the same reference symbols are used throughout the accompanying drawings to represent the same components. In the accompanying drawings:

[0037] Figure 1 The basic process diagram of the human-machine collaboration method according to the embodiment of the present application is shown below;

[0038] Figure 2 This is a technical architecture diagram of the human-machine collaboration method according to an embodiment of the present application;

[0039] Figure 3 This is a schematic diagram of the CPPS architecture of the human-machine collaboration method according to an embodiment of the present application;

[0040] Figure 4 This is a data packet processed in a publish / subscribe request of the human-machine collaboration method in an embodiment of the present application. DETAILED DESCRIPTION

[0041] The exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.

[0042] The present application relates to a method for human-machine collaboration based on a cyber-physical production system and MQTT. The trend in robot cells is human-robot collaboration (HRC), in which robots and humans work together. Cyber-physical production systems (CPPS) and Industrial Internet of Things (IIoT) will increase the flexibility of future production systems in the latest smart factories. IEC-61499 is a standard based on function blocks (FBs) that uses reusable and modular software to design industrial control systems. The use of FBs is suitable for implementing CPPS. The method of the present application proposes a robot control method based on the IEC-61499 standard based on the MQTT protocol for HRC. In the embodiment of the present application, an industrial robot-based CPPS for HRC is decomposed into FBs to complete the welding task. The results of the case study show that the FB-based CPPS has potential capabilities in the HRC-based welding process.

[0043] A specific embodiment of the present application provides a human-machine collaboration method based on a network physical production system and MQTT. The method of the present application implements the human-machine collaboration of the network physical production system and MQTT based on the architecture proposed by HRC of IEC 61499, such as Figure 1 As shown, the following steps are included:

[0044] In step S101, the cyber-physical production system CPPS based on industrial robots for human-robot collaboration HRC is decomposed into basic function blocks FBs to complete the welding task based on FBs, wherein each FB is executed by an algorithm, any FB communicates with the robot controller using the MQTT protocol, and is compiled to send commands to the robot operating system (ROS) to control the arm movement. In a specific example, the FB architecture is used to implement the modules in the CPPS to increase the autonomy and reusability of the modules.

[0045] In a specific example, the FB is programmed to send commands to the Robot Operating System (ROS) to control the arm motion, the FB communicates with the robot controller using the MQTT protocol, and the FB ultimately controls the trajectory of the robot arm.

[0046] In step S102, the MQTT protocol is used to publish and subscribe to FBs, and the trajectory teaching control is performed based on the KUKA robot arm kinematic model to achieve human-machine collaboration.

[0047] In some embodiments, the publishing and subscribing FBs based on the MQTT protocol includes: integrating the MQTT protocol under IEC 61499 for each FB. In a specific example, the eclipse mosquitto library can be used, and the FBs integrate the MQTT protocol under IEC 61499, which is fully scalable and supports a multi-threaded architecture, with each connection operated by a separate thread. The 4diac-IDE framework is used to develop SIFBs running on the 4diacFORTE runtime. The support of this network interface is the implementation of a layer design pattern that communicates with a communication stack built in C++.

[0048] In some embodiments, publishing and subscribing to FBs based on the MQTT protocol includes:

[0049] MQTT Arm Subscribe implements the subscription mechanism, and MQTT Arm Publish based on the MQTT protocol publishes messages after connecting to the broker.

[0050] The FBs of the embodiment of the present application are MQTT Arm Subscribe and MQTT Arm Publish, which have different input events, such as INIT, REQ, EMR, and output events, such as INITO, CNF, and ERR. Both FBs have input data terminals, such as Host IP, where the user inserts the IP of the proxy direction, and Topic, where the user uploads and downloads data, which is essentially a string parameter.

[0051] MQTT Arm Subscribe implements a subscription mechanism that maintains a local copy of the monitored items. The local copy can be changed by updating its properties without affecting the state on the broker. MQTT Arm Publish has a mechanism to publish messages once connected to the broker.

[0052] In some embodiments, publishing and subscribing to FBs based on the MQTT protocol includes: MQTT uses topic-based messages to filter agents, and each message contains a topic.

[0053] In a specific example, MQTT uses topic-based message filtering on the broker. Each message must contain a topic, which the broker can use to forward the message to the client.

[0054] The robotic arm control FBs of this application are compiled using the KUKA arm robot driver, allowing functions to interact with the robot logic resources. The KUKA driver stack obtains C++ classes that allow low-level access by high-level applications through two parts: (1) the EtherCAT driver and (2) the KUKA API. The EtherCAT driver uses the Source OpenEtherCAT Master (SOEM) operation structure in the processing device, enabling it to communicate and drive all the actuators of the KUKA arm robot at the lowest level. Using the operations established by the first layer of stack operations as a starting point, the KUKA arm robot is a set of developed FBs that provide additional functionality related to the arm kinematics and joint data operations. As Figure 3 As shown, the related FBs are called YouBotArm WRITE and YouBotArm READ. In some embodiments, trajectory teaching control based on the KUKA robot arm kinematic model includes:

[0055] The control model is established based on a robot manipulator consisting of n links:

[0056]

[0057] Among them, among them, represents the Lagrangian, represents the kinetic energy of the robot, Represents the potential energy of the robot, q=[q1,q2,...,qn]^T.

[0058] represents the generalized position vector of the robot's joints. In robotics, is a vector describing the robot configuration, where each element represents the angle of a joint. For example, if a robot has 5 joints, will be a 5-dimensional vector, with each dimension corresponding to the position of a joint.

[0059] The torque of each joint satisfies:

[0060]

[0061] Among them, t usually represents time. In the kinematic and dynamic analysis of robots, t can be used to indicate the specific time point when a certain action or state occurs.

[0062] i indicates that this index is often used to refer to a specific component or joint in a robotic system. For example, in a multi-joint robot, i might be used to refer to the i-th joint. In programming and mathematical expressions, i is also often used as a loop variable.

[0063] n usually represents the number of joints or degrees of freedom in a robot system. For example, a robot with n joints would have n as the total number of degrees of freedom.

[0064] τ i represents the torque or moment of the i-th joint. In the robot's dynamic equation, τ i is the torque acting on the i-th joint, which is generated by the motor or actuator to drive the joint motion of the robot;

[0065] In the case of the arm robot with torque, the gravity vector is determined as:

[0066]

[0067] Among them, K p Represents proportional gain. In control theory, especially in PID controllers, K_p is the part of proportional control, which is proportional to the current value of the error signal.

[0068] K d Indicates the derivative gain. In a PID controller, K_d is the part of the differential control, which is proportional to the rate of change of the error signal (i.e., the derivative of the error).

[0069] g usually represents the gravity vector or gravitational acceleration. For example, in the dynamics equations of a robot, g represents the acceleration due to gravity.

[0070] Denote that M(q) is the inertia matrix of the robot, which depends on the joint angles q of the robot. represents the joint acceleration, which is the second-order derivative of the position. Therefore, Represents the inertial forces and torques in the robot's dynamics equations.

[0071] represents the Coriolis and centrifugal force matrices, which depend on the joint angle q and the joint angular velocity This matrix describes the forces and torques due to joint motion.

[0072] g(q) represents the gravity vector, which depends on the joint angle q. This vector represents the force and torque due to gravity at each joint.

[0073] represents the friction force, which may depend on the joint angular velocity q·. Friction forces usually include viscous friction and Coulomb friction, which hinder the movement of the joint.

[0074] This equation describes the forces and torques at each joint of the robot as it moves.

[0075] where τ represents the total torque acting on the robot joints, including control inputs and external forces. This equation is the basis for robot motion planning and control.

[0076] The present application also proposes an implementation case of a human-machine collaboration method based on a network physical production system and MQTT. CPPS type of automation is a solution implemented in a factory automation system. The HRC system includes computing capabilities (e.g., computing related to robot collaborative control in the network layer) and physical capabilities (e.g., robots in the physical layer), which interact with each other and can interact with humans, and can therefore be regarded as CPPS, such as Figure 2 One of the most common definitions of CPPS implemented in an industrial setting is a modular process system. It consists of: i) professional control systems (network layer), ii) backbone network, and iii) intelligent process modules (physical layer). Professional control systems are higher in the hierarchy than modules. The backbone network is responsible for generating servo control commands for the robot. It also consists of the physical medium responsible for connecting all intelligent modules to each other and to the upper control system.

[0077] Using MQTT under the IEC 61499 standard is a suitable solution for HRC control. MQTT is a lightweight communication platform based on the publisher-subscriber model. It is an important way to allocate network resources and can improve the performance of the HRC platform by improving network performance and service quality.

[0078] Using HRC for welding tasks, the interaction between humans and robots can be used to control the trajectory of the robot. In order to make HRC efficient and feasible in industrial welding tasks, the embodiment of the present application uses a human-side control module in the network layer of CPPS to be responsible for the trajectory control of the robot. In this case, the FB uses the Lagrange equations and a PD control algorithm for trajectory planning. In order to achieve the task-side goals, the human-side control module in CPPS should have a clear understanding of the status of the welding task. Task trajectory teaching is generated by analyzing the feedback data sent by the robot using the MQTT protocol and extracting the features of the current robot joint state. The human-side control module can compare the extracted features with the pre-generated features and determine the state of the trajectory.

[0079] The algorithm is programmed into an FB in the specific application scenario. The KUKA teaching trajectory FB is designed to obtain welding points from the user in the HRC solution, using the MQTT protocol. The points are received at the input data terminal, the trajectory is calculated using the teaching algorithm, and the joint positions are sent to the Kuka robot arm through the output data terminal, using the MQTT protocol.

[0080] Figure 3 The CPPS architecture is shown, with part A downloaded to a Raspberry Pi A, which manages the network layer. Part B is downloaded to a Raspberry Pi B with ROS and FBs for robot arm control. The results obtained can verify the efficiency of the teaching trajectory controller in the HRC architecture of the embodiment of the application. In this result set, it can be seen that the algorithm is able to minimize the configuration error of the Kuka robot arm to follow the welding instructions made by the operator within the specified time.

[0081] like Figure 4 As shown, the number of packets processed in the publish / subscribe request is 74 packets / second at the maximum and 5 packets / second at the minimum, generating an average of 40 packets / second for each mentioned time interval, proving that there is no loss of communication packets. The MQTT protocol uses an open source broker (Mosquitto), which, due to its lightweight, allows easy use in a large number of environments, even with few resources.

[0082] The embodiments of the present application will be developed for using a safe and easy-to-program collaborative robot platform to perform repetitive welding tasks, realize trajectory teaching, greatly improve user operability and system feasibility, reduce latency, and improve response time.

[0083] An embodiment of the present application also proposes a human-machine collaboration system based on a network-physical production system and MQTT, including a processor and a memory, wherein a computer program is stored on the memory, and when the computer program is executed by the processor, the steps of the human-machine collaboration method based on a network-physical production system and MQTT as described above are implemented.

[0084] It should be noted that in the various embodiments of the present application, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "includes a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element.

[0085] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0086] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, a magnetic disk, or an optical disk), and includes a number of instructions for a terminal (which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to execute the methods described in each embodiment of the present application.

[0087] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.

Claims

1. A human-machine collaboration method based on a cyber-physical production system and MQTT, characterized in that: include: The cyber-physical production system CPPS based on industrial robots for human-robot collaboration HRC is decomposed into basic function blocks FBs to complete the welding task based on FBs, where each FB is executed by an algorithm, and any FB communicates with the robot controller using the MQTT protocol and is compiled to send commands to the Robot Operating System (ROS) to control the arm movement; The MQTT protocol is used to publish and subscribe to FBs, and the trajectory teaching control is performed based on the kinematic model of the KUKA robot arm to achieve human-robot collaboration.

2. The human-machine collaboration method based on a network physical production system and MQTT as claimed in claim 1, characterized in that: Publishing and subscribing FBs based on the MQTT protocol include: Integrate the MQTT protocol in each FB under IEC 61499.

3. The human-machine collaboration method based on a network physical production system and MQTT as claimed in claim 2, characterized in that: Publishing and subscribing FBs based on the MQTT protocol include: MQTT Arm Subscribe implements the subscription mechanism, and MQTT Arm Publish based on the MQTT protocol publishes messages after connecting to the broker.

4. The human-machine collaboration method based on a network physical production system and MQTT as claimed in claim 3, characterized in that: Publishing and subscribing FBs based on the MQTT protocol include: MQTT uses topic-based messages to filter agents, and each message contains a topic.

5. The human-machine collaboration method based on a network physical production system and MQTT as claimed in claim 1, characterized in that: Trajectory teaching control based on the KUKA robot arm kinematic model includes: The control model is established based on a robot manipulator consisting of n links: in, represents the Lagrangian, represents the kinetic energy of the robot, represents the potential energy of the robot, q = [q1, q2, ..., qn]^T; The torque of each joint satisfies: Among them, t usually represents time, i represents that this index is usually used to represent a specific component or joint in the robot system, n represents usually the number of joints or degrees of freedom in the robot system, and τ i represents the torque or moment of the i-th joint, In the case of the arm robot with torque, the gravity vector is determined as: Among them, K p Represents proportional gain, K d represents the derivative gain, g usually represents the gravity vector or gravity acceleration, Denotes that M(q) is the inertia matrix of the robot, represents the Coriolis and centrifugal force matrices, g(q) represents the gravity vector, Represents friction.

6. A human-machine collaboration system based on a cyber-physical production system and MQTT, characterized in that: It comprises a processor and a memory, wherein a computer program is stored in the memory, and when the computer program is executed by the processor, the steps of the human-machine collaboration method based on a network physical production system and MQTT as described in any one of claims 1 to 5 are implemented.