Robot motion simulation method

By establishing a robot kinematic model and defining concise motion instructions, the high complexity of existing robot simulation software is solved, and efficient simulation environment construction and cost reduction are achieved.

CN119458339BActive Publication Date: 2025-09-16GUANGDONG UNIV OF TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411675115.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-21
Publication Date
2025-09-16
Estimated Expiration
2044-11-21

AI Technical Summary

Technical Problem

Existing robot simulation software is costly, complex, and difficult to develop and implement quickly, limiting developers' flexibility and innovation.

Method used

A robot motion simulation method is provided. By establishing a first kinematic model of the robot, defining motion instructions and obtaining simulation tasks, a concise and efficient kinematic model is used for simulation, including joint motion, linear motion, circular motion and absolute joint motion instructions, thereby simplifying the simulation process.

Benefits of technology

It reduces system complexity and resource consumption, shortens the development cycle, significantly reduces the investment in hardware and software resources, and improves the flexibility and innovation ability of developers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119458339B_ABST
    Figure CN119458339B_ABST
Patent Text Reader

Abstract

The present invention provides a robot motion simulation method, which includes establishing a first kinematic model of the robot; defining motion instructions of the first kinematic model to obtain a second kinematic model; the motion instructions include joint motion instructions, linear motion instructions, circular motion instructions, and absolute joint motion instructions; obtaining a simulation task, and performing robot motion simulation based on the simulation task based on the second kinematic model. Compared with the existing technology, the robot motion simulation method proposed in the present invention is more concise and efficient, focusing on the core motion simulation requirements of industrial robots, avoiding the accumulation of redundant functions, and thus reducing system complexity and resource consumption. This method not only helps shorten the development cycle, but also significantly reduces the investment in hardware and software resources, effectively reducing the cost of robot simulation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention is applicable to the field of robot technology, and in particular relates to a robot motion simulation method. Background Art

[0002] With the rapid development of industrial automation and intelligent manufacturing technologies, industrial robots are becoming an indispensable and critical supporting equipment in the manufacturing industry. They not only significantly improve production efficiency but also effectively reduce labor costs and operational errors. Thanks to their strong continuous working ability, robots can operate uninterruptedly without stopping due to fatigue, thus ensuring the continuity and consistency of production, more stable product quality, and more efficient production processes. Furthermore, in harsh or dangerous working environments, industrial robots can replace humans in high-risk operations, greatly ensuring worker safety.

[0003] Robot simulation technology, as a core tool in industrial robot applications, plays an irreplaceable role. Before implementing a robotic solution, simulation technology helps engineers accurately simulate the robot's motion trajectory, operating efficiency, and potential risks. By testing and optimizing in a virtual environment, companies can repeatedly adjust production processes without affecting actual production, significantly reducing the cost and time of production line adjustments. Simulation technology also provides operators with opportunities for simulated training, allowing them to improve their skills and safety awareness through virtual operation before becoming familiar with the actual equipment.

[0004] However, most existing robotics simulation software is commercial, expensive, and often closed-source. This not only places significant cost pressure on developers but also limits their flexibility and innovation. Furthermore, while some open-source robotics simulation software offers some cost advantages, it often suffers from overly complex functionality and includes numerous redundant modules, leading to high deployment costs and hindering rapid development and implementation, increasing development difficulty and maintenance complexity.

[0005] Therefore, a new robot motion simulation method is urgently needed to solve the above technical problems. Summary of the Invention

[0006] The present invention provides a new robot motion simulation method, aiming to provide a simple, efficient and easy-to-implement robot motion simulation method.

[0007] The present invention provides a robot motion simulation method, which comprises the following steps:

[0008] S1. Establish the first kinematic model of the robot;

[0009] S2. defining motion instructions for the first kinematic model to obtain a second kinematic model; the motion instructions include joint motion instructions, linear motion instructions, circular motion instructions, and absolute joint motion instructions;

[0010] S3. Acquire a simulation task, and perform robot motion simulation according to the simulation task based on the second kinematic model.

[0011] Preferably, step S1 includes the following sub-steps:

[0012] S11, establishing a joint kinematic chain according to the relationship between each joint and connecting rod in the robot;

[0013] S12, defining the actively moving joint in the joint kinematic chain as an actuator, and setting the motion form, motion axis direction, joint torque range, joint motion range, and joint stiffness range of the actuator;

[0014] S13, setting the base coordinate system, tool coordinate system and workpiece coordinate system of the robot;

[0015] S14. Establish an inverse kinematics algorithm for the joint posture of the robot to obtain the kinematic model.

[0016] Preferably, the joint motion instruction is a fast joint motion instruction that enables the robot to perform nonlinear, multi-axis coordinated motion;

[0017] The linear motion instruction is an instruction to move the end effector of the robot from a current position to a target position along a straight line;

[0018] The circular motion instruction is an instruction for causing the end effector of the robot to move along an arc line through a preset intermediate point to reach a target position;

[0019] The absolute joint motion instruction is an instruction for causing the robot to move directly from a current posture to a target posture.

[0020] Preferably, step S3 includes the following sub-steps:

[0021] S31, transforming the coordinates of the robot in the second kinematic model according to the simulation task, and initializing the interpolation algorithm and frame time;

[0022] S32. Determine whether the frame time is greater than the simulation time; if so, set the corresponding robot joint values ​​according to the intermediate posture of the robot in the second kinematic model; if not, set the corresponding robot joint values ​​according to the target posture of the robot in the second kinematic model.

[0023] Preferably, step S32 includes the following sub-steps:

[0024] S321. If the frame time is greater than the simulation time, determining whether the interpolation in the motion simulation of the robot in the second kinematic model is trajectory interpolation; if so, obtaining an intermediate point pose matrix according to the frame time, and solving the intermediate posture of the robot in the second kinematic model according to the intermediate point pose matrix; if not, determining that the interpolation in the motion simulation of the robot in the second kinematic model is joint value interpolation, and obtaining the intermediate posture of the robot in the second kinematic model according to the frame time;

[0025] S322. If the frame time is less than the simulation time, determine whether the interpolation in the motion simulation of the robot in the second kinematic model is trajectory interpolation; if so, solve the target posture of the robot in the second kinematic model according to the target point in the simulation task; if not, determine that the interpolation in the motion simulation of the robot in the second kinematic model is joint value interpolation, and obtain the target posture of the robot.

[0026] Preferably, the joint value interpolation satisfies the following relationship:

[0027]

[0028] v mp =v s +(ratio×v st );

[0029] Among them, v mp represents the joint value interpolation of the robot, v s represents the initial joint value, v st represents the interpolation difference, t represents the movement time of the robot, and T represents the total movement time of the robot.

[0030] Compared with the prior art, the robot motion simulation method proposed in the present invention establishes a first kinematic model of the robot; defines the motion instructions of the first kinematic model to obtain a second kinematic model; the motion instructions include joint motion instructions, linear motion instructions, circular motion instructions, and absolute joint motion instructions; obtains a simulation task, and performs robot motion simulation according to the simulation task based on the second kinematic model. In this way, the robot motion simulation method proposed in the present invention is more concise and efficient, focusing on the core motion simulation requirements of industrial robots, avoiding the accumulation of redundant functions, and thus reducing the complexity and resource consumption of the system. By adopting the robot motion simulation method of the present invention, developers can quickly build a fully functional simulation environment without having to have an in-depth understanding of complex simulation algorithms. This method not only helps to shorten the development cycle, but also significantly reduces the investment in hardware and software resources, effectively reducing the cost of robot simulation. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] The present invention will be described in detail below with reference to the accompanying drawings. The above and other aspects of the present invention will become clearer and easier to understand through the detailed description made with reference to the following drawings. In the accompanying drawings:

[0032] Figure 1 This is a flowchart of a robot motion simulation method provided by an embodiment of the present invention;

[0033] Figure 2 is a flowchart of a robot motion simulation method provided by an embodiment of the present invention, which performs robot motion simulation based on the second kinematic model and the simulation task;

[0034] Figure 3 Schematic diagram of speed and time of the robot motion simulation method provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0035] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0036] Please refer to Figure 1-Figure 3 The present invention provides a robot motion simulation method, which comprises the following steps:

[0037] S1. Establish the first kinematic model of the robot;

[0038] In an embodiment of the present invention, a three-dimensional model of the robot is constructed and imported. A first kinematic model of the robot is established using three-dimensional modeling software such as SolidWorks, UnigraphicsNX, or 3D Studio Max. The first kinematic model maintains a kinematic relationship corresponding to the actual object, i.e., each moving component is independently modeled and assembled sequentially according to a kinematic chain. The model is then imported into a three-dimensional scene.

[0039] Step S1 includes the following sub-steps:

[0040] S11, establishing a joint kinematic chain according to the relationship between each joint and connecting rod in the robot;

[0041] The joints and connecting rods of the robot model are split into sub-models, and the model coordinate system is adjusted to the joint rotation center or an appropriate position. Based on the mechanical structure and motion characteristics of the robot, the child-parent relationship between the joints and connecting rods of the robot is obtained, and the joint motion chain of the robot is constructed. Then, the motion chain is corrected according to the standard size parameters or DH parameters in the robot technical manual so that the relative positions of the joints fully meet the requirements. The robot model is adjusted to an appropriate posture, and this posture is used as the initial posture of the robot.

[0042] S12. Define the actively moving joint in the joint motion chain as an actuator, and set the motion form, motion axis direction, joint torque range, joint motion range, and joint stiffness range of the actuator.

[0043] Each active joint in a kinematic chain is defined as an actuator. This actuator records the pose matrix of each actuator model relative to the parent actuator and defines the motion type, axis direction, maximum, minimum, and current values ​​of each actuator. Once an actuator is defined, it can only perform the specified motion along a specific axis within the permitted range. By defining all joints of the robot along the kinematic chain as actuators, the entire robot's kinematic structure is defined.

[0044] S13, setting the base coordinate system, tool coordinate system and workpiece coordinate system of the robot;

[0045] Define the robot's base coordinate system, tool coordinate system, and workpiece coordinate system. The base coordinate system of an industrial robot is usually set at the center of the robot's base, which is the installation base of the robot. In a multi-joint robot, the origin of the base coordinate system is usually the intersection of the axis of the robot's first joint and the base plane. The base coordinate system is a reference system that defines the robot's position and posture in the workspace. It is one of the reference points for all motion calculations, so the origin of the model coordinate system is moved to the origin of the base coordinate system, and this is used as the pose of the base coordinate system. The tool coordinate system is a coordinate system defined relative to the robot's end effector. The origin of the tool coordinate system is usually located at the operating point of the robot tool (such as the working point of a gripper, welding gun, or spray tool), and moves with the movement of the robot's end tool. Therefore, it is necessary to calibrate the origin of the tool coordinate system at the robot tool operating point and record the relative pose matrix between the coordinate system and the robot's end effector. The workpiece coordinate system is a coordinate system defined relative to a specific workpiece or work area in the robot's working environment. It is used to describe the spatial position and posture of the workpiece. The description of the workpiece coordinate system is based on the base coordinate system. Therefore, the origin of the workpiece coordinate system is calibrated where needed in the scene, and the relative pose matrix between the coordinate system and the base coordinate system is recorded.

[0046] S14. Establish an inverse kinematics algorithm for the joint posture of the robot to obtain the kinematic model.

[0047] A robot's forward kinematics algorithm calculates the pose matrix of the end joints from the known joint poses of the robot. In simulation scenarios, since the world pose matrix of the robot's end effector can be directly obtained, only the inverse kinematics algorithm needs to be constructed. The robot's inverse kinematics algorithm is used to inversely determine the joint pose from the known end joint pose matrix. Inverse kinematics algorithms can employ analytical (algebraic, geometric) and numerical methods, but analytical methods are preferred for faster solution speeds.

[0048] S2. Define motion instructions of the first kinematic model to obtain a second kinematic model; the motion instructions include joint motion instructions, linear motion instructions, circular motion instructions, and absolute joint motion instructions.

[0049] In this embodiment of the present invention, motion methods are defined primarily for commonly used motion programming instructions for industrial robots, encapsulating these instructions into corresponding motion functions. This allows users to create robot simulation programs by simply calling the corresponding motion method to achieve the corresponding robot simulation movements, simulating the programming process of a real robot.

[0050] In this embodiment of the present invention, the joint motion instructions are instructions for the robot to execute nonlinear, multi-axis coordinated, rapid joint motions. The essence of this motion is that all joints move simultaneously from the robot's current posture to the target posture, using the time required for the slowest joint motion. Therefore, the parameters required for the motion method corresponding to this instruction are the pose matrix of the target point relative to the selected workpiece coordinate system, the velocity percentage, the selected tool coordinate system, and the selected workpiece coordinate system.

[0051] The linear motion instruction is an instruction to move the end effector of the robot from the current position to the target position along a straight line; therefore, the parameters required for the motion method corresponding to the instruction are the pose matrix of the target point relative to the selected workpiece coordinate system, the end motion speed, the selected tool coordinate system and the selected workpiece coordinate system.

[0052] The circular motion instruction is an instruction for causing the robot's end effector to reach the target position along an arc line through a preset intermediate point; therefore, the parameters required for the motion method corresponding to the instruction are the pose matrix of the target point relative to the selected workpiece coordinate system, the position of the intermediate point relative to the selected workpiece coordinate system, the end motion speed, the selected tool coordinate system and the selected workpiece coordinate system.

[0053] The absolute joint motion instruction is an instruction for causing the robot to move directly from its current posture to a target posture. Therefore, the only parameter required by the motion method corresponding to the instruction is the target posture value array.

[0054] Only part of the data processing and simulation task submission is done in the motion method of the encapsulated instruction. When the motion method is called, the incoming parameters are organized into simulation tasks and submitted to the simulation execution module, which is responsible for parsing and execution.

[0055] S3. Acquire a simulation task, and perform robot motion simulation according to the simulation task based on the second kinematic model.

[0056] In this embodiment of the present invention, step S3 includes the following sub-steps:

[0057] S31, transforming the coordinates of the robot in the second kinematic model according to the simulation task, and initializing the interpolation algorithm and frame time;

[0058] S32. Determine whether the frame time is greater than the simulation time; if so, set the corresponding robot joint values ​​according to the intermediate posture of the robot in the second kinematic model; if not, set the corresponding robot joint values ​​according to the target posture of the robot in the second kinematic model.

[0059] In this embodiment of the present invention, step S32 includes the following sub-steps:

[0060] S321. If the frame time is greater than the simulation time, determining whether the interpolation in the motion simulation of the robot in the second kinematic model is trajectory interpolation; if so, obtaining an intermediate point pose matrix according to the frame time, and solving the intermediate posture of the robot in the second kinematic model according to the intermediate point pose matrix; if not, determining that the interpolation in the motion simulation of the robot in the second kinematic model is joint value interpolation, and obtaining the intermediate posture of the robot in the second kinematic model according to the frame time;

[0061] S322. If the frame time is less than the simulation time, determine whether the interpolation in the motion simulation of the robot in the second kinematic model is trajectory interpolation; if so, solve the target posture of the robot in the second kinematic model according to the target point in the simulation task; if not, determine that the interpolation in the motion simulation of the robot in the second kinematic model is joint value interpolation, and obtain the target posture of the robot.

[0062] In an embodiment of the present invention, the joint value interpolation satisfies the following relationship:

[0063]

[0064] v mp =v s +(ratio×v st );

[0065] Among them, vmp represents the joint value interpolation of the robot, v s represents the initial joint value, v st represents the interpolation difference, t represents the movement time of the robot, and T represents the total movement time of the robot.

[0066] For details, please refer to Figure 2 First, determine whether there is a simulation task. If not, no operation is required for the current frame. If there is a simulation task, determine whether the simulation task has started. If the simulation task has not started, parse the task, initialize the interpolation algorithm, and set the frame time to zero.

[0067] Among them, the main content of the analytical simulation task is to transform the coordinates of the robot to facilitate the execution of the subsequent interpolation algorithm and inverse kinematics algorithm. Except for the absolute joint motion method, the target value is the robot's target posture. The target values ​​of the other motion methods are all the pose matrix of the target point relative to the selected workpiece coordinate system. It is necessary to convert the target point pose matrix into a pose matrix based on the base coordinates, and further convert it into the target pose matrix that the robot end effector needs to reach according to the selected tool coordinate system. This process can be expressed by formula (1), where M wp Indicates the selected workpiece coordinate system, M target-wp Represents the pose matrix of the target point relative to the selected workpiece coordinate system, M tool Indicates the selected tool coordinate system.

[0068] M=M wp ·M target-wp ·(M tool ) -1 (1)

[0069] The main content of initializing the interpolation algorithm is to calculate and record the data required by the interpolation algorithm. In the traditional sense, robot trajectory interpolation is the process of generating a series of intermediate points at equal intervals between the starting point and the target point. The intervals here can be equal time intervals in the time dimension or equal distance intervals in the space dimension. The usual practice is to generate all points on the trajectory path at one time and then execute the movement. However, the interpolation in robot motion simulation is different from the traditional trajectory interpolation. In robot motion simulation, interpolation is the process of calculating a single intermediate value in real time in each frame until the entire motion simulation is completed. The focus is on solving the intermediate point pose or robot pose of the current frame given the accumulated time of the frame, so that the robot's motion animation is continuous. According to the four motion instructions in step S2, the interpolation in motion simulation can be divided into trajectory interpolation and joint value interpolation.

[0070] Trajectory interpolation is the interpolation of the middle point of the robot's end effector trajectory, which can be divided into straight lines, arcs, curves and other types. The main contents of its initialization are as follows. First, calculate and record some of the required data. For example, linear trajectory interpolation needs to record the starting point pose matrix and the end point pose matrix, calculate and record the vector from the starting point to the end point and the straight-line distance. Arc trajectory interpolation needs to record the starting point pose matrix, the middle point, and the end point pose matrix, calculate and record the coordinates of the center of the arc, the unit vector of the rotation axis, the radius, the angle of rotation, the arc length and other data. Secondly, according to the calculated movement distance, and the current speed, acceleration, maximum speed, deceleration, target speed and other parameters passed in by the motion encapsulation method, calculate the speed-time diagram of the trajectory motion process. The speed-time diagram is as follows Figure 3 The rest are combinations of uniform acceleration, variable acceleration, uniform speed, uniform deceleration, and variable deceleration. From the speed-time graph, it is easy to calculate the distance of the intermediate point relative to the starting point at a given time.

[0071] Joint value interpolation refers to the process of determining the robot's pose for each frame during simulated motion driven by joint motion methods or absolute joint motion methods. In other words, joint value interpolation involves interpolating joint values. Its initialization primarily involves calculating the velocity-time graph for each joint value based on the starting and target values ​​of each joint, as well as parameters such as acceleration, maximum velocity, and deceleration. Secondly, both joint motion methods and absolute joint motion methods essentially involve driving all joints to move simultaneously to the target pose based on the time required for the slowest joint to move, based on the robot's current pose. Therefore, it is necessary to first identify the slowest-moving joint and the time required for this. Based on the constructed velocity-time graphs for each joint, the motion time of each joint can be easily determined. The velocity-time graphs of the remaining joints are then scaled proportionally based on the maximum time, ensuring consistent motion times for all joints.

[0072] If the simulation task has been started, or the simulation task parsing and interpolation algorithm initialization have been completed, it is necessary to further determine whether the current frame time is greater than the simulation time.

[0073] If the frame time is less than the simulation time, it means that the simulation task has not been completed. Further determine the interpolation type of the current simulation task. If it is trajectory interpolation, obtain the pose matrix of the intermediate point from the interpolation algorithm according to the current frame time, and call the inverse kinematics algorithm to solve the robot's posture. If it is joint value interpolation, directly obtain the robot posture from the interpolation algorithm according to the current frame time, set the posture to the value of the corresponding joint of the robot, accumulate the current frame time, and end the current frame operation.

[0074] If the frame time is greater than the simulation time, it means that the simulation task has been completed. Further determine the interpolation type of the current simulation task. If it is trajectory interpolation, call the inverse kinematics algorithm to solve the robot posture corresponding to the target posture matrix. If it is joint value interpolation, directly set the target posture to the value of the corresponding joint of the robot, clear the simulation task and corresponding variables, and end the current frame operation.

[0075] The method for calculating the pose matrix of the intermediate point or the intermediate pose of the robot obtained from the interpolation algorithm is as follows.

[0076] The ratio of exercise time can be obtained by using formula (2) through the exercise time t and the total exercise time T.

[0077]

[0078] The intermediate point position of the linear trajectory interpolation can be obtained by formula (3). mp is the position vector of the midpoint, V s is the position vector of the starting point, V st is the vector pointing from the starting point to the target point. The above vectors are all based on the base coordinates.

[0079] V mp =V s +V st *ratio (3)

[0080] Circular interpolation first calculates the rotation angle by formula (4) where θ total is the rotation angle corresponding to the arc. According to formula (5), the rotation axis unit vector a=(a x ,a y ,a z ) Construct the skew-symmetric matrix A of the rotation axis vector. Then construct the rotation matrix R by formula (6), where I is the 3X3 unit matrix. Then calculate the midpoint position vector V according to formula (7) mp , where V o is the position vector of the arc center, V os is the vector from the center of the circle to the starting point. The above vectors are all based on the base coordinates.

[0081]

[0082] V mp =V o +R×V os (7)

[0083] The posture matrix of the middle point is composed of the starting posture matrix R s , target pose matrix R tThe motion ratio is calculated. First, the posture matrix R is converted from equations (8) to (12) s and R t Convert to quaternion q s and q t , where R r Represents the attitude matrix. Then, two quaternions q are calculated by formula (13): t and q t The angle θ between them is calculated by equation (14): mp , and normalized by formula (15), we get the unit quaternion q n , where ||q mp || represents the quaternion q mp The modulus of . Finally, the unit quaternion q is converted into n The pose matrix R converted to the midpoint mp .

[0084] q=[q w ,q x ,q y ,q z ] (8)

[0085]

[0086] θ=arccos(q s ·q t )=arccos(q sw q tw +q sx q tx +q sy q ty +q sz q tz ) (13)

[0087]

[0088] Therefore, the pose matrix of the intermediate point of trajectory interpolation can be expressed as T.

[0089]

[0090] The interpolation of a single joint value can be calculated by formula (18), where v s is the initial joint value, v st is the interpolation difference, that is, the target joint value minus the initial joint value.

[0091] v mp =v s +(ratio×v st ) (18)

[0092] Compared with the prior art, the robot motion simulation method proposed in the present invention establishes a first kinematic model of the robot; defines the motion instructions of the first kinematic model to obtain a second kinematic model; the motion instructions include joint motion instructions, linear motion instructions, circular motion instructions, and absolute joint motion instructions; obtains a simulation task, and performs robot motion simulation according to the simulation task based on the second kinematic model. In this way, the robot motion simulation method proposed in the present invention is more concise and efficient, focusing on the core motion simulation requirements of industrial robots, avoiding the accumulation of redundant functions, and thus reducing the complexity and resource consumption of the system. By adopting the robot motion simulation method of the present invention, developers can quickly build a fully functional simulation environment without having to have an in-depth understanding of complex simulation algorithms. This method not only helps to shorten the development cycle, but also significantly reduces the investment in hardware and software resources, effectively reducing the cost of robot simulation.

[0093] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.

[0094] The embodiments of the present invention are described above in conjunction with the accompanying drawings. What is disclosed is only a preferred embodiment of the present invention. However, the present invention 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 invention, ordinary technicians in this field can also make many forms and equivalent changes without departing from the scope of protection of the purpose of the present invention and the claims, which are all within the protection of the present invention.

Claims

1. A robot motion simulation method, characterized in that: The robot motion simulation method comprises the following steps: S1. Establish the first kinematic model of the robot; S2. defining motion instructions for the first kinematic model to obtain a second kinematic model; the motion instructions include joint motion instructions, linear motion instructions, circular motion instructions, and absolute joint motion instructions; S3. Acquire a simulation task, and perform robot motion simulation according to the simulation task based on the second kinematic model; Step S3 includes the following sub-steps: S31, transforming the coordinates of the robot in the second kinematic model according to the simulation task, and initializing the interpolation algorithm and frame time; S32, determining whether the frame time is greater than the simulation time; if so, setting corresponding robot joint values ​​according to the intermediate posture of the robot in the second kinematic model; if not, setting corresponding robot joint values ​​according to the target posture of the robot in the second kinematic model; Step S32 includes the following sub-steps: S321. If the frame time is greater than the simulation time, determining whether the interpolation in the motion simulation of the robot in the second kinematic model is trajectory interpolation; if so, obtaining an intermediate point pose matrix according to the frame time, and solving the intermediate posture of the robot in the second kinematic model according to the intermediate point pose matrix; if not, determining that the interpolation in the motion simulation of the robot in the second kinematic model is joint value interpolation, and obtaining the intermediate posture of the robot in the second kinematic model according to the frame time; S322. If the frame time is less than the simulation time, determine whether the interpolation in the motion simulation of the robot in the second kinematic model is trajectory interpolation; if so, solve the target posture of the robot in the second kinematic model according to the target point in the simulation task; if not, the interpolation in the motion simulation of the robot in the second kinematic model is joint value interpolation, and obtain the target posture of the robot.

2. The robot motion simulation method according to claim 1, wherein: Step S1 includes the following sub-steps: S11, establishing a joint kinematic chain according to the relationship between each joint and connecting rod in the robot; S12, defining the actively moving joint in the joint kinematic chain as an actuator, and setting the motion form, motion axis direction, joint torque range, joint motion range, and joint stiffness range of the actuator; S13, setting the base coordinate system, tool coordinate system and workpiece coordinate system of the robot; S14. Establish an inverse kinematics algorithm for the joint posture of the robot to obtain the kinematic model.

3. The robot motion simulation method according to claim 1, wherein: The joint motion instruction is a fast joint motion instruction that enables the robot to perform nonlinear, multi-axis coordinated joint motion; The linear motion instruction is an instruction to move the end effector of the robot from a current position to a target position along a straight line; The circular motion instruction is an instruction for causing the end effector of the robot to move along an arc line through a preset intermediate point to reach a target position; The absolute joint motion instruction is an instruction for causing the robot to move directly from a current posture to a target posture.

4. The robot motion simulation method according to claim 1, wherein: The joint value interpolation satisfies the following relationship: ; ; in, represents the joint value interpolation of the robot, represents the initial joint value, represents the interpolation difference, t represents the robot's elapsed motion time, T Represents the total motion time of the robot.

Citation Information

Patent Citations

  • Simulation method and device of digital twin system of industrial robot

    CN108724190A