Patent ID: 11897143
Assignee: ZHEJIANG UNIVERSITY
Field: Handling (Mechanical engineering)
Classification: CPC B  G | IPC B

Claim 0:
1. A method for performing a non-revisiting coverage task by a manipulator with a least number of lift-offs, wherein an end-effector of the manipulator is in point contact with a surface of an object to be covered; a relative positional relationship among the object to be covered, the manipulator and a surrounding obstacle is known and remains unchanged during the performing of the coverage task;
the method for performing the non-revisiting coverage task by the manipulator with the least number of lift-offs specifically comprises following steps:
Step 1: solving inverse kinematics of the manipulator for all points on a curved-surface M of the object to be covered to obtain poses of the manipulator when covering the points; denoting all feasible poses for any point p on the curved-surface M as {Jp1, Jp2, . . . , Jpn}; determining that all the points correspond to a set of feasible poses if the surface of the object to be covered is fully covered; otherwise, determining that a non-coverable point on the surface of the object to be covered does not correspond to any pose, wherein the feasible poses for all the points on the surface M constitute a joint space of the manipulator, and the joint space of the manipulator comprises singular and non-singular poses;
Step 2: removing all singular poses, and dividing the joint space of the manipulator into a plurality of disjoint sets, wherein each set stores poses that can be continuously executed by the manipulator; labeling the poses in a same set with a same number, and labeling the poses in different sets with different numbers; numbering the different sets as c1, . . . , cn; obtaining a combination of numbers corresponding to each point p on the curved-surface M based on the numbers corresponding to the feasible poses for the point;
Step 3: dividing points with a same combination of numbers and connected on the curved-surface M of a object to be covered into a same cell according to the connectivity of the points on the surface M of the object to be covered; defining a boundary between two cells as a topological edge; giving each cell a unique number to obtain a first cell, a second cell, . . . , an N-th cell, wherein each cell covers different types of poses of the manipulator within this cell (represented by the combination of numbers), and stores numbers of adjacent cells in sequence;
Step 4: encoding all different cutting methods of a simply-connected cell by using binary numbers, wherein a number of digits in the binary number represents a number of topological edges of the cell; the corresponding digits in the binary number are 1 or 0; 0 means that the topological edge is to be retained, that is, the two cells on both sides of the topological edge eventually have different numbers, and the end-effector is lifted off once when the manipulator performs the task; 1 means that the topological edge is to be discarded, that is, areas on both sides of the topological edge eventually have the same number, and are to be continuously covered by the end-effector without a lift-off when the manipulator performs the task; for a cell with 1, 2 or 3 topological edges, directly deriving an optimal solution through enumeration; for a cell with more than 3 topological edges, decomposing the cell into sub-cells with less topological edges than the original cell, and solving all the sub-cells recursively to obtain all possible solutions;
Step 5: recursively solving an n-connected cell with n-1 inner boundaries, wherein, the n-connected cell is decomposed as follows:
(5.1) when n=1, the cell is a simply-connected cell as described in Step 4, and the cell is solved by Step 4;
(5.2) when n=2, the cell has two boundaries, an inner boundary and an outer boundary; each boundary is composed of a plurality of topological edges, and each topological edge is connected to the other cell; all possible solutions of the two-connected cell are completely classified as follows:
(5.2.1) for cutting paths that do not connect the inner and outer boundaries, separating the inner and outer boundaries to obtain two simply-connected cells, and solving the two cells separately;
(5.2.2) for cutting paths that connect the inner and outer boundaries, first designing two cutting paths that connect the inner and outer boundaries, that is, transforming a decomposition problem of the two-connected cell into a decomposition problem of two simply-connected cells, and then solving the simply-connected cells by the method in Step 4;
(5.3) when n>2, numbering the n-1 inner boundaries of the n-connected cell, wherein topological edges on an outer boundary and an i-th inner boundary are expressed as follows:

ω=(a1, . . . , aK),

ωi=(a1i, . . . , aJii), i=1, . . . , n,

wherein, aK represents a topological edge between the cell and a K-th external adjacent cell, and aJii represents a topological edge between the cell and a cell numbered Ji on the i-th inner boundary;
(5.3.1) considering only the outer boundary ω and a first inner boundary ω1, and designing two cutting paths in a two-connected cell delineated by ω and ω1 to obtain two simply-connected cells according to the solution process of the two-connected cell in Step 5;
(5.3.2) placing a second inner boundary ω2 into one of the two simply-connected sub-cells generated in Step (5.3.1), such that the simply-connected sub-cell with ω2 is turned into a two-connected sub-cell; solving the two-connected sub-cell by Step (5.2), and finally dividing the sub-cell into two simply-connected sub-cells, wherein after this step, the original n-connected cell comprises ω, ω1, ω2 and is divided into three simply-connected sub-cells;
(5.3.3) subjecting each of subsequent inner boundaries ω3, . . . , ωn-1 the following processing in sequence: placing ω3, . . . , ωn-1 into one of the generated simply-connected sub-cells to obtain a two-connected cell, and then further dividing the cell into two simply-connected sub-cells; placing the i-th inner boundary to divide the original cell into i parts; placing n-1 inner boundaries into the cell to divide the original cell into n simply-connected sub-cells; solving the n simply-connected sub-cells by Step 4; and
Step 6: iteratively solving a topological graph generated by a kinematic model of the manipulator on the surface of the object to be covered according to the solution process in Step 4 and Step 5:
(6.1) for the first cell on the surface of the object to be covered, traversing and numbering all possible cutting methods for the first cell to complete all solutions of the first cell, and processing each of all the solutions by Step (6.2);
(6.2) for the second cell on the surface of the object to be covered, traversing and numbering all possible cutting methods for the second cell to complete all solutions of the second cell; discarding a solution of the second cell that contradicts with a setting of the first cell, and processing each of the remaining feasible solutions of the second cell by Step (6.3);
(6.3) sequentially processing the third to the N-th cells on the surface of the object to be covered by Step (6.2), such that each cell is provided with a cutting method, and each sub-cell divided has a unique number, thereby obtaining an approach for the manipulator to cover the sub-cell.