[go: up one dir, main page]

CN116175551A - Kinematic model building method of double-arm cooperative robot - Google Patents

Kinematic model building method of double-arm cooperative robot Download PDF

Info

Publication number
CN116175551A
CN116175551A CN202211617749.1A CN202211617749A CN116175551A CN 116175551 A CN116175551 A CN 116175551A CN 202211617749 A CN202211617749 A CN 202211617749A CN 116175551 A CN116175551 A CN 116175551A
Authority
CN
China
Prior art keywords
robot
arm
coordinate system
double
joint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211617749.1A
Other languages
Chinese (zh)
Inventor
梅志敏
刘仁兵
江晓明
张融
熊烨
肖辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuchang Institute of Technology
Original Assignee
Wuchang Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuchang Institute of Technology filed Critical Wuchang Institute of Technology
Priority to CN202211617749.1A priority Critical patent/CN116175551A/en
Publication of CN116175551A publication Critical patent/CN116175551A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J17/00Joints
    • B25J17/02Wrist joints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

The invention discloses a kinematic model building method of a double-arm cooperative robot, which comprises the steps of building a connecting rod coordinate system of a double-arm parallel robot; describing a robot coordinate system double-arm parallel robot arm coordinate system by a D-H representation method; solving the position and posture information of each joint; track planning and simulation based on Matlab; a right arm of the double-arm parallel robot arm is adopted as a connecting rod coordinate system constructed by an object; the position and the gesture between adjacent rods are described by a 4×4 homogeneous transformation matrix; the curves of angular displacement, angular velocity and angular acceleration of the right arm joints 1,2, 3, 4, 5 of the robot are all stable continuously with time.

Description

Kinematic model building method of double-arm cooperative robot
Technical Field
The invention belongs to the field of robots.
Background
The control of the intelligent robot needs a computer to provide assistance, so that the interaction mode of a person and the robot is greatly changed along with the development of times and technologies, and the artificial intelligent robot is controlled by more visual, convenient and sensitive human body actions, so that the mode is widely applied;
because of the superior performance of the double-arm robots, multiple robot enterprises are beginning to develop double-arm robots with working capabilities; the double-arm cooperative robot is a double-arm industrial robot formed by two seven-degree-of-freedom mechanical arms, a clamping tool is arranged at the tail end of each wrist, and the arms can cooperate to perform corresponding work and perform man-machine cooperation;
at present, the research results of the industrial robots in the aspect of cooperative motion planning are more abroad and mostly focused on the aspects of fluid constraint, motion path planning and the like, the research results of the redundancy robots are mostly represented in the aspects of detection positioning algorithm and track standardization, and the research results of the redundancy robots in the aspect of high flexibility and consideration of kinematics in the aspect of cooperative motion planning are not more common.
Disclosure of Invention
The invention aims to: in order to overcome the defects in the prior art, the invention provides a method for establishing a kinematic model of a double-arm cooperative robot, so that the robot has excellent stability in the whole movement process.
The technical scheme is as follows: in order to achieve the above object, the kinematic model building method of the double-arm cooperative robot of the present invention comprises:
step one, constructing a connecting rod coordinate system of a double-arm parallel robot;
describing a robot coordinate system double-arm parallel robot hand coordinate system by a Denavit-Hartenberg (D-H) representation method;
step three, solving the position and posture information of each joint;
and fourthly, track planning and simulation based on Matlab.
Further, in the step one, a right arm of the double-arm parallel robot is used as a link coordinate system to be constructed as an object.
Further, the position and the posture between the adjacent rods in the second step can be described by a 4×4 homogeneous transformation matrix, see formula 2.1:
Figure SMS_1
the D-H matrix is changed to obtain the general formula of the change of the connecting rod between adjacent connecting rods i-1 T i Is of formula 2.2:
Figure SMS_2
wherein: a, a i-1 、α i-1 、d i And theta i Is a relative position parameter between the coordinate systems i-1 and i;
changing all connecting rods i-1 T i (i=1, 2, … n, joint number) and then multiplying the two to obtain the general matrix transformation formula of the coordinate system { n } of the terminal relative to the coordinate system {0 }: 0 T n0 T 1 1 T 2n-1 T n the method comprises the steps of carrying out a first treatment on the surface of the (2.3)
Further, the step two comprises forward kinematics solution and the robot kinematics positive solution is solved by using a D-H representation method.
Further, the forward kinematics equation for forward kinematics solution is expressed as:
Figure SMS_3
wherein:
Figure SMS_4
-a robot tip pose matrix;
Figure SMS_5
-a pose transformation matrix of joint i to joint i+1; vectors in the n-X axis direction; vector of the o-Y axis direction; vector in the a-Z direction.
Further, the pose transformation matrix of the left arm adjacent joint coordinate system is as follows;
Figure SMS_6
Figure SMS_7
Figure SMS_8
the pose transformation matrix of the right arm adjacent relation coordinate system is as follows;
Figure SMS_9
Figure SMS_10
Figure SMS_11
by applying the following formula:
Figure SMS_12
namely, a transformation matrix of the tail end coordinate system of the mechanical arm corresponding to the base standard is obtained; the kinematic positive solution relationship is:
f(r)=t(r)
wherein: t represents the end position and r represents the joint angle.
Further, in the robot kinematics positive solution solving by using the D-H representation method, the change matrix of the terminal pose obtained by the formulas 2.2 and 2.3 0 T 70 T 7 Namely the joint variable theta 1 ,θ 2 …θ 7 Is a function of (2); and then calculate the transformation matrix of each link and the position of the robot terminal link coordinate system relative to the base coordinate system.
Further, in the step four, motion trail simulation is carried out on the robot by a computer, and corresponding robot objects are set firstly; constructing a robot key in a MatlabRobotics toolbox, namely constructing each joint, and connecting each joint by using a SerialLink function to form a robot structural model when constructing the joints; after the construction is finished, the movement of the robot is driven by a reach function, and the rotation and the movement of the joint can be realized by controlling the position of the sliding block; in joint space, planning is performed on the tail end of the robot, and joint space motion track planning can be represented by using a function jtraj, wherein the calling format of the function jtraj is [ q, qd, qdd ] =jtraj (qz, qn, t), smooth interpolation is performed between two poses from qz to qn, so as to obtain a joint space structural design track, q, qd, qdd are respectively planned angular displacement, angular velocity and angular acceleration, and t is time.
The beneficial effects are that: the method for establishing the kinematic model of the double-arm cooperative robot is well verified in track planning and simulation based on Matlab, and as can be seen from fig. 5, 6 and 7, the change curves of the angular displacement, the angular velocity and the angular acceleration of the right arm joints 1,2, 3, 4 and 5 of the robot along with time are continuous and stable, and the curves are smooth and consistent without mutation.
Drawings
FIG. 1 is a schematic diagram of a structure;
FIG. 2 is a structural dimension diagram;
FIG. 3 is a schematic diagram of the mechanism motion and the coordinate system of each joint;
FIG. 4 two-arm robot model;
the right arm of fig. 5 generates an angular velocity profile of joint i (i=1, 2, 3, 4, 5);
the right arm of fig. 6 generates an angular displacement curve of joint i (i=1, 2, 3, 4, 5);
the right arm of fig. 7 generates an angular acceleration curve of joint i (i=1, 2, 3, 4, 5);
FIG. 8 right arm end effector coordinate system translation change;
FIG. 9 right arm end effector coordinate system rotation variation;
FIG. 10 shows the right arm end effector as a function of time in x, y, z coordinates;
FIG. 11 is a design flow;
FIG. 12 global modeling;
FIG. 13 pallet conveyor Smart assembly connection diagram;
smart assembly connection diagram of suction cup 1 of FIG. 14;
smart assembly connection diagram of suction cup 2 of FIG. 15;
FIG. 16 robot I/O port configuration;
FIG. 17 creates a robotic tool;
FIG. 18 creates a robotic tool;
FIG. 19 creates workpiece coordinates;
FIG. 20 is closed to avoid collision;
FIG. 21 is a synchronized workstation;
FIG. 22 simulation;
FIG. 23 simulates a simulated run state;
fig. 24 simulation is completed.
Detailed Description
The invention will be further described with reference to the accompanying drawings.
Construction of a coordinate System
The positioning relation between the first connecting rod joint shaft and the base in Cartesian space is different from that of any industrial production automatic industrial robot, is not traditional and perpendicular to each other, but is in a space staggered shape, so that the singular phenomenon between connecting rods of the industrial automatic robot can be reasonably eliminated by the structural mode, and the coordinated movable space between mechanical arms is widened.
The robot is schematically shown in fig. 1. The structural dimensions and basic parameters of the link coordinate system constructed as the object using the right arm are shown in fig. 2 and table 1, and the resulting link coordinate system is shown in fig. 3.
Table 1 parameters of the connecting rod
Figure SMS_13
2.2 kinematic parameters
The robot has high flexibility and high precision, and the dynamic characteristics of the robot are highly nonlinear, so that the motion of the robot is described by a proper mathematical equation (mathematical model); mathematical models are often used to predict and monitor the motion state of an object, so motion analysis is also the theoretical basis of control.
Describing a robot coordinate system by a Denavit-Hartenberg (D-H) representation method, the positions and postures of adjacent bars can be described by a 4×4 homogeneous transformation matrix (called an A matrix and also called a joint transformation matrix), namely, the following formula 2.1:
Figure SMS_14
the D-H matrix is changed to obtain the general formula of the change of the connecting rod between adjacent connecting rods i-1 T i Is of formula 2.2:
Figure SMS_15
wherein: a, a i-1 、α i-1 、d i And theta i Is a relative position parameter between the coordinate systems i-1 and i.
Changing all connecting rods i-1 T i After multiplication of (i=1, 2, … n, the joint number) in order, the general matrix transformation formula of the coordinate system { n } of the terminal relative to the coordinate system {0} can be obtained: 0 T n0 T 1 1 T 2n-1 T n
(2.3)
2.3 Forward kinematic solution
And solving the position and posture information of each joint according to the joint transformation matrix, and solving the position and posture of the tail end of the arm of the cooperative robot, so that the motor of each joint is driven by adopting a positive kinematics method for solving.
The forward kinematic equation can be expressed as:
Figure SMS_16
wherein:
Figure SMS_17
-a robot tip pose matrix;
Figure SMS_18
-a pose transformation matrix of joint i to joint i+1; vectors in the n-X axis direction; vector of the o-Y axis direction; vector in the a-Z direction.
The general formula of the connecting rod transformation is as follows:
Figure SMS_19
wherein; a is that i -a pose transformation matrix for joint i; rot-rotation operator; trans-translation operator.
Robot kinematic positive solution: the pose of each joint of the mechanical arm is known to calculate the pose of the tail end of the mechanical arm.
And establishing a pose transformation matrix of the left arm adjacent joint coordinate system.
Figure SMS_20
Figure SMS_21
Figure SMS_22
Similarly, the pose transformation matrix of the right arm adjacent relation coordinate system is shown as follows.
Figure SMS_23
Figure SMS_24
Figure SMS_25
By applying the following formula:
Figure SMS_26
the transformation matrix of the tail end coordinate system of the mechanical arm corresponding to the base target can be obtained. The kinematic positive solution relationship is:
f(r)=t(r)
(2.6)
Wherein: t represents the end position and r represents the joint angle.
2.4 solving the robot kinematics positive solution by using the D-H representation method
The change matrix of the terminal pose obtained by equations 2.2 and 2.3 0 T 70 T 7 Namely the joint variable theta 1 ,θ 2 …θ 7 Is a function of (2).
The transformation matrix of each connecting rod can be calculated:
Figure SMS_27
Figure SMS_28
Figure SMS_29
Figure SMS_30
Figure SMS_31
Figure SMS_32
Figure SMS_33
from the following components
Figure SMS_34
It can be derived that:
from the above 0 T 7 The position of the robot's end link coordinate system relative to the base coordinate system is described.
n x =c 1 c 2 {c 3 [c 4 (c 5 c 6 c 7 -s 5 s 7 )-s 4 s 6 c 7 ]+s 3 (s 5 c 6 c 7 +c 5 s 7 )}-c 1 s 2 {s 4 (c 5 c 6 c 7 -s 5 s 7 )-c 4 s 6 c 7 }-s 1 {-s 3 [c 4 (c 5 c 6 c 7 -s 5 s 7 )-s 4 s 6 c 7 ]+c 3 (s 5 c 6 c 7 +c 5 s 7 )};
n y =s 1 [c 2 {c 3 [c 4 (c 5 c 6 c 7 -s 5 s 7 )-s 4 s 6 c 7 ]+s 3 (s 5 c 6 c 7 +c 5 s 7 )}-s 2 {s 4 (c 5 c 6 c 7 -s 5 s 7 )-c 4 s 6 c 7 }]+c 1 {-s 3 [c 4 (c 5 c 6 c 7 -s 5 s 7 )-s 4 s 6 c 7 ]+c 3 (s 5 c 6 c 7 +c 5 s 7 )};
n z =-s 2 {-s 3 [c 4 (c 5 c 6 c 7 -s 5 s 7 )-s 4 s 6 c 7 ]+c 3 (s 5 c 6 c 7 +c 5 s 7 )}-c 2 [s 4 (c 5 c 6 c 7 -s 5 s 7 )-c 4 s 6 c 7 ];
o x =c 1 c 2 [c 3 (-c 4 c 5 c 6 s 7 -c 4 s 5 c 7 +s 4 c 6 s 7 )-s 3 (s 5 c 6 s 7 -c 5 c 7 )]-c 1 s 2 [s 4 (-c 5 c 6 s 7 -s 5 c 7 )-c 4 c 6 s 7 ]-s 1 {-s 3 [s 4 (-c 5 c 6 s 7 -s 5 c 7 )-c 4 c 6 s 7 ]-c 3 (s 5 c 6 s 7 -c 5 c 7 )};
o y =s 1 c 2 [c 3 (-c 4 c 5 c 6 s 7 -c 4 s 5 c 7 +s 4 c 6 s 7 )-s 3 (s 5 c 6 s 7 -c 5 c 7 )]-s 1 s 2 [s 4 (-c 5 c 6 s 7 -s 5 c 7 )-c 4 c 6 s 7 ]+c 1 {-s 3 [s 4 (-c 5 c 6 s 7 -s 5 c 7 )-c 4 c 6 s 7 ]-c 3 (s 5 c 6 s 7 -c 5 c 7 )};
o z =-s 2 {c 3 [c 4 (c 5 c 6 c 7 -s 5 s 7 )-s 4 s 6 c 7 ]+s 3 (s 5 c 6 c 7 +c 5 s 7 )}-c 2 [s 4 (c 5 c 6 c 7 -s 5 s 7 )-c 4 s 6 c 7 ];
a x =c 1 c 2 [c 3 (c 4 c 5 s 6 +s 4 c 6 )+s 3 s 5 c 6 ]-c 1 s 2 (s 4 c 5 s 6 -c 4 c 6 )-s 1 [-s 3 (c 4 c 5 s 6 +s 4 c 6 )+c 3 s 5 c 6 ];
a y =s 1 c 2 [c 3 (c 4 c 5 s 6 +s 4 c 6 )+s 3 s 5 c 6 ]-s 1 s 2 (s 4 c 5 s 6 -c 4 c 6 )+c 1 [-s 3 (c 4 c 5 s 6 +s 4 c 6 )+c 3 s 5 c 6 ];
a z =-s 2 [c 3 (c 4 c 5 s 6 +s 4 c 6 )+s 3 s 5 c 6 ]-c 2 (s 4 c 5 s 6 -c 4 c 6 );
p x =s 1 c 2 {c 3 [c 4 c 5 s 6 d 4 +s 4 (c 6 d 4 +d 3 )+α 3 ]+s 3 s 5 s 6 d 4 }-s 1 s 2 [s 4 c 5 s 6 d 4 -c 4 (c 6 d 4 -d 3 )+d 2 ]+c 1 {-s 3 [c 4 c 5 s 6 d 4 +s 4 (c 6 d 4 +d 3 )+α 3 ]+c 3 s 5 s 6 d 4 };
p y =-s 3 [c 4 c 5 s 6 d 4 +s 4 (c 6 d 4 +d 3 )+α 3 ]+c 3 s 5 s 6 d 4
p z =-s 2 {c 3 [c 4 c 5 s 6 d 4 +s 4 (c 6 d 4 +d 3 )+α 3 ]+s 3 s 5 s 6 d 4 }-c 2 [s 4 c 5 s 6 d 4 -c 4 (c 6 d 4 -d 3 )+d 2 ]+d 1
2.5 Matlab-based trajectory planning and simulation
The motion trail simulation is carried out on the robot by a computer, and corresponding robot objects are set at first. The key point of the robot is to construct each joint in a Matlab Robotics tool box, link functions in the tool box are used when the joints are constructed, and the joints are connected by using a serialLink function to form a robot structural model. After the construction is completed, the movement of the robot is driven by a reach function, and the rotation and the movement of the joint can be realized by controlling the position of the sliding block, as shown in fig. 4.
In joint space, planning is performed on the tail end of the robot, but joint space motion track planning can be represented by using a function jtraj, wherein the calling format of the function jtraj is [ q, qd, qdd ] =jtraj (qz, qn, t), smooth interpolation is performed between two poses from qz to qn, and a joint space structure design track can be obtained, q, qd, qdd are respectively planned angular displacement, angular velocity and angular acceleration, and t is time. Fig. 5, 6 and 7 are graphs showing the angular displacement, angular velocity and angular acceleration of the right arm joints 1,2, 3, 4 and 5 of the robot, respectively. As can be seen from fig. 5, 6 and 7, the angular displacement, angular velocity and angular acceleration curves of the right arm joints 1,2, 3, 4 and 5 of the robot are all stable continuously, and the curves are smooth and consistent without abrupt changes.
Planning the tail end track of the robot by using a Cartesian space motion planning, wherein the Cartesian space motion track planning is represented by a function ctraj, and the tail end track of the robot is graphically demonstrated by using the function ctraj. Fig. 8 is a change in translation of the robot right arm end effector from an initial pose to an end pose coordinate system, fig. 9 is a change in rotation of the robot right arm end effector coordinate system, and fig. 10 is a graph of the change in the robot right arm end effector over time in x, y, and z coordinates. As can be seen from fig. 8, 9 and 10, the curves are continuous and gentle, and the robot has excellent stability during the entire movement.
3 workstation design simulation
3.1 design flow
The design is based on the ABB robot carrying stacking project, and the main design part is the process of building, designing and debugging a robot workstation. The specific design thinking is to use robottstudio software to build a robot blank workstation and introduce product and equipment models. And placing the robot at a proper position according to the principle of maximizing efficiency, and completing the layout of the workstation. The suction cup is led in, is set as a usable tool and is arranged on the tail end of the robot. A tool coordinate system and a workpiece coordinate system are established. Smart component establishment, design and signal connection are carried out on the system. Robot path analysis and teaching programming. And (3) debugging a simulation step of the robot workstation, and finally outputting a simulation animation.
The design thought flow is shown in figure 11;
3.2 workstation modeling
The overall design modeling is shown in fig. 12, and the main models used in the workstation comprise two suckers, an ABB-IRB14000 robot, an industrial robot skill assessment training platform, a conveyor belt, a stacking platform and the like.
The Robotstatus simulation software is used for creating an empty workstation, the IRB-14000 robot is selected from the model library, and the robot is imported into the workstation and placed on the training platform. And importing models such as a conveyor belt, a sucker and the like to create a robot system.
3.3Smart component creation
The Smart component in the workstation can be changed with different actions according to the change of the I/O signals, so that the simulation animation of the workstation and the actual equipment operation are completely consistent, the efficiency and the accuracy of robot programming are improved to a great extent in the robot workstation, and therefore, the correct establishment of the Smart component is very important in the simulation of the robot workstation.
4.3.1 conveyor Smart Assembly
Material conveyor Smart assembly connection As shown in FIG. 13, the Source assembly is activated when the Material conveyor receives a pulse signal from the robot of 1 from a simultants. The Source component copy_15 objects to the specified region. The Source execution completed signal execute is transmitted to the Enqueue of the Queue component, replicating one part per second by the timer_15. Meanwhile, when the part_15 reaches the designated area, the belt starts to move 460mm in the negative direction with X. The object moved by the LinearMover component is the object Copy copied by the Source component. The PlaneSensor face sensor is always in an inactive state. After the object moved by the LinearMover component touches the PlaneSensor face sensor, the PlaneSensor face sensor's sensor out will send a corresponding signal 1 to dw1 (conveyor in place). The dw1 signal is then transmitted 1 to the robot, where the material is ready for gripping.
Smart assembly connection of suction cup 1 is shown in FIG. 14. In the design, the sucker tool mainly achieves clamping and placing effects on stacking, in the actual production process, the sucker absorbs the stacking to complete carrying operation by using pressure, in the simulation design process, the sucker achieves the absorbing effect on the stacking by using an Attacher component, a Detacher component, a Linear sensor component and the like, wherein the Attacher component is a mounting component, and when the linear sensor component arranged at the tail end of the tool touches materials, sensor signals are triggered to achieve the absorbing effect by using the Attacher component, and the Detacher component achieves the placing effect by changing 0 to 1 when the materials are required to be loosened.
Smart assembly connection of suction cup 2 is shown in FIG. 15. In the design, the sucker tool mainly achieves clamping and placing effects on stacking, in the actual production process, the sucker absorbs the stacking to complete carrying operation by using pressure, in the simulation design process, the sucker achieves the absorbing effect on the stacking by using an Attacher component, a Detacher component, a Linear sensor component and the like, wherein the Attacher component is a mounting component, and when the linear sensor component arranged at the tail end of the tool touches materials, sensor signals are triggered to achieve the absorbing effect by using the Attacher component, and the Detacher component achieves the placing effect by changing 0 to 1 when the materials are required to be loosened.
3.4 control System I/O Port setup
The input Signal and the output Signal of the Smart component of the workstation respectively correspond to the input Signal and the output Signal of the robot, and just like the communication connection between the robot and the PLC, an I/O configuration is established on the I/O configurator of the robot, the configuration manager of the controller is clicked, the I/O System option is selected, the Signal option is selected, and the I/O configuration of the robot is carried out, as shown in fig. 16:
3.5 System debug
3.5.1 creation of tool coordinates
After the designed tools are added into the created workstation, the tools are respectively renamed as 'XP 1' and 'XP1_2', the 'basic' option is clicked on the simulation software page, and the 'XP 1' and 'XP1_2' are respectively selected as robot tools in the tool bar, as shown in fig. 17 and 18.
3.5.2 creation of workpiece coordinates
After the robot tool coordinates are created, xu Yaping creates robot workpiece coordinates. The creation position is on the center of the flange of the end shaft of the robot, the creation of the workpiece coordinates and the workpiece coordinates is completed, the suction cup is installed on the end of the robot, and the wobj0 is the default workpiece coordinates, as shown in fig. 19:
3.6 simulation of the Emulation notes
In the simulation, since the two arms collide during the transportation, the collision needs to be avoided by clicking in the controller, and it is turned off. As shown in fig. 20:
3.7 simulation of the simulation
Before simulation, the components and programs in the workstation need to be synchronously matched in the controller. As shown in fig. 21 below:
and playing the button at the simulation midpoint, and starting the simulation by the workstation. Fig. 22 is as follows. In the operation of the workstation simulation, fig. 23 is as follows. The simulation is completed as shown in fig. 24.
Appendix one: left arm transfer program of cooperative robot
MODULE Module1
CONST robtarget Target_60:=[[341.534724482,318.958070166,213.970342919],
[0.00445682,-0.997854004,0.06476617,0.008536191],[-1,1,-2,4],[127.269502494,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10:=[[341.534378115,318.957525734,47.955788463],
[0.004456333,-0.997854054,0.064765487,0.008535841],[-1,2,-2,4],[127.269566304,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70:=[[341.534724482,318.958070166,213.970342919],
[0.00445682,-0.997854004,0.06476617,0.008536191],[-1,1,-2,4],[127.269502494,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_30:=[[228.397524067,192.552388455,226.022761883],
[0.000406636,0.997878979,-0.064792559,0.006269147],[0,2,-2,4],[122.909989274,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_40:=[[228.397628517,192.552600632,226.022777727],
[0.706034626,0.705176485,-0.052218013,0.038916716],[0,1,-2,4],[122.913145091,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_20:=[[228.392508118,7.874635343,226.027137813],
[0.706034874,0.705176228,-0.052217959,0.038916962],[-1,1,-2,4],[122.913149664,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_50:=[[228.397628517,192.552600632,226.022777727],
[0.706034626,0.705176485,-0.052218013,0.038916716],[0,1,-2,4],[122.913145091,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_30_2:=[[228.397634329,192.552596944,226.022782387],[0.000406542,0.997878977,-0.064792613,0.006268983],[0,2,-2,4],[122.909997416,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_2:=[[341.534931711,264.802208911,213.645070127],[0.004456988,-0.997854026,0.064765788,0.008536462],[-1,1,-2,4],[127.269569202,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_2:=[[341.534586507,264.801598867,47.95574496],
[0.004456498,-0.997854038,0.064765683,0.008536085],[-1,2,-2,4],[127.26956661,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_3:=[[341.534931711,264.802208911,213.645070127],[0.004456988,-0.997854026,0.064765788,0.008536462],[-1,1,-2,4],[127.269569202,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_3:=[[299.076739962,329.055074826,210.426883331],[0.010645757,-0.660115064,0.751075538,0.004506258],[-1,1,-1,4],[127.270031716,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_3:=[[299.076375946,329.054506911,47.952188461],
[0.010645809,-0.660115253,0.751075374,0.004505722],[-1,2,-1,4],[127.270029286,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_4:=[[299.076739962,329.055074826,210.426883331],[0.010645757,-0.660115064,0.751075538,0.004506258],[-1,1,-1,4],[127.270031716,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_4:=[[299.076920035,292.178087315,212.016866155],[0.010645754,-0.660114894,0.751075686,0.004506598],[-1,1,-1,4],[127.270025895,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_4:=[[299.076697953,292.177704129,47.952177438],
[0.010645812,-0.660115024,0.751075573,0.004506202],[-1,2,-1,4],[127.270034749,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_5:=[[299.076920035,292.178087315,212.016866155],[0.010645754,-0.660114894,0.751075686,0.004506598],[-1,1,-1,4],[127.270025895,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_5:=[[299.077322998,254.973276846,210.250569124],[0.010645373,-0.660114796,0.751075772,0.004507355],[-1,2,-1,4],[127.270024572,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_5:=[[299.077046715,254.97270023,47.952076566],
[0.010645561,-0.660114859,0.751075718,0.004506879],[-1,2,-1,4],[127.270023643,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_6:=[[299.077322998,254.973276846,210.250569124],[0.010645373,-0.660114796,0.751075772,0.004507355],[-1,2,-1,4],[127.270024572,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_6:=[[289.056651252,264.803028541,210.818875263],[0.004457242,-0.997854003,0.064766035,0.00853717],[-1,2,-2,4],[127.269564223,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_6:=[[289.056262147,264.802397576,68.082019597],
[0.00445687,-0.997854019,0.064765866,0.008536779],[-1,2,-2,4],[127.269558612,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_7:=[[289.056651252,264.803028541,210.818875263],[0.004457242,-0.997854003,0.064766035,0.00853717],[-1,2,-2,4],[127.269564223,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_7:=[[289.056723156,318.980666846,215.22628366],
[0.004457095,-0.997854005,0.06476598,0.008537384],[-1,1,-2,4],[127.269561597,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_7:=[[289.056593865,318.980506812,68.081958829],
[0.004457054,-0.997854007,0.064765976,0.008537215],[-1,2,-2,4],[127.269562834,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_8:=[[289.056723156,318.980666846,215.22628366],
[0.004457095,-0.997854005,0.06476598,0.008537384],[-1,1,-2,4],[127.269561597,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_8:=[[331.533581487,329.055483887,212.356801494],[0.010645767,-0.660114904,0.751075676,0.004506587],[-1,1,-1,4],[127.270036599,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_8:=[[331.533410367,329.055315712,68.136502404],
[0.01064573,-0.660115009,0.751075586,0.004506406],[-1,2,-1,4],[127.270033491,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_9:=[[331.533581487,329.055483887,212.356801494],[0.010645767,-0.660114904,0.751075676,0.004506587],[-1,1,-1,4],[127.270036599,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_9:=[[331.533910441,292.449187368,213.247562228],[0.010645514,-0.660114839,0.751075733,0.004507247],[-1,1,-1,4],[127.270026334,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_9:=[[331.533774458,292.449002823,68.136398388],
[0.01064556,-0.660114839,0.751075734,0.00450708],[-1,2,-1,4],[127.270026385,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_10:=[[331.533910441,292.449187368,213.247562228],[0.010645514,-0.660114839,0.751075733,0.004507247],[-1,1,-1,4],[127.270026334,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_10:=[[331.53412464,254.856699103,212.257876931],[0.010645352,-0.660114848,0.751075725,0.004507728],[-1,2,-1,4],[127.270029309,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_10:=[[331.533985702,254.856528742,68.13629667],
[0.010645334,-0.66011483,0.751075742,0.004507546],[-1,2,-1,4],[127.270026202,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_11:=[[331.53412464,254.856699103,212.257876931],[0.010645352,-0.660114848,0.751075725,0.004507728],[-1,2,-1,4],[127.270029309,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_11:=[[341.534724482,318.958070166,213.970342919],[0.00445682,-0.997854004,0.06476617,0.008536191],[-1,1,-2,4],[127.269502494,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_11:=[[342.195897233,318.55577429,88.148337377],[0.004456333,-0.997854054,0.064765487,0.008535841],[-1,2,-2,4],[127.269566304,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_13:=[[341.534724482,318.958070166,213.970342919],[0.00445682,-0.997854004,0.06476617,0.008536191],[-1,1,-2,4],[127.269502494,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_2_2:=[[341.534931711,264.802208911,213.645070127],[0.004456988,-0.997854026,0.064765788,0.008536462],[-1,1,-2,4],[127.269569202,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_2_2:=[[342.196105625,264.399847423,88.148293874],[0.004456498,-0.997854038,0.064765683,0.008536085],[-1,2,-2,4],[127.26956661,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_3_2:=[[341.534931711,264.802208911,213.645070127],[0.004456988,-0.997854026,0.064765788,0.008536462],[-1,1,-2,4],[127.269569202,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_3_2:=[[299.076739962,329.055074826,210.426883331],[0.010645757,-0.660115064,0.751075538,0.004506258],[-1,1,-1,4],[127.270031716,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_3_2:=[[299.737895064,328.652755467,88.144737375],[0.010645809,-0.660115253,0.751075374,0.004505722],[-1,2,-1,4],[127.270029286,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_4_2:=[[299.076739962,329.055074826,210.426883331],[0.010645757,-0.660115064,0.751075538,0.004506258],[-1,1,-1,4],[127.270031716,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_4_2:=[[299.076920035,292.178087315,212.016866155],[0.010645754,-0.660114894,0.751075686,0.004506598],[-1,1,-1,4],[127.270025895,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_4_2:=[[299.738217071,291.775952685,88.144726352],[0.010645812,-0.660115024,0.751075573,0.004506202],[-1,2,-1,4],[127.270034749,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_5_2:=[[299.076920035,292.178087315,212.016866155],[0.010645754,-0.660114894,0.751075686,0.004506598],[-1,1,-1,4],[127.270025895,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60_5_2:=[[299.077322998,254.973276846,210.250569124],[0.010645373,-0.660114796,0.751075772,0.004507355],[-1,2,-1,4],[127.270024572,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_10_5_2:=[[299.738565833,254.570948786,88.14462548],[0.010645561,-0.660114859,0.751075717,0.004506879],[-1,2,-1,4],[127.270023643,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_6_2:=[[299.077322998,254.973276846,210.250569124],[0.010645373,-0.660114796,0.751075772,0.004507355],[-1,2,-1,4],[127.270024572,9E+09,9E+09,9E+09,9E+09,9E+09]];
Figure SMS_35
Figure SMS_36
Figure SMS_37
Figure SMS_38
Figure SMS_39
Figure SMS_40
Appendix two: cooperative robot right arm transfer program
MODULE Module1
CONSTrobtargetTarget_70:=[[228.397121583,-195.422301509,226.192771161],[-0.000000138,1,0.000000086,-0.000000171],[0,-2,2,4],[-119.810002554,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONSTrobtargetTarget_20:=[[110.754628937,-323.62451658,226.184136062],[0.004100919,-0.999991591,-0.000000326,0.000000862],[0,-1,2,4],[-119.81000208,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONSTrobtargetTarget_10:=[[110.754325603,-323.623929978,115.761855525],[0.004101207,-0.99999159,-0.000000173,0.000000406],[0,-2,2,4],[-119.810004611,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONSTrobtargetTarget_30:=[[110.754628937,-323.62451658,226.184136062],[0.004100919,-0.999991591,-0.000000326,0.000000862],[0,-1,2,4],[-119.81000208,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONSTrobtargetTarget_50:=[[228.395318299,-195.420703493,226.192678736],[0.707106318,-0.707107245,0.000000454,0.000000998],[0,-1,2,4],[-119.809997023,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_40:=[[228.395209541,-12.125769197,226.192747551],
[0.707106367,-0.707107195,0.000000357,0.000000882],[1,-1,2,4],[-119.809995918,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_60:=[[228.395318299,-195.420703493,226.192678736],
[0.707106318,-0.707107245,0.000000454,0.000000998],[0,-1,2,4],[-119.809997023,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_70_2:=[[228.397121583,-195.422301509,226.192771161],[-0.000000138,1,0.000000086,-0.000000171],[0,-2,2,4],[-119.810002554,9E+09,9E+09,9E+09,9E+09,9E+09]];
Figure SMS_41
Figure SMS_42
The foregoing is only a preferred embodiment of the invention, it being noted that: it will be apparent to those skilled in the art that various modifications and adaptations can be made without departing from the principles of the present invention, and such modifications and adaptations are intended to be comprehended within the scope of the invention.

Claims (8)

1. The method for establishing the kinematic model of the double-arm cooperative robot is characterized by comprising the following steps of:
step one, constructing a connecting rod coordinate system of a double-arm parallel robot;
describing a robot coordinate system double-arm parallel robot coordinate system by using a D-H representation method;
step three, solving the position and posture information of each joint;
and fourthly, track planning and simulation based on Matlab.
2. The method for creating a kinematic model of a double-arm cooperative robot according to claim 1, characterized by: in the step one, a right arm of the double-arm parallel robot is adopted as a connecting rod coordinate system constructed by an object.
3. The method for creating a kinematic model of a double-arm cooperative robot according to claim 1, characterized by: the position and posture between adjacent rods in the step two are described by a 4×4 homogeneous transformation matrix, see formula 2.1:
Figure QLYQS_1
the D-H matrix is changed to obtain the general formula of the change of the connecting rod between adjacent connecting rods i-1 T i Is of formula 2.2:
Figure QLYQS_2
wherein: a, a i-1 、α i-1 、d i And theta i Is a relative position parameter between the coordinate systems i-1 and i;
changing all connecting rods i-1 T i (i=1, 2, … n, joint number) and then multiplying the two to obtain the general matrix transformation formula of the coordinate system { n } of the terminal relative to the coordinate system {0 }: 0 T n0 T 1 1 T 2n-1 T n . (formula 2.3).
4. The method for creating a kinematic model of a double-arm cooperative robot according to claim 3, characterized by: the step two comprises forward kinematics solution and solving the robot kinematics positive solution by using a D-H representation method.
5. The method for creating a kinematic model of a double-arm cooperative robot according to claim 4, characterized by: the forward kinematics equation for forward kinematics solution is expressed as:
Figure QLYQS_3
wherein:
Figure QLYQS_4
-a robot tip pose matrix;
Figure QLYQS_5
-a pose transformation matrix of joint i to joint i+1; vectors in the n-X axis direction; vector of the o-Y axis direction; vector in the a-Z direction.
6. The method for creating a kinematic model of a double-arm cooperative robot according to claim 5, characterized by:
the pose transformation matrix of the left arm adjacent joint coordinate system is as follows;
Figure QLYQS_6
Figure QLYQS_7
Figure QLYQS_8
the pose transformation matrix of the right arm adjacent relation coordinate system is as follows;
Figure QLYQS_9
Figure QLYQS_10
Figure QLYQS_11
by applying the following formula:
Figure QLYQS_12
namely, a transformation matrix of the tail end coordinate system of the mechanical arm corresponding to the base standard is obtained; the kinematic positive solution relationship is:
f(r)=t(r)
wherein: t represents the end position and r represents the joint angle.
7. The method for creating a kinematic model of a double-arm cooperative robot according to claim 6, characterized by: solving a change matrix of the terminal pose obtained by formulas 2.2 and 2.3 in the robot kinematics positive solution by using a D-H representation method 0 T 70 T 7 Namely the joint variable theta 1 ,θ 2 …θ 7 Is a function of (2); and then calculate the transformation matrix of each link and the position of the robot terminal link coordinate system relative to the base coordinate system.
8. The method for creating a kinematic model of a double-arm cooperative robot according to claim 7, characterized by: in the fourth step, the motion trail simulation is carried out on the robot by a computer, and corresponding robot objects are set; constructing a robot key in a Matlab Robotics tool box, namely constructing each joint, and connecting each joint by using a SerialLink function to form a robot structural model when constructing the joints; after the construction is finished, the movement of the robot is driven by a reach function, and the rotation and the movement of the joint can be realized by controlling the position of the sliding block;
in joint space, planning is performed on the tail end of the robot, and joint space motion track planning can be represented by using a function jtraj, wherein the calling format of the function jtraj is [ q, qd, qdd ] =jtraj (qz, qn, t), smooth interpolation is performed between two poses from qz to qn, so as to obtain a joint space structural design track, q, qd, qdd are respectively planned angular displacement, angular velocity and angular acceleration, and t is time.
CN202211617749.1A 2022-12-15 2022-12-15 Kinematic model building method of double-arm cooperative robot Pending CN116175551A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211617749.1A CN116175551A (en) 2022-12-15 2022-12-15 Kinematic model building method of double-arm cooperative robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211617749.1A CN116175551A (en) 2022-12-15 2022-12-15 Kinematic model building method of double-arm cooperative robot

Publications (1)

Publication Number Publication Date
CN116175551A true CN116175551A (en) 2023-05-30

Family

ID=86447072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211617749.1A Pending CN116175551A (en) 2022-12-15 2022-12-15 Kinematic model building method of double-arm cooperative robot

Country Status (1)

Country Link
CN (1) CN116175551A (en)

Similar Documents

Publication Publication Date Title
CN106777475B (en) A kind of injection machine arm dynamics synergy emulation method of confined space constraint
CN203449306U (en) Master-slave-type double-industrial-robot coordination operation control system
CN107486858A (en) Multi-mechanical-arm collaborative offline programming method based on RoboDK
CN105772917B (en) A kind of three joint spot welding robot's Trajectory Tracking Control methods
CN110421561B (en) Method for spraying clothes by using cooperative robot
CN106346480B (en) A kind of multiple degrees of freedom injection machine arm modeling method based on UG and MATLAB
CN105751196A (en) Operating method on basis of master-slave industrial robot collaboration
Holubek et al. Offline programming of an ABB robot using imported CAD models in the RobotStudio software environment
CN106041932A (en) Movement control method for UR robot
CN110682292A (en) Robot stacking track generation method based on RT Toolbox
Xiao et al. Simulation research of a six degrees of freedom manipulator kinematics based On MATLAB toolbox
CN114055467A (en) Space pose online simulation system based on five-degree-of-freedom robot
Lee et al. A robot teaching framework for a redundant dual arm manipulator with teleoperation from exoskeleton motion data
Slavković et al. Development of the programming and simulation system of 4-axis robot with hybrid kinematic
CN106338966B (en) A kind of industrial robot trajectory planning programmed method
CN113681574A (en) A 3D visualization simulation and offline programming system for robot for sheet metal bending
CN116175551A (en) Kinematic model building method of double-arm cooperative robot
Pickett et al. RoboTeach: An off-line robot programming system based on GMSolid
CN116277026A (en) A multi-robot collaborative immune network control method
Lei et al. Vision-based position/impedance control for robotic assembly task
Juan et al. Analysis and simulation of a 6R robot in virtual reality
Omar et al. Control algorithm trajectory planning for dual cooperative manipulators with experimental verification
Ji et al. The six-degree-of-freedom robotic arm optimization iterative learning algorithm improves trajectory planning
Shuhua et al. Trajectory planning of 6-DOF manipulator based on combination function method
US20230109223A1 (en) Intelligent clear path

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination