CN118106945A - Robotic arm control method, device, robotic arm and readable storage medium - Google Patents

Robotic arm control method, device, robotic arm and readable storage medium Download PDF

Info

Publication number
CN118106945A
CN118106945A CN202211485585.1A CN202211485585A CN118106945A CN 118106945 A CN118106945 A CN 118106945A CN 202211485585 A CN202211485585 A CN 202211485585A CN 118106945 A CN118106945 A CN 118106945A
Authority
CN
China
Prior art keywords
joint
robot arm
control amount
singular
arm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211485585.1A
Other languages
Chinese (zh)
Inventor
孙国康
任赜宇
孙晨光
张佳俊
高英皓
郭文平
向迪昀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xiaomi Robot Technology Co Ltd
Original Assignee
Beijing Xiaomi Robot Technology Co Ltd
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 Beijing Xiaomi Robot Technology Co Ltd filed Critical Beijing Xiaomi Robot Technology Co Ltd
Priority to CN202211485585.1A priority Critical patent/CN118106945A/en
Publication of CN118106945A publication Critical patent/CN118106945A/en
Pending legal-status Critical Current

Links

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/1602Programme controls characterised by the control system, structure, architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

The disclosure provides a mechanical arm control method, a device, a mechanical arm and a readable storage medium, wherein the method comprises the following steps: and determining the speed control quantity of the tail end of the mechanical arm according to the relative position relation between the current position of the tail end of the mechanical arm and the expected position, the expected speed and the singular position weight, and determining the speed control quantity of the joint of the mechanical arm and the position control quantity of the joint of the mechanical arm so as to control the movement of the mechanical arm. According to the method and the device, the mechanical arm can obtain a determined joint control parameter in each control period, gradual convergence is carried out in a plurality of control periods, calculation time consumption in a single control period is reduced, in addition, negative influences of singular positions of the mechanical arm on solving failure and the like caused by inverse solution process are reduced through the singular position weight, and reliability of an inverse solution calculation result is improved.

Description

机械臂控制方法、装置、机械臂及可读储存介质Robotic arm control method, device, robotic arm and readable storage medium

技术领域Technical Field

本公开涉及机械臂技术领域,尤其涉及一种机械臂控制方法、装置、机械臂及可读储存介质。The present disclosure relates to the technical field of robotic arms, and in particular to a robotic arm control method, a robotic arm, and a readable storage medium.

背景技术Background technique

当前的机械臂控制方法主要基于对输入的机械臂末端控制参数进行逆解,以获取机械臂关节的控制参数。其中,数值逆解法由于具有不依赖机械臂关节构型的优点,被作为常用的逆解方法。然而,在机械臂的数值逆解法中,由于需要在单个控制周期内进行多次逆解计算,导致计算耗时大,且在机械臂接近奇异位型时,将产生极大值,导致逆解求解失败。Current robot arm control methods are mainly based on inverse solution of the input robot arm end control parameters to obtain the control parameters of the robot arm joints. Among them, the numerical inverse solution method is used as a commonly used inverse solution method because it has the advantage of not relying on the robot arm joint configuration. However, in the numerical inverse solution method of the robot arm, since multiple inverse solution calculations need to be performed in a single control cycle, the calculation is time-consuming, and when the robot arm is close to a singular configuration, a maximum value will be generated, resulting in failure of the inverse solution.

发明内容Summary of the invention

有鉴于此,本公开提供一种机械臂控制方法、装置、机械臂及可读储存介质,以至少解决相关技术中存在的问题。In view of this, the present disclosure provides a robot arm control method, device, robot arm and readable storage medium to at least solve the problems existing in the related art.

根据本公开实施例的第一方面,提供了一种机械臂控制方法,所述方法包括:According to a first aspect of an embodiment of the present disclosure, a method for controlling a robot arm is provided, the method comprising:

获取机械臂末端的期望位置和机械臂末端处于所述期望位置时的期望速度;Obtaining a desired position of the end of the robotic arm and a desired speed of the end of the robotic arm when the end of the robotic arm is at the desired position;

根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量,其中,所述奇异位置权重与机械臂当前的关节位型相关;Determine the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, wherein the singular position weight is related to the current joint configuration of the robotic arm;

根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;Determining the speed control amount of the mechanical arm joint according to the speed control amount of the mechanical arm end;

根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量;According to the current joint position of the robot arm, the speed control amount of the robot arm joint determines the position control amount of the robot arm joint;

根据所述机械臂关节的速度控制量和位置控制量,控制机械臂移动。The movement of the robotic arm is controlled according to the speed control amount and the position control amount of the robotic arm joint.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述方法还包括:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the method further includes:

根据机械臂的最大长度以及预设的边界权重,确定机械臂能够达到的最大空间位置;Determine the maximum spatial position that the robot can reach based on the maximum length of the robot and the preset boundary weight;

响应于所述期望位置超出所述最大空间位置,对所述期望位置进行校正,以使所述期望位置处于所述最大空间位置内。In response to the desired position exceeding the maximum spatial position, the desired position is corrected so that the desired position is within the maximum spatial position.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述方法还包括:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the method further includes:

获取预设的机械臂的工作空间位置;Get the preset working space position of the robot arm;

响应于所述期望位置超出所述工作空间位置,对所述期望位置进行校正,以使所述期望位置处于所述工作空间位置内。In response to the desired position being outside the workspace position, the desired position is corrected so that the desired position is within the workspace position.

结合本公开的任一实施方式,所述方法还包括:In combination with any embodiment of the present disclosure, the method further includes:

响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述奇异位置权重为零;In response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the singular position weight is zero;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,且小于或等于机械臂在奇异位型的最大奇异值,所述奇异位置权重与当前关节位型的奇异值为正相关关系;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration and less than or equal to the maximum singular value of the robot arm in the singular configuration, the singular position weight is positively correlated with the singular value of the current joint configuration;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最大奇异值,所述奇异位置权重为一;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the maximum singular value of the robot arm in the singular configuration, the singular position weight is one;

其中,所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the Jacobian matrix of the joint configuration of the robot arm and the mapping relationship between the speed control amount of the end of the robot arm and the speed control amount of the joint of the robot arm.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述方法还包括:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the method further includes:

响应于所述相对位置关系超出预设位置阈值,对所述相对位置关系进行校正,以使所述相对位置关系处于所述预设位置阈值内。In response to the relative position relationship exceeding a preset position threshold, the relative position relationship is corrected so that the relative position relationship is within the preset position threshold.

结合本公开的任一实施方式,所述根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量,包括:In combination with any embodiment of the present disclosure, the determining the speed control amount of the robot arm joint according to the speed control amount of the robot arm end includes:

基于雅可比矩阵和矩阵阻尼值,根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;Based on the Jacobian matrix and the matrix damping value, determining the speed control amount of the robot arm joint according to the speed control amount of the end of the robot arm;

其中,响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值与当前关节位型的奇异值为负相关关系;Wherein, in response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the matrix damping value is negatively correlated with the singular value of the current joint configuration;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值为零;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration, the matrix damping value is zero;

所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the joint configuration of the robot arm and the Jacobian matrix representing the mapping relationship between the speed control amount of the end of the robot arm and the speed control amount of the joint of the robot arm.

结合本公开的任一实施方式,在根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量前,所述方法还包括:In combination with any embodiment of the present disclosure, before determining the position control amount of the mechanical arm joint according to the current joint position of the mechanical arm and the speed control amount of the mechanical arm joint, the method further includes:

根据雅可比矩阵、机械臂的自由度和机械臂的至少一个关节位置,确定机械臂关节的限位速度,所述雅可比矩阵表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系;Determine the limit speed of the joint of the robotic arm according to the Jacobian matrix, the degree of freedom of the robotic arm and at least one joint position of the robotic arm, wherein the Jacobian matrix represents the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm;

根据所述限位速度,更新所述机械臂关节的速度控制量。According to the limit speed, the speed control amount of the robot arm joint is updated.

结合本公开的任一实施方式,所述机械臂的至少一个关节位置包括机械臂关节的上边界位置、机械臂关节的下边界位置,以及机械臂关节的中点位置。In combination with any embodiment of the present disclosure, the at least one joint position of the robotic arm includes an upper boundary position of the robotic arm joint, a lower boundary position of the robotic arm joint, and a midpoint position of the robotic arm joint.

结合本公开的任一实施方式,所述机械臂末端的速度控制量表征机械臂末端在当前控制周期的移动速度;In combination with any embodiment of the present disclosure, the speed control amount of the end of the robotic arm represents the moving speed of the end of the robotic arm in the current control cycle;

所述机械臂关节的速度控制量表征机械臂关节在当前控制周期的移动速度;The speed control amount of the robot arm joint represents the moving speed of the robot arm joint in the current control cycle;

所述机械臂关节的位置控制量表征机械臂关节在当前控制周期的移动位置。The position control amount of the robot arm joint represents the moving position of the robot arm joint in the current control cycle.

根据本公开实施例的第二方面,提供了一种机械臂控制装置,所述装置包括:According to a second aspect of an embodiment of the present disclosure, a robot arm control device is provided, the device comprising:

参数获取模块,用于:获取机械臂末端的期望位置和机械臂末端处于所述期望位置时的期望速度;A parameter acquisition module is used to: acquire the desired position of the end of the robot arm and the desired speed of the end of the robot arm when the end of the robot arm is at the desired position;

末端速度确定模块,用于:根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量,其中,所述奇异位置权重与机械臂当前的关节位型相关;The terminal speed determination module is used to determine the speed control amount of the terminal of the manipulator according to the relative position relationship between the current position of the terminal of the manipulator and the expected position, the expected speed and the singular position weight, wherein the singular position weight is related to the current joint configuration of the manipulator;

关节速度确定模块,用于:根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;A joint speed determination module, used to: determine the speed control amount of the mechanical arm joint according to the speed control amount of the mechanical arm end;

关节位置确定模块,用于:根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量;The joint position determination module is used to determine the position control amount of the robot arm joint according to the current joint position of the robot arm and the speed control amount of the robot arm joint;

机械臂控制模块,用于:根据所述机械臂关节的速度控制量和位置控制量,控制机械臂移动。The robot arm control module is used to control the movement of the robot arm according to the speed control amount and the position control amount of the robot arm joint.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括第一限位模块,用于:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the device further includes a first limit module, which is used to:

根据机械臂的最大长度以及预设的边界权重,确定机械臂能够达到的最大空间位置;Determine the maximum spatial position that the robot can reach based on the maximum length of the robot and the preset boundary weight;

响应于所述期望位置超出所述最大空间位置,对所述期望位置进行校正,以使所述期望位置处于所述最大空间位置内。In response to the desired position exceeding the maximum spatial position, the desired position is corrected so that the desired position is within the maximum spatial position.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括第二限位模块,用于:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the device further includes a second limit module for:

获取预设的机械臂的工作空间位置;Get the preset working space position of the robot arm;

响应于所述期望位置超出所述工作空间位置,对所述期望位置进行校正,以使所述期望位置处于所述工作空间位置内。In response to the desired position being outside the workspace position, the desired position is corrected so that the desired position is within the workspace position.

结合本公开的任一实施方式,所述装置还包括权重确定模块,用于:In combination with any embodiment of the present disclosure, the device further includes a weight determination module, which is used to:

响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述奇异位置权重为零;In response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the singular position weight is zero;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,且小于或等于机械臂在奇异位型的最大奇异值,所述奇异位置权重与当前关节位型的奇异值为正相关关系;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration and less than or equal to the maximum singular value of the robot arm in the singular configuration, the singular position weight is positively correlated with the singular value of the current joint configuration;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最大奇异值,所述奇异位置权重为一;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the maximum singular value of the robot arm in the singular configuration, the singular position weight is one;

其中,所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the Jacobian matrix of the joint configuration of the robotic arm and the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括误差校正模块,用于:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the device also includes an error correction module for:

响应于所述相对位置关系超出预设位置阈值,对所述相对位置关系进行校正,以使所述相对位置关系处于所述预设位置阈值内。In response to the relative position relationship exceeding a preset position threshold, the relative position relationship is corrected so that the relative position relationship is within the preset position threshold.

结合本公开的任一实施方式,在所述关节速度确定模块根据机械臂末端的速度控制量确定机械臂关节的速度控制量时,具体用于:In combination with any embodiment of the present disclosure, when the joint speed determination module determines the speed control amount of the mechanical arm joint according to the speed control amount of the mechanical arm end, it is specifically used to:

基于雅可比矩阵和矩阵阻尼值,根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;Based on the Jacobian matrix and the matrix damping value, determining the speed control amount of the robot arm joint according to the speed control amount of the end of the robot arm;

其中,响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值与当前关节位型的奇异值为负相关关系;Wherein, in response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the matrix damping value is negatively correlated with the singular value of the current joint configuration;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值为零;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration, the matrix damping value is zero;

所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the joint configuration of the robot arm and the Jacobian matrix representing the mapping relationship between the speed control amount of the end of the robot arm and the speed control amount of the joint of the robot arm.

结合本公开的任一实施方式,在根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量前,所述装置还包括第三限位模块,用于:In combination with any embodiment of the present disclosure, before determining the position control amount of the mechanical arm joint according to the current joint position of the mechanical arm and the speed control amount of the mechanical arm joint, the device further includes a third limiting module, which is used to:

根据雅可比矩阵、机械臂的自由度和机械臂的至少一个关节位置,确定机械臂关节的限位速度,所述雅可比矩阵表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系;Determine the limit speed of the joint of the robotic arm according to the Jacobian matrix, the degree of freedom of the robotic arm and at least one joint position of the robotic arm, wherein the Jacobian matrix represents the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm;

根据所述限位速度,更新所述机械臂关节的速度控制量。According to the limit speed, the speed control amount of the robot arm joint is updated.

结合本公开的任一实施方式,所述机械臂的至少一个关节位置包括机械臂关节的上边界位置、机械臂关节的下边界位置,以及机械臂关节的中点位置。In combination with any embodiment of the present disclosure, the at least one joint position of the robotic arm includes an upper boundary position of the robotic arm joint, a lower boundary position of the robotic arm joint, and a midpoint position of the robotic arm joint.

结合本公开的任一实施方式,所述机械臂末端的速度控制量表征机械臂末端在当前控制周期的移动速度;In combination with any embodiment of the present disclosure, the speed control amount of the end of the robotic arm represents the moving speed of the end of the robotic arm in the current control cycle;

所述机械臂关节的速度控制量表征机械臂关节在当前控制周期的移动速度;The speed control amount of the robot arm joint represents the moving speed of the robot arm joint in the current control cycle;

所述机械臂关节的位置控制量表征机械臂关节在当前控制周期的移动位置。The position control amount of the robot arm joint represents the moving position of the robot arm joint in the current control cycle.

根据本公开实施例的第三方面,提供了一种机械臂,包括:According to a third aspect of an embodiment of the present disclosure, there is provided a robotic arm, comprising:

存储器,用于存储所述处理器可执行指令;A memory, configured to store instructions executable by the processor;

处理器,被配置为执行所述存储器中的可执行指令以实现上述第一方面任一实施方式所述方法的步骤。The processor is configured to execute the executable instructions in the memory to implement the steps of the method described in any embodiment of the first aspect above.

根据本公开实施例的第四方面,提供了一种电子设备,包括机械臂,存储器,用于存储处理器可执行指令;处理器,被配置为执行所述存储器中的可执行指令以实现上述第一方面任一实施方式所述方法的步骤。可选地,该电子设备包括机器人。According to a fourth aspect of the embodiments of the present disclosure, there is provided an electronic device, comprising a robotic arm, a memory for storing processor executable instructions, and a processor configured to execute the executable instructions in the memory to implement the steps of the method described in any one of the embodiments of the first aspect above. Optionally, the electronic device comprises a robot.

根据本公开实施例的第五方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面任一实施方式所述方法的步骤。According to a fifth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the program is executed by a processor, the steps of the method described in any embodiment of the first aspect are implemented.

本公开实施例提供的技术方案可以包括以下有益效果:The technical solution provided by the embodiments of the present disclosure may have the following beneficial effects:

通过机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量,并据此逆解得到机械臂关节的相关控制参数。使得机械臂在每一个控制周期内均能够得到一个确定的关节控制参数,并在多个控制周期内进行逐步收敛,降低了单个控制周期内的计算耗时,此外,还通过所述奇异位置权重降低了机械臂奇异位置对逆解过程造成的求解失败等负面影响,提升了逆解计算结果的可靠性。The speed control amount of the end of the robotic arm is determined by the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the weight of the singular position, and the relevant control parameters of the robotic arm joints are obtained by inverse solution. The robotic arm can obtain a certain joint control parameter in each control cycle, and gradually converge in multiple control cycles, reducing the calculation time in a single control cycle. In addition, the singular position weight is used to reduce the negative impact of the singular position of the robotic arm on the inverse solution process, such as the failure of the solution, and improve the reliability of the inverse solution calculation results.

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

图1是本公开根据一示例性实施例示出的一种机械臂示意图;FIG1 is a schematic diagram of a mechanical arm according to an exemplary embodiment of the present disclosure;

图2是本公开根据一示例性实施例示出的一种机械臂控制方法流程图;FIG2 is a flow chart of a method for controlling a robotic arm according to an exemplary embodiment of the present disclosure;

图3是本公开根据一示例性实施例示出的一种机械臂控制装置示意图;FIG3 is a schematic diagram of a robot arm control device according to an exemplary embodiment of the present disclosure;

图4是本公开根据一示例性实施例示出的一种机械臂装置框图。Fig. 4 is a block diagram of a robot arm device according to an exemplary embodiment of the present disclosure.

具体实施方式Detailed ways

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。The terms used in this disclosure are for the purpose of describing specific embodiments only and are not intended to limit the disclosure. The singular forms "a", "the" and "the" used in this disclosure and the appended claims are also intended to include plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and/or" used herein refers to and includes any or all possible combinations of one or more associated listed items.

应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。It should be understood that although the terms first, second, third, etc. may be used in the present disclosure to describe various information, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of the present disclosure, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".

当前的机械臂控制方法主要基于对输入的机械臂末端控制参数进行逆解,以获取机械臂关节的控制参数。示例性的,图1为本公开示出的一种机械臂示意图。图1以四自由度串联机械臂为例,在获取到机械臂末端的期望位置和期望速度后,通过数值逆解法计算出机械臂以期望速度到达期望位置时,关节J1-J4分别所需的关节转角以及关节速度,然后将关节控制指令下发至机械臂执行。然而,在机械臂的数值逆解法中,由于需要在单个控制周期内进行多次逆解计算,导致计算耗时大,且在机械臂接近奇异位型时,将产生极大值,导致逆解求解失败。The current robot arm control method is mainly based on the inverse solution of the input robot arm end control parameters to obtain the control parameters of the robot arm joints. Exemplarily, Figure 1 is a schematic diagram of a robot arm shown in the present disclosure. Figure 1 takes a four-degree-of-freedom serial robot arm as an example. After obtaining the desired position and desired speed of the robot arm end, the numerical inverse solution method is used to calculate the joint angles and joint speeds required for the joints J1-J4 when the robot arm reaches the desired position at the desired speed, and then the joint control instructions are sent to the robot arm for execution. However, in the numerical inverse solution method of the robot arm, since multiple inverse solution calculations need to be performed within a single control cycle, the calculation is time-consuming, and when the robot arm is close to a singular position, a maximum value will be generated, resulting in the failure of the inverse solution.

有鉴于此,本公开提供一种机械臂控制方法,以至少解决相关技术中存在的问题。In view of this, the present disclosure provides a robot arm control method to at least solve the problems existing in the related art.

图2示出了本公开根据一示例性实施例示出的一种机械臂控制方法流程图。FIG2 shows a flow chart of a method for controlling a robotic arm according to an exemplary embodiment of the present disclosure.

在步骤S101中,获取机械臂末端的期望位置和机械臂末端处于所述期望位置时的期望速度。In step S101, the desired position of the end of the robot arm and the desired speed of the end of the robot arm when the end of the robot arm is at the desired position are obtained.

所述期望位置表征机械臂末端在笛卡尔空间内的目标位置,所述期望速度表征机械臂末端达到所述期望位置时刻的速度值。其中,所述期望位置和期望速度可以由用户输入至机械臂的控制模块确定,也可以根据机械臂当前的实际工作需求确定,本公开对此不做限制。The expected position represents the target position of the end of the robot arm in the Cartesian space, and the expected speed represents the speed value of the end of the robot arm when it reaches the expected position. The expected position and expected speed can be determined by the user input to the control module of the robot arm, or can be determined according to the actual working requirements of the robot arm, and the present disclosure does not limit this.

在步骤S102中,根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量,其中,所述奇异位置权重与机械臂当前的关节位型相关。In step S102, the speed control amount of the end of the robot arm is determined according to the relative position relationship between the current position of the end of the robot arm and the expected position, the expected speed and the singular position weight, wherein the singular position weight is related to the current joint configuration of the robot arm.

所述机械臂末端当前位置表征机械臂末端在当前时刻的笛卡尔空间位置,可以根据机械臂的位置传感器确定。所述机械臂末端当前位置与期望位置的相对位置关系,表征机械臂末端当前位置与期望位置的距离差。所述奇异位置权重用于减少奇异位置对机械臂逆解过程造成的跳变干扰,可以根据机械臂当前的关节位型确定。所述机械臂末端的速度控制量,表征为了使机械臂末端以期望速度到达所述期望位置,在当前控制周期内机械臂末端所需的移动速度。The current position of the end of the robotic arm represents the Cartesian spatial position of the end of the robotic arm at the current moment, and can be determined based on the position sensor of the robotic arm. The relative position relationship between the current position of the end of the robotic arm and the expected position represents the distance difference between the current position of the end of the robotic arm and the expected position. The singular position weight is used to reduce the jump interference caused by the singular position to the inverse solution process of the robotic arm, and can be determined based on the current joint configuration of the robotic arm. The speed control amount of the end of the robotic arm represents the required movement speed of the end of the robotic arm in the current control cycle in order for the end of the robotic arm to reach the expected position at the expected speed.

在一个示例中,可以根据公式(1)确定所述机械臂末端的速度控制量:In one example, the speed control amount of the end of the robotic arm can be determined according to formula (1):

vc=vd+ρ*kp*xerr (1)v c = v d + ρ*k p *x err (1)

在公式(1)中,vc表征机械臂末端的速度控制量,vd表征期望速度,ρ表征奇异位置权重。In formula (1), vc represents the velocity control amount of the end of the robot arm, vd represents the desired velocity, and ρ represents the singular position weight.

xerr表征机械臂末端当前位置xa与期望位置xd的相对位置关系,如公式(2)所示: xerr represents the relative position relationship between the current position xa of the end of the robot and the expected position xd , as shown in formula (2):

xerr=xd-xa (2)x err = x d - x a (2)

其中,xa具体可以表征为机械臂末端在当前控制周期起始时刻的位置,并在每一个控制周期更新。以使得机械臂末端的速度控制量在每个控制周期内进行单次更新,最终达到所述期望位置。Specifically, x a can be represented as the position of the end of the robot arm at the start of the current control cycle, and is updated in each control cycle, so that the speed control amount of the end of the robot arm is updated once in each control cycle, and finally reaches the desired position.

可选的,kp表征预设的机械臂位置控制增益,是xerr的增益系数,在机械臂逐渐移动至期望位置的过程中,xerr在多个控制周期内逐渐收敛至0,可以通过kp对该收敛过程进行加速或放慢。Optionally, kp represents a preset robot position control gain, which is a gain coefficient of xerr . In the process of the robot gradually moving to the desired position, xerr gradually converges to 0 within multiple control cycles, and the convergence process can be accelerated or slowed down by kp .

所述奇异位置权重可以根据机械臂当前的关节位型确定。由于在机械臂处于奇异位型的情况下,机械臂关节的逆解不存在或易出现跳变极值,会影响机械臂的逆解计算结果。其中,所述奇异位型包括边界奇异位型与内部奇异位型,由于边界奇异位型仅在机械臂处于工作边界时出现,可通过对机械臂的工作空间进行约束以避免。而内部奇异位型出现在机械臂的关节轴共线的时刻,导致机械臂的可操作性降低,减少机械臂的可移动区域。因此可通过所述奇异位置权重降低机械臂奇异位置对逆解过程造成的求解失败等负面影响。The singular position weight can be determined according to the current joint configuration of the robot. Since the inverse solution of the robot joint does not exist or is prone to jump extreme values when the robot is in a singular configuration, it will affect the inverse solution calculation result of the robot. Among them, the singular configuration includes boundary singular configuration and internal singular configuration. Since the boundary singular configuration only appears when the robot is at the working boundary, it can be avoided by constraining the working space of the robot. The internal singular configuration appears at the moment when the joint axes of the robot are collinear, resulting in reduced operability of the robot and reducing the movable area of the robot. Therefore, the singular position weight can be used to reduce the negative impact of the failure of the robot's singular position on the inverse solution process, such as the failure of solution.

在一个示例中,可以通过机械臂在当前位型下的奇异值与机械臂在奇异位型时刻的奇异值的比较结果,确定所述奇异位置权重,如公式(3)所示:In one example, the singular position weight can be determined by comparing the singular value of the robot arm in the current configuration with the singular value of the robot arm at the singular configuration moment, as shown in formula (3):

其中,∈表征机械臂在当前关节位型的最小奇异值,∈min表征当前机械臂在所有奇异位型的中的最小奇异值,∈max表征当前机械臂在所有奇异位型中的最大奇异值,所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。Among them, ∈ represents the minimum singular value of the robot in the current joint configuration, ∈ min represents the minimum singular value of the current robot in all singular configurations, ∈ max represents the maximum singular value of the current robot in all singular configurations, and the singular values are determined according to the Jacobian matrix representing the mapping relationship between the joint configuration of the robot and the speed control amount of the end of the robot and the speed control amount of the joint of the robot.

具体的,在机械臂当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,即∈≤∈min的情况下,表征当前机械臂处于奇异位型,可以通过控制所述奇异位置权重为零,使得机械臂按照期望速度的大小和方向移动,以最大限度减少奇异位型对机械臂逆解过程的影响。Specifically, when the minimum singular value of the current joint configuration of the robot is less than or equal to the minimum singular value of the robot in a singular configuration, that is, ∈≤∈ min , it indicates that the current robot is in a singular configuration. The singular position weight can be controlled to be zero so that the robot moves in the desired speed and direction, thereby minimizing the influence of the singular configuration on the inverse solution process of the robot.

在机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,且小于或等于机械臂在奇异位型的最大奇异值,即∈min<∈≤∈max的情况下,表征当前机械臂正在接近奇异位型,可以通过控制所述奇异位置权重与当前关节位型的奇异值为正相关关系,例如使奇异位置权重在机械臂接近奇异位置的过程中,使奇异位置权重不断降低,以减少奇异位型对机械臂逆解过程的影响。When the minimum singular value of the robot in the current joint configuration is greater than the minimum singular value of the robot in the singular configuration, and less than or equal to the maximum singular value of the robot in the singular configuration, that is, ∈ min <∈≤∈ max , it indicates that the current robot is approaching a singular configuration. The singular position weight can be controlled to be positively correlated with the singular value of the current joint configuration, for example, the singular position weight When the robot arm approaches the singular position, the weight of the singular position is continuously reduced to reduce the influence of the singular position on the inverse solution process of the robot arm.

在机械臂当前关节位型的最小奇异值大于机械臂在奇异位型的最大奇异值,即∈max<∈的情况下,表征当前机械臂正在远离奇异位型,可以通过控制所述奇异位置权重为1,通过期望速度与和当前位置与期望位置相对位置关系共同确定机械臂在当前控制周期内的末端速度控制量。When the minimum singular value of the current joint configuration of the robot arm is greater than the maximum singular value of the robot arm in the singular configuration, that is, ∈ max <∈, it indicates that the current robot arm is moving away from the singular configuration. The terminal speed control amount of the robot arm in the current control cycle can be determined by controlling the singular position weight to 1 and jointly determining the expected speed and the relative position relationship between the current position and the expected position.

优选的,为了防止所述相对位置关系差距过大,在逆解过程中产生突变,可以在所述相对位置关系超出预设位置阈值的情况下对所述相对位置关系进行校正,以使所述相对位置关系处于所述预设位置阈值内,如公式(4)所述:Preferably, in order to prevent the relative position relationship from being too different and causing a sudden change during the inverse solution process, the relative position relationship can be corrected when the relative position relationship exceeds a preset position threshold, so that the relative position relationship is within the preset position threshold, as described in formula (4):

在公式(4)中,xerr1表征校正后的相对位置关系,vmax表征所述预设位置阈值,可以根据机械臂末端在单个控制周期内,以最快速度能够移动的最大距离确定。In formula (4), x err1 represents the relative position relationship after correction, and v max represents the preset position threshold, which can be determined according to the maximum distance that the end of the robot arm can move at the fastest speed within a single control cycle.

在步骤S103中,根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量。In step S103, the speed control amount of the robot arm joint is determined according to the speed control amount of the robot arm end.

在获取机械臂末端的速度控制量后,可以通过机械臂关节速度与末端速度之间的映射关系计算当前控制周期内机械臂关节的速度控制量。After obtaining the speed control amount of the end of the robot arm, the speed control amount of the robot arm joint in the current control cycle can be calculated through the mapping relationship between the robot arm joint speed and the end speed.

示例性的,可以通过公式(5)确定所述机械臂关节的速度控制量:Exemplarily, the speed control amount of the robot arm joint can be determined by formula (5):

dqc=J+*vc (5)dq c = J + *v c (5)

在公式(5)中,dqc表征机械臂关节的速度控制量,J表征所述雅可比矩阵,J+表征所述雅可比矩阵的逆解运算形式,根据所述雅可比矩阵J和矩阵阻尼值确定,vc即为上述步骤得到的机械臂末端速度控制量。In formula (5), dq c represents the speed control amount of the robot arm joint, J represents the Jacobian matrix, J + represents the inverse solution operation form of the Jacobian matrix, and is determined according to the Jacobian matrix J and the matrix damping value. v c is the speed control amount of the robot arm end obtained in the above steps.

其中,所述矩阵阻尼值用于对J+的映射关系进行缩放,以避免奇异位型对机械臂逆解过程的影响。The matrix damping value is used to scale the mapping relationship of J + to avoid the influence of the singular configuration on the inverse solution process of the robot arm.

示例性的,在机械臂当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,即∈≤∈min的情况下,表征当前机械臂处于奇异位型,可以控制所述矩阵阻尼值与当前关节位型的奇异值为负相关关系,如公式(6)所示:Exemplarily, when the minimum singular value of the current joint configuration of the robot arm is less than or equal to the minimum singular value of the robot arm in the singular configuration, that is, ∈≤∈ min , it indicates that the current robot arm is in the singular configuration, and the matrix damping value can be controlled to have a negative correlation with the singular value of the current joint configuration, as shown in formula (6):

在公式(6)中,表征所述矩阵阻尼值,在机械臂处于奇异位型的情况下,机械臂的逆解过程易出现跳变极值,在机械臂在奇异位型的最小奇异值减少的过程中,通过逐渐放大矩阵阻尼值,可以增加使机械臂的逆解过程的稳定性,减少奇异位型对机械臂逆解过程的影响。In formula (6), Characterizing the matrix damping value, when the robot arm is in a singular position, the inverse solution process of the robot arm is prone to jump extreme values. In the process of reducing the minimum singular value of the robot arm in the singular position, by gradually amplifying the matrix damping value, the stability of the inverse solution process of the robot arm can be increased, and the influence of the singular position on the inverse solution process of the robot arm can be reduced.

在机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,即∈>∈min的情况下,表征机械臂不处于奇异位型,可以控制所述矩阵阻尼值为0,如公式(7)所示:When the minimum singular value of the robot in the current joint configuration is greater than the minimum singular value of the robot in the singular configuration, that is, ∈>∈ min , it indicates that the robot is not in a singular configuration, and the matrix damping value can be controlled to be 0, as shown in formula (7):

J+=JT*(J*JT)-1 (7)J + = J T *(J*J T ) -1 (7)

在公式(7)中,由于机械臂当前不处于奇异位型,可以无需对所述雅可比矩阵进行缩放调整,即可获得适用于逆解过程的雅可比矩阵。In formula (7), since the robot arm is not currently in a singular configuration, it is not necessary to scale the Jacobian matrix to obtain a Jacobian matrix suitable for the inverse solution process.

在步骤S104中,根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量。In step S104, the position control amount of the robot arm joint is determined according to the current joint position of the robot arm and the speed control amount of the robot arm joint.

所述机械臂当前的关节位置可以通过机械臂的位置传感器确定,表征机械臂关节在当前控制周期内的位置状态,所述机械臂关节的位置控制量,表征为了使机械臂末端以期望速度达到所述期望位置,在当前控制周期内机械臂关节所需的移动位置。The current joint position of the robotic arm can be determined by the position sensor of the robotic arm, which represents the position state of the robotic arm joint in the current control cycle. The position control amount of the robotic arm joint represents the required moving position of the robotic arm joint in the current control cycle in order to make the end of the robotic arm reach the expected position at the expected speed.

在一个示例中,所述机械臂关节的位置控制量可以通过公式(8)确定:In one example, the position control amount of the robot arm joint can be determined by formula (8):

qcmd=qa+dqc*δt (8)q cmd = q a + dq c * δt (8)

在公式(8)中,qcmd表征机械臂关节的位置控制量,qa表征机械臂当前的关节位置,dqc表征机械臂关节的速度控制量,σt表征预设的机械臂控制周期(例如0.5ms或0.8ms)。In formula (8), q cmd represents the position control amount of the robot arm joint, q a represents the current joint position of the robot arm, dq c represents the speed control amount of the robot arm joint, and σt represents the preset robot arm control period (for example, 0.5 ms or 0.8 ms).

优选的,为了确保机械臂关节的位置控制量符合实际的关节位置限位,还可以在确定所述机械臂关节的位置控制量之前,预先确定机械臂关节的限位速度并以此更新所述机械臂关节的速度控制量。Preferably, in order to ensure that the position control amount of the robot arm joint conforms to the actual joint position limit, the limit speed of the robot arm joint can be pre-determined before determining the position control amount of the robot arm joint and the speed control amount of the robot arm joint can be updated accordingly.

具体的,可以根据雅可比矩阵、机械臂的自由度和机械臂的至少一个关节位置,确定机械臂关节的限位速度,并根据所述限位速度,更新所述机械臂关节的速度控制量,如公式(9)和公式(10)所示:Specifically, the limit speed of the joint of the robotic arm can be determined according to the Jacobian matrix, the degree of freedom of the robotic arm and at least one joint position of the robotic arm, and the speed control amount of the joint of the robotic arm can be updated according to the limit speed, as shown in formula (9) and formula (10):

dqcmd=dqc+dqb (10)dq cmd = dq c + dq b (10)

在公式(9)中,dqb表征机械臂关节的限位速度,N(q)表征所述雅可比矩阵J的零空间矩阵,kb表征预设的机械臂关节的限位调节参数,n表征机械臂的自由度,qmax表征机械臂关节的上边界位置,qmin表征机械臂关节的下边界位置,qmid表征机械臂关节的中点位置。In formula (9), dq b represents the limit speed of the robot arm joint, N(q) represents the null space matrix of the Jacobian matrix J, k b represents the preset limit adjustment parameter of the robot arm joint, n represents the degree of freedom of the robot arm, q max represents the upper boundary position of the robot arm joint, q min represents the lower boundary position of the robot arm joint, and q mid represents the midpoint position of the robot arm joint.

在公式(10)中,dqcmd表征更新后的机械臂关节的速度控制量,通过限位速度矫正机械臂关节的速度控制量,能够使得机械臂关节的位置控制量符合实际的关节位置限位,确保机械臂的关节移动方式符合实际,避免在关节移动至边界位置时刻易产生的逆解跳变问题。In formula (10), dq cmd represents the updated speed control amount of the robot joint. By correcting the speed control amount of the robot joint by the limit speed, the position control amount of the robot joint can be made to conform to the actual joint position limit, ensuring that the joint movement mode of the robot conforms to the actual situation and avoiding the inverse solution jump problem that is easy to occur when the joint moves to the boundary position.

在步骤S105中,根据所述机械臂关节的速度控制量和位置控制量,控制机械臂移动。In step S105, the movement of the robot arm is controlled according to the speed control amount and the position control amount of the joint of the robot arm.

将上述步骤中得到的机械臂关节的速度控制量以及机械臂关节的位置控制量下发至机械臂的关节控制器,以使机械臂在当前控制中期内完成对应的移动动作。并不断重复上述过程,以在每个控制周期内,根据所述机械臂关节的速度控制量和位置控制量对机械臂进行控制,直至机械臂末端最终以所述期望速度到达所述期望位置。The speed control amount of the robot joint and the position control amount of the robot joint obtained in the above steps are sent to the joint controller of the robot arm, so that the robot arm can complete the corresponding movement action in the current control medium term. The above process is repeated continuously, so that in each control cycle, the robot arm is controlled according to the speed control amount and the position control amount of the robot joint, until the end of the robot arm finally reaches the desired position at the desired speed.

本公开所述的方法,在每个控制周期内通过机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量,并据此逆解得到机械臂在当前控制周期的关节的相关控制参数。使得机械臂在每一个控制周期内均能够得到一个确定的关节控制参数,并在多个控制周期内进行逐步收敛,降低了单个控制周期内的计算耗时,此外,还通过所述奇异位置权重降低了机械臂奇异位置对逆解过程造成的求解失败等负面影响,提升了逆解计算结果的可靠性。The method disclosed in the present disclosure determines the speed control amount of the end of the robotic arm in each control cycle through the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, and obtains the relevant control parameters of the joints of the robotic arm in the current control cycle through inverse solution. The robotic arm can obtain a certain joint control parameter in each control cycle, and gradually converge in multiple control cycles, reducing the calculation time in a single control cycle. In addition, the singular position weight is used to reduce the negative impact of the singular position of the robotic arm on the inverse solution process, such as the failure of the solution, and improve the reliability of the inverse solution calculation results.

在一个可选的实施例中,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,还可以对所述期望位置进行预校正,以确保所述期望位置设置的合理性。In an optional embodiment, before determining the speed control amount of the robot arm end based on the relative position relationship between the current position of the robot arm end and the expected position, the expected speed and the singular position weight, the expected position can also be pre-corrected to ensure the rationality of the expected position setting.

首先,可以根据机械臂的最大长度以及预设的边界权重,确定机械臂能够达到的最大空间位置,响应于所述期望位置超出所述最大空间位置,对所述期望位置进行校正,以使所述期望位置处于所述最大空间位置内。First, the maximum spatial position that the robot arm can reach can be determined based on the maximum length of the robot arm and the preset boundary weight. In response to the expected position exceeding the maximum spatial position, the expected position is corrected to make the expected position within the maximum spatial position.

所述机械臂的最大长度,表征机械臂在每一个关节完全展开的情况下,即机械臂“伸直”情况下能够达到的最大长度,所述边界权重为机械臂最大长度的限缩系数,以使所述最大长度不包括机械臂处于奇异位置的情况,所述机械臂能够达到的最大空间位置,即为机械臂在排除奇异位置的情况下,能够达到的最大长度组成的空间位置集合,在一个示例中,所述最大空间位置表征机械臂末端所能达到的最远距离位置点集合组成的球面。The maximum length of the robotic arm represents the maximum length that the robotic arm can reach when each joint is fully extended, that is, when the robotic arm is "straightened". The boundary weight is the limitation coefficient of the maximum length of the robotic arm, so that the maximum length does not include the situation where the robotic arm is in a singular position. The maximum spatial position that the robotic arm can reach is the set of spatial positions composed of the maximum length that the robotic arm can reach excluding the singular position. In an example, the maximum spatial position represents a sphere composed of a set of position points at the farthest distance that the end of the robotic arm can reach.

在一个示例中,可以通过公式(11)确定所述机械臂末端的期望位置进行校正。In one example, the desired position of the end of the robotic arm may be determined by formula (11) for correction.

在公式(11)中,xd1表征校正后的期望位置,xd表征校正前的期望位置,Larm表征机械臂的最大长度,warm表征预设的边界权重,在所述期望位置超出所述最大空间位置,即xd>Larm*warm的情况下,对输入的期望位置进行校正,以使所述期望位置处于所述最大空间位置内。In formula (11), xd1 represents the expected position after correction, xd represents the expected position before correction, Larm represents the maximum length of the robot arm, and warm represents the preset boundary weight. When the expected position exceeds the maximum spatial position, that is, xd > Larm * warm , the input expected position is corrected so that the expected position is within the maximum spatial position.

之后,还可以获取预设的机械臂的工作空间位置,响应于所述期望位置超出所述工作空间位置,对所述期望位置进行校正,以使所述期望位置处于所述工作空间位置内。Afterwards, a preset working space position of the robot arm may be obtained, and in response to the expected position exceeding the working space position, the expected position may be corrected so that the expected position is within the working space position.

所述机械臂的工作空间位置,表征机械臂在实际工作环境中,机械臂末端所能达到的位置集合。在实际工作过程中,由于周边物体的干扰,机械臂末端通常无法在最大空间位置内顺利移动,可以通过公式(12)进一步校正所述期望位置The working space position of the robot arm represents the set of positions that the end of the robot arm can reach in the actual working environment. In the actual working process, due to the interference of surrounding objects, the end of the robot arm usually cannot move smoothly within the maximum spatial position. The expected position can be further corrected by formula (12):

在公式(12)中,xd2表征校正后的期望位置,xd表征校正前的期望位置,Sboud(x,y,z)表征预设的机械臂的工作空间位置,在所述期位置持超出所述工作空间位置,即xd>Sboud(x,y,z)的情况下,对输入的期望位置进行校正,以使所述期望位置处于所述工作空间位置内。In formula (12), xd2 represents the expected position after correction, xd represents the expected position before correction, Sboud (x, y, z) represents the preset working space position of the robot arm, and when the expected position exceeds the working space position, that is, xd > Sboud (x, y, z), the input expected position is corrected so that the expected position is within the working space position.

本公开所述的方法,通过对所述期望位置进行预校正,以确保所述期望位置设置的合理性,使得机械臂末端始终在最大空间位置以及工作空间位置内移动,实现对机械臂的空间限位。The method disclosed in the present invention pre-corrects the expected position to ensure the rationality of the setting of the expected position, so that the end of the robot arm always moves within the maximum spatial position and the working space position, thereby realizing the spatial limitation of the robot arm.

对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。For the aforementioned method embodiments, for the sake of simplicity of description, they are all expressed as a series of action combinations, but those skilled in the art should know that the present disclosure is not limited by the described order of actions, because according to the present disclosure, certain steps can be performed in other orders or simultaneously.

其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily required by the present disclosure.

与前述应用功能实现方法实施例相对应,本公开还提供了应用功能实现装置及相应的终端的实施例。Corresponding to the aforementioned application function implementation method embodiment, the present disclosure also provides an application function implementation device and a corresponding terminal embodiment.

本公开一示例性实施例示出的一种机械臂控制装置框图如图3所示,所述装置包括:A block diagram of a robot arm control device shown in an exemplary embodiment of the present disclosure is shown in FIG3 , and the device includes:

参数获取模块301,用于:获取机械臂末端的期望位置和机械臂末端处于所述期望位置时的期望速度;The parameter acquisition module 301 is used to: acquire the desired position of the end of the robot arm and the desired speed of the end of the robot arm when the end of the robot arm is at the desired position;

末端速度确定模块302,用于:根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量,其中,所述奇异位置权重与机械臂当前的关节位型相关;The terminal speed determination module 302 is used to determine the speed control amount of the terminal of the manipulator according to the relative position relationship between the current position of the terminal of the manipulator and the expected position, the expected speed and the singular position weight, wherein the singular position weight is related to the current joint configuration of the manipulator;

关节速度确定模块303,用于:根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;The joint speed determination module 303 is used to determine the speed control amount of the mechanical arm joint according to the speed control amount of the mechanical arm end;

关节位置确定模块304,用于:根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量;The joint position determination module 304 is used to determine the position control amount of the joint of the robotic arm according to the current joint position of the robotic arm and the speed control amount of the joint of the robotic arm;

机械臂控制模块305,用于:根据所述机械臂关节的速度控制量和位置控制量,控制机械臂移动。The robot arm control module 305 is used to control the movement of the robot arm according to the speed control amount and the position control amount of the robot arm joint.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括第一限位模块,用于:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the device further includes a first limit module, which is used to:

根据机械臂的最大长度以及预设的边界权重,确定机械臂能够达到的最大空间位置;Determine the maximum spatial position that the robot can reach based on the maximum length of the robot and the preset boundary weight;

响应于所述期望位置超出所述最大空间位置,对所述期望位置进行校正,以使所述期望位置处于所述最大空间位置内。In response to the desired position exceeding the maximum spatial position, the desired position is corrected so that the desired position is within the maximum spatial position.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括第二限位模块,用于:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the device further includes a second limit module for:

获取预设的机械臂的工作空间位置;Get the preset working space position of the robot arm;

响应于所述期望位置超出所述工作空间位置,对所述期望位置进行校正,以使所述期望位置处于所述工作空间位置内。In response to the desired position being outside the workspace position, the desired position is corrected so that the desired position is within the workspace position.

结合本公开的任一实施方式,所述装置还包括权重确定模块,用于:In combination with any embodiment of the present disclosure, the device further includes a weight determination module, which is used to:

响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述奇异位置权重为零;In response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the singular position weight is zero;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,且小于或等于机械臂在奇异位型的最大奇异值,所述奇异位置权重与当前关节位型的奇异值为正相关关系;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration and less than or equal to the maximum singular value of the robot arm in the singular configuration, the singular position weight is positively correlated with the singular value of the current joint configuration;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最大奇异值,所述奇异位置权重为一;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the maximum singular value of the robot arm in the singular configuration, the singular position weight is one;

其中,所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the Jacobian matrix of the joint configuration of the robotic arm and the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm.

结合本公开的任一实施方式,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括误差校正模块,用于:In combination with any embodiment of the present disclosure, before determining the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, the device also includes an error correction module for:

响应于所述相对位置关系超出预设位置阈值,对所述相对位置关系进行校正,以使所述相对位置关系处于所述预设位置阈值内。In response to the relative position relationship exceeding a preset position threshold, the relative position relationship is corrected so that the relative position relationship is within the preset position threshold.

结合本公开的任一实施方式,在所述关节速度确定模块根据机械臂末端的速度控制量确定机械臂关节的速度控制量时,具体用于:In combination with any embodiment of the present disclosure, when the joint speed determination module determines the speed control amount of the mechanical arm joint according to the speed control amount of the mechanical arm end, it is specifically used to:

基于雅可比矩阵和矩阵阻尼值,根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;Based on the Jacobian matrix and the matrix damping value, determining the speed control amount of the robot arm joint according to the speed control amount of the end of the robot arm;

其中,响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值与当前关节位型的奇异值为负相关关系;Wherein, in response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the matrix damping value is negatively correlated with the singular value of the current joint configuration;

响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值为零;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration, the matrix damping value is zero;

所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the joint configuration of the robot arm and the Jacobian matrix representing the mapping relationship between the speed control amount of the end of the robot arm and the speed control amount of the joint of the robot arm.

结合本公开的任一实施方式,在根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量前,所述装置还包括第三限位模块,用于:In combination with any embodiment of the present disclosure, before determining the position control amount of the mechanical arm joint according to the current joint position of the mechanical arm and the speed control amount of the mechanical arm joint, the device further includes a third limiting module for:

根据雅可比矩阵、机械臂的自由度和机械臂的至少一个关节位置,确定机械臂关节的限位速度,所述雅可比矩阵表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系;Determine the limit speed of the joint of the robotic arm according to the Jacobian matrix, the degree of freedom of the robotic arm and at least one joint position of the robotic arm, wherein the Jacobian matrix represents the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm;

根据所述限位速度,更新所述机械臂关节的速度控制量。According to the limit speed, the speed control amount of the robot arm joint is updated.

结合本公开的任一实施方式,所述机械臂的至少一个关节位置包括机械臂关节的上边界位置、机械臂关节的下边界位置,以及机械臂关节的中点位置。In combination with any embodiment of the present disclosure, the at least one joint position of the robotic arm includes an upper boundary position of the robotic arm joint, a lower boundary position of the robotic arm joint, and a midpoint position of the robotic arm joint.

结合本公开的任一实施方式,所述机械臂末端的速度控制量表征机械臂末端在当前控制周期的移动速度;In combination with any embodiment of the present disclosure, the speed control amount of the end of the robotic arm represents the moving speed of the end of the robotic arm in the current control cycle;

所述机械臂关节的速度控制量表征机械臂关节在当前控制周期的移动速度;The speed control amount of the robot arm joint represents the moving speed of the robot arm joint in the current control cycle;

所述机械臂关节的位置控制量表征机械臂关节在当前控制周期的移动位置。The position control amount of the robot arm joint represents the moving position of the robot arm joint in the current control cycle.

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。For the device embodiments, since they basically correspond to the method embodiments, the relevant parts can refer to the partial description of the method embodiments. The device embodiments described above are only schematic, wherein the units described above as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the disclosed solution. A person of ordinary skill in the art can understand and implement it without paying any creative work.

本说明书的运动控制装置的实施例可以应用在机械臂的计算机设备上,例如服务器或终端设备。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在运动控制的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。The embodiments of the motion control device of this specification can be applied to a computer device of a robot arm, such as a server or a terminal device. The device embodiments can be implemented by software, or by hardware or a combination of software and hardware. Taking software implementation as an example, as a device in a logical sense, the corresponding computer program instructions in the non-volatile memory are read into the memory and run by the processor of the motion control in which it is located.

从硬件层面而言,如图4所示,为本说明书实施例运动控制装置所在机械臂的一种硬件结构图,除了图4所示的处理器410、内存430、网络接口420、以及非易失性存储器440之外,实施例中装置所在的服务器或电子设备,通常根据该计算机设备的实际功能,还可以包括其他硬件,对此不再赘述。From the hardware level, as shown in Figure 4, there is a hardware structure diagram of the robotic arm where the motion control device of the embodiment of this specification is located. In addition to the processor 410, memory 430, network interface 420, and non-volatile memory 440 shown in Figure 4, the server or electronic device where the device is located in the embodiment may also include other hardware, usually according to the actual function of the computer device, which will not be described in detail.

本公开的另一实施例还提供了一种机械臂。机器臂包括存储器,用于存储处理器可执行指令;处理器,被配置为执行所述存储器中的可执行指令以实现本公开中提供的机械臂控制方法的步骤。Another embodiment of the present disclosure further provides a robotic arm. The robotic arm includes a memory for storing processor executable instructions; a processor configured to execute the executable instructions in the memory to implement the steps of the robotic arm control method provided in the present disclosure.

本公开的另一实施例还提供了一种电子设备。可选地,该电子设备包括机器人,机器人包括机械臂。机器人还包括存储器和处理器,存储器用于存储处理器可执行指令,处理器被配置为执行所述存储器中的可执行指令以实现本公开中提供的机械臂控制方法的步骤。Another embodiment of the present disclosure further provides an electronic device. Optionally, the electronic device includes a robot, and the robot includes a robotic arm. The robot also includes a memory and a processor, the memory is used to store processor-executable instructions, and the processor is configured to execute the executable instructions in the memory to implement the steps of the robotic arm control method provided in the present disclosure.

本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (21)

1.一种机械臂控制方法,其特征在于,所述方法包括:1. A robot arm control method, characterized in that the method comprises: 获取机械臂末端的期望位置和机械臂末端处于所述期望位置时的期望速度;Obtaining a desired position of the end of the robotic arm and a desired speed of the end of the robotic arm when the end of the robotic arm is at the desired position; 根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量,其中,所述奇异位置权重与机械臂当前的关节位型相关;Determine the speed control amount of the end of the robotic arm according to the relative position relationship between the current position of the end of the robotic arm and the expected position, the expected speed and the singular position weight, wherein the singular position weight is related to the current joint configuration of the robotic arm; 根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;Determining the speed control amount of the mechanical arm joint according to the speed control amount of the mechanical arm end; 根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量;According to the current joint position of the robot arm, the speed control amount of the robot arm joint determines the position control amount of the robot arm joint; 根据所述机械臂关节的速度控制量和位置控制量,控制机械臂移动。The movement of the robotic arm is controlled according to the speed control amount and the position control amount of the robotic arm joint. 2.根据权利要求1所述的方法,其特征在于,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述方法还包括:2. The method according to claim 1, characterized in that before determining the speed control amount of the end of the manipulator according to the relative position relationship between the current position of the end of the manipulator and the expected position, the expected speed and the singular position weight, the method further comprises: 根据机械臂的最大长度以及预设的边界权重,确定机械臂能够达到的最大空间位置;Determine the maximum spatial position that the robot can reach based on the maximum length of the robot and the preset boundary weight; 响应于所述期望位置超出所述最大空间位置,对所述期望位置进行校正,以使所述期望位置处于所述最大空间位置内。In response to the desired position exceeding the maximum spatial position, the desired position is corrected so that the desired position is within the maximum spatial position. 3.根据权利要求1或2所述的方法,其特征在于,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述方法还包括:3. The method according to claim 1 or 2, characterized in that before determining the speed control amount of the end of the manipulator according to the relative position relationship between the current position of the end of the manipulator and the expected position, the expected speed and the singular position weight, the method further comprises: 获取预设的机械臂的工作空间位置;Get the preset working space position of the robot arm; 响应于所述期望位置超出所述工作空间位置,对所述期望位置进行校正,以使所述期望位置处于所述工作空间位置内。In response to the desired position being outside the workspace position, the desired position is corrected so that the desired position is within the workspace position. 4.根据权利要求1所述的方法,其特征在于,所述方法还包括:4. The method according to claim 1, characterized in that the method further comprises: 响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述奇异位置权重为零;In response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the singular position weight is zero; 响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,且小于或等于机械臂在奇异位型的最大奇异值,所述奇异位置权重与当前关节位型的奇异值为正相关关系;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration and less than or equal to the maximum singular value of the robot arm in the singular configuration, the singular position weight is positively correlated with the singular value of the current joint configuration; 响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最大奇异值,所述奇异位置权重为一;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the maximum singular value of the robot arm in the singular configuration, the singular position weight is one; 其中,所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the Jacobian matrix of the joint configuration of the robotic arm and the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm. 5.根据权利要求1所述的方法,其特征在于,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述方法还包括:5. The method according to claim 1, characterized in that before determining the speed control amount of the end of the manipulator according to the relative position relationship between the current position of the end of the manipulator and the expected position, the expected speed and the singular position weight, the method further comprises: 响应于所述相对位置关系超出预设位置阈值,对所述相对位置关系进行校正,以使所述相对位置关系处于所述预设位置阈值内。In response to the relative position relationship exceeding a preset position threshold, the relative position relationship is corrected so that the relative position relationship is within the preset position threshold. 6.根据权利要求1所述的方法,其特征在于,所述根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量,包括:6. The method according to claim 1, characterized in that the determining the speed control amount of the robot arm joint according to the speed control amount of the robot arm end comprises: 基于雅可比矩阵和矩阵阻尼值,根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;Based on the Jacobian matrix and the matrix damping value, determining the speed control amount of the robot arm joint according to the speed control amount of the end of the robot arm; 其中,响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值与当前关节位型的奇异值为负相关关系;Wherein, in response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the matrix damping value is negatively correlated with the singular value of the current joint configuration; 响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值为零;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration, the matrix damping value is zero; 所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the joint configuration of the robot arm and the Jacobian matrix representing the mapping relationship between the speed control amount of the end of the robot arm and the speed control amount of the joint of the robot arm. 7.根据权利要求1所述的方法,其特征在于,在根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量前,所述方法还包括:7. The method according to claim 1, characterized in that before determining the position control amount of the mechanical arm joint according to the current joint position of the mechanical arm and the speed control amount of the mechanical arm joint, the method further comprises: 根据雅可比矩阵、机械臂的自由度和机械臂的至少一个关节位置,确定机械臂关节的限位速度,所述雅可比矩阵表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系;Determine the limit speed of the joint of the robotic arm according to the Jacobian matrix, the degree of freedom of the robotic arm and at least one joint position of the robotic arm, wherein the Jacobian matrix represents the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm; 根据所述限位速度,更新所述机械臂关节的速度控制量。According to the limit speed, the speed control amount of the robot arm joint is updated. 8.根据权利要求1所述的方法,其特征在于,所述机械臂的至少一个关节位置包括机械臂关节的上边界位置、机械臂关节的下边界位置,以及机械臂关节的中点位置。8. The method according to claim 1 is characterized in that the at least one joint position of the robotic arm includes an upper boundary position of the robotic arm joint, a lower boundary position of the robotic arm joint, and a midpoint position of the robotic arm joint. 9.根据权利要求1所述的方法,其特征在于,所述机械臂末端的速度控制量表征机械臂末端在当前控制周期的移动速度;9. The method according to claim 1, characterized in that the speed control amount of the end of the robot arm represents the moving speed of the end of the robot arm in the current control cycle; 所述机械臂关节的速度控制量表征机械臂关节在当前控制周期的移动速度;The speed control amount of the robot arm joint represents the moving speed of the robot arm joint in the current control cycle; 所述机械臂关节的位置控制量表征机械臂关节在当前控制周期的移动位置。The position control amount of the robot arm joint represents the moving position of the robot arm joint in the current control cycle. 10.一种机械臂控制装置,其特征在于,所述装置包括:10. A robot arm control device, characterized in that the device comprises: 参数获取模块,用于:获取机械臂末端的期望位置和机械臂末端处于所述期望位置时的期望速度;A parameter acquisition module is used to: acquire the desired position of the end of the robot arm and the desired speed of the end of the robot arm when the end of the robot arm is at the desired position; 末端速度确定模块,用于:根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量,其中,所述奇异位置权重与机械臂当前的关节位型相关;The terminal speed determination module is used to determine the speed control amount of the terminal of the manipulator according to the relative position relationship between the current position of the terminal of the manipulator and the expected position, the expected speed and the singular position weight, wherein the singular position weight is related to the current joint configuration of the manipulator; 关节速度确定模块,用于:根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;A joint speed determination module, used to: determine the speed control amount of the mechanical arm joint according to the speed control amount of the mechanical arm end; 关节位置确定模块,用于:根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量;The joint position determination module is used to determine the position control amount of the robot arm joint according to the current joint position of the robot arm and the speed control amount of the robot arm joint; 机械臂控制模块,用于:根据所述机械臂关节的速度控制量和位置控制量,控制机械臂移动。The robot arm control module is used to control the movement of the robot arm according to the speed control amount and the position control amount of the robot arm joint. 11.根据权利要求10所述的装置,其特征在于,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括第一限位模块,用于:11. The device according to claim 10, characterized in that before determining the speed control amount of the end of the robot arm according to the relative position relationship between the current position of the end of the robot arm and the expected position, the expected speed and the singular position weight, the device further comprises a first limit module for: 根据机械臂的最大长度以及预设的边界权重,确定机械臂能够达到的最大空间位置;Determine the maximum spatial position that the robot can reach based on the maximum length of the robot and the preset boundary weight; 响应于所述期望位置超出所述最大空间位置,对所述期望位置进行校正,以使所述期望位置处于所述最大空间位置内。In response to the desired position exceeding the maximum spatial position, the desired position is corrected so that the desired position is within the maximum spatial position. 12.根据权利要求10或11所述的装置,其特征在于,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括第二限位模块,用于:12. The device according to claim 10 or 11, characterized in that before determining the speed control amount of the end of the robot arm according to the relative position relationship between the current position of the end of the robot arm and the expected position, the expected speed and the singular position weight, the device further comprises a second limit module for: 获取预设的机械臂的工作空间位置;Get the preset working space position of the robot arm; 响应于所述期望位置超出所述工作空间位置,对所述期望位置进行校正,以使所述期望位置处于所述工作空间位置内。In response to the desired position being outside the workspace position, the desired position is corrected so that the desired position is within the workspace position. 13.根据权利要求10所述的装置,其特征在于,所述装置还包括权重确定模块,用于:13. The device according to claim 10, characterized in that the device further comprises a weight determination module, configured to: 响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述奇异位置权重为零;In response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the singular position weight is zero; 响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,且小于或等于机械臂在奇异位型的最大奇异值,所述奇异位置权重与当前关节位型的奇异值为正相关关系;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration and less than or equal to the maximum singular value of the robot arm in the singular configuration, the singular position weight is positively correlated with the singular value of the current joint configuration; 响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最大奇异值,所述奇异位置权重为一;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the maximum singular value of the robot arm in the singular configuration, the singular position weight is one; 其中,所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the Jacobian matrix of the joint configuration of the robotic arm and the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm. 14.根据权利要求10所述的装置,其特征在于,在根据机械臂末端当前位置与期望位置的相对位置关系、所述期望速度和奇异位置权重,确定机械臂末端的速度控制量前,所述装置还包括误差校正模块,用于:14. The device according to claim 10, characterized in that before determining the speed control amount of the end of the manipulator according to the relative position relationship between the current position of the end of the manipulator and the expected position, the expected speed and the singular position weight, the device further comprises an error correction module for: 响应于所述相对位置关系超出预设位置阈值,对所述相对位置关系进行校正,以使所述相对位置关系处于所述预设位置阈值内。In response to the relative position relationship exceeding a preset position threshold, the relative position relationship is corrected so that the relative position relationship is within the preset position threshold. 15.根据权利要求10所述的装置,其特征在于,在所述关节速度确定模块根据机械臂末端的速度控制量确定机械臂关节的速度控制量时,具体用于:15. The device according to claim 10, characterized in that when the joint speed determination module determines the speed control amount of the mechanical arm joint according to the speed control amount of the mechanical arm end, it is specifically used to: 基于雅可比矩阵和矩阵阻尼值,根据所述机械臂末端的速度控制量确定机械臂关节的速度控制量;Based on the Jacobian matrix and the matrix damping value, determining the speed control amount of the robot arm joint according to the speed control amount of the end of the robot arm; 其中,响应于机械臂在当前关节位型的最小奇异值小于或等于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值与当前关节位型的奇异值为负相关关系;Wherein, in response to the minimum singular value of the robot arm in the current joint configuration being less than or equal to the minimum singular value of the robot arm in the singular configuration, the matrix damping value is negatively correlated with the singular value of the current joint configuration; 响应于机械臂在当前关节位型的最小奇异值大于机械臂在奇异位型的最小奇异值,所述矩阵阻尼值为零;In response to the minimum singular value of the robot arm in the current joint configuration being greater than the minimum singular value of the robot arm in the singular configuration, the matrix damping value is zero; 所述奇异值根据机械臂的关节位型与表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系的雅可比矩阵确定。The singular values are determined according to the joint configuration of the robot arm and the Jacobian matrix representing the mapping relationship between the speed control amount of the end of the robot arm and the speed control amount of the joint of the robot arm. 16.根据权利要求10所述的装置,其特征在于,在根据机械臂当前的关节位置,机械臂关节的速度控制量确定机械臂关节的位置控制量前,所述装置还包括第三限位模块,用于:16. The device according to claim 10, characterized in that before determining the position control amount of the mechanical arm joint according to the current joint position of the mechanical arm and the speed control amount of the mechanical arm joint, the device further comprises a third limiting module for: 根据雅可比矩阵、机械臂的自由度和机械臂的至少一个关节位置,确定机械臂关节的限位速度,所述雅可比矩阵表征机械臂末端的速度控制量和机械臂关节的速度控制量之间映射关系;Determine the limit speed of the joint of the robotic arm according to the Jacobian matrix, the degree of freedom of the robotic arm and at least one joint position of the robotic arm, wherein the Jacobian matrix represents the mapping relationship between the speed control amount of the end of the robotic arm and the speed control amount of the joint of the robotic arm; 根据所述限位速度,更新所述机械臂关节的速度控制量。According to the limit speed, the speed control amount of the robot arm joint is updated. 17.根据权利要求10所述的装置,其特征在于,所述机械臂的至少一个关节位置包括机械臂关节的上边界位置、机械臂关节的下边界位置,以及机械臂关节的中点位置。17. The device according to claim 10, characterized in that the at least one joint position of the robotic arm includes an upper boundary position of the robotic arm joint, a lower boundary position of the robotic arm joint, and a midpoint position of the robotic arm joint. 18.根据权利要求10所述的装置,其特征在于,所述机械臂末端的速度控制量表征机械臂末端在当前控制周期的移动速度;18. The device according to claim 10, characterized in that the speed control amount of the end of the robot arm represents the moving speed of the end of the robot arm in the current control cycle; 所述机械臂关节的速度控制量表征机械臂关节在当前控制周期的移动速度;The speed control amount of the robot arm joint represents the moving speed of the robot arm joint in the current control cycle; 所述机械臂关节的位置控制量表征机械臂关节在当前控制周期的移动位置。The position control amount of the robot arm joint represents the moving position of the robot arm joint in the current control cycle. 19.一种机械臂,其特征在于,所述机械臂包括:19. A robotic arm, characterized in that the robotic arm comprises: 存储器,用于存储处理器可执行指令;A memory for storing processor executable instructions; 处理器,被配置为执行所述存储器中的可执行指令以实现权利要求1至9任一项所述方法的步骤。A processor configured to execute the executable instructions in the memory to implement the steps of the method according to any one of claims 1 to 9. 20.一种电子设备,包括机械臂;20. An electronic device comprising a mechanical arm; 存储器,用于存储处理器可执行指令;A memory for storing processor executable instructions; 处理器,被配置为执行所述存储器中的可执行指令以实现权利要求1至9任一项所述方法的步骤。A processor configured to execute the executable instructions in the memory to implement the steps of the method according to any one of claims 1 to 9. 21.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至9任一项所述的方法的步骤。21. A computer-readable storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.
CN202211485585.1A 2022-11-24 2022-11-24 Robotic arm control method, device, robotic arm and readable storage medium Pending CN118106945A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211485585.1A CN118106945A (en) 2022-11-24 2022-11-24 Robotic arm control method, device, robotic arm and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211485585.1A CN118106945A (en) 2022-11-24 2022-11-24 Robotic arm control method, device, robotic arm and readable storage medium

Publications (1)

Publication Number Publication Date
CN118106945A true CN118106945A (en) 2024-05-31

Family

ID=91212551

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211485585.1A Pending CN118106945A (en) 2022-11-24 2022-11-24 Robotic arm control method, device, robotic arm and readable storage medium

Country Status (1)

Country Link
CN (1) CN118106945A (en)

Similar Documents

Publication Publication Date Title
CN109591020B (en) A distributed cooperative control method and device for adaptive maneuverability optimization of multi-redundant manipulators
JP2020098567A5 (en)
CN113977583B (en) Robot rapid assembly method and system based on proximal strategy optimization algorithm
WO2018227820A1 (en) Method and device for controlling manipulator movement, storage medium, and terminal device
CN114954724A (en) Motion control method and system of four-foot single-arm operation robot
WO2022141268A1 (en) Humanoid robot control method, computer device, and storage medium
CN114800532B (en) Manipulator control parameter determination method, device, equipment, medium and robot
CN118106945A (en) Robotic arm control method, device, robotic arm and readable storage medium
CN116423516A (en) Mechanical arm track planning method and system based on improved white shark optimization algorithm
CN112847373B (en) Robot track synchronous control method and computer readable storage medium
CN118357914A (en) Single rope suspension mechanical arm-oriented inverse kinematics solving method, device, equipment and medium
CN111113417B (en) A distributed multi-robot cooperative motion control method and system
JP6500492B2 (en) Robot controller
CN114043487B (en) A composite robot control method, device, electronic device and storage medium
TWI834991B (en) Control method for moving route of controllable device and control system thereof
CN117572768A (en) Legged robot planning and control method, device, robot and storage medium
CN118809611A (en) A mechanical arm control method and device for engineering equipment
WO2023026589A1 (en) Control apparatus, control method, and control program
CN116382310B (en) Artificial potential field path planning method and system
CN114706306B (en) Servo driving system control method and device and electronic equipment
CN118192252A (en) Control method, device, equipment and storage medium of fiber placement robot
CN118832590A (en) Mechanical arm control method, device, equipment and storage medium
CN119217381A (en) Mechanical arm PID control method based on BP neural network and related device
CN107885194B (en) An unmanned exploration device and its control method and system
CN118744431A (en) A variable impedance control method for a robotic arm based on an energy tank containing an obstacle function

Legal Events

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