WO2022227536A1 - Robot arm control method and apparatus, and robot arm and readable storage medium - Google Patents

Robot arm control method and apparatus, and robot arm and readable storage medium Download PDF

Info

Publication number
WO2022227536A1
WO2022227536A1 PCT/CN2021/133002 CN2021133002W WO2022227536A1 WO 2022227536 A1 WO2022227536 A1 WO 2022227536A1 CN 2021133002 W CN2021133002 W CN 2021133002W WO 2022227536 A1 WO2022227536 A1 WO 2022227536A1
Authority
WO
WIPO (PCT)
Prior art keywords
robotic arm
manipulator
mass
coordinate system
matrix data
Prior art date
Application number
PCT/CN2021/133002
Other languages
French (fr)
Chinese (zh)
Inventor
黄荔群
任晓雨
赵明国
熊友军
Original Assignee
深圳市优必选科技股份有限公司
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 深圳市优必选科技股份有限公司 filed Critical 深圳市优必选科技股份有限公司
Publication of WO2022227536A1 publication Critical patent/WO2022227536A1/en

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/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • 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

Definitions

  • the present application relates to the technical field of robotic arm applications, and in particular, to a robotic arm control method, a device, a robotic arm, and a readable storage medium.
  • robotic arms are usually replaced by robotic arms to perform different tasks, and for different tasks, different manipulators are installed at the end of the robotic arm to grab or grip the load
  • a sucker-type manipulator can be used when grabbing boxes
  • a multi-finger gripper can be used when grabbing irregular items
  • a corresponding pen clip can be installed when writing.
  • Manipulators with different mass properties will affect the position and force control of the robotic arm.
  • the relevant mass and centroid parameters can be obtained through the CAD model of the manipulator.
  • the actual quality parameters are different from the CAD model, and many manipulators installed at the end of the manipulator cannot use the CAD model to obtain their theoretical model parameters.
  • the control end of the manipulator cannot accurately obtain the mass and center of mass of the manipulator, so that the control end of the manipulator cannot perform precise position movement and force control of the manipulator.
  • the present application proposes a method, device, robot arm and readable storage medium for controlling a robotic arm.
  • the present application proposes a method for controlling a robotic arm, the method comprising:
  • n gravity matrix data of the manipulator installed at the end of the manipulator is obtained by using the sensor installed at the end of the manipulator, and the n gravity matrix data is when the manipulator is in n different poses.
  • the center of mass coordinates and the mass are fed back to the control end of the robotic arm, so that the control end of the robotic arm controls the robotic arm according to the center of mass coordinates and the mass.
  • the acquisition of n gravity matrix data of the manipulator at the end of the robotic arm by using a sensor installed at the end of the robotic arm includes:
  • the sensor installed at the end of the manipulator is used to obtain the jth gravity matrix data of the manipulator in the coordinate system of the end, where j ⁇ n.
  • the preset rotation transformation matrix determination method is used to determine the number of n points from the base coordinate system of the manipulator to the end coordinate system when the manipulator is in n different poses Rotation transformation matrix, including:
  • the manipulator control method described in this application uses the following formulas to determine the center of mass coordinates and mass of the manipulator:
  • m represents the mass of the manipulator
  • rc represents the center of mass coordinates of the manipulator
  • fFTbias represents the static error of the force collected by the sensor installed at the end of the manipulator
  • ⁇ FTbias represents the The static error of the torque collected by the sensor at the end of the robot arm
  • Yj represents the parameter matrix corresponding to the jth pose
  • g represents the gravitational acceleration vector
  • fFTj represents the force vector of the gravity matrix data corresponding to the jth pose
  • ⁇ FTi represents the moment vector of the gravity matrix data corresponding to the jth pose.
  • the control of the robotic arm to arbitrarily transform n times within the motion range, and to maintain the current pose for a preset time after each transformation includes:
  • each link of the robotic arm is controlled to be arbitrarily transformed n times within the motion range, and the current pose is maintained for a preset time after each transformation.
  • the value range of the preset time is 1s to 2s.
  • the robotic arm control method described in the present application further includes: feeding back the static error of the sensor installed at the end of the robotic arm to the control end of the robotic arm.
  • the present application proposes a robotic arm control device, the device comprising:
  • the acquisition module is used to obtain n pieces of gravity matrix data of the manipulator installed at the end of the robot arm by using the sensor installed at the end of the robot arm, where the n pieces of gravity matrix data are when the robot arm is in n different poses n gravity matrix data of the operator in the end coordinate system, n ⁇ 3;
  • a determination module configured to use a preset rotation transformation matrix determination method to determine n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses;
  • a calculation module for calculating the coordinates of the center of mass and the mass of the operator by using the n gravity matrix data and the n rotation transformation matrices;
  • the control module is configured to feed back the coordinates of the center of mass and the mass to the control end of the manipulator, so that the control end of the manipulator controls the manipulator according to the coordinates of the center of mass and the mass.
  • the present application proposes a robotic arm, including a memory and a processor, wherein the memory stores a computer program, and the computer program executes the robotic arm control method described in the present application when the computer program runs on the processor.
  • the present application provides a readable storage medium, which stores a computer program, and when the computer program runs on a processor, executes the robotic arm control method described in the present application.
  • the technical solution of the present application uses the sensor at the end of the manipulator to obtain n gravity matrix data of the manipulator at the end of the manipulator in the end coordinate system when the manipulator is in n different poses, n ⁇ 3; determine the When the manipulator is in n different poses, the n rotation transformation matrices from the base coordinate system of the manipulator to the end coordinate system; it is only necessary to use the n gravity matrix data corresponding to the manipulator in n different poses and With n rotation transformation matrices, the center of mass coordinates and mass of the operator can be calculated.
  • the technical solution for calculating the coordinates of the center of mass and the mass of the manipulator disclosed in the present application not only requires a small amount of calculation, but also can realize online data processing to determine the coordinates and mass of the center of mass of the manipulator, without the need to solve the offline solution and then modify the model parameters, thereby effectively
  • the speed of determining the relevant parameters of the manipulator is improved; and, the control method of the manipulator disclosed in the present application also feeds back the coordinates of the center of mass and the mass to the control end of the manipulator, so that the control end of the manipulator can be The coordinates of the center of mass and the quality control the robotic arm, so that the control end of the robotic arm can perform accurate force control on the robotic arm, thereby controlling the robotic arm to move precisely.
  • FIG. 1 shows a schematic flowchart of a method for controlling a robotic arm proposed by an embodiment of the present application
  • FIG. 2 shows a schematic flowchart of a method for determining n gravity matrix data proposed by an embodiment of the present application
  • FIG. 3 shows a schematic flowchart of a method for determining a rotation transformation matrix proposed by an embodiment of the present application
  • FIG. 4 shows a schematic diagram of related parameters of a robotic arm proposed by an embodiment of the present application
  • FIG. 5 shows a schematic flowchart of another method for controlling a robotic arm proposed by an embodiment of the present application
  • FIG. 6 shows a schematic structural diagram of a robotic arm control device proposed in an embodiment of the present application
  • FIG. 7 shows a schematic structural diagram of a robotic arm proposed in an embodiment of the present application.
  • 10-manipulator control device 11-acquisition module; 12-determination module; 13-calculation module; 14-control module; 200-manipulator; 210-memory; 220-processor.
  • the position and posture of the manipulator installed at the end of the manipulator will change. Without considering the interference of external forces on the manipulator, the manipulator at the end is only affected by gravity, due to the gravitational field. The direction of the manipulator does not change, so the gravity is unchanged in the base coordinate system of the manipulator. However, the value of the manipulator's gravity relative to the coordinate system of the end of the manipulator will change with the movement of the manipulator. Therefore, the quality attributes of the manipulator can be automatically identified according to the above characteristics.
  • the technical solution of the present application can be used on a manipulator of any configuration.
  • the manipulator parameter automatic identification method disclosed in the present application is used to power on the manipulator and initialize the manipulator. Only need to collect the relevant information corresponding to three random poses to calculate the center of mass coordinates and mass of the manipulator. Not only the calculation amount is small, but also online data processing can be realized, without the need to solve offline and then modify the model parameters, and update the relevant parameter information of the operator in real time.
  • the automatic identification method of manipulator parameters disclosed in the present application fully considers the power-on error of the force sensor when calculating the center of mass coordinates and mass of the manipulator, so that the center of mass coordinates and mass of the manipulator determined by calculation are closer to the real values.
  • An embodiment of the present application proposes a method for controlling a robotic arm. As shown in FIG. 1 , the method for controlling a robotic arm includes the following steps:
  • the 6-Dimension Force Torque Sensor is a force sensor that can measure multi-dimensional force/torque at the same time, and convert the multi-dimensional force/torque signal into an electrical signal, which can be used to monitor forces and torques with changing directions and magnitudes. , you can measure acceleration or inertial force and detect the magnitude and point of contact force. It can be understood that the six-dimensional force sensor can measure the force and torque in the three directions of space X, Y, and Z.
  • the method for determining n gravity matrix data includes the following steps:
  • S110 Control the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation.
  • the methods for controlling the robotic arm to arbitrarily transform n times within the motion range include the following three methods:
  • n end positions can be preset within the motion range of the manipulator, and then the end of the manipulator is controlled to move to the preset n end positions in sequence, and stay at each end position for a preset time.
  • a random function can be used to randomly select n end positions within the motion range of the manipulator, and then control the end of the manipulator to move to n randomly selected end positions in sequence, and stay at each end position for a preset time.
  • each link of the robotic arm can be controlled to be arbitrarily transformed n times within the range of motion, and after each transformation, the current pose.
  • the value range of the preset time for maintaining the current pose can be 1s to 2s, and the principle of setting the preset time is: it should be ensured that the sensor installed at the end of the robot arm can obtain a stable sensor within the preset time.
  • Gravity Matrix Data Preferably, the preset time can be 1s, which can ensure that the sensor installed at the end of the robotic arm can obtain stable gravity matrix data within the preset time, and can avoid the entire automatic parameter identification process taking a long time.
  • the six-dimensional force sensor installed at the end of the robotic arm is used to obtain the corresponding gravity matrix data of the manipulator in the end coordinate system.
  • the manipulator at the end is only affected by gravity. Since the direction of the gravity field will not change, the magnitude of gravity is in the base coordinate system of the robotic arm. However, the value of gravity relative to the coordinate system of the end of the manipulator will change with the movement of the manipulator. Therefore, the mass properties of the manipulator can be identified by using the obtained multiple gravity matrix data.
  • a rotation transformation matrix determination method can be used to determine n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses, and the rotation transformation matrix determination method includes the standard DH ( At least one of Denavit-Hartenberg) method, modified DH method and S-U (Sheth and Uicker) method.
  • the DH method can be used to model the robot, and when the manipulator is in different poses, the link joint angles of each link of the manipulator in different poses are obtained, and then, through each link of the manipulator. The joint angle of the link, the preset twist of each link, and the offset of each link can determine the rotation transformation matrix.
  • the twist degree of each link and the offset of each link are related to the configuration of the manipulator.
  • the configuration of the manipulator is constant, determine the twist degree of each link and the offset of each link corresponding to the configuration of the manipulator, and set the The twist of each link and the offset of each link are used as preset values.
  • n rotation transformation matrices are determined using the following steps:
  • S210 Control the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation.
  • the method for controlling the robotic arm to arbitrarily transform n times within the range of motion includes: setting n end positions within the range of motion of the robotic arm in advance, and then controlling the end of the robotic arm to move to a preset position in sequence. n end positions, and stay at each end position for a preset time; a random function can be used to randomly select n end positions within the motion range of the manipulator, and then control the end of the manipulator to move to n randomly selected end position, and stay at each end position for a preset time; it is also possible to control each link of the robotic arm to arbitrarily change n times within the range of motion while keeping the end position of the robotic arm unchanged, and The current pose is maintained for a preset time after each transformation.
  • the value range of the preset time for maintaining the current pose may be 1s to 2s, and the principle of setting the preset time is: it should be ensured that the preset rotation transformation matrix determination method can be used to determine the corresponding value within the preset time.
  • the preset time may be 1 s, that is, it can be ensured that the preset rotation transformation matrix determination method can determine the corresponding rotation transformation matrix within the preset time, and the entire automatic parameter identification process can be prevented from taking a long time.
  • the angular displacement sensor or position encoder at the corresponding position of each joint of the manipulator can be used to collect the link angle of the corresponding joint.
  • S230 Determine the adjacent transformation matrix between the coordinate systems of each adjacent link by using the joint angle of each link and the preset twist degree of each link.
  • the DH method is used to model the robot.
  • the link angle of the i-th link of the manipulator can be obtained through the position encoder or angular displacement sensor of each joint of the manipulator.
  • q i using the link joint angle q i of the ith link, the preset link twist ⁇ i of the ith link, and the link offset d i of the ith link, the adjacent two links can be calculated.
  • a robotic arm includes multiple links and multiple link joints, "link i-1” represents the i-1th link, and “link i” represents the ith link.
  • Rod “Joint 1” represents the 1st link joint
  • “Joint i-1” represents the i-1th link joint
  • “Joint i” represents the ith link joint
  • “Joint i+1” represents the ith link joint i+1 link joints
  • qi represents the link angle of the ith link
  • ⁇ i represents the preset link twist of the ith link
  • d i represents the link of the ith link Bias.
  • the first three rows of can represent the adjacent transformation matrix
  • the adjacent transformation matrix The coordinate system corresponding to the i link between the coordinate system corresponding to the i-th link and the coordinate system corresponding to the i-1-th link can be represented.
  • the rotation transformation matrix Rj from the base coordinate system to the end coordinate system of the manipulator corresponding to the jth pose can be determined.
  • L is the total number of connecting rods.
  • the center of mass coordinates and mass of the operator may be calculated using the n gravity matrix data and the n rotation transformation matrices.
  • S400 Feed back the coordinates of the centroid and the mass to the control end of the robotic arm, so that the control end of the robotic arm controls the robotic arm according to the coordinates of the centroid and the mass.
  • steps S100 and S200 can be executed simultaneously or sequentially.
  • steps S100 and S200 When executed sequentially, there is no sequence between steps S100 and S200.
  • the jth rotation transformation matrix and the jth rotation transformation matrix should be guaranteed.
  • the j gravity matrix data corresponds to the jth pose that is the same.
  • step S100 and step S200 are performed at the same time, and at the jth pose, the jth rotation transformation matrix and the jth gravity matrix data are determined simultaneously, and the simultaneous execution of steps S100 and S200 can speed up the center of mass coordinates and mass of the manipulator recognition speed.
  • the technical solution of this embodiment uses the sensor at the end of the manipulator to obtain n gravity matrix data of the manipulator at the end of the manipulator in the end coordinate system when the manipulator is in n different poses, n ⁇ 3;
  • the set rotation transformation matrix determination method determines n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses; it is only necessary to obtain the n different positions of the robotic arm. According to the n gravity matrix data and n rotation transformation matrices corresponding to the posture, the center of mass coordinates and mass of the manipulator can be calculated.
  • the technical solution for calculating the coordinates of the center of mass and the mass of the manipulator disclosed in the present application not only requires a small amount of calculation, but also can realize online data processing to determine the coordinates and mass of the center of mass of the manipulator, without the need to solve the offline solution and then modify the model parameters, thereby effectively
  • m represents the mass of the manipulator
  • rc represents the center of mass coordinates of the manipulator
  • fFTbias represents the static error of the force collected by the sensor at the end of the manipulator
  • ⁇ FTbias represents the force of the manipulator at the end of the manipulator
  • ⁇ FTbias represents the force of the manipulator at the end of the manipulator
  • Yj represents the parameter matrix corresponding to the jth pose
  • g represents the gravitational acceleration vector
  • fFTj represents the force vector of the gravity matrix data corresponding to the jth pose
  • ⁇ FTi represents the moment vector of the gravity matrix data corresponding to the jth pose.
  • the six-dimensional force sensor every time the six-dimensional force sensor is powered on and used, the collected values obtained by the six-dimensional force sensor have static errors, and the static errors are different each time.
  • the six-dimensional force sensor needs to stand for a period of time before use, and then the static error of the six-dimensional force sensor is measured and then used to measure the force.
  • the six-dimensional force sensor and the manipulator at the end need to be removed every time, and the static error is measured before use, which is very time-consuming and inconvenient. If the six-dimensional force and the manipulator at the end are not removed for measurement, the static error will be affected by the manipulator at the end, resulting in a large error in the six-dimensional force measurement result.
  • fFTbias is used to represent the force obtained by the sensor at the end of the robotic arm.
  • the static error, ⁇ FTbias represents the static error of the torque acquired by the sensor at the end of the robot arm.
  • ⁇ base is the base coordinate system of the manipulator
  • ⁇ FT is the end coordinate system of the six-dimensional force sensor installed at the end of the manipulator
  • ⁇ load is the coordinate system located at the center of mass of the end manipulator.
  • the gravity of the manipulator collected by the six-dimensional force sensor installed at the end of the manipulator will be affected by the motion of the manipulator, and the collected value also includes the static error after the six-dimensional force sensor is powered on. Therefore, the gravity matrix data collected by the six-dimensional force sensor can be obtained as and, is the value of the gravity received by the operator at the end in the end coordinate system where the six-dimensional force sensor is located, is the static error of the six-dimensional force sensor. Because, and It is only the representation of the gravity of the center of mass of the manipulator at the end in different coordinate systems. Therefore, the conversion relationship between the two can be obtained according to the configuration and coordinate conversion of the manipulator.
  • r c [r cx ,r cy , r cz ] is the center of mass coordinates of the operator at the end
  • S is the antisymmetric matrix for calculating the rc vector
  • S is the rotation transformation matrix from the base coordinate system to the six-dimensional force sensor. That is, the adjacent transformation matrices from the base of the manipulator to the six-dimensional force sensor are multiplied in turn.
  • the parameters that need to be identified There are 10 in total, and It is a 6*10 matrix, and only the data of one point cannot obtain the required parameters. Therefore, the Y matrix is judged to find out the minimum number of robot information that needs to be collected. Assuming that the information of n points is required, the six-dimensional force information of n points and the identification matrix are combined as follows:
  • the method for controlling the robotic arm further includes the following steps:
  • S500 Feedback the static error of the sensor installed at the end of the robotic arm to the control end of the robotic arm.
  • An embodiment of the present application proposes a robotic arm control device 10 including an acquisition module 11 , a determination module 12 , a calculation module 13 and a control module 14 .
  • the acquisition module 11 is used to obtain n pieces of gravity matrix data of the manipulator at the end of the robotic arm by using the sensor at the end of the robotic arm, where the n pieces of gravity matrix data are the operations when the robotic arm is in n different poses n gravity matrix data of the robot in the end coordinate system, n ⁇ 3;
  • the determination module 12 is used to determine the base of the robot arm when the robot arm is in n different poses by using a preset rotation transformation matrix determination method n rotation transformation matrices from the coordinate system to the end coordinate system;
  • the calculation module 13 is used to calculate the center of mass coordinates and mass of the operator by using the n gravity matrix data and the n rotation transformation matrices;
  • the control module 14 used to feed back the coordinates of the center of mass and the mass to the control end of the robotic arm, so that the control end of the robotic arm controls the robotic arm according to the coordinates of the center of mass and the quality; also used for The static error of the sensor installed at the end of the robotic arm is fed back to the control
  • using the sensor at the end of the manipulator to obtain n pieces of gravity matrix data of the manipulator at the end of the manipulator in the end coordinate system when the manipulator is in n different poses includes: controlling the manipulator. Arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation; when the robotic arm maintains the jth pose, use the sensor at the end of the robotic arm to obtain the manipulator The jth gravity matrix data in the end coordinate system, j ⁇ n.
  • determining the n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses by using a preset rotation transformation matrix determination method includes: controlling The robotic arm arbitrarily transforms n times within the motion range, and maintains the current pose for a preset time after each transformation; when the robotic arm maintains the jth pose, j ⁇ n:
  • the joint angle of each link of the mechanical arm is obtained by using the encoder of each joint position of the mechanical arm; the phase between the coordinate systems of each adjacent link is determined by using the joint angle of each link and the preset twist of each link.
  • Adjacent transformation matrix use each adjacent transformation matrix to determine the jth rotation transformation matrix corresponding to the jth pose.
  • m represents the mass of the manipulator
  • rc represents the center of mass coordinates of the manipulator
  • fFTbias represents the static error of the force acquired by the sensor at the end of the robot arm
  • ⁇ FTbias represents the end of the robot arm
  • the static error of the moment obtained by the sensor Yj represents the parameter matrix corresponding to the jth pose
  • g represents the gravitational acceleration vector
  • fFTj represents the force vector corresponding to the gravity matrix data corresponding to the jth pose
  • ⁇ FTi represents the torque vector corresponding to the gravity matrix data corresponding to the jth pose.
  • control of the robotic arm to arbitrarily transform n times within the range of motion, and to maintain the current pose for a preset time after each transformation includes:
  • Control the end of the robotic arm to move to preset n end positions in sequence, and stay at each end position for a preset time, and the preset n end positions are within the motion range; or, use a random function Randomly select n end positions within the motion range, control the end of the robotic arm to move to n end positions in sequence, and stay at each end position for a preset time; or, keep the end position of the robotic arm Under the condition that it remains unchanged, each link that controls the mechanical arm is arbitrarily transformed n times within the motion range, and the current pose is maintained for a preset time after each transformation.
  • the value range of the preset time is 1s ⁇ 2s.
  • the robotic arm control device 10 disclosed in this embodiment is used in conjunction with the acquisition module 11 , the determination module 12 , the calculation module 13 and the control module 14 to execute the robotic arm control method described in the foregoing embodiments.
  • the implementation and beneficial effects are also applicable to this embodiment, and will not be repeated here.
  • Some embodiments of the present application provide a robotic arm 200 including a memory 210 and a processor 220 , the memory 210 stores a computer program, and the computer program runs on the processor 220 Execute the robotic arm control method described in this application.
  • the present application also provides a readable storage medium, which stores a computer program, and when the computer program runs on the processor, executes the robotic arm control method described in the present application.
  • each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more functions for implementing the specified logical function(s) executable instructions. It should also be noted that, in alternative implementations, the functions noted in the block may occur out of the order noted in the figures.
  • each block of the block diagrams and/or flow diagrams, and combinations of blocks in the block diagrams and/or flow diagrams can be implemented using dedicated hardware-based systems that perform the specified functions or actions. be implemented, or may be implemented in a combination of special purpose hardware and computer instructions.
  • each functional module or unit in each embodiment of the present application may be integrated together to form an independent part, or each module may exist independently, or two or more modules may be integrated to form an independent part.
  • the functions are implemented in the form of software function modules and sold or used as independent products, they may be stored in a readable storage medium.
  • the technical solution of the present application can be embodied in the form of a software product in essence, or the part that contributes to the prior art or the part of the technical solution.
  • the computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a smart phone, a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: U disk, mobile hard disk, Read-Only Memory (ROM, Read-Only Memory), Random Access Memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program codes .

Abstract

A robot arm control method. The method comprises: by using a sensor at the tail end of a robot arm (200), acquiring, in a tail end coordinate system, n pieces of gravity matrix data of a manipulator at the tail end of the robot arm (200) when same is at n different attitudes, wherein n ≥ 3; determining, by using a preset rotation transformation matrix determination method, n rotation transformation matrices of the robot arm (200) from a base coordinate system to the tail end coordinate system when the robot arm (200) is at the n different attitudes; and calculating the centroid coordinates and mass of the manipulator merely by acquiring the n pieces of corresponding gravity matrix data of the robot arm (200) when same is at the n different attitudes, and the n rotation transformation matrices of same. By means of the method, a power-on error of a force sensor is fully taken into consideration, and not only is the amount of calculation small, but online data processing can also be realized; and the centroid coordinates and mass of a manipulator are determined, without needing to modify model parameters after offline solving, thereby effectively increasing the speed of determining relevant parameters of a manipulator. Further provided are a robot arm control apparatus (10), a robot arm (200) and a readable storage medium.

Description

一种机械臂控制方法、装置、机械臂和可读存储介质A manipulator control method, device, manipulator and readable storage medium
相关申请的交叉引用CROSS-REFERENCE TO RELATED APPLICATIONS
本申请要求于2021年04月26日提交中国专利局的申请号为2021104548636、名称为“一种机械臂控制方法、装置、机械臂和可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese Patent Application No. 2021104548636 and titled "A Manipulator Control Method, Device, Manipulator and Readable Storage Medium" filed with the China Patent Office on April 26, 2021, all of which The contents are incorporated herein by reference.
技术领域technical field
本申请涉及机械臂应用技术领域,尤其涉及一种机械臂控制方法、装置、机械臂和可读存储介质。The present application relates to the technical field of robotic arm applications, and in particular, to a robotic arm control method, a device, a robotic arm, and a readable storage medium.
背景技术Background technique
随着机械臂在服务机器人领域的推广和普及,通常会用机械臂替代机器人手臂来执行不同的任务,而针对不同的任务,机械臂的末端会安装不同的操作器以抓取或夹持负载,比如抓取箱子时可用吸盘式操作器,抓取不规则物品时可采用多指抓手,写字时可安装相应的笔夹等。不同的质量属性的操作器将对机械臂的位置和力控制产生影响。With the promotion and popularization of robotic arms in the field of service robots, robotic arms are usually replaced by robotic arms to perform different tasks, and for different tasks, different manipulators are installed at the end of the robotic arm to grab or grip the load For example, a sucker-type manipulator can be used when grabbing boxes, a multi-finger gripper can be used when grabbing irregular items, and a corresponding pen clip can be installed when writing. Manipulators with different mass properties will affect the position and force control of the robotic arm.
现有技术中,可以通过操作器的CAD模型获取相关的质量和质心参数。但是,由于加工、装配、电器元件等与理论不同,导致实际质量参数与所述CAD模型不同,并且很多机械臂的末端安装的操作器是无法利用CAD模型获取其理论模型参数的。导致机械臂的控制端无法精准获取操作器的质量和质心,从而影响机械臂的控制端无法对机械臂进行精确的位置移动和力控制。In the prior art, the relevant mass and centroid parameters can be obtained through the CAD model of the manipulator. However, due to differences in processing, assembly, electrical components, etc. from the theory, the actual quality parameters are different from the CAD model, and many manipulators installed at the end of the manipulator cannot use the CAD model to obtain their theoretical model parameters. As a result, the control end of the manipulator cannot accurately obtain the mass and center of mass of the manipulator, so that the control end of the manipulator cannot perform precise position movement and force control of the manipulator.
申请内容Application content
鉴于上述问题,本申请提出一种机械臂控制方法、装置、机械臂和可读存储介质。In view of the above problems, the present application proposes a method, device, robot arm and readable storage medium for controlling a robotic arm.
本申请提出一种机械臂控制方法,所述方法包括:The present application proposes a method for controlling a robotic arm, the method comprising:
利用安装于机械臂末端的传感器获取所述安装于机械臂末端的操作器的n个重力矩阵数据,所述n个重力矩阵数据为所述机械臂处于n个不同位姿时所述操作器在末端坐标系下的n个重力矩阵数据,n≥3;The n gravity matrix data of the manipulator installed at the end of the manipulator is obtained by using the sensor installed at the end of the manipulator, and the n gravity matrix data is when the manipulator is in n different poses. n gravity matrix data in the end coordinate system, n≥3;
确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵;determining n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses;
利用所述n个重力矩阵数据和所述n个旋转变换矩阵计算所述操作器的质心坐标和质量;Use the n gravity matrix data and the n rotation transformation matrices to calculate the center of mass coordinates and mass of the operator;
将所述质心坐标、所述质量反馈至所述机械臂的控制端,以使所述机械臂的控制端根据所述质心坐标和所述质量控制所述机械臂。The center of mass coordinates and the mass are fed back to the control end of the robotic arm, so that the control end of the robotic arm controls the robotic arm according to the center of mass coordinates and the mass.
本申请所述的机械臂控制方法,所述利用安装于机械臂末端的传感器获取所述机械臂末端的操作器的n个重力矩阵数据,包括:In the robotic arm control method described in the present application, the acquisition of n gravity matrix data of the manipulator at the end of the robotic arm by using a sensor installed at the end of the robotic arm includes:
控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿;Control the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation;
在所述机械臂保持第j个位姿时,利用所述安装于机械臂末端的传感器获取所述操作器在所述末端坐标系下的第j个重力矩阵数据,j≤n。When the manipulator maintains the jth pose, the sensor installed at the end of the manipulator is used to obtain the jth gravity matrix data of the manipulator in the coordinate system of the end, where j≤n.
本申请所述的机械臂控制方法,所述利用预设的旋转变换矩阵确定方法确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵,包括:In the manipulator control method described in the present application, the preset rotation transformation matrix determination method is used to determine the number of n points from the base coordinate system of the manipulator to the end coordinate system when the manipulator is in n different poses Rotation transformation matrix, including:
控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿;Control the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation;
在所述机械臂保持第j个位姿时,j≤n:When the robotic arm maintains the jth pose, j≤n:
获取机械臂的各个连杆关节角;Obtain the joint angle of each link of the robotic arm;
利用所述各个连杆关节角和预设的各个连杆扭曲度确定各个相邻连杆坐标系之间的相邻变换矩阵;Determine the adjacent transformation matrix between the coordinate systems of each adjacent connecting rod by using the joint angle of each connecting rod and the preset twisting degree of each connecting rod;
利用各个相邻变换矩阵确定第j个位姿对应的第j个旋转变换矩阵。Use each adjacent transformation matrix to determine the jth rotation transformation matrix corresponding to the jth pose.
本申请所述的机械臂控制方法,利用以下公式确定所述操作器的质心坐标和质量:The manipulator control method described in this application uses the following formulas to determine the center of mass coordinates and mass of the manipulator:
Figure PCTCN2021133002-appb-000001
j=1、2或3,m表示所述操作器的质量,rc表示所述操作器的质心坐标,fFTbias表示所述安装于机械臂末端的传感器采集力的静态误差,τFTbias表示所述安装于机械臂末端的传感器采集力矩的静态误差,Yj表示第j个位姿对应的参数矩阵,
Figure PCTCN2021133002-appb-000002
表示第j个旋转变换矩阵对应的转置矩阵,g表示重力加速度向量,
Figure PCTCN2021133002-appb-000003
表示求
Figure PCTCN2021133002-appb-000004
的反对称矩阵,01×3表示1行3列的零矩阵,I3×3表示3行3列的单位矩阵,03×3表示3行3列的零矩阵,Wj表示第j个位姿对应的重力矩阵数据,fFTj表示第j个位姿对应的重力矩阵数据的力向 量,τFTi表示第j个位姿对应的重力矩阵数据的力矩向量。
Figure PCTCN2021133002-appb-000001
j=1, 2 or 3, m represents the mass of the manipulator, rc represents the center of mass coordinates of the manipulator, fFTbias represents the static error of the force collected by the sensor installed at the end of the manipulator, τFTbias represents the The static error of the torque collected by the sensor at the end of the robot arm, Yj represents the parameter matrix corresponding to the jth pose,
Figure PCTCN2021133002-appb-000002
represents the transpose matrix corresponding to the jth rotation transformation matrix, g represents the gravitational acceleration vector,
Figure PCTCN2021133002-appb-000003
express request
Figure PCTCN2021133002-appb-000004
the antisymmetric matrix of Gravity matrix data, fFTj represents the force vector of the gravity matrix data corresponding to the jth pose, and τFTi represents the moment vector of the gravity matrix data corresponding to the jth pose.
本申请所述的机械臂控制方法,所述控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿,包括:In the method for controlling the robotic arm described in the present application, the control of the robotic arm to arbitrarily transform n times within the motion range, and to maintain the current pose for a preset time after each transformation, includes:
控制所述机械臂的末端依次移动至预设的n个末端位置,并在每一末端位置停留预设时间,所述预设的n个末端位置在所述运动范围内;Controlling the end of the robotic arm to move to preset n end positions in sequence, and staying at each end position for a preset time, and the preset n end positions are within the motion range;
或,利用随机函数在所述运动范围内随机选择n个末端位置,控制所述机械臂的末端依次移动至n个末端位置,并在每一末端位置停留预设时间;Or, use a random function to randomly select n end positions within the motion range, control the end of the robotic arm to move to the n end positions in sequence, and stay at each end position for a preset time;
或,在保持所述机械臂的末端位置不变的情况下,控制所述机械臂的各个连杆在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿。Or, under the condition that the end position of the robotic arm is kept unchanged, each link of the robotic arm is controlled to be arbitrarily transformed n times within the motion range, and the current pose is maintained for a preset time after each transformation.
本申请所述的机械臂控制方法,所述预设时间的取值范围为1s~2s。In the robotic arm control method described in the present application, the value range of the preset time is 1s to 2s.
本申请所述的机械臂控制方法,还包括:将所述安装于机械臂末端的传感器静态误差反馈至所述机械臂的控制端。The robotic arm control method described in the present application further includes: feeding back the static error of the sensor installed at the end of the robotic arm to the control end of the robotic arm.
本申请提出一种机械臂控制装置,所述装置包括:The present application proposes a robotic arm control device, the device comprising:
获取模块,用于利用安装于机械臂末端的传感器获取所述安装于机械臂末端的操作器的n个重力矩阵数据,所述n个重力矩阵数据为所述机械臂处于n个不同位姿时所述操作器在末端坐标系下的n个重力矩阵数据,n≥3;The acquisition module is used to obtain n pieces of gravity matrix data of the manipulator installed at the end of the robot arm by using the sensor installed at the end of the robot arm, where the n pieces of gravity matrix data are when the robot arm is in n different poses n gravity matrix data of the operator in the end coordinate system, n≥3;
确定模块,用于利用预设的旋转变换矩阵确定方法确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵;A determination module, configured to use a preset rotation transformation matrix determination method to determine n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses;
计算模块,用于利用所述n个重力矩阵数据和所述n个旋转变换矩阵计算所述操作器的质心坐标和质量;a calculation module for calculating the coordinates of the center of mass and the mass of the operator by using the n gravity matrix data and the n rotation transformation matrices;
控制模块,用于将所述质心坐标、所述质量反馈至所述机械臂的控制端,以使所述机械臂的控制端根据所述质心坐标和所述质量控制所述机械臂。The control module is configured to feed back the coordinates of the center of mass and the mass to the control end of the manipulator, so that the control end of the manipulator controls the manipulator according to the coordinates of the center of mass and the mass.
本申请提出一种机械臂,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行本申请所述的机械臂控制方法。The present application proposes a robotic arm, including a memory and a processor, wherein the memory stores a computer program, and the computer program executes the robotic arm control method described in the present application when the computer program runs on the processor.
本申请提出一种可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行本申请所述的机械臂控制方法。The present application provides a readable storage medium, which stores a computer program, and when the computer program runs on a processor, executes the robotic arm control method described in the present application.
本申请的技术方案利用机械臂末端的传感器获取所述机械臂处于n个不同位姿时所述机械臂末端的操作器在末端坐标系下的n个重力矩阵数据,n≥3;确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵;只需 要利用机械臂在n个不同位姿时对应的n个重力矩阵数据和n个旋转变换矩阵,即可计算所述操作器的质心坐标和质量。本申请公开的计算所述操作器的质心坐标和质量的技术方案不仅计算量小,而且可以实现在线进行数据处理,确定操作器的质心坐标和质量,无需离线求解后再修改模型参数,进而有效提高确定操作器相关参数的速度;并且,本申请公开的机械臂控制方法还将所述质心坐标、所述质量反馈至所述机械臂的控制端,以使所述机械臂的控制端根据所述质心坐标和所述质量控制所述机械臂,使得机械臂的控制端可以对机械臂进行准确的力控制,从而控制机械臂进行精确的位置移动。The technical solution of the present application uses the sensor at the end of the manipulator to obtain n gravity matrix data of the manipulator at the end of the manipulator in the end coordinate system when the manipulator is in n different poses, n≥3; determine the When the manipulator is in n different poses, the n rotation transformation matrices from the base coordinate system of the manipulator to the end coordinate system; it is only necessary to use the n gravity matrix data corresponding to the manipulator in n different poses and With n rotation transformation matrices, the center of mass coordinates and mass of the operator can be calculated. The technical solution for calculating the coordinates of the center of mass and the mass of the manipulator disclosed in the present application not only requires a small amount of calculation, but also can realize online data processing to determine the coordinates and mass of the center of mass of the manipulator, without the need to solve the offline solution and then modify the model parameters, thereby effectively The speed of determining the relevant parameters of the manipulator is improved; and, the control method of the manipulator disclosed in the present application also feeds back the coordinates of the center of mass and the mass to the control end of the manipulator, so that the control end of the manipulator can be The coordinates of the center of mass and the quality control the robotic arm, so that the control end of the robotic arm can perform accurate force control on the robotic arm, thereby controlling the robotic arm to move precisely.
附图说明Description of drawings
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对本申请保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。In order to illustrate the technical solutions of the present application more clearly, the following briefly introduces the accompanying drawings used in the embodiments. It should be understood that the following drawings only show some embodiments of the present application, and therefore should not be It is regarded as a limitation on the protection scope of this application. In the various figures, similar components are numbered similarly.
图1示出了本申请实施例提出的一种机械臂控制方法的流程示意图;FIG. 1 shows a schematic flowchart of a method for controlling a robotic arm proposed by an embodiment of the present application;
图2示出了本申请实施例提出的一种确定n个重力矩阵数据方法的流程示意图;2 shows a schematic flowchart of a method for determining n gravity matrix data proposed by an embodiment of the present application;
图3示出了本申请实施例提出的一种确定旋转变换矩阵方法的流程示意图;3 shows a schematic flowchart of a method for determining a rotation transformation matrix proposed by an embodiment of the present application;
图4示出了本申请实施例提出的一种机械臂相关参数的示意图;FIG. 4 shows a schematic diagram of related parameters of a robotic arm proposed by an embodiment of the present application;
图5示出了本申请实施例提出的另一种机械臂控制方法的流程示意图;FIG. 5 shows a schematic flowchart of another method for controlling a robotic arm proposed by an embodiment of the present application;
图6示出了本申请实施例提出的一种机械臂控制装置的结构示意图;FIG. 6 shows a schematic structural diagram of a robotic arm control device proposed in an embodiment of the present application;
图7示出了本申请实施例提出的一种机械臂的结构示意图。FIG. 7 shows a schematic structural diagram of a robotic arm proposed in an embodiment of the present application.
主要元件符号说明:Description of main component symbols:
10-机械臂控制装置;11-获取模块;12-确定模块;13-计算模块;14-控制模块;200-机械臂;210-存储器;220-处理器。10-manipulator control device; 11-acquisition module; 12-determination module; 13-calculation module; 14-control module; 200-manipulator; 210-memory; 220-processor.
具体实施方式Detailed ways
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments.
通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。The components of the embodiments of the present application generally described and illustrated in the drawings herein may be arranged and designed in a variety of different configurations. Thus, the following detailed description of the embodiments of the application provided in the accompanying drawings is not intended to limit the scope of the application as claimed, but is merely representative of selected embodiments of the application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without creative work fall within the protection scope of the present application.
在下文中,可在本申请的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。Hereinafter, the terms "comprising", "having" and their cognates, which may be used in various embodiments of the present application, are only intended to denote particular features, numbers, steps, operations, elements, components, or combinations of the foregoing, and should not be construed as first excluding the presence of or adding one or more other features, numbers, steps, operations, elements, components or combinations of the foregoing or the possibility of a combination of the foregoing.
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。Furthermore, the terms "first", "second", "third", etc. are only used to differentiate the description and should not be construed as indicating or implying relative importance.
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本申请的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本申请的各种实施例中被清楚地限定。Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the various embodiments of this application belong. The terms (such as those defined in commonly used dictionaries) will be interpreted as having the same meaning as the contextual meaning in the relevant technical field and will not be interpreted as having an idealized or overly formal meaning, unless explicitly defined in the various embodiments of the present application.
考虑到当机械臂运动时,安装于机械臂末端的操作器的位置和姿态会发生改变,在不考虑外力对操作器的存在干扰的前提下,末端的操作器仅受重力影响,由于重力场的方向是不会变的,因此,重力大小在机械臂的基坐标系中是不变,但是,操作器的重力相对于机械臂末端的末端坐标系的值会随着机械臂运动发生变化,因此,可以根据上述特性对操作器的质量属性进行自动辨识。Considering that when the manipulator moves, the position and posture of the manipulator installed at the end of the manipulator will change. Without considering the interference of external forces on the manipulator, the manipulator at the end is only affected by gravity, due to the gravitational field. The direction of the manipulator does not change, so the gravity is unchanged in the base coordinate system of the manipulator. However, the value of the manipulator's gravity relative to the coordinate system of the end of the manipulator will change with the movement of the manipulator. Therefore, the quality attributes of the manipulator can be automatically identified according to the above characteristics.
进一步的,本申请的技术方案可用在任意构型的机械臂上,在机械臂的末端安装新的操作器后,利用本申请公开的操作器参数自动辨识方法,对机械臂进行上电初始化,只需要采集三个随机位姿对应的相关信息,即可计算操作器的质心坐标和质量。不仅计算量小,而且可以实现在线数据处理,无需离线求解再修改模型参数,实时更新操作器的相关参数信息。并且,本申请公开的操作器参数自动辨识方法在计算操作器的质心坐标和质量时,充分考虑了力传感器的上电误差,使得计算确定的操作器的质心坐标和质量更接近真实值。Further, the technical solution of the present application can be used on a manipulator of any configuration. After a new manipulator is installed at the end of the manipulator, the manipulator parameter automatic identification method disclosed in the present application is used to power on the manipulator and initialize the manipulator. Only need to collect the relevant information corresponding to three random poses to calculate the center of mass coordinates and mass of the manipulator. Not only the calculation amount is small, but also online data processing can be realized, without the need to solve offline and then modify the model parameters, and update the relevant parameter information of the operator in real time. In addition, the automatic identification method of manipulator parameters disclosed in the present application fully considers the power-on error of the force sensor when calculating the center of mass coordinates and mass of the manipulator, so that the center of mass coordinates and mass of the manipulator determined by calculation are closer to the real values.
实施例1Example 1
本申请的一个实施例,提出一种机械臂控制方法,如图1所示,机械臂控制方法包括以下步骤:An embodiment of the present application proposes a method for controlling a robotic arm. As shown in FIG. 1 , the method for controlling a robotic arm includes the following steps:
S100:利用安装于机械臂末端的传感器获取所述安装于机械臂末端的操作器的n个重力矩阵数据,所述n个重力矩阵数据为所述机械臂处于n个不同位姿时所述操作器在 末端坐标系下的n个重力矩阵数据,n≥3。S100: Acquire n pieces of gravity matrix data of the manipulator installed at the end of the robotic arm by using a sensor installed at the end of the robotic arm, where the n pieces of gravity matrix data are the operations when the robotic arm is in n different poses n gravity matrix data of the device in the end coordinate system, n≥3.
由于机械臂和工作面的接触常常是未知的复杂曲面,因而,在确定机械臂末端的操作器在末端坐标系下的操作器重力时,需要使用六维力传感器获取机械臂处于n个不同位姿时机械臂末端的操作器在末端坐标系下的n个重力矩阵数据。六维力传感器(6-Dimension Force Torque Sensor)是一种力传感器,能同时测量多维力/力矩,并将多维力/力矩信号转换为电信号,可用于监测方向和大小不断变化的力与力矩,可以测量加速度或惯性力以及检测接触力的大小和作用点。可以理解的,六维力传感器可以测量空间X、Y、Z三个方向上的力和扭矩。Since the contact between the manipulator and the working surface is often an unknown complex surface, when determining the manipulator gravity of the manipulator at the end of the manipulator in the end coordinate system, it is necessary to use a six-dimensional force sensor to obtain n different positions of the manipulator. The n gravity matrix data of the manipulator at the end of the manipulator in the end coordinate system during the pose. The 6-Dimension Force Torque Sensor is a force sensor that can measure multi-dimensional force/torque at the same time, and convert the multi-dimensional force/torque signal into an electrical signal, which can be used to monitor forces and torques with changing directions and magnitudes. , you can measure acceleration or inertial force and detect the magnitude and point of contact force. It can be understood that the six-dimensional force sensor can measure the force and torque in the three directions of space X, Y, and Z.
进一步的,参见图2,确定n个重力矩阵数据的方法包括以下步骤:Further, referring to Fig. 2, the method for determining n gravity matrix data includes the following steps:
S110:控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿。S110: Control the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation.
可以理解,控制所述机械臂在运动范围内任意变换n次的方法包括以下三种方法:It can be understood that the methods for controlling the robotic arm to arbitrarily transform n times within the motion range include the following three methods:
第一种,可以预先在机械臂的运动范围内设置n个末端位置,然后控制所述机械臂的末端依次移动至预设的n个末端位置,并在每一末端位置停留预设时间。First, n end positions can be preset within the motion range of the manipulator, and then the end of the manipulator is controlled to move to the preset n end positions in sequence, and stay at each end position for a preset time.
第二种,可以利用随机函数在机械臂的运动范围内随机选择n个末端位置,然后控制所述机械臂的末端依次移动至n个随机选择的末端位置,并在每一末端位置停留预设时间。Second, a random function can be used to randomly select n end positions within the motion range of the manipulator, and then control the end of the manipulator to move to n randomly selected end positions in sequence, and stay at each end position for a preset time.
第三种,可以在保持所述机械臂的末端位置不变的情况下,控制所述机械臂的各个连杆在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿。Thirdly, while keeping the end position of the robotic arm unchanged, each link of the robotic arm can be controlled to be arbitrarily transformed n times within the range of motion, and after each transformation, the current pose.
可选的,当前位姿保持的预设时间的取值范围可以为1s~2s,设置的预设时间的原则是:应当保证安装于机械臂末端的传感器可以在预设时间内获取到稳定的重力矩阵数据。优选的,预设时间可以是1s,即可以保证安装于机械臂末端的传感器可以在预设时间内获取到稳定的重力矩阵数据,又可以避免整个参数自动辨识过程花费较长时间。Optionally, the value range of the preset time for maintaining the current pose can be 1s to 2s, and the principle of setting the preset time is: it should be ensured that the sensor installed at the end of the robot arm can obtain a stable sensor within the preset time. Gravity Matrix Data. Preferably, the preset time can be 1s, which can ensure that the sensor installed at the end of the robotic arm can obtain stable gravity matrix data within the preset time, and can avoid the entire automatic parameter identification process taking a long time.
S120:在所述机械臂保持第j个位姿时,利用所述安装于机械臂末端的传感器获取所述操作器在所述末端坐标系下的第j个重力矩阵数据,j≤n。S120: When the manipulator maintains the jth pose, use the sensor installed at the end of the manipulator to acquire the jth gravity matrix data of the manipulator in the coordinate system of the end, where j≤n.
在机械臂保持每一个位姿时,利用所述机械臂末端安装的六维力传感器获取操作器在末端坐标系下的对应重力矩阵数据。When the robotic arm maintains each pose, the six-dimensional force sensor installed at the end of the robotic arm is used to obtain the corresponding gravity matrix data of the manipulator in the end coordinate system.
可以理解的,在不考虑外力对操作器的存在干扰的前提下,末端的操作器仅受重力影响,由于重力场的方向是不会变的,因此,重力大小在机械臂的基坐标系中是不 变,但是,重力相对于机械臂的末端坐标系的值会随着机械臂运动发生变化,因此,可以利用获得的多个重力矩阵数据对操作器的质量属性进行辨识。It is understandable that without considering the interference of external forces on the manipulator, the manipulator at the end is only affected by gravity. Since the direction of the gravity field will not change, the magnitude of gravity is in the base coordinate system of the robotic arm. However, the value of gravity relative to the coordinate system of the end of the manipulator will change with the movement of the manipulator. Therefore, the mass properties of the manipulator can be identified by using the obtained multiple gravity matrix data.
S200:确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵。S200: Determine n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses.
可以利用旋转变换矩阵确定方法确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵,旋转变换矩阵确定方法包括标准的DH(Denavit-Hartenberg)法、改进的DH法和S-U(Sheth and Uicker)法中的至少一种。示范性的,可以利用DH法对机器人进行建模,在机械臂处于不同位姿时,获取不同位姿下机械臂的每个连杆的连杆关节角,然后,通过机械臂的各个连杆的连杆关节角以及预设的各个连杆扭曲度、各个连杆偏置可以确定旋转变换矩阵。其中,各个连杆扭曲度和各个连杆偏置与机械臂的构型有关,在机械臂的构型一定时,确定机械臂构型对应的各个连杆扭曲度和各个连杆偏置,将各个连杆扭曲度和各个连杆偏置作为预设值。A rotation transformation matrix determination method can be used to determine n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses, and the rotation transformation matrix determination method includes the standard DH ( At least one of Denavit-Hartenberg) method, modified DH method and S-U (Sheth and Uicker) method. Exemplarily, the DH method can be used to model the robot, and when the manipulator is in different poses, the link joint angles of each link of the manipulator in different poses are obtained, and then, through each link of the manipulator. The joint angle of the link, the preset twist of each link, and the offset of each link can determine the rotation transformation matrix. Among them, the twist degree of each link and the offset of each link are related to the configuration of the manipulator. When the configuration of the manipulator is constant, determine the twist degree of each link and the offset of each link corresponding to the configuration of the manipulator, and set the The twist of each link and the offset of each link are used as preset values.
示范性的,参见图3,n个旋转变换矩阵利用以下步骤确定:Exemplarily, referring to FIG. 3, the n rotation transformation matrices are determined using the following steps:
S210:控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿。S210: Control the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation.
可以理解的,控制所述机械臂在运动范围内任意变换n次的方法包括:可以预先在机械臂的运动范围内设置n个末端位置,然后控制所述机械臂的末端依次移动至预设的n个末端位置,并在每一末端位置停留预设时间;可以利用随机函数在机械臂的运动范围内随机选择n个末端位置,然后控制所述机械臂的末端依次移动至n个随机选择的末端位置,并在每一末端位置停留预设时间;还可以在保持所述机械臂的末端位置不变的情况下,控制所述机械臂的各个连杆在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿。It can be understood that the method for controlling the robotic arm to arbitrarily transform n times within the range of motion includes: setting n end positions within the range of motion of the robotic arm in advance, and then controlling the end of the robotic arm to move to a preset position in sequence. n end positions, and stay at each end position for a preset time; a random function can be used to randomly select n end positions within the motion range of the manipulator, and then control the end of the manipulator to move to n randomly selected end position, and stay at each end position for a preset time; it is also possible to control each link of the robotic arm to arbitrarily change n times within the range of motion while keeping the end position of the robotic arm unchanged, and The current pose is maintained for a preset time after each transformation.
可选的,当前位姿保持的预设时间的取值范围可以为1s~2s,设置的预设时间的原则是:应当保证利用预设的旋转变换矩阵确定方法可以在预设时间内确定对应的旋转变换矩阵。优选的,预设时间可以是1s,即可以保证预设的旋转变换矩阵确定方法可以在预设时间内确定对应的旋转变换矩阵,又可以避免整个参数自动辨识过程花费较长时间。Optionally, the value range of the preset time for maintaining the current pose may be 1s to 2s, and the principle of setting the preset time is: it should be ensured that the preset rotation transformation matrix determination method can be used to determine the corresponding value within the preset time. The rotation transformation matrix of . Preferably, the preset time may be 1 s, that is, it can be ensured that the preset rotation transformation matrix determination method can determine the corresponding rotation transformation matrix within the preset time, and the entire automatic parameter identification process can be prevented from taking a long time.
进一步的,在机械臂保持第j个位姿时,j≤n,执行以下步骤S220~S240,直至j=n时确定了第n个旋转变换矩阵为止。Further, when the robotic arm maintains the jth pose, j≤n, the following steps S220 to S240 are performed until the nth rotation transformation matrix is determined when j=n.
S220:获取机械臂的各个连杆关节角。S220: Obtain the joint angles of each link of the robotic arm.
可以利用机械臂各个关节对应位置的角位移传感器或位置编码器等采集对应关节的连杆关节角。The angular displacement sensor or position encoder at the corresponding position of each joint of the manipulator can be used to collect the link angle of the corresponding joint.
S230:利用所述各个连杆关节角和预设的各个连杆扭曲度确定各个相邻连杆坐标系之间的相邻变换矩阵。S230: Determine the adjacent transformation matrix between the coordinate systems of each adjacent link by using the joint angle of each link and the preset twist degree of each link.
S240:利用各个相邻变换矩阵确定第j个位姿对应的第j个旋转变换矩阵。S240: Use each adjacent transformation matrix to determine the jth rotation transformation matrix corresponding to the jth pose.
可以理解的,采用DH法对机器人进行建模,在机械臂处于不同位姿时,通过机械臂各个关节的位置编码器或角位移传感器可以获取机械臂的第i个连杆的连杆关节角q i,利用第i个连杆的连杆关节角q i和预设的第i个连杆的连杆扭曲度α i、第i个连杆的连杆偏置d i可以计算相邻两个坐标系的齐次变换矩阵
Figure PCTCN2021133002-appb-000005
为:
It can be understood that the DH method is used to model the robot. When the manipulator is in different poses, the link angle of the i-th link of the manipulator can be obtained through the position encoder or angular displacement sensor of each joint of the manipulator. q i , using the link joint angle q i of the ith link, the preset link twist α i of the ith link, and the link offset d i of the ith link, the adjacent two links can be calculated. Homogeneous transformation matrix of a coordinate system
Figure PCTCN2021133002-appb-000005
for:
Figure PCTCN2021133002-appb-000006
Figure PCTCN2021133002-appb-000006
示范性的,如图4所示,一种机械臂包括多个连杆和多个连杆关节,“link i-1”表示第i-1个连杆,“link i”表示第i个连杆,“Joint 1”表示第1个连杆关节,“Joint i-1”表示第i-1个连杆关节,“Joint i”表示第i个连杆关节,“Joint i+1”表示第i+1个连杆关节,q i表示第i个连杆的连杆关节角,α i表示预设的第i个连杆的连杆扭曲度,d i表示第i个连杆的连杆偏置。 Exemplarily, as shown in Figure 4, a robotic arm includes multiple links and multiple link joints, "link i-1" represents the i-1th link, and "link i" represents the ith link. Rod, "Joint 1" represents the 1st link joint, "Joint i-1" represents the i-1th link joint, "Joint i" represents the ith link joint, and "Joint i+1" represents the ith link joint i+1 link joints, qi represents the link angle of the ith link, α i represents the preset link twist of the ith link, d i represents the link of the ith link Bias.
进一步的,齐次变换矩阵
Figure PCTCN2021133002-appb-000007
的前三行可以表示相邻变换矩阵
Figure PCTCN2021133002-appb-000008
Further, the homogeneous transformation matrix
Figure PCTCN2021133002-appb-000007
The first three rows of can represent the adjacent transformation matrix
Figure PCTCN2021133002-appb-000008
Figure PCTCN2021133002-appb-000009
Figure PCTCN2021133002-appb-000009
其中,相邻变换矩阵
Figure PCTCN2021133002-appb-000010
可以表示第i个连杆对应的坐标系与第i-1个连杆对应的坐标系之间的i个连杆对应的坐标系。
Among them, the adjacent transformation matrix
Figure PCTCN2021133002-appb-000010
The coordinate system corresponding to the i link between the coordinate system corresponding to the i-th link and the coordinate system corresponding to the i-1-th link can be represented.
在确定每两个相邻连杆之间的相邻变换矩阵后,根据
Figure PCTCN2021133002-appb-000011
可以确定第j个位姿对应的机械臂的基坐标系到末端坐标系的旋转变换矩阵Rj。其中,L为连杆的总数。
After determining the adjacent transformation matrix between every two adjacent links, according to
Figure PCTCN2021133002-appb-000011
The rotation transformation matrix Rj from the base coordinate system to the end coordinate system of the manipulator corresponding to the jth pose can be determined. Among them, L is the total number of connecting rods.
S300:利用所述n个重力矩阵数据和所述n个旋转变换矩阵计算所述操作器的质心坐标和质量。S300: Calculate the coordinates of the center of mass and the mass of the operator by using the n pieces of gravity matrix data and the n pieces of rotation transformation matrices.
可以利用所述n个重力矩阵数据和所述n个旋转变换矩阵计算所述操作器的质心坐标和质量。The center of mass coordinates and mass of the operator may be calculated using the n gravity matrix data and the n rotation transformation matrices.
S400:将所述质心坐标、所述质量反馈至所述机械臂的控制端,以使所述机械臂的控制端根据所述质心坐标和所述质量控制所述机械臂。S400: Feed back the coordinates of the centroid and the mass to the control end of the robotic arm, so that the control end of the robotic arm controls the robotic arm according to the coordinates of the centroid and the mass.
将所述质心坐标、所述质量反馈至所述机械臂的控制端,以使所述机械臂的控制端根据所述质心坐标和所述质量控制所述机械臂,使得机械臂的控制端可以对机械臂进行准确的力控制,从而控制机械臂进行精确的位置移动。Feedback the coordinates of the center of mass and the mass to the control end of the robotic arm, so that the control end of the robotic arm controls the robotic arm according to the coordinates of the center of mass and the mass, so that the control end of the robotic arm can Accurate force control of the robotic arm, so as to control the precise position movement of the robotic arm.
可以理解,上述步骤S100和步骤S200可以同时执行,也可依次执行,在依次执行时,步骤S100和步骤S200之间无先后顺序,但是,在依次执行时应该保证第j个旋转变换矩阵和第j个重力矩阵数据对应第j个位姿相同。优选的,同时执行步骤S100和步骤S200,在第j个位姿,同时确定第j个旋转变换矩阵和第j个重力矩阵数据,同时执行步骤S100和步骤S200可以加快操作器的质心坐标和质量的识别速度。It can be understood that the above steps S100 and S200 can be executed simultaneously or sequentially. When executed sequentially, there is no sequence between steps S100 and S200. However, when executed sequentially, the jth rotation transformation matrix and the jth rotation transformation matrix should be guaranteed. The j gravity matrix data corresponds to the jth pose that is the same. Preferably, step S100 and step S200 are performed at the same time, and at the jth pose, the jth rotation transformation matrix and the jth gravity matrix data are determined simultaneously, and the simultaneous execution of steps S100 and S200 can speed up the center of mass coordinates and mass of the manipulator recognition speed.
本实施例的技术方案利用机械臂末端的传感器获取所述机械臂处于n个不同位姿时所述机械臂末端的操作器在末端坐标系下的n个重力矩阵数据,n≥3;利用预设的旋转变换矩阵确定方法确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵;只需要获取机械臂在n个不同位姿时对应的n个重力矩阵数据和n个旋转变换矩阵,即可计算所述操作器的质心坐标和质量。本申请公开的计算所述操作器的质心坐标和质量的技术方案不仅计算量小,而且可以实现在线进行数据处理,确定操作器的质心坐标和质量,无需离线求解后再修改模型参数,进而有效提高确定操作器相关参数的速度;并且,本申请公开的将所述质心坐标、所述质量反馈至所述机械臂的控制端的技术方案,可以使所述机械臂的控制端可以根据所述质心坐标和所述质量控制所述机械臂,使得机械臂的控制端可以对机械臂进行准确的力控制,从而控制机械臂进行精确的位置移动。The technical solution of this embodiment uses the sensor at the end of the manipulator to obtain n gravity matrix data of the manipulator at the end of the manipulator in the end coordinate system when the manipulator is in n different poses, n≥3; The set rotation transformation matrix determination method determines n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses; it is only necessary to obtain the n different positions of the robotic arm. According to the n gravity matrix data and n rotation transformation matrices corresponding to the posture, the center of mass coordinates and mass of the manipulator can be calculated. The technical solution for calculating the coordinates of the center of mass and the mass of the manipulator disclosed in the present application not only requires a small amount of calculation, but also can realize online data processing to determine the coordinates and mass of the center of mass of the manipulator, without the need to solve the offline solution and then modify the model parameters, thereby effectively The speed of determining the relevant parameters of the manipulator is improved; and the technical solution of feeding back the coordinates of the center of mass and the mass to the control end of the manipulator disclosed in the present application enables the control end of the manipulator to The coordinates and the quality control the robotic arm, so that the control end of the robotic arm can perform accurate force control on the robotic arm, so as to control the robotic arm to perform precise position movement.
实施例2Example 2
进一步的,利用以下公式确定所述操作器的质心坐标和质量:Further, the following formulas are used to determine the coordinates of the center of mass and the mass of the manipulator:
Figure PCTCN2021133002-appb-000012
Figure PCTCN2021133002-appb-000012
其中,
Figure PCTCN2021133002-appb-000013
j=1、2或3,m表示所述操作器的质量,rc表示所述操作器的质心坐标,fFTbias表示所述机械臂末端的传感器采集力的静态误差,τFTbias表示所述机械臂末端的传感器采集力矩的静态误差,Yj表示第j个位姿对应的参数矩阵,
Figure PCTCN2021133002-appb-000014
表示第j个旋转变换矩阵对应的转置矩阵,g表示重力加速度向量,
Figure PCTCN2021133002-appb-000015
表示求
Figure PCTCN2021133002-appb-000016
的反对称矩阵,01×3表示1行3列的零矩阵,I3×3表示3行3列的单位矩阵,03×3表示3行3列的零矩阵,Wj表示第j个位姿对应的重力矩阵数据,fFTj表示第j个位姿对应的重力矩阵数据的力向量,τFTi表示第j个位姿对应的重力矩阵数据的力矩向量。
in,
Figure PCTCN2021133002-appb-000013
j=1, 2, or 3, m represents the mass of the manipulator, rc represents the center of mass coordinates of the manipulator, fFTbias represents the static error of the force collected by the sensor at the end of the manipulator, τFTbias represents the force of the manipulator at the end of the manipulator The static error of the sensor acquisition moment, Yj represents the parameter matrix corresponding to the jth pose,
Figure PCTCN2021133002-appb-000014
represents the transpose matrix corresponding to the jth rotation transformation matrix, g represents the gravitational acceleration vector,
Figure PCTCN2021133002-appb-000015
express request
Figure PCTCN2021133002-appb-000016
the antisymmetric matrix of Gravity matrix data, fFTj represents the force vector of the gravity matrix data corresponding to the jth pose, and τFTi represents the moment vector of the gravity matrix data corresponding to the jth pose.
应当理解,六维力传感器,在每次上电使用时,六维力传感器获取的采集值都存在静态误差,并且,静态误差每次都不一样。一般,在使用前需要先将六维力传感器静置一段时间后,测量出六维力传感器的静态误差后再用于测量力。但是每次都需要将六维力传感器和末端的操作器都拆下来,测量完静态误差后再使用,非常的耗时且不方便。若不将六维力和末端的操作器卸下来测量,静态误差将受末端的操作器影响,导致六维力测量结果误差较大。因此,本申请公开的用于确定操作器的质心坐标和质量的公式中考虑到六维力传感器每次上电后的静态误差的影响,用fFTbias表示所述机械臂末端的传感器获取的力的静态误差,τFTbias表示所述机械臂末端的传感器获取的力矩的静态误差。It should be understood that, every time the six-dimensional force sensor is powered on and used, the collected values obtained by the six-dimensional force sensor have static errors, and the static errors are different each time. Generally, the six-dimensional force sensor needs to stand for a period of time before use, and then the static error of the six-dimensional force sensor is measured and then used to measure the force. However, the six-dimensional force sensor and the manipulator at the end need to be removed every time, and the static error is measured before use, which is very time-consuming and inconvenient. If the six-dimensional force and the manipulator at the end are not removed for measurement, the static error will be affected by the manipulator at the end, resulting in a large error in the six-dimensional force measurement result. Therefore, in the formula for determining the center of mass coordinates and mass of the manipulator disclosed in this application, considering the influence of the static error of the six-dimensional force sensor after each power-on, fFTbias is used to represent the force obtained by the sensor at the end of the robotic arm. The static error, τFTbias, represents the static error of the torque acquired by the sensor at the end of the robot arm.
进一步的,假设Σ base为机械臂的基坐标系,Σ FT为安装在机械臂末端六维力传感器的末端坐标系,Σ load为位于末端操作器质心处的坐标系。在任意时刻,末端操作器质心受到的重力在基坐标系中的大小不变,可以表示为
Figure PCTCN2021133002-appb-000017
其中m为末端的操作器的质量,g∈R 3为重力加速度。
Further, it is assumed that Σ base is the base coordinate system of the manipulator, Σ FT is the end coordinate system of the six-dimensional force sensor installed at the end of the manipulator, and Σ load is the coordinate system located at the center of mass of the end manipulator. At any time, the magnitude of the gravitational force on the center of mass of the end manipulator remains unchanged in the base coordinate system, which can be expressed as
Figure PCTCN2021133002-appb-000017
where m is the mass of the manipulator at the end, and g∈R3 is the acceleration of gravity.
进一步的,安装在机械臂末端的六维力传感器采集到的操作器的重力将受机械臂的 运动影响,且采集值中还包含了六维力传感器上电后的静态误差。因此,可以得到六维力传感器采集的重力矩阵数据为
Figure PCTCN2021133002-appb-000018
并且,
Figure PCTCN2021133002-appb-000019
为末端的操作器受到的重力在六维力传感器所在的末端坐标系中的值,
Figure PCTCN2021133002-appb-000020
为六维力传感器的静态误差。由于,
Figure PCTCN2021133002-appb-000021
Figure PCTCN2021133002-appb-000022
只是末端的操作器质心受到的重力在不同坐标系下的表示,因此,可以根据机械臂的构型和坐标转换得到二者之间的转换关系。r c=[r cx,r cy,r cz]为末端的操作器质心坐标,S为计算r c向量的反对称矩阵,
Figure PCTCN2021133002-appb-000023
为基坐标系到六维力传感器的旋转变换矩阵。
Figure PCTCN2021133002-appb-000024
即为从机械臂的基座到六维力传感器的中相邻变换矩阵依次相乘。
Further, the gravity of the manipulator collected by the six-dimensional force sensor installed at the end of the manipulator will be affected by the motion of the manipulator, and the collected value also includes the static error after the six-dimensional force sensor is powered on. Therefore, the gravity matrix data collected by the six-dimensional force sensor can be obtained as
Figure PCTCN2021133002-appb-000018
and,
Figure PCTCN2021133002-appb-000019
is the value of the gravity received by the operator at the end in the end coordinate system where the six-dimensional force sensor is located,
Figure PCTCN2021133002-appb-000020
is the static error of the six-dimensional force sensor. because,
Figure PCTCN2021133002-appb-000021
and
Figure PCTCN2021133002-appb-000022
It is only the representation of the gravity of the center of mass of the manipulator at the end in different coordinate systems. Therefore, the conversion relationship between the two can be obtained according to the configuration and coordinate conversion of the manipulator. r c =[r cx ,r cy , r cz ] is the center of mass coordinates of the operator at the end, S is the antisymmetric matrix for calculating the rc vector,
Figure PCTCN2021133002-appb-000023
is the rotation transformation matrix from the base coordinate system to the six-dimensional force sensor.
Figure PCTCN2021133002-appb-000024
That is, the adjacent transformation matrices from the base of the manipulator to the six-dimensional force sensor are multiplied in turn.
进一步的,将需要辨识的质量、质心坐标、传感器静态误差提出来,可以得到如下表达式:Further, the mass, center of mass coordinates, and static error of the sensor that need to be identified are proposed, and the following expression can be obtained:
Figure PCTCN2021133002-appb-000025
Figure PCTCN2021133002-appb-000025
Figure PCTCN2021133002-appb-000026
Figure PCTCN2021133002-appb-000026
其中,需要辨识的参数
Figure PCTCN2021133002-appb-000027
总共有10个,而
Figure PCTCN2021133002-appb-000028
为6*10的矩阵,仅一个点的数据无法求得所需参数,因此,对Y矩阵进行判断,以找出最少需要采集的机器人的信息数。假设需要n个点的信息,则n个点的六维力信息和辨识矩阵组合起来如下所示:
Among them, the parameters that need to be identified
Figure PCTCN2021133002-appb-000027
There are 10 in total, and
Figure PCTCN2021133002-appb-000028
It is a 6*10 matrix, and only the data of one point cannot obtain the required parameters. Therefore, the Y matrix is judged to find out the minimum number of robot information that needs to be collected. Assuming that the information of n points is required, the six-dimensional force information of n points and the identification matrix are combined as follows:
Figure PCTCN2021133002-appb-000029
Figure PCTCN2021133002-appb-000029
要想求解,则Y矩阵的行秩应该要大于辨识参数的个数,即rank(Y)≥10,通过分析可得,当n=1时,rank(Y)=5,当m=2时rank(Y)=9,当n≥3时,rank(Y)=10,因此,对于任意关节数目的机械臂,最少仅需要3个不同的机械臂位姿就可求解出末端的操作器的参数和六维力传感器静态误差,并且无需分步求解,只要采集三个位 姿对应的三个重力矩阵数据和三个旋转变换矩阵数据,即可求解出末端的操作器的质心坐标rc和质量m。To solve the problem, the row rank of the Y matrix should be greater than the number of identification parameters, that is, rank(Y)≥10. It can be obtained through analysis that when n=1, rank(Y)=5, and when m=2 rank(Y)=9, when n≥3, rank(Y)=10, therefore, for a manipulator with any number of joints, at least three different manipulator poses are needed to solve the manipulator at the end. parameters and the static error of the six-dimensional force sensor, and do not need to be solved step by step, as long as the three gravity matrix data and three rotation transformation matrix data corresponding to the three poses are collected, the center of mass coordinates rc and mass of the operator at the end can be solved m.
实施例3Example 3
进一步的,参见图5,机械臂控制方法还包括以下步骤:Further, referring to FIG. 5 , the method for controlling the robotic arm further includes the following steps:
S500:将所述安装于机械臂末端的传感器静态误差反馈至所述机械臂的控制端。S500: Feedback the static error of the sensor installed at the end of the robotic arm to the control end of the robotic arm.
将安装于机械臂末端的传感器静态误差反馈至所述机械臂的控制端,以使控制端可以根据操作器的质心坐标、质量以及所述机械臂末端的传感器静态误差对重力向和静态误差进行补偿,进而下发准确的控制指令,提高控制精度,提高机械臂的动态和稳态性能。Feedback the static error of the sensor installed at the end of the manipulator to the control end of the manipulator, so that the control end can perform the gravitational direction and the static error according to the coordinates of the center of mass of the manipulator, the mass and the static error of the sensor at the end of the manipulator. Compensate, and then issue accurate control commands, improve control accuracy, and improve the dynamic and steady-state performance of the robotic arm.
实施例4Example 4
本申请的一个实施例,如图6所示,提出一种机械臂控制装置10包括获取模块11、确定模块12、计算模块13和控制模块14。An embodiment of the present application, as shown in FIG. 6 , proposes a robotic arm control device 10 including an acquisition module 11 , a determination module 12 , a calculation module 13 and a control module 14 .
获取模块11,用于利用机械臂末端的传感器获取所述机械臂末端的操作器的n个重力矩阵数据,所述n个重力矩阵数据为所述机械臂处于n个不同位姿时所述操作器在末端坐标系下的n个重力矩阵数据,n≥3;确定模块12,用于利用预设的旋转变换矩阵确定方法确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵;计算模块13,用于利用所述n个重力矩阵数据和所述n个旋转变换矩阵计算所述操作器的质心坐标和质量;控制模块14,用于将所述质心坐标、所述质量反馈至所述机械臂的控制端,以使所述机械臂的控制端根据所述质心坐标和所述质量控制所述机械臂;还用于将所述安装于机械臂末端的传感器静态误差反馈至所述机械臂的控制端。The acquisition module 11 is used to obtain n pieces of gravity matrix data of the manipulator at the end of the robotic arm by using the sensor at the end of the robotic arm, where the n pieces of gravity matrix data are the operations when the robotic arm is in n different poses n gravity matrix data of the robot in the end coordinate system, n≥3; the determination module 12 is used to determine the base of the robot arm when the robot arm is in n different poses by using a preset rotation transformation matrix determination method n rotation transformation matrices from the coordinate system to the end coordinate system; the calculation module 13 is used to calculate the center of mass coordinates and mass of the operator by using the n gravity matrix data and the n rotation transformation matrices; the control module 14, used to feed back the coordinates of the center of mass and the mass to the control end of the robotic arm, so that the control end of the robotic arm controls the robotic arm according to the coordinates of the center of mass and the quality; also used for The static error of the sensor installed at the end of the robotic arm is fed back to the control end of the robotic arm.
进一步的,所述利用机械臂末端的传感器获取所述机械臂处于n个不同位姿时所述机械臂末端的操作器在末端坐标系下的n个重力矩阵数据,包括:控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿;在所述机械臂保持第j个位姿时,利用所述机械臂末端的传感器获取所述操作器在所述末端坐标系下的第j个重力矩阵数据,j≤n。Further, using the sensor at the end of the manipulator to obtain n pieces of gravity matrix data of the manipulator at the end of the manipulator in the end coordinate system when the manipulator is in n different poses includes: controlling the manipulator. Arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation; when the robotic arm maintains the jth pose, use the sensor at the end of the robotic arm to obtain the manipulator The jth gravity matrix data in the end coordinate system, j≤n.
进一步的,所述利用预设的旋转变换矩阵确定方法确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵,包括:控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿;在所 述机械臂保持第j个位姿时,j≤n:Further, determining the n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses by using a preset rotation transformation matrix determination method includes: controlling The robotic arm arbitrarily transforms n times within the motion range, and maintains the current pose for a preset time after each transformation; when the robotic arm maintains the jth pose, j≤n:
利用所述机械臂各个关节位置的编码器获取机械臂的各个连杆关节角;利用所述各个连杆关节角和预设的各个连杆扭曲度确定各个相邻连杆坐标系之间的相邻变换矩阵;利用各个相邻变换矩阵确定第j个位姿对应的第j个旋转变换矩阵。The joint angle of each link of the mechanical arm is obtained by using the encoder of each joint position of the mechanical arm; the phase between the coordinate systems of each adjacent link is determined by using the joint angle of each link and the preset twist of each link. Adjacent transformation matrix; use each adjacent transformation matrix to determine the jth rotation transformation matrix corresponding to the jth pose.
进一步的,利用以下公式确定所述操作器的质心坐标和质量:Further, the following formulas are used to determine the coordinates of the center of mass and the mass of the manipulator:
Figure PCTCN2021133002-appb-000030
j=1、2或3,m表示所述操作器的质量,rc表示所述操作器的质心坐标,fFTbias表示所述机械臂末端的传感器获取的力的静态误差,τFTbias表示所述机械臂末端的传感器获取的力矩的静态误差,Yj表示第j个位姿对应的参数矩阵,
Figure PCTCN2021133002-appb-000031
表示第j个旋转变换矩阵对应的转置矩阵,g表示重力加速度向量,
Figure PCTCN2021133002-appb-000032
表示求
Figure PCTCN2021133002-appb-000033
的反对称矩阵,01×3表示1行3列的零矩阵,I3×3表示3行3列的单位矩阵,03×3表示3行3列的零矩阵,Wj表示第j个位姿对应的重力矩阵数据,fFTj表示第j个位姿对应的重力矩阵数据对应的力的向量,τFTi表示第j个位姿对应的重力矩阵数据对应的力矩的向量。
Figure PCTCN2021133002-appb-000030
j=1, 2 or 3, m represents the mass of the manipulator, rc represents the center of mass coordinates of the manipulator, fFTbias represents the static error of the force acquired by the sensor at the end of the robot arm, τFTbias represents the end of the robot arm The static error of the moment obtained by the sensor, Yj represents the parameter matrix corresponding to the jth pose,
Figure PCTCN2021133002-appb-000031
represents the transpose matrix corresponding to the jth rotation transformation matrix, g represents the gravitational acceleration vector,
Figure PCTCN2021133002-appb-000032
express request
Figure PCTCN2021133002-appb-000033
the antisymmetric matrix of Gravity matrix data, fFTj represents the force vector corresponding to the gravity matrix data corresponding to the jth pose, and τFTi represents the torque vector corresponding to the gravity matrix data corresponding to the jth pose.
进一步的,所述控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿,包括:Further, the control of the robotic arm to arbitrarily transform n times within the range of motion, and to maintain the current pose for a preset time after each transformation, includes:
控制所述机械臂的末端依次移动至预设的n个末端位置,并在每一末端位置停留预设时间,所述预设的n个末端位置在所述运动范围内;或,利用随机函数在所述运动范围内随机选择n个末端位置,控制所述机械臂的末端依次移动至n个末端位置,并在每一末端位置停留预设时间;或,在保持所述机械臂的末端位置不变的情况下,控制所述机械臂的各个连杆在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿。Control the end of the robotic arm to move to preset n end positions in sequence, and stay at each end position for a preset time, and the preset n end positions are within the motion range; or, use a random function Randomly select n end positions within the motion range, control the end of the robotic arm to move to n end positions in sequence, and stay at each end position for a preset time; or, keep the end position of the robotic arm Under the condition that it remains unchanged, each link that controls the mechanical arm is arbitrarily transformed n times within the motion range, and the current pose is maintained for a preset time after each transformation.
进一步的,所述预设时间的取值范围为1s~2s。Further, the value range of the preset time is 1s˜2s.
本实施例公开的机械臂控制装置10通过获取模块11、确定模块12、计算模块13和控制模块14的配合使用,用于执行上述实施例所述的机械臂控制方法,上述实施例所涉及的实施方案以及有益效果在本实施例中同样适用,在此不再赘述。The robotic arm control device 10 disclosed in this embodiment is used in conjunction with the acquisition module 11 , the determination module 12 , the calculation module 13 and the control module 14 to execute the robotic arm control method described in the foregoing embodiments. The implementation and beneficial effects are also applicable to this embodiment, and will not be repeated here.
本申请的一些实施例,如图7所示,提出一种机械臂200,包括存储器210和处理器220,所述存储器210存储有计算机程序,所述计算机程序在所述处理器220上运行时执行本申请所述的机械臂控制方法。Some embodiments of the present application, as shown in FIG. 7 , provide a robotic arm 200 including a memory 210 and a processor 220 , the memory 210 stores a computer program, and the computer program runs on the processor 220 Execute the robotic arm control method described in this application.
本申请还提出一种可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行本申请所述的机械臂控制方法。The present application also provides a readable storage medium, which stores a computer program, and when the computer program runs on the processor, executes the robotic arm control method described in the present application.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may also be implemented in other manners. The apparatus embodiments described above are only schematic. For example, the flowcharts and structural diagrams in the accompanying drawings show the possible implementation architectures and functions of the apparatuses, methods and computer program products according to various embodiments of the present application. and operation. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more functions for implementing the specified logical function(s) executable instructions. It should also be noted that, in alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It is also noted that each block of the block diagrams and/or flow diagrams, and combinations of blocks in the block diagrams and/or flow diagrams, can be implemented using dedicated hardware-based systems that perform the specified functions or actions. be implemented, or may be implemented in a combination of special purpose hardware and computer instructions.
另外,在本申请各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。In addition, each functional module or unit in each embodiment of the present application may be integrated together to form an independent part, or each module may exist independently, or two or more modules may be integrated to form an independent part.
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。If the functions are implemented in the form of software function modules and sold or used as independent products, they may be stored in a readable storage medium. Based on this understanding, the technical solution of the present application can be embodied in the form of a software product in essence, or the part that contributes to the prior art or the part of the technical solution. The computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a smart phone, a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, Read-Only Memory (ROM, Read-Only Memory), Random Access Memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program codes .
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。The above are only specific embodiments of the present application, but the protection scope of the present application is not limited to this. should be covered within the scope of protection of this application.

Claims (10)

  1. 一种机械臂控制方法,其特征在于,所述方法包括:A method for controlling a robotic arm, wherein the method comprises:
    利用安装于机械臂末端的传感器获取所述安装于机械臂末端的操作器的n个重力矩阵数据,所述n个重力矩阵数据为所述机械臂处于n个不同位姿时所述操作器在末端坐标系下的n个重力矩阵数据,n≥3;The n gravity matrix data of the manipulator installed at the end of the manipulator is obtained by using the sensor installed at the end of the manipulator, and the n gravity matrix data is when the manipulator is in n different poses. n gravity matrix data in the end coordinate system, n≥3;
    确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵;determining n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses;
    利用所述n个重力矩阵数据和所述n个旋转变换矩阵计算所述操作器的质心坐标和质量;Use the n gravity matrix data and the n rotation transformation matrices to calculate the center of mass coordinates and mass of the operator;
    将所述质心坐标、所述质量反馈至所述机械臂的控制端,以使所述机械臂的控制端根据所述质心坐标和所述质量控制所述机械臂。The center of mass coordinates and the mass are fed back to the control end of the robotic arm, so that the control end of the robotic arm controls the robotic arm according to the center of mass coordinates and the mass.
  2. 根据权利要求1所述的机械臂控制方法,其特征在于,所述利用安装于机械臂末端的传感器获取所述安装于机械臂末端的操作器的n个重力矩阵数据,包括:The method for controlling a robotic arm according to claim 1, wherein the acquisition of n pieces of gravity matrix data of the manipulator mounted at the end of the robotic arm by using a sensor mounted at the end of the robotic arm comprises:
    控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿;Control the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation;
    在所述机械臂保持第j个位姿时,利用所述安装于机械臂末端的传感器获取所述操作器在所述末端坐标系下的第j个重力矩阵数据,j≤n。When the manipulator maintains the jth pose, the sensor installed at the end of the manipulator is used to obtain the jth gravity matrix data of the manipulator in the coordinate system of the end, where j≤n.
  3. 根据权利要求1所述的机械臂控制方法,其特征在于,所述利用预设的旋转变换矩阵确定方法确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵,包括:The method for controlling a robotic arm according to claim 1, wherein the base coordinate system of the robotic arm is determined by using a preset rotation transformation matrix determination method when the robotic arm is in n different poses to the n rotation transformation matrices of the end coordinate system, including:
    控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿;Control the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation;
    在所述机械臂保持第j个位姿时,j≤n:When the robotic arm maintains the jth pose, j≤n:
    获取机械臂的各个连杆关节角;Obtain the joint angle of each link of the robotic arm;
    利用所述各个连杆关节角和预设的各个连杆扭曲度确定各个相邻连杆坐标系之间的相邻变换矩阵;Determine the adjacent transformation matrix between the coordinate systems of each adjacent connecting rod by using the joint angle of each connecting rod and the preset twisting degree of each connecting rod;
    利用各个相邻变换矩阵确定第j个位姿对应的第j个旋转变换矩阵。Use each adjacent transformation matrix to determine the jth rotation transformation matrix corresponding to the jth pose.
  4. 根据权利要求1所述的机械臂控制方法,其特征在于,利用以下公式确定所述操作器的质心坐标和质量:The manipulator control method according to claim 1, wherein the following formulas are used to determine the coordinates of the center of mass and the mass of the manipulator:
    Figure PCTCN2021133002-appb-100001
    m表示所述操作器的质量,rc表示所述操作器的质心坐标,fFTbias表示所述安装于机械臂末端的传感器采集力的静态误差,τFTbias表示所述安装于机械臂末端的传感器采集力矩的静态误差,Yj表示第j个位姿对应的参数矩阵,
    Figure PCTCN2021133002-appb-100002
    表示第j个旋转变换矩阵对应的转置矩阵,g表示重力加速度向量,
    Figure PCTCN2021133002-appb-100003
    表示求
    Figure PCTCN2021133002-appb-100004
    的反对称矩阵,01×3表示1行3列的零矩阵,I3×3表示3行3列的单位矩阵,03×3表示3行3列的零矩阵,Wj表示第j个位姿对应的重力矩阵数据,fFTj表示第j个位姿对应的重力矩阵数据的力向量,τFTi表示第j个位姿对应的重力矩阵数据的力矩向量。
    Figure PCTCN2021133002-appb-100001
    m represents the mass of the manipulator, rc represents the coordinates of the center of mass of the manipulator, fFTbias represents the static error of the force collected by the sensor installed at the end of the robot arm, and τFTbias represents the torque collected by the sensor installed at the end of the robot arm. Static error, Yj represents the parameter matrix corresponding to the jth pose,
    Figure PCTCN2021133002-appb-100002
    represents the transpose matrix corresponding to the jth rotation transformation matrix, g represents the gravitational acceleration vector,
    Figure PCTCN2021133002-appb-100003
    express request
    Figure PCTCN2021133002-appb-100004
    the antisymmetric matrix of Gravity matrix data, fFTj represents the force vector of the gravity matrix data corresponding to the jth pose, and τFTi represents the moment vector of the gravity matrix data corresponding to the jth pose.
  5. 根据权利要求2或3所述的机械臂控制方法,其特征在于,所述控制所述机械臂在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿,包括:The method for controlling a robotic arm according to claim 2 or 3, wherein the controlling the robotic arm to arbitrarily transform n times within the motion range, and maintain the current pose for a preset time after each transformation, comprising: :
    控制所述机械臂的末端依次移动至预设的n个末端位置,并在每一末端位置停留预设时间,所述预设的n个末端位置在所述运动范围内;Controlling the end of the robotic arm to move to preset n end positions in sequence, and staying at each end position for a preset time, and the preset n end positions are within the motion range;
    或,利用随机函数在所述运动范围内随机选择n个末端位置,控制所述机械臂的末端依次移动至n个末端位置,并在每一末端位置停留预设时间;Or, use a random function to randomly select n end positions within the motion range, control the end of the robotic arm to move to the n end positions in sequence, and stay at each end position for a preset time;
    或,在保持所述机械臂的末端位置不变的情况下,控制所述机械臂的各个连杆在运动范围内任意变换n次,并且每一次变换后在预设时间内保持当前位姿。Or, under the condition that the end position of the robotic arm is kept unchanged, each link of the robotic arm is controlled to be arbitrarily transformed n times within the motion range, and the current pose is maintained for a preset time after each transformation.
  6. 根据权利要求2或3所述的机械臂控制方法,其特征在于,所述预设时间的取值范围为1s~2s。The method for controlling a robotic arm according to claim 2 or 3, wherein the preset time ranges from 1s to 2s.
  7. 根据权利要求4所述的机械臂控制方法,其特征在于,还包括:将所述安装于机械臂末端的传感器静态误差反馈至所述机械臂的控制端。The method for controlling a robotic arm according to claim 4, further comprising: feeding back the static error of the sensor installed at the end of the robotic arm to the control end of the robotic arm.
  8. 一种机械臂控制装置,其特征在于,所述装置包括:A mechanical arm control device, characterized in that the device comprises:
    获取模块,用于利用安装于机械臂末端的传感器获取所述安装于机械臂末端的操作器的n个重力矩阵数据,所述n个重力矩阵数据为所述机械臂处于n个不同位姿时所述操作器在末端坐标系下的n个重力矩阵数据,n≥3;The acquisition module is used to obtain n pieces of gravity matrix data of the manipulator installed at the end of the robot arm by using the sensor installed at the end of the robot arm, where the n pieces of gravity matrix data are when the robot arm is in n different poses n gravity matrix data of the operator in the end coordinate system, n≥3;
    确定模块,用于利用预设的旋转变换矩阵确定方法确定所述机械臂处于n个不同位姿时所述机械臂的基坐标系到所述末端坐标系的n个旋转变换矩阵;A determination module, configured to use a preset rotation transformation matrix determination method to determine n rotation transformation matrices from the base coordinate system of the robotic arm to the end coordinate system when the robotic arm is in n different poses;
    计算模块,用于利用所述n个重力矩阵数据和所述n个旋转变换矩阵计算所述操作器的质心坐标和质量;a calculation module for calculating the coordinates of the center of mass and the mass of the operator by using the n gravity matrix data and the n rotation transformation matrices;
    控制模块,用于将所述质心坐标、所述质量反馈至所述机械臂的控制端,以使所述机械臂的控制端根据所述质心坐标和所述质量控制所述机械臂。The control module is configured to feed back the coordinates of the center of mass and the mass to the control end of the manipulator, so that the control end of the manipulator controls the manipulator according to the coordinates of the center of mass and the mass.
  9. 一种机械臂,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行权利要求1至7任一项所述的机械臂控制方法。A robotic arm, characterized in that it comprises a memory and a processor, the memory stores a computer program, and the computer program executes the robotic arm control described in any one of claims 1 to 7 when the computer program runs on the processor method.
  10. 一种可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序在处理器上运行时执行权利要求1至7任一项所述的机械臂控制方法。A readable storage medium, characterized in that it stores a computer program, and the computer program executes the robotic arm control method according to any one of claims 1 to 7 when the computer program runs on a processor.
PCT/CN2021/133002 2021-04-26 2021-11-25 Robot arm control method and apparatus, and robot arm and readable storage medium WO2022227536A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110454863.6A CN113510698B (en) 2021-04-26 2021-04-26 Mechanical arm control method and device, mechanical arm and readable storage medium
CN202110454863.6 2021-04-26

Publications (1)

Publication Number Publication Date
WO2022227536A1 true WO2022227536A1 (en) 2022-11-03

Family

ID=78063603

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/133002 WO2022227536A1 (en) 2021-04-26 2021-11-25 Robot arm control method and apparatus, and robot arm and readable storage medium

Country Status (2)

Country Link
CN (1) CN113510698B (en)
WO (1) WO2022227536A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115533922A (en) * 2022-11-29 2022-12-30 北京航空航天大学杭州创新研究院 Pose relation calibration method and device, computer equipment and readable storage medium

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113510698B (en) * 2021-04-26 2022-07-29 深圳市优必选科技股份有限公司 Mechanical arm control method and device, mechanical arm and readable storage medium
CN114310878B (en) * 2021-12-22 2024-03-15 上海智能制造功能平台有限公司 Large-mass part manual guide assembly method, system and medium based on force control

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009088828A1 (en) * 2007-12-31 2009-07-16 Abb Research Ltd. Method and apparatus using a force sensor to provide load compensation for a robot
CN107238468A (en) * 2017-08-01 2017-10-10 中科新松有限公司 Discrimination method, device, equipment and the storage medium of mechanical arm tail end instrument barycenter
CN109822574A (en) * 2019-03-20 2019-05-31 华中科技大学 A kind of method of industrial robot end six-dimension force sensor calibration
CN111590564A (en) * 2020-05-07 2020-08-28 北京控制工程研究所 Gravity compensation method and system for six-dimensional force sensor
CN111618857A (en) * 2020-05-28 2020-09-04 甘博涵 Multi-load self-adaptive gravity compensation method for mechanical arm
CN113510698A (en) * 2021-04-26 2021-10-19 深圳市优必选科技股份有限公司 Mechanical arm control method and device, mechanical arm and readable storage medium

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06190750A (en) * 1992-12-24 1994-07-12 Toyoda Mach Works Ltd Robot control device
CN205655062U (en) * 2016-04-25 2016-10-19 湖北工业大学 Full -automatic TV frame
CN107433590B (en) * 2017-07-31 2020-08-18 上海宇航系统工程研究所 Gravity compensation method based on mechanical arm load mass and sensor null shift online identification
CN108716962A (en) * 2018-05-10 2018-10-30 珞石(山东)智能科技有限公司 Robot end's force snesor zero bias scaling method synchronous with load parameter
DE102019120157B3 (en) * 2019-07-25 2020-08-20 Franka Emika Gmbh Verification of a mass model of a robot manipulator
CN111870288B (en) * 2019-09-10 2021-11-02 深圳市精锋医疗科技有限公司 Surgical robot and control method and control device for mechanical arm of surgical robot
CN110977990A (en) * 2019-12-30 2020-04-10 苏州艾利特机器人有限公司 Mechanical arm dragging teaching method based on terminal six-dimensional force sensor

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009088828A1 (en) * 2007-12-31 2009-07-16 Abb Research Ltd. Method and apparatus using a force sensor to provide load compensation for a robot
CN107238468A (en) * 2017-08-01 2017-10-10 中科新松有限公司 Discrimination method, device, equipment and the storage medium of mechanical arm tail end instrument barycenter
CN109822574A (en) * 2019-03-20 2019-05-31 华中科技大学 A kind of method of industrial robot end six-dimension force sensor calibration
CN111590564A (en) * 2020-05-07 2020-08-28 北京控制工程研究所 Gravity compensation method and system for six-dimensional force sensor
CN111618857A (en) * 2020-05-28 2020-09-04 甘博涵 Multi-load self-adaptive gravity compensation method for mechanical arm
CN113510698A (en) * 2021-04-26 2021-10-19 深圳市优必选科技股份有限公司 Mechanical arm control method and device, mechanical arm and readable storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115533922A (en) * 2022-11-29 2022-12-30 北京航空航天大学杭州创新研究院 Pose relation calibration method and device, computer equipment and readable storage medium

Also Published As

Publication number Publication date
CN113510698B (en) 2022-07-29
CN113510698A (en) 2021-10-19

Similar Documents

Publication Publication Date Title
WO2022227536A1 (en) Robot arm control method and apparatus, and robot arm and readable storage medium
CN107433590B (en) Gravity compensation method based on mechanical arm load mass and sensor null shift online identification
WO2021238049A1 (en) Method, apparatus and control device for multi-load self-adaptive gravity compensation of manipulator
US20180085923A1 (en) Robot control device, robot, and robot system
US20170259433A1 (en) Robot control device, information processing device, and robot system
US20150127141A1 (en) Robot, control device, robot system and robot control method
CN110253574B (en) Multi-task mechanical arm pose detection and error compensation method
CN113021358B (en) Method and device for calibrating origin of coordinate system of mechanical arm tool and electronic equipment
CN113799134B (en) Robot control method, device, robot and readable storage medium
JP2012137421A (en) Control device of robot performing force control using triaxial sensor
CN110394801A (en) A kind of joint control system of robot
CN112809667A (en) Force control method and device of industrial robot and application of force control device
CN111515928B (en) Mechanical arm motion control system
Zou et al. An approach for peg-in-hole assembling based on force feedback control
CN116038647A (en) Scooter, control method of mechanical arm, electronic equipment and storage medium
CN110842917B (en) Method for calibrating mechanical parameters of series-parallel connection machinery, electronic device and storage medium
Kim et al. Vision-force guided precise robotic assembly for 2.5 D components in a semistructured environment
CN111801630B (en) Positioner axis coordinate system calibration method, robot system and storage device
Hu et al. A compliant robotic assembly system based on multiple sensors
US11738458B2 (en) Control method for robot system
Niitsu et al. Detection of Contact Point of Parts Using a Force Sensor for Remote-Controlled Assembly Using a 1DOF Haptic Device
CN111157004B (en) Tool calibration method for flange downward four-axis robot
Lu et al. CAD, vision and sensor based intelligent robot server
CN117464690A (en) Posture adjustment method, device, equipment and storage medium
Gajbhiye et al. Simulation of a Vision-Based Model of a Robotic Work Cell (6-Axis)

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21938995

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE