CN111185899B - Robot control method and robot system - Google Patents

Robot control method and robot system Download PDF

Info

Publication number
CN111185899B
CN111185899B CN201811349826.3A CN201811349826A CN111185899B CN 111185899 B CN111185899 B CN 111185899B CN 201811349826 A CN201811349826 A CN 201811349826A CN 111185899 B CN111185899 B CN 111185899B
Authority
CN
China
Prior art keywords
point
boundary
points
recording
working
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811349826.3A
Other languages
Chinese (zh)
Other versions
CN111185899A (en
Inventor
袁立超
高向阳
崔江伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Cleva Precision Machinery and Technology Co Ltd
Original Assignee
Suzhou Cleva Precision Machinery and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Cleva Precision Machinery and Technology Co Ltd filed Critical Suzhou Cleva Precision Machinery and Technology Co Ltd
Priority to CN201811349826.3A priority Critical patent/CN111185899B/en
Priority to PCT/CN2019/115244 priority patent/WO2020098520A1/en
Publication of CN111185899A publication Critical patent/CN111185899A/en
Application granted granted Critical
Publication of CN111185899B publication Critical patent/CN111185899B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The invention provides a robot control method and a robot system, wherein the method comprises the following steps: driving the robot to walk along the line patrol path for a preset number of turns, and respectively recording the position coordinates of each recording point in the walking process; storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list; sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point; respectively acquiring boundary fitting points corresponding to the basic coordinate points according to each basic coordinate point and m recording point groups corresponding to the basic coordinate points, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points; and obtaining corresponding boundary points through the boundary fitting point sequence. The invention automatically acquires the working path of the robot, saves the labor cost and improves the working efficiency.

Description

Robot control method and robot system
Technical Field
The invention relates to the field of intelligent control, in particular to a robot control method and a robot system.
Background
With the continuous progress of scientific technology, various robots have started to walk into people's lives slowly, for example: automatic dust collection robots, automatic mowing robots, and the like. The robot can be separated from the operation of people, automatically walk and execute work within a certain range.
The full coverage path planning is a hot research direction of the robot and is important for improving the working efficiency of the robot; in the prior art, the technical scheme is generally adopted that a working path is planned in a manual-assisted manner, and then a robot is driven to work according to the planned working path; specifically, a manual auxiliary input interface is arranged in cooperation with a robot, the current terrain is collected and output to the input interface in an automatic or auxiliary mode, and a working path is drawn on the input interface in a manual auxiliary mode according to the collected terrain; and finally, converting the working path into an instruction to guide the robot to work.
Above-mentioned technical scheme need increase auxiliary assembly such as camera usually and acquire data, improve equipment's production and use cost, in addition, still need artifical auxiliary design work route, uses comparatively loaded down with trivial details.
Disclosure of Invention
In order to solve the above technical problems, an object of the present invention is to provide a robot control method and a robot system.
In order to achieve one of the above objects, an embodiment of the present invention provides a robot control method, including: s1, driving the robot to walk for a preset number of turns along the line patrol path, and respectively recording the position coordinates of each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
s2, storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list;
s3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer not less than 1;
s4, respectively acquiring boundary fitting points corresponding to the basic coordinate points according to each basic coordinate point and m recording point groups corresponding to the basic coordinate points, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
s5, judging whether any boundary fitting point in the boundary fitting point sequence is collinear with two adjacent boundary fitting points,
if so, taking the current boundary fitting point as a basis, and obtaining a corresponding boundary point by equidistant offset on a normal line passing through the current boundary fitting point;
if not, generating a circle by the boundary fitting points and two adjacent boundary fitting points thereof, and obtaining the corresponding boundary points by equidistant migration on a connecting line passing through the current boundary fitting points and the circle center of the circle where the current boundary fitting points are located on the basis of the current boundary fitting points.
As a further improvement of an embodiment of the present invention, the step S1 further includes:
s11, after the robot is driven to walk for any circle along the route patrol, judging whether the linear distance between the head and tail recording points is smaller than a first preset distance threshold value;
if so, judging that the line patrol path is complete, and continuing the next operation;
if not, judging that the line patrol path is incomplete, and driving the robot to walk for a circle along the line patrol path again.
As a further improvement of an embodiment of the present invention, the step S4 specifically includes:
s41, respectively acquiring the gravity center point of each recording point group;
s42, respectively obtaining a tangent line and a normal line of each recording point group corresponding to the gravity center point, wherein the tangent line is a straight line obtained by least square fitting of all recording points contained in the current recording point group, and the normal line is a straight line passing through the gravity center point and perpendicular to the current tangent line;
s43, respectively acquiring m eccentricity corresponding to each basic coordinate point, wherein the eccentricity represents the deviation degree of the basic coordinate point and each gravity center corresponding to the basic coordinate point;
the eccentricity is expressed as:
Figure BDA0001864602830000021
a. b represents the distance between the current basic coordinate point and the tangent line and the normal line respectively;
and S44, acquiring the maximum eccentricity of the m eccentricities corresponding to the current basic coordinate point, and taking the gravity center point corresponding to the maximum eccentricity as a boundary fitting point corresponding to the current basic coordinate point.
As a further improvement of an embodiment of the present invention, when m is 1, the step S4 includes:
s41', respectively obtaining the gravity center point of each recording point group;
s42', the center of gravity point is used as the boundary fitting point corresponding to the current basic coordinate point.
As a further refinement of an embodiment of the present invention, the boundary includes an outer boundary, or an outer boundary and an inner boundary;
if the boundary is an outer boundary, the step S5 specifically includes: on the basis of the current boundary fitting point, outwards shifting the current boundary fitting point at equal intervals to obtain a corresponding outer boundary point;
if the boundary is an outer boundary and an inner boundary, the step S5 specifically includes: on the basis of the boundary fitting points corresponding to the outer boundary, outwards shifting the outer boundary at equal intervals to obtain corresponding outer boundary points; on the basis of the boundary fitting points corresponding to the inner boundary, inwards shifting the inner boundary at equal intervals to obtain corresponding inner boundary points;
wherein, the boundary fitting point forming the outer boundary point is the outer boundary fitting point, and the boundary fitting point forming the inner boundary fitting point is the inner boundary fitting point.
In order to achieve one of the above objects, an embodiment of the present invention provides a robot control method, including: s1, driving the robot to walk for a preset number of turns along the route patrol path, and respectively recording the position coordinates of each recording point reached in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
s2, storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list;
s3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer not less than 1;
s4, obtaining boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
s5, on the basis of the current boundary fitting point, equidistantly shifting to obtain a corresponding boundary point; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
and S6, generating a working path of the robot according to the obtained boundary fitting points or boundary points.
As a further improvement of an embodiment of the present invention, the step S6 specifically includes:
on the basis of a plurality of x-th circle working points of the x-th circle working path, generating reverse direction equidistant deviation of the boundary points along the boundary fitting points to form a plurality of x + 1-th circle working points, and sequentially connecting the plurality of x + 1-th circle working points to form an x + 1-th circle working path;
if the distance between at least one arbitrary two working points in the x-th circle is smaller than a preset second distance threshold, finishing the acquisition of the working path; x is a positive integer greater than or equal to 1;
the outer boundary point or the outer boundary fitting point forms a working point of a 1 st circle of working path, and a plurality of 1 st circle working points are connected end to form a 1 st circle of working path;
the robot works in a manner that traverses all the working points in sequence.
In order to achieve one of the above objects, an embodiment of the present invention provides a robot control method, including: s1, driving the robot to walk for a preset number of turns along the route patrol path, and respectively recording the position coordinates of each recording point reached in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
s2, storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list;
s3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer greater than 1;
s4, obtaining boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
s5, on the basis of the current boundary fitting point, equidistantly shifting to obtain a corresponding boundary point;
s6', obtaining a plurality of working points according to the boundary fitting points or boundary points, and obtaining a working path of the robot according to the working points, wherein the working path comprises: at least two mutually disjoint working paths, wherein each working path is a closed loop formed by sequentially connecting the working points;
s7', a connection path is formed by linearly connecting the initial working point on the x-th circle of working path and the initial working point of the x + 1-th circle of working path;
and driving the robot to start from the initial working point, traverse each working point on the x-th circle of working path, move towards the initial action point of the x +1 th circle after returning to the initial working point of the x-th circle, further enter the x +1 th circle of working path and work until reaching the final working point of the last circle of working path, and ending the work.
In order to achieve one of the above objects, an embodiment of the present invention provides a robot control method, including: s1, driving the robot to walk for a preset number of turns along the route patrol path, and respectively recording the position coordinates of each recording point reached in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
s2, storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list;
s3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer greater than 1;
s4, obtaining boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
s5', on the basis of the current boundary fitting point, equidistantly shifting to obtain a corresponding boundary point; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
s6', taking the outer boundary point or the outer boundary fitting point as a working point of the 1 st circle of working path, and connecting a plurality of the 1 st circle of working points end to form the 1 st circle of working path;
s7', judging whether the 1 st circle of working path is a convex polygon,
if yes, planning a working route of the robot on the basis of the 1 st circle of working path;
if not, the 1 st circle of working path is split into a plurality of convex polygons, and then the working path of the robot is planned respectively on the basis of each convex polygon.
As a further improvement of the embodiment of the present invention, the step S7 ″ of determining whether the 1 st round of working path is a convex polygon specifically includes: judging whether any working path formed by the sequential connection of the working points has a self-intersection point,
if yes, the 1 st circle of working path is a concave polygon;
if not, the 1 st circle of working path is a convex polygon.
As a further improvement of an embodiment of the present invention, after determining that the 1 st round of the working path is a concave polygon, the method further includes:
acquiring a line segment intersected on a working path with a self-intersection point, an end point and an intersection point of the intersected line segment;
acquiring boundary points corresponding to each end point of the intersected line segments on the 1 st circle of working path, taking two boundary points closest to the corresponding intersection points as feature end points, and connecting the two opposite feature end points to form a partition boundary; and dividing the 1 st circle of working path by a partition boundary, and splitting the working path into a plurality of convex edges.
In order to achieve one of the above objects, an embodiment of the present invention provides a robot system including:
the recording and storing module is used for driving the robot to walk for preset turns along the line patrol path and respectively recording the position coordinates of each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
the system comprises a first storage chain table, a second storage chain table, a first storage chain table and a second storage chain table, wherein the first storage chain table is used for storing the recording points corresponding to the 1 st circle of walking;
the calling module is used for calling each recording point in the first storage linked list in sequence as a basic coordinate point, and inquiring the second storage linked list to select m recording point groups corresponding to each basic coordinate point in sequence, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer not less than 1;
the fitting module is used for respectively acquiring boundary fitting points corresponding to the basic coordinate points according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate points, and forming a boundary fitting point sequence by the set of the boundary fitting points;
a path offset processing module for judging whether any boundary fitting point in the boundary fitting point sequence is collinear with two adjacent boundary fitting points,
if so, taking the current boundary fitting point as a basis, and obtaining a corresponding boundary point by equidistant offset on a normal line passing through the current boundary fitting point;
if not, generating a circle by the boundary fitting points and two adjacent boundary fitting points thereof, and obtaining the corresponding boundary points by equidistant migration on a connecting line passing through the current boundary fitting points and the circle center of the circle where the current boundary fitting points are located on the basis of the current boundary fitting points.
As a further improvement of an embodiment of the present invention, the record storage module is further configured to:
after the driving robot walks for any circle along the line patrol path, judging whether the linear distance between the head and tail recording points is smaller than a first preset distance threshold value or not;
if so, judging that the line patrol path is complete, and continuing the next operation;
if not, judging that the line patrol path is incomplete, and driving the robot to walk for a circle along the line patrol path again.
As a further improvement of an embodiment of the present invention, the fitting module is specifically configured to:
respectively acquiring the gravity center point of each recording point group;
respectively obtaining a tangent line and a normal line of each recording point group corresponding to the gravity center point, wherein the tangent line is a straight line obtained by least square fitting of all recording points contained in the current recording point group, and the normal line is a straight line passing through the gravity center point and perpendicular to the current tangent line;
respectively acquiring m eccentricities corresponding to each basic coordinate point, wherein the eccentricities represent the deviation degree of the basic coordinate point and each gravity center corresponding to the basic coordinate point;
the eccentricity is expressed as:
Figure BDA0001864602830000071
a. b represents the distance between the current basic coordinate point and the tangent line and the normal line respectively;
and acquiring the maximum eccentricity in the m eccentricities corresponding to the current basic coordinate point, and taking the gravity center point corresponding to the maximum eccentricity as a boundary fitting point corresponding to the current basic coordinate point.
As a further improvement of an embodiment of the present invention, when m is 1, the fitting module is specifically configured to:
respectively acquiring the gravity center point of each recording point group;
and taking the gravity center point as a boundary fitting point corresponding to the current basic coordinate point.
As a further refinement of an embodiment of the present invention, the boundary includes an outer boundary, or an outer boundary and an inner boundary;
if the boundary is an outer boundary, the path offset processing module is specifically configured to: on the basis of the current boundary fitting point, outwards shifting the current boundary fitting point at equal intervals to obtain a corresponding outer boundary point;
if the boundary is an outer boundary and an inner boundary, the path offset processing module is specifically configured to: on the basis of the boundary fitting points corresponding to the outer boundary, outwards shifting the outer boundary at equal intervals to obtain corresponding outer boundary points; on the basis of the boundary fitting points corresponding to the inner boundary, inwards shifting the inner boundary at equal intervals to obtain corresponding inner boundary points;
wherein, the boundary fitting point forming the outer boundary point is the outer boundary fitting point, and the boundary fitting point forming the inner boundary fitting point is the inner boundary fitting point.
In order to achieve one of the above objects, an embodiment of the present invention provides a robot system including: the recording and storing module is used for driving the robot to walk for preset turns along the line patrol path and respectively recording the position coordinates reaching each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
the system comprises a first storage chain table, a second storage chain table, a first storage chain table and a second storage chain table, wherein the first storage chain table is used for storing the recording points corresponding to the 1 st circle of walking;
the calling module is used for calling each recording point in the first storage linked list in sequence as a basic coordinate point, and inquiring the second storage linked list to select m recording point groups corresponding to each basic coordinate point in sequence, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer not less than 1;
the fitting module is used for acquiring boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
the path offset processing module is used for obtaining corresponding boundary points by equidistant offset on the basis of the current boundary fitting points; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
and the area boundary planning module is used for generating a working path of the robot according to the obtained boundary fitting points or boundary points.
As a further improvement of an embodiment of the present invention, the region boundary planning module is specifically configured to:
on the basis of a plurality of x-th circle working points of the x-th circle working path, generating reverse direction equidistant deviation of the boundary points along the boundary fitting points to form a plurality of x + 1-th circle working points, and sequentially connecting the plurality of x + 1-th circle working points to form an x + 1-th circle working path;
if the distance between at least one arbitrary two working points in the x-th circle is smaller than a preset second distance threshold, finishing the acquisition of the working path; x is a positive integer greater than or equal to 1;
the outer boundary point or the outer boundary fitting point forms a working point of a 1 st circle of working path, and a plurality of 1 st circle working points are connected end to form a 1 st circle of working path;
and driving the robot to work in a mode of sequentially traversing all the working points.
In order to achieve one of the above objects, an embodiment of the present invention provides a robot system including: the recording and storing module is used for driving the robot to walk for preset turns along the line patrol path and respectively recording the position coordinates reaching each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
the system comprises a first storage chain table, a second storage chain table, a first storage chain table and a second storage chain table, wherein the first storage chain table is used for storing the recording points corresponding to the 1 st circle of walking;
the calling module is used for calling each recording point in the first storage linked list in sequence as a basic coordinate point, and inquiring the second storage linked list to select m recording point groups corresponding to each basic coordinate point in sequence, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer greater than 1;
the fitting module is used for acquiring boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
the path offset processing module is used for obtaining corresponding boundary points by equidistant offset on the basis of the current boundary fitting points;
a regional boundary planning module, configured to obtain a plurality of working points according to the boundary fitting points or boundary points, and obtain a working path of the robot according to the working points, where the working path includes: at least two mutually disjoint working paths, wherein each working path is a closed loop formed by sequentially connecting the working points;
linearly connecting the initial working point on the x-th circle of working path with the initial working point of the x + 1-th circle of working path to form a connecting path;
and the working path planning module is used for driving the robot to start from the initial working point, traverse each working point on the x-th circle of working path, move towards the initial action point of the x +1 th circle after returning to the initial working point of the x-th circle, further enter the x +1 th circle of working path and work until reaching the final working point of the last circle of working path, and finish the work.
In order to achieve one of the above objects, an embodiment of the present invention provides a robot system including: the recording and storing module is used for driving the robot to walk for preset turns along the line patrol path and respectively recording the position coordinates reaching each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
the system comprises a first storage chain table, a second storage chain table, a first storage chain table and a second storage chain table, wherein the first storage chain table is used for storing the recording points corresponding to the 1 st circle of walking;
the calling module is used for calling each recording point in the first storage linked list in sequence as a basic coordinate point, and inquiring the second storage linked list to select m recording point groups corresponding to each basic coordinate point in sequence, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer greater than 1;
the fitting module is used for acquiring boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
the path offset processing module is used for obtaining corresponding boundary points by equidistant offset on the basis of the current boundary fitting points; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
the area boundary planning module is used for taking the outer boundary point or the outer boundary fitting point as a working point of the 1 st circle of working path, and connecting a plurality of 1 st circle of working points end to form the 1 st circle of working path;
a working area partitioning module for judging whether the 1 st circle of working path is a convex polygon,
if yes, planning a working route of the robot on the basis of the 1 st circle of working path;
if not, the 1 st circle of working path is split into a plurality of convex polygons, and then the working path of the robot is planned respectively on the basis of each convex polygon.
As a further improvement of the embodiment of the present invention, the determining, by the work area partition module, whether the 1 st circle of work path is a convex polygon specifically includes: judging whether any working path formed by the sequential connection of the working points has a self-intersection point,
if yes, the 1 st circle of working path is a concave polygon;
if not, the 1 st circle of working path is a convex polygon.
As a further improvement of an embodiment of the present invention, the work area partitioning module is further configured to: after judging that the 1 st circle of working path is a concave polygon, acquiring the crossed line segment, the end point and the intersection point of the crossed line segment on the working path with the self-crossed point;
acquiring boundary points corresponding to each end point of the intersected line segments on the 1 st circle of working path, taking two boundary points closest to the corresponding intersection points as feature end points, and connecting the two opposite feature end points to form a partition boundary; and dividing the 1 st circle of working path by a partition boundary, and splitting the working path into a plurality of convex edges.
Compared with the prior art, the robot control method and the robot system have the advantages that before the robot works, the robot is driven to walk along the route patrol path for the preset number of turns to obtain the position coordinates of each recording point, and the position coordinates of the recording points obtained for multiple times are automatically corrected to automatically generate the working path of the robot, so that the robot can independently carry out specific work according to the working path in a working state; need not artifical supplementary input relevant parameter, the cost of using manpower sparingly, the realization degree of difficulty is lower, need not additionally to increase auxiliary fitting, improves work efficiency.
Drawings
FIG. 1 is a schematic view of a robot according to an embodiment of the present invention;
FIG. 2 is a flow chart illustrating a path shifting method according to an embodiment of the present invention;
FIG. 3 is a flowchart illustrating a preferred embodiment of implementing step S4 in FIG. 2;
fig. 4 is an application effect diagram corresponding to a specific example of step S5 in fig. 2;
FIG. 5 is a flowchart illustrating a method for planning a boundary of a work area according to an embodiment of the present invention;
FIG. 6 is a diagram illustrating the effect of an application according to an embodiment of the present invention;
FIG. 7 is a flowchart illustrating a method for planning a working path according to an embodiment of the present invention;
FIG. 8 is a flowchart illustrating a method for partitioning a work area according to an embodiment of the present invention;
FIGS. 9A and 9B are diagrams illustrating the effect of the application of a specific example of the present invention;
fig. 10, 11, 12 and 13 are schematic block diagrams of a robot system according to an embodiment of the present invention.
Detailed Description
The present invention will be described in detail below with reference to embodiments shown in the drawings. These embodiments are not intended to limit the present invention, and structural, methodological, or functional changes in accordance with the embodiments are within the scope of the present invention.
The robot of the present invention may be an automatic mower or an automatic vacuum cleaner, which automatically travels in a work area to perform work such as mowing and vacuum cleaning.
As shown in fig. 1, in a preferred embodiment of the present invention, there is provided a robot comprising: the device comprises a body 10, a walking module arranged on the body 10, a positioning module 30, a cutter head 40, a power supply 50 and a control module 60.
The walking module comprises: a traveling wheel 21 and a motor 23 for driving the traveling wheel; the motor 23 can be a brushless motor with a reduction box; after the motor 23 is started, the walking wheel 21 is driven to walk, the control module 60 controls the rotating speed of the walking wheel 21, and further, the whole robot is driven to realize actions such as advancing, pushing backwards, turning, walking and the like by matching with the adjustment of the rotating direction of the walking wheel 21. Specifically, in the present embodiment, the robot achieves steering using a differential speed of the pair of road wheels 21, and thus an additional steering mechanism is not required.
The positioning module 30 is configured to determine position coordinates of each position where the robot passes through in the walking process; in a preferred embodiment of the present invention, the positioning module is a laser positioner, and cooperates with at least three light-reflecting beacons to determine corresponding position coordinates when the robot passes through each position, and the specific working principle thereof can refer to a chinese patent application with a patent application number of cn201210447284.x, which is not described herein in detail; in addition, in other embodiments of the present invention, the positioning module may also include or be replaced by a GNSS system, a GPS positioning module, and the like, which are not described in detail herein.
Referring to fig. 2, a robot control method M1 according to a preferred embodiment of the present invention is a method for acquiring boundary points of a work area, the method including: s1, driving the robot to walk for a preset number of turns along the line patrol path, and respectively recording the position coordinates of each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the predetermined number of turns is greater than or equal to 2.
It should be noted that, depending on the working environment, the boundary may optionally include an outer boundary and/or an inner boundary; the line patrol path is usually specified by the aid of a user or by adopting a fixed point marker or an external magnetic field, the line patrol path is a loop formed by the boundaries of the working area, and when the defined working area is within a certain boundary, the boundary is an outer boundary, namely the outer boundary is the outermost boundary of the working area and has uniqueness; when the simultaneous delimitation working area is outside a certain boundary, the boundary is an inner boundary, and the inner boundary and the outer boundary cooperate with each other to delimit the working area. The recording points can be selected in various ways, for example: in the specific embodiment of the invention, the selection mode of the recording point is not specifically limited, and only the recording point is required to be located on the line patrol path which the robot passes through in the walking process. The larger the predetermined number of turns, the more accurate the result obtained finally, and in the preferred embodiment of the present invention, the predetermined number of turns is usually any value between 2 and 5 in consideration of the complexity of calculation.
It can be understood that, for the same working area, during the driving robot walks for the preset number of rounds along the route patrolling path, the shape of the route patrolling path of each round is basically the same but is not always the same, and the number of the acquired recording points of each round may be equal or different.
In a preferred embodiment of the present invention, the step S1 further includes: s11, after the robot is driven to walk for any circle along the route patrol, judging whether the linear distance between the head and tail recording points of the current circle is smaller than a first preset distance threshold value or not; if so, judging that the line patrol path is complete, and continuing the next operation; if not, judging that the line patrol path is incomplete, and driving the robot to walk for a circle along the line patrol path again.
The first preset distance threshold value is a distance constant value, the size of the first preset distance threshold value can be specifically set according to needs, when the area of the working area is larger, the numerical value can also be set to be larger, and when the numerical value is smaller, the numerical value can also be set to be smaller; of course, regardless of the area size of the working area, the result obtained is more accurate when the value is smaller. For example: in one embodiment of the present invention, the first distance threshold may be set to 0.3 m.
Further, the method comprises: and (4) storing the record point corresponding to the 1 st circle of walking by distinguishing the record point from other record points so as to be convenient for calling. In a preferred embodiment of the present invention, the method specifically includes: s2, setting two storage linked lists, namely a first storage linked list and a second storage linked list, storing the recording points corresponding to the 1 st circle of walking in the first storage linked list, and storing the rest recording points in the second storage linked list; the remaining recording points are all the recording points except the recording point obtained by walking the 1 st circle.
S3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; and m is an integer not less than 1.
Further, the method comprises: and S4, respectively acquiring boundary fitting points corresponding to the basic coordinate points according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate points, and forming a boundary fitting point sequence by the set of the boundary fitting points.
In a preferred embodiment of the present invention, as shown in fig. 3, the step S4 specifically includes: s41, respectively acquiring the gravity center point of each recording point group; the gravity center point here refers to the gravity center point of this mass point system, that is, the point with the smallest sum of squares of distances to each point in the recording point group is the gravity center point of the recording point group, after each point in the recording point group is regarded as the mass point.
S42, respectively obtaining a tangent line and a normal line of each recording point group corresponding to the gravity center point, wherein the tangent line is a straight line obtained by least square fitting of all recording points contained in the current recording point group, and the normal line is a straight line passing through the gravity center point and perpendicular to the current tangent line;
s43, respectively acquiring m eccentricity corresponding to each basic coordinate point, wherein the eccentricity represents the deviation degree of the basic coordinate point and each gravity center corresponding to the basic coordinate point;
the eccentricity is expressed as:
Figure BDA0001864602830000141
a. b represents the distance between the current basic coordinate point and the tangent line and the normal line respectively;
and S44, acquiring the maximum eccentricity of the m eccentricities corresponding to the current basic coordinate point, and taking the gravity center point corresponding to the maximum eccentricity as a boundary fitting point corresponding to the current basic coordinate point.
As a specific example, when m is 1, step S4 includes only: s41', respectively obtaining the gravity center point of each recording point group; s42', the center of gravity point is used as the boundary fitting point corresponding to the current basic coordinate point.
For ease of understanding, a specific example is described for reference; assuming that the predetermined number of turns is 5 turns and 10 recording points are involved in each turn, the number of recording points stored in the first storage linked list, i.e., the number of base coordinate points, is 100, which is P respectively1、P2、……、P100The number of record points stored in the second storage linked list is 400; the value of m is 20, in order to ensure that the number of recording points included in each of m recording point groups corresponding to each base coordinate point is sequentially increased, the recording points included in the 20 recording point groups and closest to the currently selected base coordinate point in the first storage chain table are sequentially n, n +1, … …, n + (m-1), and if the value of n is 15, the recording point included in the 1 st recording point group is sequentially represented as P21、P22、……、P215The 2 nd recording dot group includes recording dots sequentially denoted as P21、P22、……、P215、P216The m-th recording dot group includes recording dots sequentially represented as P21、P22、……、P215、P216、……、P234
The above results show that: taking P from the first storage chain table1Taking the distance P in the second storage chain table as a basic coordinate point1Nearest n recording points P21、P22、……、P2nA first recording dot group is formed, and n is 15; the barycentric coordinate of the first recording point group is obtained as P through a barycentric point calculation formulaEmp1(xEmp1,yEmp1) And further obtaining a pass PEmp1A tangent line and a normal line of (1), the tangent line being P21、P22、……、P2nA straight line obtained by least square fitting, the normal line passing through the gravity center point PEmp1And perpendicular to the line of the current tangent; further, by the formula
Figure BDA0001864602830000151
Obtaining P1Point to point PEmp1Eccentricity ratio Excen of1A and b respectively represent the distance between the current basic coordinate point and the tangent line and the distance between the current basic coordinate point and the normal line; further, repeating the above steps for P1M recording point groups corresponding to the points respectively, and obtaining the corresponding P1M eccentricities; obtaining the maximum eccentricity in the m eccentricities, and taking a gravity center point corresponding to the maximum eccentricity as a boundary fitting point corresponding to the current basic coordinate point; further, obtaining boundary fitting points corresponding to each basic coordinate point according to m recording point groups corresponding to each basic coordinate point, and forming a boundary fitting point sequence by the set of the boundary fitting points.
Further, the method further comprises: s5, judging whether any boundary fitting point in the boundary fitting point sequence is collinear with two adjacent boundary fitting points, if so, taking the current boundary fitting point as a basis, and obtaining the corresponding boundary point by equidistant offset on a normal line passing through the current boundary fitting point; if not, generating a circle by the boundary fitting points and two adjacent boundary fitting points thereof, and obtaining the corresponding boundary points by equidistant migration on a connecting line passing through the current boundary fitting points and the circle center of the circle where the current boundary fitting points are located on the basis of the current boundary fitting points.
It should be noted that, if the boundary only includes the outer boundary, the step S5 specifically includes: on the basis of the current boundary fitting point, outwards shifting the current boundary fitting point at equal intervals to obtain a corresponding boundary point; if the boundary includes an outer boundary and an inner boundary, the step S5 specifically includes: on the basis of the boundary fitting points corresponding to the outer boundary, outwards shifting the outer boundary at equal intervals to obtain corresponding outer boundary points; and on the basis of the boundary fitting points corresponding to the inner boundary, inwards shifting the points at equal intervals to obtain corresponding inner boundary points.
The equidistant offset means that the offset value for each boundary point is the same, either outwardly offset or inwardly offset, which in the preferred embodiment of the invention is typically no greater than the diameter of the cutterhead on the robot when the robot is a lawn mowing robot.
It is understood that, in the embodiment of the present invention, if the boundary includes an outer boundary and an inner boundary, the outer boundary and the inner boundary are respectively processed by the above method; obtaining an outer boundary fitting point corresponding to the outer boundary through the recording points obtained corresponding to the outer boundary, and obtaining the required outer boundary point according to the corresponding outer boundary fitting point; acquiring an outer boundary fitting point corresponding to the inner boundary through the recording points acquired corresponding to the inner boundary, and acquiring a required inner boundary point according to the corresponding inner boundary fitting point; of course, the obtaining of the outer boundary point and the obtaining of the inner boundary point may be performed alternately, and detailed description thereof is omitted here. Further, when the boundary includes an outer boundary and an inner boundary, the outer boundary is usually processed first, and then the inner boundary is processed to avoid the repeated work, which is not described herein again.
For ease of understanding, a specific example is described for reference, and as shown in fig. 4, the three adjacent outer boundary fitting points obtained corresponding to the outer boundaries are respectively Q0、Q1、Q2Wherein Q is1、Q2Are separately arranged in Q0Two sides, and three outer boundary fitting points are not collinear, so as to obtain a point Q0、Q1、Q2Three coordinates on the same circle form a circle, the center of the circle is C, then Q0The direction of the connecting line with the center of circle C is the offset direction, and further, in the present embodiment, since the three boundary fitting points correspond to the outer boundary, in this way, at Q, the line is located at the outer boundary0And the outer boundary point is formed by outward deviation in the direction of a connecting line with the circle center C.
The robot control method comprises the steps that before the robot works, the robot is driven to walk along a line patrol path for preset turns to obtain position coordinates of each recording point, and the position coordinates of the recording points obtained for multiple times are automatically corrected to obtain each boundary point on the working path required by the robot, so that the robot can independently carry out specific work according to the working path; the manual auxiliary input of related parameters is not needed, and the labor cost is saved.
As shown in fig. 5, another robot control method M2, specifically a method for acquiring a boundary point of a work area according to an embodiment of the present invention is different from the method for acquiring a boundary point of a work area M1 in that: after the above step S5, step S6 is performed to generate a working path of the robot according to the obtained boundary fitting points or boundary points.
In a preferred embodiment of the present invention, the step S6 specifically includes: sequentially connecting each boundary point to form an edgewise walking path of the robot; in the walking process of the robot, the robot can walk on the edgewise walking path and drive the robot to walk to the working area for working after reaching the specified boundary point, which is not described in detail herein.
In another preferred embodiment of the present invention, the driving robot operates synchronously while traveling along the working path. Specifically, the step S6 specifically includes: on the basis of a plurality of x-th circle working points of the x-th circle working path, generating reverse direction equidistant deviation of boundary point deviation along the fitting points to form a plurality of x + 1-th circle working points, and sequentially connecting the plurality of x + 1-th circle working points to form an x + 1-th circle working path; if the distance between at least one arbitrary two working points in the x-th circle is smaller than a preset second distance threshold, finishing the acquisition of the working path; x is a positive integer greater than or equal to 1; the outer boundary point or the outer boundary fitting point forms a working point of a 1 st circle of working path, and a plurality of 1 st circle of working points are sequentially connected to form a 1 st circle of working path; the robot works in a manner that traverses all the working points in sequence.
The second preset distance threshold is also a distance constant value, and the size of the second preset distance threshold can be specifically set according to needs. It should be noted that the offset manner of the next circle of operating points generated by the offset of the current circle of operating points is the same as the offset manner of the boundary points generated by the fitting points, and therefore, the details are not repeated herein.
For ease of understanding, a specific example is described for reference, as shown in FIG. 6, connecting outer boundary points A in turn11、A12、A13、A14、A15、A16To form a 1 st circle working path of the robot and respectively connect the boundary points A11、A12、A13、A14、A15、A16Working point B corresponding to the 1 st circle of working path11、B12、B13、B14、B15、B16For planning a next working path; further, respectively represented by B11、B12、B13、B14、B15、B16Based on the boundary point, and generating boundary point B according to the deviation mode of the boundary fitting point11、B12、B13、B14、B15、B16Are shifted inwards at equal intervals to form working points B21、B22、B23、B24、B25、B26In turn connect with B21、B22、B23、B24、B25、B26Then forming a 2 nd circle of working path; repeating the steps, and confirming B when planning the 4 th circle of working path41、B42、B43、B44、B45、B46At least one distance in the distances between any two points is smaller than a second preset distance threshold, and the planning of the working path is stopped at this time, that is, the working path in this example only includes the 1 st circle of working path, the 2 nd circle of working path, and the 3 rd circle of working path.
The working area boundary planning method automatically generates the working path of the robot according to the boundary fitting points or the boundary points on the basis of the path deviation method, so that the robot automatically carries out specific work according to the working path in a working state; the working efficiency is improved.
Further, after the working path is planned, the robot may be driven to perform mowing according to a predetermined working path, and since any two circles of working paths do not intersect, in order to avoid the robot making mistakes, as shown in fig. 7, in a preferred embodiment of the present invention, on the basis of the working area boundary planning method, another robot control method M3 is proposed, specifically, a robot working path planning method is proposed, which is different from the method M1 for obtaining the working area boundary points: after the step S5, executing step S6', obtaining a plurality of working points according to the boundary fitting points or boundary points, and obtaining a working path of the robot according to the working points, where the working path includes at least two mutually disjoint working paths, and each working path is a closed loop formed by sequentially connecting the working points;
s7', a connection path is formed by linearly connecting the starting working point on the x-th circle of working path with the starting working point of the x + 1-th circle of working path; and driving the robot to start from the initial working point, traverse each working point on the x-th circle of working path, move towards the initial action point of the x +1 th circle after returning to the initial working point of the x-th circle, further enter the x +1 th circle of working path and work until reaching the final working point of the last circle of working path, and ending the work.
In practical applications, any one of the operating points may be designated as a starting operating point.
Continuing with the example shown in FIG. 6, let B11As the starting point of the 1 st working path, B36As the end working point of the 3 rd circle working path, the corresponding mowing path is B in the working process of the robot11→B12→B13→B14→B15→B16→B11→B21→B22→B23→B24→B25→B26→B21→B31→B32→B33→B34→B35→B36
The working path planning method of the invention is based on the working area boundary planning method, and further optimizes the working path on the existing basic working path to specifically guide the robot to walk and work, thereby improving the working efficiency.
Furthermore, in practical application, the shape of the working area enclosed by the boundaries is various, and in order to improve the working line of the robot, in a preferred embodiment of the present invention, after the 1 st circle of working path is determined, whether the current working area needs to be split is determined according to the shape of the 1 st circle of working path, so that the robot can work efficiently. In the preferred embodiment of the present invention, referring to fig. 8, another robot control method M4, specifically a robot work area partition method, is proposed. The difference between the robot work area partition method M4 and the robot work path planning method M3 is that: after the step S4 is executed, S5 ″ is executed, and the corresponding boundary points are obtained by equidistant shifting based on the current boundary fitting point; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
s6', taking the outer boundary point or the outer boundary fitting point as a working point of the 1 st circle of working path, and connecting a plurality of the 1 st circle of working points end to form the 1 st circle of working path;
s7', judging whether the 1 st circle of working path is a convex polygon,
if yes, planning a working route of the robot on the basis of the 1 st circle of working path;
if not, the 1 st circle of working path is split into a plurality of convex polygons, and then the working path of the robot is planned respectively on the basis of each convex polygon.
Specifically, in a preferred embodiment of the present invention, the following method is adopted to determine whether the working path is a convex polygon. For the same area, judging whether any working path formed by sequentially connecting the working points has a self-intersection point, if so, judging that the 1 st circle of working path is a concave polygon; if not, the 1 st circle of working path is a convex polygon.
After the 1 st circle of working path is judged to be a concave polygon, the method further comprises the following steps: acquiring a line segment which is intersected on a working path with a self-intersection point, and an end point and an intersection point of the intersected line segment; acquiring boundary points corresponding to each end point of the intersected line segments on the 1 st circle of working path, taking two boundary points closest to the corresponding intersection points as feature end points, and connecting the two opposite feature end points to form a partition boundary; and dividing the 1 st circle of working path by a partition boundary, and splitting the working path into a plurality of convex edges.
For ease of understanding, a specific example is described for reference, and as shown in fig. 9A and 9B, it should be noted that in this example, only points related to the present embodiment are identified in the working path for clarity of illustration. According to a certain deviant, the working points on the working paths in the previous circle are respectively inwards and equidistantly deviated to obtain 3 working paths, and B in the 3 rd working path31、B32Connecting line between and B33、B34The connecting lines between the two parts are crossed, and the crossing point is BINTThus, the 1 st circle of working path is judged to be a concave polygon; further, B31、B32、B33、B34The corresponding boundary points on the 1 st circle of working path are respectively B11、B12、B13、B14And a distance intersection B is obtainedINTThe two nearest boundary points are respectively B11、B13Taking the characteristic end points as characteristic end points and connecting the characteristic end points to form a partition boundary; furthermore, the 1 st circle of working path is divided by a partition boundary and is split into 2 convex edges.
It can be understood that if the partition boundary is longer, a new boundary point needs to be selected on the partition boundary and inserted into the corresponding working path for counting the working points, so that the working accuracy of the robot is higher, and further details are not described herein.
On the basis of the working path planning method, the working area partitioning method selectively partitions the working area according to the specific working environment of the robot so as to further improve the working efficiency.
As shown in fig. 10, in a first embodiment of the present invention, the robot system includes: a record storage module 100, a retrieval module 200, a fitting module 300, and a path offset processing module 400. Preferably, the above-mentioned record storage module 100, retrieval module 200, fitting module 300 and path offset processing module 400 are at least partially integrated within the control module 60.
The recording and storing module 100 is used for driving the robot to walk for a preset number of turns along the route patrol path and respectively recording the position coordinates reaching each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the predetermined number of turns is greater than or equal to 2.
In a preferred embodiment of the present invention, the record storage module 100 is specifically configured to determine whether a linear distance between a head recording point and a tail recording point of a current circle is smaller than a first preset distance threshold after the driving robot travels along the route patrol path for any circle, and if so, determine that the route patrol path is complete, and continue to perform the next operation; if not, judging that the line patrol path is incomplete, and driving the robot to walk for a circle along the line patrol path again.
The recording storage module 100 is further configured to store the recording point corresponding to the walking 1 st turn different from other recording points, so as to facilitate calling. In a preferred embodiment of the present invention, two storage linked lists, a first storage linked list and a second storage linked list, are set, the recording storage module 100 stores the recording points corresponding to the 1 st walking turn in the first storage linked list, and stores the remaining recording points in the second storage linked list; the remaining recording points are all the recording points except the recording point obtained by walking the 1 st circle.
The retrieving module 200 is configured to sequentially retrieve each recording point in the first storage linked list as a basic coordinate point, and query the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, where each recording point group includes a plurality of recording points closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; and m is an integer not less than 1.
The fitting module 300 is configured to obtain a boundary fitting point of each base coordinate point according to each base coordinate point and the m recording point groups corresponding to the base coordinate point, and form a boundary fitting point sequence from a set of the boundary fitting points.
In a preferred embodiment of the present invention, the fitting module 300 is specifically configured to: respectively acquiring the gravity center point of each recording point group; separately acquireEach recording point group corresponds to a tangent line and a normal line of the gravity center point, the tangent line is a straight line obtained by least square fitting of all recording points contained in the current recording point group, and the normal line is a straight line which passes through the gravity center point and is perpendicular to the current tangent line; respectively acquiring m eccentricities corresponding to each basic coordinate point, wherein the eccentricities represent the deviation degree of each gravity center point corresponding to the basic coordinate point; the eccentricity is expressed as:
Figure BDA0001864602830000211
a. b represents the distance between the current basic coordinate point and the tangent line and the normal line respectively; and acquiring the maximum eccentricity in the m eccentricities corresponding to the current basic coordinate point, and taking the gravity center point corresponding to the maximum eccentricity as a boundary fitting point corresponding to the current basic coordinate point.
The fitting module 300 is further configured to obtain a center of gravity point of each recording point group; and taking the gravity center point as a boundary fitting point corresponding to the current basic coordinate point.
In a preferred embodiment of the present invention, the system further comprises: the path offset processing module 400 is configured to determine whether any boundary fitting point in the boundary fitting point sequence is collinear with two adjacent boundary fitting points thereof, and if so, obtain a corresponding boundary point by equidistant offset on a normal line passing through the current boundary fitting point based on the current boundary fitting point; if not, generating a circle by the boundary fitting point and two adjacent boundary fitting points thereof, and taking the current boundary fitting point as a basis and obtaining the corresponding boundary point by equidistant migration on a connecting line passing through the current boundary fitting point and the circle center of the circle where the current boundary fitting point is located.
It should be noted that, if the boundary is an outer boundary, the path offset processing module 400 is specifically configured to offset the current boundary fitting point to an outer equal distance to obtain a corresponding boundary point; if the boundary is an outer boundary and an inner boundary, the path migration processing module 400 is specifically configured to obtain corresponding boundary points by migrating the boundary to the outside at equal intervals based on the boundary fitting points corresponding to the outer boundary; and on the basis of the boundary fitting points corresponding to the inner boundary, inwards shifting the points at equal intervals to obtain corresponding boundary points.
Further, as shown in fig. 11, in a preferred embodiment of the present invention, the system further includes: and the regional boundary planning module 500 is used for generating a working path of the robot according to the obtained boundary fitting points or boundary points.
In an embodiment of the present invention, the area boundary planning module 500 is configured to sequentially connect each of the boundary points to form an edge walking path of the robot.
In another preferred embodiment of the present invention, the area boundary planning module 500 is specifically configured to: on the basis of a plurality of x-th circle working points of the x-th circle working path, generating reverse direction equidistant deviation of boundary point deviation along the fitting points to form a plurality of x + 1-th circle working points, and sequentially connecting the plurality of x + 1-th circle working points to form an x + 1-th circle working path; if the distance between at least one arbitrary two working points in the x-th circle is smaller than a preset second distance threshold, finishing the acquisition of the working path; x is a positive integer greater than or equal to 1; the outer boundary point or the outer boundary fitting point forms a working point of a 1 st circle of working path, and a plurality of 1 st circle of working points are sequentially connected to form a 1 st circle of working path; the robot works in a manner that traverses all the working points in sequence.
Further, referring to fig. 12, in a preferred embodiment of the present invention, the system further includes: a working path planning module 600, the working path planning module 600 configured to: obtaining a plurality of working points according to the boundary fitting points or the boundary points, and obtaining working paths of the robot according to the working points, wherein the working paths comprise at least two mutually-disjoint working paths, and each working path is a closed loop formed by sequentially connecting the working points; linearly connecting the initial working point on the x-th circle of working path with the initial working point of the x + 1-th circle of working path to form a connecting path; and driving the robot to start from the initial working point, traverse each working point on the x-th circle of working path, move towards the initial action point of the x +1 th circle after returning to the initial working point of the x-th circle, further enter the x +1 th circle of working path and work until reaching the final working point of the last circle of working path, and ending the work.
Further, as shown in fig. 13, in a preferred embodiment of the present invention, the system further includes: the work area partitioning module 700 is configured to: judging whether the 1 st circle of working path is a convex polygon, if so, planning the working path of the robot based on the 1 st circle of working path; if not, the 1 st circle of working path is split into a plurality of convex polygons, and then the working path of the robot is planned respectively on the basis of each convex polygon.
In a preferred embodiment of the present invention, the work area partitioning module 700 is specifically configured to determine whether any work path formed by sequentially connecting work points has a self-intersection point for the same area, and if so, the 1 st circle of work path is a concave polygon; if not, the 1 st circle of working path is a convex polygon.
Further, the work area partitioning module 700 is further configured to, after determining that the 1 st circle of work path is a concave polygon, obtain a line segment that intersects with the work path at the current self-intersection point, an end point of the intersecting line segment, and an intersection point; acquiring boundary points corresponding to each end point of the intersected line segments on the 1 st circle of working path, taking two boundary points closest to the corresponding intersection points as feature end points, and connecting the two opposite feature end points to form a partition boundary; and dividing the 1 st circle of working path by a partition boundary, and splitting the working path into a plurality of convex edges.
In summary, the path migration method, the working area boundary planning method, the working path planning method, the working area partitioning method and the robot system based on the path migration method of the present invention, before the robot works, the robot is driven to travel along the route patrol path for a predetermined number of turns to obtain the position coordinates of each recording point, and the position coordinates of the recording points obtained for multiple times are automatically corrected to automatically generate the working path of the robot, so that the robot autonomously performs specific work according to the working path in the working state; need not artifical supplementary input relevant parameter, the cost of using manpower sparingly, the realization degree of difficulty is lower, need not additionally to increase auxiliary fitting, improves work efficiency.
It can be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working process of the system described above may refer to the corresponding process in the foregoing method embodiment, and is not described herein again.
In the several embodiments provided in this application, it should be understood that the disclosed system, and method may be implemented in other ways. For example, the system embodiments described above are merely illustrative, and for example, the division of the modules is merely a logical division, and in actual implementation, there may be another division, for example, multiple modules or components may be combined or integrated into another system, or some features may be omitted, or not implemented. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, systems or modules, and may be in an electrical, mechanical or other form.
The modules described as separate parts may or may not be physically separate, and parts displayed as modules may or may not be physical modules, may be located in one place, or may be distributed on a plurality of network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the embodiment.
In addition, each functional module in the embodiments of the present application may be integrated into one processing module, or each module may exist alone physically, or 2 or more modules may be integrated into one module. The integrated module can be realized in a hardware form, and can also be realized in a form of hardware and a software functional module.
The integrated module implemented in the form of a software functional module may be stored in a computer-readable storage medium. The software functional module is stored in a storage medium and includes several instructions for causing a computer system (which may be a personal computer, a server, or a network system) or a processor (processor) to execute some steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may be modified or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present application.

Claims (22)

1. A robot control method, characterized in that the method comprises:
s1, driving the robot to walk for a preset number of turns along the line patrol path, and respectively recording the position coordinates of each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
s2, storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list;
s3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer not less than 1;
s4, respectively acquiring boundary fitting points corresponding to the basic coordinate points according to each basic coordinate point and m recording point groups corresponding to the basic coordinate points, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
s5, judging whether any boundary fitting point in the boundary fitting point sequence is collinear with two adjacent boundary fitting points,
if so, taking the current boundary fitting point as a basis, and obtaining a corresponding boundary point by equidistant offset on a normal line passing through the current boundary fitting point;
if not, generating a circle by the boundary fitting points and two adjacent boundary fitting points thereof, and obtaining the corresponding boundary points by equidistant migration on a connecting line passing through the current boundary fitting points and the circle center of the circle where the current boundary fitting points are located on the basis of the current boundary fitting points.
2. The robot control method according to claim 1, wherein the step S1 further includes:
s11, after the robot is driven to walk for any circle along the route patrol, judging whether the linear distance between the head and tail recording points is smaller than a first preset distance threshold value;
if so, judging that the line patrol path is complete, and continuing the next operation;
if not, judging that the line patrol path is incomplete, and driving the robot to walk for a circle along the line patrol path again.
3. The robot control method according to claim 1, wherein the step S4 specifically includes:
s41, respectively acquiring the gravity center point of each recording point group;
s42, respectively obtaining a tangent line and a normal line of each recording point group corresponding to the gravity center point, wherein the tangent line is a straight line obtained by least square fitting of all recording points contained in the current recording point group, and the normal line is a straight line passing through the gravity center point and perpendicular to the current tangent line;
s43, respectively acquiring m eccentricity corresponding to each basic coordinate point, wherein the eccentricity represents the deviation degree of the basic coordinate point and each gravity center corresponding to the basic coordinate point;
the eccentricity is expressed as:
Figure FDA0001864602820000021
a. b represents the distance between the current basic coordinate point and the tangent line and the normal line respectively;
and S44, acquiring the maximum eccentricity of the m eccentricities corresponding to the current basic coordinate point, and taking the gravity center point corresponding to the maximum eccentricity as a boundary fitting point corresponding to the current basic coordinate point.
4. The robot control method according to claim 1, wherein when m is 1, the step S4 includes:
s41', respectively obtaining the gravity center point of each recording point group;
s42', the center of gravity point is used as the boundary fitting point corresponding to the current basic coordinate point.
5. A robot control method according to claim 1, characterized in that the boundary comprises an outer boundary, or an outer boundary and an inner boundary;
if the boundary is an outer boundary, the step S5 specifically includes: on the basis of the current boundary fitting point, outwards shifting the current boundary fitting point at equal intervals to obtain a corresponding outer boundary point;
if the boundary is an outer boundary and an inner boundary, the step S5 specifically includes: on the basis of the boundary fitting points corresponding to the outer boundary, outwards shifting the outer boundary at equal intervals to obtain corresponding outer boundary points; on the basis of the boundary fitting points corresponding to the inner boundary, inwards shifting the inner boundary at equal intervals to obtain corresponding inner boundary points;
wherein, the boundary fitting point forming the outer boundary point is the outer boundary fitting point, and the boundary fitting point forming the inner boundary fitting point is the inner boundary fitting point.
6. A robot control method, characterized in that the method comprises:
s1, driving the robot to walk for a preset number of turns along the route patrol path, and respectively recording the position coordinates of each recording point reached in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
s2, storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list;
s3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer not less than 1;
s4, obtaining boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
s5, on the basis of the current boundary fitting point, equidistantly shifting to obtain a corresponding boundary point; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
and S6, generating a working path of the robot according to the obtained boundary fitting points or boundary points.
7. The robot control method according to claim 6, wherein the step S6 specifically includes:
on the basis of a plurality of x-th circle working points of the x-th circle working path, generating reverse direction equidistant deviation of the boundary points along the boundary fitting points to form a plurality of x + 1-th circle working points, and sequentially connecting the plurality of x + 1-th circle working points to form an x + 1-th circle working path;
if the distance between at least one arbitrary two working points in the x-th circle is smaller than a preset second distance threshold, finishing the acquisition of the working path; x is a positive integer greater than or equal to 1;
the outer boundary point or the outer boundary fitting point forms a working point of a 1 st circle of working path, and a plurality of 1 st circle working points are connected end to form a 1 st circle of working path;
the robot works in a manner that traverses all the working points in sequence.
8. A robot control method, characterized in that the method comprises:
s1, driving the robot to walk for a preset number of turns along the route patrol path, and respectively recording the position coordinates of each recording point reached in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
s2, storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list;
s3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer greater than 1;
s4, obtaining boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
s5, on the basis of the current boundary fitting point, equidistantly shifting to obtain a corresponding boundary point;
s6', obtaining a plurality of working points according to the boundary fitting points or boundary points, and obtaining a working path of the robot according to the working points, wherein the working path comprises: at least two mutually disjoint working paths, wherein each working path is a closed loop formed by sequentially connecting the working points;
s7', a connection path is formed by linearly connecting the initial working point on the x-th circle of working path and the initial working point of the x + 1-th circle of working path;
and driving the robot to start from the initial working point, traverse each working point on the x-th circle of working path, move towards the initial action point of the x +1 th circle after returning to the initial working point of the x-th circle, further enter the x +1 th circle of working path and work until reaching the final working point of the last circle of working path, and ending the work.
9. A robot control method, characterized in that the method comprises:
s1, driving the robot to walk for a preset number of turns along the route patrol path, and respectively recording the position coordinates of each recording point reached in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
s2, storing the recording points corresponding to the 1 st circle of walking in a first storage linked list, and storing the rest recording points in a second storage linked list;
s3, sequentially calling each recording point in the first storage linked list as a basic coordinate point, and inquiring the second storage linked list to sequentially select m recording point groups corresponding to each basic coordinate point, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer greater than 1;
s4, obtaining boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
s5', on the basis of the current boundary fitting point, equidistantly shifting to obtain a corresponding boundary point; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
s6', taking the outer boundary point or the outer boundary fitting point as a working point of the 1 st circle of working path, and connecting a plurality of the 1 st circle of working points end to form the 1 st circle of working path;
s7', judging whether the 1 st circle of working path is a convex polygon,
if yes, planning a working route of the robot on the basis of the 1 st circle of working path;
if not, the 1 st circle of working path is split into a plurality of convex polygons, and then the working path of the robot is planned respectively on the basis of each convex polygon.
10. The robot control method according to claim 9, wherein the step S7 ″ of determining whether the 1 st round of working path is a convex polygon specifically includes: judging whether any working path formed by the sequential connection of the working points has a self-intersection point,
if yes, the 1 st circle of working path is a concave polygon;
if not, the 1 st circle of working path is a convex polygon.
11. The robot control method according to claim 10, wherein after judging that the 1 st round of the working path is a concave polygon, the method further comprises:
acquiring a line segment intersected on a working path with a self-intersection point, an end point and an intersection point of the intersected line segment;
acquiring boundary points corresponding to each end point of the intersected line segments on the 1 st circle of working path, taking two boundary points closest to the corresponding intersection points as feature end points, and connecting the two opposite feature end points to form a partition boundary; and dividing the 1 st circle of working path by a partition boundary, and splitting the working path into a plurality of convex edges.
12. A robotic system, characterized in that the system comprises:
the recording and storing module is used for driving the robot to walk for preset turns along the line patrol path and respectively recording the position coordinates of each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
the system comprises a first storage chain table, a second storage chain table, a first storage chain table and a second storage chain table, wherein the first storage chain table is used for storing the recording points corresponding to the 1 st circle of walking;
the calling module is used for calling each recording point in the first storage linked list in sequence as a basic coordinate point, and inquiring the second storage linked list to select m recording point groups corresponding to each basic coordinate point in sequence, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer not less than 1;
the fitting module is used for respectively acquiring boundary fitting points corresponding to the basic coordinate points according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate points, and forming a boundary fitting point sequence by the set of the boundary fitting points;
a path offset processing module for judging whether any boundary fitting point in the boundary fitting point sequence is collinear with two adjacent boundary fitting points,
if so, taking the current boundary fitting point as a basis, and obtaining a corresponding boundary point by equidistant offset on a normal line passing through the current boundary fitting point;
if not, generating a circle by the boundary fitting points and two adjacent boundary fitting points thereof, and obtaining the corresponding boundary points by equidistant migration on a connecting line passing through the current boundary fitting points and the circle center of the circle where the current boundary fitting points are located on the basis of the current boundary fitting points.
13. The robotic system as claimed in claim 12, wherein the record storage module is further configured to:
after the driving robot walks for any circle along the line patrol path, judging whether the linear distance between the head and tail recording points is smaller than a first preset distance threshold value or not;
if so, judging that the line patrol path is complete, and continuing the next operation;
if not, judging that the line patrol path is incomplete, and driving the robot to walk for a circle along the line patrol path again.
14. The robotic system as claimed in claim 12, wherein the fitting module is specifically configured to:
respectively acquiring the gravity center point of each recording point group;
respectively obtaining a tangent line and a normal line of each recording point group corresponding to the gravity center point, wherein the tangent line is a straight line obtained by least square fitting of all recording points contained in the current recording point group, and the normal line is a straight line passing through the gravity center point and perpendicular to the current tangent line;
respectively acquiring m eccentricity ratios corresponding to each basic coordinate point, wherein the eccentricity ratios represent the deviation degree of the basic coordinate points and each gravity center point corresponding to the basic coordinate points;
the eccentricity is expressed as:
Figure FDA0001864602820000071
a. b represents the distance between the current basic coordinate point and the tangent line and the normal line respectively;
and acquiring the maximum eccentricity in the m eccentricities corresponding to the current basic coordinate point, and taking the gravity center point corresponding to the maximum eccentricity as a boundary fitting point corresponding to the current basic coordinate point.
15. The robotic system as claimed in claim 12, wherein when m-1, the fitting module is specifically configured to:
respectively acquiring the gravity center point of each recording point group;
and taking the gravity center point as a boundary fitting point corresponding to the current basic coordinate point.
16. The robotic system of claim 12, wherein the boundary comprises an outer boundary, or an outer boundary and an inner boundary;
if the boundary is an outer boundary, the path offset processing module is specifically configured to: on the basis of the current boundary fitting point, outwards shifting the current boundary fitting point at equal intervals to obtain a corresponding outer boundary point;
if the boundary is an outer boundary and an inner boundary, the path offset processing module is specifically configured to: on the basis of the boundary fitting points corresponding to the outer boundary, outwards shifting the outer boundary at equal intervals to obtain corresponding outer boundary points; on the basis of the boundary fitting points corresponding to the inner boundary, inwards shifting the inner boundary at equal intervals to obtain corresponding inner boundary points;
wherein, the boundary fitting point forming the outer boundary point is the outer boundary fitting point, and the boundary fitting point forming the inner boundary fitting point is the inner boundary fitting point.
17. A robotic system, characterized in that the system comprises:
the recording and storing module is used for driving the robot to walk for preset turns along the line patrol path and respectively recording the position coordinates reaching each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
the system comprises a first storage chain table, a second storage chain table, a first storage chain table and a second storage chain table, wherein the first storage chain table is used for storing the recording points corresponding to the 1 st circle of walking;
the calling module is used for calling each recording point in the first storage linked list in sequence as a basic coordinate point, and inquiring the second storage linked list to select m recording point groups corresponding to each basic coordinate point in sequence, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer not less than 1;
the fitting module is used for acquiring boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
the path offset processing module is used for obtaining corresponding boundary points by equidistant offset on the basis of the current boundary fitting points; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
and the area boundary planning module is used for generating a working path of the robot according to the obtained boundary fitting points or boundary points.
18. The robotic system of claim 17, wherein the zone boundary planning module is specifically configured to:
on the basis of a plurality of x-th circle working points of the x-th circle working path, generating reverse direction equidistant deviation of the boundary points along the boundary fitting points to form a plurality of x + 1-th circle working points, and sequentially connecting the plurality of x + 1-th circle working points to form an x + 1-th circle working path;
if the distance between at least one arbitrary two working points in the x-th circle is smaller than a preset second distance threshold, finishing the acquisition of the working path; x is a positive integer greater than or equal to 1;
the outer boundary point or the outer boundary fitting point forms a working point of a 1 st circle of working path, and a plurality of 1 st circle working points are connected end to form a 1 st circle of working path;
and driving the robot to work in a mode of sequentially traversing all the working points.
19. A robotic system, characterized in that the system comprises:
the recording and storing module is used for driving the robot to walk for preset turns along the line patrol path and respectively recording the position coordinates reaching each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
the system comprises a first storage chain table, a second storage chain table, a first storage chain table and a second storage chain table, wherein the first storage chain table is used for storing the recording points corresponding to the 1 st circle of walking;
the calling module is used for calling each recording point in the first storage linked list in sequence as a basic coordinate point, and inquiring the second storage linked list to select m recording point groups corresponding to each basic coordinate point in sequence, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer greater than 1;
the fitting module is used for acquiring boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
the path offset processing module is used for obtaining corresponding boundary points by equidistant offset on the basis of the current boundary fitting points;
a regional boundary planning module, configured to obtain a plurality of working points according to the boundary fitting points or boundary points, and obtain a working path of the robot according to the working points, where the working path includes: at least two mutually disjoint working paths, wherein each working path is a closed loop formed by sequentially connecting the working points;
linearly connecting the initial working point on the x-th circle of working path with the initial working point of the x + 1-th circle of working path to form a connecting path;
and the working path planning module is used for driving the robot to start from the initial working point, traverse each working point on the x-th circle of working path, move towards the initial action point of the x +1 th circle after returning to the initial working point of the x-th circle, further enter the x +1 th circle of working path and work until reaching the final working point of the last circle of working path, and finish the work.
20. A robotic system, characterized in that the system comprises:
the recording and storing module is used for driving the robot to walk for preset turns along the line patrol path and respectively recording the position coordinates reaching each recording point in the walking process; the line patrol path is a loop formed by the boundary of a working area where the robot is located; the preset number of turns is more than or equal to 2;
the system comprises a first storage chain table, a second storage chain table, a first storage chain table and a second storage chain table, wherein the first storage chain table is used for storing the recording points corresponding to the 1 st circle of walking;
the calling module is used for calling each recording point in the first storage linked list in sequence as a basic coordinate point, and inquiring the second storage linked list to select m recording point groups corresponding to each basic coordinate point in sequence, wherein each recording point group comprises a plurality of recording points which are closest to the currently selected basic coordinate point in the first storage linked list, and the number of the recording points of the m recording point groups is sequentially increased; m is an integer greater than 1;
the fitting module is used for acquiring boundary fitting points of each basic coordinate point according to each basic coordinate point and the m recording point groups corresponding to the basic coordinate point, and forming a boundary fitting point sequence by a plurality of sets of the boundary fitting points;
the path offset processing module is used for obtaining corresponding boundary points by equidistant offset on the basis of the current boundary fitting points; the boundary fitting point includes: an outer boundary fitting point, or an outer boundary fitting point and an inner boundary fitting point; the boundary points include: an outer boundary point, or an outer boundary point and an inner boundary point;
the area boundary planning module is used for taking the outer boundary point or the outer boundary fitting point as a working point of the 1 st circle of working path, and connecting a plurality of 1 st circle of working points end to form the 1 st circle of working path;
a working area partitioning module for judging whether the 1 st circle of working path is a convex polygon,
if yes, planning a working route of the robot on the basis of the 1 st circle of working path;
if not, the 1 st circle of working path is split into a plurality of convex polygons, and then the working path of the robot is planned respectively on the basis of each convex polygon.
21. The robot system of claim 20, wherein the work area partition module determining whether the 1 st circle of work path is a convex polygon specifically comprises: judging whether any working path formed by the sequential connection of the working points has a self-intersection point,
if yes, the 1 st circle of working path is a concave polygon;
if not, the 1 st circle of working path is a convex polygon.
22. The robotic system as claimed in claim 21, wherein the work area zoning module is further configured to: after judging that the 1 st circle of working path is a concave polygon, acquiring the crossed line segment, the end point and the intersection point of the crossed line segment on the working path with the self-crossed point;
acquiring boundary points corresponding to each end point of the intersected line segments on the 1 st circle of working path, taking two boundary points closest to the corresponding intersection points as feature end points, and connecting the two opposite feature end points to form a partition boundary; and dividing the 1 st circle of working path by a partition boundary, and splitting the working path into a plurality of convex edges.
CN201811349826.3A 2018-11-14 2018-11-14 Robot control method and robot system Active CN111185899B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811349826.3A CN111185899B (en) 2018-11-14 2018-11-14 Robot control method and robot system
PCT/CN2019/115244 WO2020098520A1 (en) 2018-11-14 2019-11-04 Robot control method and robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811349826.3A CN111185899B (en) 2018-11-14 2018-11-14 Robot control method and robot system

Publications (2)

Publication Number Publication Date
CN111185899A CN111185899A (en) 2020-05-22
CN111185899B true CN111185899B (en) 2022-05-13

Family

ID=70703187

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811349826.3A Active CN111185899B (en) 2018-11-14 2018-11-14 Robot control method and robot system

Country Status (2)

Country Link
CN (1) CN111185899B (en)
WO (1) WO2020098520A1 (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113556679A (en) * 2020-04-24 2021-10-26 苏州科瓴精密机械科技有限公司 Method and system for generating virtual boundary of working area of self-moving robot, self-moving robot and readable storage medium
CN113885485B (en) * 2020-06-17 2023-12-22 苏州科瓴精密机械科技有限公司 Robot walking control method, system, robot and storage medium
CN111728535B (en) * 2020-06-22 2021-12-28 上海高仙自动化科技发展有限公司 Method and device for generating cleaning path, electronic equipment and storage medium
CN111966090B (en) * 2020-07-17 2024-02-06 深圳拓邦股份有限公司 Robot boundary map construction method and device and robot
CN111738894B (en) * 2020-07-29 2020-12-22 武大吉奥信息技术有限公司 Method, system and terminal equipment for constructing balance grid
CN112033404B (en) * 2020-07-31 2023-08-01 北京智行者科技股份有限公司 Method for planning full-coverage cleaning path of multi-communication area of unmanned cleaning vehicle
CN112650250B (en) * 2020-12-23 2024-07-19 深圳市杉川机器人有限公司 Map construction method and robot
CN112817309B (en) * 2020-12-30 2021-12-03 东南大学 Geometric folding type robot full-coverage path and generation method thereof
CN113375674B (en) * 2021-06-16 2024-02-27 上海联适导航技术股份有限公司 Curve path generation method, device, equipment and readable storage medium
CN114442642B (en) * 2022-04-02 2022-07-15 深圳市普渡科技有限公司 Path planning method, path planning device, computer equipment and storage medium
CN114647247A (en) * 2022-05-09 2022-06-21 中国铁建重工集团股份有限公司 Robot path memory control method, device, system and equipment
CN117655563B (en) * 2024-01-31 2024-05-28 成都沃特塞恩电子技术有限公司 Laser cutting path planning method and device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9764472B1 (en) * 2014-07-18 2017-09-19 Bobsweep Inc. Methods and systems for automated robotic movement
CN107390698A (en) * 2017-08-31 2017-11-24 珠海市微半导体有限公司 The benefit of sweeping robot sweeps method and chip
CN107544483A (en) * 2016-06-23 2018-01-05 苏州宝时得电动工具有限公司 A kind of controlling of path thereof and device
CN108189039A (en) * 2018-02-09 2018-06-22 意诺科技有限公司 The mode of progression and device of a kind of mobile robot
CN108507578A (en) * 2018-04-03 2018-09-07 珠海市微半导体有限公司 A kind of construction method and its air navigation aid of overall situation border map

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101626984B1 (en) * 2009-11-16 2016-06-02 엘지전자 주식회사 Robot cleaner and controlling method of the same
US10678251B2 (en) * 2014-12-16 2020-06-09 Aktiebolaget Electrolux Cleaning method for a robotic cleaning device
KR101771643B1 (en) * 2015-07-15 2017-08-25 주식회사 마로로봇 테크 Autonomously traveling robot and navigation method thereof
CN105922267B (en) * 2016-06-28 2017-12-29 山东理工大学 A kind of design method of sweeping robot all standing traverse path planning algorithm
CN106776948B (en) * 2016-12-02 2020-08-25 云南师范大学 Method for extracting characteristic line of track line group
CN107538487B (en) * 2017-02-16 2020-01-03 北京卫星环境工程研究所 Robot automatic measurement method and system for large-size complex shape surface

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9764472B1 (en) * 2014-07-18 2017-09-19 Bobsweep Inc. Methods and systems for automated robotic movement
CN107544483A (en) * 2016-06-23 2018-01-05 苏州宝时得电动工具有限公司 A kind of controlling of path thereof and device
CN107390698A (en) * 2017-08-31 2017-11-24 珠海市微半导体有限公司 The benefit of sweeping robot sweeps method and chip
CN108189039A (en) * 2018-02-09 2018-06-22 意诺科技有限公司 The mode of progression and device of a kind of mobile robot
CN108507578A (en) * 2018-04-03 2018-09-07 珠海市微半导体有限公司 A kind of construction method and its air navigation aid of overall situation border map

Also Published As

Publication number Publication date
WO2020098520A1 (en) 2020-05-22
CN111185899A (en) 2020-05-22

Similar Documents

Publication Publication Date Title
CN111185899B (en) Robot control method and robot system
CN113341991B (en) Path optimization method based on dynamic window and redundant node filtering
CN112068557B (en) Mobile robot full-coverage path planning method, chip and robot
US7010425B2 (en) Path planner and a method for planning a path of a work vehicle
JP4298917B2 (en) Route planning method for mobile unit for surface work
WO2023155371A1 (en) Stable movement global path planning method for indoor mobile robot
JP7220285B2 (en) route planning
CN104536445A (en) Mobile navigation method and system
CN106647754A (en) Path planning method for orchard tracked robot
CN107179082B (en) Autonomous exploration method and navigation method based on fusion of topological map and measurement map
CN109459052B (en) Full-coverage path planning method for sweeper
US20240085919A1 (en) Traversal Method and System, Robot, and Readable Storage Medium
CN111915106B (en) Path generation method and device, crystal face machine and storage medium
CN112393737A (en) Obstacle map creation method, obstacle map creation system, robot, and readable storage medium
WO2021212731A1 (en) Method and system for generating virtual boundary of working area of autonomous mobile robot, and autonomous mobile robot and readable storage medium
CN108803602B (en) Obstacle self-learning method and new obstacle self-learning method
CN114779769A (en) Self-moving cleaning equipment and map building method thereof
CN117629205A (en) Navigation method for robot to pass through narrow channel, chip and robot
CN114815791A (en) Method and device for planning travelable space
CN111136636B (en) Walking robot, method of controlling walking robot, and walking robot system
CN111506078B (en) Robot navigation method and system
CN110716547A (en) 3D exploration method based on wavefront algorithm
CN111198565B (en) Walking robot, method of controlling walking robot, and walking robot system
CN113670308B (en) Method for guiding vehicle to run and related system and storage medium
CN111113364B (en) Walking robot, method of controlling walking robot, and walking robot system

Legal Events

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