Control method of robot arm, robot arm and surgical robot

By collecting torque and torque data and using the Jacobian matrix to control the rotation of redundant robotic arms, the problem of collisions in complex environments with redundant robotic arms is solved, and safe robotic arm operation is achieved.

CN115844537BActive Publication Date: 2026-04-21HARBIN SIZHERUI INTELLIGENT MEDICAL EQUIP CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HARBIN SIZHERUI INTELLIGENT MEDICAL EQUIP CO LTD
Filing Date
2022-11-03
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

When redundant robotic arms perform target tasks in complex and ever-changing environments, they are prone to collisions with dynamic and static obstacles in space, and existing technologies struggle to effectively control the movement of their redundant joints.

Method used

By collecting the torque and torque applied by the operator to the robotic arm control end, admittance control is performed using the Jacobian matrix to obtain the rotation angle of redundant joints. Combined with the included angle and torque direction, a lifting or lowering signal is generated to control the rotation direction and angle of redundant joints and avoid collisions.

Benefits of technology

It enables control of motor movement at redundant joints of the robotic arm according to the operator's intention, avoiding collisions between redundant joints and obstacles in complex environments, and is suitable for robotic arm control in the surgical field.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115844537B_ABST
    Figure CN115844537B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a control method of a mechanical arm, a mechanical arm and a surgical robot, the method comprising: collecting a torque applied by an operator on a control end of the mechanical arm; inputting the collected torque into a Jacobian matrix of the mechanical arm to determine a torque mapped to a redundant joint of the mechanical arm, performing mobility control according to the torque at the redundant joint to obtain a rotation angle of the redundant joint; obtaining an included angle formed by the redundant joint projected on a surface of an adjacent joint by the control end of the mechanical arm; collecting a torque applied by the operator on the control end of the mechanical arm, judging a direction of the torque compared with a displacement direction of a landmark position, generating a lifting signal if the displacement direction is lifting, generating a lowering signal if the displacement direction is lowering; determining a rotation direction of the redundant joint in combination with the received lifting signal or lowering signal, and rotating the redundant joint according to the rotation direction and the rotation angle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of intelligent robot technology, and more specifically, to a control method for a robotic arm, a robotic arm, and a surgical robot. Background Technology

[0002] Assuming the dimension of the robot arm joint space is n and the dimension of the operation space is m, when n > m, the robot arm is considered a redundant robot arm. A redundant robot arm is a robot arm with redundant degrees of freedom. Compared to ordinary robot arms, redundant robot arms have more flexible motion characteristics and can perform additional tasks such as changing the robot arm's rotation angle while performing vertical extension tasks. However, when performing target tasks in complex and changing environments, the redundant joints of a redundant robot arm may collide with dynamic and static obstacles in space. Therefore, a control method for the robot arm is needed. Summary of the Invention

[0003] One objective of this disclosure is to provide a new technical solution for robotic arm control.

[0004] According to a first aspect of this disclosure, a method for controlling a robotic arm is provided, comprising:

[0005] The system collects the torque applied by the operator to the robotic arm's control end; inputs the collected torque into the robotic arm's Jacobian matrix to determine the torque mapped to the redundant joints of the robotic arm; performs admittance control based on the torque at the redundant joints to obtain the rotation angle of the redundant joints; acquires the included angle formed by the projection of the redundant joint onto the surfaces of adjacent joints, where the included angle is the angle formed clockwise by the 0-degree line and the projection line with the connection point between the surfaces of the redundant joint and the adjacent joint as the origin, and the adjacent joint is the joint closest to the robotic arm's control end among those adjacent to the redundant joint; collects the torque applied by the operator to the robotic arm's control end, and determines the direction of the torque relative to the displacement direction of the marker point; if the displacement direction is upward, a lift signal is generated; if the displacement direction is downward, a descent signal is generated; based on the included angle and combined with the received lift or descent signal, the rotation direction of the redundant joint is determined, and the redundant joint rotates according to the rotation direction and rotation angle.

[0006] Optionally, the method further includes: determining whether the included angle is between 0 and 180 degrees; if it is, and a lifting signal is received, the redundant joint rotates counterclockwise according to the rotation angle; if it is, and a lowering signal is received, the redundant joint rotates clockwise according to the rotation angle; determining whether the included angle is between 180 and 360 degrees; if it is, and a lifting signal is received, the redundant joint rotates clockwise according to the rotation angle; if it is, and a lowering signal is received, the redundant joint rotates counterclockwise according to the rotation angle; determining whether the included angle is 0 degrees or 360 degrees; if it is 0 degrees or 360 degrees, and a lifting signal is received, the redundant joint reaches its limit and does not move; if it is 0 degrees or 360 degrees, and a lowering signal is received, the redundant joint rotates clockwise or counterclockwise according to the rotation angle; determining whether the included angle is 180 degrees; if it is 180 degrees, and a lifting signal is received, the redundant joint rotates clockwise or counterclockwise according to the rotation angle; if it is 180 degrees, and a lowering signal is received, the redundant joint reaches its limit and does not move.

[0007] Optionally, the included angle is 0 degrees or 360 degrees, and after receiving the descent signal, it further includes: if the robotic arm is the left arm, the redundant joint rotates clockwise according to the rotation angle; if the robotic arm is the right arm, the redundant joint rotates counterclockwise according to the rotation angle.

[0008] Optionally, the included angle is 180 degrees, and after receiving the lifting signal, the method further includes: if the robotic arm is the left arm, the redundant joint rotates counterclockwise according to the rotation angle; if the robotic arm is the right arm, the redundant joint rotates clockwise according to the rotation angle.

[0009] Optionally, when the redundant joint rotates according to the rotation direction and rotation angle, the method further includes: acquiring the pose of the robotic arm end effector and the structural parameters of the robotic arm; constructing constraint equations for the joint angles based on the pose of the robotic arm end effector and the structural parameters of the robotic arm to obtain joint motion variables; constructing a joint workspace fitness function and an arm-to-arm distance fitness function based on the pose of the robotic arm end effector, the structural parameters of the robotic arm, the rotation direction of the redundant joints, and the rotation angle of the redundant joints, inputting the joint motion variables, and obtaining the joint positions of all joints except the redundant joints; and controlling the other joints to move according to their joint positions.

[0010] Optionally, before inputting the collected torque into the Jacobian matrix of the robotic arm, the method further includes: performing gravity compensation and / or sensor zero-point drift compensation on the collected torque.

[0011] Optionally, before the robotic arm control end acquires the included angle between the redundant joint projections on adjacent joint surfaces, it further includes:

[0012] Determine whether the collected torque is greater than a preset threshold. If it is greater than the preset threshold, obtain the included angle.

[0013] Optionally, before the robotic arm control terminal acquires the included angle formed by the redundant joint projections on the adjacent joint surfaces, it further includes: the robotic arm control terminal receiving a start / stop signal, the start / stop signal being used to control the start or stop of acquiring the included angle formed by the redundant joint projections on the adjacent joint surfaces.

[0014] According to a second aspect of this disclosure, a robotic arm is also provided, comprising: a force sensor disposed at the control end of the robotic arm for acquiring torque applied by an operator; a torque sensor disposed at the control end of the robotic arm for acquiring torque applied by an operator; an actuator for receiving the torque acquired by the force sensor, inputting the acquired torque into the Jacobian matrix of the robotic arm, mapping it to obtain the torque at a redundant joint, and obtaining the rotation angle of the redundant joint using admittance control; simultaneously for receiving the torque acquired by the torque sensor and generating a lift signal or a descent signal; and further for acquiring the included angle formed by the projection of the redundant joint onto the surfaces of adjacent joints, wherein the included angle is the angle formed clockwise by the 0-degree line and the projection line with the connection point between the surfaces of the redundant joint and the adjacent joint as the origin, and the adjacent joint is the joint closest to the control end of the robotic arm among those adjacent to the redundant joint; determining the rotation direction of the redundant joint based on the included angle and in combination with the received lift signal or descent signal, and the redundant joint reaching its movement position according to the rotation direction and rotation angle.

[0015] According to a third aspect of this disclosure, a robotic arm is also provided, including a force sensor, a torque sensor, and a controller; the force sensor is disposed at the control end of the robotic arm for acquiring torque applied by an operator; the torque sensor is disposed at the control end of the robotic arm for acquiring torque applied by an operator; the controller includes a processor and a memory, the memory storing a program executable on the processor, the program being executed by the processor to implement the steps of the method described in the first aspect of this disclosure.

[0016] According to a fourth aspect of this disclosure, a surgical robot is also provided, comprising: a robotic arm as described in the second or third aspect of the present invention.

[0017] According to a fifth aspect of this disclosure, an electronic device is also provided, including a memory and a processor, the memory being used to store a computer program; the processor being used to execute the computer program to implement the method according to a first aspect of this disclosure.

[0018] According to a sixth aspect of this disclosure, a computer-readable storage medium is also provided, on which a computer program is stored, which, when executed by a processor, implements the method according to a first aspect of this disclosure.

[0019] One beneficial effect of this disclosure is that by acquiring the torque and torque applied to the robotic arm by the operator, the purpose of controlling the motor movement at the redundant joints of the robotic arm according to the operator's intention can be achieved, thereby achieving the purpose of adjusting the movement of the redundant joints of the robotic arm.

[0020] Another beneficial effect of this disclosure is that it is applicable to the surgical field, and controls the movement of motors at redundant joints of the robotic arm according to the operator's intention, so as to avoid collisions between redundant joints and dynamic or static obstacles in space when performing target tasks in complex and ever-changing environments.

[0021] Other features and advantages of the embodiments of this disclosure will become clear from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description

[0022] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the present disclosure and, together with their description, serve to explain the principles of the embodiments of the present disclosure.

[0023] Figure 1 It is a schematic diagram of the implementation environment and system composition structure of a robotic arm control method according to an embodiment.

[0024] Figure 2 This is a flowchart illustrating a control method for a robotic arm according to one embodiment;

[0025] Figure 3 This is a flowchart illustrating the determination of the rotation direction of a redundant joint according to another embodiment;

[0026] Figure 4 This is a schematic diagram of the redundant joint angle according to one embodiment;

[0027] Figure 5 This is a schematic diagram of the redundant joint angle according to yet another embodiment;

[0028] Figure 6 This is a schematic diagram of the torque direction according to one embodiment;

[0029] Figure 7 This is a controller structure diagram according to one embodiment. Detailed Implementation

[0030] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of the invention.

[0031] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit the invention or its application or use.

[0032] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0033] In all the examples shown and discussed herein, any specific values ​​should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.

[0034] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0035] One application scenario of this disclosure is to adjust the position of redundant joints of the robotic arm of a laparoscopic surgical robot to avoid collisions between the redundant joints and dynamic or static obstacles in space when performing target tasks in complex and ever-changing environments.

[0036] The robotic arm disclosed herein is a seven-degree-of-freedom (DOF) robotic arm. For robotic arms, the concept of redundancy is relative and defined according to the specific task. For a planar task, a commonly used six-axis (six-DOF) robotic arm is also redundant. However, in more cases, we adopt a case that considers all tasks, because three-dimensional space can be described using six degrees of freedom. We usually refer to a seven-axis (seven-DOF) robotic arm as a redundant robotic arm. The extra degrees of freedom of the redundant robotic arm are used to achieve additional tasks such as obstacle avoidance, singularity avoidance, joint limit avoidance, joint torque optimization, and increased operability. Furthermore, since a human arm also has seven degrees of freedom, from a bionics perspective, a redundant robotic arm is also quite practical. The seven-DOF robotic arm used in this disclosure is a pairwise perpendicular type (SRS), which is obtained by adding a roll axis between the second and third joints of a six-DOF configuration, forming a relationship where each adjacent pair of axes is perpendicular to each other.

[0037] For redundant robotic arms, their Jacobian matrix has a null space. Effectively utilizing this null space can achieve various subtasks, such as improving maneuverability, torque optimization, obstacle avoidance, and singularity avoidance. When a redundant robotic arm moves, due to the redundancy, the phenomenon where its joints still move even when the end effector's pose is determined is called the robotic arm's "self-motion," also known as self-motion within the Jacobian matrix null space. Self-motion in the null space does not affect the pose of the end effector.

[0038] During the development process, the inventors discovered that when adjusting the posture of the end effector of the robotic arm during preoperative preparation for laparoscopic surgery, there is a problem that redundant joints may come into contact with the human body or other obstacles. In order to ensure that the redundant joints of the robotic arm do not collide with obstacles when performing target tasks in complex and ever-changing environments, one possible implementation method is to obtain the torque and torque applied to the robotic arm by the operator, and then control the movement of the motors at the redundant joints of the robotic arm according to the operator's intention, thereby achieving the purpose of adjusting the movement of the redundant joints of the robotic arm.

[0039] To address the technical problems existing in the above embodiments, the inventors propose a control method for a robotic arm, comprising: collecting the torque applied by the operator to the control end of the robotic arm; inputting the collected torque into the Jacobian matrix of the robotic arm to determine the torque mapped to the redundant joints of the robotic arm; performing admittance control according to the torque at the redundant joints to obtain the rotation angle of the redundant joints; and obtaining the included angle formed by the projection of the redundant joints onto the surfaces of adjacent joints at the control end of the robotic arm, wherein the included angle is the angle formed clockwise by the 0-degree line and the projection line with the connection point between the redundant joint and the surface of the adjacent joint as the origin. The 0-mark line is a line extending outward from the origin, and the direction of the 0-mark line is preset before the robotic arm leaves the factory; the adjacent joint is the joint that is closer to the control end of the robotic arm among multiple joints adjacent to the redundant joint; the torque applied by the operator to the control end of the robotic arm is collected, and the direction of the torque is determined relative to the displacement direction of the marker point. If the displacement direction is upward, a lifting signal is generated; if the displacement direction is downward, a falling signal is generated; the rotation direction of the redundant joint is determined by combining the received lifting or falling signal, and the redundant joint rotates according to the rotation direction and rotation angle.

[0040] The control method, robotic arm, and surgical robot of the present disclosure, on the one hand, achieve the purpose of controlling the motor movement at the redundant joints of the robotic arm according to the operator's intention by acquiring the torque and torque applied to the robotic arm by the operator, thereby achieving the purpose of adjusting the movement of the redundant joints of the robotic arm.

[0041] The control method, robotic arm, and surgical robot of the present disclosure are applicable to the surgical field. They control the movement of motors at redundant joints of the robotic arm according to the operator's intention, so as to avoid collisions between redundant joints and dynamic or static obstacles in space when performing target tasks in complex and ever-changing environments.

[0042] <Implementation Environment and Hardware Configuration>

[0043] Figure 1 This is a schematic diagram of the composition of a control system for a robotic arm that can be applied according to one embodiment. For example... Figure 1As shown, the system includes a force sensor 100, a torque sensor 200, and a controller 300. The force sensor 100 is disposed at the control end of the robotic arm and is used to collect the torque applied by the operator. The torque sensor 200 is disposed at the control end of the robotic arm and is used to collect the torque applied by the operator. The controller 300 includes a processor and a memory. The memory stores a program that can run on the processor. When the program is executed by the processor, it implements the steps of the method as described in the first aspect of this disclosure.

[0044] refer to Figure 1 This system can be applied to the scenario of robotic arms in laparoscopic surgery robots. By setting force sensors 100, torque sensors 200, and controllers 300 at the control end of the robotic arm, it can adjust the position of redundant joints of the robotic arm, thereby avoiding collisions between redundant joints and dynamic or static obstacles in space when performing target tasks in complex and changing environments. In this embodiment, the robotic arm is formed by combining multiple joints, and the formed robotic arm has a head end and an end end. The movement of each joint is controlled by the robotic arm control end set at the head end of the robotic arm, so as to control the interaction between the end end of the robotic arm and the outside world.

[0045] In this embodiment, the force sensor 100 is a device that converts the magnitude of force into a relevant electrical signal. Force is the direct cause of changes in the motion of matter. The force sensor 100 can detect mechanical quantities such as tension, tensile force, compressive force, weight, torque, internal stress, and strain. Specific devices include metal strain gauges, pressure sensors, etc., which have become indispensable core components in power equipment, engineering machinery, various machine tools, and industrial automation systems.

[0046] In one example, the force sensor 100 mainly consists of three parts:

[0047] 1. Force-sensitive element (i.e., elastomer, commonly made of aluminum alloy, alloy steel and stainless steel).

[0048] 2. Conversion element (most commonly a resistance strain gauge).

[0049] 3. Circuitry (usually includes enameled wire, PCB board, etc.)

[0050] In this embodiment, the torque sensor 200 is divided into two main categories: dynamic and static. The dynamic torque sensor can also be called a torque sensor, torque-speed sensor, non-contact torque sensor, or rotational torque sensor. The torque sensor 200 detects torsional torque on various rotating or non-rotating mechanical components. The torque sensor 200 converts the physical change in torque into a precise electrical signal. The torque sensor 200 can be used in the manufacture of viscometers and electric (pneumatic, hydraulic) torque wrenches, offering advantages such as high accuracy, fast frequency response, high reliability, and long lifespan.

[0051] In this embodiment, the controller 300 maintains signal communication with the force sensor 100 and the torque sensor 200 respectively. The controller 300 is used to receive the torque collected by the force sensor 100, input the collected torque into the Jacobian matrix of the robotic arm to obtain the torque at the redundant joint, and obtain the rotation angle of the redundant joint using admittance control. At the same time, it is used to receive the torque collected by the torque sensor 200, generate a lifting signal or a lowering signal, and determine the rotation direction of the redundant joint according to the included angle and the received lifting signal or lowering signal. The redundant joint reaches the movement position of the redundant joint according to the rotation direction and rotation angle.

[0052] The included angle formed by the redundant joint projections on the surfaces of adjacent joints is obtained by the controller of the robotic arm.

[0053] The position of the torque direction marker is zeroed by the encoder. By comparing the zero point with the collected torque, the rotation direction relative to the marker is obtained, and a lifting signal or a lowering signal is generated.

[0054] A robot is a multi-input multi-output motion system. To better control its motion, the relationship between the robot's maneuver space and joint space must be precisely calculated. Therefore, after obtaining the structural data of a seven-DOF robot, its Jacobian matrix is ​​established. The structural data of the seven-DOF robot includes its shape, joint dimensions, and joint mass.

[0055] In one example, the system also includes: a button 400 connected to the controller 300;

[0056] The button 400 is used to control the start or stop of acquiring the included angle formed by the projection of the current redundant joint onto the surface of the adjacent joint, thereby realizing the start and stop of redundant joint control.

[0057] In the embodiments of this disclosure, the memory of the controller 300 is used to store a computer program that controls the processor of the controller 300 to operate in order to implement the control method of the robotic arm according to any embodiment. Those skilled in the art can design the computer program based on the scheme of the embodiments of this disclosure. How the computer program controls the processor to operate is well known in the art and will not be described in detail here.

[0058] Hereinafter, various embodiments and examples according to the present invention will be described with reference to the accompanying drawings.

[0059] <Method Implementation>

[0060] Figure 2 This is a flowchart illustrating a control method for a robotic arm according to one embodiment. The main components of this embodiment are a force sensor 100, a torque sensor 200, and a controller 300 installed at the control end of the robotic arm.

[0061] like Figure 2 As shown, the control method of the robotic arm in this embodiment may include the following steps S210. S250:

[0062] Step S210: Collect the torque applied by the operator to the control end of the robotic arm.

[0063] In this embodiment, see Figure 1 As shown, a force sensor 100 is installed at the control end of the robotic arm. The force sensor 100 collects the torque applied to the control end of the robotic arm, so as to obtain the target data more intuitively and conveniently.

[0064] Step S220: Based on the torque obtained in step S210, the collected torque is input into the Jacobian matrix of the robotic arm to determine the torque mapped to the redundant joints of the robotic arm. Admittance control is performed according to the torque at the redundant joints to obtain the rotation angle of the redundant joints.

[0065] The Jacobian matrix is ​​defined as the mapping matrix for the transmission of force and torque to the end-effector's operating space.

[0066] In this embodiment, the method for solving the velocity Jacobian matrix is ​​as follows:

[0067] Position differentiation method: Direct differentiation of the equations of motion;

[0068] Vector product method: A vector method for solving problems, with a simple expression form;

[0069] Differential transformation method: differential motion relative to a moving coordinate system;

[0070] Velocity recursion method: recursively derive the linear velocity and angular velocity of each link from the base.

[0071] In admittance control, the next motion is determined by the existing trajectory deviation and contact force. Therefore, this is a control method that inputs contact force and outputs motion. The joint admittance control equations are established as follows:

[0072]

[0073] In the formula This is the joint moment matrix. For redundant joint mass, Angular acceleration, For damping, This represents the rotation angle.

[0074] In this embodiment, the torque at the redundant joint is obtained by mapping and decomposing the torque, and the rotation angle of the redundant joint is obtained by performing admittance control based on the torque at the redundant joint.

[0075] Step S230: Obtain the included angle formed by the projection of the redundant joint onto the surface of the adjacent joint. The included angle is the angle formed clockwise by the 0-degree line and the projection line with the connection point between the surfaces of the redundant joint and the adjacent joint as the origin. The adjacent joint is the joint closest to the control end of the robotic arm among the joints adjacent to the redundant joint.

[0076] In this embodiment, see Figure 4 As shown, the robotic arm control end obtains the included angle of the redundant joint projection on the adjacent joint surface, and the included angle is between 0° and 180° at this time.

[0077] In one embodiment, see Figure 5 As shown, the robotic arm control end obtains the included angle of the redundant joint projection on the adjacent joint surface, and the included angle is between 180° and 360° at this time.

[0078] The robotic arm control unit records the robotic arm's external structure data after the robotic arm is manufactured and calibrates the 0-degree mark of the included angle on the surfaces of adjacent joints before the robotic arm begins operation. Upon receiving control commands from redundant joints, it acquires the current included angle. The robotic arm is formed by combining multiple joints, and has a head end and an end end. The robotic arm control unit, located at the head end, controls the movement of each joint to achieve interaction between the end end of the robotic arm and the outside world. The joints of the robotic arm are connected sequentially; therefore, there may be two adjacent redundant joints. In this embodiment, the joint closest to the robotic arm control unit among the multiple joints adjacent to the redundant joint is selected.

[0079] In one embodiment, before the robotic arm control end acquires the included angle of the redundant joint projection on the adjacent joint surfaces in step S230, the control method of the robotic arm may further include the following steps:

[0080] Determine whether the collected torque is greater than a preset threshold. If it is greater than the preset threshold, obtain the current included angle.

[0081] Setting a preset threshold for torque is to prevent the robot's elbow joint from rotating due to the sensor collecting minute signals such as zero-position error or the sensor's own weight.

[0082] If the torque collected by force sensor 100 is not greater than the preset threshold, it indicates that the robot has not received a control signal and does not need to respond. Therefore, when the collected torque is not greater than the preset threshold, the control end of the robotic arm does not respond to adjust the position of redundant joints.

[0083] As can be seen from the above steps, by setting a preset threshold for torque, minute signals such as zero-position error and sensor weight can be shielded, preventing malfunctions caused by these minute signals leading to redundant joint movements.

[0084] In one embodiment, before the robotic arm control end acquires the included angle of the redundant joint projection on the adjacent joint surfaces in step S230, the control method of the robotic arm may further include the following steps:

[0085] The robotic arm control terminal receives start / stop signals, which are used to control the start or stop of acquiring the included angle formed by the projection of the current redundant joint onto the surfaces of adjacent joints.

[0086] By setting button 400 to be electrically connected to the controller, the start / stop signal can be manually input to the controller to control it to obtain the included angle formed by the projection of redundant joints on the surfaces of adjacent joints. This operation can also prevent erroneous operation caused by minute signals.

[0087] Step S240: Collect the torque applied by the operator to the control end of the robotic arm, and determine the direction of the torque relative to the displacement direction of the marker point. If the displacement direction is upward, generate a lifting signal; if the displacement direction is downward, generate a downward signal.

[0088] See Figure 6 As shown, before the robotic arm begins operation, the encoder on the robotic arm's control end is used to mark a zero point, setting a certain point on the force sensor as a marker. Based on the torque applied manually to the torque sensor, the displacement direction relative to the marker point is determined to be either upward or downward, and a corresponding command is generated. This upward or downward command represents a physical control signal output by the operator based on the relative position of the obstacle and the redundant joint. Given that the rotation angle of the redundant joint is known, the redundant joint intelligently performs clockwise / counterclockwise rotation operations according to this physical control signal.

[0089] A marker point is set, and two indicator arrows (up and down) are placed on the knob of the torque sensor. The operator can quickly operate the sensor knob to determine whether the robotic arm needs to be raised or lowered. The knob's appearance is not limited to a circle; it can also be triangular, quadrilateral, arc-shaped, wavy, or other geometric shapes. After each operation, when the operator releases their grip, the knob automatically returns to its initial position. During the return process, the control connection is automatically disconnected, and the torque change during the return process will not affect the robotic arm.

[0090] Step S250: Based on the included angle and the received lifting or lowering signal, determine the rotation direction of the redundant joint. The redundant joint then moves to its designated position according to the rotation direction and angle. Specifically, when the redundant joint is between 0 and 180 degrees, the lifting signal indicates that the redundant joint will rotate in the direction of decreasing angle, and the lowering signal indicates that the redundant joint will rotate in the direction of increasing angle. When the redundant joint is between 180 and 360 degrees, the lifting signal indicates that the redundant joint will rotate in the direction of increasing angle, and the lowering signal indicates that the redundant joint will rotate in the direction of decreasing angle.

[0091] See Figure 3 As shown, determining the rotation direction of the redundant joint in step S250 includes the following steps:

[0092] Determine if the included angle is between 0 and 180 degrees. If it is, and a lifting signal is received, the redundant joint rotates counterclockwise according to the rotation angle to reach the redundant joint's movement position. If it is, and a lowering signal is received, the redundant joint rotates clockwise according to the rotation angle to reach the redundant joint's movement position.

[0093] Determine if the included angle is between 180 and 360 degrees. If it is, and a lifting signal is received, the redundant joint rotates clockwise according to the rotation angle to reach the redundant joint's movement position. If it is, and a lowering signal is received, the redundant joint rotates counterclockwise according to the rotation angle to reach the redundant joint's movement position.

[0094] Determine whether the included angle is 0 degrees or 360 degrees. If it is 0 degrees or 360 degrees and a lifting signal is received, the redundant joint reaches the limit and does not move. If it is 0 degrees or 360 degrees and a lowering signal is received, the redundant joint rotates clockwise or counterclockwise according to the rotation angle to reach the movement position of the redundant joint.

[0095] Determine if the included angle is 180 degrees. If it is 180 degrees and a lifting signal is received, the redundant joint rotates clockwise or counterclockwise according to the rotation angle to reach the movement position of the redundant joint. If it is 180 degrees and a lowering signal is received, the redundant joint reaches the limit and does not move.

[0096] Since the seven-DOF robotic arm is a bionic arm, it has the prerequisite of mimicking either the left or right arm. The right arm's movement path is defined as the range from 0° to 180°, while the left arm's movement path is the range from 180° to 360°. If the robotic arm is at the 0° position, applying an upward signal from the control end will cause it to return beyond the limit, and the robotic arm will not move. Similarly, when the robotic arm is at the 180° position, it will not continue to move downwards. Based on this, if the included angle is 0 degrees or 360 degrees, and a downward signal is received, it is determined whether the robotic arm is the left arm. If it is the left arm, the redundant joints rotate clockwise according to the rotation angle; if it is not the left arm, the redundant joints rotate counterclockwise according to the rotation angle.

[0097] If the included angle is 180 degrees and a lifting signal is received, determine whether the robotic arm is the left arm. If it is the left arm, the redundant joint rotates counterclockwise according to the rotation angle; if it is not the left arm, the redundant joint rotates clockwise according to the rotation angle.

[0098] As can be seen from the above steps S210 to S250, the method of this embodiment can achieve the purpose of controlling the motor movement at the redundant joints of the robotic arm according to the operator's intention after obtaining the torque and torque applied by the operator to the robotic arm. This achieves the purpose of adjusting the movement of the redundant joints of the robotic arm and avoids collisions between the redundant joints and dynamic or static obstacles in the space when performing target tasks in complex and ever-changing environments.

[0099] In one embodiment, the method may further include the following steps:

[0100] Before inputting the collected torque into the Jacobian matrix of the robotic arm, gravity compensation and / or sensor zero-point drift compensation are performed on the collected torque.

[0101] The compensation parameters used for gravity compensation and / or sensor zero-point drift compensation are pre-calibrated. For example, before the robotic arm leaves the factory or during routine maintenance, multiple sets of robotic arm end-effector poses are adjusted and data collected by the force sensor 100 are recorded to perform gravity compensation and sensor zero-point drift compensation for the sensor and its connectors.

[0102] In this embodiment, the force component is obtained by gravity compensation and / or sensor zero-point drift compensation from the data collected by the force sensor 100. and torque components Force components Includes three gravitational components , , Force component caused by zero-position drift , , Torque components Including the torque component generated by gravity , , Torque component caused by zero-position drift , , The 12 compensation parameters obtained through gravity compensation and / or sensor zero-point drift compensation are then transmitted to the controller.

[0103] After receiving the compensation parameters, calculate the compensated force matrix. and moment matrix As shown below:

[0104]

[0105] in:

[0106]

[0107]

[0108] In the formula The force components obtained after compensation include the force components after gravity compensation and the force components after zero-position drift. The torque component obtained after compensation includes the torque component after gravity compensation and the torque component after zero-position drift; The force matrix after compensation. This is the compensated torque matrix.

[0109] In one embodiment, during the control of the redundant joints, the robotic arm's control end simultaneously calculates the angles of the remaining joints to ensure that the end effector's pose remains unchanged. That is, the method may also include the following steps:

[0110] While the redundant joint reaches its motion position according to the rotation direction and rotation angle, the pose of the end effector and the structural parameters of the robotic arm are obtained.

[0111] Based on the pose of the robotic arm's end effector and the structural parameters of the robotic arm, constraint equations for the joint angles are constructed to obtain the joint motion variables;

[0112] The constraint equation for the joint angle is: Where f is the forward kinematics equation of the robotic arm, and θ i For joint motion variables, This is the current pose of the instrument's end effector.

[0113] Based on the pose of the robotic arm's end effector, the robotic arm's structural parameters, the rotation direction of redundant joints, and the rotation angle of redundant joints, a joint workspace fitness function and an arm-to-arm distance fitness function are constructed. By inputting joint motion variables, the joint positions of all joints except for redundant joints are obtained.

[0114] The fitness function is constructed using the sum of squared residuals, and its expression is as follows:

[0115]

[0116] in: Let θ be the fitness function of the joint workspace, n be the number of joints, and θ be the fitness function of the joint workspace. i For joint motion variables, θ i 0 This represents the median range of motion of joint i. Let x be the arm spacing fitness function, k be the arm number, and x be the arm spacing fitness function. i y i z i This represents the spatial coordinates of the leftmost side of arm i.

[0117] Based on the obtained joint positions of all joints except for redundant joints, control the movement of the other joints according to their joint positions.

[0118] In one embodiment, the method may further include the following steps:

[0119] After obtaining the joint positions of all joints except for the redundant joints, a multi-objective intelligent search algorithm is used to solve for the joint motion and control the motion of each joint. In addition to manipulating the redundant joints, the algorithm synchronously adjusts other joints to ensure that the pose of the robot arm's end effector does not change.

[0120] The joint motion is solved using a multi-objective intelligent search algorithm, including but not limited to particle swarm optimization, genetic algorithms, ant colony optimization, and simulated annealing. By adjusting the motion of other joints, the robot's end-effector pose remains unchanged, ensuring patient safety. After the joint motion is completed, the end-effector torque signal is collected again to eliminate the influence of gravity and zero position, and then compared with a threshold to determine whether further adjustment is needed.

[0121] A fitness function is constructed based on the joint workspace and arm spacing to solve for the joint motion variables. This ensures that the joint workspace and arm spacing are adjusted simultaneously with the arm shape, preventing the joint from moving to the mechanical limit and avoiding collisions between robotic arms.

[0122] This disclosure proposes a control method for a robotic arm. Marker points and two up / down arrows are set on the torque sensor manipulator, allowing operators to quickly determine the required operation. Doctors no longer need to determine the direction of rotation; they only need to determine whether redundant joints need to rise or fall, reducing the possibility of misoperation. By collecting torque signals through a force sensor, the speed of the robot's joint rotation can be adjusted based on the magnitude of the torque signal, overcoming the limitations of traditional control methods that offer only a single speed and are difficult to fine-tune. This disclosure controls joint movement and adjusts the arm shape while ensuring the robot's end-effector pose remains unchanged, thus guaranteeing patient safety.

[0123] Figure 2 A flowchart illustrating a control method for a robotic arm according to one embodiment is provided. Figure 1 Taking the control system of the redundant joint shown as an example, the control method of the robotic arm in this embodiment is explained.

[0124] like Figure 2 As shown, the method of this embodiment may include the following steps:

[0125] The torque applied by the operator to the control end of the robotic arm is collected;

[0126] The collected torque is input into the Jacobian matrix of the robotic arm to determine the torque mapped to the redundant joints of the robotic arm. Admittance control is performed according to the torque at the redundant joints to obtain the rotation angle of the redundant joints.

[0127] Obtain the included angle formed by the projection of the redundant joint onto the surface of the adjacent joint, wherein the included angle is the angle formed clockwise by the 0 scale line and the projection line with the connection point between the surfaces of the redundant joint and the adjacent joint as the origin, and the adjacent joint is the joint closest to the control end of the robotic arm among the joints adjacent to the redundant joint.

[0128] The system collects the torque applied by the operator to the robotic arm control end, determines the direction of the torque relative to the rotation direction of the marker point, and generates a lifting signal if the rotation direction is upward and a descent signal if the rotation direction is downward.

[0129] The redundant joint is determined by judging the included angle and combining it with the received lifting or lowering signal. The direction of rotation of the redundant joint is determined, and the redundant joint reaches the movement position according to the direction and angle of rotation.

[0130] <Equipment Example>

[0131] Figure 1 This is a schematic block diagram of a device according to one embodiment. Figure 1 As shown, the robotic arm device may include a force sensor 100, a torque sensor 200, and a controller 300.

[0132] In one embodiment, the force sensor 100 can be used to acquire the torque applied by the operator;

[0133] The torque sensor 200 can be used to acquire the torque applied by the operator;

[0134] The controller 300 can receive the torque collected by the force sensor 100, input the collected torque into the Jacobian matrix of the robotic arm to obtain the torque at the redundant joint, and use admittance control to obtain the rotation angle of the redundant joint; at the same time, it can receive the torque collected by the torque sensor 200, generate a lifting signal or a lowering signal, and determine the rotation direction of the redundant joint based on the included angle and the received lifting signal or lowering signal, so that the redundant joint reaches the movement position of the redundant joint according to the rotation direction and rotation angle.

[0135] In one embodiment, a robotic arm includes: a force sensor disposed at the control end of the robotic arm for collecting torque applied by an operator; a torque sensor disposed at the control end of the robotic arm for collecting torque applied by an operator; and an actuator for receiving the torque collected by the force sensor, inputting the collected torque into the Jacobian matrix of the robotic arm, mapping it to obtain the torque at a redundant joint, and using admittance control to obtain the rotation angle of the redundant joint; simultaneously receiving the torque collected by the torque sensor and generating a lift signal or a descent signal; and also obtaining the included angle formed by the projection of the redundant joint onto the surfaces of adjacent joints, wherein the included angle is the angle formed clockwise by the 0-degree line and the projection line with the connection point between the surfaces of the redundant joint and the adjacent joint as the origin, and the adjacent joint is the joint closest to the control end of the robotic arm among those adjacent to the redundant joint; and determining the rotation direction of the redundant joint based on the included angle and the received lift signal or descent signal, and the redundant joint reaching its movement position according to the rotation direction and rotation angle.

[0136] Figure 7 This is a schematic diagram of the hardware structure of a controller according to another embodiment.

[0137] like Figure 7 As shown, the controller 300 includes a processor and a memory for storing an executable computer program, and the processor for executing methods as described in any of the above method embodiments under the control of the computer program.

[0138] Each module of the controller 300 described above can be implemented by the processor in this embodiment executing the computer program stored in the memory, or it can be implemented by other circuit structures, which are not limited here.

[0139] This invention can be a system, method, and / or computer program product. A computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for causing a processor to implement various aspects of the invention.

[0140] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example—but not limited to—electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination of the foregoing. The computer-readable storage media used herein are not to be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0141] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.

[0142] The computer program instructions used to perform the operations of this invention may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C++, etc., and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing state information from the computer-readable program instructions. This electronic circuitry can execute the computer-readable program instructions to implement various aspects of the invention.

[0143] Various aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0144] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0145] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0146] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions. It will be known to those skilled in the art that implementation in hardware, implementation in software, and implementation using a combination of software and hardware are equivalent.

[0147] The various embodiments of the present invention have been described above. These descriptions are exemplary and not exhaustive, and are not limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or technical improvements to the embodiments in the market, or to enable others skilled in the art to understand the embodiments disclosed herein. The scope of the invention is defined by the appended claims.

Claims

1. A control method of a robot arm, characterized by, include: The torque applied by the operator to the control end of the robotic arm is collected; The collected torque is input into the Jacobian matrix of the robotic arm to determine the torque mapped to the redundant joints of the robotic arm. Admittance control is performed according to the torque at the redundant joints to obtain the rotation angle of the redundant joints. Obtain the included angle formed by the projection of the redundant joint onto the surface of the adjacent joint, wherein the included angle is the angle formed clockwise by the 0 scale line and the projection line with the connection point between the surfaces of the redundant joint and the adjacent joint as the origin, and the adjacent joint is the joint closest to the control end of the robotic arm among the joints adjacent to the redundant joint. The system collects the torque applied by the operator to the control end of the robotic arm, determines the direction of the torque relative to the displacement direction of the marker point, and generates a lifting signal if the displacement direction is upward and a descent signal if the displacement direction is downward. Based on the included angle and the received lifting or lowering signal, the rotation direction of the redundant joint is determined, and the redundant joint rotates according to the rotation direction and rotation angle.

2. The method of claim 1, wherein, Determining the rotation direction of the redundant joint includes: Determine if the included angle is between 0 and 180 degrees. If it is, and a lifting signal is received, the redundant joint rotates counterclockwise according to the rotation angle; if it is, and a lowering signal is received, the redundant joint rotates clockwise according to the rotation angle. Determine if the included angle is between 180 and 360 degrees. If it is, and a lifting signal is received, the redundant joint rotates clockwise according to the rotation angle; if it is, and a lowering signal is received, the redundant joint rotates counterclockwise according to the rotation angle. Determine whether the included angle is 0 degrees or 360 degrees. If it is 0 degrees or 360 degrees and a lifting signal is received, the redundant joint reaches the limit and stops moving. If it is 0 degrees or 360 degrees and a lowering signal is received, the redundant joint rotates clockwise or counterclockwise according to the rotation angle. Determine if the included angle is 180 degrees. If it is 180 degrees and a lifting signal is received, the redundant joint rotates clockwise or counterclockwise according to the rotation angle. If it is 180 degrees and a lowering signal is received, the redundant joint reaches its limit and stops moving.

3. The method of claim 2, wherein, The included angle is 0 degrees or 360 degrees, and after receiving the descent signal, it also includes: If the robotic arm is the left arm, the redundant joints rotate clockwise according to the rotation angle; if the robotic arm is the right arm, the redundant joints rotate counterclockwise according to the rotation angle.

4. The method of claim 2, wherein, The included angle is 180 degrees, and after receiving the boost signal, it also includes: If the robotic arm is the left arm, the redundant joints rotate counterclockwise according to the rotation angle; if the robotic arm is the right arm, the redundant joints rotate clockwise according to the rotation angle.

5. The method of claim 1, wherein, When the redundant joint rotates according to the rotation direction and rotation angle, it also includes: Obtain the pose of the robotic arm's end effector and the structural parameters of the robotic arm; Based on the pose of the robotic arm's end effector and the structural parameters of the robotic arm, constraint equations for the joint angles are constructed to obtain the joint motion variables; Based on the pose of the robotic arm end effector, the structural parameters of the robotic arm, the rotation direction of redundant joints, and the rotation angle of redundant joints, a joint workspace fitness function and an arm spacing fitness function are constructed. By inputting joint motion variables, the joint positions of all joints except the redundant joints are obtained. Control the movement of other joints according to their joint positions.

6. The method of claim 1, wherein, Before inputting the collected torque into the Jacobian matrix of the robotic arm, the process also includes: Gravity compensation and / or sensor zero-point drift compensation are performed on the collected torque.

7. The method of claim 1, wherein, Before the robotic arm control terminal acquires the angle between the redundant joint projections on the adjacent joint surfaces, it also includes: Determine whether the collected torque is greater than a preset threshold. If it is greater than the preset threshold, obtain the included angle.

8. The method of claim 1, wherein, Before the robotic arm control terminal acquires the included angle formed by the redundant joint projections on the adjacent joint surfaces, it also includes: The robotic arm control terminal receives start / stop signals, which are used to control the start or stop of acquiring the included angle formed by the projection of redundant joints onto the surfaces of adjacent joints.

9. A robot arm, characterized in that include: Force sensors, installed at the control end of the robotic arm, are used to collect the torque applied by the operator; A torque sensor, installed at the control end of the robotic arm, is used to collect the torque applied by the operator. The actuator is used to receive the torque collected by the force sensor, input the collected torque into the Jacobian matrix of the robotic arm, map it to obtain the torque at the redundant joint, and use admittance control to obtain the rotation angle of the redundant joint. It is also used to receive torque collected by torque sensor and generate lifting or lowering signals; it is also used to obtain the included angle formed by the projection of redundant joint onto the surface of adjacent joint, wherein the included angle is the angle formed clockwise by the 0 mark line and the projection line with the connection point between the surface of redundant joint and adjacent joint as the origin, and the adjacent joint is the joint closest to the control end of the robot arm among the joints adjacent to redundant joint; based on the included angle and combined with the received lifting or lowering signals, the rotation direction of redundant joint is determined, and redundant joint reaches the movement position of redundant joint according to the rotation direction and rotation angle.

10. A robot arm, characterized in that, Includes force sensors, torque sensors, and controllers; The force sensor is installed at the control end of the robotic arm and is used to collect the torque applied by the operator. The torque sensor is installed at the control end of the robotic arm to collect the torque applied by the operator. The controller includes a processor and a memory, the memory storing a program that can run on the processor, the program being executed by the processor to implement the steps of the method as described in any one of claims 1-8.

11. A surgical robot, characterised in that, include: The robotic arm according to any one of claims 9-10.

12. An electronic device comprising a memory and a processor, the memory being configured to store a computer program; the processor being configured to execute the computer program to implement the method according to any one of claims 1-8.

13. A computer-readable storage medium storing a computer program thereon, the computer program implementing the method according to any one of claims 1-8 when executed by a processor.

Citation Information

Patent Citations

  • Control method of mechanical arm, mechanical arm and surgical robot

    CN115645060A