WO2023246576A1 - Robotic arm adjustment method, apparatus, electronic device and storage medium - Google Patents

Robotic arm adjustment method, apparatus, electronic device and storage medium Download PDF

Info

Publication number
WO2023246576A1
WO2023246576A1 PCT/CN2023/100137 CN2023100137W WO2023246576A1 WO 2023246576 A1 WO2023246576 A1 WO 2023246576A1 CN 2023100137 W CN2023100137 W CN 2023100137W WO 2023246576 A1 WO2023246576 A1 WO 2023246576A1
Authority
WO
WIPO (PCT)
Prior art keywords
joint
adjustment
redundant
robotic arm
joints
Prior art date
Application number
PCT/CN2023/100137
Other languages
French (fr)
Chinese (zh)
Inventor
薛晓杰
金鑫
李忠琪
Original Assignee
瑞龙诺赋(上海)医疗科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 瑞龙诺赋(上海)医疗科技有限公司 filed Critical 瑞龙诺赋(上海)医疗科技有限公司
Publication of WO2023246576A1 publication Critical patent/WO2023246576A1/en

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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/30Surgical robots
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/70Manipulators specially adapted for use in surgery
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • 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
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/70Manipulators specially adapted for use in surgery
    • A61B34/74Manipulators with manual electric input means
    • A61B2034/743Keyboards
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • This application relates to the technical field of surgical robot control, for example, to methods and devices for adjusting robotic arms, electronic equipment, and storage media.
  • the robotic arm of the surgical robot will keep moving due to the surgical steps. It is easy for the robotic arm to reach dangerous or difficult-to-operate areas, affecting the safety of the patient and the smooth progress of the surgery. Therefore, it is necessary to adjust the posture of the robotic arm away from the above-mentioned special areas when the operation is uninterrupted, the stamp card remains connected, and the instrument is in the current operating position, so as to ensure the normal progress of the operation.
  • the avoidance method based on the speed Jacobian space zero space controls the movement of the robotic arm so that the robotic arm is located in a safe area.
  • the present application provides a method, device, electronic equipment and storage medium for adjusting a robotic arm, so as to realize the adjustment of the robotic arm without interrupting the operation, thereby improving the safety and reliability of the robotic arm adjustment.
  • this application provides a method for adjusting a robotic arm, which method includes:
  • Position adjustment is performed on the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
  • this application also provides an adjustment device for a robotic arm, which device includes:
  • an adjustment direction determination module configured to determine the adjustment direction of each redundant joint in the plurality of joints of the robot arm when it is determined that the robot arm is located in or adjacent to an abnormal operating area
  • the first adjustment position determination module is configured to determine the first adjustment position of each redundant joint at the next moment based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint. ;
  • a second adjustment position determination module configured to determine a second adjustment position of each task joint in the plurality of joints except the redundant joint based on each first adjustment position
  • a position adjustment module configured to adjust the position of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
  • this application also provides an electronic device, which includes:
  • processors one or more processors
  • a storage device configured to store one or more programs
  • the one or more processors When the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the above-mentioned adjustment method of the robotic arm.
  • the present application also provides a computer-readable storage medium on which a computer program is stored.
  • the program is executed by a processor, the above-mentioned method for adjusting the robotic arm is implemented.
  • Figure 1 is a schematic flowchart of a method for adjusting a robotic arm provided by an embodiment of the present application
  • Figure 2 is a schematic flowchart of determining the adjustment direction of redundant joints provided by an embodiment of the present application
  • Figure 3A is a schematic structural diagram of a right-angle spatial adjustment of a robotic arm provided by an embodiment of the present application
  • Figure 3B is a schematic structural diagram of a rectangular coordinate adjustment coordinate system provided by an embodiment of the present application.
  • Figure 3C is a schematic structural diagram of a robotic arm corresponding to joint space adjustment provided by an embodiment of the present application.
  • Figure 3D is a schematic structural diagram of a joint space adjustment coordinate system provided by an embodiment of the present application.
  • Figure 4 is a schematic flowchart of determining a position conversion relationship provided by an embodiment of the present application.
  • Figure 5 is a schematic flowchart of another method for adjusting a robotic arm provided by an embodiment of the present application.
  • Figure 6 is a schematic structural diagram of a mechanical arm adjustment device provided by an embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
  • the method used in the relevant technology is: 1.
  • FIG. 1 is a flow chart of a method for adjusting a robotic arm provided by an embodiment of the present application. This embodiment can be applied to the situation of adjusting the position of a surgical robotic arm during surgery. The method may be performed by an adjustment device of the robotic arm, which may be implemented in software and/or hardware.
  • the method includes the following steps:
  • the normal operating area can be understood as the preset surgical robot operating area.
  • the abnormal operation area can be understood as the area other than the normal operation area, such as the area where the hospital bed or other objects are collided with or are about to be hit, squeezed, or are about to be hit during the operation.
  • the area where the patient or nurse is squeezed and the area where the robot arm's movement is limited can be understood as being located in or adjacent to the abnormal operating area, as well as other areas that affect the execution of the operation, or affect the posture of the operating object during the operation.
  • the areas can be understood as being located in or adjacent to abnormal areas. This embodiment does not limit the location and range of areas located in or adjacent to abnormal areas.
  • the normal operating area of the robotic arm in the surgical robot is determined, and the robotic arm position threshold range of the robotic arm is determined based on the position edge of the normal operating area.
  • the method of determining the position of the robotic arm may be to obtain the positions of multiple joints of the robotic arm, and determine the position of the robotic arm of the surgical robot based on a preset position conversion relationship between the positions of the multiple joints and the position of the robotic arm.
  • the method of determining that the robot arm is located in or near the abnormal operating area based on the robot arm position at the current moment and the robot arm position threshold may include: determining the robot arm according to the preset position conversion relationship and the robot arm position threshold. The joint position threshold range for each joint.
  • a preset position transformation relationship between the robot arm position and the joint position is obtained, and the joint position threshold range of each robot arm joint of the robot arm is determined based on the preset position transformation relationship and the robot arm position threshold.
  • the preset position conversion relationship can be an inverse kinematic position expression, that is, the robot arm position threshold is substituted as a parameter into the preset position inverse expression to obtain the joint position threshold range of each robot arm joint.
  • the preset position conversion relationship can also be a pre-trained conversion model, that is, the robot arm position threshold is input into the conversion model to obtain the joint position threshold range of each robot arm joint output by the model.
  • the joint position threshold range of each robot arm joint may also be determined based on other forms of preset position conversion relationships, which is not limited in this embodiment.
  • multiple joints are equipped with positioning sensors, and each joint is acquired based on a preset time interval.
  • the joint position of the joint so that the joint position of each joint at each moment can be determined.
  • the above method of determining whether the robotic arm is located in the abnormal operating area is only an example.
  • This embodiment can also directly obtain the position of the robotic arm, and directly determine whether the robotic arm is located in the abnormal area based on the position of the robotic arm. It can also be based on The determination method is selected according to the actual situation, and this embodiment does not limit the determination method.
  • the adjustment position of each joint is determined, thereby determining the adjustment position of the robotic arm.
  • the joints of the robotic arm include redundant joints and task joints.
  • the task joints are necessary joints during the operation
  • the redundant joints are the joints at the preset position before the operation. Their function is to maintain the preset angle between the robotic arms or the robotic arms and other objects during the operation, such as with the patient trolley. preset angles etc.
  • the technical solution of this embodiment first determines each redundant joint and each task joint in the robotic arm, and determines the first adjustment position of the redundant joint at the next moment. , and determine the second adjustment position of each task joint in the robotic arm based on the first adjustment position of the redundant joint, thereby adjusting the position of the robotic arm based on the first adjustment position and the second adjustment position.
  • the method of determining redundant joints among multiple joints may include: obtaining the number of constraints of the robotic arm in surgery and the number of joints of the multiple joints of the robotic arm; determining the redundant joints in the robotic arm based on the number of constraints and the number of joints quantity; determine the degree of influence of each joint on the adjusted position at the next moment based on the preset position conversion relationship; determine each redundant joint in multiple joints based on the number and degree of influence of redundant joints.
  • the degree of impact is used to characterize the degree of risk of joint collision, and can be used to determine joints that pose a greater risk of collision to the robotic arm.
  • the preset position conversion relationship between each joint and the manipulator is determined based on the kinematic relationship of the manipulator, and the collision risk of the manipulator for each joint for the adjusted position is determined based on the preset position conversion relationship.
  • Each redundant joint in the plurality of joints is determined based on the number of redundant joints and the degree of influence of each joint on the adjusted position.
  • the joint positions of multiple joints in the robotic arm are position A, position B, and position C, and the robotic arm includes two redundant joints.
  • position A and position in the robotic arm are determined.
  • Joint B has the greatest influence on adjusting the position.
  • the method for determining the adjustment direction of each redundant joint among the multiple joints of the robotic arm may include: for any redundant joint at the current moment, based on the current redundant joint and the non- The positional relationship of the normal operating area determines the direction corresponding to the current redundant joint when the robotic arm is far away from the abnormal operating area as the adjustment direction of the current redundant joint.
  • the direction corresponding to the current redundant joint when the robotic arm is away from the abnormal operating area is determined as the adjustment direction of the current redundant joint.
  • this embodiment takes two redundant joints as an example.
  • FIG 3A The robotic arm between redundant joint 1 and redundant joint 2 is far away from each other.
  • the direction of the abnormal area is upward adjustment; accordingly, it is mapped to the rectangular coordinate system as shown in Figure 3B.
  • the manipulator moves upward, the corresponding adjustment direction of the redundant joint is the adjustment direction of the redundant joint at the next moment.
  • redundant joint 1 in the process of determining the upward adjustment of the robotic arm, the adjustment direction of redundant joint 1 is upward; in order to ensure that the end posture and position of the instrument connected after redundant joint 2 remain unchanged, redundant joint 2 needs to be Adjust downward; correspondingly, mapped to the rectangular coordinate system as shown in Figure 3D, redundant joint 1 is adjusted upward and redundant joint 2 is adjusted downward.
  • the first adjustment position of each redundant joint at the next moment is determined based on the redundant joint position and adjustment direction of each redundant joint at the current moment.
  • the method of determining the first adjustment position of the redundant joint at the next moment may include: setting a preset adjustment speed of the redundant joint, and based on the redundant joint position, adjustment direction and preset adjustment speed, Determine the first adjustment position of the redundant joint at the next moment.
  • r i represents the first adjustment position of the redundant joint at the next moment
  • r i-1 represents the current adjustment position of the redundant joint.
  • vset represents the preset adjustment speed of the set redundant joint, where the preset adjustment speed includes the adjustment direction
  • ⁇ t represents the time interval between the current moment and the next moment.
  • the second adjustment position of each task joint in the plurality of joints except the redundant joint is determined based on each first adjustment position.
  • the method of determining the second adjustment position of each task joint in the plurality of joints may include: obtaining the constraints of the robotic arm during surgery; based on the constraints and each first adjustment position, determine the corresponding position of each task joint at the next moment. the second adjustment position.
  • the robotic arm of the surgical robot includes two configurations.
  • the adjustment arm and the tool arm perform task operations based on instructions; among them, the tool arm is responsible for controlling the movement of the instrument during the operation, and the adjustment arm is responsible for adjusting the surgical position and the posture of the robotic arm.
  • Another option is to have an integrated design of the robotic arm, that is, during the operation, the robotic arm simultaneously keeps the card-punching position stationary and performs task operations based on instructions. In order to adjust the manipulator away from the abnormal operating area during task operation, at least one redundant joint should be included in the entire manipulator.
  • the robot poke card i.e. fixed point
  • the adjustment constraint is to maintain the adjusted poke point position P RCM (x, y, z) and the before adjustment.
  • the robot poke card i.e. fixed point
  • the adjustment arm has n t joints. If it is necessary to keep the position of the stamping card unchanged, then n t ⁇ m RCM .
  • the tool arm has a total of n g joints. If it is necessary to ensure that the end position and posture of the instrument remain unchanged , then n g ⁇ m TCP .
  • all joints of the robotic arm should satisfy n ⁇ m RCM +m TCP .
  • each task is determined based on the adjustment constraints and the first adjustment position of each redundant joint at the next moment.
  • the second adjustment position corresponding to the joint.
  • the method for solving the above position transformation relationship can be obtained by geometric method, coordinate transformation method or numerical iteration method, thereby determining the second adjustment position of each task joint, together with the adjustment constraints and the first position of each redundant joint at the next moment. Adjust the position conversion relationship between positions.
  • the second adjustment position of each task joint can also be constructed through the neural network model, and the position conversion model between the adjustment constraints and the first adjustment position of each redundant joint at the next moment, and the position conversion model can be trained. , get the trained position conversion model.
  • the second adjustment position of each task joint is determined.
  • the above-mentioned process of determining the adjustment position uses analytical iterative operations or neural network model operations, which avoids numerical solutions and high-dimensional matrix operations, and improves calculation efficiency and accuracy.
  • the position of the robotic arm is adjusted based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
  • the position of the robotic arm is adjusted, and the adjusted robotic arm is obtained.
  • the technical solution of this embodiment is to determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm when it is determined that the robotic arm is located in or near an abnormal operating area; based on the current position of each redundant joint The position and adjustment direction of the redundant joint at a time determine the first adjustment position of the redundant joint at the next time; determine the second adjustment position of each task joint in the plurality of joints except the redundant joint based on each first adjustment position. ;Based on the first adjustment position of each redundant joint and the second adjustment position of each task joint, the position of the robotic arm is adjusted; it solves the problems of complex calculation process, large calculation error and poor anti-interference ability in related technologies. , realizing the adjustment of the robotic arm without interrupting the operation, improving the safety and reliability of the robotic arm adjustment.
  • FIG. 5 is a flow chart of another method for adjusting a robotic arm provided by an embodiment of the present application. This embodiment is executed on the basis of any technical solution in this application.
  • the robotic arm includes two sub-robot arms with independent functions; at any time When a sub-manipulator does not include redundant joints, the method also includes: based on the constraints of the robotic arm during surgery, determine the third adjustment position of each joint in the sub-manipulator that does not include redundant joints; correspondingly , the adjustment method of the manipulator includes: based on the first adjustment position of each redundant joint and the second adjustment position of each task joint in the sub-manipulator including the redundant joint, and the sub-machine that does not include the redundant joints The third adjustment position of each joint in the arm is used to adjust the position of the robotic arm.
  • the adjustment method of the robotic arm provided by this embodiment includes:
  • S220 Determine the first adjustment position of each redundant joint at the next moment based on the redundant joint position and adjustment direction of each redundant joint at the current moment.
  • the third adjustment position is to adjust the position of the mechanical arm.
  • the method for the third adjustment position of each joint in the sub-manipulator may include: determining the third adjustment position of each joint in the sub-manipulator excluding redundant joints based on the constraints of the robotic arm during surgery.
  • the method for solving the above position transformation relationship can be obtained by geometric method, coordinate transformation method or numerical iteration method, thereby determining the position transformation relationship between the third adjustment position of each joint at the next moment and the adjustment constraints.
  • the position conversion model between the third adjustment position of each joint at the next moment and the adjustment constraints can also be constructed through the neural network model, and the position conversion model can be trained. Get the trained position transformation model.
  • the third adjustment position of each joint at the next moment is determined.
  • the above-mentioned process of determining the adjustment position uses analytical iterative operations or neural network model operations, which avoids numerical solutions and high-dimensional matrix operations, and improves calculation efficiency and accuracy.
  • the third adjustment position of each joint in the robot arm is used to adjust the position of the robotic arm.
  • the position of the robotic arm is adjusted, and the adjusted robotic arm is obtained.
  • the technical solution of this embodiment is to determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm when it is determined that the robotic arm is located in or near an abnormal operating area; based on the current position of each redundant joint The position and adjustment direction of the redundant joint at a time determine the first adjustment position of the redundant joint at the next time; determine the second adjustment position of each task joint in the plurality of joints except the redundant joint based on each first adjustment position.
  • FIG. 6 is a schematic structural diagram of an adjustment device for a robotic arm provided by an embodiment of the present application.
  • the structure of the adjustment device of the robotic arm includes: an adjustment direction determination module 310, a first adjustment position determination module 320, a second adjustment position determination module 330 and a position adjustment module 340; wherein the adjustment direction determination module 310 is set In order to determine the adjustment direction of each redundant joint in the plurality of joints of the robot arm when it is determined that the robot arm is located in or adjacent to the abnormal operating area; the first adjustment position determination module 320 is configured to based on each The redundant joint position of the redundant joint at the current moment and the adjustment direction of each redundant joint determine the first adjustment position of each redundant joint at the next moment; the second adjustment position determination module 330 is configured to be based on Each first adjustment position determines a second adjustment position of each task joint in the plurality of joints except the redundant joint; the position adjustment module 340 is configured to be based on the position of each redundant joint.
  • the first adjustment position and the second adjustment position of each task joint are
  • the technical solution of this embodiment is to determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm when it is determined that the robotic arm is located in or adjacent to an abnormal operating area; based on each redundant joint The redundant joint position at the current moment and the adjustment direction of each redundant joint determine the first adjustment position of each redundant joint at the next moment; determine the first adjustment position of the multiple joints based on each first adjustment position.
  • the technology solves the problems of complex calculation process, large calculation error and poor anti-interference ability, and realizes the adjustment of the robotic arm without interrupting the operation, improving the safety and reliability of the robotic arm adjustment.
  • the device also includes:
  • the joint position threshold determination unit is configured to obtain the robot arm position threshold of the normal operating area of the robot arm before determining the adjustment direction of each redundant joint among the multiple joints of the robot arm, according to the preset
  • the position conversion relationship and the robot arm position threshold determine the joint position threshold range of each joint of the robot arm
  • the position comparison unit is configured to determine the joint position of each joint at the current moment, and compare the joint position with The joint position threshold range of each joint is compared for position
  • the abnormal operation area determination unit is configured to determine that if any joint position is not within the joint position threshold range of a joint, it is determined that the robotic arm is located in a non-normal operation area. within the normal operating area.
  • the adjustment direction determination module 310 includes:
  • the number of conditions and the number of joints obtaining unit is configured to obtain the number of constraints of the robotic arm during surgery and the number of joints of the multiple joints of the robotic arm; the redundant joint number determining unit is configured to obtain the number of constraints based on the constraints The number of conditions and the number of joints determine the number of redundant joints in the robotic arm; the influence degree determination unit is configured to determine the degree of influence of each joint on the adjusted position according to the preset position conversion relationship; the redundant joint determination unit is configured Each redundant joint in the plurality of joints is determined based on the number of redundant joints and the degree of influence.
  • the adjustment direction determination module 310 includes:
  • the adjustment direction determination unit is configured to, for any redundant joint at the current moment, based on the positional relationship between the current redundant joint and the abnormal operation area, when the robot arm is moved away from the abnormal operation area, the current redundant joint is moved away from the abnormal operation area.
  • the direction corresponding to the remaining joint is determined as the adjustment direction of the current redundant joint.
  • the first adjustment position determination module 320 includes:
  • the first adjustment position determination unit is configured to obtain the preset adjustment speed of the redundant joint, and determine the next position of the redundant joint based on the redundant joint position, the adjustment direction and the preset adjustment speed. The first adjustment position of the moment.
  • the second adjustment position determination module 330 includes:
  • the adjustment constraint acquisition unit is configured to acquire the constraints of the robotic arm during surgery; the second adjustment position determination unit is configured to determine the next position of each task joint based on the adjustment constraints and each first adjustment position. The second adjustment position corresponding to the time.
  • the robotic arm includes two sub-robot arms with independent functions; when any sub-robot arm does not include redundant joints, the device also includes:
  • the third adjustment position determination module is configured to determine the third adjustment position of each joint in the sub-manipulator excluding redundant joints based on the constraints of the robotic arm during surgery; accordingly, the position adjustment module 340 ,include:
  • a position adjustment unit configured to be based on the first adjustment position of each redundant joint and the second adjustment position of each task joint in the sub-manipulator that includes the redundant joint, and the position adjustment unit in the sub-manipulator that does not include the redundant joint.
  • the third adjustment position of each joint is used to adjust the position of the robotic arm.
  • the robot arm adjustment device provided by the embodiments of the present application can execute the robot arm adjustment method provided by any embodiment of the present application, and has functional modules and effects corresponding to the execution method.
  • the multiple units and modules included are only divided according to functional logic, but are not limited to the above divisions, as long as the corresponding functions can be realized; in addition, multiple functions
  • the names of the units are only for the convenience of distinguishing each other and are not used to limit the protection scope of the present application.
  • FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present application. 7 illustrates a block diagram of an exemplary electronic device 12 suitable for implementing embodiments of the present application.
  • the electronic device 12 shown in FIG. 7 is only an example and should not impose any restrictions on the functions and usage scope of the embodiments of the present application.
  • electronic device 12 is embodied in the form of a general purpose computing electronic device.
  • the components of electronic device 12 may include, but are not limited to: one or more processors or processing units 16, memory 28, and a bus 18 connecting various system components (including memory 28 and processing unit 16).
  • Bus 18 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a graphics accelerated port, a processor, or a local bus using any of a variety of bus structures.
  • these architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MAC) bus, Enhanced ISA bus, Video Electronics Standards Association (Video Electronics Standards) Association, VESA) local bus and Peripheral Component Interconnect (PCI) bus.
  • Electronic device 12 includes a variety of computer system readable media. These media can be any available media that can be accessed by electronic device 12, including volatile and nonvolatile media, removable and non-removable media.
  • Memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and/or cache 32.
  • Electronic device 12 may include other removable/non-removable, volatile/non-volatile computer system storage media.
  • storage system 34 may be configured to read and write to non-removable, non-volatile magnetic media (not shown in Figure 7, commonly referred to as a "hard drive”).
  • a disk drive configured to read and write to removable non-volatile disks (e.g., "floppy disks") and to removable non-volatile optical disks (e.g., Compact Discs) may be provided.
  • the memory 28 may include at least one program product having a set of (eg, at least one) program modules configured to perform the functions of embodiments of the present application.
  • a program/utility 40 having a set of (at least one) program modules 42 may be stored, for example, in memory 28 , each or a combination of these examples may include the implementation of a network environment.
  • Program modules 42 generally perform functions and/or methods in the embodiments described herein.
  • Electronic device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), may also communicate with one or more devices that enable a user to interact with electronic device 12, and/or with Any device (eg, network card, modem, etc.) that enables the electronic device 12 to communicate with one or more other computing devices. This communication may occur through an input/output (I/O) interface 22 .
  • the electronic device 12 can also communicate with one or more networks (such as a local area network (Local Area Network, LAN), a wide area network (Wide Area Network, WAN), and/or a public network, such as the Internet) through the network adapter 20. As shown in FIG.
  • network adapter 20 communicates with other modules of electronic device 12 via bus 18 .
  • bus 18 It should be understood that, although not shown in Figure 7, other hardware and/or software modules may be used in conjunction with electronic device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, disk arrays (Redundant Arrays of Independent Disks (RAID) systems, tape drives and data backup storage systems, etc.
  • RAID Redundant Arrays of Independent Disks
  • the processing unit 16 executes a variety of functional applications and obtains sample data by running programs stored in the memory 28, for example, implementing steps of a method for adjusting a robotic arm provided by an embodiment of the present invention.
  • the method for adjusting a robotic arm includes:
  • each redundant joint When it is determined that the robotic arm is located in or adjacent to the abnormal operating area, determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm; based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint to determine the first adjustment position of each redundant joint at the next moment; determine each of the plurality of joints except the redundant joint based on each first adjustment position.
  • the second adjustment position of the task joint position adjustment of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
  • processor can also implement the technical solution of the robot arm adjustment method provided by any embodiment of the present application.
  • This embodiment also provides a computer-readable storage medium on which a computer program is stored.
  • the program is executed by a processor, for example, the steps of the method for adjusting a robotic arm provided by the embodiment of the present invention are implemented. Adjustment methods include:
  • each redundant joint When it is determined that the robotic arm is located in or adjacent to the abnormal operating area, determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm; based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint to determine the first adjustment position of each redundant joint at the next moment; determine each of the plurality of joints except the redundant joint based on each first adjustment position.
  • the second adjustment position of the task joint position adjustment of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
  • the computer storage medium in the embodiment of the present application may be any combination of one or more computer-readable media.
  • the computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium.
  • the computer-readable storage medium may be, for example, but not limited to: an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination thereof. Examples of computer-readable storage media (a non-exhaustive list) include: electrical connections having one or more conductors, portable computer disks, hard drives, RAM, ROM, Erasable Programmable Read-Only Memory, EPROM or flash memory), optical fiber, CD-ROM, optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .
  • Program code embodied on a computer-readable medium can be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, radio frequency (Radio Frequency, RF), etc., or any suitable combination of the above.
  • any appropriate medium including but not limited to: wireless, wire, optical cable, radio frequency (Radio Frequency, RF), etc., or any suitable combination of the above.
  • Computer program code for performing operations of the present application may be written in one or more programming languages, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional Procedural programming language - such as "C" or similar programming language.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user computer through any kind of network, including a LAN or WAN, or may be connected to an external computer (eg, through the Internet using an Internet service provider).

Abstract

Disclosed in the present application are a robotic arm adjustment method, an apparatus, an electronic device and a storage medium. The method comprises: when it is determined that a robotic arm is located within or near an abnormal operating area, determining an adjustment direction for each redundant joint of a plurality of joints of the robotic arm; on the basis of a redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint, determining a first adjustment position of each redundant joint at a next moment; on the basis of each first adjustment position, determining a second adjustment position of each task joint of the plurality of joints except the redundant joints; and performing position adjustment on the robotic arm on the basis of the first adjustment position of each redundant joint and the second adjustment position of each task joint.

Description

机械臂的调整方法、装置、电子设备以及存储介质Adjustment method, device, electronic equipment and storage medium of robotic arm
本申请要求在2022年06月22日提交中国专利局、申请号为202210711797.0的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。This application claims priority to the Chinese patent application with application number 202210711797.0, which was submitted to the China Patent Office on June 22, 2022. The entire content of this application is incorporated into this application by reference.
技术领域Technical field
本申请涉及手术机器人控制技术领域,例如涉及机械臂的调整方法、装置、电子设备以及存储介质。This application relates to the technical field of surgical robot control, for example, to methods and devices for adjusting robotic arms, electronic equipment, and storage media.
背景技术Background technique
在采用手术机器人进行微创手术过程中,手术机器人的机械臂在手术期间会因手术步骤不停的移动,容易发生机械臂到达危险或不易操作的区域,影响患者的安全以及手术的顺利进行。因此需要在手术不间断、戳卡保持连接且器械处于当前操作位置的情况下,对机械臂姿态进行调整,远离上述特殊区域,从而保证手术的正常进行。In the process of minimally invasive surgery using surgical robots, the robotic arm of the surgical robot will keep moving due to the surgical steps. It is easy for the robotic arm to reach dangerous or difficult-to-operate areas, affecting the safety of the patient and the smooth progress of the surgery. Therefore, it is necessary to adjust the posture of the robotic arm away from the above-mentioned special areas when the operation is uninterrupted, the stamp card remains connected, and the instrument is in the current operating position, so as to ensure the normal progress of the operation.
相关技术在对机械臂进行调整的过程中采用:Related technologies are used in the process of adjusting the robotic arm:
1、移动机械臂末端的方法使机械臂位于安全区域。该技术在实施过程中存在下述技术问题:调整时需要中断手术;调整后需要操作人员和机械臂重新准备。1. Move the end of the robotic arm so that the robotic arm is in a safe area. There are the following technical problems during the implementation of this technology: the operation needs to be interrupted during adjustment; the operator and the robotic arm need to be re-prepared after adjustment.
2、基于速度雅可比空间零空间的回避方法操控机械臂移动,使机械臂位于安全区域。该技术在实施过程中存在下述技术问题:计算流程复杂、计算误差较大以及抗干扰能力差的问题,从而降低了手术的安全性和可靠性。2. The avoidance method based on the speed Jacobian space zero space controls the movement of the robotic arm so that the robotic arm is located in a safe area. There are the following technical problems during the implementation of this technology: complex calculation process, large calculation error, and poor anti-interference ability, thus reducing the safety and reliability of the surgery.
发明内容Contents of the invention
本申请提供一种机械臂的调整方法、装置、电子设备以及存储介质,以实现在不中断手术的情况下对机械臂进行调整,提高了机械臂调整的安全性和可靠性。The present application provides a method, device, electronic equipment and storage medium for adjusting a robotic arm, so as to realize the adjustment of the robotic arm without interrupting the operation, thereby improving the safety and reliability of the robotic arm adjustment.
第一方面,本申请提供了一种机械臂的调整方法,该方法包括:In a first aspect, this application provides a method for adjusting a robotic arm, which method includes:
在确定机械臂位于或临近非正常操作区域内的情况下,确定所述机械臂的多个关节中的每个冗余关节的调整方向;When it is determined that the robotic arm is located in or adjacent to an abnormal operating area, determine the adjustment direction of each redundant joint in the plurality of joints of the robotic arm;
基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置; Determine the first adjustment position of each redundant joint at the next moment based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint;
基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置;determining a second adjustment position of each task joint in the plurality of joints, except for redundant joints, based on each first adjustment position;
基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整。Position adjustment is performed on the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
第二方面,本申请还提供了一种机械臂的调整装置,该装置包括:In a second aspect, this application also provides an adjustment device for a robotic arm, which device includes:
调整方向确定模块,设置为在确定机械臂位于或临近非正常操作区域内的情况下,确定所述机械臂的多个关节中的每个冗余关节的调整方向;an adjustment direction determination module, configured to determine the adjustment direction of each redundant joint in the plurality of joints of the robot arm when it is determined that the robot arm is located in or adjacent to an abnormal operating area;
第一调整位置确定模块,设置为基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置;The first adjustment position determination module is configured to determine the first adjustment position of each redundant joint at the next moment based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint. ;
第二调整位置确定模块,设置为基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置;a second adjustment position determination module configured to determine a second adjustment position of each task joint in the plurality of joints except the redundant joint based on each first adjustment position;
位置调整模块,设置为基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整。A position adjustment module configured to adjust the position of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
第三方面,本申请还提供了一种电子设备,所述电子设备包括:In a third aspect, this application also provides an electronic device, which includes:
一个或多个处理器;one or more processors;
存储装置,设置为存储一个或多个程序;a storage device configured to store one or more programs;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的机械臂的调整方法。When the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the above-mentioned adjustment method of the robotic arm.
第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的机械臂的调整方法。In a fourth aspect, the present application also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the above-mentioned method for adjusting the robotic arm is implemented.
附图说明Description of the drawings
图1是本申请实施例提供的一种机械臂的调整方法的流程示意图;Figure 1 is a schematic flowchart of a method for adjusting a robotic arm provided by an embodiment of the present application;
图2是本申请实施例提供的一种确定冗余关节调整方向的流程示意图;Figure 2 is a schematic flowchart of determining the adjustment direction of redundant joints provided by an embodiment of the present application;
图3A是本申请实施例提供的一种机械臂直角空间调整的结构示意图;Figure 3A is a schematic structural diagram of a right-angle spatial adjustment of a robotic arm provided by an embodiment of the present application;
图3B是本申请实施例提供的一种直角坐标调整坐标系的结构示意图;Figure 3B is a schematic structural diagram of a rectangular coordinate adjustment coordinate system provided by an embodiment of the present application;
图3C是本申请实施例提供的一种机械臂对应关节空间调整的结构示意图;Figure 3C is a schematic structural diagram of a robotic arm corresponding to joint space adjustment provided by an embodiment of the present application;
图3D是本申请实施例提供的一种关节空间调整坐标系的结构示意图;Figure 3D is a schematic structural diagram of a joint space adjustment coordinate system provided by an embodiment of the present application;
图4是本申请实施例提供的一种确定位置转换关系的流程示意图; Figure 4 is a schematic flowchart of determining a position conversion relationship provided by an embodiment of the present application;
图5是本申请实施例提供的另一种机械臂的调整方法的流程示意图;Figure 5 is a schematic flowchart of another method for adjusting a robotic arm provided by an embodiment of the present application;
图6是本申请实施例提供的一种机械臂的调整装置的结构示意图;Figure 6 is a schematic structural diagram of a mechanical arm adjustment device provided by an embodiment of the present application;
图7为本申请实施例提供的一种电子设备的结构示意图。FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
具体实施方式Detailed ways
下面结合附图和实施例对本申请进行说明。此处所描述的具体实施例仅仅用于解释本申请。为了便于描述,附图中仅示出了与本申请相关的部分。The present application will be described below in conjunction with the drawings and embodiments. The specific embodiments described herein are merely illustrative of the application. For convenience of description, only parts relevant to the present application are shown in the drawings.
一些其他实施例中,在手术机器人在执行手术的过程中,若手术机器人的机械臂位于非正常操作区域执行手术,则会增加手术风险,导致降低操作结果的成功率。为了提高任务操作的安全性,在检测到手术机器人的机械臂位于非正常操作区域进行手术操作时,需要准确且快速地调整机械臂的位置,以使机械臂位于正常操作区域执行手术。在位置调整的过程中为了保证手术可以顺利进行,需要保持手术机器人中机械臂的戳卡位置以及机械臂末端所持的手术器械持续执行手术。对于机械臂的位置进行调整,相关技术采用的方法是1、移动机械臂末端的方法使机械臂位于安全区域,但是此方法调整时需要中断手术,调整后需要操作人员和机械臂重新准备。2、通过速度雅可比空间的零空间的方法对调整位置进行计算,并基于调整位置对机械臂进行调整,但是上述方法的数据计算量大,耗时较长,不能保证手术的安全性。所以,本实施例提供了一种机械臂的调整方法,参见图1。In some other embodiments, during the operation of the surgical robot, if the robotic arm of the surgical robot is located in an abnormal operating area to perform the operation, the risk of the operation will increase, resulting in a reduction in the success rate of the operation result. In order to improve the safety of task operations, when it is detected that the robotic arm of a surgical robot is located in an abnormal operating area for surgical operations, the position of the robotic arm needs to be accurately and quickly adjusted so that the robotic arm is located in the normal operating area to perform the surgery. In order to ensure that the operation can proceed smoothly during the position adjustment process, it is necessary to maintain the sticking position of the robotic arm in the surgical robot and the surgical instruments held at the end of the robotic arm to continue performing the operation. To adjust the position of the robotic arm, the method used in the relevant technology is: 1. Move the end of the robotic arm to make the robotic arm located in a safe area. However, this method requires interrupting the operation during adjustment. After the adjustment, the operator and the robotic arm need to be prepared again. 2. Calculate the adjustment position through the zero space method of the velocity Jacobian space, and adjust the robotic arm based on the adjustment position. However, the above method requires a large amount of data calculation, takes a long time, and cannot guarantee the safety of the operation. Therefore, this embodiment provides a method for adjusting a robotic arm, see Figure 1 .
图1为本申请实施例提供的一种机械臂的调整方法的流程图,本实施例可适用于在手术中对手术机械臂进行位置调整的情况。该方法可以由机械臂的调整装置来执行,该装置可以由软件和/或硬件的方式来实现。FIG. 1 is a flow chart of a method for adjusting a robotic arm provided by an embodiment of the present application. This embodiment can be applied to the situation of adjusting the position of a surgical robotic arm during surgery. The method may be performed by an adjustment device of the robotic arm, which may be implemented in software and/or hardware.
如图1所示,该方法包括以下步骤:As shown in Figure 1, the method includes the following steps:
S110、在确定机械臂位于或临近非正常操作区域内的情况下,确定机械臂的多个关节中的每个冗余关节的调整方向。S110. When it is determined that the robotic arm is located in or adjacent to the abnormal operating area, determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm.
S120、基于每个冗余关节在当前时刻的冗余关节位置和该冗余关节的调整方向确定该冗余关节在下一时刻的第一调整位置。S120. Determine the first adjustment position of each redundant joint at the next time based on the redundant joint position of each redundant joint at the current time and the adjustment direction of the redundant joint.
S130、基于每个第一调整位置确定多个关节中除冗余关节以外的每个任务关节的第二调整位置。S130. Determine the second adjustment position of each task joint in the plurality of joints, except the redundant joint, based on each first adjustment position.
S140、基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对机械臂进行位置调整。S140. Adjust the position of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
在本申请实施例中,正常操作区域可以理解为预先设定的手术机器人在执 行手术时所在的区域,相应的,非正常操作区域可以理解为除正常操作区域以外的区域,例如在执行手术的过程中碰撞或者即将碰到病床或其他物体时所在的区域、挤压或者即将挤压到患者或护士所在的区域以及机械臂活动受限时所处的区域均可以理解为位于或者临近非正常操作区域,还有其他影响手术的执行的区域,或者影响手术执行时操作对象姿态的区域均可以理解为位于或者临近非正常区域,本实施例对位于或者临近非正常区域的区域位置和范围不作限定。In the embodiment of this application, the normal operating area can be understood as the preset surgical robot operating area. The area where the operation is performed. Correspondingly, the abnormal operation area can be understood as the area other than the normal operation area, such as the area where the hospital bed or other objects are collided with or are about to be hit, squeezed, or are about to be hit during the operation. The area where the patient or nurse is squeezed and the area where the robot arm's movement is limited can be understood as being located in or adjacent to the abnormal operating area, as well as other areas that affect the execution of the operation, or affect the posture of the operating object during the operation. The areas can be understood as being located in or adjacent to abnormal areas. This embodiment does not limit the location and range of areas located in or adjacent to abnormal areas.
在本实施例中,在手术机器人执行手术的过程中,判断手术机器人的机械臂是否位于或者临近非正常操作区域内,并基于判断结果确定是否需要对手术机器人的机械臂的位置进行调整。In this embodiment, during the operation performed by the surgical robot, it is determined whether the robotic arm of the surgical robot is located in or adjacent to the abnormal operation area, and based on the determination result, it is determined whether the position of the robotic arm of the surgical robot needs to be adjusted.
基于手术机器人执行的手术过程,确定手术机器人中机械臂的正常操作区域,并根据该正常操作区域的位置边缘确定机械臂的机械臂位置阈值范围。确定机械臂的位置,若确定机械臂的位置不位于机械臂位置阈值范围中,则确定机械臂位于非正常操作区域;若确定机械臂的位置位于机械臂位置阈值范围且与机械臂位置阈值范围的边界(即该正常操作区域的位置边缘)的距离小于预设的第一安全距离,则确定机械臂临近非正常操作区域。本实施例中,确定机械臂的位置的方法可以通过获取机械臂的多个关节的位置,并基于多个关节的位置与机械臂位置的预设位置转换关系确定手术机器人的机械臂的位置。相应的,基于机械臂在当前时刻所处的机械臂位置以及机械臂位置阈值确定机械臂位于或临近非正常操作区域内的方法可以包括:根据预设位置转换关系和机械臂位置阈值确定机械臂的每个关节的关节位置阈值范围。确定每个关节在当前时刻的关节位置,并将每个关节的关节位置与关节位置阈值范围进行位置比对;若任一关节位置不处于关节位置阈值范围,则确定机械臂位于非正常操作区域内,若任一关节位置处于关节位置阈值范围且与节位置阈值范围的边界的距离小于预设的第二安全距离,则确定机械臂临近非正常操作区域内。Based on the surgical process performed by the surgical robot, the normal operating area of the robotic arm in the surgical robot is determined, and the robotic arm position threshold range of the robotic arm is determined based on the position edge of the normal operating area. Determine the position of the robot arm. If it is determined that the position of the robot arm is not within the robot arm position threshold range, it is determined that the robot arm is in an abnormal operating area; if it is determined that the position of the robot arm is within the robot arm position threshold range and is consistent with the robot arm position threshold range. If the distance between the boundary (that is, the position edge of the normal operation area) is less than the preset first safety distance, it is determined that the robot arm is close to the abnormal operation area. In this embodiment, the method of determining the position of the robotic arm may be to obtain the positions of multiple joints of the robotic arm, and determine the position of the robotic arm of the surgical robot based on a preset position conversion relationship between the positions of the multiple joints and the position of the robotic arm. Correspondingly, the method of determining that the robot arm is located in or near the abnormal operating area based on the robot arm position at the current moment and the robot arm position threshold may include: determining the robot arm according to the preset position conversion relationship and the robot arm position threshold. The joint position threshold range for each joint. Determine the joint position of each joint at the current moment, and compare the joint position of each joint with the joint position threshold range; if any joint position is not within the joint position threshold range, it is determined that the robotic arm is in an abnormal operating area Within, if any joint position is within the joint position threshold range and the distance from the boundary of the joint position threshold range is less than the preset second safety distance, it is determined that the robotic arm is close to the abnormal operation area.
一实施例中,获取机械臂位置和关节位置之间的预设位置转换关系,并基于预设位置转换关系和机械臂位置阈值确定机械臂的每个机械臂关节的关节位置阈值范围。预设位置转换关系可以是运动学位置逆解表达式,即将机械臂位置阈值作为参数代入至预设位置逆解表达式中,得到每个机械臂关节的关节位置阈值范围。预设位置转换关系还可以是预先训练好的转换模型,即将机械臂位置阈值输入至转换模型中,得到模型输出的每个机械臂关节的关节位置阈值范围。还可以基于其他形式的预设位置转换关系确定每个机械臂关节的关节位置阈值范围,本实施例对此不作限定。In one embodiment, a preset position transformation relationship between the robot arm position and the joint position is obtained, and the joint position threshold range of each robot arm joint of the robot arm is determined based on the preset position transformation relationship and the robot arm position threshold. The preset position conversion relationship can be an inverse kinematic position expression, that is, the robot arm position threshold is substituted as a parameter into the preset position inverse expression to obtain the joint position threshold range of each robot arm joint. The preset position conversion relationship can also be a pre-trained conversion model, that is, the robot arm position threshold is input into the conversion model to obtain the joint position threshold range of each robot arm joint output by the model. The joint position threshold range of each robot arm joint may also be determined based on other forms of preset position conversion relationships, which is not limited in this embodiment.
一实施例中,多个关节均安装有定位传感器,基于预设时间间隔获取每个 关节的关节位置,从而可以确定每个关节在每一时刻的关节位置。将每个关节的关节位置与关节位置阈值范围进行位置比对;若任一关节位置没有位于关节位置阈值范围内,则确定机械臂位于非正常操作区域内。In one embodiment, multiple joints are equipped with positioning sensors, and each joint is acquired based on a preset time interval. The joint position of the joint, so that the joint position of each joint at each moment can be determined. Compare the joint position of each joint with the joint position threshold range; if any joint position is not within the joint position threshold range, it is determined that the robotic arm is located in an abnormal operating area.
上述确定机械臂是否位于非正常操作区域内的方式只是作为实施例,本实施例还可以直接获取机械臂的位置,并直接基于机械臂的位置确定机械臂是否位于非正常区域内,还可以根据实际情况选择确定方式,本实施例对确定方式不作限定。The above method of determining whether the robotic arm is located in the abnormal operating area is only an example. This embodiment can also directly obtain the position of the robotic arm, and directly determine whether the robotic arm is located in the abnormal area based on the position of the robotic arm. It can also be based on The determination method is selected according to the actual situation, and this embodiment does not limit the determination method.
在上述实施例的基础上,在确定机械臂位于或临近非正常操作区域内的情况下,确定每个关节的调整位置,从而确定机械臂的调整位置。在本实施例中,机械臂的关节中包括冗余关节和任务关节。其中,任务关节为执行手术过程中必要的关节,冗余关节为手术前预设位置的关节,其作用为保持手术中机械臂之间或机械臂与其他物体的预设角度,如与患者台车之间的预设角度等。Based on the above embodiment, when it is determined that the robotic arm is located in or adjacent to the abnormal operating area, the adjustment position of each joint is determined, thereby determining the adjustment position of the robotic arm. In this embodiment, the joints of the robotic arm include redundant joints and task joints. Among them, the task joints are necessary joints during the operation, and the redundant joints are the joints at the preset position before the operation. Their function is to maintain the preset angle between the robotic arms or the robotic arms and other objects during the operation, such as with the patient trolley. preset angles etc.
为了快速地确定机械臂中每个关节的调整位置,本实施例的技术方案先确定机械臂中的每个冗余关节和每个任务关节,以及确定冗余关节在下一时刻的第一调整位置,并根据冗余关节的第一调整位置确定机械臂中每个任务关节的第二调整位置,从而基于第一调整位置和第二调整位置对机械臂进行位置调整。In order to quickly determine the adjustment position of each joint in the robotic arm, the technical solution of this embodiment first determines each redundant joint and each task joint in the robotic arm, and determines the first adjustment position of the redundant joint at the next moment. , and determine the second adjustment position of each task joint in the robotic arm based on the first adjustment position of the redundant joint, thereby adjusting the position of the robotic arm based on the first adjustment position and the second adjustment position.
确定多个关节中的冗余关节的方法可以包括:获取机械臂在手术中的约束条件数量以及机械臂的多个关节的关节数量;基于约束条件数量与关节数量确定机械臂中的冗余关节数量;根据预设位置转换关系确定每个关节对于下一时刻的调整位置的影响程度;基于冗余关节数量和影响程度确定多个关节中的每个冗余关节。The method of determining redundant joints among multiple joints may include: obtaining the number of constraints of the robotic arm in surgery and the number of joints of the multiple joints of the robotic arm; determining the redundant joints in the robotic arm based on the number of constraints and the number of joints quantity; determine the degree of influence of each joint on the adjusted position at the next moment based on the preset position conversion relationship; determine each redundant joint in multiple joints based on the number and degree of influence of redundant joints.
获取手术中的约束条件数量,以及确定机械臂中的多个关节的数量,并基于约束条件数量与关节数量确定机械臂中的冗余关节数量。示例性的,一条机械臂中的关节有n个,手术所携带的约束条件有m个。若n>m,则该机械臂中的冗余关节数量为n-m=r。Obtain the number of constraints in the operation, determine the number of multiple joints in the robotic arm, and determine the number of redundant joints in the robotic arm based on the number of constraints and the number of joints. For example, there are n joints in a robotic arm, and there are m constraints carried by the operation. If n>m, then the number of redundant joints in the robot arm is n-m=r.
本实施例中,影响程度用于表征关节碰撞的危险程度,可以用于确定对机械臂碰撞危险大的关节。基于机械臂运动学关系确定每个关节和机械臂的预设位置转换关系,并基于预设位置转换关系确定每个关节对于调整位置的机械臂碰撞危险程度。In this embodiment, the degree of impact is used to characterize the degree of risk of joint collision, and can be used to determine joints that pose a greater risk of collision to the robotic arm. The preset position conversion relationship between each joint and the manipulator is determined based on the kinematic relationship of the manipulator, and the collision risk of the manipulator for each joint for the adjusted position is determined based on the preset position conversion relationship.
基于冗余关节数量和每个关节对于调整位置的影响程度确定多个关节中的每个冗余关节。示例性的,机械臂中多个关节的关节位置为位置A、位置B和位置C,且机械臂中包括两个冗余关节,根据机器臂运动学关系,确定位于机械臂中位置A和位置B的关节对于调整位置的影响程度最大,确定该机械臂中位 置A和位置B对应的关节为冗余关节。Each redundant joint in the plurality of joints is determined based on the number of redundant joints and the degree of influence of each joint on the adjusted position. For example, the joint positions of multiple joints in the robotic arm are position A, position B, and position C, and the robotic arm includes two redundant joints. According to the kinematic relationship of the robotic arm, position A and position in the robotic arm are determined. Joint B has the greatest influence on adjusting the position. Determine the center position of the robotic arm. Set the joints corresponding to position A and position B as redundant joints.
为了保证位置调整过程中,手术机器人可以不中断地继续执行手术,需要保持手术机器人的戳卡连接处位置不变,以及保持器械末端姿态和位置不变。In order to ensure that the surgical robot can continue to perform operations without interruption during the position adjustment process, it is necessary to keep the position of the poke connection of the surgical robot unchanged, and to keep the attitude and position of the instrument end unchanged.
在满足上述需求的前提下,本实施例中确定机械臂的多个关节中的每个冗余关节的调整方向方法可以包括:对于当前时刻的任一冗余关节,基于当前冗余关节与非正常操作区域的位置关系,将机械臂远离非正常操作区域时当前冗余关节对应的方向确定为当前冗余关节的调整方向。On the premise of meeting the above requirements, in this embodiment, the method for determining the adjustment direction of each redundant joint among the multiple joints of the robotic arm may include: for any redundant joint at the current moment, based on the current redundant joint and the non- The positional relationship of the normal operating area determines the direction corresponding to the current redundant joint when the robotic arm is far away from the abnormal operating area as the adjustment direction of the current redundant joint.
将正常操作区域的范围和非正常操作区域的范围映射到冗余关节调整的调整范围。在冗余关节调整的范围内,将机械臂远离非正常操作区域时当前冗余关节对应的方向确定为当前冗余关节的调整方向。Map the range of the normal operation area and the range of the abnormal operation area to the adjustment range of the redundant joint adjustment. Within the scope of redundant joint adjustment, the direction corresponding to the current redundant joint when the robotic arm is away from the abnormal operating area is determined as the adjustment direction of the current redundant joint.
示例性的,若机械臂中仅包括一个冗余关节,参见图2,将全工作区域范围(正常操作区域)映射为冗余关节的调整范围。在冗余关节的调整范围内,在当前时刻,选择远离关节位置最近的安全工作区域(正常操作区域)的边缘上的点在该边缘上的法向作为冗余关机在下一时刻的调整方向。For example, if the robotic arm only includes one redundant joint, see Figure 2 to map the full working area range (normal operating area) to the adjustment range of the redundant joint. Within the adjustment range of the redundant joint, at the current moment, select the normal direction of the point on the edge of the safe working area (normal operating area) closest to the joint position as the adjustment direction of the redundant shutdown at the next moment.
示例性的,若机械臂中包括多个冗余关节,本实施例中以包含两个冗余关节为例进行介绍,参见图3A,冗余关节1和冗余关节2之间的机械臂远离非正常区域的方向为向上调整;相应的,映射到直角坐标系中如图3B所示,机械臂向上移动时冗余关节对应的调整方向为冗余关节在下一时刻的调整方向。参见图3C,图中在确定机械臂向上调整的过程中,冗余关节1的调整方向为向上调整;为了保证冗余关节2之后连接的器械末端姿态和位置不变,需要将冗余关节2向下调整;相应的,映射到直角坐标系中如图3D所示,冗余关节1向上调整,冗余关节2向下调整。For example, if the robotic arm includes multiple redundant joints, this embodiment takes two redundant joints as an example. Refer to Figure 3A. The robotic arm between redundant joint 1 and redundant joint 2 is far away from each other. The direction of the abnormal area is upward adjustment; accordingly, it is mapped to the rectangular coordinate system as shown in Figure 3B. When the manipulator moves upward, the corresponding adjustment direction of the redundant joint is the adjustment direction of the redundant joint at the next moment. Referring to Figure 3C, in the process of determining the upward adjustment of the robotic arm, the adjustment direction of redundant joint 1 is upward; in order to ensure that the end posture and position of the instrument connected after redundant joint 2 remain unchanged, redundant joint 2 needs to be Adjust downward; correspondingly, mapped to the rectangular coordinate system as shown in Figure 3D, redundant joint 1 is adjusted upward and redundant joint 2 is adjusted downward.
在上述实施例的基础上,基于每个冗余关节在当前时刻的冗余关节位置和调整方向确定该冗余关节在下一时刻的第一调整位置。Based on the above embodiment, the first adjustment position of each redundant joint at the next moment is determined based on the redundant joint position and adjustment direction of each redundant joint at the current moment.
对于任一冗余关节,确定该冗余关节在下一时刻的第一调整位置的方法可以包括:设置冗余关节的预设调整速度,并基于冗余关节位置、调整方向以及预设调整速度,确定冗余关节在下一时刻的第一调整位置。For any redundant joint, the method of determining the first adjustment position of the redundant joint at the next moment may include: setting a preset adjustment speed of the redundant joint, and based on the redundant joint position, adjustment direction and preset adjustment speed, Determine the first adjustment position of the redundant joint at the next moment.
设置冗余关节的预设调整速度,基于冗余关节在当前时刻的关节位置、以及冗余关节的调整方向和预设调整速度,确定冗余关节在下一时刻的第一调整位置。示例性的,记冗余关节的关节位置r=(r1,r2,...,rn-m)T,基于下述表达式确定冗余关节在下一时刻的第一调整位置;表达式包括:
ri=ri-1+vset·Δt
Set the preset adjustment speed of the redundant joint, and determine the first adjustment position of the redundant joint at the next moment based on the joint position of the redundant joint at the current moment, the adjustment direction and the preset adjustment speed of the redundant joint. For example, the joint position r=(r 1 , r 2 ,..., r nm ) T of the redundant joint is recorded, and the first adjustment position of the redundant joint at the next moment is determined based on the following expression; the expression includes :
r i =ri -1 +v set ·Δt
其中,ri表示冗余关节在下一时刻的第一调整位置;ri-1表示冗余关节在当 前时刻的关节位置;vset表示设置的冗余关节的预设调整速度,其中预设调整速度包括调整方向;Δt表示当前时刻和下一时刻的时间间隔。Among them, r i represents the first adjustment position of the redundant joint at the next moment; r i-1 represents the current adjustment position of the redundant joint. The joint position at the previous moment; vset represents the preset adjustment speed of the set redundant joint, where the preset adjustment speed includes the adjustment direction; Δt represents the time interval between the current moment and the next moment.
在上述实施例的基础上,基于每个第一调整位置确定多个关节中除冗余关节以外的每个任务关节的第二调整位置。On the basis of the above embodiment, the second adjustment position of each task joint in the plurality of joints except the redundant joint is determined based on each first adjustment position.
确定多个关节中的每个任务关节的第二调整位置的方法可以包括:获取机械臂在手术中的约束条件;基于约束条件、每个第一调整位置,确定每个任务关节在下一时刻对应的第二调整位置。The method of determining the second adjustment position of each task joint in the plurality of joints may include: obtaining the constraints of the robotic arm during surgery; based on the constraints and each first adjustment position, determine the corresponding position of each task joint at the next moment. the second adjustment position.
在一些实施例中,手术机器人的机械臂包括两种构型,一种可以是机械臂为分离式设计,由两部分具有独立功能的子机械臂构成,在手术时负责保持戳卡位置不动的调整臂与基于指令执行任务操作的工具臂;其中,工具臂负责手术过程中控制器械运动,调整臂负责手术位置及机械臂姿态的调整。另外一种可以是机械臂为一体化设计,即手术中机械臂同时保持戳卡位置不动与基于指令执行任务操作。为了可以在任务操作中实现调整机械臂远离非正常操作区域,在整条机械臂中应包括至少一个冗余关节。In some embodiments, the robotic arm of the surgical robot includes two configurations. One can be that the robotic arm is of a detached design, consisting of two sub-robotic arms with independent functions, and is responsible for keeping the card in a fixed position during surgery. The adjustment arm and the tool arm perform task operations based on instructions; among them, the tool arm is responsible for controlling the movement of the instrument during the operation, and the adjustment arm is responsible for adjusting the surgical position and the posture of the robotic arm. Another option is to have an integrated design of the robotic arm, that is, during the operation, the robotic arm simultaneously keeps the card-punching position stationary and performs task operations based on instructions. In order to adjust the manipulator away from the abnormal operating area during task operation, at least one redundant joint should be included in the entire manipulator.
记机器人戳卡(即不动点)为RCM,在保持戳卡连接处位置不变的前提下,调整约束条件为保持调整后的戳卡点位置PRCM(x,y,z)与调整前的戳卡点位置PRCMO(x,y,z)相同,即当前手术执行中的调整约束条件cRCM=(cRCM1,cRCM2,cRCM3)T满足:
Let the robot poke card (i.e. fixed point) be RCM. Under the premise of keeping the position of the poke card connection unchanged, the adjustment constraint is to maintain the adjusted poke point position P RCM (x, y, z) and the before adjustment. The poke point position P RCMO (x, y, z) is the same, that is, the adjustment constraint condition c RCM = (c RCM1 , c RCM2 , c RCM3 ) T in the current operation execution satisfies:
记机器人戳卡(即不动点)为TCP,在保持器械末端姿态和位置不变的前提下,调整约束条件为保持调整后的器械末端位置PTCP(x,y,z)与姿态RTCP(x,y,z)与调整前的器械末端位置PTCPO(x,y,z)与姿态RTCPO(x,y,z)相同,即当前手术执行过程中的调整约束条件cTCP=(cTCP1,cTCP2,...,cTCP6)T满足:
Let the robot poke card (i.e. fixed point) be TCP. On the premise of keeping the instrument end posture and position unchanged, the adjustment constraints are to maintain the adjusted instrument end position P TCP (x, y, z) and attitude R TCP (x, y, z) is the same as the instrument end position P TCPO (x, y, z) before adjustment and the posture R TCPO (x, y, z), that is, the adjustment constraint c TCP = ( c TCP1 , c TCP2 ,..., c TCP6 ) T satisfies:
在上述实施例的基础上,将上述保持戳卡连接处位置不变统称为RCM调整约束条件,其约束数mRCM=3。保持器械末端姿态和位置不变称为TCP调整约束条件,其约束数mTCP=6。 On the basis of the above embodiment, the above-mentioned keeping the position of the stamp card connection unchanged is collectively referred to as the RCM adjustment constraint condition, and the constraint number m RCM =3. Keeping the attitude and position of the instrument end unchanged is called the TCP adjustment constraint, and the number of constraints m TCP = 6.
对于分离式设计的机械臂,调整臂有nt个关节,如需保持戳卡位置不变,则nt≥mRCM,工具臂共有ng个关节,如需保证器械末端位置和姿态不变,则ng≥mTCP。对于一体式设计的机械臂,机械臂的所有关节应满足n≥mRCM+mTCPFor a mechanical arm with a separate design, the adjustment arm has n t joints. If it is necessary to keep the position of the stamping card unchanged, then n t ≥ m RCM . The tool arm has a total of n g joints. If it is necessary to ensure that the end position and posture of the instrument remain unchanged , then n g ≥m TCP . For an integrally designed robotic arm, all joints of the robotic arm should satisfy n≥m RCM +m TCP .
在上述实施例的基础上,对于一体式设计的机械臂或者包括冗余关节的工具臂或调整臂,基于调整约束条件、每个冗余关节在下一时刻的第一调整位置,确定每个任务关节对应的第二调整位置。Based on the above embodiments, for an integrally designed manipulator or a tool arm or an adjustment arm including redundant joints, each task is determined based on the adjustment constraints and the first adjustment position of each redundant joint at the next moment. The second adjustment position corresponding to the joint.
参见图4,构建每个任务关节的第二调整位置,与调整约束条件和每个冗余关节在下一时刻的第一调整位置之间的位置转换关系;其中,q表示机械臂中每个任务关节的第二调整位置;cTCP和cRCM表示调整约束条件;r表示每个冗余关节在下一时刻的第一调整位置;f()函数表示每个任务关节的第二调整位置,与调整约束条件和每个冗余关节在下一时刻的第一调整位置之间的位置转换关系。Referring to Figure 4, construct the second adjustment position of each task joint, the position conversion relationship between the adjustment constraints and the first adjustment position of each redundant joint at the next moment; where q represents each task in the robotic arm The second adjustment position of the joint; c TCP and c RCM represent the adjustment constraints; r represents the first adjustment position of each redundant joint at the next moment; the f() function represents the second adjustment position of each task joint, and the adjustment The position transformation relationship between the constraint conditions and the first adjustment position of each redundant joint at the next moment.
求解上述位置转换关系的方法可以通过几何法、坐标变换法或数值迭代法进行得到,从而确定每个任务关节的第二调整位置,与调整约束条件和每个冗余关节在下一时刻的第一调整位置之间的位置转换关系。还可以通过神经网络模型构建每个任务关节的第二调整位置,与调整约束条件和每个冗余关节在下一时刻的第一调整位置之间的位置转换模型,并对该位置转换模型进行训练,得到训练好的位置转换模型。The method for solving the above position transformation relationship can be obtained by geometric method, coordinate transformation method or numerical iteration method, thereby determining the second adjustment position of each task joint, together with the adjustment constraints and the first position of each redundant joint at the next moment. Adjust the position conversion relationship between positions. The second adjustment position of each task joint can also be constructed through the neural network model, and the position conversion model between the adjustment constraints and the first adjustment position of each redundant joint at the next moment, and the position conversion model can be trained. , get the trained position conversion model.
基于求解出的位置转换关系或者训练好的位置转换模型,以及约束条件和每个冗余关节在下一时刻的第一调整位置,确定每个任务关节的第二调整位置。上述调整位置的确定过程中采用解析迭代运算或者神经网络模型运算,避免了数值求解及高维矩阵运算,提高了计算效率和计算准确率。Based on the solved position transformation relationship or the trained position transformation model, as well as the constraints and the first adjustment position of each redundant joint at the next moment, the second adjustment position of each task joint is determined. The above-mentioned process of determining the adjustment position uses analytical iterative operations or neural network model operations, which avoids numerical solutions and high-dimensional matrix operations, and improves calculation efficiency and accuracy.
在上述实施例的基础上,基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对机械臂进行位置调整。On the basis of the above embodiment, the position of the robotic arm is adjusted based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
基于多个关节在下一时刻分别对应的调整位置,对机械臂进行位置调整,并得到调整后的机械臂。Based on the corresponding adjustment positions of multiple joints at the next moment, the position of the robotic arm is adjusted, and the adjusted robotic arm is obtained.
本实施例的技术方案,通过在确定机械臂位于或临近非正常操作区域内的情况下,确定机械臂的多个关节中的每个冗余关节的调整方向;基于每个冗余关节在当前时刻的冗余关节位置和调整方向确定该冗余关节在下一时刻的第一调整位置;基于每个第一调整位置确定多个关节中除冗余关节以外的每个任务关节的第二调整位置;基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对机械臂进行位置调整;解决了相关技术中计算流程复杂、计算误差较大以及抗干扰能力差的问题,实现了在不中断手术的情况下对机械臂进行调整,提高了机械臂调整的安全性和可靠性。 The technical solution of this embodiment is to determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm when it is determined that the robotic arm is located in or near an abnormal operating area; based on the current position of each redundant joint The position and adjustment direction of the redundant joint at a time determine the first adjustment position of the redundant joint at the next time; determine the second adjustment position of each task joint in the plurality of joints except the redundant joint based on each first adjustment position. ;Based on the first adjustment position of each redundant joint and the second adjustment position of each task joint, the position of the robotic arm is adjusted; it solves the problems of complex calculation process, large calculation error and poor anti-interference ability in related technologies. , realizing the adjustment of the robotic arm without interrupting the operation, improving the safety and reliability of the robotic arm adjustment.
图5为本申请实施例提供的另一种机械臂的调整方法的流程图,本实施例在本申请中任一技术方案的基础上执行,机械臂包括两个功能独立的子机械臂;在任一子机械臂中不包括冗余关节的情况下,方法还包括:基于机械臂在手术中的约束条件,确定不包括冗余关节的子机械臂中每个关节的第三调整位置;相应的,机械臂的调整方式,包括:基于包括冗余关节的子机械臂中的每个冗余关节的第一调整位置和每个任务关节的第二调整位置,以及不包括冗余关节的子机械臂中的每个关节的第三调整位置,对机械臂进行位置调整。其中与上述实施例相同或相应的术语的解释在此不再赘述。参见图5,本实施例提供的机械臂的调整方法包括:Figure 5 is a flow chart of another method for adjusting a robotic arm provided by an embodiment of the present application. This embodiment is executed on the basis of any technical solution in this application. The robotic arm includes two sub-robot arms with independent functions; at any time When a sub-manipulator does not include redundant joints, the method also includes: based on the constraints of the robotic arm during surgery, determine the third adjustment position of each joint in the sub-manipulator that does not include redundant joints; correspondingly , the adjustment method of the manipulator includes: based on the first adjustment position of each redundant joint and the second adjustment position of each task joint in the sub-manipulator including the redundant joint, and the sub-machine that does not include the redundant joints The third adjustment position of each joint in the arm is used to adjust the position of the robotic arm. The explanation of terms that are the same as or corresponding to the above embodiments will not be repeated here. Referring to Figure 5, the adjustment method of the robotic arm provided by this embodiment includes:
S210、在确定机械臂位于或临近非正常操作区域内的情况下,确定机械臂的多个关节中的每个冗余关节的调整方向。S210. When it is determined that the robotic arm is located in or adjacent to the abnormal operating area, determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm.
S220、基于每个冗余关节在当前时刻的冗余关节位置和调整方向确定该冗余关节在下一时刻的第一调整位置。S220: Determine the first adjustment position of each redundant joint at the next moment based on the redundant joint position and adjustment direction of each redundant joint at the current moment.
S230、基于每个第一调整位置确定多个关节中除冗余关节以外的每个任务关节的第二调整位置。S230. Determine the second adjustment position of each task joint in the plurality of joints, except the redundant joint, based on each first adjustment position.
S240、基于机械臂在手术中的约束条件,确定不包括冗余关节的子机械臂中每个关节的第三调整位置。S240. Based on the constraints of the robotic arm during surgery, determine the third adjustment position of each joint in the sub-robotic arm excluding redundant joints.
S250、基于包括冗余关节的子机械臂中的每个冗余关节的第一调整位置和每个任务关节的第二调整位置,以及不包括冗余关节的子机械臂中的每个关节的第三调整位置,对机械臂进行位置调整。S250. Based on the first adjustment position of each redundant joint in the sub-manipulator including the redundant joint and the second adjustment position of each task joint, and the adjustment of each joint in the sub-manipulator that does not include the redundant joint. The third adjustment position is to adjust the position of the mechanical arm.
在本申请实施例中,对于分离式设计的机械臂,当冗余关节仅存在任一子机械臂中,即仅存在调整臂或者工具臂中时,对于确定不包括冗余关节的子机械臂中的每个关节的第三调整位置的方法可以包括:基于机械臂在手术中的约束条件,确定不包括冗余关节的子机械臂中每个关节的第三调整位置。In the embodiment of this application, for a separately designed manipulator, when the redundant joint exists only in any sub-manipulator, that is, only in the adjustment arm or the tool arm, it is determined that the sub-manipulator does not include the redundant joint. The method for the third adjustment position of each joint in the sub-manipulator may include: determining the third adjustment position of each joint in the sub-manipulator excluding redundant joints based on the constraints of the robotic arm during surgery.
继续参见图4,构建每个关节在下一时刻的第三调整位置与调整约束条件之间的位置转换关系;其中,q表示机械臂中每个关节在下一时刻的第三位置;cTCP和cRCM表示调整约束条件;f()函数表示每个关节在下一时刻的第三调整位置与调整约束条件之间的位置转换关系。Continue to refer to Figure 4 to construct the position conversion relationship between the third adjustment position of each joint at the next moment and the adjustment constraints; where q represents the third position of each joint in the robotic arm at the next moment; c TCP and c RCM represents the adjustment constraints; the f() function represents the position conversion relationship between the third adjustment position of each joint at the next moment and the adjustment constraints.
求解上述位置转换关系的方法可以通过几何法、坐标变换法或数值迭代法进行得到,从而确定每个关节在下一时刻的第三调整位置与调整约束条件之间的位置转换关系。还可以通过神经网络模型构建每个关节在下一时刻的第三调整位置与调整约束条件之间的位置转换模型,并对该位置转换模型进行训练, 得到训练好的位置转换模型。The method for solving the above position transformation relationship can be obtained by geometric method, coordinate transformation method or numerical iteration method, thereby determining the position transformation relationship between the third adjustment position of each joint at the next moment and the adjustment constraints. The position conversion model between the third adjustment position of each joint at the next moment and the adjustment constraints can also be constructed through the neural network model, and the position conversion model can be trained. Get the trained position transformation model.
基于求解出的位置转换关系或者训练好的位置转换模型以及约束条件,确定每个关节在下一时刻的第三调整位置。上述调整位置的确定过程中采用解析迭代运算或者神经网络模型运算,避免了数值求解及高维矩阵运算,提高了计算效率和计算准确率。Based on the solved position conversion relationship or the trained position conversion model and constraints, the third adjustment position of each joint at the next moment is determined. The above-mentioned process of determining the adjustment position uses analytical iterative operations or neural network model operations, which avoids numerical solutions and high-dimensional matrix operations, and improves calculation efficiency and accuracy.
在上述实施例的基础上,基于包括冗余关节的子机械臂中的每个冗余关节的第一调整位置和每个任务关节的第二调整位置,以及不包括冗余关节的子机械臂中的每个关节的第三调整位置,对机械臂进行位置调整。On the basis of the above embodiments, based on the first adjustment position of each redundant joint and the second adjustment position of each task joint in the sub-manipulator including the redundant joint, and the sub-manipulator not including the redundant joint The third adjustment position of each joint in the robot arm is used to adjust the position of the robotic arm.
基于多个关节在下一时刻分别对应的调整位置,对机械臂进行位置调整,并得到调整后的机械臂。Based on the corresponding adjustment positions of multiple joints at the next moment, the position of the robotic arm is adjusted, and the adjusted robotic arm is obtained.
本实施例的技术方案,通过在确定机械臂位于或临近非正常操作区域内的情况下,确定机械臂的多个关节中的每个冗余关节的调整方向;基于每个冗余关节在当前时刻的冗余关节位置和调整方向确定该冗余关节在下一时刻的第一调整位置;基于每个第一调整位置确定多个关节中除冗余关节以外的每个任务关节的第二调整位置;基于机械臂在手术中的约束条件,确定不包括冗余关节的子机械臂中每个关节的第三调整位置;基于包括冗余关节的子机械臂中的每个冗余关节的第一调整位置和每个任务关节的第二调整位置,以及不包括冗余关节的子机械臂中的每个关节的第三调整位置,对机械臂进行位置调整;实现了在不中断手术的情况下对多种机械臂进行调整,提高了对机械臂调整的可靠性。The technical solution of this embodiment is to determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm when it is determined that the robotic arm is located in or near an abnormal operating area; based on the current position of each redundant joint The position and adjustment direction of the redundant joint at a time determine the first adjustment position of the redundant joint at the next time; determine the second adjustment position of each task joint in the plurality of joints except the redundant joint based on each first adjustment position. ; Based on the constraints of the robotic arm during surgery, determine the third adjustment position of each joint in the sub-robot arm that does not include redundant joints; Based on the first adjustment position of each redundant joint in the sub-robot arm that includes redundant joints The adjustment position and the second adjustment position of each task joint, as well as the third adjustment position of each joint in the sub-robot arm excluding redundant joints, are used to adjust the position of the robotic arm; achieving the desired operation without interrupting the operation. Adjust a variety of robotic arms to improve the reliability of robotic arm adjustment.
以下是本申请实施例提供的机械臂的调整装置的实施例,该装置与上述实施例的机械臂的调整方法属于同一个构思,在机械臂的调整装置的实施例中未详尽描述的细节内容,可以参考上述机械臂的调整方法的实施例。The following is an example of an adjustment device for a robotic arm provided by an embodiment of the present application. This device and the adjustment method of the robotic arm in the above embodiments belong to the same concept. The details are not described in detail in the embodiment of the adjustment device for the robotic arm. , reference may be made to the above embodiments of the robot arm adjustment method.
图6为本申请实施例提供的机械臂的调整装置的结构示意图。参见图6,该机械臂的调整装置的结构包括:调整方向确定模块310、第一调整位置确定模块320、第二调整位置确定模块330和位置调整模块340;其中,调整方向确定模块310,设置为在确定机械臂位于或临近非正常操作区域内的情况下,确定所述机械臂的多个关节中的每个冗余关节的调整方向;第一调整位置确定模块320,设置为基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置;第二调整位置确定模块330,设置为基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置;位置调整模块340,设置为基于每个冗余关节的 第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整。FIG. 6 is a schematic structural diagram of an adjustment device for a robotic arm provided by an embodiment of the present application. Referring to Figure 6, the structure of the adjustment device of the robotic arm includes: an adjustment direction determination module 310, a first adjustment position determination module 320, a second adjustment position determination module 330 and a position adjustment module 340; wherein the adjustment direction determination module 310 is set In order to determine the adjustment direction of each redundant joint in the plurality of joints of the robot arm when it is determined that the robot arm is located in or adjacent to the abnormal operating area; the first adjustment position determination module 320 is configured to based on each The redundant joint position of the redundant joint at the current moment and the adjustment direction of each redundant joint determine the first adjustment position of each redundant joint at the next moment; the second adjustment position determination module 330 is configured to be based on Each first adjustment position determines a second adjustment position of each task joint in the plurality of joints except the redundant joint; the position adjustment module 340 is configured to be based on the position of each redundant joint. The first adjustment position and the second adjustment position of each task joint are used to adjust the position of the robotic arm.
本实施例的技术方案,通过在确定机械臂位于或临近非正常操作区域内的情况下,确定所述机械臂的多个关节中的每个冗余关节的调整方向;基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置;基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置;基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整;解决了相关技术中计算流程复杂、计算误差较大以及抗干扰能力差的问题,实现了在不中断手术的情况下对机械臂进行调整,提高了机械臂调整的安全性和可靠性。The technical solution of this embodiment is to determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm when it is determined that the robotic arm is located in or adjacent to an abnormal operating area; based on each redundant joint The redundant joint position at the current moment and the adjustment direction of each redundant joint determine the first adjustment position of each redundant joint at the next moment; determine the first adjustment position of the multiple joints based on each first adjustment position. The second adjustment position of each task joint except the redundant joint; position adjustment of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint; solving the relevant problem The technology solves the problems of complex calculation process, large calculation error and poor anti-interference ability, and realizes the adjustment of the robotic arm without interrupting the operation, improving the safety and reliability of the robotic arm adjustment.
在上述任一技术方案的基础上,该装置还包括:Based on any of the above technical solutions, the device also includes:
关节位置阈值确定单元,设置为在所述确定所述机械臂的多个关节中的每个冗余关节的调整方向之前,获取所述机械臂的正常操作区域的机械臂位置阈值,根据预设位置转换关系和所述机械臂位置阈值确定所述机械臂的每个关节的关节位置阈值范围;位置比对单元,设置为确定每个关节在当前时刻的关节位置,并将所述关节位置与所述每个关节的关节位置阈值范围进行位置比对;非正常操作区域确定单元,设置为若任一关节位置没有位于所述一关节的关节位置阈值范围内,则确定所述机械臂位于非正常操作区域内。The joint position threshold determination unit is configured to obtain the robot arm position threshold of the normal operating area of the robot arm before determining the adjustment direction of each redundant joint among the multiple joints of the robot arm, according to the preset The position conversion relationship and the robot arm position threshold determine the joint position threshold range of each joint of the robot arm; the position comparison unit is configured to determine the joint position of each joint at the current moment, and compare the joint position with The joint position threshold range of each joint is compared for position; the abnormal operation area determination unit is configured to determine that if any joint position is not within the joint position threshold range of a joint, it is determined that the robotic arm is located in a non-normal operation area. within the normal operating area.
在上述任一技术方案的基础上,调整方向确定模块310,包括:Based on any of the above technical solutions, the adjustment direction determination module 310 includes:
条件数量和关节数量获取单元,设置为获取所述机械臂在手术中的约束条件数量以及所述机械臂的所述多个关节的关节数量;冗余关节数量确定单元,设置为基于所述约束条件数量与所述关节数量确定所述机械臂中的冗余关节数量;影响程度确定单元,设置为根据预设位置转换关系确定每个关节对于调整位置的影响程度;冗余关节确定单元,设置为基于所述冗余关节数量和所述影响程度确定所述多个关节中的每个冗余关节。The number of conditions and the number of joints obtaining unit is configured to obtain the number of constraints of the robotic arm during surgery and the number of joints of the multiple joints of the robotic arm; the redundant joint number determining unit is configured to obtain the number of constraints based on the constraints The number of conditions and the number of joints determine the number of redundant joints in the robotic arm; the influence degree determination unit is configured to determine the degree of influence of each joint on the adjusted position according to the preset position conversion relationship; the redundant joint determination unit is configured Each redundant joint in the plurality of joints is determined based on the number of redundant joints and the degree of influence.
在上述任一技术方案的基础上,调整方向确定模块310,包括:Based on any of the above technical solutions, the adjustment direction determination module 310 includes:
调整方向确定单元,设置为对于当前时刻的任一冗余关节,基于当前冗余关节与所述非正常操作区域的位置关系,将所述机械臂远离所述非正常操作区域时所述当前冗余关节对应的方向确定为所述当前冗余关节的调整方向。The adjustment direction determination unit is configured to, for any redundant joint at the current moment, based on the positional relationship between the current redundant joint and the abnormal operation area, when the robot arm is moved away from the abnormal operation area, the current redundant joint is moved away from the abnormal operation area. The direction corresponding to the remaining joint is determined as the adjustment direction of the current redundant joint.
在上述任一技术方案的基础上,第一调整位置确定模块320,包括:Based on any of the above technical solutions, the first adjustment position determination module 320 includes:
第一调整位置确定单元,设置为获取所述冗余关节的预设调整速度,并基于所述冗余关节位置、所述调整方向以及所述预设调整速度,确定所述冗余关节在下一时刻的第一调整位置。 The first adjustment position determination unit is configured to obtain the preset adjustment speed of the redundant joint, and determine the next position of the redundant joint based on the redundant joint position, the adjustment direction and the preset adjustment speed. The first adjustment position of the moment.
在上述任一技术方案的基础上,第二调整位置确定模块330,包括:Based on any of the above technical solutions, the second adjustment position determination module 330 includes:
调整约束条件获取单元,设置为获取所述机械臂在手术中的约束条件;第二调整位置确定单元,设置为基于所述调整约束条件、每个第一调整位置,确定每个任务关节在下一时刻对应的第二调整位置。The adjustment constraint acquisition unit is configured to acquire the constraints of the robotic arm during surgery; the second adjustment position determination unit is configured to determine the next position of each task joint based on the adjustment constraints and each first adjustment position. The second adjustment position corresponding to the time.
在上述任一技术方案的基础上,所述机械臂包括两个功能独立的子机械臂;在任一子机械臂中不包括冗余关节的情况下,所述装置还包括:Based on any of the above technical solutions, the robotic arm includes two sub-robot arms with independent functions; when any sub-robot arm does not include redundant joints, the device also includes:
第三调整位置确定模块,设置为基于所述机械臂在手术中的约束条件,确定不包括冗余关节的子机械臂中每个关节的第三调整位置;相应的,所述位置调整模块340,包括:The third adjustment position determination module is configured to determine the third adjustment position of each joint in the sub-manipulator excluding redundant joints based on the constraints of the robotic arm during surgery; accordingly, the position adjustment module 340 ,include:
位置调整单元,设置为基于包括冗余关节的子机械臂中的每个冗余关节的第一调整位置和每个任务关节的第二调整位置,以及不包括冗余关节的子机械臂中的每个关节的第三调整位置,对所述机械臂进行位置调整。a position adjustment unit configured to be based on the first adjustment position of each redundant joint and the second adjustment position of each task joint in the sub-manipulator that includes the redundant joint, and the position adjustment unit in the sub-manipulator that does not include the redundant joint. The third adjustment position of each joint is used to adjust the position of the robotic arm.
本申请实施例所提供的机械臂的调整装置可执行本申请任意实施例所提供的机械臂的调整方法,具备执行方法相应的功能模块和效果。The robot arm adjustment device provided by the embodiments of the present application can execute the robot arm adjustment method provided by any embodiment of the present application, and has functional modules and effects corresponding to the execution method.
上述机械臂的调整装置的实施例中,所包括的多个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,多个功能单元的名称也只是为了便于相互区分,并不用于限制本申请的保护范围。In the above embodiments of the robot arm adjustment device, the multiple units and modules included are only divided according to functional logic, but are not limited to the above divisions, as long as the corresponding functions can be realized; in addition, multiple functions The names of the units are only for the convenience of distinguishing each other and are not used to limit the protection scope of the present application.
图7为本申请实施例提供的一种电子设备的结构示意图。图7示出了适于用来实现本申请实施方式的示例性电子设备12的框图。图7显示的电子设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present application. 7 illustrates a block diagram of an exemplary electronic device 12 suitable for implementing embodiments of the present application. The electronic device 12 shown in FIG. 7 is only an example and should not impose any restrictions on the functions and usage scope of the embodiments of the present application.
如图7所示,电子设备12以通用计算电子设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,内存28,连接不同系统组件(包括内存28和处理单元16)的总线18。As shown in Figure 7, electronic device 12 is embodied in the form of a general purpose computing electronic device. The components of electronic device 12 may include, but are not limited to: one or more processors or processing units 16, memory 28, and a bus 18 connecting various system components (including memory 28 and processing unit 16).
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry Standard Architecture,ISA)总线,微通道体系结构(Micro Channel Architecture,MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics Standards Association,VESA)局域总线以及外围组件互连(Peripheral Component Interconnect,PCI)总线。 Bus 18 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a graphics accelerated port, a processor, or a local bus using any of a variety of bus structures. For example, these architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MAC) bus, Enhanced ISA bus, Video Electronics Standards Association (Video Electronics Standards) Association, VESA) local bus and Peripheral Component Interconnect (PCI) bus.
电子设备12包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。Electronic device 12 includes a variety of computer system readable media. These media can be any available media that can be accessed by electronic device 12, including volatile and nonvolatile media, removable and non-removable media.
内存28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory,RAM)30和/或高速缓存32。电子设备12可以包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以设置为读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供设置为对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如只读光盘存储器(Compact Disc Read-Only Memory,CD-ROM),数字视盘(Digital Video Disc-Read Only Memory,DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。内存28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请实施例的功能。Memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and/or cache 32. Electronic device 12 may include other removable/non-removable, volatile/non-volatile computer system storage media. By way of example only, storage system 34 may be configured to read and write to non-removable, non-volatile magnetic media (not shown in Figure 7, commonly referred to as a "hard drive"). Although not shown in FIG. 7, a disk drive configured to read and write to removable non-volatile disks (e.g., "floppy disks") and to removable non-volatile optical disks (e.g., Compact Discs) may be provided. Read-Only Memory, CD-ROM), digital video disk (Digital Video Disc-Read Only Memory, DVD-ROM) or other optical media) read and write optical disc drive. In these cases, each drive may be connected to bus 18 through one or more data media interfaces. The memory 28 may include at least one program product having a set of (eg, at least one) program modules configured to perform the functions of embodiments of the present application.
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如内存28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或一种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。A program/utility 40 having a set of (at least one) program modules 42, including but not limited to an operating system, one or more application programs, other program modules, and program data, may be stored, for example, in memory 28 , each or a combination of these examples may include the implementation of a network environment. Program modules 42 generally perform functions and/or methods in the embodiments described herein.
电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(Input/Output,I/O)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network,LAN),广域网(Wide Area Network,WAN)和/或公共网络,例如因特网)通信。如图7所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图7中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of Independent Disks,RAID)系统、磁带驱动器以及数据备份存储系统等。Electronic device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), may also communicate with one or more devices that enable a user to interact with electronic device 12, and/or with Any device (eg, network card, modem, etc.) that enables the electronic device 12 to communicate with one or more other computing devices. This communication may occur through an input/output (I/O) interface 22 . Moreover, the electronic device 12 can also communicate with one or more networks (such as a local area network (Local Area Network, LAN), a wide area network (Wide Area Network, WAN), and/or a public network, such as the Internet) through the network adapter 20. As shown in FIG. 7 , network adapter 20 communicates with other modules of electronic device 12 via bus 18 . It should be understood that, although not shown in Figure 7, other hardware and/or software modules may be used in conjunction with electronic device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, disk arrays (Redundant Arrays of Independent Disks (RAID) systems, tape drives and data backup storage systems, etc.
处理单元16通过运行存储在内存28中的程序,从而执行多种功能应用以及样本数据获取,例如实现本发实施例所提供的一种机械臂的调整方法步骤,机械臂的调整方法包括: The processing unit 16 executes a variety of functional applications and obtains sample data by running programs stored in the memory 28, for example, implementing steps of a method for adjusting a robotic arm provided by an embodiment of the present invention. The method for adjusting a robotic arm includes:
在确定机械臂位于或临近非正常操作区域内的情况下,确定所述机械臂的多个关节中的每个冗余关节的调整方向;基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置;基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置;基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整。When it is determined that the robotic arm is located in or adjacent to the abnormal operating area, determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm; based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint to determine the first adjustment position of each redundant joint at the next moment; determine each of the plurality of joints except the redundant joint based on each first adjustment position. The second adjustment position of the task joint; position adjustment of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
本领域技术人员可以理解,处理器还可以实现本申请任意实施例所提供的机械臂的调整方法的技术方案。Those skilled in the art can understand that the processor can also implement the technical solution of the robot arm adjustment method provided by any embodiment of the present application.
本实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现例如实现本发实施例所提供的一种机械臂的调整方法步骤,机械臂的调整方法包括:This embodiment also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, for example, the steps of the method for adjusting a robotic arm provided by the embodiment of the present invention are implemented. Adjustment methods include:
在确定机械臂位于或临近非正常操作区域内的情况下,确定所述机械臂的多个关节中的每个冗余关节的调整方向;基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置;基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置;基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整。When it is determined that the robotic arm is located in or adjacent to the abnormal operating area, determine the adjustment direction of each redundant joint among the multiple joints of the robotic arm; based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint to determine the first adjustment position of each redundant joint at the next moment; determine each of the plurality of joints except the redundant joint based on each first adjustment position. The second adjustment position of the task joint; position adjustment of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、RAM、ROM、可擦式可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM或闪存)、光纤、CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。The computer storage medium in the embodiment of the present application may be any combination of one or more computer-readable media. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium may be, for example, but not limited to: an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination thereof. Examples of computer-readable storage media (a non-exhaustive list) include: electrical connections having one or more conductors, portable computer disks, hard drives, RAM, ROM, Erasable Programmable Read-Only Memory, EPROM or flash memory), optical fiber, CD-ROM, optical storage device, magnetic storage device, or any suitable combination of the above. As used herein, a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device.
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。 A computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、射频(Radio Frequency,RF)等等,或者上述的任意合适的组合。Program code embodied on a computer-readable medium can be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, radio frequency (Radio Frequency, RF), etc., or any suitable combination of the above.
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括LAN或WAN,连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。Computer program code for performing operations of the present application may be written in one or more programming languages, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional Procedural programming language - such as "C" or similar programming language. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In situations involving a remote computer, the remote computer may be connected to the user computer through any kind of network, including a LAN or WAN, or may be connected to an external computer (eg, through the Internet using an Internet service provider).
本领域普通技术人员应该明白,上述的本申请的多个模块或多个步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成多个集成电路模块,或者将它们的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件的结合。 Those of ordinary skill in the art should understand that the above-mentioned multiple modules or multiple steps of the present application can be implemented using general-purpose computing devices. They can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices. , optionally, they can be implemented with program codes executable by a computer device, so that they can be stored in a storage device and executed by the computing device, or they can be separately made into multiple integrated circuit modules, or multiple of them can be modules or steps are made into a single integrated circuit module. As such, the application is not limited to any specific combination of hardware and software.

Claims (10)

  1. 一种机械臂的调整方法,包括:An adjustment method for a robotic arm, including:
    在确定机械臂位于或临近非正常操作区域内的情况下,确定所述机械臂的多个关节中的每个冗余关节的调整方向;When it is determined that the robotic arm is located in or adjacent to an abnormal operating area, determine the adjustment direction of each redundant joint in the plurality of joints of the robotic arm;
    基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置;Determine the first adjustment position of each redundant joint at the next moment based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint;
    基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置;determining a second adjustment position of each task joint in the plurality of joints, excluding redundant joints, based on each first adjustment position;
    基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整。Position adjustment is performed on the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
  2. 根据权利要求1所述的方法,其中,所述机械臂位于所述非正常操作区域内的确定方法包括:The method according to claim 1, wherein the method for determining that the robot arm is located in the abnormal operating area includes:
    获取所述机械臂的正常操作区域的机械臂位置阈值,根据预设位置转换关系和所述机械臂位置阈值确定所述机械臂的每个关节的关节位置阈值范围;Obtain the robot arm position threshold of the normal operating area of the robot arm, and determine the joint position threshold range of each joint of the robot arm according to the preset position conversion relationship and the robot arm position threshold;
    确定每个关节在当前时刻的关节位置,并将所述关节位置与所述每个关节的关节位置阈值范围进行位置比对;Determine the joint position of each joint at the current moment, and compare the joint position with the joint position threshold range of each joint;
    在一关节位置没有位于所述一关节的关节位置阈值范围内的情况下,确定所述机械臂位于所述非正常操作区域内。When a joint position is not within the joint position threshold range of a joint, it is determined that the robotic arm is located in the abnormal operation area.
  3. 根据权利要求1所述的方法,在所述确定所述机械臂的多个关节中的每个冗余关节的调整方向之前,还包括:The method according to claim 1, before determining the adjustment direction of each redundant joint among the plurality of joints of the robotic arm, further comprising:
    获取所述机械臂在手术中的约束条件数量以及所述机械臂的所述多个关节的关节数量;Obtain the number of constraints of the robotic arm during surgery and the number of joints of the multiple joints of the robotic arm;
    基于所述约束条件数量与所述关节数量确定所述机械臂中的冗余关节数量;Determine the number of redundant joints in the robotic arm based on the number of constraints and the number of joints;
    根据预设位置转换关系确定每个关节对于调整位置的影响程度;Determine the degree of influence of each joint on the adjusted position according to the preset position conversion relationship;
    基于所述冗余关节数量和所述影响程度确定所述多个关节中的每个冗余关节。Each redundant joint in the plurality of joints is determined based on the number of redundant joints and the degree of influence.
  4. 根据权利要求3所述的方法,其中,所述确定所述机械臂的多个关节中的每个冗余关节的调整方向,包括:The method according to claim 3, wherein determining the adjustment direction of each redundant joint in a plurality of joints of the robotic arm includes:
    对于当前时刻的一冗余关节,基于当前冗余关节与所述非正常操作区域的位置关系,将所述机械臂远离所述非正常操作区域时所述当前冗余关节对应的方向确定为所述当前冗余关节的调整方向。 For a redundant joint at the current moment, based on the positional relationship between the current redundant joint and the abnormal operation area, the direction corresponding to the current redundant joint when the robotic arm is away from the abnormal operation area is determined as the Describes the adjustment direction of the current redundant joint.
  5. 根据权利要求1所述的方法,其中,所述基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置,包括:The method according to claim 1, wherein said determining the position of each redundant joint at the next moment based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint. The first adjustment position includes:
    获取所述冗余关节的预设调整速度,并基于所述冗余关节位置、所述调整方向以及所述预设调整速度,确定所述冗余关节在下一时刻的第一调整位置。Obtain the preset adjustment speed of the redundant joint, and determine the first adjustment position of the redundant joint at the next moment based on the redundant joint position, the adjustment direction and the preset adjustment speed.
  6. 根据权利要求1所述的方法,其中,所述基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置,包括:The method of claim 1, wherein determining the second adjustment position of each task joint in the plurality of joints except redundant joints based on each first adjustment position includes:
    获取所述机械臂在手术中的约束条件;Obtain the constraints of the robotic arm during surgery;
    基于所述约束条件、每个第一调整位置,确定每个任务关节对应的第二调整位置。Based on the constraints and each first adjustment position, the second adjustment position corresponding to each task joint is determined.
  7. 根据权利要求1所述的方法,其中,所述机械臂包括两个功能独立的子机械臂;The method according to claim 1, wherein the robotic arm includes two functionally independent sub-robotic arms;
    在一子机械臂中不包括冗余关节的情况下,所述方法还包括:In the case where a sub-manipulator does not include redundant joints, the method further includes:
    基于所述机械臂在手术中的约束条件,确定不包括冗余关节的子机械臂中每个关节的第三调整位置;Based on the constraints of the robotic arm during surgery, determine the third adjustment position of each joint in the sub-robotic arm excluding redundant joints;
    所述基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整,包括:The position adjustment of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint includes:
    基于包括冗余关节的子机械臂中的每个冗余关节的第一调整位置和每个任务关节的第二调整位置,以及所述不包括冗余关节的子机械臂中的每个关节的第三调整位置,对所述机械臂进行位置调整。Based on the first adjustment position of each redundant joint in the sub-manipulator including the redundant joint and the second adjustment position of each task joint, and the adjustment position of each joint in the sub-manipulator that does not include the redundant joint The third adjustment position is to adjust the position of the robotic arm.
  8. 一种机械臂的调整装置,包括:An adjustment device for a robotic arm, including:
    调整方向确定模块,设置为在确定机械臂位于或临近非正常操作区域内的情况下,确定所述机械臂的多个关节中的每个冗余关节的调整方向;an adjustment direction determination module, configured to determine the adjustment direction of each redundant joint in the plurality of joints of the robot arm when it is determined that the robot arm is located in or adjacent to an abnormal operating area;
    第一调整位置确定模块,设置为基于每个冗余关节在当前时刻的冗余关节位置和所述每个冗余关节的调整方向确定所述每个冗余关节在下一时刻的第一调整位置;The first adjustment position determination module is configured to determine the first adjustment position of each redundant joint at the next moment based on the redundant joint position of each redundant joint at the current moment and the adjustment direction of each redundant joint. ;
    第二调整位置确定模块,设置为基于每个第一调整位置确定所述多个关节中除冗余关节以外的每个任务关节的第二调整位置;a second adjustment position determination module configured to determine a second adjustment position of each task joint in the plurality of joints except the redundant joint based on each first adjustment position;
    位置调整模块,设置为基于每个冗余关节的第一调整位置和每个任务关节的第二调整位置,对所述机械臂进行位置调整。A position adjustment module configured to adjust the position of the robotic arm based on the first adjustment position of each redundant joint and the second adjustment position of each task joint.
  9. 一种电子设备,包括: An electronic device including:
    至少一个处理器;at least one processor;
    存储装置,设置为存储至少一个程序;a storage device configured to store at least one program;
    当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-7中任一所述的机械臂的调整方法。When the at least one program is executed by the at least one processor, the at least one processor is caused to implement the adjustment method of the robotic arm according to any one of claims 1-7.
  10. 一种计算机可读存储介质,存储有计算机程序,所述程序被处理器执行时实现如权利要求1-7中任一所述的机械臂的调整方法。 A computer-readable storage medium stores a computer program. When the program is executed by a processor, the method for adjusting a robotic arm according to any one of claims 1-7 is implemented.
PCT/CN2023/100137 2022-06-22 2023-06-14 Robotic arm adjustment method, apparatus, electronic device and storage medium WO2023246576A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210711797.0 2022-06-22
CN202210711797.0A CN117301038A (en) 2022-06-22 2022-06-22 Mechanical arm adjusting method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
WO2023246576A1 true WO2023246576A1 (en) 2023-12-28

Family

ID=89287177

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/100137 WO2023246576A1 (en) 2022-06-22 2023-06-14 Robotic arm adjustment method, apparatus, electronic device and storage medium

Country Status (2)

Country Link
CN (1) CN117301038A (en)
WO (1) WO2023246576A1 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5150026A (en) * 1990-11-19 1992-09-22 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Obstacle avoidance for redundant robots using configuration control
US5737500A (en) * 1992-03-11 1998-04-07 California Institute Of Technology Mobile dexterous siren degree of freedom robot arm with real-time control system
CN103009389A (en) * 2012-11-30 2013-04-03 北京控制工程研究所 Track planning method of redundant space mechanical arm for on-track catching
US20150127151A1 (en) * 2013-11-05 2015-05-07 Kuka Laboratories Gmbh Method For Programming Movement Sequences Of A Redundant Industrial Robot And Industrial Robot
CN106625666A (en) * 2016-12-16 2017-05-10 广州视源电子科技股份有限公司 Method and device for controlling redundant mechanical arm
CN112605996A (en) * 2020-12-16 2021-04-06 中山大学 Model-free collision avoidance control method for redundant mechanical arm
CN113119096A (en) * 2019-12-30 2021-07-16 深圳市优必选科技股份有限公司 Mechanical arm space position adjusting method and device, mechanical arm and storage medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5150026A (en) * 1990-11-19 1992-09-22 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Obstacle avoidance for redundant robots using configuration control
US5737500A (en) * 1992-03-11 1998-04-07 California Institute Of Technology Mobile dexterous siren degree of freedom robot arm with real-time control system
CN103009389A (en) * 2012-11-30 2013-04-03 北京控制工程研究所 Track planning method of redundant space mechanical arm for on-track catching
US20150127151A1 (en) * 2013-11-05 2015-05-07 Kuka Laboratories Gmbh Method For Programming Movement Sequences Of A Redundant Industrial Robot And Industrial Robot
CN106625666A (en) * 2016-12-16 2017-05-10 广州视源电子科技股份有限公司 Method and device for controlling redundant mechanical arm
CN113119096A (en) * 2019-12-30 2021-07-16 深圳市优必选科技股份有限公司 Mechanical arm space position adjusting method and device, mechanical arm and storage medium
CN112605996A (en) * 2020-12-16 2021-04-06 中山大学 Model-free collision avoidance control method for redundant mechanical arm

Also Published As

Publication number Publication date
CN117301038A (en) 2023-12-29

Similar Documents

Publication Publication Date Title
WO2021129528A1 (en) Sorting method and apparatus, and device and storage medium
WO2021128787A1 (en) Positioning method and apparatus
WO2021129527A1 (en) Sorting method and apparatus, device, and storage medium
CN107351081B (en) Redundant manipulator abrupt addition degree layer motion planning method with speed optimization characteristic
WO2022121003A1 (en) Robot control method and device, computer-readable storage medium, and robot
CN110850807B (en) Singular point avoiding method, device, equipment and medium
WO2020215711A1 (en) Base station position coordinate determination method, apparatus and device, and storage medium
WO2022143919A1 (en) Steering parameter detection method and apparatus, computer device, and readable storage medium
WO2022199047A1 (en) Robot registration method and apparatus, electronic device, and storage medium
CN113077493A (en) Method and system for following target of mobile robot
CN115229805A (en) Hand-eye calibration method and device for surgical robot, storage medium and processor
WO2023246576A1 (en) Robotic arm adjustment method, apparatus, electronic device and storage medium
WO2022193640A1 (en) Robot calibration method and apparatus, and robot and storage medium
CN112959327B (en) Robot motion control method, system, electronic device, and storage medium
CN110096134B (en) VR handle ray jitter correction method, device, terminal and medium
CN113043277B (en) Multi-joint mechanism trajectory planning method and device, electronic equipment and storage medium
CN112270066A (en) Optimization method for calculating rigid coupling coefficient of satellite and computer equipment
CN115869069A (en) Surgical robot control method, device, equipment, medium and system
CN113132952A (en) Robot-based network quality determination method, device, equipment and medium
CN117503357A (en) Joint motion control method and system of surgical robot
CN112243082B (en) Tracking shooting method and device, electronic equipment and storage medium
Vajnberger et al. Remote control of robot arm with five DOF
CN114375431A (en) Trajectory simplification method and device for industrial robot, computer storage medium and industrial robot operating platform
WO2024007900A1 (en) Method and apparatus for adjusting redundant degree of freedom, and computer device and mechanical arm
CN112546613B (en) Equipment control method, device, equipment and storage medium

Legal Events

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

Ref document number: 23826225

Country of ref document: EP

Kind code of ref document: A1