Collaborative robot motion control method, device, computer equipment and readable storage medium
By acquiring and analyzing the motion information of the end effector and additional axis of the collaborative robot, converting it into joint teaching position information, controlling the movement of the collaborative robot and co-controlling the additional axis, the problem of inaccurate movement of the collaborative robot in the prior art is solved, and a wider range of motion and higher control accuracy is achieved.
Patent Information
- Application Number
- CN202411766886.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-04
- Publication Date
- 2025-04-01
- Estimated Expiration
- 2044-12-04
AI Technical Summary
There is a problem that the existing collaborative robot motion control method is inaccurate enough, especially in application scenarios where long-distance motion is required.
By obtaining the end teaching position information and additional axis motion position information of the collaborative robot end effector, detecting the motion interval duration and motion speed information, converting the end teaching position information into joint teaching position information, controlling the movement of the collaborative robot, and collaboratively controlling the additional axis motion based on the movement speed information.
Accurate control of the movement of the collaborative robot is achieved, the range of motion is expanded, and the inaccurate motion caused by arm length limitation is avoided.
Smart Images

Figure CN119238481B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of automatic control technology, and in particular to a collaborative robot motion control method, device, computer equipment, computer-readable storage medium and computer program product. Background Art
[0002] With the development of science and technology, collaborative robots have extremely wide applications. For example, a 6-axis collaborative robot, which consists of 6 freely moving axes, can control the collaborative robot to move freely within a certain space. Collaborative robots can be seen in the fields of industry, medical care, and service industries. Therefore, how to control the motion of collaborative robots has become a crucial issue.
[0003] At present, limited by the arm length, collaborative robots generally move within a certain space. For application scenarios with a larger working range, collaborative robots with larger arm spans are replaced. However, replacing robots with larger arm spans will result in a larger torque required for the movement of the collaborative robot, that is, a higher cost for the motor, and this solution cannot be implemented for example for longer working ranges. Therefore, in industry, there is no shortage of using mobile guide rails, lifting columns and other equipment to carry collaborative robots for long-distance work, so as to expand the working range of collaborative robots.
[0004] However, the current collaborative robot motion control method is not accurate enough. Summary of the invention
[0005] Based on this, it is necessary to provide an accurate collaborative robot motion control method, device, computer equipment, computer readable storage medium and computer program product to address the above technical problems.
[0006] In a first aspect, the present application provides a collaborative robot motion control method, comprising:
[0007] In the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process;
[0008] Detect the motion interval between any two end teaching positions, and detect the motion speed information of the additional axis based on the motion position information and the motion interval;
[0009] Convert the end teaching position information into the joint teaching position information of the collaborative robot;
[0010] Based on the joint teaching position information, the movement of the end effector of the collaborative robot is controlled, and based on the movement speed information, the movement of the end effector of the additional axis collaborative robot is controlled.
[0011] In one embodiment, after controlling the movement of the end effector of the collaborative robot based on the joint teaching position information, the method further includes:
[0012] In response to the length extension operation of the additional axis, detecting the end motion trajectory information and current position information of the end effector while the motion trajectory of the end effector remains unchanged;
[0013] Reset the current position information to the starting position information of the end effector in the next stage, and update the end motion trajectory information according to the starting position information of the motion;
[0014] Based on the updated end motion trajectory information, the end effector movement of the collaborative robot is controlled.
[0015] In one embodiment, in the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process includes:
[0016] When controlling the end effector of the collaborative robot to perform inching motion or long inching motion, obtain the current actual position information of the end effector and the current actual position information of the additional axis corresponding to any two end teaching positions during the motion process;
[0017] The current actual position information of the end is determined as the end teaching position information, and the current actual position information of the additional axis is determined as the additional axis motion position information.
[0018] In one embodiment, detecting the movement speed information of the additional axis according to the movement position information of the additional axis and the movement interval duration includes:
[0019] According to the additional axis motion position information corresponding to any two end teaching positions during the teaching process, the additional axis motion position difference between the two end teaching positions is obtained;
[0020] According to the additional axis motion position difference and the motion interval time, the motion speed information of the additional axis is generated. In one embodiment, the end teaching position information is converted into the joint teaching position information of the collaborative robot, including:
[0021] Obtain the pose transformation matrix between the collaborative robot's end effector and joints;
[0022] Based on the posture transformation matrix, the end teaching position information is converted into the joint teaching position information of the collaborative robot.
[0023] In one embodiment, obtaining the additional axis motion position information corresponding to any two end teaching positions during the teaching process includes:
[0024] For any end teaching position, during the process of controlling the end effector of the collaborative robot for teaching, read the current encoder value corresponding to the end teaching position from the multi-turn absolute encoder built into the additional axis;
[0025] Generate the number of encoding turns according to the preset initial encoder value and the current encoder value;
[0026] Based on the number of encoding turns and the preset unit displacement information corresponding to each number of encoding turns, the additional axis motion position information corresponding to the end teaching position is generated.
[0027] In a second aspect, the present application also provides a collaborative robot motion control device, comprising:
[0028] A position information acquisition module is used to acquire the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process during the teaching process;
[0029] A motion speed detection module is used to detect the motion interval duration between any two end teaching positions, and detect the motion speed information of the additional axis according to the motion position information and the motion interval duration of the additional axis;
[0030] A position conversion module, used to convert the end teaching position information into the joint teaching position information of the collaborative robot;
[0031] The motion control module is used to control the motion of the end effector of the collaborative robot based on the joint teaching position information, and to control the motion of the end effector of the additional axis collaborative robot based on the motion speed information.
[0032] In a third aspect, the present application further provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0033] In the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process;
[0034] Detect the motion interval between any two end teaching positions, and detect the motion speed information of the additional axis based on the motion position information and the motion interval;
[0035] Convert the end teaching position information into the joint teaching position information of the collaborative robot;
[0036] Based on the joint teaching position information, the movement of the end effector of the collaborative robot is controlled, and based on the movement speed information, the movement of the end effector of the additional axis collaborative robot is controlled.
[0037] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the following steps are implemented:
[0038] In the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process;
[0039] Detect the motion interval between any two end teaching positions, and detect the motion speed information of the additional axis based on the motion position information and the motion interval;
[0040] Convert the end teaching position information into the joint teaching position information of the collaborative robot;
[0041] Based on the joint teaching position information, the movement of the end effector of the collaborative robot is controlled, and based on the movement speed information, the movement of the end effector of the additional axis collaborative robot is controlled.
[0042] In a fifth aspect, the present application further provides a computer program product, including a computer program, which implements the following steps when executed by a processor:
[0043] In the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process;
[0044] Detect the motion interval between any two end teaching positions, and detect the motion speed information of the additional axis based on the motion position information and the motion interval;
[0045] Convert the end teaching position information into the joint teaching position information of the collaborative robot;
[0046] Based on the joint teaching position information, the movement of the end effector of the collaborative robot is controlled, and based on the movement speed information, the movement of the end effector of the additional axis collaborative robot is controlled.
[0047] The above-mentioned collaborative robot motion control method, device, computer equipment, computer-readable storage medium and computer program product, in the process of controlling the end effector of the collaborative robot for teaching, uses the object that cooperates with the collaborative robot as the additional axis of the collaborative robot, and uses the additional axis motion position information and motion interval duration corresponding to any two end teaching positions during the teaching process to solve the motion speed of the additional axis. That is, the motion speed information of the additional axis is solved through the motion-related parameters of the collaborative robot, and the joint teaching position information is realized based on the conversion of the end teaching position information. While controlling the motion of the collaborative robot, it is also possible to accurately control the motion of the additional axis in coordination with the collaborative robot based on the motion speed, so that the motion range of the collaborative robot is not restricted. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related technologies, the drawings required for use in the embodiments of the present application or the related technical descriptions will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying any creative work.
[0049] Figure 1 A diagram showing an application environment of a collaborative robot motion control method in one embodiment;
[0050] Figure 2 A schematic diagram of a flow chart of a collaborative robot motion control method in one embodiment;
[0051] Figure 3 A schematic diagram of a flow chart of a collaborative robot motion control method in another embodiment;
[0052] Figure 4 is a structural block diagram of a collaborative robot motion control device in one embodiment;
[0053] Figure 5 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0054] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are used to explain the present application and are not used to limit the present application.
[0055] Industrial robots can be divided into multi-joint robots, planar multi-joint robots, parallel robots, rectangular coordinate robots, cylindrical coordinate robots and collaborative robots according to their mechanical structure. Among them, collaborative robots have the most application scenarios and are widely used in industries such as industry, medical care, and service industries. They have many advantages such as flexible movement and controllable posture, which also determines their various flexible application scenarios in industry, such as welding, palletizing, etc. These application scenarios are difficult for other types of robots to achieve.
[0056] Currently, the most widely used collaborative robot is the 6-axis collaborative robot. This robot consists of 6 freely moving axes, which can control the collaborative robot to move freely within a certain space. However, this collaborative robot also has its own shortcomings. That is, due to the limitation of arm length, the collaborative robot can only move within a certain space. For application scenarios with a larger working range, only collaborative robots with larger arm spans can be replaced. However, replacing collaborative robots with larger arm spans will also result in a greater torque required for the movement of the collaborative robot, that is, the cost of the motor will be higher. Moreover, this solution cannot be implemented for working ranges with a long length (tens of meters). Therefore, in industry, there is no shortage of mobile guide rails, lifting columns and other equipment to carry collaborative robots for long-distance work, so as to expand the working range of collaborative robots.
[0057] The combination of mobile rails or lifting columns with collaborative robots can indeed adapt to more application scenarios in actual production environments, but it is not suitable for some application scenarios that require higher precision and more convenient operation, such as long-distance welding. In this case, this application uses the slide rail as an additional axis of the collaborative robot and proposes a collaborative robot motion control method that supports the linkage between the collaborative robot and the slide rail (additional axis), is simple to teach, and has high precision. It can simultaneously control the motion of the slide rail (additional axis) and the collaborative robot.
[0058] The controller in this application is obtained by improving the control interface algorithm of the collaborative robot based on the multi-axis collaborative robot controller. Generally, the controller adopts the Elfin controller 6.2.18 version, and improves it on the basis of its controller to support multi-axis control (for example, to support ten axes internally).
[0059] The main modification is the collaborative robot's motion control algorithm, which is the core of collaborative robot motion. The algorithm library mainly includes the forward and inverse solution public library, robot kinematics algorithm, and robot dynamics algorithm. These algorithms need to reconstruct the interface and core, and the difficulty lies in how to use multi-dimensional Cartesian coordinates to calculate the position of the additional axis.
[0060] The collaborative robot motion control method provided in the embodiment of the present application can be applied to Figure 1In the application environment shown.
[0061] During the process of controlling the end effector of the collaborative robot 102 for teaching, the controller 104 obtains the end teaching position information of the end effector of the collaborative robot 102, as well as the additional axis motion position information of the additional axis 106 corresponding to any two end teaching positions during the teaching process, detects the motion interval duration between any two end teaching positions, and detects the motion speed information of the additional axis 106 based on the additional axis motion position information and the motion interval duration, converts the end teaching position information into the joint teaching position information of the collaborative robot 102, controls the movement of the end effector of the collaborative robot 102 based on the joint teaching position information, and controls the movement of the end effector of the additional axis 106 in coordination with the collaborative robot 102 based on the additional axis teaching position information and the motion speed information.
[0062] In an exemplary embodiment, Figure 2 As shown, a collaborative robot motion control method is provided, and the method is applied to Figure 1 The controller 104 in FIG. 1 is used as an example for explanation.
[0063] S200, in the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot, and the additional axis motion position information corresponding to any two end teaching positions during the teaching process.
[0064] Among them, the collaborative robot can be a multi-axis robot, such as a six-axis collaborative robot. The six-axis collaborative robot is an industrial robot with 6 degrees of freedom, including rotation, lower arm, upper arm, wrist rotation, wrist swing and wrist rotation. These joints are combined to realize the 6-degree-of-freedom movement of the end, and have the advantages of high flexibility, ultra-large load, high positioning accuracy, etc. The end effector refers to any tool connected to the edge (joint) of the robot with a certain function. The end teaching position information refers to the position information of the end effector during the teaching process. An additional axis refers to an axis that moves in coordination with the collaborative robot. For example, this application defines a linear slide as an additional axis of the collaborative robot. When the collaborative robot is a six-axis collaborative robot, the additional axis can be called the seventh axis. That is to say, this application regards the collaborative robot as a mechanical unit and the additional axis as a mechanical unit.
[0065] Specifically, in the process of controlling the end effector of the collaborative robot for teaching, the controller will obtain the end teaching position information of the end effector of the collaborative robot. There is more than one end teaching position information, and all the end teaching position information constitutes the teaching motion trajectory information of the end effector.
[0066] At the same time, during the teaching process, the controller also records the additional axis motion position information corresponding to any two end teaching positions. Among them, any two end teaching positions can be any two end teaching position information in the teaching motion trajectory information of the end effector, for example, it can be the end teaching position information of the end point in the teaching motion trajectory information, it can also be the end teaching position information of the starting point in the teaching motion trajectory information, and it can also be the end teaching position information of any point in the middle of the teaching motion trajectory information.
[0067] Therefore, the additional axis motion position information corresponding to any two end teaching positions is recorded, that is, the additional axis motion position information corresponding to any two end teaching positions is recorded when the collaborative robot moves from one end teaching position to another end teaching position. In layman's terms, the additional axis motion position information is the motion position information of the additional axis when the end effector of the collaborative robot is at the end teaching position information. The additional axis motion position information corresponding to the end teaching position is the motion position information that corresponds one to one with the end teaching position. There are two end teaching positions, and there are also two additional axis motion position information.
[0068] S400, detecting the motion interval duration between any two end teaching positions, and detecting the motion speed information of the additional axis according to the motion position information of the additional axis and the motion interval duration.
[0069] The motion interval duration refers to the time taken to move from one end teaching position to another end teaching position.
[0070] Specifically, the controller detects the motion information of the additional axis that moves with the collaborative robot through the motion information of the collaborative robot, that is, detects the motion interval duration taken to move from one end teaching position to another end teaching position, and detects the motion speed information of the additional axis based on the motion position information of the additional axis corresponding to the two end teaching positions and the motion interval duration between the two end teaching positions.
[0071] S600, converting the end teaching position information into the joint teaching position information of the collaborative robot.
[0072] Specifically, since the collaborative robot is a robot that moves through joints, it is necessary to convert the end teaching position information of the collaborative robot into the joint teaching position information of the collaborative robot.
[0073] What needs to be explained is that, taking the collaborative robot as a six-axis collaborative robot as an example, the reason why the motion position information of the additional axis is not directly converted into the joint teaching position information of the additional axis of the collaborative robot, so as to perform motion control through the joint teaching position information of the additional axis, is because: the six-axis collaborative robot is a six-joint model, and the six-axis collaborative robot with an additional axis is a seven-joint model. For the seven-joint model, the seven-joint model adds one degree of freedom relative to the six-joint model, and the existing uniqueness of the solution is exponentially amplified. Therefore, for some linear motions, the motion control results may be abnormal. Therefore, in response to this problem, our original motion control solution for the six-joint collaborative robot is no longer suitable for seven joints. This application solves the motion information of the additional axis based on the motion information of the collaborative robot to accurately detect the motion speed information of the additional axis and realize the subsequent coordinated motion between the additional axis and the end effector of the collaborative robot.
[0074] S800 controls the movement of the end effector of the collaborative robot based on the joint teaching position information, and controls the movement of the end effector of the additional axis collaborative robot based on the movement speed information.
[0075] Specifically, the additional axis is in a uniform motion state, and the collaborative robot is placed on the additional axis. The controller controls the movement of the collaborative robot's end effector based on the collaborative robot's joint teaching position information, and controls the movement of the additional axis in coordination with the collaborative robot's end effector based on the motion speed information of the additional axis. That is to say, at this time, both the additional axis and the collaborative robot's end effector are in motion, so that the collaborative robot's motion range is not restricted, thereby widening the original motion range.
[0076] In the above-mentioned collaborative robot motion control method, in the process of controlling the end effector of the collaborative robot for teaching, the object that cooperates with the collaborative robot is used as an additional axis of the collaborative robot, and the motion position information of the additional axis corresponding to any two end teaching positions during the teaching process and the motion interval length are used to solve the motion speed of the additional axis. That is, the motion speed information of the additional axis is solved through the motion-related parameters of the collaborative robot, and the joint teaching position information based on the conversion of the end teaching position information is realized. While controlling the motion of the collaborative robot, the motion of the additional axis and the collaborative robot can be accurately controlled based on the motion speed, so that the motion range of the collaborative robot is not restricted.
[0077] In an exemplary embodiment, during the process of controlling the end effector of the collaborative robot for teaching, additional axis motion position information corresponding to at least two end teaching positions during the teaching process can also be obtained.
[0078] For example, to obtain the additional axis motion position information corresponding to the three end teaching positions during the teaching process, the earliest end teaching position, the second earliest end teaching position and the latest end teaching position can be used as the first end teaching position, the second end teaching position and the third end teaching position in the order of the time of arrival of the motion, and the first motion interval duration between the first end teaching position and the second end teaching position and the second motion interval duration between the third end teaching position and the second end teaching position can be obtained.
[0079] Then, based on the additional axis motion position information corresponding to the first end teaching position and the second end teaching position, and the first motion interval duration, the first motion speed information of the additional axis is detected; based on the additional axis motion position information corresponding to the second end teaching position and the third end teaching position, and the second motion interval duration, the second motion speed information of the additional axis is detected.
[0080] Finally, based on the first motion speed information and the second motion speed information, the target motion speed information is generated, and based on the additional axis teaching position information and the motion speed information, the motion of the end effector of the additional axis collaborative robot is controlled.
[0081] In an exemplary embodiment, Figure 3 As shown, after S800, it also includes:
[0082] S920 , in response to the operation of extending the length of the additional axis, detecting the end motion trajectory information and current position information of the end effector while the motion trajectory of the end effector remains unchanged.
[0083] S940, resetting the current position information to the movement starting point position information of the end effector in the next stage, and updating the end motion trajectory information according to the movement starting point position information.
[0084] S960, controlling the movement of the end effector of the collaborative robot based on the updated end motion trajectory information.
[0085] Specifically, for additional axes with non-fixed lengths, their limits cannot be set within the configuration because their boundaries are not fixed. If they move to some excessively long positions, or if the slide rails, i.e. the length of the additional axes, need to be increased due to production needs, certain technical means will need to be added.
[0086] The present application can use the origin reset method to extend the linear additional axis after the collaborative robot moves to a new position to work. If the motion trajectory of the end effector after moving to the new position is consistent with the motion trajectory of the original end effector, the origin of the collaborative robot can be reset to work again. The method of resetting the origin includes: recording the current origin, writing it into the configuration file, and then marking the current position as 0, which completes the offset of the origin, and the extension of the additional axis can be achieved without modifying the existing work script to continue working.
[0087] More specifically, when the motion trajectory of the end effector remains unchanged, the end motion trajectory information and current position information of the end effector are detected, and the current position information is reset to the starting position information of the end effector in the next stage of motion. For example, the current position information is reset to zero, and according to the starting position information of the motion, the end motion position information in the end motion trajectory information is updated one by one to obtain the updated end motion trajectory information, so as to control the motion of the end effector of the collaborative robot based on the updated end motion trajectory information.
[0088] In this embodiment, the end motion trajectory information of the collaborative robot's end effector is updated by resetting the zero point method to control the movement of the collaborative robot's end effector. This method is extremely effective for situations where additional axes need to be expanded but the working script remains unchanged. For example, there are many application scenarios of linear slides plus collaborative robots that belong to this category. It can greatly reduce the amount of script teaching and editing, and also increase the scalability of the controller.
[0089] In an exemplary embodiment, in the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process includes:
[0090] When controlling the end effector of the collaborative robot to perform inching motion or long inching motion, obtain the current actual position information of the end effector and the current actual position information of the additional axis corresponding to any two end teaching positions during the motion process, determine the current actual position information of the end as the end teaching position information, and determine the current actual position information of the additional axis as the additional axis motion position information.
[0091] Among them, jog movement refers to manually controlling the robot to move in an intermittent manner, rather than continuously. "Jog" emphasizes manual operation by the user (rather than automatic control by the program) to control the movement (direction and speed) of each axis of the robot. In layman's terms, jog means moving once you click, and not moving if you don't click. Long jog movement means that you can move continuously by clicking the movement key, and it will stop when you click the stop key again.
[0092] Specifically, when performing a jog motion or a long jog motion, there is an independent mechanical unit that moves, during which the other mechanical units remain stationary.
[0093] In contrast, waypoint motion allows two mechanical units to be linked, where waypoint motion is to specify some waypoints on the map and let the collaborative robot move between them. The reason is that waypoint motion has a clear destination, while inching motion or long inching motion does not have a definite destination.
[0094] When the waypoint moves, the controller can be sent to the position of the target position when it is taught, and the position of the additional axis at this time can be recorded. The position of the additional axis can be solved as a fixed parameter, thereby avoiding the infinite solution problem of 6 degrees of freedom in 7DOF (Degree of freedom).
[0095] For movement modes such as inching and long inching, there is no clear target position to reach. Therefore, the current actual position information of the collaborative robot's end effector and the current position of the additional axis (including the seventh axis) can only be issued, and the current actual position information of the end is determined as the end teaching position information, and the current actual position information of the additional axis is determined as the additional axis motion teaching position information.
[0096] Furthermore, since the actual position information of the current additional axis is the current position, there is no clear additional axis arrival position, and it is impossible to calculate the movement of the additional axis, so the two mechanical units cannot move at the same time. Although this type of movement cannot be performed at the same time, customers will not use these two movement methods in industrial automation production, because these two movement methods are used for teaching. In order to calibrate and obtain the points in the continuous script movement, after the script movement is calibrated, the two mechanical structures in the script movement can move at the same time, which will not affect the user's use. Therefore, this method is a feasible solution.
[0097] In this embodiment, when controlling the end effector of the collaborative robot to perform inching motion or long inching motion, the current actual position information of the end effector is determined as the end teaching position information, and the current actual position information of the additional axis is determined as the additional axis motion position information. This allows the end teaching position information and the additional axis motion position information to be accurately obtained during the inching motion or long inching motion.
[0098] In an exemplary embodiment, detecting the movement speed information of the additional axis according to the movement position information and the movement interval duration of the additional axis includes:
[0099] According to the additional axis motion position information corresponding to any two terminal teaching positions during the teaching process, the additional axis motion position difference between the two terminal teaching positions is obtained, and the additional axis motion speed information is generated according to the additional axis motion position difference and the motion interval length.
[0100] The additional axis motion position difference refers to the difference between two end teaching positions. The end teaching position can be a coordinate in Cartesian space.
[0101] Specifically, the additional axis motion position information corresponding to any two terminal teaching positions during the teaching process is subtracted to obtain the additional axis motion position difference between the two terminal teaching positions. In the case where the terminal teaching position is a coordinate in a Cartesian space, the additional axis motion position information corresponding to any two terminal teaching positions during the teaching process is subtracted, which means that the coordinates of the three axes xyz are correspondingly subtracted to obtain the additional axis motion position difference between the final two terminal teaching positions.
[0102] Furthermore, the additional axis motion position difference is the additional axis motion position information corresponding to any two terminal teaching positions during the teaching process, and the motion interval duration is the interval duration between any two terminal teaching positions during the teaching process. Therefore, based on the additional axis motion position difference and the motion interval duration, the motion speed information of the additional axis between any two terminal teaching positions can be generated, and the motion speed information of the additional axis between any two terminal teaching positions can be determined as the motion speed information of the additional axis during the entire teaching process.
[0103] Furthermore, based on the additional axis motion position difference and the motion interval duration, the motion speed information of the additional axis between any two end teaching positions is generated, including: determining the ratio of the additional axis motion position difference and the motion interval duration as the motion speed information of the additional axis between any two end teaching positions.
[0104] Taking any two end teaching positions in the teaching process as the starting end teaching position and the ending end teaching position as an example, the additional axis motion position difference between the two end teaching positions is obtained according to the additional axis motion position information corresponding to the starting end teaching position and the additional axis motion position information corresponding to the ending end teaching position, and then the motion interval duration of the entire teaching process is obtained, that is, the motion interval duration of the end effector of the collaborative robot from the starting end teaching position and the ending end teaching position, and the ratio of the additional axis motion position difference to the motion interval duration is determined as the motion speed information of the additional axis.
[0105] In this embodiment, by obtaining the additional axis motion position difference between the two end teaching positions based on the additional axis motion position information corresponding to any two end teaching positions during the teaching process, the motion speed information of the additional axis can be accurately generated in combination with the motion interval duration; further, any two end teaching positions can be the starting point end teaching position and the end point end teaching position of the entire teaching process, or can be any two non-starting point and non-end point end teaching positions in the middle of the teaching process, which is more flexible and simple.
[0106] In an exemplary embodiment, converting the end teaching position information into the joint teaching position information of the collaborative robot includes:
[0107] The pose transformation matrix between the end effector and the joint of the collaborative robot is obtained, and based on the pose transformation matrix, the end teaching position information is converted into the joint teaching position information of the collaborative robot.
[0108] Among them, the posture transformation matrix refers to the position conversion relationship between the end effector and the joint of the collaborative robot.
[0109] Specifically, the pose transformation matrix between the end effector and the joint of the collaborative robot is obtained. The pose transformation matrix is often a homogeneous transformation matrix. The end teaching position information of the end effector is converted into the joint teaching position information of the collaborative robot using the pose transformation matrix.
[0110] Furthermore, based on the posture transformation matrix, the posture of the end effector can also be converted into the teaching angle information of each joint. Combining the joint teaching position information and the joint teaching angle information, the movement of the end effector in each cycle of the collaborative robot is controlled.
[0111] In this embodiment, the end teaching position information is converted into the joint teaching position information of the collaborative robot based on the posture transformation matrix, and the posture of the end effector is converted into the teaching angle information of each joint. The joint teaching position information and the joint teaching angle information can be combined to accurately control the movement of the end effector of the collaborative robot.
[0112] In an exemplary embodiment, obtaining additional axis motion position information corresponding to any two end teaching positions during the teaching process includes:
[0113] For any end teaching position, during the process of controlling the end effector of the collaborative robot for teaching, the current encoder value corresponding to the end teaching position is read from the multi-turn absolute encoder built into the additional axis, and the number of encoding circles is generated according to the preset initial encoder value and the current encoder value. Based on the number of encoding circles and the unit displacement information corresponding to each preset number of encoding circles, the additional axis motion position information corresponding to the end teaching position is generated.
[0114] Among them, the multi-turn absolute encoder is a sensor used to accurately measure the rotation angle. Unlike the single-turn absolute encoder, the multi-turn absolute encoder can not only record the angular position of one rotation cycle (360 degrees), but also record the rotation information of multiple turns, which means that it can maintain accurate position information over multiple rotation cycles and will not lose data even after power failure or restart.
[0115] Specifically, the present application reads the zero point value from the configuration file of the controller, uses the position information corresponding to the read zero point value as the origin, and obtains the initial encoder value corresponding to the origin, and the encoding value is the number of revolutions of the motor.
[0116] When controlling the end effector of the collaborative robot for teaching, the current encoder value corresponding to any end teaching position is read from the multi-turn absolute encoder built into the additional axis.
[0117] According to the initial encoder value and the current encoder value, the number of encoding turns is generated, that is, the difference between the initial encoder value and the current encoder value is used as the number of encoding turns to obtain the number of motor rotations between the zero point and the end teaching position, and then based on the number of motor rotations and the unit displacement information corresponding to each preset number of rotations, the additional axis motion position information corresponding to the end teaching position is generated.
[0118] In an exemplary embodiment, additional axis motion position information corresponding to the end teaching position is generated based on the number of encoding circles and the preset unit displacement information corresponding to each number of encoding circles, and also includes: based on the number of encoding circles, the preset unit displacement information corresponding to each number of encoding circles and the preset encoder resolution, additional axis motion position information corresponding to the end teaching position is generated.
[0119] For example, the expression for generating the additional axis motion position information corresponding to the end teaching position is: HomePosition:= -(diTargetPos - lrHomePos) * lrGearRatio / diEncodeRatio.
[0120] Among them, diEncodeRatio is the resolution of the encoder, diTargetPos is the initial encoder value of the origin, lrHomePos is the current encoder value, and lrGearRatio is the reduction ratio, that is, the unit displacement information corresponding to each number of encoder circles. Therefore, for a fixed-length linear guide, the origin can be fixed by recording the origin method, reducing errors.
[0121] In this embodiment, for a linear guide rail with a fixed length, the origin is fixed by using the origin recording method to obtain the initial encoder value corresponding to the origin, and combined with the current encoder value of the current end teaching position, the additional axis motion position information corresponding to the end teaching position can be accurately generated, thereby improving the accuracy of the motion control of the additional axis collaborative robot.
[0122] In an exemplary embodiment, the collaborative robot is a six-axis collaborative robot and the linear slide is the seventh axis. In the prior art, the method for controlling the motion of the collaborative robot is: directly using the homogeneous transformation matrix to make the target position and posture of the end effector equal to the homogeneous transformation matrix of each joint to form a nonlinear set of equations, and then solving the joint teaching position information of each joint, and then controlling the motion of the end effector of the collaborative robot based on the joint teaching position information of each joint.
[0123] However, there are certain problems in the prior art, such as: 1. Solution uniqueness. 2. There may be multiple solutions for kinematics, and the appropriate solution should be selected according to the actual application. 3. Singularity: Certain postures may lead to singularities, which should be paid special attention to and handled. 4. The joint angles of the robot model to which this solution is applicable must be the same as the degrees of freedom, in which case it is easy to obtain a finite solution. Therefore, a new solution is needed, and this application proposes a new inverse solution as shown in Table 1 below:
[0124]
[0125] Among them, the phase synchronization scheme of the trajectory of the linear seventh axis and the collaborative robot is:
[0126] The teaching data records the seventh-axis motion position information corresponding to any two end teaching positions during the teaching process, for example, the starting seventh-axis motion position information corresponding to the starting end teaching position and the end seventh-axis motion position information corresponding to the end end teaching position. The linear motion of the seventh axis will be guaranteed to be between the starting seventh-axis motion position information and the end seventh-axis motion position information. The linear seventh axis plans the trajectory of the joint space independently of the other six axes by synchronizing the trajectory phase with the end effector.
[0127] Specifically, in the process of controlling the collaborative robot's end effector for teaching, the end teaching position information of the collaborative robot's end effector is obtained, and the seventh-axis motion position information corresponding to any two end teaching positions in the teaching process is recorded. The recording methods include: For any end teaching position, in the process of controlling the collaborative robot's end effector for teaching, the current encoder value corresponding to the end teaching position is read from the multi-turn absolute encoder built into the seventh axis; the number of encoding circles is generated according to the preset initial encoder value and the current encoder value, and the seventh-axis motion position information corresponding to the end teaching position is generated based on the number of encoding circles and the unit displacement information corresponding to each preset number of encoding circles.
[0128] Detect the duration of the movement interval between the starting end teaching position and the ending end teaching position, and obtain the seventh-axis movement position difference between the starting end teaching position and the ending end teaching position based on the seventh-axis movement position information corresponding to the starting end teaching position and the seventh-axis movement position information corresponding to the ending end teaching position during the teaching process, and generate the movement speed information of the seventh axis based on the seventh-axis movement position difference and the movement interval duration.
[0129] The pose transformation matrix between the collaborative robot's end effector and joints is obtained, and based on the pose transformation matrix, the end teaching position information is converted into the joint teaching position information of the collaborative robot. Based on the joint teaching position information, the movement of the collaborative robot's end effector is controlled.
[0130] Based on the teaching position information and motion speed information of the seventh axis, the movement of the end effector of the seventh axis collaborative robot is controlled.
[0131] In addition, when the collaborative robot performs inching motion or long inching motion, the collaborative robot and the seventh axis cannot be linked at the same time. Therefore, the current actual position information of the end effector and the teaching duration are obtained, and the current actual position information of the seventh axis corresponding to any two end teaching positions during the motion process and the current actual position information of the seventh axis of the collaborative robot's collaborative motion are recorded, and the current actual position information of the end is determined as the end teaching position information, and the current actual position information of the seventh axis is determined as the seventh axis motion teaching position information, to execute the linkage between the end effector of the collaborative robot and the seventh axis.
[0132] Furthermore, when the collaborative robot moves to a new position to work and the seventh axis needs to be extended, if the motion trajectory of the end effector remains unchanged, the end motion trajectory information and the current position information of the end effector are detected, the current position information is reset to the starting position information of the end effector in the next stage of motion, and the end motion trajectory information is updated according to the starting position information of the motion, and based on the updated end motion trajectory information, the movement of the end effector of the collaborative robot is controlled.
[0133] The following beneficial effects can be achieved in this embodiment:
[0134] 1. It provides a usable solution for the use of collaborative robots in large travel ranges such as conveyor belts, solving the problem that the collaborative robots do not have enough arm span for some application scenarios.
[0135] 2. Greatly expanded the use of collaborative robots in different industrial scenarios.
[0136] 3. The movement of collaborative robots and linear axes can be controlled at the same time, which improves the work efficiency of users using linear axes and robot scenes.
[0137] 4. The seventh axis position is superimposed in the Cartesian coordinates of the collaborative robot's end, which solves the problem of insufficient precision of the collaborative robot in conjunction with an external linear axis, resulting in limited application areas, greatly improving ease of use and control accuracy.
[0138] It should be understood that, although the steps in the flowcharts involved in the above embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above embodiments may include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0139] Based on the same inventive concept, the embodiment of the present application also provides a collaborative robot motion control device for implementing the collaborative robot motion control method involved above. The implementation solution provided by the device to solve the problem is similar to the implementation solution recorded in the above method, so the specific limitations in one or more collaborative robot motion control device embodiments provided below can refer to the limitations of the collaborative robot motion control method above, and will not be repeated here.
[0140] In an exemplary embodiment, Figure 4 As shown, a collaborative robot motion control device is provided, including: a position information acquisition module 200, a motion speed detection module 400, a position conversion module 600 and a motion control module 800, wherein:
[0141] The position information acquisition module 200 is used to acquire the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process during the teaching process;
[0142] The motion speed detection module 400 is used to detect the motion interval duration between any two end teaching positions, and detect the motion speed information of the additional axis according to the motion position information and the motion interval duration of the additional axis;
[0143] A position conversion module 600, used to convert the end teaching position information into the joint teaching position information of the collaborative robot;
[0144] The motion control module 800 is used to control the motion of the end effector of the collaborative robot based on the joint teaching position information, and to control the motion of the end effector of the additional axis collaborative robot based on the motion speed information.
[0145] In one of the embodiments, the collaborative robot motion control device also includes a motion update module, which is used to respond to the length extension operation of the additional axis, and detect the end motion trajectory information and current position information of the end effector while the motion trajectory of the end effector remains unchanged; reset the current position information to the starting position information of the end effector in the next stage of motion, and update the end motion trajectory information according to the starting position information of the motion; and control the motion of the end effector of the collaborative robot based on the updated end motion trajectory information.
[0146] In one of the embodiments, the position information acquisition module 200 is also used to obtain the current actual position information of the end effector and the current actual position information of the additional axis corresponding to any two end teaching positions during the movement when the end effector of the collaborative robot is controlled to perform a jog motion or a long jog motion; the current actual position information of the end is determined as the end teaching position information, and the current actual position information of the additional axis is determined as the additional axis movement position information.
[0147] In one of the embodiments, the motion speed detection module 400 is also used to obtain the additional axis motion position difference between the two end teaching positions based on the additional axis motion position information corresponding to any two end teaching positions during the teaching process; and generate the additional axis motion speed information based on the additional axis motion position difference and the motion interval duration.
[0148] In one embodiment, the position conversion module 600 is also used to obtain the posture transformation matrix between the end effector and the joint of the collaborative robot; based on the posture transformation matrix, the end teaching position information is converted into the joint teaching position information of the collaborative robot.
[0149] In one of the embodiments, the position information acquisition module 200 is also used to read the current encoder value corresponding to the end teaching position from the multi-turn absolute encoder built into the additional axis for any end teaching position during the process of controlling the end effector of the collaborative robot for teaching; generate the number of encoding circles according to the preset initial encoder value and the current encoder value; and generate the additional axis motion position information corresponding to the end teaching position based on the number of encoding circles and the unit displacement information corresponding to each preset number of encoding circles.
[0150] Each module in the above collaborative robot motion control device can be implemented in whole or in part by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each module.
[0151] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 5 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store data such as terminal teaching position information. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a collaborative robot motion control method is implemented.
[0152] Those skilled in the art will understand that Figure 5 The structure shown in the figure is a block diagram of a partial structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0153] In one embodiment, an automation device is also provided, including a collaborative robot, an additional axis and a controller, and the controller is configured to execute the steps in the above-mentioned method embodiments.
[0154] In one embodiment, a computer device is further provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the above method embodiments when executing the computer program.
[0155] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0156] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0157] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.
[0158] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0159] The above embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A collaborative robot motion control method, characterized in that: The method comprises: In the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process; Detecting the motion interval duration between any two terminal teaching positions, and detecting the motion speed information of the additional axis according to the additional axis motion position information and the motion interval duration, wherein detecting the motion speed information of the additional axis according to the additional axis motion position information and the motion interval duration comprises: obtaining the additional axis motion position difference between the two terminal teaching positions according to the additional axis motion position information corresponding to the two terminal teaching positions during the teaching process; generating the motion speed information of the additional axis between the two terminal teaching positions according to the additional axis motion position difference and the motion interval duration, and determining the motion speed information of the additional axis between the two terminal teaching positions as the motion speed information of the additional axis during the entire teaching process; Converting the terminal teaching position information into the joint teaching position information of the collaborative robot; Based on the joint teaching position information, the movement of the end effector of the collaborative robot is controlled, and based on the movement speed information, the additional axis is controlled to coordinate the movement of the end effector of the collaborative robot.
2. The method according to claim 1, characterized in that After controlling the movement of the end effector of the collaborative robot based on the joint teaching position information, the method further includes: In response to the length extension operation of the additional axis, detecting the end motion trajectory information and current position information of the end effector while the motion trajectory of the end effector remains unchanged; Resetting the current position information to the motion starting point position information of the end effector in the next stage, and updating the end motion trajectory information according to the motion starting point position information; Based on the updated end motion trajectory information, the movement of the end effector of the collaborative robot is controlled.
3. The method according to claim 1, characterized in that In the process of controlling the end effector of the collaborative robot for teaching, obtaining the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process includes: When controlling the end effector of the collaborative robot to perform inching motion or long inching motion, obtaining the current actual position information of the end effector and the current actual position information of the additional axis corresponding to any two end teaching positions during the motion process; The current terminal actual position information is determined as the terminal teaching position information, and the current additional axis actual position information is determined as the additional axis motion position information.
4. The method according to claim 1, characterized in that: The converting the terminal teaching position information into the joint teaching position information of the collaborative robot comprises: Obtaining a pose transformation matrix between an end effector and a joint of the collaborative robot; Based on the posture transformation matrix, the end teaching position information is converted into the joint teaching position information of the collaborative robot.
5. The method according to claim 1, characterized in that Get the additional axis motion position information corresponding to any two end teaching positions during the teaching process, including: For any end teaching position, in the process of controlling the end effector of the collaborative robot for teaching, the current encoder value corresponding to the end teaching position is read from the multi-turn absolute encoder built into the additional axis; Generate a number of encoding turns according to a preset initial encoder value and the current encoder value; Based on the number of encoding turns and the preset unit displacement information corresponding to each number of encoding turns, the additional axis motion position information corresponding to the end teaching position is generated.
6. A collaborative robot motion control device, characterized in that: The device comprises: A position information acquisition module is used to acquire the end teaching position information of the end effector of the collaborative robot and the additional axis motion position information corresponding to any two end teaching positions during the teaching process during the teaching process; A motion speed detection module, used to detect the motion interval duration between any two terminal teaching positions, and detect the motion speed information of the additional axis according to the additional axis motion position information and the motion interval duration, wherein the detecting the motion speed information of the additional axis according to the additional axis motion position information and the motion interval duration comprises: obtaining the additional axis motion position difference between the two terminal teaching positions according to the additional axis motion position information corresponding to the two terminal teaching positions during the teaching process; generating the motion speed information of the additional axis between the two terminal teaching positions according to the additional axis motion position difference and the motion interval duration, and determining the motion speed information of the additional axis between the two terminal teaching positions as the motion speed information of the additional axis during the entire teaching process; A position conversion module, used for converting the end teaching position information into the joint teaching position information of the collaborative robot; A motion control module is used to control the motion of the end effector of the collaborative robot based on the joint teaching position information, and to control the additional axis to coordinate the motion of the end effector of the collaborative robot based on the motion speed information.
7. The device according to claim 6, characterized in that The collaborative robot motion control device further includes a motion update module, which is used to detect the end motion trajectory information and current position information of the end effector in response to the length extension operation of the additional axis, while the motion trajectory of the end effector remains unchanged; reset the current position information to the motion starting point position information of the end effector in the next stage, and update the end motion trajectory information according to the motion starting point position information; Based on the updated end motion trajectory information, the end effector movement of the collaborative robot is controlled.
8. An automation device, comprising a collaborative robot, an additional axis and a controller, characterized in that: The controller is configured to perform the steps of the method according to any one of claims 1 to 5.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 5 are implemented.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 5 are implemented.
Citation Information
Patent Citations
Calibration method and system for multi-axis robot with ground rail, electronic equipment and readable storage medium
CN115122337A
Robot and guide rail cooperation method and device and electronic equipment
CN116038660A
Cited By
Synchronous control method for collaborative robot and additional shaft
CN121973195A