WO2024045091A1 - Motion planning method, apparatus and system for actuator, and storage medium - Google Patents

Motion planning method, apparatus and system for actuator, and storage medium Download PDF

Info

Publication number
WO2024045091A1
WO2024045091A1 PCT/CN2022/116361 CN2022116361W WO2024045091A1 WO 2024045091 A1 WO2024045091 A1 WO 2024045091A1 CN 2022116361 W CN2022116361 W CN 2022116361W WO 2024045091 A1 WO2024045091 A1 WO 2024045091A1
Authority
WO
WIPO (PCT)
Prior art keywords
motion
actuator
motion control
control instruction
controller
Prior art date
Application number
PCT/CN2022/116361
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 西门子股份公司
Priority to PCT/CN2022/116361 priority Critical patent/WO2024045091A1/en
Publication of WO2024045091A1 publication Critical patent/WO2024045091A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls

Definitions

  • the present invention relates to the field of motion control technology, in particular to motion planning methods, devices, systems and storage media for actuators.
  • Planar sequencing tasks are widely used in production. How to plan and control the movement of the actuator to optimize the cycle time in planar sequencing tasks is a difficult problem that has yet to be solved.
  • the embodiment of the present invention provides a motion planning method, device, system and storage medium for an execution mechanism.
  • a motion planning method for an actuator includes:
  • Motion control instructions of the actuator are generated based on the motion planning results, wherein the motion control instructions are adapted to control the motion of the actuator so that the end effector accesses all the actuators in the same plane in the order.
  • the total time required to achieve multiple goals is the shortest;
  • the embodiment of the present invention determines the access sequence of multiple targets, and then plans the optimized motion of the actuator based on the dynamic constraints and access sequence of the actuator to minimize the total time, thereby reducing the cycle time of the plane sorting task and improving Improve work efficiency.
  • determining an order in which the end effector in the execution mechanism accesses multiple targets in the same plane includes at least one of the following:
  • a second path is determined that has the shortest total time when the end effector visits the plurality of targets in Cartesian linear motion, and the sequence is determined based on the second path.
  • the access sequence can be quickly determined based on multiple methods, that is, path planning can be quickly implemented in multiple ways.
  • determining the dynamic constraints of the execution mechanism includes at least one of the following:
  • the dynamic constraints include at least one of the following:
  • Second-order constraints used to constrain the acceleration of the actuator.
  • first-order constraints on velocity can be implemented, and second-order constraints on acceleration can also be implemented, which enriches the constraint conditions.
  • sending the motion control instruction includes:
  • the motion trajectory of the motion control instruction is interpolated to generate an interpolated motion control instruction, and the interpolated motion control instruction is sent to the The motion controller of the actuator is used to execute the interpolated motion control instruction by the motion controller.
  • a motion planning device for an actuator includes:
  • a first determining module configured to determine an order in which the end effector in the actuator accesses multiple targets in the same plane
  • a second determination module configured to determine the dynamic constraints of the actuator
  • a motion planning module configured to execute motion planning of the actuator based on the sequence and the dynamic constraints
  • an instruction generation module configured to generate a motion control instruction of the actuator based on the motion planning result, wherein the motion control instruction is adapted to control the movement of the actuator so that the end effector moves in the same plane
  • the total time required to access the multiple targets in the order is the shortest;
  • a sending module configured to send the motion control instruction.
  • the embodiment of the present invention determines the access sequence of multiple targets, and then plans the optimized motion of the actuator based on the dynamic constraints and access sequence of the actuator to minimize the total time, thereby reducing the cycle time of the plane sorting task and improving Improve work efficiency.
  • the first determining module is configured to perform at least one of the following:
  • a second path is determined that has the shortest total time when the end effector visits the plurality of targets in Cartesian linear motion, and the sequence is determined based on the second path.
  • the access sequence can be quickly determined based on multiple methods, that is, path planning can be quickly implemented in multiple ways.
  • the second determining module is configured to perform at least one of the following:
  • the dynamic constraints include at least one of the following:
  • Second-order constraints used to constrain the actuator's acceleration.
  • first-order constraints on velocity can be implemented, and second-order constraints on acceleration can also be implemented, which enriches the constraint conditions.
  • the sending module is configured to send the motion control instruction to the motion controller of the actuator when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold, so as to The motion control instruction is executed by the motion controller; when the interpolation period of the motion control instruction is greater than a predetermined threshold, the motion trajectory of the motion control instruction is interpolated to generate an interpolated motion control instruction, The interpolated motion control instruction is sent to a motion controller of the actuator, so that the motion controller executes the interpolated motion control instruction.
  • a motion planning system for an actuator including:
  • a motion controller configured to control the movement of the actuator
  • the edge device includes a first interface and a second interface
  • the edge device is configured to: determine an order in which end effectors in the actuator access multiple targets in the same plane; receive dynamic constraints of the actuator from the motion controller based on the first interface Conditions; executing motion planning of the actuator based on the sequence and the dynamic constraints; generating motion control instructions of the actuator based on motion planning results, wherein the motion control instructions are adapted to control the actuator. Move so that the total time for the end effector to access the plurality of targets in the same plane in the order is shortest; send the motion control instruction to the motion controller via the second interface.
  • the embodiment of the present invention determines the access sequence of multiple targets, and then plans the optimized motion of the actuator based on the dynamic constraints and access sequence of the actuator to minimize the total time, thereby reducing the cycle time of the plane sorting task and improving Improve work efficiency. Moreover, by integrating with edge computing, the access sequence and motion planning can be independently determined on the edge side, reducing the control workload of the actuator.
  • the edge device is configured to send the motion control instruction to the motion controller of the actuator when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold.
  • the motion control instruction is executed by the motion controller; when the interpolation period of the motion control instruction is greater than a predetermined threshold, the motion trajectory of the motion control instruction is interpolated to generate an interpolated motion control instruction,
  • the interpolated motion control instruction is sent to a motion controller of the actuator, so that the motion controller executes the interpolated motion control instruction.
  • An edge device that includes:
  • the processor is configured to read the executable instructions from the memory and execute the executable instructions to implement the motion planning method of the execution mechanism as described in any one of the above.
  • a computer-readable storage medium has computer instructions stored thereon. When the computer instructions are executed by a processor, the motion planning method of an execution mechanism as described in any one of the above items is implemented.
  • a computer program product includes a computer program that implements the motion planning method of an execution mechanism as described in any one of the above items when the computer program is executed by a processor.
  • Figure 1 is a flow chart of a motion planning method of an actuator according to an embodiment of the present invention.
  • FIG. 2 is an exemplary schematic diagram of the motion planning process of the motion planning system according to the embodiment of the present invention.
  • FIG. 3 is a schematic diagram of determining the repair sequence of defects according to an embodiment of the present invention.
  • Figure 4 is a schematic diagram of joint positions, speeds and accelerations according to an embodiment of the present invention.
  • Figure 5 is an exemplary schematic diagram of the movement of the control actuator according to the embodiment of the present invention.
  • Figure 6 is an exemplary structural diagram of a motion planning device of an actuator according to an embodiment of the present invention.
  • Figure 7 is an exemplary structural diagram of an edge device according to an embodiment of the present invention.
  • the embodiment of the present invention optimizes the target access sequence, and combines the dynamic constraints of the actuator with the target access sequence, and also optimizes the motion planning of the actuator.
  • the embodiments of the present invention into edge devices that interact with the motion control system, a flexible and safe actuator motion planning and control scheme can be realized.
  • Figure 1 is a flow chart of a motion planning method of an actuator according to an embodiment of the present invention.
  • the motion planning method 100 of an actuator includes:
  • Step 101 Determine the order in which the end effectors in the actuator access multiple targets in the same plane.
  • the actuator may be an actuator of a robot or any other automated equipment suitable for performing plane sorting tasks.
  • Robots can include industrial robots, service robots, and special robots, among others.
  • Industrial robots include multi-joint manipulators or multi-degree-of-freedom machine devices that are widely used in the industrial field. They have a certain degree of automation and can rely on their own power energy and control capabilities to achieve various industrial processing and manufacturing functions.
  • the arm of the industrial robot body generally adopts a spatial open-chain linkage mechanism.
  • the kinematic pair (rotating pair or moving pair) is often called a joint.
  • the number of joints is usually the number of degrees of freedom of the industrial robot.
  • the relevant parts of the industrial robot body are often called the base, waist, arm, wrist, hand (gripper or end effector) and walking part (for mobile robots).
  • End effectors usually refer to tools that are connected to the ends (joints) of the robot and have certain functions.
  • the end effector may include a robot gripper, a robot tool quick changer, a robot collision sensor, a robot rotary connector, a robot pressure tool, a compliance device, a robot spray gun, a robot deburring tool, a robot arc welding gun, and a robot electric welding gun.
  • robot actuators can be divided into rectangular coordinate type, cylindrical coordinate type, polar coordinate type and joint coordinate type.
  • the robot's actuator can make the robot move with the help of power components according to the command signal sent by the control system.
  • a robot's actuator can include servo motors for joints and mechanical links between joints, etc.
  • Multiple targets in the same plane can have multiple implementations depending on the specific task. For example, in the defect repair application of flat wooden boards, multiple targets are multiple defects on the same flat wooden board. In steel plate laser drilling applications, multiple targets are multiple holes cut in the steel plate.
  • metrics can be used to address this sequencing issue.
  • metrics may include: the total distance of the path to visit multiple targets on the plane (visited and only once) or the total time to visit multiple targets in Cartesian linear motion, etc.
  • step 101 includes:
  • the candidate path is used as the first path, and then the order in which the end effector accesses multiple targets is determined based on the target access sequence in the first path.
  • Step 102 Determine the dynamic constraints of the actuator.
  • step 102 determines the dynamic constraints of the actuator including:
  • the dynamic constraints of the actuator can be obtained through a wireless interface or a wired interface with the motion controller of the actuator.
  • the dynamic constraints of the actuator can be obtained through the wireless interface with the cloud.
  • the dynamic constraints include at least one of the following: a first-order constraint for constraining the speed of the actuator; a second-order constraint for constraining the acceleration of the actuator.
  • the planning constraints can be expressed as generalized first-order constraints, where the generalized first-order constraints are as follows:
  • q is the position vector of the joint; is the velocity vector of the joint; is the acceleration vector of the joint;
  • a v (q) is the first variable coefficient that depends on q;
  • f v (q) is the second variable coefficient that depends on q;
  • l v (q) is the first-order variable coefficient that depends on q Restrictions.
  • the joint speed limits can be determined.
  • the Cartesian speed limit of the end-effector can also be determined based on the first-order constraints used to constrain the speed of the end-effector.
  • the planning constraints can be expressed as generalized second-order constraints, where the generalized second-order constraints are as follows:
  • A(q) is the third variable coefficient that depends on q; T is the transpose operation symbol; B(q) is the fourth variable coefficient related to the speed vector of the joint; f(q) is the variable coefficient that depends on q.
  • the fifth variable coefficient of l(q) is a second-order constraint that depends on q. Based on the second-order constraints used to constrain the acceleration of the actuator, the joint acceleration limits can be determined. Similarly, the Cartesian acceleration limit of the end-effector can also be determined based on the second-order constraints used to constrain the acceleration of the end-effector.
  • M(q) is the inertia matrix; is the Coriolis force and centripetal force matrix; g(q) is the gravity vector; ⁇ is the joint torque vector.
  • A(q) M(q)
  • B(q) C(q)
  • f(q) g(q)
  • l(q) corresponds to the constraint composed of the joint torque vector ⁇
  • Conditions upper limit of ⁇ and lower limit of ⁇ .
  • the problem can then be transformed into an optimization problem, which can be solved using various optimization tools such as qpsolver.
  • These constraints can be combined together (e.g., joint velocities and joint accelerations) and treated as different constraints in the optimization problem.
  • the determined motion planning solution needs to meet these constraints.
  • Step 103 Execute the motion planning of the actuator based on sequence and dynamic constraints.
  • motion planning is performed on the actuator based on sequence and dynamic constraints. That is, on the premise that the dynamic constraints are met, the movement of the actuator is planned so that the total time for the end effector to access multiple targets in the plane in the order determined in step 101 is the shortest.
  • the planned movement of the actuator can include the following curves of each joint (and/or end effector): (1), time-related position curve; (2), time-related speed curve; (3) ), time-related acceleration curve; (4), time-related torque curve, etc.
  • Step 104 Generate motion control instructions for the actuator based on the motion planning results, where the motion control instructions are adapted to control the movement of the actuator so that the total time for the end effector to sequentially access multiple targets in the same plane is the shortest.
  • the generated motion control instruction can carry at least one of the following: (1) joint position; (2) joint position with joint velocity; (3) joint position with velocity and acceleration, and so on.
  • the motion control instructions for controlling the joints of the actuator may also include motion control instructions for the end effector (for example, a tool installed on the actuator).
  • the end effector can be started or stopped as the actuator moves, which is accomplished by applying a constant force on the Z-axis of the actuator.
  • the repair tool can be started before reaching the defect point or stopped after passing the defect point.
  • Step 105 Send motion control instructions.
  • step 105 includes:
  • the motion control instruction is sent to the motion controller of the actuator, so that the motion controller executes the motion control instruction.
  • FIG. 2 is an exemplary schematic diagram of the motion planning process of the motion planning system according to the embodiment of the present invention.
  • the motion planning system includes: a motion controller 12, configured to control the movement of the actuator 13; an edge device 11, including a first interface 18 and a second interface 30; wherein the edge device 11 is configured to: determine the end in the actuator 13 The sequence in which the actuator accesses multiple targets in the same plane; receiving the dynamic constraints of the actuator 13 from the motion controller 12 based on the first interface 18; executing the motion planning of the actuator 13 based on the sequence and the dynamic constraints; based on the motion planning results Generate motion control instructions for the actuator 13 , wherein the motion control instructions are adapted to control the motion of the actuator 13 so that the total time for the end effector to access multiple targets sequentially in the same plane is the shortest; move to the actuator 13 via the second interface 30
  • the controller 12 sends motion control instructions.
  • the edge device 11 is configured to send the motion control instruction to the motion controller 12 of the execution mechanism 13 to be executed by the motion controller 12 when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold.
  • Motion control instructions In one embodiment, the edge device 11, when the interpolation period of the motion control instruction is greater than a predetermined threshold, interpolates the motion trajectory of the motion control instruction to generate an interpolated motion control instruction, and converts the interpolated motion control instruction The instruction is sent to the motion controller 12 of the actuator 13 so that the motion controller 12 executes the interpolated motion control instruction.
  • the vision system 10 takes a photo of the board and performs a defect detection process 14 based on the photo of the board to determine the coordinates of each defect in the plane of the board.
  • the vision system 10 provides the coordinates of each defect in the plane of the board to the edge device 11 .
  • the edge device 11 uses the coordinates of each defect in the plane of the board to execute the sequence determination process 15 (for example, determine the default starting point of the end effector, and then determine the shortest total distance candidate path that visits all defects in sequence from the default starting point , and then determine the sequence of accessing the defects based on the candidate paths) to determine the sequence of repairing these defects by the end effector (usually a glue spray gun) in the actuator 13 .
  • the sequence determination process 15 for example, determine the default starting point of the end effector, and then determine the shortest total distance candidate path that visits all defects in sequence from the default starting point , and then determine the sequence of accessing the defects based on the candidate paths
  • the motion controller 12 of the actuator 13 provides the first interface 18 of the edge device 11 with the dynamic constraints of the actuator 13 (such as the position limit of each joint, the speed limit of each joint, and the speed limit of each joint) through its own status interface 33.
  • acceleration limit Cartesian position limit of the end effector, Cartesian speed limit of the end effector, Cartesian acceleration limit of the end effector, etc.
  • the dynamic constraint acquisition process 17 sends the dynamic constraints of the actuator 13 to the motion planning process 16 .
  • the motion planning process 16 plans the movement of the actuator 13 based on the sequence provided by the sequence determination process 15 and the dynamic constraints of the actuator 13 to determine the execution when the total time for the actuator 13 to access all defects in sequence in the plane is the shortest.
  • Motion parameters of mechanism 13 include: the time-related position curve of each joint, the time-related velocity curve of each joint, the time-related acceleration curve of each joint, the time-related torque curve of each joint, A time-dependent position profile of the end effector, a time-dependent velocity profile of the end effector, a time-dependent acceleration profile of the end effector, and so on.
  • the motion control instruction generation process 19 determines that the interpolation period of the planned motion parameters of the actuator 13 is less than or equal to the predetermined threshold, the motion control instruction generation process 19 carries the planned motion parameters of the actuator 13 in the generated motion control Instructions.
  • the motion control instruction generation process 19 sends the motion control instruction to the instruction receiving interface 31 of the motion controller 12 via the second interface 30 .
  • the instruction receiving interface 31 sends motion control instructions to the motion control core 132 .
  • the motion control core 32 executes the motion control instruction, thereby controlling the movement of the actuator 13 so that the end effector accesses multiple defects in sequence. Among them, when each defect is reached, the end effector starts to perform defect repair work.
  • the dynamic constraint acquisition process 19 interpolates the planned motion trajectory of the motion parameters of the actuator 13 to generate interpolation The supplemented motion control instructions.
  • the motion control instruction generation process 19 sends the interpolated motion control instruction to the instruction receiving interface 31 of the motion controller 12 via the second interface 30 .
  • the instruction receiving interface 31 sends the interpolated motion control instruction to the motion control core 32 .
  • the motion control core 32 executes the interpolated motion control instructions, thereby controlling the movement of the actuator 13 so that the end effector accesses multiple defects in sequence.
  • the motion control instruction generation process 19 determines that the interpolation period of the planned motion parameters of the actuator 13 is greater than the predetermined threshold, the motion control instruction generation process 19 does not interpolate the planned motion parameters of the actuator 13 , but Carry it in the motion control instruction.
  • the motion control instruction generation process 19 sends the motion control instruction to the instruction receiving interface 31 of the motion controller 12 via the second interface 30 .
  • the instruction receiving interface 31 sends motion control instructions to the motion control core 32 .
  • the motion control core 32 determines that the interpolation period of the motion parameters of the execution mechanism 13 carried in the motion control instruction is greater than a predetermined threshold.
  • the motion control core 32 interpolates the motion trajectory of the motion parameters of the actuator 13 to generate an interpolated motion control instruction, and executes the interpolated motion control instruction, thereby controlling the movement of the actuator 13 so that the end effector follows the Access multiple defects sequentially.
  • FIG. 3 is a schematic diagram of determining the order of repairing defects according to an embodiment of the present invention. As shown in Figure 3, 20 defects are randomly generated on a two-dimensional plane, represented as points. The order of accessing these points is determined according to the embodiment of the present invention, and the path connecting these points is determined by the access order.
  • Figure 4 is a schematic diagram of joint positions, speeds and accelerations according to an embodiment of the present invention.
  • the planned motion curves of the first joint (X-axis of the frame) and the second joint (Y-axis of the frame) are drawn, including the position curve 41 of the first joint, the position curve 42 of the second joint, The speed curve 43 of the first joint, the speed curve 44 of the second joint, the acceleration curve 45 of the first joint and the acceleration curve 46 of the second joint.
  • the speed of the first joint and the second joint is within the joint speed constraint range (less than 0.8m/s)
  • the acceleration of the first joint and the second joint is also within the joint acceleration constraint range (less than 1.2m/s 2 )).
  • Table 1 is a schematic table comparing the embodiment of the present invention with the greedy algorithm.
  • the greedy algorithm the next closest target is always visited and connected with Cartesian linear motion (straight line motion). It can be seen from Table 1 that for 20 defects, the embodiment of the present invention can reduce the cycle time (for example, the time required to repair all defects) by 29%.
  • a sequence determination process is first performed: this process is used to determine the access sequence of the target received from the vision system (for example, the detected position on the wooden board). Then, execute the dynamic constraint acquisition process: This process is used to obtain the dynamic constraints of the actuator from the motion control system of the actuator through the status interface, where the dynamic constraints can include joint position limits, joint speed limits, joint acceleration limits, and end execution The Cartesian position limit of the end effector, the Cartesian speed limit of the end effector, the Cartesian acceleration limit of the end effector, and so on.
  • a motion planning process is performed: This process is used to plan motion that satisfies a given target access sequence and dynamic constraints, with the goal of improving cycle times by driving the actuators to their limits.
  • the motion control instruction generation process is executed: this process is responsible for generating motion control instructions and sending the motion control instructions to the motion control system to drive the actuator.
  • Motion control instructions can be used to control an actuator or end effector (for example, a tool mounted on the actuator).
  • Figure 5 is an exemplary schematic diagram of the movement of the control actuator according to the embodiment of the present invention.
  • the six-axis robot includes a bottom joint 22, a shoulder joint 23, an elbow joint 24, a first wrist joint 25, a second wrist joint 26 and a third wrist joint 26.
  • An end effector is arranged on the third wrist joint 26.
  • the shoulder joint 23, the elbow joint 24, the first wrist joint 25, the second wrist joint 26 and the third wrist joint 26 are non-bottom joints.
  • the bottom joint 22, the shoulder joint 23, the elbow joint 24, the first wrist joint 25, the second wrist joint 26 and the third wrist joint 26 each have their own degrees of freedom.
  • the bottom joint 22 is arranged on the bracket 21; the shoulder joint 23 is connected in series to the bottom joint 22; the elbow joint 24 is connected in series to the shoulder joint 23; the first wrist joint 25 is connected in series to the elbow joint 24; the second wrist joint 26 is connected in series to the first wrist joint 25 ; The third wrist joint 26 is connected in series to the second wrist joint 26.
  • the robot controller 20 arranged outside the six-axis robot has a Profinet connection with the bottom joint 22 .
  • the bottom joint 22, the shoulder joint 23, the elbow joint 24, the first wrist joint 25, the second wrist joint 26 and the third wrist joint 26 are jointly connected to the CAN bus inside the six-axis robot.
  • Robot controller 20 is connected to edge device 28 .
  • Edge device 28 is connected to vision system 29 .
  • the vision system 29 takes photos of the board and performs defect detection processing based on the photos of the board to determine the coordinates of each defect in the plane of the board.
  • the vision system 29 provides the coordinates of each defect in the plane of the board to the edge device 28 .
  • the edge device 28 uses the coordinates of each defect in the plane of the board to determine the order in which the end effector on the third wrist joint 26 accesses the multiple defects in the board. Based on this order and the dynamic constraints of the six-axis robot, the edge device 28 determines the sequence of the six-axis robot.
  • Motion execution planning generates motion control instructions for the six-axis robot based on the planning results.
  • the motion control instructions control the motion of the six-axis robot so that the total time for the end effector to access multiple defects sequentially in the plank plane is the shortest.
  • the edge device 28 sends motion control instructions to the robot controller 20, and the robot controller 20 executes the motion control instructions.
  • Figure 6 is an exemplary structural diagram of a motion planning device of an actuator according to an embodiment of the present invention. As shown in Figure 6, device 600 includes:
  • the first determination module 601 is configured to determine the order in which the end effector in the execution mechanism accesses multiple targets in the same plane;
  • the second determination module 602 is configured to determine the dynamic constraints of the actuator
  • the motion planning module 603 is configured to execute motion planning of the actuator based on sequence and dynamic constraints
  • the instruction generation module 604 is configured to generate motion control instructions for the actuator based on the motion planning results, where the motion control instructions are adapted to control the actuator to access multiple targets sequentially in the same plane in the shortest total time;
  • the sending module 605 is configured to send motion control instructions.
  • the first determination module 601 is configured to perform at least one of the following: determine the first path with the shortest total distance for the end effector to access multiple targets, and determine the order based on the first path; determine when the end effector executes The second path that takes the shortest total time to access multiple targets in Cartesian linear motion, and the order is determined based on the second path.
  • the second determination module 602 is configured to perform at least one of the following: obtaining dynamic constraints from the motion controller of the actuator via an interface with the motion controller of the actuator; obtaining from the cloud Dynamic constraints.
  • the dynamic constraints include at least one of the following: a first-order constraint for constraining the speed of the actuator; a second-order constraint for constraining the acceleration of the actuator.
  • the sending module 605 is configured to send the motion control instruction to the motion controller of the actuator when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold, so that the motion controller executes the motion control instruction. ; When the interpolation period of the motion control instruction is greater than the predetermined threshold, interpolate the motion trajectory of the motion control instruction to generate the interpolated motion control instruction, and send the interpolated motion control instruction to the motion controller of the actuator , so that the motion controller executes the interpolated motion control instructions.
  • FIG. 7 is an exemplary structural diagram of an edge device according to an embodiment of the present invention.
  • the edge device 700 includes a processor 701, a memory 702, and a computer program stored on the memory 702 and executable on the processor 701.
  • the computer program is executed by the processor 701, any of the above execution mechanisms are implemented. motion planning method.
  • the memory 702 can be implemented as various storage media such as electrically erasable programmable read-only memory (EEPROM), flash memory (Flash memory), programmable programmable read-only memory (PROM), etc.
  • EEPROM electrically erasable programmable read-only memory
  • flash memory Flash memory
  • PROM programmable programmable read-only memory
  • the processor 701 may be implemented to include one or more central processing units or one or more field programmable gate arrays, where the field programmable gate array integrates one or more central processing unit cores.
  • the central processing unit or central processing unit core may be implemented as a CPU, an MCU, a DSP, or the like.
  • each step is not fixed and can be adjusted as needed.
  • the division of each module is only for the convenience of describing the functional division. In actual implementation, one module can be implemented by multiple modules, and the functions of multiple modules can also be implemented by the same module. These modules can be located on the same device. , or it can be on a different device.
  • the hardware modules in various embodiments may be implemented mechanically or electronically.
  • a hardware module may include specially designed permanent circuits or logic devices (such as a dedicated processor such as an FPGA or ASIC) to perform specific operations.
  • Hardware modules may also include programmable logic devices or circuits (eg, including general-purpose processors or other programmable processors) temporarily configured by software to perform specific operations.
  • programmable logic devices or circuits eg, including general-purpose processors or other programmable processors

Abstract

A motion planning method for an actuator (13), the method comprising: determining a sequence in which an end effector in an actuator (13) accesses a plurality of objects in the same plane; determining a dynamic constraint condition of the actuator (13); executing motion planning of the actuator (13) on the basis of the sequence and the dynamic constraint condition; generating a motion control instruction of the actuator (13) on the basis of the motion planning result, wherein the motion control instruction is adapted to control over the motion of the actuator (13), such that the total time spent by the end effector in sequentially accessing the plurality of objects in the same plane is the shortest; and sending the motion control instruction. The method can optimize the cycle time of a planar sequencing task, improve the operation efficiency, and may also be integrated with edge computing; and an access sequence and motion planning are autonomously determined on an edge side, thereby reducing the control workload of an actuator. Further provided in the present application are a motion planning apparatus and system for an actuator, and a storage medium.

Description

执行机构的运动规划方法、装置、系统及存储介质Motion planning method, device, system and storage medium of actuator 技术领域Technical field
本发明涉及运动控制技术领域,特别是执行机构的运动规划方法、装置、系统及存储介质。The present invention relates to the field of motion control technology, in particular to motion planning methods, devices, systems and storage media for actuators.
背景技术Background technique
平面排序(planar sequencing)任务广泛应用于生产中。如何规划和控制执行机构(actuator)的运动,从而优化平面排序任务中的循环时间(cycle time)是一项尚待解决的难题。Planar sequencing tasks are widely used in production. How to plan and control the movement of the actuator to optimize the cycle time in planar sequencing tasks is a difficult problem that has yet to be solved.
以平面排序任务为修复木板上的缺陷为例进行说明。平面木板上会有多个缺陷,需要执行机构(例如,三轴龙门机床)依次修复(例如,使用胶水)木板上的缺陷。在中国专利公开号CN111376114A中,提到了一种木饰面板的缺陷修复工艺,但是其中并不涉及如何规划和控制执行机构的运动。Take the plane sorting task of repairing defects on wooden boards as an example. There will be multiple defects on the flat board, requiring an actuator (e.g., a three-axis gantry machine) to repair (e.g., using glue) the defects on the board in sequence. In Chinese Patent Publication No. CN111376114A, a defect repair process for wood veneer panels is mentioned, but it does not involve how to plan and control the movement of the actuator.
发明内容Contents of the invention
本发明实施方式提出执行机构的运动规划方法、装置、系统及存储介质。The embodiment of the present invention provides a motion planning method, device, system and storage medium for an execution mechanism.
一种执行机构的运动规划方法,所述方法包括:A motion planning method for an actuator, the method includes:
确定执行机构中的末端执行器访问相同平面中的多个目标的顺序;Determine the order in which end effectors in an actuator access multiple targets in the same plane;
确定所述执行机构的动态约束条件;Determine the dynamic constraints of the actuator;
基于所述顺序和所述动态约束条件执行所述执行机构的运动规划;Execute motion planning of the actuator based on the sequence and the dynamic constraints;
基于运动规划结果生成所述执行机构的运动控制指令,其中所述运动控制指令适配于控制所述执行机构的运动,以使得所述末端执行器在所述相同平面中按照所述顺序访问所述多个目标的总时间最短;Motion control instructions of the actuator are generated based on the motion planning results, wherein the motion control instructions are adapted to control the motion of the actuator so that the end effector accesses all the actuators in the same plane in the order. The total time required to achieve multiple goals is the shortest;
发送所述运动控制指令。Send the motion control instructions.
因此,本发明实施方式确定多个目标的访问顺序,再基于执行机构的动态约 束条件和访问顺序,规划出执行机构的优化运动以使得总时间最少,从而降低了平面排序任务的循环时间,提高了作业效率。Therefore, the embodiment of the present invention determines the access sequence of multiple targets, and then plans the optimized motion of the actuator based on the dynamic constraints and access sequence of the actuator to minimize the total time, thereby reducing the cycle time of the plane sorting task and improving Improve work efficiency.
在示范性实施方式中,所述确定执行机构中的末端执行器访问相同平面中的多个目标的顺序包括下列中的至少一个:In an exemplary embodiment, determining an order in which the end effector in the execution mechanism accesses multiple targets in the same plane includes at least one of the following:
确定所述末端执行器访问所述多个目标的总距离最短的第一路径,基于所述第一路径确定所述顺序;Determine a first path with the shortest total distance for the end effector to access the plurality of targets, and determine the order based on the first path;
确定当末端执行器在笛卡尔线性运动中访问所述多个目标的总时间最短的第二路径,基于所述第二路径确定所述顺序。A second path is determined that has the shortest total time when the end effector visits the plurality of targets in Cartesian linear motion, and the sequence is determined based on the second path.
可见,基于多种方式快速确定访问顺序,即可以多种方式快速实现路径规划。It can be seen that the access sequence can be quickly determined based on multiple methods, that is, path planning can be quickly implemented in multiple ways.
在示范性实施方式中,所述确定执行机构的动态约束条件包括下列中的至少一个:In an exemplary embodiment, determining the dynamic constraints of the execution mechanism includes at least one of the following:
经由与所述执行机构的运动控制器之间的接口,从所述执行机构的运动控制器获取所述动态约束条件;obtaining the dynamic constraints from the motion controller of the actuator via an interface with the motion controller of the actuator;
从云端获取所述动态约束条件。Obtain the dynamic constraints from the cloud.
因此,可以通过多种方式获取执行机构的动态约束条件,提高了适用性。Therefore, the dynamic constraints of the actuator can be obtained in various ways, which improves the applicability.
在示范性实施方式中,所述动态约束条件包括下列中的至少一个:In an exemplary implementation, the dynamic constraints include at least one of the following:
用于约束所述执行机构的速度的一阶约束条件;First-order constraints used to constrain the speed of the actuator;
用于约束所述执行机构的加速度的二阶约束条件。Second-order constraints used to constrain the acceleration of the actuator.
可见,可以实现针对速度的一阶约束,还可以实现针对加速度的二阶约束,丰富了约束条件。It can be seen that first-order constraints on velocity can be implemented, and second-order constraints on acceleration can also be implemented, which enriches the constraint conditions.
在示范性实施方式中,所述发送所述运动控制指令包括:In an exemplary implementation, sending the motion control instruction includes:
当所述运动控制指令的插补周期小于或等于预定阈值时,将所述运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述运动控制指令;When the interpolation period of the motion control instruction is less than or equal to a predetermined threshold, sending the motion control instruction to the motion controller of the actuator, so that the motion controller executes the motion control instruction;
当所述运动控制指令的插补周期大于预定阈值时,对所述运动控制指令的运 动轨迹进行插补以生成插补后的运动控制指令,将所述插补后的运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述插补后的运动控制指令。When the interpolation period of the motion control instruction is greater than a predetermined threshold, the motion trajectory of the motion control instruction is interpolated to generate an interpolated motion control instruction, and the interpolated motion control instruction is sent to the The motion controller of the actuator is used to execute the interpolated motion control instruction by the motion controller.
因此,可以基于插补周期实现不同的处理逻辑,保证了控制精度。Therefore, different processing logic can be implemented based on the interpolation cycle, ensuring control accuracy.
一种执行机构的运动规划装置,所述装置包括:A motion planning device for an actuator, the device includes:
第一确定模块,被配置为确定执行机构中的末端执行器访问相同平面中的多个目标的顺序;a first determining module configured to determine an order in which the end effector in the actuator accesses multiple targets in the same plane;
第二确定模块,被配置为确定所述执行机构的动态约束条件;a second determination module configured to determine the dynamic constraints of the actuator;
运动规划模块,被配置为基于所述顺序和所述动态约束条件执行所述执行机构的运动规划;a motion planning module configured to execute motion planning of the actuator based on the sequence and the dynamic constraints;
指令生成模块,被配置为基于运动规划结果生成所述执行机构的运动控制指令,其中所述运动控制指令适配于控制所述执行机构的运动,以使得所述末端执行器在所述相同平面中按照所述顺序访问所述多个目标的总时间最短;an instruction generation module configured to generate a motion control instruction of the actuator based on the motion planning result, wherein the motion control instruction is adapted to control the movement of the actuator so that the end effector moves in the same plane The total time required to access the multiple targets in the order is the shortest;
发送模块,被配置为发送所述运动控制指令。A sending module configured to send the motion control instruction.
因此,本发明实施方式确定多个目标的访问顺序,再基于执行机构的动态约束条件和访问顺序,规划出执行机构的优化运动以使得总时间最少,从而降低了平面排序任务的循环时间,提高了作业效率。Therefore, the embodiment of the present invention determines the access sequence of multiple targets, and then plans the optimized motion of the actuator based on the dynamic constraints and access sequence of the actuator to minimize the total time, thereby reducing the cycle time of the plane sorting task and improving Improve work efficiency.
在示范性实施方式中,所述第一确定模块,被配置为执行下列中的至少一个:In an exemplary implementation, the first determining module is configured to perform at least one of the following:
确定所述末端执行器访问所述多个目标的总距离最短的第一路径,基于所述第一路径确定所述顺序;Determine a first path with the shortest total distance for the end effector to access the plurality of targets, and determine the order based on the first path;
确定当末端执行器在笛卡尔线性运动中访问所述多个目标的总时间最短的第二路径,基于所述第二路径确定所述顺序。A second path is determined that has the shortest total time when the end effector visits the plurality of targets in Cartesian linear motion, and the sequence is determined based on the second path.
可见,基于多种方式快速确定访问顺序,即可以多种方式快速实现路径规划。It can be seen that the access sequence can be quickly determined based on multiple methods, that is, path planning can be quickly implemented in multiple ways.
在示范性实施方式中,所述第二确定模块,被配置为执行下列中的至少一个:In an exemplary implementation, the second determining module is configured to perform at least one of the following:
经由与所述执行机构的运动控制器之间的接口,从所述执行机构的运动控制器获取所述动态约束条件;obtaining the dynamic constraints from the motion controller of the actuator via an interface with the motion controller of the actuator;
从云端获取所述动态约束条件。Obtain the dynamic constraints from the cloud.
因此,可以通过多种方式获取执行机构的动态约束条件,提高了适用性。Therefore, the dynamic constraints of the actuator can be obtained in various ways, which improves the applicability.
在示范性实施方式中,所述动态约束条件包括下列中的至少一个:In an exemplary implementation, the dynamic constraints include at least one of the following:
用于约束执行机构的速度的一阶约束条件;First-order constraints used to constrain the speed of the actuator;
用于约束执行机构的加速度的二阶约束条件。Second-order constraints used to constrain the actuator's acceleration.
可见,可以实现针对速度的一阶约束,还可以实现针对加速度的二阶约束,丰富了约束条件。It can be seen that first-order constraints on velocity can be implemented, and second-order constraints on acceleration can also be implemented, which enriches the constraint conditions.
在示范性实施方式中,所述发送模块,被配置为当所述运动控制指令的插补周期小于或等于预定阈值时,将所述运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述运动控制指令;当所述运动控制指令的插补周期大于预定阈值时,对所述运动控制指令的运动轨迹进行插补以生成插补后的运动控制指令,将所述插补后的运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述插补后的运动控制指令。In an exemplary embodiment, the sending module is configured to send the motion control instruction to the motion controller of the actuator when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold, so as to The motion control instruction is executed by the motion controller; when the interpolation period of the motion control instruction is greater than a predetermined threshold, the motion trajectory of the motion control instruction is interpolated to generate an interpolated motion control instruction, The interpolated motion control instruction is sent to a motion controller of the actuator, so that the motion controller executes the interpolated motion control instruction.
因此,可以基于插补周期实现不同的处理逻辑,保证了控制精度。Therefore, different processing logic can be implemented based on the interpolation cycle, ensuring control accuracy.
一种执行机构的运动规划系统,包括:A motion planning system for an actuator, including:
运动控制器,被配置为控制执行机构的运动;a motion controller configured to control the movement of the actuator;
边缘设备,包含第一接口和第二接口;The edge device includes a first interface and a second interface;
其中所述边缘设备被配置为:确定所述执行机构中的末端执行器访问相同平面中的多个目标的顺序;基于所述第一接口从所述运动控制器接收所述执行机构的动态约束条件;基于所述顺序和所述动态约束条件执行所述执行机构的运动规划;基于运动规划结果生成所述执行机构的运动控制指令,其中所述运动控制指令适配于控制所述执行机构的运动,以使得所述末端执行器在所述相同平面中按照所述顺序访问所述多个目标的总时间最短;经由所述第二接口向所述运动控制器发送所述运动控制指令。wherein the edge device is configured to: determine an order in which end effectors in the actuator access multiple targets in the same plane; receive dynamic constraints of the actuator from the motion controller based on the first interface Conditions; executing motion planning of the actuator based on the sequence and the dynamic constraints; generating motion control instructions of the actuator based on motion planning results, wherein the motion control instructions are adapted to control the actuator. Move so that the total time for the end effector to access the plurality of targets in the same plane in the order is shortest; send the motion control instruction to the motion controller via the second interface.
因此,本发明实施方式确定多个目标的访问顺序,再基于执行机构的动态约束条件和访问顺序,规划出执行机构的优化运动以使得总时间最少,从而降低了 平面排序任务的循环时间,提高了作业效率。而且,通过与边缘计算集成,在边缘侧可以自主确定访问顺序和运动规划,减少了执行机构的控制工作量。Therefore, the embodiment of the present invention determines the access sequence of multiple targets, and then plans the optimized motion of the actuator based on the dynamic constraints and access sequence of the actuator to minimize the total time, thereby reducing the cycle time of the plane sorting task and improving Improve work efficiency. Moreover, by integrating with edge computing, the access sequence and motion planning can be independently determined on the edge side, reducing the control workload of the actuator.
在示范性实施方式中,所述边缘设备,被配置为当所述运动控制指令的插补周期小于或等于预定阈值时,将所述运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述运动控制指令;当所述运动控制指令的插补周期大于预定阈值时,对所述运动控制指令的运动轨迹进行插补以生成插补后的运动控制指令,将所述插补后的运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述插补后的运动控制指令。In an exemplary embodiment, the edge device is configured to send the motion control instruction to the motion controller of the actuator when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold. The motion control instruction is executed by the motion controller; when the interpolation period of the motion control instruction is greater than a predetermined threshold, the motion trajectory of the motion control instruction is interpolated to generate an interpolated motion control instruction, The interpolated motion control instruction is sent to a motion controller of the actuator, so that the motion controller executes the interpolated motion control instruction.
一种边缘设备,包括:An edge device that includes:
处理器;processor;
存储器,用于存储所述处理器的可执行指令;memory for storing executable instructions for the processor;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述可执行指令以实施如上任一项所述的执行机构的运动规划方法。The processor is configured to read the executable instructions from the memory and execute the executable instructions to implement the motion planning method of the execution mechanism as described in any one of the above.
一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实施如上任一项所述的执行机构的运动规划方法。A computer-readable storage medium has computer instructions stored thereon. When the computer instructions are executed by a processor, the motion planning method of an execution mechanism as described in any one of the above items is implemented.
一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实施如上任一项所述的执行机构的运动规划方法。A computer program product includes a computer program that implements the motion planning method of an execution mechanism as described in any one of the above items when the computer program is executed by a processor.
附图说明Description of drawings
下面将通过参照附图详细描述本发明的优选实施例,使本领域的普通技术人员更清楚本发明的上述及其它特征和优点,附图中:Preferred embodiments of the present invention will be described in detail below to make the above and other features and advantages of the present invention more apparent to those skilled in the art with reference to the accompanying drawings, in which:
图1是根据本发明实施方式的执行机构的运动规划方法的流程图。Figure 1 is a flow chart of a motion planning method of an actuator according to an embodiment of the present invention.
图2为本发明实施方式的运动规划系统的运动规划过程的示范性示意图。FIG. 2 is an exemplary schematic diagram of the motion planning process of the motion planning system according to the embodiment of the present invention.
图3为本发明实施方式确定缺陷的修复顺序的示意图。FIG. 3 is a schematic diagram of determining the repair sequence of defects according to an embodiment of the present invention.
图4为本发明实施方式的关节位置、速度和加速度的示意图。Figure 4 is a schematic diagram of joint positions, speeds and accelerations according to an embodiment of the present invention.
图5为本发明实施方式的控制执行机构运动的示范性示意图。Figure 5 is an exemplary schematic diagram of the movement of the control actuator according to the embodiment of the present invention.
图6是根据本发明实施方式的执行机构的运动规划装置的示范性结构图。Figure 6 is an exemplary structural diagram of a motion planning device of an actuator according to an embodiment of the present invention.
图7是根据本发明实施方式边缘设备的示范性结构图。Figure 7 is an exemplary structural diagram of an edge device according to an embodiment of the present invention.
其中,附图标记如下:Among them, the reference signs are as follows:
标号label 含义meaning
100100 执行机构的运动规划方法Motion planning method for actuators
101~105101~105 步骤 step
1010 视觉系统 visual system
1111 边缘设备 edge device
1212 运动控制器 Motion Controller
1313 执行机构 executive agency
1414 缺陷检测处理 Defect detection processing
1515 顺序确定处理 sequence determination processing
1616 运动规划处理motion planning processing
1717 动态约束获取处理Dynamic constraint acquisition processing
1818 第一接口 first interface
1919 运动控制指令生成处理Motion control instruction generation processing
3030 第二接口 Second interface
3131 指令接收接口 Command receiving interface
3232 运动控制内核(Kernel)Motion control kernel (Kernel)
3333 状态接口 Status interface
4141 第一关节的位置曲线The position curve of the first joint
4242 第二关节的位置曲线The position curve of the second joint
4343 第一关节的速度曲线The speed curve of the first joint
4444 第二关节的速度曲线The speed curve of the second joint
4545 第一关节的加速度曲线Acceleration curve of the first joint
4646 第二关节的加速度曲线Acceleration curve of the second joint
2020 机器人控制器Robot controller
21twenty one 支架Bracket
22twenty two 底部关节bottom joint
23twenty three 肩关节shoulder joint
24twenty four 肘关节elbow joint
2525 第一腕关节first wrist joint
2626 第二腕关节second wrist joint
2727 第三腕关节third wrist joint
2828 边缘设备 edge device
2929 视觉系统 visual system
600600 执行机构的运动规划装置Motion planning device for actuators
601601 第一确定模块 First determination module
602602 第二确定模块 second determination module
603603 运动规划模块 motion planning module
604604 指令生成模块 Instruction generation module
605605 发送模块 Send module
700700 边缘设备 edge device
701701 处理器 processor
702702 存储器memory
具体实施方式Detailed ways
为使本发明的目的、技术方案和优点更加清楚,以下举实施例对本发明进一 步详细说明。In order to make the purpose, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to examples.
为了描述上的简洁和直观,下文通过描述若干代表性的实施方式来对本发明的方案进行阐述。实施方式中大量的细节仅用于帮助理解本发明的方案。但是很明显,本发明的技术方案实现时可以不局限于这些细节。为了避免不必要地模糊了本发明的方案,一些实施方式没有进行细致地描述,而是仅给出了框架。下文中,“包括”是指“包括但不限于”,“根据……”是指“至少根据……,但不限于仅根据……”。由于汉语的语言习惯,下文中没有特别指出一个成分的数量时,意味着该成分可以是一个也可以是多个,或可理解为至少一个。For the sake of simplicity and intuitiveness in description, the solution of the present invention is explained below by describing several representative embodiments. A large number of details in the embodiments are only used to help understand the solution of the present invention. However, it is obvious that the technical solution of the present invention may not be limited to these details when implemented. In order to avoid unnecessarily obscuring the solutions of the present invention, some embodiments are not described in detail, but only give a framework. Hereinafter, "including" means "including but not limited to", and "based on..." means "at least based on..., but not limited to only based on...". Due to Chinese language habits, when the number of a component is not specified below, it means that the component can be one or more, or it can be understood as at least one.
针对平面排序任务,本发明实施方式优化了目标访问顺序,而且结合执行机构的动态约束条件与目标访问顺序,还优化了执行机构的运动规划。尤其是,通过将本发明实施方式集成到与运动控制系统交互的边缘设备中,可以实现灵活安全的执行机构运动规划与控制方案。For the plane sorting task, the embodiment of the present invention optimizes the target access sequence, and combines the dynamic constraints of the actuator with the target access sequence, and also optimizes the motion planning of the actuator. In particular, by integrating the embodiments of the present invention into edge devices that interact with the motion control system, a flexible and safe actuator motion planning and control scheme can be realized.
图1是根据本发明实施方式的执行机构的运动规划方法的流程图。Figure 1 is a flow chart of a motion planning method of an actuator according to an embodiment of the present invention.
如图1所示,执行机构的运动规划方法100包括:As shown in Figure 1, the motion planning method 100 of an actuator includes:
步骤101:确定执行机构中的末端执行器访问相同平面中的多个目标的顺序。Step 101: Determine the order in which the end effectors in the actuator access multiple targets in the same plane.
在这里,执行机构可以为机器人或其它任意适合执行平面排序任务的自动化设备的执行机构。机器人可以包括工业机器人、服务机器人和特种机器人,等等。工业机器人包括广泛用于工业领域的多关节机械手或多自由度的机器装置,具有一定的自动性,可依靠自身的动力能源和控制能力实现各种工业加工制造功能。Here, the actuator may be an actuator of a robot or any other automated equipment suitable for performing plane sorting tasks. Robots can include industrial robots, service robots, and special robots, among others. Industrial robots include multi-joint manipulators or multi-degree-of-freedom machine devices that are widely used in the industrial field. They have a certain degree of automation and can rely on their own power energy and control capabilities to achieve various industrial processing and manufacturing functions.
以工业机器人为例进行说明。工业机器人本体的臂部一般采用空间开链连杆机构,其中的运动副(转动副或移动副)常称为关节,关节个数通常即为工业机器人的自由度数。出于拟人化的考虑,常将工业机器人本体的有关部位分别称为基座、腰部、臂部、腕部、手部(夹持器或末端执行器)和行走部(对于移动机器人)等。末端执行器通常指连接在机器人末端(关节)具有一定功能的工具。比如,末端执行器可能包含机器人抓手、机器人工具快换装置、机器人碰撞传感器、机器人旋转连接器、机器人压力工具、顺从装置、机器人喷涂枪、机器人毛 刺清理工具、机器人弧焊焊枪、机器人电焊焊枪等。根据关节配置型式和运动坐标形式的不同,机器人的执行机构可分为直角坐标式、圆柱坐标式、极坐标式和关节坐标式等类型。机器人的执行机构可以按照控制系统发出的指令信号,借助于动力元件使机器人进行动作。比如,机器人的执行机构可以包括关节的伺服电机以及关节之间的机械连杆,等等。Take industrial robots as an example. The arm of the industrial robot body generally adopts a spatial open-chain linkage mechanism. The kinematic pair (rotating pair or moving pair) is often called a joint. The number of joints is usually the number of degrees of freedom of the industrial robot. For the sake of anthropomorphism, the relevant parts of the industrial robot body are often called the base, waist, arm, wrist, hand (gripper or end effector) and walking part (for mobile robots). End effectors usually refer to tools that are connected to the ends (joints) of the robot and have certain functions. For example, the end effector may include a robot gripper, a robot tool quick changer, a robot collision sensor, a robot rotary connector, a robot pressure tool, a compliance device, a robot spray gun, a robot deburring tool, a robot arc welding gun, and a robot electric welding gun. wait. According to different joint configuration types and motion coordinate forms, robot actuators can be divided into rectangular coordinate type, cylindrical coordinate type, polar coordinate type and joint coordinate type. The robot's actuator can make the robot move with the help of power components according to the command signal sent by the control system. For example, a robot's actuator can include servo motors for joints and mechanical links between joints, etc.
取决于具体的任务,相同平面中的多个目标可以具有多种实施方式。比如,在平面木板的缺陷修复应用中,多个目标为相同平面木板上的多个缺陷。在钢板激光打孔应用中,多个目标为钢板上被切割的多个孔。Multiple targets in the same plane can have multiple implementations depending on the specific task. For example, in the defect repair application of flat wooden boards, multiple targets are multiple defects on the same flat wooden board. In steel plate laser drilling applications, multiple targets are multiple holes cut in the steel plate.
以上示范性描述了执行机构、末端执行器以及相同平面中的多个目标的典型实例,本领域技术人员可以意识到,这种描述仅是示范性的,并不用于限定本发明实施方式的保护范围。The above exemplarily describes typical examples of an actuator, an end effector, and multiple targets in the same plane. Those skilled in the art can realize that this description is only exemplary and is not intended to limit the protection of the embodiments of the present invention. scope.
在这里,可以使用多个可选算法确定末端执行器访问相同平面中的多个目标的顺序,例如采用启发式算法、贪婪算法和基于遗传算法,等等。可以使用多个度量指标以解决该顺序问题。比如,度量指标可以包括:访问平面上多个目标(访问且仅访问一次)路径的总距离或在笛卡尔线性运动中访问多个目标的总时间,等等。Here, multiple optional algorithms can be used to determine the order in which the end effector accesses multiple targets in the same plane, such as heuristics, greedy algorithms, genetic algorithms, etc. Multiple metrics can be used to address this sequencing issue. For example, metrics may include: the total distance of the path to visit multiple targets on the plane (visited and only once) or the total time to visit multiple targets in Cartesian linear motion, etc.
在一个实施方式中,步骤101包括:In one embodiment, step 101 includes:
(1)、确定末端执行器访问多个目标的总距离最短的第一路径,基于第一路径确定顺序。(1) Determine the first path with the shortest total distance for the end effector to access multiple targets, and determine the order based on the first path.
比如,基于启发式算法、贪婪算法和基于遗传算法,确定末端执行器访问多个目标(访问且仅访问一次)的多个候选路径中的每条候选路径的总距离,从中确定出总距离最短的候选路径以作为第一路径,再基于第一路径中的目标访问顺序确定出末端执行器访问多个目标的顺序。For example, based on heuristic algorithms, greedy algorithms and genetic algorithms, determine the total distance of each candidate path in which the end effector visits multiple targets (visited and only once), and determines the shortest total distance. The candidate path is used as the first path, and then the order in which the end effector accesses multiple targets is determined based on the target access sequence in the first path.
(2)、确定当末端执行器在笛卡尔线性运动中访问多个目标的总时间最短的第二路径,基于第二路径确定顺序。(2) Determine the second path with the shortest total time when the end effector visits multiple targets in Cartesian linear motion, and determine the order based on the second path.
比如,基于启发式算法、贪婪算法和基于遗传算法,确定末端执行器在笛卡 尔线性运动(笛卡尔线性运动可以为直线运动,且每次运动的设置速度都相同)中访问多个目标(访问且仅访问一次)的多个候选路径的各自总时间,从中确定出总时间最短的路径以作为第二路径,再基于第二路径中的目标访问顺序确定出末端执行器访问多个目标的顺序。For example, based on heuristic algorithms, greedy algorithms and genetic algorithms, it is determined that the end effector visits multiple targets (visiting and only visited once), determine the path with the shortest total time as the second path, and then determine the order in which the end effector accesses multiple targets based on the target access sequence in the second path. .
步骤102:确定执行机构的动态约束条件。Step 102: Determine the dynamic constraints of the actuator.
在一个实施方式中,步骤102确定执行机构的动态约束条件包括:In one embodiment, step 102 determines the dynamic constraints of the actuator including:
(1)、经由与执行机构的运动控制器之间的接口,从执行机构的运动控制器获取动态约束条件。(1) Obtain dynamic constraints from the motion controller of the actuator through the interface with the motion controller of the actuator.
比如,可以经由与执行机构的运动控制器之间的无线接口或有线接口,获取执行机构的动态约束条件。For example, the dynamic constraints of the actuator can be obtained through a wireless interface or a wired interface with the motion controller of the actuator.
(2)、从云端获取动态约束条件。(2) Obtain dynamic constraints from the cloud.
比如,可以经由与云端之间的无线接口,获取执行机构的动态约束条件。For example, the dynamic constraints of the actuator can be obtained through the wireless interface with the cloud.
在一个实施方式中,动态约束条件包括下列中的至少一个:用于约束执行机构的速度的一阶约束条件;用于约束执行机构的加速度的二阶约束条件。In one embodiment, the dynamic constraints include at least one of the following: a first-order constraint for constraining the speed of the actuator; a second-order constraint for constraining the acceleration of the actuator.
比如,当执行机构为多关节机器人的执行机构时,对于关节速度受限的运动,规划约束可以表示为广义一阶约束,其中广义一阶约束如下:For example, when the actuator is that of a multi-joint robot, for motion with limited joint speeds, the planning constraints can be expressed as generalized first-order constraints, where the generalized first-order constraints are as follows:
Figure PCTCN2022116361-appb-000001
Figure PCTCN2022116361-appb-000001
其中:q为关节的位置向量;
Figure PCTCN2022116361-appb-000002
为关节的速度向量;
Figure PCTCN2022116361-appb-000003
为关节的加速度向量;A v(q)为依赖于q的第一可变系数;f v(q)为依赖于q的第二可变系数;l v(q)为依赖于q的一阶约束条件。基于用于约束执行机构的速度的一阶约束条件,可以确定出关节速度极限。类似地,基于用于约束末端执行器的速度的一阶约束条件,也可以确定出末端执行器的笛卡尔速度极限。
Among them: q is the position vector of the joint;
Figure PCTCN2022116361-appb-000002
is the velocity vector of the joint;
Figure PCTCN2022116361-appb-000003
is the acceleration vector of the joint; A v (q) is the first variable coefficient that depends on q; f v (q) is the second variable coefficient that depends on q; l v (q) is the first-order variable coefficient that depends on q Restrictions. Based on the first-order constraints used to constrain the speed of the actuator, the joint speed limits can be determined. Similarly, the Cartesian speed limit of the end-effector can also be determined based on the first-order constraints used to constrain the speed of the end-effector.
当执行机构为多关节机器人的执行机构时,对于关节扭矩受限和加速度受限的运动,规划约束可以表示为广义二阶约束,其中广义二阶约束如下:When the actuator is that of a multi-joint robot, for motion with limited joint torque and limited acceleration, the planning constraints can be expressed as generalized second-order constraints, where the generalized second-order constraints are as follows:
Figure PCTCN2022116361-appb-000004
Figure PCTCN2022116361-appb-000004
其中:A(q)是依赖于q的第三可变系数;T是转置运算符号;B(q)是与关节 的速度向量相关的第四可变系数;f(q)为依赖于q的第五可变系数,l(q)是依赖于q的二阶约束条件。基于用于约束执行机构的加速度的二阶约束条件,可以确定出关节加速度极限。类似地,基于用于约束末端执行器的加速度的二阶约束条件,也可以确定出末端执行器的笛卡尔加速度极限。Among them: A(q) is the third variable coefficient that depends on q; T is the transpose operation symbol; B(q) is the fourth variable coefficient related to the speed vector of the joint; f(q) is the variable coefficient that depends on q The fifth variable coefficient of l(q) is a second-order constraint that depends on q. Based on the second-order constraints used to constrain the acceleration of the actuator, the joint acceleration limits can be determined. Similarly, the Cartesian acceleration limit of the end-effector can also be determined based on the second-order constraints used to constrain the acceleration of the end-effector.
对于不同的限制,可以推导出A v(q)、f v(q)、l v(q)、A(q),B(q)、f(q)和l(q)的值。 For different constraints, the values of A v (q), f v (q), l v (q), A (q), B (q), f (q) and l (q) can be derived.
例如,基于动力学模型:
Figure PCTCN2022116361-appb-000005
For example, based on the dynamics model:
Figure PCTCN2022116361-appb-000005
其中M(q)是惯量矩阵;
Figure PCTCN2022116361-appb-000006
是科氏力和向心力矩阵;g(q)是重力向量;τ是关节扭矩向量。对应于二阶约束,A(q)=M(q),B(q)=C(q),f(q)=g(q),l(q)对应于由关节扭矩向量τ构成的约束条件(τ的上限和τ的下限)。然后,该问题可以转化为优化问题,可以使用各种优化工具(如qpsolver)解决优化问题。这些限制可以组合在一起(例如,关节速度和关节加速度),在优化问题中被视为不同的限制。确定出的运动规划方案需要满足这些限制。
where M(q) is the inertia matrix;
Figure PCTCN2022116361-appb-000006
is the Coriolis force and centripetal force matrix; g(q) is the gravity vector; τ is the joint torque vector. Corresponding to the second-order constraints, A(q)=M(q), B(q)=C(q), f(q)=g(q), l(q) corresponds to the constraint composed of the joint torque vector τ Conditions (upper limit of τ and lower limit of τ). The problem can then be transformed into an optimization problem, which can be solved using various optimization tools such as qpsolver. These constraints can be combined together (e.g., joint velocities and joint accelerations) and treated as different constraints in the optimization problem. The determined motion planning solution needs to meet these constraints.
步骤103:基于顺序和动态约束条件执行执行机构的运动规划。Step 103: Execute the motion planning of the actuator based on sequence and dynamic constraints.
在这里,基于顺序和动态约束条件对执行机构执行运动规划。也就是,在满足动态约束条件的前提下,规划出执行机构的运动,以使得末端执行器在该平面中按照步骤101中确定的顺序访问多个目标的总时间最短。比如,规划出的执行机构的运动可以包括每个关节(和/或末端执行器)的下列曲线:(1)、与时间相关的位置曲线;(2)、与时间相关的速度曲线;(3)、与时间相关的加速度曲线;(4)、与时间相关的扭矩曲线,等等。Here, motion planning is performed on the actuator based on sequence and dynamic constraints. That is, on the premise that the dynamic constraints are met, the movement of the actuator is planned so that the total time for the end effector to access multiple targets in the plane in the order determined in step 101 is the shortest. For example, the planned movement of the actuator can include the following curves of each joint (and/or end effector): (1), time-related position curve; (2), time-related speed curve; (3) ), time-related acceleration curve; (4), time-related torque curve, etc.
步骤104:基于运动规划结果生成执行机构的运动控制指令,其中运动控制指令适配于控制执行机构的运动,以使得末端执行器在相同平面中按照顺序访问多个目标的总时间最短。Step 104: Generate motion control instructions for the actuator based on the motion planning results, where the motion control instructions are adapted to control the movement of the actuator so that the total time for the end effector to sequentially access multiple targets in the same plane is the shortest.
比如,生成的运动控制指令可以携带下列中的至少一个:(1)、关节位置;(2)、具有关节速度的关节位置;(3)、具有速度和加速度的关节位置,等等。在控制执行机构的关节的运动控制指令中,还可以包含末端执行器(例如,安装 在执行机构上的工具)的运动控制指令。当执行机构移动时,末端执行器可以启动或停止,这可以通过在执行机构的Z轴上施加恒力来实现。比如,对于木材缺陷修复应用,可以在到达缺陷点之前启动修复工具,或经过缺陷点之后停止修复工具。For example, the generated motion control instruction can carry at least one of the following: (1) joint position; (2) joint position with joint velocity; (3) joint position with velocity and acceleration, and so on. The motion control instructions for controlling the joints of the actuator may also include motion control instructions for the end effector (for example, a tool installed on the actuator). The end effector can be started or stopped as the actuator moves, which is accomplished by applying a constant force on the Z-axis of the actuator. For example, for a wood defect repair application, the repair tool can be started before reaching the defect point or stopped after passing the defect point.
步骤105:发送运动控制指令。Step 105: Send motion control instructions.
在一个实施方式中,步骤105包括:In one embodiment, step 105 includes:
(1)、当运动控制指令的插补周期小于或等于预定阈值时,将运动控制指令发送到执行机构的运动控制器,以由运动控制器执行运动控制指令。(1) When the interpolation period of the motion control instruction is less than or equal to the predetermined threshold, the motion control instruction is sent to the motion controller of the actuator, so that the motion controller executes the motion control instruction.
(2)、当运动控制指令的插补周期大于预定阈值时,对运动控制指令的运动轨迹进行插补以生成插补后的运动控制指令,将插补后的运动控制指令发送到执行机构的运动控制器,以由运动控制器执行插补后的运动控制指令。(2) When the interpolation period of the motion control instruction is greater than the predetermined threshold, the motion trajectory of the motion control instruction is interpolated to generate the interpolated motion control instruction, and the interpolated motion control instruction is sent to the actuator. The motion controller executes the interpolated motion control instructions.
因此,可以基于插补周期实现不同的处理逻辑,保证了控制精度。Therefore, different processing logic can be implemented based on the interpolation cycle, ensuring control accuracy.
本发明实施方式还提出了一种执行机构的运动规划系统。图2为本发明实施方式的运动规划系统的运动规划过程的示范性示意图。The embodiment of the present invention also provides a motion planning system for an actuator. FIG. 2 is an exemplary schematic diagram of the motion planning process of the motion planning system according to the embodiment of the present invention.
运动规划系统包括:运动控制器12,被配置为控制执行机构13的运动;边缘设备11,包含第一接口18和第二接口30;其中边缘设备11被配置为:确定执行机构13中的末端执行器访问相同平面中的多个目标的顺序;基于第一接口18从运动控制器12接收执行机构13的动态约束条件;基于顺序和动态约束条件执行执行机构13的运动规划;基于运动规划结果生成执行机构13的运动控制指令,其中运动控制指令适配于控制执行机构13的运动,以使得末端执行器在相同平面中按照顺序访问多个目标的总时间最短;经由第二接口30向运动控制器12发送运动控制指令。The motion planning system includes: a motion controller 12, configured to control the movement of the actuator 13; an edge device 11, including a first interface 18 and a second interface 30; wherein the edge device 11 is configured to: determine the end in the actuator 13 The sequence in which the actuator accesses multiple targets in the same plane; receiving the dynamic constraints of the actuator 13 from the motion controller 12 based on the first interface 18; executing the motion planning of the actuator 13 based on the sequence and the dynamic constraints; based on the motion planning results Generate motion control instructions for the actuator 13 , wherein the motion control instructions are adapted to control the motion of the actuator 13 so that the total time for the end effector to access multiple targets sequentially in the same plane is the shortest; move to the actuator 13 via the second interface 30 The controller 12 sends motion control instructions.
在一个实施方式中,边缘设备11,被配置为当运动控制指令的插补周期小于或等于预定阈值时,将运动控制指令发送到执行机构13的运动控制器12,以由运动控制器12执行运动控制指令。在一个实施方式中,边缘设备11,当运动控制指令的插补周期大于预定阈值时,对运动控制指令的运动轨迹进行插补以生 成插补后的运动控制指令,将插补后的运动控制指令发送到执行机构13的运动控制器12,以由运动控制器12执行插补后的运动控制指令。In one embodiment, the edge device 11 is configured to send the motion control instruction to the motion controller 12 of the execution mechanism 13 to be executed by the motion controller 12 when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold. Motion control instructions. In one embodiment, the edge device 11, when the interpolation period of the motion control instruction is greater than a predetermined threshold, interpolates the motion trajectory of the motion control instruction to generate an interpolated motion control instruction, and converts the interpolated motion control instruction The instruction is sent to the motion controller 12 of the actuator 13 so that the motion controller 12 executes the interpolated motion control instruction.
以修复木板上的缺陷为例对图2进行说明。视觉系统10拍摄木板的照片,并基于木板的照片执行缺陷检测处理14,以确定出每个缺陷在木板平面中的坐标。视觉系统10将每个缺陷在木板平面中的坐标提供到边缘设备11。边缘设备11利用每个缺陷在木板平面中的坐标,执行顺序确定处理15(比如,确定出末端执行器的默认起始点,再确定出从默认起始点依次访问全部缺陷的总距离最短的候选路径,再基于候选路径确定出访问缺陷的先后顺序),以确定出执行机构13中的末端执行器(通常为胶水喷涂枪)修复这些缺陷的先后顺序。执行机构13的运动控制器12经由自身的状态接口33,向边缘设备11的第一接口18提供执行机构13的动态约束条件(比如,各个关节的位置极限、各个关节的速度极限、各个关节的加速度极限、末端执行器的笛卡尔位置极限、末端执行器的笛卡尔速度极限和末端执行器的笛卡尔加速度极限,等等)。Take repairing defects on wooden boards as an example to illustrate Figure 2. The vision system 10 takes a photo of the board and performs a defect detection process 14 based on the photo of the board to determine the coordinates of each defect in the plane of the board. The vision system 10 provides the coordinates of each defect in the plane of the board to the edge device 11 . The edge device 11 uses the coordinates of each defect in the plane of the board to execute the sequence determination process 15 (for example, determine the default starting point of the end effector, and then determine the shortest total distance candidate path that visits all defects in sequence from the default starting point , and then determine the sequence of accessing the defects based on the candidate paths) to determine the sequence of repairing these defects by the end effector (usually a glue spray gun) in the actuator 13 . The motion controller 12 of the actuator 13 provides the first interface 18 of the edge device 11 with the dynamic constraints of the actuator 13 (such as the position limit of each joint, the speed limit of each joint, and the speed limit of each joint) through its own status interface 33. acceleration limit, Cartesian position limit of the end effector, Cartesian speed limit of the end effector, Cartesian acceleration limit of the end effector, etc.).
动态约束获取处理17将执行机构13的动态约束条件发送到运动规划处理16。运动规划处理16基于顺序确定处理15提供的顺序以及执行机构13的动态约束条件,规划执行机构13的运动,以确定出执行机构13在平面中按照顺序访问全部缺陷的总时间最短时的、执行机构13的运动参数。比如,运动参数包括:每个关节的与时间相关的位置曲线、每个关节的与时间相关的速度曲线、每个关节的与时间相关的加速度曲线、每个关节的与时间相关的扭矩曲线、末端执行器的与时间相关的位置曲线、末端执行器的与时间相关的速度曲线和末端执行器的与时间相关的加速度曲线,等等。The dynamic constraint acquisition process 17 sends the dynamic constraints of the actuator 13 to the motion planning process 16 . The motion planning process 16 plans the movement of the actuator 13 based on the sequence provided by the sequence determination process 15 and the dynamic constraints of the actuator 13 to determine the execution when the total time for the actuator 13 to access all defects in sequence in the plane is the shortest. Motion parameters of mechanism 13. For example, the motion parameters include: the time-related position curve of each joint, the time-related velocity curve of each joint, the time-related acceleration curve of each joint, the time-related torque curve of each joint, A time-dependent position profile of the end effector, a time-dependent velocity profile of the end effector, a time-dependent acceleration profile of the end effector, and so on.
当运动控制指令生成处理19判定规划出的执行机构13的运动参数的插补周期小于或等于预定阈值时,运动控制指令生成处理19将规划出的执行机构13的运动参数携带在生成的运动控制指令中。运动控制指令生成处理19经由第二接口30将运动控制指令发送到运动控制器12的指令接收接口31。指令接收接口31将运动控制指令发送到运动控制内核132。运动控制内核32执行该运动控制指令,从而控制执行机构13运动以使得末端执行器按照顺序访问多个缺陷。其 中,当到达每个缺陷后,末端执行器开始执行缺陷修复工作。When the motion control instruction generation process 19 determines that the interpolation period of the planned motion parameters of the actuator 13 is less than or equal to the predetermined threshold, the motion control instruction generation process 19 carries the planned motion parameters of the actuator 13 in the generated motion control Instructions. The motion control instruction generation process 19 sends the motion control instruction to the instruction receiving interface 31 of the motion controller 12 via the second interface 30 . The instruction receiving interface 31 sends motion control instructions to the motion control core 132 . The motion control core 32 executes the motion control instruction, thereby controlling the movement of the actuator 13 so that the end effector accesses multiple defects in sequence. Among them, when each defect is reached, the end effector starts to perform defect repair work.
当运动控制指令生成处理19判定规划出的执行机构13的运动参数的插补周期大于预定阈值时,动态约束获取处理19对规划出的执行机构13的运动参数的运动轨迹进行插补以生成插补后的运动控制指令。运动控制指令生成处理19经由第二接口30将插补后的运动控制指令发送到运动控制器12的指令接收接口31。指令接收接口31将插补后的运动控制指令发送到运动控制内核32。运动控制内核32执行该插补后的运动控制指令,从而控制执行机构13运动以使得末端执行器按照顺序访问多个缺陷。或者,当运动控制指令生成处理19判定规划出的执行机构13的运动参数的插补周期大于预定阈值时,运动控制指令生成处理19不对规划出的执行机构13的运动参数进行插补,而是将其携带在运动控制指令中。运动控制指令生成处理19经由第二接口30将运动控制指令发送到运动控制器12的指令接收接口31。指令接收接口31将运动控制指令发送到运动控制内核32。运动控制内核32判定携带在运动控制指令中的、执行机构13的运动参数的插补周期大于预定阈值。运动控制内核32对执行机构13的运动参数的运动轨迹进行插补以生成插补后的运动控制指令,并执行该插补后的运动控制指令,从而控制执行机构13运动以使得末端执行器按照顺序访问多个缺陷。When the motion control instruction generation process 19 determines that the interpolation period of the planned motion parameters of the actuator 13 is greater than the predetermined threshold, the dynamic constraint acquisition process 19 interpolates the planned motion trajectory of the motion parameters of the actuator 13 to generate interpolation The supplemented motion control instructions. The motion control instruction generation process 19 sends the interpolated motion control instruction to the instruction receiving interface 31 of the motion controller 12 via the second interface 30 . The instruction receiving interface 31 sends the interpolated motion control instruction to the motion control core 32 . The motion control core 32 executes the interpolated motion control instructions, thereby controlling the movement of the actuator 13 so that the end effector accesses multiple defects in sequence. Alternatively, when the motion control instruction generation process 19 determines that the interpolation period of the planned motion parameters of the actuator 13 is greater than the predetermined threshold, the motion control instruction generation process 19 does not interpolate the planned motion parameters of the actuator 13 , but Carry it in the motion control instruction. The motion control instruction generation process 19 sends the motion control instruction to the instruction receiving interface 31 of the motion controller 12 via the second interface 30 . The instruction receiving interface 31 sends motion control instructions to the motion control core 32 . The motion control core 32 determines that the interpolation period of the motion parameters of the execution mechanism 13 carried in the motion control instruction is greater than a predetermined threshold. The motion control core 32 interpolates the motion trajectory of the motion parameters of the actuator 13 to generate an interpolated motion control instruction, and executes the interpolated motion control instruction, thereby controlling the movement of the actuator 13 so that the end effector follows the Access multiple defects sequentially.
图3为本发明实施方式的确定修复缺陷的顺序的示意图。如图3所示,在二维平面上随机产生20个缺陷,表示为点。按照本发明实施方式确定访问这些点的顺序,连接这些点的路径由访问顺序确定。FIG. 3 is a schematic diagram of determining the order of repairing defects according to an embodiment of the present invention. As shown in Figure 3, 20 defects are randomly generated on a two-dimensional plane, represented as points. The order of accessing these points is determined according to the embodiment of the present invention, and the path connecting these points is determined by the access order.
图4为本发明实施方式的关节位置、速度和加速度的示意图。在图4中,绘制了第一关节(机架的X轴)和第二关节(机架的Y轴)的规划运动曲线,包括第一关节的位置曲线41、第二关节的位置曲线42、第一关节的速度曲线43、第二关节的速度曲线44、第一关节的加速度曲线45和第二关节的加速度曲线46。其中:第一关节和第二关节的速度均在关节速度约束范围之内(小于0.8m/s),第一关节和第二关节的加速度也在关节加速度约束范围内(小于1.2m/s 2))。 Figure 4 is a schematic diagram of joint positions, speeds and accelerations according to an embodiment of the present invention. In Figure 4, the planned motion curves of the first joint (X-axis of the frame) and the second joint (Y-axis of the frame) are drawn, including the position curve 41 of the first joint, the position curve 42 of the second joint, The speed curve 43 of the first joint, the speed curve 44 of the second joint, the acceleration curve 45 of the first joint and the acceleration curve 46 of the second joint. Among them: the speed of the first joint and the second joint is within the joint speed constraint range (less than 0.8m/s), and the acceleration of the first joint and the second joint is also within the joint acceleration constraint range (less than 1.2m/s 2 )).
表1为将本发明实施方式与贪婪算法进行比较的示意表。在贪婪算法中,总是访问下一个最近的目标,并将它们用笛卡尔线性运动(直线运动)相连接。由 表1可见,对于20个缺陷,本发明实施方式可以将循环时间(比如,修复全部缺陷所需要的时间)减少29%。Table 1 is a schematic table comparing the embodiment of the present invention with the greedy algorithm. In the greedy algorithm, the next closest target is always visited and connected with Cartesian linear motion (straight line motion). It can be seen from Table 1 that for 20 defects, the embodiment of the present invention can reduce the cycle time (for example, the time required to repair all defects) by 29%.
Figure PCTCN2022116361-appb-000007
Figure PCTCN2022116361-appb-000007
表1Table 1
总之,在本发明实施方式中,首先执行顺序确定过程:该过程用于确定从视觉系统接收到的目标的访问序列(例如,在木板上检测到的位置)。然后,执行动态约束采集过程:该过程用于通过状态接口从执行机构的运动控制系统获取执行机构的动态约束条件,其中动态约束条件可以包括关节位置极限、关节速度极限、关节加速度极限、末端执行器的笛卡尔位置极限、末端执行器的笛卡尔速度极限和末端执行器的笛卡尔加速度极限,等等。接着,执行运动规划过程:该过程用于规划满足给定目标访问顺序和动态约束条件的运动,其目的是通过将执行机构驱动到极限来改善循环时间。然后,执行运动控制指令生成过程:该过程负责生成运动控制指令,将运动控制指令发送到运动控制系统以驱动执行机构。运动控制指令可用于控制执行机构或末端执行器(例如,安装在执行机构上的工具)。In summary, in the embodiment of the present invention, a sequence determination process is first performed: this process is used to determine the access sequence of the target received from the vision system (for example, the detected position on the wooden board). Then, execute the dynamic constraint acquisition process: This process is used to obtain the dynamic constraints of the actuator from the motion control system of the actuator through the status interface, where the dynamic constraints can include joint position limits, joint speed limits, joint acceleration limits, and end execution The Cartesian position limit of the end effector, the Cartesian speed limit of the end effector, the Cartesian acceleration limit of the end effector, and so on. Next, a motion planning process is performed: This process is used to plan motion that satisfies a given target access sequence and dynamic constraints, with the goal of improving cycle times by driving the actuators to their limits. Then, the motion control instruction generation process is executed: this process is responsible for generating motion control instructions and sending the motion control instructions to the motion control system to drive the actuator. Motion control instructions can be used to control an actuator or end effector (for example, a tool mounted on the actuator).
图5为本发明实施方式的控制执行机构运动的示范性示意图。在图5中,六轴机器人包括底部关节22、肩关节23、肘关节24、第一腕关节25、第二腕关节26和第三腕关节26,第三腕关节26上布置有末端执行器,其中肩关节23、肘关节24、第一腕关节25、第二腕关节26和第三腕关节26属于非底部关节。底部关节22、肩关节23、肘关节24、第一腕关节25、第二腕关节26和第三腕关 节26分别具有自己的自由度。底部关节22布置在支架21上;肩关节23串联到底部关节22;肘关节24串联到肩关节23;第一腕关节25串联到肘关节24;第二腕关节26串联到第一腕关节25;第三腕关节26串联到第二腕关节26。布置在六轴机器人之外的机器人控制器20与底部关节22具有Profinet连接。底部关节22、肩关节23、肘关节24、第一腕关节25、第二腕关节26和第三腕关节26共同连接到六轴机器人内部的CAN总线。Figure 5 is an exemplary schematic diagram of the movement of the control actuator according to the embodiment of the present invention. In Figure 5, the six-axis robot includes a bottom joint 22, a shoulder joint 23, an elbow joint 24, a first wrist joint 25, a second wrist joint 26 and a third wrist joint 26. An end effector is arranged on the third wrist joint 26. , among which the shoulder joint 23, the elbow joint 24, the first wrist joint 25, the second wrist joint 26 and the third wrist joint 26 are non-bottom joints. The bottom joint 22, the shoulder joint 23, the elbow joint 24, the first wrist joint 25, the second wrist joint 26 and the third wrist joint 26 each have their own degrees of freedom. The bottom joint 22 is arranged on the bracket 21; the shoulder joint 23 is connected in series to the bottom joint 22; the elbow joint 24 is connected in series to the shoulder joint 23; the first wrist joint 25 is connected in series to the elbow joint 24; the second wrist joint 26 is connected in series to the first wrist joint 25 ; The third wrist joint 26 is connected in series to the second wrist joint 26. The robot controller 20 arranged outside the six-axis robot has a Profinet connection with the bottom joint 22 . The bottom joint 22, the shoulder joint 23, the elbow joint 24, the first wrist joint 25, the second wrist joint 26 and the third wrist joint 26 are jointly connected to the CAN bus inside the six-axis robot.
机器人控制器20与边缘设备28连接。边缘设备28与视觉系统29连接。视觉系统29拍摄木板的照片,并基于木板的照片执行缺陷检测处理,以确定出每个缺陷在木板平面中的坐标。视觉系统29将每个缺陷在木板平面中的坐标提供到边缘设备28。边缘设备28利用每个缺陷在木板平面中的坐标确定第三腕关节26上的末端执行器访问木板中的多个缺陷的顺序,基于该顺序和六轴机器人的动态约束条件对六轴机器人的运动执行规划,基于规划结果生成六轴机器人的运动控制指令,该运动控制指令控制六轴机器人的运动以使得末端执行器在木板平面中按照顺序访问多个缺陷的总时间最短。边缘设备28将运动控制指令发送到机器人控制器20,机器人控制器20执行该运动控制指令。 Robot controller 20 is connected to edge device 28 . Edge device 28 is connected to vision system 29 . The vision system 29 takes photos of the board and performs defect detection processing based on the photos of the board to determine the coordinates of each defect in the plane of the board. The vision system 29 provides the coordinates of each defect in the plane of the board to the edge device 28 . The edge device 28 uses the coordinates of each defect in the plane of the board to determine the order in which the end effector on the third wrist joint 26 accesses the multiple defects in the board. Based on this order and the dynamic constraints of the six-axis robot, the edge device 28 determines the sequence of the six-axis robot. Motion execution planning generates motion control instructions for the six-axis robot based on the planning results. The motion control instructions control the motion of the six-axis robot so that the total time for the end effector to access multiple defects sequentially in the plank plane is the shortest. The edge device 28 sends motion control instructions to the robot controller 20, and the robot controller 20 executes the motion control instructions.
图6是根据本发明实施方式的执行机构的运动规划装置的示范性结构图。如图6所示,装置600包括:Figure 6 is an exemplary structural diagram of a motion planning device of an actuator according to an embodiment of the present invention. As shown in Figure 6, device 600 includes:
第一确定模块601,被配置为确定执行机构中的末端执行器访问相同平面中的多个目标的顺序;The first determination module 601 is configured to determine the order in which the end effector in the execution mechanism accesses multiple targets in the same plane;
第二确定模块602,被配置为确定执行机构的动态约束条件;The second determination module 602 is configured to determine the dynamic constraints of the actuator;
运动规划模块603,被配置为基于顺序和动态约束条件执行执行机构的运动规划;The motion planning module 603 is configured to execute motion planning of the actuator based on sequence and dynamic constraints;
指令生成模块604,被配置为基于运动规划结果生成执行机构的运动控制指令,其中运动控制指令适配于控制执行机构在相同平面中按照顺序访问多个目标的总时间最短;The instruction generation module 604 is configured to generate motion control instructions for the actuator based on the motion planning results, where the motion control instructions are adapted to control the actuator to access multiple targets sequentially in the same plane in the shortest total time;
发送模块605,被配置为发送运动控制指令。The sending module 605 is configured to send motion control instructions.
在一个实施方式中,第一确定模块601,被配置为执行下列中的至少一个:确定末端执行器访问多个目标的总距离最短的第一路径,基于第一路径确定顺序;确定当末端执行器在笛卡尔线性运动中访问多个目标的总时间最短的第二路径,基于第二路径确定顺序。In one embodiment, the first determination module 601 is configured to perform at least one of the following: determine the first path with the shortest total distance for the end effector to access multiple targets, and determine the order based on the first path; determine when the end effector executes The second path that takes the shortest total time to access multiple targets in Cartesian linear motion, and the order is determined based on the second path.
在一个实施方式中,第二确定模块602,被配置为执行下列中的至少一个:经由与执行机构的运动控制器之间的接口,从执行机构的运动控制器获取动态约束条件;从云端获取动态约束条件。优选地,动态约束条件包括下列中的至少一个:用于约束执行机构的速度的一阶约束条件;用于约束执行机构的加速度的二阶约束条件。In one embodiment, the second determination module 602 is configured to perform at least one of the following: obtaining dynamic constraints from the motion controller of the actuator via an interface with the motion controller of the actuator; obtaining from the cloud Dynamic constraints. Preferably, the dynamic constraints include at least one of the following: a first-order constraint for constraining the speed of the actuator; a second-order constraint for constraining the acceleration of the actuator.
在一个实施方式中,发送模块605,被配置为当运动控制指令的插补周期小于或等于预定阈值时,将运动控制指令发送到执行机构的运动控制器,以由运动控制器执行运动控制指令;当运动控制指令的插补周期大于预定阈值时,对运动控制指令的运动轨迹进行插补以生成插补后的运动控制指令,将插补后的运动控制指令发送到执行机构的运动控制器,以由运动控制器执行插补后的运动控制指令。In one embodiment, the sending module 605 is configured to send the motion control instruction to the motion controller of the actuator when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold, so that the motion controller executes the motion control instruction. ; When the interpolation period of the motion control instruction is greater than the predetermined threshold, interpolate the motion trajectory of the motion control instruction to generate the interpolated motion control instruction, and send the interpolated motion control instruction to the motion controller of the actuator , so that the motion controller executes the interpolated motion control instructions.
本发明实施方式还提出了一种边缘设备。图7是根据本发明实施方式的边缘设备的示范性结构图。如图7所示,边缘设备700包括处理器701、存储器702及存储在存储器702上并可在处理器701上运行的计算机程序,计算机程序被处理器701执行时实现如上任一种的执行机构的运动规划方法。其中,存储器702具体可以实施为电可擦可编程只读存储器(EEPROM)、快闪存储器(Flash memory)、可编程程序只读存储器(PROM)等多种存储介质。处理器701可以实施为包括一或多个中央处理器或一或多个现场可编程门阵列,其中现场可编程门阵列集成一或多个中央处理器核。具体地,中央处理器或中央处理器核可以实施为CPU或MCU或DSP,等等。The embodiment of the present invention also provides an edge device. Figure 7 is an exemplary structural diagram of an edge device according to an embodiment of the present invention. As shown in Figure 7, the edge device 700 includes a processor 701, a memory 702, and a computer program stored on the memory 702 and executable on the processor 701. When the computer program is executed by the processor 701, any of the above execution mechanisms are implemented. motion planning method. Among them, the memory 702 can be implemented as various storage media such as electrically erasable programmable read-only memory (EEPROM), flash memory (Flash memory), programmable programmable read-only memory (PROM), etc. The processor 701 may be implemented to include one or more central processing units or one or more field programmable gate arrays, where the field programmable gate array integrates one or more central processing unit cores. Specifically, the central processing unit or central processing unit core may be implemented as a CPU, an MCU, a DSP, or the like.
需要说明的是,上述各流程和各结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。各模块的划分仅仅是为了便于描述采用的功能上的划分,实 际实现时,一个模块可以分由多个模块实现,多个模块的功能也可以由同一个模块实现,这些模块可以位于同一个设备中,也可以位于不同的设备中。It should be noted that not all steps and modules in the above-mentioned processes and structure diagrams are necessary, and some steps or modules can be ignored according to actual needs. The execution order of each step is not fixed and can be adjusted as needed. The division of each module is only for the convenience of describing the functional division. In actual implementation, one module can be implemented by multiple modules, and the functions of multiple modules can also be implemented by the same module. These modules can be located on the same device. , or it can be on a different device.
各实施方式中的硬件模块可以以机械方式或电子方式实现。例如,一个硬件模块可以包括专门设计的永久性电路或逻辑器件(如专用处理器,如FPGA或ASIC)用于完成特定的操作。硬件模块也可以包括由软件临时配置的可编程逻辑器件或电路(如包括通用处理器或其它可编程处理器)用于执行特定操作。至于具体采用机械方式,或是采用专用的永久性电路,或是采用临时配置的电路(如由软件进行配置)来实现硬件模块,可以根据成本和时间上的考虑来决定。The hardware modules in various embodiments may be implemented mechanically or electronically. For example, a hardware module may include specially designed permanent circuits or logic devices (such as a dedicated processor such as an FPGA or ASIC) to perform specific operations. Hardware modules may also include programmable logic devices or circuits (eg, including general-purpose processors or other programmable processors) temporarily configured by software to perform specific operations. As for the specific use of mechanical means, or the use of dedicated permanent circuits, or the use of temporarily configured circuits (such as configured by software) to implement the hardware modules, it can be decided based on cost and time considerations.
以上所述,仅为本发明的较佳实施方式而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。The above descriptions are only preferred embodiments of the present invention and are not intended to limit the scope of the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention shall be included in the protection scope of the present invention.

Claims (15)

  1. 一种执行机构的运动规划方法(100),其特征在于,所述方法(100)包括:A motion planning method (100) for an actuator, characterized in that the method (100) includes:
    确定执行机构中的末端执行器访问相同平面中的多个目标的顺序(101);Determine the order in which end effectors in an actuator access multiple targets in the same plane (101);
    确定所述执行机构的动态约束条件(102);Determine the dynamic constraints of the actuator (102);
    基于所述顺序和所述动态约束条件执行所述执行机构的运动规划(103);Execute motion planning of the actuator based on the sequence and the dynamic constraints (103);
    基于运动规划结果生成所述执行机构的运动控制指令,其中所述运动控制指令适配于控制所述执行机构的运动,以使得所述末端执行器在所述相同平面中按照所述顺序访问所述多个目标的总时间最短(104);Motion control instructions of the actuator are generated based on the motion planning results, wherein the motion control instructions are adapted to control the motion of the actuator so that the end effector accesses all the actuators in the same plane in the order. The total time required to describe multiple goals is the shortest (104);
    发送所述运动控制指令(105)。Send the motion control instructions (105).
  2. 根据权利要求1所述的方法(100),其特征在于,所述确定执行机构中的末端执行器访问相同平面中的多个目标的顺序(101)包括下列中的至少一个:The method (100) according to claim 1, characterized in that determining the order (101) in which the end effector in the actuator accesses multiple targets in the same plane includes at least one of the following:
    确定所述末端执行器访问所述多个目标的总距离最短的第一路径,基于所述第一路径确定所述顺序;Determine a first path with the shortest total distance for the end effector to access the plurality of targets, and determine the order based on the first path;
    确定当末端执行器在笛卡尔线性运动中访问所述多个目标的总时间最短的第二路径,基于所述第二路径确定所述顺序。A second path is determined that has the shortest total time when the end effector visits the plurality of targets in Cartesian linear motion, and the sequence is determined based on the second path.
  3. 根据权利要求1所述的方法(100),其特征在于,所述确定执行机构的动态约束条件(102)包括下列中的至少一个:The method (100) according to claim 1, characterized in that determining the dynamic constraints (102) of the actuator includes at least one of the following:
    经由与所述执行机构的运动控制器之间的接口,从所述执行机构的运动控制器获取所述动态约束条件;obtaining the dynamic constraints from the motion controller of the actuator via an interface with the motion controller of the actuator;
    从云端获取所述动态约束条件。Obtain the dynamic constraints from the cloud.
  4. 根据权利要求1所述的方法(100),其特征在于,所述动态约束条件包括下列中的至少一个:The method (100) according to claim 1, characterized in that the dynamic constraints include at least one of the following:
    用于约束所述执行机构的速度的一阶约束条件;First-order constraints used to constrain the speed of the actuator;
    用于约束所述执行机构的加速度的二阶约束条件。Second-order constraints used to constrain the acceleration of the actuator.
  5. 根据权利要求1-4中任一项所述的方法(100),其特征在于,所述发送所述运动控制指令(105)包括:The method (100) according to any one of claims 1-4, characterized in that sending the motion control instruction (105) includes:
    当所述运动控制指令的插补周期小于或等于预定阈值时,将所述运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述运动控制指令;When the interpolation period of the motion control instruction is less than or equal to a predetermined threshold, sending the motion control instruction to the motion controller of the actuator, so that the motion controller executes the motion control instruction;
    当所述运动控制指令的插补周期大于预定阈值时,对所述运动控制指令的运动轨迹进 行插补以生成插补后的运动控制指令,将所述插补后的运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述插补后的运动控制指令。When the interpolation period of the motion control instruction is greater than a predetermined threshold, the motion trajectory of the motion control instruction is interpolated to generate an interpolated motion control instruction, and the interpolated motion control instruction is sent to the The motion controller of the actuator is used to execute the interpolated motion control instruction by the motion controller.
  6. 一种执行机构的运动规划装置(600),其特征在于,所述装置(600)包括:A motion planning device (600) for an actuator, characterized in that the device (600) includes:
    第一确定模块(601),被配置为确定执行机构中的末端执行器访问相同平面中的多个目标的顺序;A first determination module (601) configured to determine an order in which the end effector in the actuator accesses multiple targets in the same plane;
    第二确定模块(602),被配置为确定所述执行机构的动态约束条件;The second determination module (602) is configured to determine the dynamic constraints of the actuator;
    运动规划模块(603),被配置为基于所述顺序和所述动态约束条件执行所述执行机构的运动规划;A motion planning module (603) configured to execute motion planning of the actuator based on the sequence and the dynamic constraints;
    指令生成模块(604),被配置为基于运动规划结果生成所述执行机构的运动控制指令,其中所述运动控制指令适配于控制所述执行机构的运动,以使得所述末端执行器在所述相同平面中按照所述顺序访问所述多个目标的总时间最短;An instruction generation module (604) configured to generate motion control instructions for the actuator based on motion planning results, wherein the motion control instructions are adapted to control the movement of the actuator so that the end effector is at the desired position. The total time for accessing the multiple targets in the same plane in the order is the shortest;
    发送模块(605),被配置为发送所述运动控制指令。The sending module (605) is configured to send the motion control instruction.
  7. 根据权利要求6所述的装置(600),其特征在于,所述第一确定模块(601),被配置为执行下列中的至少一个:The device (600) according to claim 6, characterized in that the first determining module (601) is configured to perform at least one of the following:
    确定所述末端执行器访问所述多个目标的总距离最短的第一路径,基于所述第一路径确定所述顺序;Determine a first path with the shortest total distance for the end effector to access the plurality of targets, and determine the order based on the first path;
    确定当末端执行器在笛卡尔线性运动中访问所述多个目标的总时间最短的第二路径,基于所述第二路径确定所述顺序。A second path is determined that has the shortest total time when the end effector visits the plurality of targets in Cartesian linear motion, and the sequence is determined based on the second path.
  8. 根据权利要求6所述的装置(600),其特征在于,所述第二确定模块(602),被配置为执行下列中的至少一个:The device (600) according to claim 6, characterized in that the second determination module (602) is configured to perform at least one of the following:
    经由与所述执行机构的运动控制器之间的接口,从所述执行机构的运动控制器获取所述动态约束条件;obtaining the dynamic constraints from the motion controller of the actuator via an interface with the motion controller of the actuator;
    从云端获取所述动态约束条件。Obtain the dynamic constraints from the cloud.
  9. 根据权利要求6所述的装置(600),其特征在于,所述动态约束条件包括下列中的至少一个:The device (600) according to claim 6, characterized in that the dynamic constraints include at least one of the following:
    用于约束执行机构的速度的一阶约束条件;First-order constraints used to constrain the speed of the actuator;
    用于约束执行机构的加速度的二阶约束条件。Second-order constraints used to constrain the actuator's acceleration.
  10. 根据权利要求6-9中任一项所述的装置(600),其特征在于,The device (600) according to any one of claims 6-9, characterized in that,
    所述发送模块(605),被配置为当所述运动控制指令的插补周期小于或等于预定阈 值时,将所述运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述运动控制指令;当所述运动控制指令的插补周期大于预定阈值时,对所述运动控制指令的运动轨迹进行插补以生成插补后的运动控制指令,将所述插补后的运动控制指令发送到所述执行机构的运动控制器,以由所述运动控制器执行所述插补后的运动控制指令。The sending module (605) is configured to send the motion control instruction to the motion controller of the actuator when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold. The controller executes the motion control instruction; when the interpolation period of the motion control instruction is greater than a predetermined threshold, the motion trajectory of the motion control instruction is interpolated to generate an interpolated motion control instruction, and the interpolated motion control instruction is The interpolated motion control instruction is sent to the motion controller of the actuator, so that the motion controller executes the interpolated motion control instruction.
  11. 一种执行机构的运动规划系统,其特征在于,包括:A motion planning system for an actuator, which is characterized by including:
    运动控制器(12),被配置为控制执行机构(13)的运动;a motion controller (12) configured to control the movement of the actuator (13);
    边缘设备(11),包含第一接口(18)和第二接口(30);An edge device (11) includes a first interface (18) and a second interface (30);
    其中所述边缘设备(11)被配置为:确定所述执行机构(13)中的末端执行器访问相同平面中的多个目标的顺序;基于所述第一接口(18)从所述运动控制器(12)接收所述执行机构(13)的动态约束条件;基于所述顺序和所述动态约束条件执行所述执行机构(13)的运动规划;基于运动规划结果生成所述执行机构(13)的运动控制指令,其中所述运动控制指令适配于控制所述执行机构(13)的运动,以使得所述末端执行器在所述相同平面中按照所述顺序访问所述多个目标的总时间最短;经由所述第二接口(30)向所述运动控制器(12)发送所述运动控制指令。wherein the edge device (11) is configured to: determine the order in which the end effector in the actuator (13) accesses multiple targets in the same plane; control the motion from the motion control based on the first interface (18) The controller (12) receives the dynamic constraints of the actuator (13); executes the motion planning of the actuator (13) based on the sequence and the dynamic constraints; generates the actuator (13) based on the motion planning results. ) motion control instructions, wherein the motion control instructions are adapted to control the movement of the actuator (13) so that the end effector accesses the plurality of targets in the same plane in the order. The total time is the shortest; the motion control instruction is sent to the motion controller (12) via the second interface (30).
  12. 根据权利要求11所述的执行机构的运动规划系统,其特征在于,The motion planning system of an actuator according to claim 11, characterized in that:
    所述边缘设备(11),被配置为当所述运动控制指令的插补周期小于或等于预定阈值时,将所述运动控制指令发送到所述执行机构(13)的运动控制器(12),以由所述运动控制器(12)执行所述运动控制指令;当所述运动控制指令的插补周期大于预定阈值时,对所述运动控制指令的运动轨迹进行插补以生成插补后的运动控制指令,将所述插补后的运动控制指令发送到所述执行机构(13)的运动控制器(12),以由所述运动控制器(12)执行所述插补后的运动控制指令。The edge device (11) is configured to send the motion control instruction to the motion controller (12) of the actuator (13) when the interpolation period of the motion control instruction is less than or equal to a predetermined threshold. , to execute the motion control instruction by the motion controller (12); when the interpolation period of the motion control instruction is greater than a predetermined threshold, interpolate the motion trajectory of the motion control instruction to generate an interpolated motion control instructions, and send the interpolated motion control instructions to the motion controller (12) of the actuator (13), so that the motion controller (12) executes the interpolated motion. Control instruction.
  13. 一种边缘设备(700),其特征在于,包括:An edge device (700), characterized by including:
    处理器(701);processor(701);
    存储器(702),用于存储所述处理器(701)的可执行指令;Memory (702), used to store executable instructions of the processor (701);
    所述处理器(701),用于从所述存储器(702)中读取所述可执行指令,并执行所述可执行指令以实施权利要求1-5中任一项所述的执行机构的运动规划方法(100)。The processor (701) is configured to read the executable instructions from the memory (702) and execute the executable instructions to implement the execution mechanism of any one of claims 1-5. Motion planning methods (100).
  14. 一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令被处理器执行时实施权利要求1-5中任一项所述的执行机构的运动规划方法(100)。A computer-readable storage medium with computer instructions stored thereon, characterized in that when the computer instructions are executed by a processor, the motion planning method (100) of the execution mechanism of any one of claims 1-5 is implemented. .
  15. 一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器 执行时实施权利要求1-5中任一项所述的执行机构的运动规划方法(100)。A computer program product, characterized in that it includes a computer program that implements the motion planning method (100) of an execution mechanism according to any one of claims 1 to 5 when the computer program is executed by a processor.
PCT/CN2022/116361 2022-08-31 2022-08-31 Motion planning method, apparatus and system for actuator, and storage medium WO2024045091A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/116361 WO2024045091A1 (en) 2022-08-31 2022-08-31 Motion planning method, apparatus and system for actuator, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/116361 WO2024045091A1 (en) 2022-08-31 2022-08-31 Motion planning method, apparatus and system for actuator, and storage medium

Publications (1)

Publication Number Publication Date
WO2024045091A1 true WO2024045091A1 (en) 2024-03-07

Family

ID=90100015

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/116361 WO2024045091A1 (en) 2022-08-31 2022-08-31 Motion planning method, apparatus and system for actuator, and storage medium

Country Status (1)

Country Link
WO (1) WO2024045091A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020189A (en) * 2016-05-24 2016-10-12 武汉科技大学 Air-to-ground heterogeneous robot system path planning method based on neighborhood constraint
WO2017139613A1 (en) * 2016-02-11 2017-08-17 Massachusetts Institute Of Technology Motion planning for robotic systems
CN110531773A (en) * 2019-09-12 2019-12-03 北京极智嘉科技有限公司 Robot path dispatching method, device, server and storage medium
CN111805542A (en) * 2020-07-09 2020-10-23 上海有个机器人有限公司 Storage cabin mechanical arm movement control method and device
CN113741486A (en) * 2021-11-05 2021-12-03 中国科学院自动化研究所 Space robot intelligent motion planning method and system based on multiple constraints

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017139613A1 (en) * 2016-02-11 2017-08-17 Massachusetts Institute Of Technology Motion planning for robotic systems
CN106020189A (en) * 2016-05-24 2016-10-12 武汉科技大学 Air-to-ground heterogeneous robot system path planning method based on neighborhood constraint
CN110531773A (en) * 2019-09-12 2019-12-03 北京极智嘉科技有限公司 Robot path dispatching method, device, server and storage medium
CN111805542A (en) * 2020-07-09 2020-10-23 上海有个机器人有限公司 Storage cabin mechanical arm movement control method and device
CN113741486A (en) * 2021-11-05 2021-12-03 中国科学院自动化研究所 Space robot intelligent motion planning method and system based on multiple constraints

Similar Documents

Publication Publication Date Title
CN109848983B (en) Method for guiding robot to cooperatively work by high-compliance person
Ratiu et al. Industrial robot trajectory optimization-a review
Kabir et al. Generation of synchronized configuration space trajectories of multi-robot systems
KR102312368B1 (en) System, method for controlling redundant robot, and a recording medium having computer readable program for executing the method
JP2015030044A (en) Robot system and method for manufacturing workpiece
JP2014028407A (en) Control unit and control method for robot, and robot
JP7237447B2 (en) Information processing method, program, recording medium, information processing device, robot system, and article manufacturing method
JP2010167515A (en) Multi-axial robot and speed controller for the same
KR102553391B1 (en) Handling device with robot, method and computer program
CN115946131B (en) Flexible joint mechanical arm motion control simulation calculation method and device
JP2016002627A (en) Working trajectory generation apparatus and method
CN111515928A (en) Mechanical arm motion control system
CN114055467A (en) Space pose online simulation system based on five-degree-of-freedom robot
JP6390832B2 (en) Processing trajectory generating apparatus and method
Liu et al. Model-based adaptive hybrid control for manipulators under multiple geometric constraints
WO2024045091A1 (en) Motion planning method, apparatus and system for actuator, and storage medium
US20200189102A1 (en) Robot apparatus, robot system, control method of robot apparatus, product manufacturing method using robot apparatus, and storage medium
Alatartsev et al. Robot trajectory optimization for the relaxed end-effector path
KR101411503B1 (en) Robot control apparatus and method thereof
JP2021186929A (en) Control method for multi-axis robot
JP2020097101A (en) Robot device, robot system, robot device control method, method of manufacturing article using robot device, control program, and recording medium
Gueta et al. Multiple-goal task realization utilizing redundant degrees of freedom of task and tool attachment optimization
US11738458B2 (en) Control method for robot system
Lei et al. Vision-based position/impedance control for robotic assembly task
Maťuga Control and positioning of robotic arm on CNC cutting machines and their applications in industry